From: Andreas Steffen Date: Mon, 14 Sep 2009 17:28:25 +0000 (+0200) Subject: enable debug level setting X-Git-Tag: 4.3.5rc1~173 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=5a4dee6dc4899cbcfd7eb0da927c4491633da34a;p=thirdparty%2Fstrongswan.git enable debug level setting --- diff --git a/src/pki/commands/gen.c b/src/pki/commands/gen.c index 791c1353e3..65b5f5ca69 100644 --- a/src/pki/commands/gen.c +++ b/src/pki/commands/gen.c @@ -32,6 +32,9 @@ static int gen(int argc, char *argv[]) { case 'h': return command_usage(NULL); + case 'v': + dbg_level = atoi(optarg); + continue; case 't': if (streq(optarg, "rsa")) { @@ -118,6 +121,7 @@ static void __attribute__ ((constructor))reg() {"type", 't', 1, "type of key, default: rsa"}, {"size", 's', 1, "keylength in bits, default: rsa 2048, ecdsa 384"}, {"outform", 'f', 1, "encoding of generated private key"}, + {"debug", 'v', 1, "set debug level, default: 1"}, } }); } diff --git a/src/pki/commands/issue.c b/src/pki/commands/issue.c index 9953e32c63..ba0ead4b6e 100644 --- a/src/pki/commands/issue.c +++ b/src/pki/commands/issue.c @@ -17,6 +17,7 @@ #include "pki.h" +#include #include #include #include @@ -56,6 +57,9 @@ static int issue(int argc, char *argv[]) { case 'h': goto usage; + case 'v': + dbg_level = atoi(optarg); + continue; case '+': if (!options->from(options, optarg, &argc, &argv, optind)) { @@ -150,6 +154,8 @@ static int issue(int argc, char *argv[]) goto end; } } + + DBG2("Reading ca certificate:"); ca = lib->creds->create(lib->creds, CRED_CERTIFICATE, CERT_X509, BUILD_FROM_FILE, cacert, BUILD_END); if (!ca) @@ -163,13 +169,14 @@ static int issue(int argc, char *argv[]) error = "CA certificate misses CA basicConstraint"; goto end; } - public = ca->get_public_key(ca); if (!public) { error = "extracting CA certificate public key failed"; goto end; } + + DBG2("Reading ca private key:"); private = lib->creds->create(lib->creds, CRED_PRIVATE_KEY, public->get_type(public), BUILD_FROM_FILE, cakey, BUILD_END); @@ -208,6 +215,7 @@ static int issue(int argc, char *argv[]) identification_t *subjectAltName; pkcs10_t *req; + DBG2("Reading certificate request"); if (file) { cert_req = lib->creds->create(lib->creds, CRED_CERTIFICATE, @@ -247,6 +255,7 @@ static int issue(int argc, char *argv[]) } else { + DBG2("Reading public key:"); if (file) { public = lib->creds->create(lib->creds, CRED_PUBLIC_KEY, KEY_ANY, @@ -348,6 +357,7 @@ static void __attribute__ ((constructor))reg() {"crl", 'u', 1, "CRL distribution point URI to include"}, {"ocsp", 'o', 1, "OCSP AuthorityInfoAccess URI to include"}, {"digest", 'g', 1, "digest for signature creation, default: sha1"}, + {"debug", 'v', 1, "set debug level, default: 1"}, {"options", '+', 1, "read command line options from file"}, } }); diff --git a/src/pki/commands/keyid.c b/src/pki/commands/keyid.c index 128645ee0d..49cc1cc587 100644 --- a/src/pki/commands/keyid.c +++ b/src/pki/commands/keyid.c @@ -38,6 +38,9 @@ static int keyid(int argc, char *argv[]) { case 'h': return command_usage(NULL); + case 'v': + dbg_level = atoi(optarg); + continue; case 't': if (streq(optarg, "rsa-priv")) { @@ -152,6 +155,7 @@ static void __attribute__ ((constructor))reg() {"help", 'h', 0, "show usage information"}, {"in", 'i', 1, "input file, default: stdin"}, {"type", 't', 1, "type of key, default: rsa-priv"}, + {"debug", 'v', 1, "set debug level, default: 1"}, } }); } diff --git a/src/pki/commands/pub.c b/src/pki/commands/pub.c index 16bd0b0491..9e4897b2a0 100644 --- a/src/pki/commands/pub.c +++ b/src/pki/commands/pub.c @@ -39,6 +39,9 @@ static int pub(int argc, char *argv[]) { case 'h': return command_usage(NULL); + case 'v': + dbg_level = atoi(optarg); + continue; case 't': if (streq(optarg, "rsa")) { @@ -145,6 +148,7 @@ static void __attribute__ ((constructor))reg() {"in", 'i', 1, "input file, default: stdin"}, {"type", 't', 1, "type of credential, default: rsa"}, {"outform", 'f', 1, "encoding of extracted public key"}, + {"debug", 'v', 1, "set debug level, default: 1"}, } }); } diff --git a/src/pki/commands/self.c b/src/pki/commands/self.c index 8da4952cab..54ef2399b7 100644 --- a/src/pki/commands/self.c +++ b/src/pki/commands/self.c @@ -52,6 +52,9 @@ static int self(int argc, char *argv[]) { case 'h': goto usage; + case 'v': + dbg_level = atoi(optarg); + continue; case '+': if (!options->from(options, optarg, &argc, &argv, optind)) { @@ -240,6 +243,7 @@ static void __attribute__ ((constructor))reg() {"ca", 'b', 0, "include CA basicConstraint, default: no"}, {"ocsp", 'o', 1, "OCSP AuthorityInfoAccess URI to include"}, {"digest", 'g', 1, "digest for signature creation, default: sha1"}, + {"debug", 'v', 1, "set debug level, default: 1"}, {"options", '+', 1, "read command line options from file"}, } }); diff --git a/src/pki/commands/verify.c b/src/pki/commands/verify.c index d089d33846..d070ce090b 100644 --- a/src/pki/commands/verify.c +++ b/src/pki/commands/verify.c @@ -33,6 +33,9 @@ static int verify(int argc, char *argv[]) { case 'h': return command_usage(NULL); + case 'v': + dbg_level = atoi(optarg); + continue; case 'i': file = optarg; continue; @@ -129,6 +132,7 @@ static void __attribute__ ((constructor))reg() {"help", 'h', 0, "show usage information"}, {"in", 'i', 1, "x509 certifcate to verify, default: stdin"}, {"cacert", 'c', 1, "CA certificate, default: verify self signed"}, + {"debug", 'v', 1, "set debug level, default: 1"}, } }); } diff --git a/src/pki/pki.c b/src/pki/pki.c index c1a070292e..0642bedc3c 100644 --- a/src/pki/pki.c +++ b/src/pki/pki.c @@ -16,6 +16,29 @@ #include "command.h" #include "pki.h" +#include + +/** + * Default debug level + */ +int dbg_level = 1; + +/** + * Logging to stderr with configurable debug level + */ +void dbg_pki(int level, char *fmt, ...) +{ + if (level <= dbg_level) + { + va_list args; + + va_start(args, fmt); + vfprintf(stderr, fmt, args); + fprintf(stderr, "\n"); + va_end(args); + } +} + /** * Convert a form string to a encoding type */ @@ -78,6 +101,8 @@ hash_algorithm_t get_digest(char *name) */ int main(int argc, char *argv[]) { + dbg = dbg_pki; + atexit(library_deinit); if (!library_init(NULL)) { diff --git a/src/pki/pki.h b/src/pki/pki.h index 893ab52e27..135749d476 100644 --- a/src/pki/pki.h +++ b/src/pki/pki.h @@ -26,6 +26,11 @@ #include #include +/** + * Defines the settable debug level + */ +extern int dbg_level; + /** * Convert a form string to a encoding type */