where is my memory leak?
/*
 * Make a new post from 'author' to the 'target' user,
 * containing the given contents, IF the users are friends.
 *
 * Insert the new post at the *front* of the user's list of posts.
 *
 * 'contents' is a pointer to heap-allocated memory - you do not need
 * to allocate more memory to store the contents of the post.
 *
 * Return:
 *   - 0 on success
 *   - 1 if users exist but are not friends
 *   - 2 if either User pointer is NULL
 */
int make_post(const User *author, User *target, char *contents) {
    if (!author || !target) {
        return 2;
    }

    // numerical Boolean to make predicate logic easy
    int friend = 0;
    for (int i = 0; i < MAX_FRIENDS; i++) {
        if (target->friends[i] == author) {
            friend = 1;
            break;
        }
    }

    if (!friend) {
        return 1;
    }
    // allocate space for a new post
    Post *newPost = (Post*)malloc(sizeof(Post));
    // allocate space for the time
    time_t *now = (time_t*)malloc(sizeof(time_t));
    if (newPost != NULL && now != NULL) {
        strcpy(newPost->author, author->name);
        newPost->contents = contents;
        time(now);
        newPost->date = now;;
        newPost->next = target->first_post;
        target->first_post = newPost;

        return 0;
    }
    
    else {
        perror("Cannot allocate space");
        exit(3);
    }
}
