summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorEzra Peisach <epeisach@mit.edu>2003-01-12 17:36:53 +0000
committerEzra Peisach <epeisach@mit.edu>2003-01-12 17:36:53 +0000
commite043c6b20ad6fbebfb17de34ee10409ba89a4277 (patch)
treea2778f73c939dc0030e5886579b2c8b3f92a6f3a /src
parenta79f9ab0248b3a5dcb6b962eb1d6fb1cacf30eb7 (diff)
downloadkrb5-e043c6b20ad6fbebfb17de34ee10409ba89a4277.tar.gz
krb5-e043c6b20ad6fbebfb17de34ee10409ba89a4277.tar.xz
krb5-e043c6b20ad6fbebfb17de34ee10409ba89a4277.zip
* svc_auth_gssapi.c (_svcauth_gssapi_unset_names): If invoked more
than once, do not double free memory. * clnt_perror.c (clnt_sperror): Do not write past end of allocated buffer. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@15114 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src')
-rw-r--r--src/lib/rpc/ChangeLog8
-rw-r--r--src/lib/rpc/clnt_perror.c2
-rw-r--r--src/lib/rpc/svc_auth_gssapi.c4
3 files changed, 13 insertions, 1 deletions
diff --git a/src/lib/rpc/ChangeLog b/src/lib/rpc/ChangeLog
index 4b8e7ca645..6534240549 100644
--- a/src/lib/rpc/ChangeLog
+++ b/src/lib/rpc/ChangeLog
@@ -1,3 +1,11 @@
+2003-01-12 Ezra Peisach <epeisach@bu.edu>
+
+ * svc_auth_gssapi.c (_svcauth_gssapi_unset_names): If invoked more
+ than once, do not double free memory.
+
+ * clnt_perror.c (clnt_sperror): Do not write past end of allocated
+ buffer.
+
2003-01-10 Ken Raeburn <raeburn@mit.edu>
* configure.in: Don't explicitly invoke AC_PROG_ARCHIVE,
diff --git a/src/lib/rpc/clnt_perror.c b/src/lib/rpc/clnt_perror.c
index 08e8471b1e..26aa97883f 100644
--- a/src/lib/rpc/clnt_perror.c
+++ b/src/lib/rpc/clnt_perror.c
@@ -91,7 +91,7 @@ clnt_sperror(rpch, s)
strncat (str, ": ", BUFSIZ - 1 - strlen (bufstart));
str += strlen(str);
strncat (str, clnt_sperrno(e.re_status), BUFSIZ - 1 - strlen (bufstart));
- str[BUFSIZ - 1] = '\0';
+ strstart[BUFSIZ - 1] = '\0';
str += strlen(str);
switch (e.re_status) {
diff --git a/src/lib/rpc/svc_auth_gssapi.c b/src/lib/rpc/svc_auth_gssapi.c
index cb2844fc3a..8458bf4733 100644
--- a/src/lib/rpc/svc_auth_gssapi.c
+++ b/src/lib/rpc/svc_auth_gssapi.c
@@ -968,6 +968,8 @@ void _svcauth_gssapi_unset_names()
if (server_creds_list[i])
gss_release_cred(&minor_stat, &server_creds_list[i]);
free(server_creds_list);
+ server_creds_list = NULL;
+ server_creds_count = 0;
}
if (server_name_list) {
@@ -975,6 +977,8 @@ void _svcauth_gssapi_unset_names()
if (server_name_list[i])
gss_release_name(&minor_stat, &server_name_list[i]);
free(server_name_list);
+ server_name_list = NULL;
+ server_creds_count = 0;
}
}