]> arthur.barton.de Git - netatalk.git/blobdiff - include/atalk/uuid.h
Writing metadata xattr on directories with sticky bit set, FR#94
[netatalk.git] / include / atalk / uuid.h
index e3b2be118b19cb317694cad350e55c158809c8a5..4c9b3c95f8ff0225b503da0ae7bf3aeaa6d8e3ac 100644 (file)
 #define AFP_UUID_H
 
 #define UUID_BINSIZE 16
-#define UUID_STRINGSIZE 36
 
-typedef unsigned char *uuidp_t;
+typedef const unsigned char *uuidp_t;
 typedef unsigned char atalk_uuid_t[UUID_BINSIZE];
 
-typedef enum {UUID_USER = 1, UUID_GROUP, UUID_LOCAL} uuidtype_t;
+typedef enum {UUID_USER   = 1,
+              UUID_GROUP  = 2,
+              UUID_ENOENT = 4} /* used as bit flag */
+    uuidtype_t;
+#define UUIDTYPESTR_MASK 3
 extern char *uuidtype[];
 
-/* afp_options.c needs these. defined in libatalk/ldap.c */
-extern char *ldap_host;
-extern int  ldap_auth_method;
-extern char *ldap_auth_dn;
-extern char *ldap_auth_pw;
-extern char *ldap_userbase;
-extern char *ldap_groupbase;
-extern char *ldap_uuid_attr;
-extern char *ldap_name_attr;
-extern char *ldap_group_attr;
-extern char *ldap_uid_attr;
-
 /******************************************************** 
  * Interface
  ********************************************************/
 
-extern int getuuidfromname( const char *name, uuidtype_t type, uuidp_t uuid);
-extern int getnamefromuuid( const uuidp_t uuidp, char **name, uuidtype_t *type);
-extern const char *uuid_bin2string(unsigned char *uuid);
-extern void uuid_string2bin( const char *uuidstring, uuidp_t uuid);
+extern int getuuidfromname( const char *name, uuidtype_t type, unsigned char *uuid);
+extern int getnamefromuuid( const unsigned char *uuid, char **name, uuidtype_t *type);
+extern void localuuid_from_id(unsigned char *buf, uuidtype_t type, unsigned int id);
+extern const char *uuid_bin2string(const unsigned char *uuid);
+extern void uuid_string2bin( const char *uuidstring, unsigned char *uuid);
+extern void uuidcache_dump(void);
 
 #endif /* AFP_UUID_H */