Print this page
NEX-16818 Add fksmbcl development tool
NEX-17264 SMB client test tp_smbutil_013 fails after NEX-14666
Reviewed by: Evan Layton <evan.layton@nexenta.com>
Reviewed by: Matt Barden <matt.barden@nexenta.com>
and: (fix ref leaks)
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/libfakekernel/common/sys/cred.h
          +++ new/usr/src/lib/libfakekernel/common/sys/cred.h
↓ open down ↓ 11 lines elided ↑ open up ↑
  12   12   *
  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      - * Copyright 2013 Nexenta Systems, Inc.  All rights reserved.
       22 + * Copyright 2016 Nexenta Systems, Inc.  All rights reserved.
  23   23   * Copyright 2017 RackTop Systems.
  24   24   *
  25   25   * Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
  26   26   * Use is subject to license terms.
  27   27   */
  28   28  
  29   29  /*      Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T     */
  30   30  /*        All Rights Reserved   */
  31   31  
  32   32  /*
↓ open down ↓ 14 lines elided ↑ open up ↑
  47   47   * The credential is an opaque kernel private data structure defined in
  48   48   * <sys/cred_impl.h>.
  49   49   */
  50   50  
  51   51  typedef struct cred cred_t;
  52   52  
  53   53  #if defined(_KERNEL) || defined(_FAKE_KERNEL)
  54   54  
  55   55  cred_t *_curcred(void);
  56   56  #define CRED()          (_curcred())    /* current cred_t pointer */
       57 +struct ksid;
  57   58  
  58   59  extern int ngroups_max;
  59   60  
  60   61  /*
  61   62   * kcred is used when you need all privileges.
  62   63   */
  63   64  extern struct cred *kcred;
  64   65  
  65   66  extern void cred_init(void);
  66   67  extern void crhold(cred_t *);
  67   68  extern void crfree(cred_t *);
  68   69  
       70 +extern int groupmember(gid_t, const cred_t *);
       71 +
  69   72  extern cred_t *zone_kcred(void);
  70   73  
  71   74  extern uid_t crgetuid(const cred_t *);
  72   75  extern uid_t crgetruid(const cred_t *);
  73   76  extern uid_t crgetsuid(const cred_t *);
  74   77  extern gid_t crgetgid(const cred_t *);
  75   78  extern gid_t crgetrgid(const cred_t *);
  76   79  extern gid_t crgetsgid(const cred_t *);
  77   80  extern zoneid_t crgetzoneid(const cred_t *);
       81 +extern struct zone *crgetzone(const cred_t *);
  78   82  extern projid_t crgetprojid(const cred_t *);
       83 +extern struct ksid *crgetsid(const cred_t *, int);
  79   84  
  80   85  extern const gid_t *crgetgroups(const cred_t *);
  81   86  extern int crgetngroups(const cred_t *);
  82   87  
  83   88  #endif  /* _KERNEL */
  84   89  
  85   90  #ifdef  __cplusplus
  86   91  }
  87   92  #endif
  88   93  
  89   94  #endif  /* _SYS_CRED_H */
    
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX