--- /dev/null
+--- gnutls-0.8.9/src/serv.c.orig 2003-05-03 18:29:14.000000000 +0200
++++ gnutls-0.8.9/src/serv.c 2003-08-03 15:26:56.000000000 +0200
+@@ -1106,7 +1106,7 @@
+ static const char *hostname = "hkp://wwwkeys.pgp.net";
+ static const short port = 11371;
+ int rc;
+- CDK_KBNODE knode = NULL;
++ cdk_kbnode_t knode = NULL;
+ unsigned int i;
+
+ fprintf(stderr, "must recv: ");
+--- gnutls-0.8.9/libextra/gnutls_openpgp.c.orig 2003-05-03 11:05:54.000000000 +0200
++++ gnutls-0.8.9/libextra/gnutls_openpgp.c 2003-08-03 15:30:51.000000000 +0200
+@@ -131,10 +131,10 @@
+ }
+
+
+-static CDK_KEYDB_HD
++static cdk_keydb_hd_t
+ kbx_to_keydb( keybox_blob *blob )
+ {
+- CDK_KEYDB_HD hd;
++ cdk_keydb_hd_t hd;
+ int rc;
+
+ if( !blob ) {
+@@ -144,8 +144,7 @@
+
+ switch( blob->type ) {
+ case KBX_BLOB_FILE:
+- rc = cdk_keydb_new( &hd, blob->armored? CDK_DBTYPE_ARMORED:
+- CDK_DBTYPE_KEYRING, blob->data, blob->size );
++ rc = cdk_keydb_new( &hd, CDK_DBTYPE_SK_KEYRING, blob->data, blob->size );
+ break;
+
+ case KBX_BLOB_DATA:
+@@ -236,7 +235,7 @@
+ CDK_PACKET*
+ search_packet( const gnutls_datum *buf, int pkttype )
+ {
+- static CDK_KBNODE knode = NULL;
++ static cdk_kbnode_t knode = NULL;
+ CDK_PACKET *pkt;
+
+ if( !buf && !pkttype ) {
+@@ -253,7 +252,7 @@
+
+
+ static int
+-stream_to_datum( CDK_STREAM inp, gnutls_datum *raw )
++stream_to_datum( cdk_stream_t inp, gnutls_datum *raw )
+ {
+ uint8 buf[4096];
+ int rc = 0, nread, nbytes = 0;
+@@ -280,7 +279,7 @@
+
+
+ static int
+-openpgp_pk_to_gnutls_cert( gnutls_cert *cert, cdkPKT_public_key *pk )
++openpgp_pk_to_gnutls_cert( gnutls_cert *cert, cdk_pkt_pubkey_t pk )
+ {
+ uint8 buf[512];
+ size_t nbytes = 0;
+@@ -331,9 +330,9 @@
+
+
+ static int
+-openpgp_sig_to_gnutls_cert( gnutls_cert *cert, cdkPKT_signature *sig )
++openpgp_sig_to_gnutls_cert( gnutls_cert *cert, cdk_pkt_signature_t sig )
+ {
+- CDK_STREAM tmp;
++ cdk_stream_t tmp;
+ CDK_PACKET pkt;
+ uint8 buf[4096];
+ int rc, nread;
+@@ -352,7 +351,7 @@
+ memset( &pkt, 0, sizeof pkt );
+ pkt.pkttype = CDK_PKT_SIGNATURE;
+ pkt.pkt.signature = sig;
+- rc = cdk_pkt_build( tmp, &pkt );
++ rc = cdk_pkt_write( tmp, &pkt );
+ if( !rc ) {
+ cdk_stream_seek( tmp, 0 );
+ nread = cdk_stream_read( tmp, buf, 4095 );
+@@ -384,10 +383,10 @@
+ _gnutls_openpgp_key2gnutls_key( gnutls_private_key *pkey,
+ gnutls_datum *raw_key )
+ {
+- CDK_KBNODE snode;
++ cdk_kbnode_t snode;
+ CDK_PACKET *pkt;
+- CDK_STREAM out;
+- cdkPKT_secret_key *sk = NULL;
++ cdk_stream_t out;
++ cdk_pkt_seckey_t sk = NULL;
+ int pke_algo, i, j;
+ size_t nbytes = 0;
+ uint8 buf[512];
+@@ -470,7 +469,7 @@
+ int
+ _gnutls_openpgp_cert2gnutls_cert( gnutls_cert *cert, gnutls_datum raw )
+ {
+- CDK_KBNODE knode = NULL;
++ cdk_kbnode_t knode = NULL;
+ CDK_PACKET *pkt = NULL;
+ int rc;
+
+@@ -511,9 +510,8 @@
+ key_attr_t by, opaque *pattern )
+ {
+ keybox_blob *blob = NULL;
+- CDK_KEYDB_HD hd = NULL;
+- CDK_KBNODE knode = NULL;
+- CDK_DBSEARCH ks = NULL;
++ cdk_keydb_hd_t hd = NULL;
++ cdk_kbnode_t knode = NULL;
+ unsigned long keyid[2];
+ unsigned char *buf;
+ void * desc;
+@@ -542,13 +540,13 @@
+ }
+ else
+ desc = pattern;
+- rc = cdk_keydb_search_new( &ks, by, desc );
++ rc = cdk_keydb_search_start( hd, by, desc );
+ if( rc ) {
+ rc = map_cdk_rc( rc );
+ goto leave;
+ }
+
+- rc = cdk_keydb_search( hd, ks, &knode );
++ rc = cdk_keydb_search( hd, &knode );
+ if( rc ) {
+ rc = map_cdk_rc( rc );
+ goto leave;
+@@ -569,7 +567,6 @@
+ leave:
+ cdk_free( hd );
+ cdk_kbnode_release( knode );
+- cdk_keydb_search_free( ks );
+ kbx_blob_release( blob );
+ return rc;
+ }
+@@ -581,7 +578,7 @@
+ gnutls_datum *key )
+ {
+ gnutls_datum raw;
+- CDK_KBNODE knode = NULL, ctx = NULL, p;
++ cdk_kbnode_t knode = NULL, ctx = NULL, p;
+ CDK_PACKET *pkt;
+ int i = 0;
+ int rc = 0;
+@@ -623,7 +620,7 @@
+ break;
+ if( pkt->pkttype == CDK_PKT_PUBLIC_KEY ) {
+ int n = res->ncerts;
+- cdkPKT_public_key *pk = pkt->pkt.public_key;
++ cdk_pkt_pubkey_t pk = pkt->pkt.public_key;
+ res->cert_list_length[n] = 1;
+ if (_gnutls_set_datum( &res->cert_list[n][0].raw,
+ cert->data, cert->size ) < 0) {
+@@ -635,7 +632,7 @@
+ }
+ else if( pkt->pkttype == CDK_PKT_SIGNATURE ) {
+ int n = res->ncerts;
+- cdkPKT_signature *sig = pkt->pkt.signature;
++ cdk_pkt_signature_t sig = pkt->pkt.signature;
+ openpgp_sig_to_gnutls_cert( &res->cert_list[n][0], sig );
+ }
+ }
+@@ -679,8 +676,8 @@
+ char* KEYFILE )
+ {
+ struct stat statbuf;
+- CDK_STREAM inp = NULL;
+- CDK_KBNODE knode = NULL, ctx = NULL, p;
++ cdk_stream_t inp = NULL;
++ cdk_kbnode_t knode = NULL, ctx = NULL, p;
+ CDK_PACKET *pkt = NULL;
+ gnutls_datum raw;
+ int i = 0, n;
+@@ -734,7 +731,7 @@
+ pkt = cdk_kbnode_get_packet( p );
+ if( pkt->pkttype == CDK_PKT_PUBLIC_KEY ) {
+ int n = res->ncerts;
+- cdkPKT_public_key *pk = pkt->pkt.public_key;
++ cdk_pkt_pubkey_t pk = pkt->pkt.public_key;
+ res->cert_list_length[n] = 1;
+ stream_to_datum( inp, &res->cert_list[n][0].raw );
+ openpgp_pk_to_gnutls_cert( &res->cert_list[n][0], pk );
+@@ -742,7 +739,7 @@
+ }
+ else if( pkt->pkttype == CDK_PKT_SIGNATURE ) {
+ int n = res->ncerts;
+- cdkPKT_signature *sig = pkt->pkt.signature;
++ cdk_pkt_signature_t sig = pkt->pkt.signature;
+ openpgp_sig_to_gnutls_cert( &res->cert_list[n][0], sig );
+ }
+ }
+@@ -790,7 +787,7 @@
+ int
+ gnutls_openpgp_count_key_names( const gnutls_datum *cert )
+ {
+- CDK_KBNODE knode, p, ctx = NULL;
++ cdk_kbnode_t knode, p, ctx = NULL;
+ CDK_PACKET *pkt;
+ int nuids = 0;
+
+@@ -825,9 +822,9 @@
+ int idx,
+ gnutls_openpgp_name *dn )
+ {
+- CDK_KBNODE knode = NULL, ctx = NULL, p;
++ cdk_kbnode_t knode = NULL, ctx = NULL, p;
+ CDK_PACKET *pkt = NULL;
+- cdkPKT_user_id *uid = NULL;
++ cdk_pkt_userid_t uid = NULL;
+ char *email;
+ int pos = 0, pos1 = 0, pos2 = 0;
+ size_t size = 0;
+@@ -908,9 +905,9 @@
+ int idx,
+ char *buf, unsigned int sizeof_buf)
+ {
+- CDK_KBNODE knode = NULL, ctx = NULL, p;
++ cdk_kbnode_t knode = NULL, ctx = NULL, p;
+ CDK_PACKET *pkt = NULL;
+- cdkPKT_user_id *uid = NULL;
++ cdk_pkt_userid_t uid = NULL;
+ char *email;
+ int pos = 0, pos1 = 0, pos2 = 0;
+ size_t size = 0;
+@@ -1092,10 +1089,10 @@
+ const gnutls_datum *key,
+ int *r_trustval )
+ {
+- CDK_KBNODE knode = NULL;
+- CDK_STREAM inp;
++ cdk_kbnode_t knode = NULL;
++ cdk_stream_t inp;
+ CDK_PACKET *pkt;
+- cdkPKT_public_key *pk = NULL;
++ cdk_pkt_pubkey_t pk = NULL;
+ int flags = 0, ot = 0;
+ int rc = 0;
+
+@@ -1188,8 +1185,8 @@
+ const gnutls_datum* cert_list,
+ int cert_list_length )
+ {
+- CDK_KBNODE knode = NULL;
+- CDK_KEYDB_HD hd = NULL;
++ cdk_kbnode_t knode = NULL;
++ cdk_keydb_hd_t hd = NULL;
+ keybox_blob *blob = NULL;
+ int rc = 0;
+ int status = 0;
+@@ -1228,7 +1225,7 @@
+ return GNUTLS_CERT_INVALID | GNUTLS_CERT_NOT_TRUSTED;
+ }
+
+- rc = cdk_key_check_sigs( knode, hd, &status );
++ rc = cdk_pk_check_sigs( knode, hd, &status );
+ if( rc == CDK_Error_No_Key )
+ rc = 0; /* fixme */
+
+@@ -1266,7 +1263,7 @@
+ unsigned char *fpr, size_t *fprlen )
+ {
+ CDK_PACKET *pkt;
+- cdkPKT_public_key *pk = NULL;
++ cdk_pkt_pubkey_t pk = NULL;
+
+ if( !cert || !fpr || !fprlen ) {
+ gnutls_assert( );
+@@ -1302,7 +1299,7 @@
+ unsigned char keyid[8] )
+ {
+ CDK_PACKET *pkt;
+- cdkPKT_public_key *pk = NULL;
++ cdk_pkt_pubkey_t pk = NULL;
+ unsigned long kid[2];
+
+ if( !cert || !keyid ) {
+@@ -1342,7 +1339,7 @@
+ int
+ gnutls_openpgp_add_keyring_file(gnutls_datum *keyring, const char *name)
+ {
+- CDK_STREAM inp = NULL;
++ cdk_stream_t inp = NULL;
+ uint8 *blob;
+ size_t nbytes;
+ int enc = 0;
+@@ -1438,7 +1435,7 @@
+ gnutls_certificate_set_openpgp_keyring_mem( gnutls_certificate_credentials c,
+ const opaque *data, size_t dlen )
+ {
+- CDK_STREAM inp;
++ cdk_stream_t inp;
+ size_t count;
+ uint8 *buf;
+ int rc = 0;
+@@ -1609,7 +1606,7 @@
+
+
+ static int
+-xml_add_mpi( gnutls_string *xmlkey, cdkPKT_public_key *pk, int idx,
++xml_add_mpi( gnutls_string *xmlkey, cdk_pkt_pubkey_t pk, int idx,
+ const char *tag )
+ {
+ uint8 buf[4096];
+@@ -1623,7 +1620,7 @@
+
+
+ static int
+-xml_add_key_mpi( gnutls_string *xmlkey, cdkPKT_public_key *pk )
++xml_add_key_mpi( gnutls_string *xmlkey, cdk_pkt_pubkey_t pk )
+ {
+ const char *s = " <KEY ENCODING=\"HEX\"/>\n";
+ int rc = 0;
+@@ -1664,7 +1661,7 @@
+
+
+ static int
+-xml_add_key( gnutls_string *xmlkey, int ext, cdkPKT_public_key *pk, int sub )
++xml_add_key( gnutls_string *xmlkey, int ext, cdk_pkt_pubkey_t pk, int sub )
+ {
+ const char *algo, *s;
+ char keyid[16], fpr[41], tmp[32];
+@@ -1742,7 +1739,7 @@
+
+ static int
+ xml_add_userid( gnutls_string *xmlkey, int ext,
+- gnutls_openpgp_name *dn, cdkPKT_user_id *id )
++ gnutls_openpgp_name *dn, cdk_pkt_userid_t id )
+ {
+ const char *s;
+ char *p, *name, tmp[32];
+@@ -1799,7 +1796,7 @@
+
+
+ static int
+-xml_add_sig( gnutls_string *xmlkey, int ext, cdkPKT_signature *sig )
++xml_add_sig( gnutls_string *xmlkey, int ext, cdk_pkt_signature_t sig )
+ {
+ const char *algo, *s;
+ char tmp[32], keyid[16];
+@@ -1887,7 +1884,7 @@
+ gnutls_openpgp_key_to_xml( const gnutls_datum *cert,
+ gnutls_datum *xmlkey, int ext )
+ {
+- CDK_KBNODE knode, node, ctx = NULL;
++ cdk_kbnode_t knode, node, ctx = NULL;
+ CDK_PACKET *pkt;
+ gnutls_openpgp_name dn;
+ const char *s;