krb5 commit: Don't use kdc_active_realm in kdc/rtest.c

Tom Yu tlyu at MIT.EDU
Mon Oct 15 20:27:42 EDT 2012


https://github.com/krb5/krb5/commit/1a3f548db030b764f46820c342fb2abb226dc43b
commit 1a3f548db030b764f46820c342fb2abb226dc43b
Author: Tom Yu <tlyu at mit.edu>
Date:   Wed Jul 18 14:54:29 2012 -0400

    Don't use kdc_active_realm in kdc/rtest.c
    
    Too many parts of the KDC rely on the global variable
    kdc_active_realm.  rtest.c doesn't actually need any of the
    KDC-specific information that's avaiable through kdc_active_realm, so
    delete references to it.

 src/kdc/rtest.c |   20 +++++++++-----------
 1 files changed, 9 insertions(+), 11 deletions(-)

diff --git a/src/kdc/rtest.c b/src/kdc/rtest.c
index 45dcb63..446001c 100644
--- a/src/kdc/rtest.c
+++ b/src/kdc/rtest.c
@@ -62,7 +62,7 @@ main(int argc, char **argv)
     krb5_data ntrans;
     krb5_principal tgs, cl, sv;
     krb5_error_code kret;
-    kdc_realm_t     kdc_realm;
+    krb5_context ctx;
 
     if (argc < 4) {
         fprintf(stderr, "not enough args\n");
@@ -71,13 +71,11 @@ main(int argc, char **argv)
 
 
     /* Get a context */
-    kret = krb5int_init_context_kdc(&kdc_realm.realm_context);
+    kret = krb5int_init_context_kdc(&ctx);
     if (kret) {
         com_err(argv[0], kret, "while getting krb5 context");
         exit(2);
     }
-    /* Needed so kdc_context will work */
-    kdc_active_realm = &kdc_realm;
 
     ntrans.length = 0;
     ntrans.data = 0;
@@ -89,9 +87,9 @@ main(int argc, char **argv)
         otrans.data = 0;
     memcpy(otrans.data,argv[1], otrans.length);
 
-    tgs = make_princ(kdc_context, argv[2], argv[0]);
-    cl  = make_princ(kdc_context, argv[3], argv[0]);
-    sv  = make_princ(kdc_context, argv[4], argv[0]);
+    tgs = make_princ(ctx, argv[2], argv[0]);
+    cl  = make_princ(ctx, argv[3], argv[0]);
+    sv  = make_princ(ctx, argv[4], argv[0]);
 
     add_to_transited(&otrans,&ntrans,tgs,cl,sv);
 
@@ -102,10 +100,10 @@ main(int argc, char **argv)
         free(otrans.data);
     free(ntrans.data);
 
-    krb5_free_principal(kdc_realm.realm_context, tgs);
-    krb5_free_principal(kdc_realm.realm_context, cl);
-    krb5_free_principal(kdc_realm.realm_context, sv);
-    krb5_free_context(kdc_realm.realm_context);
+    krb5_free_principal(ctx, tgs);
+    krb5_free_principal(ctx, cl);
+    krb5_free_principal(ctx, sv);
+    krb5_free_context(ctx);
 
     exit(0);
 }


More information about the cvs-krb5 mailing list