Print this page
NEX-15558 SMB logon fails during 1st second after service start
Reviewed by: Matt Barden <matt.barden@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
NEX-15558 SMB logon fails during 1st second after service start
Reviewed by: Matt Barden <matt.barden@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
NEX-4064 NULL session setup gets internal error
Reviewed by: Gordon Ross <gordon.ross@nexenta.com>
Reviewed by: Matt Barden <Matt.Barden@nexenta.com>
NEX-3080 SMB1 signing problem with Kerberos auth.
Reviewed by: Bayard Bell <bayard.bell@nexenta.com>
Reviewed by: Dan Fields <dan.fields@nexenta.com>
Reviewed by: Kevin Crowe <kevin.crowe@nexenta.com>
Reviewed by: Matt Barden <Matt.Barden@nexenta.com>
NEX-1404 fixed malformed entries in zone_sun.tab
NEX-1799 Failure to authenticate domain account from Win2003 with NTLM(v1)
SMB-149 mount.cifs RedHat\Centos 6 doesn't work with default security options
SMB-126 Unable to map share from win2003/win2003R2 client ...
SMB-107 Unable to map network drive in workgroup mode using Windows XP...
SMB-68 NTLM(v1) inbound with Extended Session Security
SMB-123 misleading log messages from smb_logon
SMB-56 extended security NTLMSSP, inbound

Split Close
Expand all
Collapse all
          --- old/usr/src/cmd/smbsrv/smbd/smbd_ntlmssp.c
          +++ new/usr/src/cmd/smbsrv/smbd/smbd_ntlmssp.c
↓ open down ↓ 2 lines elided ↑ open up ↑
   3    3   * Common Development and Distribution License ("CDDL"), version 1.0.
   4    4   * You may only use this file in accordance with the terms of version
   5    5   * 1.0 of the CDDL.
   6    6   *
   7    7   * A full copy of the text of the CDDL should have accompanied this
   8    8   * source.  A copy of the CDDL is also available via the Internet at
   9    9   * http://www.illumos.org/license/CDDL.
  10   10   */
  11   11  
  12   12  /*
  13      - * Copyright 2015 Nexenta Systems, Inc.  All rights reserved.
       13 + * Copyright 2017 Nexenta Systems, Inc.  All rights reserved.
  14   14   */
  15   15  
  16   16  /*
  17   17   * SPNEGO back-end for NTLMSSP.  See [MS-NLMP]
  18   18   */
  19   19  
  20   20  #include <sys/types.h>
  21   21  #include <sys/byteorder.h>
  22   22  #include <strings.h>
  23   23  #include "smbd.h"
↓ open down ↓ 458 lines elided ↑ open up ↑
 482  482                  user_info.lg_lm_password.len = 0;
 483  483                  ntlm_v1x = B_TRUE;
 484  484          }
 485  485  
 486  486          /*
 487  487           * This (indirectly) calls smb_auth_validate() to
 488  488           * check that the client gave us a valid hash.
 489  489           */
 490  490          token = smbd_user_auth_logon(&user_info);
 491  491          if (token == NULL) {
 492      -                status = NT_STATUS_ACCESS_DENIED;
      492 +                status = user_info.lg_status;
      493 +                if (status == 0) /* should not happen */
      494 +                        status = NT_STATUS_INTERNAL_ERROR;
 493  495                  goto errout;
 494  496          }
 495  497  
 496  498          if (token->tkn_ssnkey.val != NULL &&
 497  499              token->tkn_ssnkey.len == SMBAUTH_HASH_SZ) {
 498  500  
 499  501                  /*
 500  502                   * At this point, token->tkn_session_key is the
 501  503                   * "Session Base Key" [MS-NLMP] 3.2.5.1.2
 502  504                   * Compute the final session key.  First need the
↓ open down ↓ 93 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX