X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=include%2Fatalk%2Fglobals.h;h=3fb8e4f65c4819f79527e85be836d9abda17f29c;hb=791d1f2cf4511210ff72486b0338db1d9cc7b7ab;hp=65e1905aff12d0076b179380ced9db334ca236b4;hpb=7c247ac35c59a3dae21bdf73f52d7980fae1f578;p=netatalk.git diff --git a/include/atalk/globals.h b/include/atalk/globals.h index 65e1905a..3fb8e4f6 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 */ @@ -32,23 +29,33 @@ #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_SHARE_RESERV (1 << 11) /* whether to use Solaris fcntl F_SHARE locks */ +#define OPTION_SPOTLIGHT (1 << 12) /* whether to enable Spotlight support */ +#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,25 +85,24 @@ struct afp_options { char *uampath, *fqdn; char *sigconffile; char *uuidconf; - char *guest, *loginmesg, *keyfile, *passwdfile; + char *guest, *loginmesg, *keyfile, *passwdfile, *extmapfile; char *uamlist; 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; char *adminauthuser; + char *slmod_path; struct afp_volume_name volfile; }; @@ -114,6 +120,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); @@ -138,15 +147,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); @@ -155,5 +158,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 */