summaryrefslogtreecommitdiff
path: root/auth-krb4.c
diff options
context:
space:
mode:
Diffstat (limited to 'auth-krb4.c')
-rw-r--r--auth-krb4.c7
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. */