/*
 * Return a pointer to the user with this name in
 * the list starting with head. Return NULL if no such user exists.
 *
 * NOTE: You'll likely need to cast a (const User *) to a (User *)
 * to satisfy the prototype without warnings.
 */
User *find_user(const char *name, const User *head) {
    const User *curr = malloc(sizeof(User));
    //const User *curr = head;
    if (head == NULL) {
        return NULL;
    } else {
        curr = head;
        while (curr != NULL) {
            if (strcmp(curr->name, name) == 0) {
                return (User *)curr;
                break;
            }
            curr = curr->next;
        }
    }
    return NULL;
}
Is this right