src/server/daemon/acl.c

branch
webdav
changeset 261
f2c772336ecd
parent 260
4779a6fb4fbe
child 415
d938228c382e
equal deleted inserted replaced
260:4779a6fb4fbe 261:f2c772336ecd
98 } 98 }
99 return access_mask; 99 return access_mask;
100 } 100 }
101 101
102 User* acllist_getuser(Session *sn, Request *rq, ACLListHandle *list) { 102 User* acllist_getuser(Session *sn, Request *rq, ACLListHandle *list) {
103 // TODO: cache result 103 // TODO: cache result #50
104 if(!sn || !rq || !list) { 104 if(!sn || !rq || !list) {
105 return NULL; 105 return NULL;
106 } 106 }
107 107
108 // get user 108 // get user
177 177
178 // evalutate all ACLs 178 // evalutate all ACLs
179 ACLList *acl = acl_evallist(list, user, access_mask, NULL); 179 ACLList *acl = acl_evallist(list, user, access_mask, NULL);
180 if(acl) { 180 if(acl) {
181 acl_set_error_status(sn, rq, acl, user); 181 acl_set_error_status(sn, rq, acl, user);
182 // TODO: don't free the user here 182 // TODO: don't free the user here #51
183 if(user) { 183 if(user) {
184 user->free(user); 184 user->free(user);
185 } 185 }
186 return REQ_ABORTED; 186 return REQ_ABORTED;
187 } 187 }

mercurial