]> arthur.barton.de Git - netatalk.git/blobdiff - include/atalk/uam.h
New option parsing
[netatalk.git] / include / atalk / uam.h
index f54a5d31e1ac7a54256dca3183e141c96bcaeadd..72207f1fcdb1d0aa28dc7ce6ea7958525d1cfe2d 100644 (file)
@@ -5,7 +5,6 @@
 #ifndef UAM_H
 #define UAM_H 1
 
-#include <sys/cdefs.h>
 #include <pwd.h>
 #include <stdarg.h>
 
@@ -15,7 +14,9 @@
 #endif /* TRU64 */
 
 /* just a label for exported bits */
-#define UAM_MODULE_EXPORT
+#ifndef UAM_MODULE_EXPORT
+#define UAM_MODULE_EXPORT 
+#endif
 
 /* type of uam */
 #define UAM_MODULE_SERVER       1
@@ -51,7 +52,6 @@
  * get back the corresponding option. not all of these are implemented. */
 #define UAM_PASSWD_FILENAME     (1 << 0)
 #define UAM_PASSWD_MINLENGTH    (1 << 1)
-#define UAM_PASSWD_MAXFAIL      (1 << 2) /* not implemented yet. */
 #define UAM_PASSWD_EXPIRETIME   (1 << 3) /* not implemented yet. */
 
 /* max lenght of username  */
@@ -75,20 +75,23 @@ struct session_info {
   size_t  cryptedkey_len;
   void    *sessiontoken;        /* session token sent to the client on FPGetSessionToken*/
   size_t  sessiontoken_len;
+  void    *clientid;          /* whole buffer cotaining eg idlen, id and boottime */
+  size_t  clientid_len;
 };
 
 /* register and unregister uams with these functions */
-extern int uam_register (const int, const char *, const char *, ...);
-extern void uam_unregister (const int, const char *);
+extern UAM_MODULE_EXPORT int uam_register (const int, const char *, const char *, ...);
+extern UAM_MODULE_EXPORT void uam_unregister (const int, const char *);
 
 /* helper functions */
-extern struct passwd *uam_getname (void*, char *, const int);
-extern int uam_checkuser (const struct passwd *);
+extern UAM_MODULE_EXPORT struct passwd *uam_getname (void*, char *, const int);
+extern UAM_MODULE_EXPORT int uam_checkuser (const struct passwd *);
 
 /* afp helper functions */
-extern int uam_afp_read (void *, char *, size_t *,
+extern UAM_MODULE_EXPORT int uam_afp_read (void *, char *, size_t *,
                             int (*)(void *, void *, const int));
-extern int uam_afpserver_option (void *, const int, void *, size_t *);
+extern UAM_MODULE_EXPORT int uam_afpserver_option (void *, const int, void *, size_t *);
+
 #ifdef TRU64
 extern void uam_afp_getcmdline (int *, char ***);
 extern int uam_sia_validate_user (sia_collect_func_t *, int, char **,