src/server/daemon/keyfile_auth.h

changeset 415
d938228c382e
parent 255
b5d15a4a19f5
child 467
4d038bc6f86e
equal deleted inserted replaced
414:99a34860c105 415:d938228c382e
29 #ifndef KEYFILE_AUTH_H 29 #ifndef KEYFILE_AUTH_H
30 #define KEYFILE_AUTH_H 30 #define KEYFILE_AUTH_H
31 31
32 #include "../public/auth.h" 32 #include "../public/auth.h"
33 33
34 #include <ucx/map.h> 34 #include <cx/map.h>
35 #include <inttypes.h> 35 #include <inttypes.h>
36 36
37 #ifdef __cplusplus 37 #ifdef __cplusplus
38 extern "C" { 38 extern "C" {
39 #endif 39 #endif
47 KEYFILE_SSHA512 47 KEYFILE_SSHA512
48 }; 48 };
49 49
50 struct keyfile { 50 struct keyfile {
51 AuthDB authdb; 51 AuthDB authdb;
52 UcxMap *users; 52 CxMap *users;
53 }; 53 };
54 54
55 struct keyfile_user { 55 struct keyfile_user {
56 User user; 56 User user;
57 sstr_t *groups; 57 cxmutstr *groups;
58 size_t numgroups; 58 size_t numgroups;
59 enum KeyfileHashType hash_type; 59 enum KeyfileHashType hash_type;
60 char *hash; 60 char *hash;
61 size_t hashlen; 61 size_t hashlen;
62 }; 62 };
63 63
64 Keyfile* keyfile_new(UcxAllocator *a); 64 Keyfile* keyfile_new(CxAllocator *a);
65 65
66 int keyfile_add_user( 66 int keyfile_add_user(
67 Keyfile *keyfile, 67 Keyfile *keyfile,
68 sstr_t user, 68 cxmutstr user,
69 enum KeyfileHashType hash_type, 69 enum KeyfileHashType hash_type,
70 sstr_t hash, 70 cxmutstr hash,
71 sstr_t *groups, 71 cxmutstr *groups,
72 size_t ngroups); 72 size_t ngroups);
73 73
74 User* keyfile_get_user(AuthDB *db, char *user); 74 User* keyfile_get_user(AuthDB *db, const char *user);
75 int keyfile_user_verify_password(User *user, char *password); 75 int keyfile_user_verify_password(User *user, const char *password);
76 int keyfile_user_check_group(User *user, char *group); 76 int keyfile_user_check_group(User *user, const char *group);
77 void keyfile_user_free(User *user); 77 void keyfile_user_free(User *user);
78 78
79 // SSHA password compare 79 // SSHA password compare
80 int ssha_verify(KeyfileUser *user, char *password); 80 int ssha_verify(KeyfileUser *user, const char *password);
81 81
82 #ifdef __cplusplus 82 #ifdef __cplusplus
83 } 83 }
84 #endif 84 #endif
85 85

mercurial