2 * $Id: status.h,v 1.9 2009-10-15 10:43:13 didg Exp $
6 #define AFPD_STATUS_H 1
10 #include <atalk/asp.h>
12 #include "afp_config.h"
14 /* we use these to prevent whacky alignment problems */
15 #define AFPSTATUS_MACHOFF 0
16 #define AFPSTATUS_VERSOFF 2
17 #define AFPSTATUS_UAMSOFF 4
18 #define AFPSTATUS_ICONOFF 6
19 #define AFPSTATUS_FLAGOFF 8
20 /* AFPSTATUS_PRELEN is the number of bytes for status data prior to
21 * the ServerName field.
23 * This is two bytes of offset space for the MachineType, AFPVersionCount,
24 * UAMCount, VolumeIconAndMask, and the 16-bit "Fixed" status flags.
26 #define AFPSTATUS_PRELEN 10
27 /* AFPSTATUS_POSTLEN is the number of bytes for offset records
28 * after the ServerName field.
30 * Right now, this is 2 bytes each for ServerSignature, networkAddressCount,
31 * DirectoryNameCount, and UTF-8 ServerName
33 #define AFPSTATUS_POSTLEN 8
34 #define AFPSTATUS_LEN (AFPSTATUS_PRELEN + AFPSTATUS_POSTLEN)
38 #define PASSWD_SET (1 << 0)
39 #define PASSWD_NOSAVE (1 << 1)
40 #define PASSWD_ALL (PASSWD_SET | PASSWD_NOSAVE)
42 extern void status_versions (char * /*status*/);
43 extern void status_uams (char * /*status*/, const char * /*authlist*/);
44 extern void status_reset (void );
45 extern void status_init (AFPConfig *, AFPConfig *,
46 const struct afp_options *);
48 int afp_getsrvrinfo (AFPObj *obj, char *ibuf, size_t ibuflen, char *rbuf, size_t *rbuflen);