Set display_value in krb5_gss_get_name_attribute
authorGreg Hudson <ghudson@mit.edu>
Mon, 6 Feb 2012 23:19:08 +0000 (23:19 +0000)
committerGreg Hudson <ghudson@mit.edu>
Mon, 6 Feb 2012 23:19:08 +0000 (23:19 +0000)
A backwards conditional in r25358 caused krb5_gss_get_name_attribute
not to set display_value on success.  Fix the sense of the
conditional.

We still don't quite correctly handle the cases where data_to_gss()
fails, but those should be rare and the problem in those cases isn't
severe, so it can be fixed separately.

Also, value and display_value should probably be initialized to null
buffers on failure, as is common with GSS interfaces.

ticket: 7087
status: open
target_version: 1.10.1
tags: pullup

git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@25674 dc483132-0cff-0310-8789-dd5450dbe970

src/lib/gssapi/krb5/naming_exts.c

index 725d801dd20279244aee1055aecd980c9b39285f..f48b1cbbf05b3608701329735f5a5bb8ae1ddab0 100644 (file)
@@ -387,7 +387,7 @@ krb5_gss_get_name_attribute(OM_uint32 *minor_status,
             *complete = kcomplete;
 
         if (display_value != NULL) {
-            if (code != 0)
+            if (code == 0)
                 code = data_to_gss(&kdisplay_value, display_value);
             else
                 free(kdisplay_value.data);