src/server/safs/pathcheck.c

changeset 77
f1cff81e425a
parent 69
4a10bc0ee80d
child 87
bdec069d2239
equal deleted inserted replaced
76:5f7660fe1562 77:f1cff81e425a
55 } 55 }
56 56
57 int require_access(pblock *pb, Session *sn, Request *rq) { 57 int require_access(pblock *pb, Session *sn, Request *rq) {
58 char *mask_str = pblock_findval("mask", rq->vars); 58 char *mask_str = pblock_findval("mask", rq->vars);
59 if(!mask_str) { 59 if(!mask_str) {
60 // misconfig 60 log_ereport(LOG_MISCONFIG, "require-access: missing mask parameter");
61 // TODO: log 61 protocol_status(sn, rq, 500, NULL);
62 return REQ_ABORTED; 62 return REQ_ABORTED;
63 } 63 }
64 64
65 uint32_t access_mask = 0; 65 uint32_t access_mask = 0;
66 size_t n = 0; 66 size_t n = 0;
78 78
79 char *aclname = pblock_findval("acl", pb); 79 char *aclname = pblock_findval("acl", pb);
80 if(aclname) { 80 if(aclname) {
81 ACLList *acl = acl_get(vs->acls, aclname); 81 ACLList *acl = acl_get(vs->acls, aclname);
82 if(!acl) { 82 if(!acl) {
83 // TODO: error 83 log_ereport(
84 fprintf(stderr, "acl %s not found\n", aclname); 84 LOG_MISCONFIG,
85 "append-acl: acl %s not found", aclname);
86 protocol_status(sn, rq, 500, NULL);
85 return REQ_ABORTED; 87 return REQ_ABORTED;
86 } 88 }
87 89
88 acllist_append(sn, rq, acl); 90 acllist_append(sn, rq, acl);
89 } 91 }

mercurial