Print this page
    
    
      
        | Split | 
	Close | 
      
      | Expand all | 
      | Collapse all | 
    
    
          --- old/usr/src/uts/common/fs/sockfs/socktpi_impl.h
          +++ new/usr/src/uts/common/fs/sockfs/socktpi_impl.h
   1    1  /*
   2    2   * CDDL HEADER START
   3    3   *
   4    4   * The contents of this file are subject to the terms of the
   5    5   * Common Development and Distribution License (the "License").
   6    6   * You may not use this file except in compliance with the License.
   7    7   *
   8    8   * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
   9    9   * or http://www.opensolaris.org/os/licensing.
  10   10   * See the License for the specific language governing permissions
  11   11   * and limitations under the License.
  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   22  /*
  23   23   * Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
  24   24   * Use is subject to license terms.
  25   25   * Copyright 2015 Joyent, Inc.
  26   26   */
  27   27  
  28   28  #ifndef _SOCKFS_SOCKTPI_IMPL_H
  29   29  #define _SOCKFS_SOCKTPI_IMPL_H
  30   30  
  31   31  #include <sys/socketvar.h>
  32   32  #include <fs/sockfs/socktpi.h>
  33   33  
  34   34  #ifdef  __cplusplus
  35   35  extern "C" {
  36   36  #endif
  37   37  
  38   38  /*
  39   39   * so_priv will always be set to &st_info
  40   40   */
  41   41  typedef struct sotpi_sonode {
  42   42          struct sonode st_sonode;
  43   43          struct sotpi_info st_info;
  44   44  } sotpi_sonode_t;
  45   45  
  46   46  extern void     so_proc_tcapability_ack(struct sonode *,
  47   47                      struct T_capability_ack *);
  48   48  extern void     so_basic_strinit(struct sonode *);
  49   49  extern void     so_alloc_addr(struct sonode *, t_uscalar_t);
  50   50  extern int      so_set_events(struct sonode *, vnode_t *, cred_t *);
  51   51  extern int      so_sock2stream(struct sonode *);
  52   52  extern void     so_stream2sock(struct sonode *);
  53   53  
  54   54  extern int      so_strinit(struct sonode *, struct sonode *);
  55   55  extern void     so_update_attrs(struct sonode *, int);
  56   56  extern int      sogetrderr(vnode_t *, int, int *);
  57   57  extern int      sogetwrerr(vnode_t *, int, int *);
  58   58  extern int      so_addr_verify(struct sonode *, const struct sockaddr *,
  59   59                          socklen_t);
  60   60  extern int      so_ux_lookup(struct sonode *, struct sockaddr_un *, int,
  61   61                  vnode_t **);
  62   62  extern int      so_ux_addr_xlate(struct sonode *, struct sockaddr *,
  63   63                          socklen_t, int, void **, socklen_t *);
  64   64  extern void     so_unix_close(struct sonode *);
  65   65  
  66   66  extern int      sowaitprim(struct sonode *, t_scalar_t, t_scalar_t,
  67   67                          t_uscalar_t, mblk_t **, clock_t);
  68   68  extern int      sowaitokack(struct sonode *, t_scalar_t);
  69   69  extern int      sowaitack(struct sonode *, mblk_t **, clock_t);
  70   70  extern void     soqueueack(struct sonode *, mblk_t *);
  71   71  extern int      sowaitconnind(struct sonode *, int, mblk_t **);
  72   72  extern void     soqueueconnind(struct sonode *, mblk_t *);
  73   73  extern int      soflushconnind(struct sonode *, t_scalar_t);
  74   74  extern void     so_drain_discon_ind(struct sonode *);
  75   75  extern void     so_flush_discon_ind(struct sonode *);
  76   76  
  77   77  extern mblk_t   *soallocproto(size_t, int, cred_t *);
  78   78  extern mblk_t   *soallocproto1(const void *, ssize_t, ssize_t, int, cred_t *);
  79   79  extern void     soappendmsg(mblk_t *, const void *, ssize_t);
  80   80  extern mblk_t   *soallocproto2(const void *, ssize_t, const void *, ssize_t,
  81   81                          ssize_t, int, cred_t *);
  82   82  extern mblk_t   *soallocproto3(const void *, ssize_t, const void *, ssize_t,
  83   83                          const void *, ssize_t, ssize_t, int, cred_t *);
  84   84  
  85   85  extern int      so_set_asyncsigs(vnode_t *, pid_t, int, int, cred_t *);
  86   86  extern int      so_flip_async(struct sonode *, vnode_t *, int, cred_t *);
  87   87  extern int      so_set_siggrp(struct sonode *, vnode_t *, pid_t, int, cred_t *);
  88   88  
  89   89  extern void     so_installhooks(struct sonode *);
  90   90  
  91   91  extern int      kstrwritemp(struct vnode *, mblk_t *, ushort_t);
  92   92  extern int      sostream_direct(struct sonode *, struct uio *,
  93   93                      mblk_t *, cred_t *);
  94   94  extern int      sosend_dgram(struct sonode *, struct sockaddr *,
  95   95                      socklen_t, struct uio *, int);
  96   96  extern int      sosend_svc(struct sonode *, struct uio *, t_scalar_t, int, int);
  97   97  
  98   98  #ifdef  __cplusplus
  99   99  }
 100  100  #endif
 101  101  
 102  102  #endif /* _SOCKFS_SOCKTPI_IMPL_H */
  
    | 
      ↓ open down ↓ | 
    102 lines elided | 
    
      ↑ open up ↑ | 
  
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX