Ignore:
Timestamp:
Jul 2, 2011, 3:35:33 PM (14 years ago)
Author:
Herwig Bauernfeind
Message:

Samba 3.5: Update trunk to 3.5.8

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/server/source3/libsmb/clikrb5.c

    r590 r596  
    697697        SIVAL(gss_cksum, 0, GSSAPI_BNDLENGTH);
    698698
    699         /* Precalculated MD5sum of NULL channel bindings (20 bytes) */
    700         /* Channel bindings are: (all ints encoded as little endian)
    701 
    702                 [4 bytes] initiator_addrtype (255 for null bindings)
    703                 [4 bytes] initiator_address length
    704                         [n bytes] .. initiator_address data - not present
    705                                      in null bindings.
    706                 [4 bytes] acceptor_addrtype (255 for null bindings)
    707                 [4 bytes] acceptor_address length
    708                         [n bytes] .. acceptor_address data - not present
    709                                      in null bindings.
    710                 [4 bytes] application_data length
    711                         [n bytes] .. application_ data - not present
    712                                      in null bindings.
    713                 MD5 of this is ""\x14\x8f\x0c\xf7\xb1u\xdey*J\x9a%\xdfV\xc5\x18"
    714         */
    715 
    716         memcpy(&gss_cksum[4],
    717                 "\x14\x8f\x0c\xf7\xb1u\xdey*J\x9a%\xdfV\xc5\x18",
    718                 GSSAPI_BNDLENGTH);
     699        /*
     700         * GSS_C_NO_CHANNEL_BINDINGS means 16 zero bytes.
     701         * This matches the behavior of heimdal and mit.
     702         *
     703         * And it is needed to work against some closed source
     704         * SMB servers.
     705         *
     706         * See bug #7883
     707         */
     708        memset(&gss_cksum[4], 0x00, GSSAPI_BNDLENGTH);
    719709
    720710        SIVAL(gss_cksum, 20, gss_flags);
     
    833823        }
    834824
    835 #if defined(TKT_FLG_OK_AS_DELEGATE ) && defined(HAVE_KRB5_FWD_TGT_CREDS) && defined(HAVE_KRB5_AUTH_CON_SETUSERUSERKEY) && defined(KRB5_AUTH_CONTEXT_USE_SUBKEY)
     825#if defined(TKT_FLG_OK_AS_DELEGATE ) && defined(HAVE_KRB5_FWD_TGT_CREDS) && defined(HAVE_KRB5_AUTH_CON_SETUSERUSERKEY) && defined(KRB5_AUTH_CONTEXT_USE_SUBKEY) && defined(HAVE_KRB5_AUTH_CON_SET_REQ_CKSUMTYPE)
    836826        if( credsp->ticket_flags & TKT_FLG_OK_AS_DELEGATE ) {
    837827                /* Fetch a forwarded TGT from the KDC so that we can hand off a 2nd ticket
     
    895885                }
    896886        }
    897 #endif
    898887
    899888        /* Frees and reallocates in_data into a GSS checksum blob. */
     
    903892        }
    904893
    905 #if defined(HAVE_KRB5_AUTH_CON_SET_REQ_CKSUMTYPE)
    906894        /* We always want GSS-checksum types. */
    907895        retval = krb5_auth_con_set_req_cksumtype(context, *auth_context, GSSAPI_CHECKSUM );
Note: See TracChangeset for help on using the changeset viewer.