summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/lib/krb5/ccache/file/fcc_gennew.c6
-rw-r--r--src/lib/krb5/ccache/stdio/scc_gennew.c6
2 files changed, 8 insertions, 4 deletions
diff --git a/src/lib/krb5/ccache/file/fcc_gennew.c b/src/lib/krb5/ccache/file/fcc_gennew.c
index 063091f13..6995605e1 100644
--- a/src/lib/krb5/ccache/file/fcc_gennew.c
+++ b/src/lib/krb5/ccache/file/fcc_gennew.c
@@ -42,7 +42,8 @@ krb5_fcc_generate_new (id)
{
krb5_ccache lid;
int ret;
- char scratch[100]; /* XXX Is this large enough */
+ char scratch[sizeof(TKT_ROOT)+6+1]; /* +6 for the scratch part, +1 for
+ NUL */
/* Allocate memory */
lid = (krb5_ccache) malloc(sizeof(struct _krb5_ccache));
@@ -51,7 +52,8 @@ krb5_fcc_generate_new (id)
lid->ops = &krb5_fcc_ops;
- sprintf(scratch, "%sXXXXXX", TKT_ROOT);
+ (void) strcpy(scratch, TKT_ROOT);
+ (void) strcat(scratch, "XXXXXX");
mktemp(scratch);
lid->data = (krb5_pointer) malloc(sizeof(krb5_fcc_data));
diff --git a/src/lib/krb5/ccache/stdio/scc_gennew.c b/src/lib/krb5/ccache/stdio/scc_gennew.c
index 42dc6d602..cbe41f5a9 100644
--- a/src/lib/krb5/ccache/stdio/scc_gennew.c
+++ b/src/lib/krb5/ccache/stdio/scc_gennew.c
@@ -42,7 +42,8 @@ krb5_scc_generate_new (id)
{
krb5_ccache lid;
FILE *f;
- char scratch[100]; /* XXX Is this large enough */
+ char scratch[sizeof(TKT_ROOT)+6+1]; /* +6 for the scratch part, +1 for
+ NUL */
/* Allocate memory */
lid = (krb5_ccache) malloc(sizeof(struct _krb5_ccache));
@@ -51,7 +52,8 @@ krb5_scc_generate_new (id)
lid->ops = &krb5_scc_ops;
- sprintf(scratch, "%sXXXXXX", TKT_ROOT);
+ (void) strcpy(scratch, TKT_ROOT);
+ (void) strcat(scratch, "XXXXXX");
mktemp(scratch);
lid->data = (krb5_pointer) malloc(sizeof(krb5_scc_data));