From 1eb56edd8695afb9e1b4c6c5dffe087b69f15f51 Mon Sep 17 00:00:00 2001 From: Nicolas Williams Date: Wed, 20 Jul 2011 17:44:27 -0500 Subject: [PATCH] Introduce Keys ::= SEQUENCE OF Key in hdb.asn1 so we can get convenience utils. --- lib/hdb/Makefile.am | 5 +++-- lib/hdb/hdb.asn1 | 6 ++++-- lib/hdb/version-script.map | 21 +++++++++++++++------ 3 files changed, 22 insertions(+), 10 deletions(-) diff --git a/lib/hdb/Makefile.am b/lib/hdb/Makefile.am index 90c692f4c..568650b66 100644 --- a/lib/hdb/Makefile.am +++ b/lib/hdb/Makefile.am @@ -34,7 +34,8 @@ gen_files_hdb = \ asn1_HDB_extensions.x \ asn1_hdb_entry.x \ asn1_hdb_entry_alias.x \ - asn1_hdb_keyset.x + asn1_hdb_keyset.x \ + asn1_Keys.x CLEANFILES = $(BUILT_SOURCES) $(gen_files_hdb) \ hdb_asn1{,-priv}.h* hdb_asn1_files hdb_asn1-template.c* @@ -120,7 +121,7 @@ $(srcdir)/hdb-private.h: $(gen_files_hdb) hdb_asn1.hx hdb_asn1-priv.hx: hdb_asn1_files hdb_asn1_files: $(ASN1_COMPILE_DEP) $(srcdir)/hdb.asn1 - $(ASN1_COMPILE) --sequence=HDB-Ext-KeySet $(srcdir)/hdb.asn1 hdb_asn1 + $(ASN1_COMPILE) --sequence=HDB-Ext-KeySet --sequence=Keys $(srcdir)/hdb.asn1 hdb_asn1 test_dbinfo_LIBS = libhdb.la diff --git a/lib/hdb/hdb.asn1 b/lib/hdb/hdb.asn1 index c3580ef05..0594b313b 100644 --- a/lib/hdb/hdb.asn1 +++ b/lib/hdb/hdb.asn1 @@ -88,9 +88,11 @@ HDB-Ext-Aliases ::= SEQUENCE { aliases[1] SEQUENCE OF Principal -- all names, inc primary } +Keys ::= SEQUENCE OF Key + hdb_keyset ::= SEQUENCE { kvno[0] INTEGER (0..4294967295), - keys[1] SEQUENCE OF Key, + keys[1] Keys, set-time[2] KerberosTime OPTIONAL, -- time this keyset was created/set ... } @@ -127,7 +129,7 @@ hdb_entry ::= SEQUENCE { principal[0] Principal OPTIONAL, -- this is optional only -- for compatibility with libkrb5 kvno[1] INTEGER (0..4294967295), - keys[2] SEQUENCE OF Key, + keys[2] Keys, created-by[3] Event, modified-by[4] Event OPTIONAL, valid-start[5] KerberosTime OPTIONAL, diff --git a/lib/hdb/version-script.map b/lib/hdb/version-script.map index bf0f35c81..f212725fd 100644 --- a/lib/hdb/version-script.map +++ b/lib/hdb/version-script.map @@ -75,33 +75,42 @@ HEIMDAL_HDB_1.0 { hdb_kt_ops; # some random bits needed for libkadm - HDBFlags2int; + add_HDB_Ext_KeySet; + add_Keys; asn1_HDBFlags_units; copy_Event; copy_HDB_extensions; copy_Key; + copy_Keys; copy_Salt; decode_HDB_Ext_Aliases; - decode_HDB_Ext_PKINIT_acl; decode_HDB_extension; + decode_HDB_Ext_PKINIT_acl; decode_Key; + decode_Keys; encode_HDB_Ext_Aliases; - encode_HDB_Ext_PKINIT_acl; encode_HDB_extension; + encode_HDB_Ext_PKINIT_acl; encode_Key; + encode_Keys; free_Event; + free_hdb_entry; free_HDB_Ext_Aliases; - free_HDB_Ext_PKINIT_acl; free_HDB_extension; free_HDB_extensions; + free_HDB_Ext_PKINIT_acl; + free_hdb_keyset; free_Key; + free_Keys; free_Salt; - free_hdb_entry; + HDBFlags2int; int2HDBFlags; length_HDB_Ext_Aliases; - length_HDB_Ext_PKINIT_acl; length_HDB_extension; + length_HDB_Ext_PKINIT_acl; length_Key; + length_Keys; + remove_Keys; local: *;