diff --git a/admin/dump.c b/admin/dump.c new file mode 100644 index 000000000..875d74561 --- /dev/null +++ b/admin/dump.c @@ -0,0 +1,33 @@ +#include "kdc_locl.h" + +RCSID("$Id$"); + +int main(int argc, char **argv) +{ + HDB *db; + hdb_entry ent; + krb5_context context; + int err; + int i; + + char *p; + + + krb5_init_context(&context); + err = hdb_open(context, &db, argv[1], O_RDONLY, 0600); + if(err){ + fprintf(stderr, "%s\n", krb5_get_err_text(context, err)); + exit(1); + } + err = db->firstkey(context, db, &ent); + while(err == 0){ + krb5_unparse_name(context, ent.principal, &p); + printf("%s ", p); + for(i = 0; i < ent.keyblock.contents.length; i++) + printf("%02x", (int)((unsigned char*)ent.keyblock.contents.data)[i]); + printf(" "); + printf("%d %d %d\n", ent.kvno, ent.max_life, ent.max_renew); + free(p); + err = db->nextkey(context, db, &ent); + } +} diff --git a/kadmin/dump.c b/kadmin/dump.c new file mode 100644 index 000000000..875d74561 --- /dev/null +++ b/kadmin/dump.c @@ -0,0 +1,33 @@ +#include "kdc_locl.h" + +RCSID("$Id$"); + +int main(int argc, char **argv) +{ + HDB *db; + hdb_entry ent; + krb5_context context; + int err; + int i; + + char *p; + + + krb5_init_context(&context); + err = hdb_open(context, &db, argv[1], O_RDONLY, 0600); + if(err){ + fprintf(stderr, "%s\n", krb5_get_err_text(context, err)); + exit(1); + } + err = db->firstkey(context, db, &ent); + while(err == 0){ + krb5_unparse_name(context, ent.principal, &p); + printf("%s ", p); + for(i = 0; i < ent.keyblock.contents.length; i++) + printf("%02x", (int)((unsigned char*)ent.keyblock.contents.data)[i]); + printf(" "); + printf("%d %d %d\n", ent.kvno, ent.max_life, ent.max_renew); + free(p); + err = db->nextkey(context, db, &ent); + } +} diff --git a/kdc/dump.c b/kdc/dump.c new file mode 100644 index 000000000..875d74561 --- /dev/null +++ b/kdc/dump.c @@ -0,0 +1,33 @@ +#include "kdc_locl.h" + +RCSID("$Id$"); + +int main(int argc, char **argv) +{ + HDB *db; + hdb_entry ent; + krb5_context context; + int err; + int i; + + char *p; + + + krb5_init_context(&context); + err = hdb_open(context, &db, argv[1], O_RDONLY, 0600); + if(err){ + fprintf(stderr, "%s\n", krb5_get_err_text(context, err)); + exit(1); + } + err = db->firstkey(context, db, &ent); + while(err == 0){ + krb5_unparse_name(context, ent.principal, &p); + printf("%s ", p); + for(i = 0; i < ent.keyblock.contents.length; i++) + printf("%02x", (int)((unsigned char*)ent.keyblock.contents.data)[i]); + printf(" "); + printf("%d %d %d\n", ent.kvno, ent.max_life, ent.max_renew); + free(p); + err = db->nextkey(context, db, &ent); + } +}