[1154] in Kerberos-V5-bugs

home help back first fref pref prev next nref lref last post

krb5b4pl3: appl/bsd/kcmd.c: should free old realm before replacing it

daemon@ATHENA.MIT.EDU (Jonathan I. Kamens)
Tue Mar 14 10:51:37 1995

From: "Jonathan I. Kamens" <jik@cam.ov.com>
Date: Tue, 14 Mar 1995 10:54:17 -0500
To: krb5-bugs@MIT.EDU

--- appl/bsd/kcmd.c	1995/03/09 19:54:35	1.3
+++ appl/bsd/kcmd.c	1995/03/09 20:01:11	1.4
@@ -184,16 +184,10 @@
     }
 
     if (realm && *realm) {
-       char *copyrealm;
-       krb5_data rdata;
-
-       rdata.length = strlen(realm);
-       rdata.data = (char *) malloc(rdata.length+1);
-       strcpy(rdata.data, realm);
-       
-       /* XXX we should free the old realm first */
-       krb5_princ_set_realm(ret_cred->server, &rdata);
-   }
+	(void) krb5_xfree(krb5_princ_realm(ret_cred->server)->data);
+	krb5_princ_set_realm_length(ret_cred->server, strlen(realm));
+	krb5_princ_set_realm_data(ret_cred->server, strdup(realm));
+    }
 #ifdef POSIX_SIGNALS
     sigemptyset(&urgmask);
     sigaddset(&urgmask, SIGURG);

home help back first fref pref prev next nref lref last post