fixed pw_check, cryptpw

This commit is contained in:
pups 2024-07-31 13:58:31 +03:00
parent 1925d32c40
commit ff94d81541
5 changed files with 29 additions and 43 deletions

View file

@ -1,5 +1,20 @@
#include <stdio.h>
#include "pw_check.h"
#include <stdlib.h>
#include <unistd.h>
static char *gen_salt(void) {
srand(getpid());
static char salt[15];
char abc[] = "asdfghjklzxcvbnmqwertyuiop1234567890";
size_t i = 0;
for (; i < sizeof(salt); i++)
salt[i] = abc[rand() % sizeof(abc)];
salt[i] = '\0';
return salt;
}
int main(int argc, char **argv) {
if (argc < 2) {
@ -7,11 +22,11 @@ int main(int argc, char **argv) {
return 0;
}
char *salt = NULL;
char *salt_ptr = gen_salt();
if (argc > 2)
salt = argv[2];
salt_ptr = argv[2];
char *cpass = enc_password("cryptpw", argv[1], salt);
char *cpass = crypt(argv[1], salt_ptr);
if (cpass == NULL)
return 1;

View file

@ -7,8 +7,8 @@
#include <sys/klog.h>
int main(int argc, char **argv) {
unsigned int s_size = 0;
unsigned int n_level = 0;
int s_size = 0;
int n_level = 0;
int opt;
while ((opt = getopt(argc, argv, "s:n:")) != -1) {
@ -65,4 +65,3 @@ int main(int argc, char **argv) {
free(buf);
return 0;
}