]> arthur.barton.de Git - netatalk.git/blobdiff - etc/afpd/globals.h
Merge master
[netatalk.git] / etc / afpd / globals.h
index 2ab33e6606aafa196053bd2a432755be1e293522..ef77470a99b4939476cec125e7ece7e1b1d56235 100644 (file)
@@ -1,6 +1,4 @@
 /*
- * $Id: globals.h,v 1.29 2009-10-25 07:18:12 didg Exp $
- *
  * Copyright (c) 1990,1993 Regents of The University of Michigan.
  * All Rights Reserved.  See COPYRIGHT.
  */
@@ -9,7 +7,6 @@
 #define AFPD_GLOBALS_H 1
 
 #include <sys/param.h>
-#include <sys/cdefs.h>
 
 #ifdef ADMIN_GRP
 #include <grp.h>
@@ -37,6 +34,8 @@
 #define OPTION_NOSLP         (1 << 5)
 #define OPTION_ANNOUNCESSH   (1 << 6)
 #define OPTION_UUID          (1 << 7)
+#define OPTION_ACL2MACCESS   (1 << 8)
+#define OPTION_NOZEROCONF    (1 << 9)
 
 #ifdef FORCE_UIDGID
 /* set up a structure for this */
@@ -56,26 +55,30 @@ struct afp_volume_name {
 };
 
 struct afp_options {
-    int connections, port, transports, tickleval, timeout, server_notif, flags;
+    int connections, transports, tickleval, timeout, server_notif, flags, dircachesize;
+    int sleep;                  /* Maximum time allowed to sleep (in tickles) */
+    int disconnected;           /* Maximum time in disconnected state (in tickles) */
     unsigned char passwdbits, passwdminlen, loginmaxfail;
     u_int32_t server_quantum;
-    char hostname[MAXHOSTNAMELEN + 1], *server, *ipaddr, *configfile;
+    char hostname[MAXHOSTNAMELEN + 1], *server, *ipaddr, *port, *configfile;
     struct at_addr ddpaddr;
     char *uampath, *fqdn;
     char *pidfile;
+    char *sigconffile;
+    char *uuidconf;
     struct afp_volume_name defaultvol, systemvol, uservol;
     int  closevol;
 
     char *guest, *loginmesg, *keyfile, *passwdfile;
     char *uamlist;
     char *authprintdir;
-    char *signature;
+    char *signatureopt;
+    unsigned char signature[16];
     char *k5service, *k5realm, *k5keytab;
     char *unixcodepage,*maccodepage;
     charset_t maccharset, unixcharset; 
     mode_t umask;
     mode_t save_mask;
-    int    sleep;
 #ifdef ADMIN_GRP
     gid_t admingid;
 #endif /* ADMIN_GRP */
@@ -83,13 +86,15 @@ struct afp_options {
 
     /* default value for winbind authentication */
     char *ntdomain, *ntseparator;
+    char *logconfig;
 };
 
 #define AFPOBJ_TMPSIZ (MAXPATHLEN)
 typedef struct _AFPObj {
     int proto;
     unsigned long servernum;
-    void *handle, *config;
+    void *handle;               /* either (DSI *) or (ASP *) */
+    void *config; 
     struct afp_options options;
     char *Obj, *Type, *Zone;
     char username[MAXUSERLEN];
@@ -102,7 +107,7 @@ typedef struct _AFPObj {
     void *uam_cookie; /* cookie for uams */
     struct session_info  sinfo;
     uid_t uid;         /* client running user id */
-
+    int ipc_fd; /* anonymous PF_UNIX socket for IPC with afpd parent */
 #ifdef FORCE_UIDGID
     int                 force_uid;
     uidgidset          uidgid;
@@ -112,6 +117,9 @@ typedef struct _AFPObj {
 /* typedef for AFP functions handlers */
 typedef int (*AFPCmd)(AFPObj *obj, char *ibuf, size_t ibuflen, char *rbuf,  size_t *rbuflen);
 
+/* afp_dsi.c */
+extern AFPObj *AFPobj;
+
 extern int             afp_version;
 extern int             afp_errno;
 extern unsigned char   nologin;
@@ -119,8 +127,8 @@ extern struct dir   *curdir;
 extern char            getwdbuf[];
 
 /* FIXME CNID */
-extern char             Cnid_srv[MAXHOSTNAMELEN + 1];
-extern int              Cnid_port;
+extern const char *Cnid_srv;
+extern const char *Cnid_port;
 
 extern int  get_afp_errno   (const int param);
 extern void afp_options_init (struct afp_options *);
@@ -136,7 +144,11 @@ extern void initline   (int, char *);
 extern int  parseline  (int, char *);
 
 /* afp_util.c */
-const char *AfpNum2name (int );
+extern const char *AfpNum2name (int );
+extern const char *AfpErr2name(int err);
+
+/* directory.c */
+extern struct dir rootParent;
 
 #ifndef NO_DDP
 extern void afp_over_asp (AFPObj *);