what is wrong with my code
#include <stdio.h>
#include <stdlib.h>

int populate_array(int, int *);
int check_sin(int *);


int main(int argc, char **argv) {
    // TODO: Verify that command line arguments are valid.
    if (argc != 2) {
        exit(2);
    }

    // TODO: Parse arguments and then call the two helpers in sin_helpers.c
    // to verify the SIN given as a command line argument.
    int sin_num = strtol(argv[1], NULL, 10);
    int *sin_array = malloc(sizeof(int) * 9);

    int array_success = populate_array(sin_num, sin_array);

    if (array_success == 1) {
        printf("Invalid SIN");
        return 1;
    }
    else {
        int valid_sin = check_sin(sin_array);

        if (valid_sin == 1){
            printf("Invalid SIN");
            return 1;
        }
        else{
            printf("Valid SIN");
        }
    }

    return 0;
}
