User *find_user(const char *name, const User *head) {
    User *curr_user = malloc(sizeof(User));
    curr_user = (User *)head; //TODO: try without typecast

    int user_is_null;
    if(curr_user == NULL){
        user_is_null = 1;
    }else{
        user_is_null = 0;
    }
    printf("%d\n", user_is_null);

    //traverse the list of users
    while(user_is_null < 1){
        //check if the given name and the name of the current user are the same
        if(strcmp(name, curr_user->name) == 0){
            return curr_user;
        }
        curr_user = curr_user->next;

        if(curr_user == NULL){
            user_is_null = 1;
        }else{
            user_is_null = 0;

    }
    printf("gonna return NULL");
    return NULL;
}
Return a pointer to the user with this name in the list starting with head. Return NULL if no such user exists.