Refactored CtdlGetUser() API
authorArt Cancro <ajc@citadel.org>
Mon, 30 Oct 2017 20:45:34 +0000 (16:45 -0400)
committerArt Cancro <ajc@citadel.org>
Mon, 30 Oct 2017 20:45:34 +0000 (16:45 -0400)
citadel/user_ops.c
citadel/user_ops.h

index 5cdd4977a6881c1692755ccfc3bfe23845c17034..26aad209422851383163ba77c5106c2e3d35cbd9 100644 (file)
@@ -33,13 +33,14 @@ int chkpwd_read_pipe[2];
 
 
 /*
- * CtdlGetUser()  -  retrieve named user into supplied buffer.
- *            returns 0 on success
+ * CtdlGetUser()       retrieve named user into supplied buffer.
+ *                     returns 0 on success
  */
-int CtdlGetUserLen(struct ctdluser *usbuf, const char *name, long len)
+int CtdlGetUser(struct ctdluser *usbuf, char *name)
 {
        char usernamekey[USERNAME_SIZE];
        struct cdbdata *cdbus;
+       long len = cutuserkey(name);
 
        if (usbuf != NULL) {
                memset(usbuf, 0, sizeof(struct ctdluser));
@@ -52,26 +53,17 @@ int CtdlGetUserLen(struct ctdluser *usbuf, const char *name, long len)
                return(1);
        }
        if (usbuf != NULL) {
-               memcpy(usbuf, cdbus->ptr,
-                       ((cdbus->len > sizeof(struct ctdluser)) ?
-                        sizeof(struct ctdluser) : cdbus->len));
+               memcpy(usbuf, cdbus->ptr, ((cdbus->len > sizeof(struct ctdluser)) ?  sizeof(struct ctdluser) : cdbus->len));
        }
        cdb_free(cdbus);
-
        return (0);
 }
 
 
-int CtdlGetUser(struct ctdluser *usbuf, char *name)
-{
-       return CtdlGetUserLen(usbuf, name, cutuserkey(name));
-}
-
-
 int CtdlLockGetCurrentUser(void)
 {
        CitContext *CCC = CC;
-       return CtdlGetUserLen(&CCC->user, CCC->curr_user, cutuserkey(CCC->curr_user));
+       return CtdlGetUser(&CCC->user, CCC->curr_user);
 }
 
 
@@ -1012,9 +1004,9 @@ int purge_user(char pname[])
 }
 
 
-int internal_create_user (const char *username, long len, struct ctdluser *usbuf, uid_t uid)
+int internal_create_user (char *username, long len, struct ctdluser *usbuf, uid_t uid)
 {
-       if (!CtdlGetUserLen(usbuf, username, len)) {
+       if (!CtdlGetUser(usbuf, username)) {
                return (ERROR + ALREADY_EXISTS);
        }
 
index 9c15804942996ab9a06bbce703dbbc5437f38f78..9769754b2380d989e4d3c16abecb11f4841ef1fb 100644 (file)
@@ -86,6 +86,6 @@ static INLINE void makeuserkey(char *key, const char *username, long len) {
 }
 
 
-int internal_create_user (const char *username, long len, struct ctdluser *usbuf, uid_t uid);
+int internal_create_user(char *username, long len, struct ctdluser *usbuf, uid_t uid);
 
 #endif