X-Git-Url: https://tinc-vpn.org/git/browse?a=blobdiff_plain;f=src%2Fsptps_keypair.c;h=1bf2da012e0641a21fb9e96e8cf276501fad5bd8;hb=1b777010e7255cb354e31ca28c6442ee86383bac;hp=fde862278597b92b1c07f4e5754b40e37091d625;hpb=d8d1ab4ee1e92ec84fe9ea86eec2396275483a92;p=tinc diff --git a/src/sptps_keypair.c b/src/sptps_keypair.c index fde86227..1bf2da01 100644 --- a/src/sptps_keypair.c +++ b/src/sptps_keypair.c @@ -38,8 +38,8 @@ void logger(int level, int priority, const char *format, ...) { static void usage() { fprintf(stderr, "Usage: %s [options] private_key_file public_key_file\n\n", program_name); fprintf(stderr, "Valid options are:\n" - " --help Display this help and exit.\n" - "\n"); + " --help Display this help and exit.\n" + "\n"); fprintf(stderr, "Report bugs to tinc@tinc-vpn.org.\n"); } @@ -54,20 +54,20 @@ int main(int argc, char *argv[]) { int option_index = 0; while((r = getopt_long(argc, argv, "", long_options, &option_index)) != EOF) { - switch (r) { - case 0: /* long option */ - break; + switch(r) { + case 0: /* long option */ + break; - case '?': /* wrong options */ - usage(); - return 1; + case '?': /* wrong options */ + usage(); + return 1; - case 1: /* help */ - usage(); - return 0; + case 1: /* help */ + usage(); + return 0; - default: - break; + default: + break; } } @@ -83,15 +83,19 @@ int main(int argc, char *argv[]) { crypto_init(); ecdsa_t *key = ecdsa_generate(); - if(!key) + + if(!key) { return 1; - + } + FILE *fp = fopen(argv[1], "w"); + if(fp) { if(!ecdsa_write_pem_private_key(key, fp)) { fprintf(stderr, "Could not write ECDSA private key\n"); return 1; } + fclose(fp); } else { fprintf(stderr, "Could not open '%s' for writing: %s\n", argv[1], strerror(errno)); @@ -99,9 +103,12 @@ int main(int argc, char *argv[]) { } fp = fopen(argv[2], "w"); + if(fp) { - if(!ecdsa_write_pem_public_key(key, fp)) + if(!ecdsa_write_pem_public_key(key, fp)) { fprintf(stderr, "Could not write ECDSA public key\n"); + } + fclose(fp); } else { fprintf(stderr, "Could not open '%s' for writing: %s\n", argv[2], strerror(errno));