summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/appl/bsd/ChangeLog5
-rw-r--r--src/appl/bsd/kcmd.c12
2 files changed, 12 insertions, 5 deletions
diff --git a/src/appl/bsd/ChangeLog b/src/appl/bsd/ChangeLog
index 50bf2c24d..eb4748a72 100644
--- a/src/appl/bsd/ChangeLog
+++ b/src/appl/bsd/ChangeLog
@@ -1,3 +1,8 @@
+Tue Oct 10 04:59:04 2000 Ezra Peisach <epeisach@mit.edu>
+
+ * kcmd.c (kcmd): Use krb5_set_principal_realm() instead of freeing the
+ principals realm data and mucking with it ourselves.
+
2000-10-03 Ezra Peisach <epeisach@mit.edu>
* krlogin.c (main): Declare main as int.
diff --git a/src/appl/bsd/kcmd.c b/src/appl/bsd/kcmd.c
index 3e401cced..568675fca 100644
--- a/src/appl/bsd/kcmd.c
+++ b/src/appl/bsd/kcmd.c
@@ -298,11 +298,13 @@ kcmd(sock, ahost, rport, locuser, remuser, cmd, fd2p, service, realm,
}
if (realm && *realm) {
- free(krb5_princ_realm(bsd_context,get_cred->server)->data);
- /*krb5_xfree(krb5_princ_realm(bsd_context,get_cred->server)->data);*/
-
- krb5_princ_set_realm_length(bsd_context,get_cred->server,strlen(realm));
- krb5_princ_set_realm_data(bsd_context,get_cred->server,strdup(realm));
+ status = krb5_set_principal_realm(bsd_context, get_cred->server,
+ realm);
+ if (status) {
+ fprintf(stderr, "kcmd: krb5_set_principal_realm failed %s\n",
+ error_message(status));
+ return(-1);
+ }
}
if (fd2p == 0) {
write(s, "", 1);