#ifndef PURPLE_ZEPHYR_INTERNAL_H #define PURPLE_ZEPHYR_INTERNAL_H #include <zephyr/zephyr.h> #include <zephyr_internal.h> #define MAXHOSTNAMELEN 512 #define ETIMEDOUT WSAETIMEDOUT #define EADDRINUSE WSAEADDRINUSE #define MAXHOSTNAMELEN 4096 #ifdef ZEPHYR_USES_HESIOD #ifndef ZEPHYR_USES_KERBEROS #define REALM_SZ MAXHOSTNAMELEN #define INST_SZ 0 /* no instances w/o Kerberos */ #define ANAME_SZ 9 /* size of a username + null */ #define CLOCK_SKEW 300 /* max time to cache packet ids */ #define SERVER_SVC_FALLBACK htons((unsigned short) 2103) #define HM_SVC_FALLBACK htons((unsigned short) 2104) #define HM_SRV_SVC_FALLBACK htons((unsigned short) 2105) #define ZAUTH_CKSUM_FAILED (-2) /* Used only by server. */ #define ZAUTH_UNSET (-3) /* Internal to client library. */ #define Z_MAXFRAGS 500 /* Max number of packet fragments */ #define Z_MAXNOTICESIZE 400000 /* Max size of incoming notice */ #define Z_MAXQUEUESIZE 1500000 /* Max size of input queue notices */ #define Z_FRAGFUDGE 13 /* Room to for multinotice field */ #define Z_NOTICETIMELIMIT 30 /* Time to wait for fragments */ #define Z_INITFILTERSIZE 30 /* Starting size of uid filter */ unsigned ZEPHYR_INT32 timep; struct _Z_Hole *holelist; extern struct _Z_InputQ *__Q_Head, *__Q_Tail; extern int __Zephyr_open; /* 0 if FD opened, 1 otherwise */ extern int __HM_set; /* 0 if dest addr set, 1 otherwise */ extern int __Zephyr_server; /* 0 if normal client, 1 if server or zhm */ extern ZLocations_t *__locate_list; extern int __locate_next; extern ZSubscription_t *__subscriptions_list; extern int __subscriptions_num; extern int __subscriptions_next; extern int __Zephyr_port; /* Port number */ extern struct in_addr __My_addr; typedef Code_t (*Z_SendProc)(ZNotice_t *, char *, int, int); struct _Z_InputQ *Z_GetFirstComplete(void); struct _Z_InputQ *Z_GetNextComplete(struct _Z_InputQ *); Code_t Z_XmitFragment(ZNotice_t *, char *, int, int); void Z_RemQueue(struct _Z_InputQ *); Code_t Z_AddNoticeToEntry(struct _Z_InputQ *, ZNotice_t *, int); Code_t Z_FormatAuthHeader(ZNotice_t *, char *, int, int *, Z_AuthProc); Code_t Z_FormatHeader(ZNotice_t *, char *, int, int *, Z_AuthProc); Code_t Z_FormatRawHeader(ZNotice_t *, char *, gsize, int *, char **, char **); Code_t Z_ReadEnqueue(void); Code_t Z_SendLocation(char *, char *, Z_AuthProc, char *); Code_t Z_SendFragmentedNotice(ZNotice_t *notice, int len, Z_AuthProc cert_func, Code_t Z_WaitForComplete(void); Code_t Z_WaitForNotice(ZNotice_t *notice, int (*pred)(ZNotice_t *, void *), #endif /* PURPLE_ZEPHYR_INTERNAL_H */