summaryrefslogtreecommitdiff
path: root/scripts/oid2der.c
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/oid2der.c')
-rw-r--r--scripts/oid2der.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/scripts/oid2der.c b/scripts/oid2der.c
index 793c9804a..c8ab8df0f 100644
--- a/scripts/oid2der.c
+++ b/scripts/oid2der.c
@@ -23,9 +23,26 @@ int main(int argc, char *argv[])
{
int i, nr = 0;
chunk_t oid;
+ char *decoded;
+ bool decode = FALSE;
+
+ if (streq(argv[1], "-d"))
+ {
+ decode = TRUE;
+ nr++;
+ }
while (argc > ++nr)
{
+ if (decode)
+ {
+ oid = chunk_from_hex(chunk_from_str(argv[nr]), NULL);
+ decoded = asn1_oid_to_string(oid);
+ printf("%s\n", decoded);
+ free(decoded);
+ free(oid.ptr);
+ continue;
+ }
oid = asn1_oid_from_string(argv[nr]);
if (oid.len)
{