summaryrefslogtreecommitdiffstats
path: root/src/lib/krb4
diff options
context:
space:
mode:
authorAlexandra Ellwood <lxs@mit.edu>2003-07-11 22:12:32 +0000
committerAlexandra Ellwood <lxs@mit.edu>2003-07-11 22:12:32 +0000
commitde91c1b60952a1e866b42b5dbc82eb7fe1d35d17 (patch)
tree88370566303d2160cffd44c624b6464b62077bd0 /src/lib/krb4
parent908d4c7e0523e983c8f30ef2ff0bd1a66e5e7512 (diff)
downloadkrb5-de91c1b60952a1e866b42b5dbc82eb7fe1d35d17.tar.gz
krb5-de91c1b60952a1e866b42b5dbc82eb7fe1d35d17.tar.xz
krb5-de91c1b60952a1e866b42b5dbc82eb7fe1d35d17.zip
Check for NULL realm argument and n not equal to 1. Fill in realm with an empty string on error in case the caller doesn't check the return value
ticket: 1657 git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@15684 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/lib/krb4')
-rw-r--r--src/lib/krb4/ChangeLog6
-rw-r--r--src/lib/krb4/RealmsConfig-glue.c8
2 files changed, 14 insertions, 0 deletions
diff --git a/src/lib/krb4/ChangeLog b/src/lib/krb4/ChangeLog
index 5996d991a..f8da81e90 100644
--- a/src/lib/krb4/ChangeLog
+++ b/src/lib/krb4/ChangeLog
@@ -1,5 +1,11 @@
2003-07-11 Alexandra Ellwood <lxs@mit.edu>
+ * RealmsConfig-glue.c: Check for NULL realm argument and n
+ not equal to 1. Fill in realm with an empty string on error
+ in case the caller doesn't check the return value.
+
+2003-07-11 Alexandra Ellwood <lxs@mit.edu>
+
* RealmsConfig-glue.c: Don't fail when krb5.conf is valid
and krb.conf isn't. Also, don't assert v4 realm is in profile
unless that realm is a valid v4 realm.
diff --git a/src/lib/krb4/RealmsConfig-glue.c b/src/lib/krb4/RealmsConfig-glue.c
index fc9bdc8f3..0635284c0 100644
--- a/src/lib/krb4/RealmsConfig-glue.c
+++ b/src/lib/krb4/RealmsConfig-glue.c
@@ -199,6 +199,14 @@ krb_get_lrealm(
char krbConfLocalRealm[REALM_SZ];
int krbConfHasLocalRealm = 0;
+ if ((realm == NULL) || (n != 1)) { result = KFAILURE; }
+
+ if (result == KSUCCESS) {
+ /* Some callers don't check the return value so we initialize
+ * to an empty string in case it never gets filled in. */
+ realm [0] = '\0';
+ }
+
if (result == KSUCCESS) {
int profileErr = krb_get_profile (&profile);