From cd5e0fba78bfc0f2275be7a6f42817872b52b609 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Love=20H=C3=B6rnquist=20=C3=85strand?= Date: Fri, 12 Jan 2007 08:43:20 +0000 Subject: [PATCH] Print id-pkix-on-xmppAddr OtherName. git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@19860 ec53bebd-3082-4978-b11e-865c3cabbd6b --- lib/hx509/print.c | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/lib/hx509/print.c b/lib/hx509/print.c index 4a5df4847..da817a7b3 100644 --- a/lib/hx509/print.c +++ b/lib/hx509/print.c @@ -263,8 +263,7 @@ check_pkinit_san(hx509_validate_ctx ctx, heim_any *a) size_t size; int ret; - ret = decode_KRB5PrincipalName(a->data, a->length, - &kn, &size); + ret = decode_KRB5PrincipalName(a->data, a->length, &kn, &size); if (ret) { validate_print(ctx, HX509_VALIDATE_F_VALIDATE, "Decoding kerberos name in SAN failed: %d", ret); @@ -291,6 +290,26 @@ check_pkinit_san(hx509_validate_ctx ctx, heim_any *a) return 0; } +static int +check_xmpp_san(hx509_validate_ctx ctx, heim_any *a) +{ + PKIXXmppAddr jid; + size_t size; + int ret; + + ret = decode_PKIXXmppAddr(a->data, a->length, &jid, &size); + if (ret) { + validate_print(ctx, HX509_VALIDATE_F_VALIDATE, + "Decoding JID in SAN failed: %d", ret); + return 1; + } + + validate_print(ctx, HX509_VALIDATE_F_VERBOSE, "jid: %s", jid); + free_PKIXXmppAddr(&jid); + + return 0; +} + static int check_dnssrv_san(hx509_validate_ctx ctx, heim_any *a) { @@ -303,6 +322,7 @@ struct { int (*func)(hx509_validate_ctx, heim_any *); } check_altname[] = { { "pk-init", oid_id_pkinit_san, check_pkinit_san }, + { "jabber", oid_id_pkix_on_xmppAddr, check_xmpp_san }, { "dns-srv", oid_id_pkix_on_dnsSRV, check_dnssrv_san } };