aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortenox7 <as@tenoware.com>2017-12-14 00:35:42 -0800
committertenox7 <as@tenoware.com>2017-12-14 00:35:42 -0800
commitcdafae212c2b80fb97644e6d43369afcb38663ad (patch)
treea2eaa57f7a22cb9af9821ff733c5005a14602105
parent7de878f1e4afe7b8399e4921e2a4736b8f70dad8 (diff)
downloadwfm-cdafae212c2b80fb97644e6d43369afcb38663ad.tar.gz
refactor of some auth code
-rw-r--r--wfm.c21
1 files changed, 6 insertions, 15 deletions
diff --git a/wfm.c b/wfm.c
index 625a66c..15d84a1 100644
--- a/wfm.c
+++ b/wfm.c
@@ -121,13 +121,7 @@ void access_check(char *access_string) {
if(sscanf(access_string, "access-ip=%2s:%30s", type, ipaddr)==2) {
- if(ipaddr[0]=='*') {
- if(strcmp(type, "ro")==0)
- access_level=PERM_RO;
- else if(strcmp(type, "rw")==0)
- access_level=PERM_RW;
- }
- else if(strcmp(cgiRemoteAddr, ipaddr)==0) {
+ if(ipaddr[0]=='*' || strcmp(cgiRemoteAddr, ipaddr)==0) {
if(strcmp(type, "ro")==0)
access_level=PERM_RO;
else if(strcmp(type, "rw")==0)
@@ -141,16 +135,13 @@ void access_check(char *access_string) {
snprintf(token_inp, sizeof(token_inp), "%s:%s:%s", cgiRemoteAddr, user, pass);
// perform user auth by comparing user supplied token with system generated token
if(strcmp(mktoken(token_inp), token)==0) {
- if(strcmp(type, "ro")==0) {
+ if(strcmp(type, "ro")==0)
access_level=PERM_RO;
- access_as_user=1;
- strncpy(loggedinuser, user, sizeof(loggedinuser));
- }
- else if(strcmp(type, "rw")==0) {
+ else if(strcmp(type, "rw")==0)
access_level=PERM_RW;
- access_as_user=1;
- strncpy(loggedinuser, user, sizeof(loggedinuser));
- }
+
+ access_as_user=1;
+ strncpy(loggedinuser, user, sizeof(loggedinuser));
}
}
else if(sscanf(access_string, "access-htauth=%2[^':']:%30s", type, user)==2) {