diff options
author | Andreas Steffen <andreas.steffen@strongswan.org> | 2012-04-03 14:12:50 +0200 |
---|---|---|
committer | Andreas Steffen <andreas.steffen@strongswan.org> | 2012-04-03 14:12:50 +0200 |
commit | 320fd5fe62006ebcf9bb30017e3b91be7f21bec4 (patch) | |
tree | b5c9fb1edd1359f1dbb7c777ae3de88f890768c8 | |
parent | 4e5b7e09ee0ca3034087d832f609389db427f6c6 (diff) | |
download | strongswan-320fd5fe62006ebcf9bb30017e3b91be7f21bec4.tar.bz2 strongswan-320fd5fe62006ebcf9bb30017e3b91be7f21bec4.tar.xz |
moved chunk_skip_zero to chunk.h
-rw-r--r-- | src/libcharon/plugins/stroke/stroke_list.c | 5 | ||||
-rw-r--r-- | src/libstrongswan/chunk.h | 18 | ||||
-rw-r--r-- | src/pki/commands/print.c | 17 |
3 files changed, 21 insertions, 19 deletions
diff --git a/src/libcharon/plugins/stroke/stroke_list.c b/src/libcharon/plugins/stroke/stroke_list.c index c056dce23..1eaa0b8f7 100644 --- a/src/libcharon/plugins/stroke/stroke_list.c +++ b/src/libcharon/plugins/stroke/stroke_list.c @@ -833,7 +833,7 @@ static void stroke_list_certs(linked_list_t *list, char *label, fprintf(out, " subject: \"%Y\"\n", cert->get_subject(cert)); fprintf(out, " issuer: \"%Y\"\n", cert->get_issuer(cert)); - serial = x509->get_serial(x509); + serial = chunk_skip_zero(x509->get_serial(x509)); fprintf(out, " serial: %#B\n", &serial); /* list validity */ @@ -1015,13 +1015,14 @@ static void stroke_list_crls(linked_list_t *list, bool utc, FILE *out) fprintf(out, " issuer: \"%Y\"\n", cert->get_issuer(cert)); /* list optional crlNumber */ - chunk = crl->get_serial(crl); + chunk = chunk_skip_zero(crl->get_serial(crl)); if (chunk.ptr) { fprintf(out, " serial: %#B\n", &chunk); } if (crl->is_delta_crl(crl, &chunk)) { + chunk = chunk_skip_zero(chunk); fprintf(out, " delta for: %#B\n", &chunk); } diff --git a/src/libstrongswan/chunk.h b/src/libstrongswan/chunk.h index 672664874..4ff686f80 100644 --- a/src/libstrongswan/chunk.h +++ b/src/libstrongswan/chunk.h @@ -235,6 +235,24 @@ static inline chunk_t chunk_skip(chunk_t chunk, size_t bytes) } /** + * Skip a leading zero-valued byte + */ +static inline chunk_t chunk_skip_zero(chunk_t chunk) +{ + if (chunk.len && *chunk.ptr == 0x00) + { + if (chunk.len == 1) + { + return chunk_empty; + } + chunk.ptr++; + chunk.len--; + } + return chunk; +} + + +/** * Compare two chunks, returns zero if a equals b * or negative/positive if a is small/greater than b */ diff --git a/src/pki/commands/print.c b/src/pki/commands/print.c index 02d0cec17..a7f02bfac 100644 --- a/src/pki/commands/print.c +++ b/src/pki/commands/print.c @@ -24,23 +24,6 @@ #include <time.h> /** - * Print a chunk without leading zero byte - */ -static chunk_t chunk_skip_zero(chunk_t chunk) -{ - if (chunk.len && *chunk.ptr == 0x00) - { - if (chunk.len == 1) - { - return chunk_empty; - } - chunk.ptr++; - chunk.len--; - } - return chunk; -} - -/** * Print public key information */ static void print_pubkey(public_key_t *key) |