Print this page
NEX-13644 File access audit logging
Reviewed by: Gordon Ross <gordon.ross@nexenta.com>
Reviewed by: Roman Strashkin <roman.strashkin@nexenta.com>
Reviewed by: Saso Kiselkov <saso.kiselkov@nexenta.com>
Reviewed by: Rick McNeal <rick.mcneal@nexenta.com>
Reviewed by: Yuri Pankov <yuri.pankov@nexenta.com>
NEX-9808 SMB3 persistent handles
Reviewed by: Matt Barden <matt.barden@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
NEX-9808 SMB3 persistent handles
Reviewed by: Matt Barden <matt.barden@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
NEX-3553 SMB2/3 durable handles
Reviewed by: Gordon Ross <gwr@nexenta.com>
Reviewed by: Kevin Crowe <kevin.crowe@nexenta.com>
NEX-3776 SMB should handle PreviousSessionID
Reviewed by: Gordon Ross <gwr@nexenta.com>
SMB-50 User-mode SMB server
 Includes work by these authors:
 Thomas Keiser <thomas.keiser@nexenta.com>
 Albert Lee <trisk@nexenta.com>

Split Close
Expand all
Collapse all
          --- old/usr/src/lib/smbsrv/libfksmbsrv/common/fksmb_cred.c
          +++ new/usr/src/lib/smbsrv/libfksmbsrv/common/fksmb_cred.c
↓ open down ↓ 12 lines elided ↑ open up ↑
  13   13   * When distributing Covered Code, include this CDDL HEADER in each
  14   14   * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  15   15   * If applicable, add the following below this CDDL HEADER, with the
  16   16   * fields enclosed by brackets "[]" replaced with your own identifying
  17   17   * information: Portions Copyright [yyyy] [name of copyright owner]
  18   18   *
  19   19   * CDDL HEADER END
  20   20   */
  21   21  /*
  22   22   * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
  23      - * Copyright 2013 Nexenta Systems, Inc.  All rights reserved.
       23 + * Copyright 2018 Nexenta Systems, Inc.  All rights reserved.
  24   24   */
  25   25  
  26   26  #include <sys/types.h>
  27   27  #include <sys/sid.h>
  28   28  #include <sys/priv_names.h>
  29   29  #include <sys/socket.h>
  30   30  #include <netinet/in.h>
  31   31  #include <smbsrv/smb_idmap.h>
  32   32  #include <smbsrv/smb_kproto.h>
  33   33  #include <smbsrv/smb_token.h>
  34   34  
  35   35  
  36   36  /*
  37   37   * Kind of a hack here.  In this user-space test implementation,
  38   38   * we don't bother with real credential.  Everything here uses
  39   39   * the ordinary credentials of the process running this.
  40   40   */
       41 +
       42 +/*
       43 + * This library does not implement real credentials. All contexts
       44 + * use an opaque cred_t object, and all activity happens in the
       45 + * context of the user who runs the program.
       46 + */
       47 +/* ARGSUSED */
  41   48  cred_t *
  42      -smb_cred_create(smb_token_t *token)
       49 +smb_cred_create(smb_token_t *token, smb_session_t *s)
  43   50  {
  44   51          cred_t *cr;
  45      -        cr = (cred_t *)token;   /* hack */
       52 +        cr = CRED();
  46   53          return (cr);
  47   54  }
       55 +
       56 +cred_t *
       57 +smb_kcred_create(void)
       58 +{
       59 +        cred_t *cr;
       60 +        cr = CRED();
       61 +        return (cr);
       62 +}
  48   63  
  49   64  void
  50   65  smb_user_setcred(smb_user_t *user, cred_t *cr, uint32_t privileges)
  51   66  {
  52   67          user->u_cred = cr;
  53   68          user->u_privcred = NULL;
  54   69          user->u_privileges = privileges;
  55   70  }
    
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX