[11952] in Kerberos-V5-bugs

home help back first fref pref prev next nref lref last post

[krbdev.mit.edu #6898] Set correct minor_status value in call to

daemon@ATHENA.MIT.EDU (Sriram Nambakam" via RT)
Wed Apr 6 17:42:21 2011

Mail-followup-to: rt@krbdev.mit.edu
mail-copies-to: never
From: ""Sriram Nambakam" via RT" <rt-comment@krbdev.MIT.EDU>
In-Reply-To: <rt-6898@krbdev.mit.edu>
Message-ID: <rt-6898-33955.4.36412952383087@krbdev.mit.edu>
To: "'AdminCc of krbdev.mit.edu Ticket #6898'":;"'AdminCc of krbdev.mit.edu Ticket #6898'":;@MIT.EDU
Date: Wed,  6 Apr 2011 17:42:19 -0400 (EDT)
Reply-To: rt-comment@krbdev.MIT.EDU
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Errors-To: krb5-bugs-bounces@mit.edu

The call to g_make_string_buffer(...) returns 1 upon success and 0 upon
failure.

So, set minor_status to ENOMEM only if a zero value was returned from
the call to g_make_string_buffer.

If the minor_status was set to ENOMEM, return GSS_S_FAILURE.

 

Index: src/lib/gssapi/krb5/disp_status.c

===================================================================

--- src/lib/gssapi/krb5/disp_status.c   (revision 58144)

+++ src/lib/gssapi/krb5/disp_status.c   (working copy)

@@ -185,11 +185,16 @@

         /* If this fails, there's not much we can do...  */

         if
(g_make_string_buffer(krb5_gss_get_error_message(status_value),

-                                 status_string) != 0)

+                                 status_string) == 0)

+        {

             *minor_status = ENOMEM;

+            return(GSS_S_FAILURE);

+        }

         else

+        {

             *minor_status = 0;

-        return 0;

+        }

+        return(GSS_S_COMPLETE);

     } else {

         *minor_status = 0;

         return(GSS_S_BAD_STATUS);


_______________________________________________
krb5-bugs mailing list
krb5-bugs@mit.edu
https://mailman.mit.edu/mailman/listinfo/krb5-bugs

home help back first fref pref prev next nref lref last post