summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTom Yu <tlyu@mit.edu>2005-09-21 23:01:26 +0000
committerTom Yu <tlyu@mit.edu>2005-09-21 23:01:26 +0000
commit8b43213ebe6ddd8d10f33a4bf4cc2f987c29ce7e (patch)
tree6b8bb1eb2580949d44d0e8d65e555c82bb270b44
parent99c0ac2a716ee8a0dc23fa01f82a88665d8cffb9 (diff)
downloadkrb5-8b43213ebe6ddd8d10f33a4bf4cc2f987c29ce7e.tar.gz
krb5-8b43213ebe6ddd8d10f33a4bf4cc2f987c29ce7e.tar.xz
krb5-8b43213ebe6ddd8d10f33a4bf4cc2f987c29ce7e.zip
minor_status not cleared sometimes (gsstest nits)
* duplicate_name.c (krb5_gss_duplicate_name): * export_name.c (krb5_gss_export_name): Fix gsstest nit by clearing minor_status if no errors. ticket: new target_version: 1.4.3 tags: pullup component: krb5-libs git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17385 dc483132-0cff-0310-8789-dd5450dbe970
-rw-r--r--src/lib/gssapi/krb5/ChangeLog4
-rw-r--r--src/lib/gssapi/krb5/duplicate_name.c6
-rw-r--r--src/lib/gssapi/krb5/export_name.c12
3 files changed, 18 insertions, 4 deletions
diff --git a/src/lib/gssapi/krb5/ChangeLog b/src/lib/gssapi/krb5/ChangeLog
index 3800195d1f..17280db6a0 100644
--- a/src/lib/gssapi/krb5/ChangeLog
+++ b/src/lib/gssapi/krb5/ChangeLog
@@ -1,5 +1,9 @@
2005-09-21 Tom Yu <tlyu@mit.edu>
+ * duplicate_name.c (krb5_gss_duplicate_name):
+ * export_name.c (krb5_gss_export_name): Fix gsstest nit by
+ clearing minor_status if no errors.
+
* inq_cred.c (krb5_gss_inquire_cred): Initialize ret_name to
NULL. Only call kg_save_name() if ret_name is actually non-NULL.
Return GSS_C_NO_NAME for now if no principal name in the cred.
diff --git a/src/lib/gssapi/krb5/duplicate_name.c b/src/lib/gssapi/krb5/duplicate_name.c
index c186ed4f0f..ffb762952b 100644
--- a/src/lib/gssapi/krb5/duplicate_name.c
+++ b/src/lib/gssapi/krb5/duplicate_name.c
@@ -35,9 +35,13 @@ OM_uint32 krb5_gss_duplicate_name(OM_uint32 *minor_status,
krb5_error_code code;
krb5_principal princ, outprinc;
+ if (minor_status)
+ *minor_status = 0;
+
code = krb5_init_context(&context);
if (code) {
- *minor_status = code;
+ if (minor_status)
+ *minor_status = code;
return GSS_S_FAILURE;
}
diff --git a/src/lib/gssapi/krb5/export_name.c b/src/lib/gssapi/krb5/export_name.c
index c949d471ec..7605d4342a 100644
--- a/src/lib/gssapi/krb5/export_name.c
+++ b/src/lib/gssapi/krb5/export_name.c
@@ -36,9 +36,13 @@ OM_uint32 krb5_gss_export_name(OM_uint32 *minor_status,
size_t length;
char *str, *cp;
+ if (minor_status)
+ *minor_status = 0;
+
code = krb5_init_context(&context);
if (code) {
- *minor_status = code;
+ if (minor_status)
+ *minor_status = code;
return GSS_S_FAILURE;
}
@@ -54,7 +58,8 @@ OM_uint32 krb5_gss_export_name(OM_uint32 *minor_status,
if ((code = krb5_unparse_name(context, (krb5_principal) input_name,
&str))) {
- *minor_status = code;
+ if (minor_status)
+ *minor_status = code;
krb5_free_context(context);
return(GSS_S_FAILURE);
}
@@ -65,7 +70,8 @@ OM_uint32 krb5_gss_export_name(OM_uint32 *minor_status,
exported_name->value = malloc(exported_name->length);
if (!exported_name->value) {
free(str);
- *minor_status = ENOMEM;
+ if (minor_status)
+ *minor_status = ENOMEM;
return(GSS_S_FAILURE);
}
cp = exported_name->value;