int create_user(const char *name, User **user_ptr_add) {
    User *curr = *user_ptr_add;
    if(strlen(name) >= MAX_NAME){
        return 2;
    }
    if(user_ptr_add == NULL){
        User *newbie = (User *) malloc(sizeof(User));
        strcpy(newbie->name, name);
        *user_ptr_add = newbie;
        // add user with name to head of list
        return 0;
    }

    while(curr->next != NULL){ //traverse through link list
        if(curr->name == name){ //check for case 1 at each node
            return 1;
        }
        curr = curr->next; //traversalstep
    }
    //create new user at curr next
    curr->next = (User *) malloc(sizeof(User));
    strcpy(curr->next->name, name);
    return 0;
}
Remove address boundary error