pkgsrc-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

pkg/45765: security/cy2-gssapi sefault



>Number:         45765
>Category:       pkg
>Synopsis:       security/cy2-gssapi sefault
>Confidential:   no
>Severity:       critical
>Priority:       medium
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sun Jan 01 12:20:00 +0000 2012
>Originator:     dieter roelants
>Release:        NetBSD 5.99.55
>Organization:
        bsdusr.net
>Environment:
System: NetBSD simult.amelgem.be 5.99.55 NetBSD 5.99.55 (SIMULT) #64: Sun Sep 
11 14:17:45 CEST 2011 
dieter%simult.amelgem.be@localhost:/build/obj.amd64.current/sys/arch/amd64/compile/SIMULT
 amd64
Architecture: x86_64
Machine: amd64
>Description:
        Using the gssapi cyrus sasl plugin causes a segmentation fault.
>How-To-Repeat:
        Build databases/openldap-client with kerberos option enabled.
        Use ldapsearch with -Y gssapi.
>Fix:
        The following patch fixes it. (I also found it has been
        applied upstream.)

$NetBSD$

--- plugins/gssapi.c.orig       2011-05-11 19:25:55.000000000 +0000
+++ plugins/gssapi.c
@@ -370,7 +370,7 @@ sasl_gss_encode(void *context, const str
     }
     
     if (output_token->value && output) {
-       unsigned char * p = (unsigned char *) text->encode_buf;
+       unsigned char * p;
        
        ret = _plug_buf_alloc(text->utils,
                              &(text->encode_buf),
@@ -384,6 +384,7 @@ sasl_gss_encode(void *context, const str
            return ret;
        }
        
+       p = (unsigned char *) text->encode_buf;
        p[0] = (output_token->length>>24) & 0xFF;
        p[1] = (output_token->length>>16) & 0xFF;
        p[2] = (output_token->length>>8) & 0xFF;



Home | Main Index | Thread Index | Old Index