create md5 hash command line

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <openssl/md5.h>

void calculate_md5(const char *input) {
    MD5_CTX context;
    MD5_Init(&context);
    MD5_Update(&context, input, strlen(input));

    unsigned char md5sum[MD5_DIGEST_LENGTH];
    MD5_Final(md5sum, &context);

    for (int i = 0; i < MD5_DIGEST_LENGTH; i++) {
        printf("%02x", md5sum[i]);
    }
    printf("\n");
}

int main(int argc, char *argv[]) {
    if (argc != 2) {
        fprintf(stderr, "Usage: %s <string>\n", argv[0]);
        return EXIT_FAILURE;
    }

    calculate_md5(argv[1]);

    return EXIT_SUCCESS;
}