X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=include%2Fatalk%2Fglobals.h;h=a095b103ad484a02f88496ce589156798b705a9c;hb=4c691d7ebf0d54b3ee69d54955bcaf2283e98abc;hp=5607b3294c6c45f136c61af2e7c59b9dd39d7477;hpb=7db833b1021f3daa8e30966e6f025b2a894348dc;p=netatalk.git diff --git a/include/atalk/globals.h b/include/atalk/globals.h index 5607b329..a095b103 100644 --- a/include/atalk/globals.h +++ b/include/atalk/globals.h @@ -7,11 +7,8 @@ #define AFPD_GLOBALS_H 1 #include - -#ifdef ADMIN_GRP #include #include -#endif /* ADMIN_GRP */ #ifdef HAVE_NETDB_H #include /* this isn't header-protected under ultrix */ @@ -22,6 +19,19 @@ #include #include #include +#ifdef WITH_DTRACE +#include +#else +/* List of empty dtrace macros */ +#define AFP_AFPFUNC_START(a,b) +#define AFP_AFPFUNC_DONE(a, b) +#define AFP_CNID_START(a) +#define AFP_CNID_DONE() +#define AFP_READ_START(a) +#define AFP_READ_DONE() +#define AFP_WRITE_START(a) +#define AFP_WRITE_DONE() +#endif /* #define DOSFILELEN 12 */ /* Type1, DOS-compat*/ #define MACFILELEN 31 /* Type2, HFS-compat */ @@ -32,23 +42,35 @@ #define MAXUSERLEN 256 +#define DEFAULT_MAX_DIRCACHE_SIZE 8192 + #define OPTION_DEBUG (1 << 0) #define OPTION_CLOSEVOL (1 << 1) #define OPTION_SERVERNOTIF (1 << 2) -#define OPTION_CUSTOMICON (1 << 4) +#define OPTION_NOSENDFILE (1 << 3) +/* #define OPTION_CUSTOMICON (1 << 4) */ +#define OPTION_AFP_READ_LOCK (1 << 5) /* whether to do AFP spec conforming read locks (default: no) */ #define OPTION_ANNOUNCESSH (1 << 6) #define OPTION_UUID (1 << 7) #define OPTION_ACL2MACCESS (1 << 8) #define OPTION_NOZEROCONF (1 << 9) -#define OPTION_KEEPSESSIONS (1 << 10) /* preserve sessions across master afpd restart with SIGQUIT */ +#define OPTION_ACL2MODE (1 << 10) +#define OPTION_SHARE_RESERV (1 << 11) /* whether to use Solaris fcntl F_SHARE locks */ +#define OPTION_DBUS_AFPSTATS (1 << 12) /* whether to run dbus thread for afpstats */ + +#define PASSWD_NONE 0 +#define PASSWD_SET (1 << 0) +#define PASSWD_NOSAVE (1 << 1) +#define PASSWD_ALL (PASSWD_SET | PASSWD_NOSAVE) + +#define IS_AFP_SESSION(obj) ((obj)->dsi && (obj)->dsi->serversock == -1) /********************************************************************************************** * Ini config sections **********************************************************************************************/ #define INISEC_GLOBAL "Global" -#define INISEC_AFP "AFP" -#define INISEC_CNID "CNID" +#define INISEC_HOMES "Homes" struct DSI; #define AFPOBJ_TMPSIZ (MAXPATHLEN) @@ -78,22 +100,19 @@ struct afp_options { char *uampath, *fqdn; char *sigconffile; char *uuidconf; - char *guest, *loginmesg, *keyfile, *passwdfile; + char *guest, *loginmesg, *keyfile, *passwdfile, *extmapfile; char *uamlist; - char *authprintdir; char *signatureopt; unsigned char signature[16]; char *k5service, *k5realm, *k5keytab; - char *unixcodepage,*maccodepage; + char *unixcodepage, *maccodepage, *volcodepage; charset_t maccharset, unixcharset; mode_t umask; mode_t save_mask; -#ifdef ADMIN_GRP gid_t admingid; -#endif /* ADMIN_GRP */ int volnamelen; /* default value for winbind authentication */ - char *ntdomain, *ntseparator; + char *ntdomain, *ntseparator, *addomain; char *logconfig; char *logfile; char *mimicmodel; @@ -115,6 +134,9 @@ typedef struct AFPObj { struct session_info sinfo; uid_t uid; /* client running user id */ int ipc_fd; /* anonymous PF_UNIX socket for IPC with afpd parent */ + gid_t *groups; + int ngroups; + int afp_version; /* Functions */ void (*logout)(void); void (*exit)(int); @@ -139,15 +161,9 @@ extern const char *Cnid_port; extern int get_afp_errno (const int param); extern void afp_options_init (struct afp_options *); extern void afp_options_parse_cmdline(AFPObj *obj, int ac, char **av); -extern int afp_config_parse(AFPObj *AFPObj); -extern void afp_options_free(struct afp_options *); extern void setmessage (const char *); extern void readmessage (AFPObj *); -/* gettok.c */ -extern void initline (int, char *); -extern int parseline (int, char *); - /* afp_util.c */ extern const char *AfpNum2name (int ); extern const char *AfpErr2name(int err); @@ -156,5 +172,5 @@ extern const char *AfpErr2name(int err); extern struct dir rootParent; extern void afp_over_dsi (AFPObj *); - +extern void afp_over_dsi_sighandlers(AFPObj *obj); #endif /* globals.h */