X-Git-Url: https://tinc-vpn.org/git/browse?a=blobdiff_plain;f=src%2Fsptps_keypair.c;h=7e47d06f380464c93ee3e4351f4eed8eaedee5c4;hb=56621be326497d56db0c4c372ae3cc497018cfcf;hp=51a94eeb458723483c38fd55263a790914177488;hpb=1c475ecb575367a6b3f9328b0f643ad636155341;p=tinc diff --git a/src/sptps_keypair.c b/src/sptps_keypair.c index 51a94eeb..7e47d06f 100644 --- a/src/sptps_keypair.c +++ b/src/sptps_keypair.c @@ -1,6 +1,6 @@ /* sptps_test.c -- Simple Peer-to-Peer Security test program - Copyright (C) 2011-2013 Guus Sliepen , + Copyright (C) 2011-2022 Guus Sliepen , This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -19,15 +19,12 @@ #include "system.h" -#include - #include "crypto.h" #include "ecdsagen.h" -#include "utils.h" - -static char *program_name; +#include "logger.h" +#include "names.h" -void logger(int level, int priority, const char *format, ...) { +void logger(debug_t level, int priority, const char *format, ...) { (void)level; (void)priority; va_list ap; @@ -39,7 +36,7 @@ void logger(int level, int priority, const char *format, ...) { fputc('\n', stderr); } -static void usage() { +static void usage(void) { 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" @@ -97,12 +94,14 @@ int main(int argc, char *argv[]) { if(fp) { if(!ecdsa_write_pem_private_key(key, fp)) { fprintf(stderr, "Could not write ECDSA private key\n"); + free(key); return 1; } fclose(fp); } else { fprintf(stderr, "Could not open '%s' for writing: %s\n", argv[1], strerror(errno)); + free(key); return 1; } @@ -113,11 +112,12 @@ int main(int argc, char *argv[]) { fprintf(stderr, "Could not write ECDSA public key\n"); } + free(key); fclose(fp); + return 0; } else { fprintf(stderr, "Could not open '%s' for writing: %s\n", argv[2], strerror(errno)); + free(key); return 1; } - - return 0; }