stat file before attempting to open

This commit is contained in:
Joseph Quadrino 2013-07-31 03:07:51 -04:00
parent 52a77cc997
commit 9f6be0ce4b

View File

@ -123,11 +123,12 @@ void manage_keys(char *keys_file)
{
const uint32_t KEYS_SIZE = crypto_box_PUBLICKEYBYTES + crypto_box_SECRETKEYBYTES;
uint8_t keys[KEYS_SIZE];
/* TODO: stat the file before trying to open it. We aren't cave people! */
FILE *keysf = fopen(keys_file, "r");
if (keysf != NULL) {
/* if file was opened successfully -- load keys */
struct stat existence;
FILE *keysf;
/* Check if file exits, proceed to open and load keys */
if(stat(keys_file,&existence) >= 0) {
keysf = fopen(keys_file, "r");
size_t read_size = fread(keys, sizeof(uint8_t), KEYS_SIZE, keysf);
if (read_size != KEYS_SIZE) {
printf("Error while reading the key file\nExiting.\n");