vhost-manager/src/crypt/crypt.c

43 lines
709 B
C

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <unistd.h>
#include <crypt.h>
int main(int argc, char** argv)
{
char* password;
char* salt;
if (argc == 3) {
password = argv[1];
salt = argv[2];
} else {
password = getenv("PASSWORD");
salt = getenv("SALT");
}
if (password == NULL) {
password = "";
}
if (salt == NULL) {
salt = "";
}
size_t password_length = strlen(password);
size_t salt_length = strlen(salt);
if (password_length == 0 || salt_length == 0) {
printf("Usage:\n");
printf(" %s <password> <salt>\n", argv[0]);
printf(" PASSWORD=<password> SALT=<salt> %s\n", argv[0]);
return 1;
}
printf("%s\n", crypt(password, salt));
return 0;
}