int create_user(const char *name, User **user_ptr_add) {

    // if name too long
    if (strlen(name) > 32) {
        return 2;
    }
    
    // create new user
    User *new_user_ptr = (User *)malloc(sizeof(User));
    //new_user_ptr->name = (char *)malloc(MAX_NAME * sizeof(char));
    strncpy(new_user_ptr->name, name, sizeof(new_user_ptr->name));

    // if head is NULL new user is head
    if (*user_ptr_add == NULL) {
        *user_ptr_add = new_user_ptr;
        return 0; 
    } else {
        // else add user to tail
        User *curr = *user_ptr_add;
        while (curr != NULL) {
            if (strcmp(curr->name, name) == 0) {
                return 1;
            } else if (curr->next == NULL) {
                curr->next = new_user_ptr;
                return 0;
            }
            curr = curr->next;
        }
    }
    
    // not reachable
    return -1;
}
Create a new user with the given name.  Insert it at the tail of the list of users whose head is pointed to by *user_ptr_add.

 * Return:
 *   - 0 if successful
 *   - 1 if a user by this name already exists in this list
 *   - 2 if the given name cannot fit in the 'name' array
 *       (don't forget about the null terminator)