Ignore:
Timestamp:
May 27, 2009, 11:39:15 AM (16 years ago)
Author:
Herwig Bauernfeind
Message:

Update 3.2 branch to 3.2.9

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/samba-3.2.x/source/libsmb/clikrb5.c

    r204 r233  
    862862 bool get_krb5_smb_session_key(krb5_context context, krb5_auth_context auth_context, DATA_BLOB *session_key, bool remote)
    863863 {
    864         krb5_keyblock *skey;
    865         krb5_error_code err;
    866         bool ret = False;
    867 
    868         if (remote)
     864        krb5_keyblock *skey = NULL;
     865        krb5_error_code err = 0;
     866        bool ret = false;
     867
     868        if (remote) {
    869869                err = krb5_auth_con_getremotesubkey(context, auth_context, &skey);
    870         else
     870        } else {
    871871                err = krb5_auth_con_getlocalsubkey(context, auth_context, &skey);
    872         if (err == 0 && skey != NULL) {
    873                 DEBUG(10, ("Got KRB5 session key of length %d\n",  (int)KRB5_KEY_LENGTH(skey)));
    874                 *session_key = data_blob(KRB5_KEY_DATA(skey), KRB5_KEY_LENGTH(skey));
    875                 dump_data_pw("KRB5 Session Key:\n", session_key->data, session_key->length);
    876 
    877                 ret = True;
    878 
     872        }
     873
     874        if (err || skey == NULL) {
     875                DEBUG(10, ("KRB5 error getting session key %d\n", err));
     876                goto done;
     877        }
     878
     879        DEBUG(10, ("Got KRB5 session key of length %d\n",  (int)KRB5_KEY_LENGTH(skey)));
     880        *session_key = data_blob(KRB5_KEY_DATA(skey), KRB5_KEY_LENGTH(skey));
     881        dump_data_pw("KRB5 Session Key:\n", session_key->data, session_key->length);
     882
     883        ret = true;
     884
     885 done:
     886        if (skey) {
    879887                krb5_free_keyblock(context, skey);
    880         } else {
    881                 DEBUG(10, ("KRB5 error getting session key %d\n", err));
    882888        }
    883889
     
    17481754                        tmp = kt_str;
    17491755                        tmp += 5;
     1756                }
     1757
     1758                if (tmp[0] == '/') {
     1759                        /* Treat as a FILE: keytab definition. */
     1760                        found_valid_name = true;
    17501761                }
    17511762
Note: See TracChangeset for help on using the changeset viewer.