diff options
Diffstat (limited to 'auth-krb4.c')
-rw-r--r-- | auth-krb4.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/auth-krb4.c b/auth-krb4.c index 03205233..72acd47d 100644 --- a/auth-krb4.c +++ b/auth-krb4.c @@ -6,7 +6,7 @@ Kerberos v4 authentication and ticket-passing routines. - $Id: auth-krb4.c,v 1.3 1999/11/11 06:57:39 damien Exp $ + $Id: auth-krb4.c,v 1.4 1999/11/15 04:25:10 damien Exp $ */ #include "includes.h" @@ -89,8 +89,10 @@ int auth_krb4(const char *server_user, KTEXT auth, char **client) debug("getsockname failed: %.100s", strerror(errno)); r = sizeof(foreign); memset(&foreign, 0, sizeof(foreign)); - if (getpeername(s, (struct sockaddr *)&foreign, &r) < 0) + if (getpeername(s, (struct sockaddr *)&foreign, &r) < 0) { debug("getpeername failed: %.100s", strerror(errno)); + fatal_cleanup(); + } instance[0] = '*'; instance[1] = 0; @@ -110,6 +112,7 @@ int auth_krb4(const char *server_user, KTEXT auth, char **client) packet_send_debug("Kerberos V4 .klogin authorization failed!"); log("Kerberos V4 .klogin authorization failed for %s to account %s", *client, server_user); + xfree(*client); return 0; } /* Increment the checksum, and return it encrypted with the session key. */ |