X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=etc%2Fafpd%2Fglobals.h;h=dc64fb15d40775b4657f5c5f3d55ea94d908b345;hb=be96d276348da0a7e66eeec844b306e8a5fa8fac;hp=f1e0c9e91eb88ba1ea0f6ddc90d7d085b7e244eb;hpb=2f7e864e8af0cf66afe35a4b4b1c8b4e1b0e6611;p=netatalk.git diff --git a/etc/afpd/globals.h b/etc/afpd/globals.h index f1e0c9e9..dc64fb15 100644 --- a/etc/afpd/globals.h +++ b/etc/afpd/globals.h @@ -1,6 +1,4 @@ /* - * $Id: globals.h,v 1.23 2008-05-16 04:19:41 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 -#include #ifdef ADMIN_GRP #include @@ -26,11 +23,6 @@ #include #include -/* test for inline */ -#ifndef __inline__ -#define __inline__ -#endif - #define MACFILELEN 31 #define MAXUSERLEN 256 @@ -41,14 +33,9 @@ #define OPTION_CUSTOMICON (1 << 4) #define OPTION_NOSLP (1 << 5) #define OPTION_ANNOUNCESSH (1 << 6) - -#ifdef FORCE_UIDGID -/* set up a structure for this */ -typedef struct uidgidset_t { - uid_t uid; - gid_t gid; -} uidgidset; -#endif /* FORCE_UIDGID */ +#define OPTION_UUID (1 << 7) +#define OPTION_ACL2MACCESS (1 << 8) +#define OPTION_NOZEROCONF (1 << 9) /* a couple of these options could get stuck in unions to save * space. */ @@ -60,40 +47,45 @@ 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; - struct at_addr ddpaddr; + char hostname[MAXHOSTNAMELEN + 1], *server, *ipaddr, *port, *configfile; 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 */ + int volnamelen; /* default value for winbind authentication */ char *ntdomain, *ntseparator; - + char *logconfig; }; #define AFPOBJ_TMPSIZ (MAXPATHLEN) -typedef struct AFPObj { +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]; @@ -105,13 +97,16 @@ typedef struct AFPObj { char oldtmp[AFPOBJ_TMPSIZ + 1], newtmp[AFPOBJ_TMPSIZ + 1]; void *uam_cookie; /* cookie for uams */ struct session_info sinfo; - -#ifdef FORCE_UIDGID - int force_uid; - uidgidset uidgid; -#endif + uid_t uid; /* client running user id */ + int ipc_fd; /* anonymous PF_UNIX socket for IPC with afpd parent */ } 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,28 +114,29 @@ extern struct dir *curdir; extern char getwdbuf[]; /* FIXME CNID */ -extern char Cnid_srv[MAXHOSTNAMELEN + 1]; -extern int Cnid_port; - -extern int get_afp_errno __P((const int param)); -extern void afp_options_init __P((struct afp_options *)); -extern int afp_options_parse __P((int, char **, struct afp_options *)); -extern int afp_options_parseline __P((char *, struct afp_options *)); -extern void afp_options_free __P((struct afp_options *, - const struct afp_options *)); -extern void setmessage __P((const char *)); -extern void readmessage __P((AFPObj *)); +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 *); +extern int afp_options_parse (int, char **, struct afp_options *); +extern int afp_options_parseline (char *, struct afp_options *); +extern void afp_options_free (struct afp_options *, + const struct afp_options *); +extern void setmessage (const char *); +extern void readmessage (AFPObj *); /* gettok.c */ -extern void initline __P((int, char *)); -extern int parseline __P((int, char *)); +extern void initline (int, char *); +extern int parseline (int, char *); /* afp_util.c */ -const char *AfpNum2name __P((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 __P((AFPObj *)); -#endif /* NO_DDP */ -extern void afp_over_dsi __P((AFPObj *)); +extern void afp_over_dsi (AFPObj *); #endif /* globals.h */