any problems?
void list_users(const User *curr) {
    User *user = (User *) curr;
    fprintf(stdout, "User List\n");
    while(user != NULL){        
        fprintf(stdout, "  %s\n", user->name);
        user = user-> next;
    }
}