summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJohn Kohl <jtkohl@mit.edu>1990-05-01 17:03:09 +0000
committerJohn Kohl <jtkohl@mit.edu>1990-05-01 17:03:09 +0000
commita3d8ec9635ec0810ccf94f0b268d45020cefcb47 (patch)
tree929cfd25826486827be91decfbe554d5d296b677 /src
parentc54a4e79db609613d3bfab8a6b2e55dd618ad006 (diff)
downloadkrb5-a3d8ec9635ec0810ccf94f0b268d45020cefcb47.tar.gz
krb5-a3d8ec9635ec0810ccf94f0b268d45020cefcb47.tar.xz
krb5-a3d8ec9635ec0810ccf94f0b268d45020cefcb47.zip
fix openclose stuff
use xfree git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@644 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src')
-rw-r--r--src/lib/krb5/ccache/file/fcc_close.c13
-rw-r--r--src/lib/krb5/ccache/file/fcc_destry.c6
-rw-r--r--src/lib/krb5/ccache/file/fcc_eseq.c6
3 files changed, 14 insertions, 11 deletions
diff --git a/src/lib/krb5/ccache/file/fcc_close.c b/src/lib/krb5/ccache/file/fcc_close.c
index 4a6a39053..4c53421c2 100644
--- a/src/lib/krb5/ccache/file/fcc_close.c
+++ b/src/lib/krb5/ccache/file/fcc_close.c
@@ -11,7 +11,7 @@
*/
#if !defined(lint) && !defined(SABER)
-static char fcc_resolve_c[] = "$Id$";
+static char fcc_close_c[] = "$Id$";
#endif /* !lint && !SABER */
#include <krb5/copyright.h>
@@ -30,12 +30,13 @@ krb5_error_code
krb5_fcc_close(id)
krb5_ccache id;
{
- if (OPENCLOSE(id))
+ if (OPENCLOSE(id)) {
close(((krb5_fcc_data *) id->data)->fd);
-
- free(((krb5_fcc_data *) id->data)->filename);
- free(((krb5_fcc_data *) id->data));
- free(id);
+ ((krb5_fcc_data *) id->data)->fd = -1;
+ }
+ xfree(((krb5_fcc_data *) id->data)->filename);
+ xfree(((krb5_fcc_data *) id->data));
+ xfree(id);
return KRB5_OK;
}
diff --git a/src/lib/krb5/ccache/file/fcc_destry.c b/src/lib/krb5/ccache/file/fcc_destry.c
index 23c9a88cc..e8f6938ea 100644
--- a/src/lib/krb5/ccache/file/fcc_destry.c
+++ b/src/lib/krb5/ccache/file/fcc_destry.c
@@ -34,10 +34,10 @@ krb5_error_code krb5_fcc_destroy(id)
int ret, i;
if (OPENCLOSE(id)) {
- ((krb5_fcc_data *) id->data)->fd = open(((krb5_fcc_data *) id->data)
- ->filename, O_RDWR, 0);
- if (((krb5_fcc_data *) id->data)->fd < 0)
+ ret = open(((krb5_fcc_data *) id->data)->filename, O_RDWR, 0);
+ if (ret < 0)
return errno;
+ ((krb5_fcc_data *) id->data)->fd = ret;
}
else
lseek(((krb5_fcc_data *) id->data)->fd, 0, L_SET);
diff --git a/src/lib/krb5/ccache/file/fcc_eseq.c b/src/lib/krb5/ccache/file/fcc_eseq.c
index 7f9db3c10..95c97c98e 100644
--- a/src/lib/krb5/ccache/file/fcc_eseq.c
+++ b/src/lib/krb5/ccache/file/fcc_eseq.c
@@ -35,10 +35,12 @@ krb5_fcc_end_seq_get(id, cursor)
krb5_ccache id;
krb5_cc_cursor *cursor;
{
- if (OPENCLOSE(id))
+ if (OPENCLOSE(id)) {
close(((krb5_fcc_data *) id->data)->fd);
+ ((krb5_fcc_data *) id->data)->fd = -1;
+ }
- free((krb5_fcc_cursor *) *cursor);
+ xfree((krb5_fcc_cursor *) *cursor);
return KRB5_OK;
}