aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Steffen <andreas.steffen@strongswan.org>2012-04-03 14:12:50 +0200
committerAndreas Steffen <andreas.steffen@strongswan.org>2012-04-03 14:12:50 +0200
commit320fd5fe62006ebcf9bb30017e3b91be7f21bec4 (patch)
treeb5c9fb1edd1359f1dbb7c777ae3de88f890768c8
parent4e5b7e09ee0ca3034087d832f609389db427f6c6 (diff)
downloadstrongswan-320fd5fe62006ebcf9bb30017e3b91be7f21bec4.tar.bz2
strongswan-320fd5fe62006ebcf9bb30017e3b91be7f21bec4.tar.xz
moved chunk_skip_zero to chunk.h
-rw-r--r--src/libcharon/plugins/stroke/stroke_list.c5
-rw-r--r--src/libstrongswan/chunk.h18
-rw-r--r--src/pki/commands/print.c17
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)