~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/include/uapi/linux/atm.h

Version: ~ [ linux-6.11.5 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.58 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.114 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.169 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.228 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.284 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.322 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /include/uapi/linux/atm.h (Version linux-6.11.5) and /include/uapi/linux/atm.h (Version linux-2.6.32.71)


  1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux      1 
  2 /* atm.h - general ATM declarations */            
  3                                                   
  4 /* Written 1995-2000 by Werner Almesberger, EP    
  5                                                   
  6                                                   
  7 /*                                                
  8  * WARNING: User-space programs should not #in    
  9  *          Instead, #include <atm.h>             
 10  */                                               
 11                                                   
 12 #ifndef _UAPI_LINUX_ATM_H                         
 13 #define _UAPI_LINUX_ATM_H                         
 14                                                   
 15 /*                                                
 16  * BEGIN_xx and END_xx markers are used for au    
 17  * documentation. Do not change them.             
 18  */                                               
 19                                                   
 20 #include <linux/compiler.h>                       
 21 #include <linux/atmapi.h>                         
 22 #include <linux/atmsap.h>                         
 23 #include <linux/atmioc.h>                         
 24 #include <linux/types.h>                          
 25                                                   
 26                                                   
 27 /* general ATM constants */                       
 28 #define ATM_CELL_SIZE               53  /* ATM    
 29 #define ATM_CELL_PAYLOAD            48  /* ATM    
 30 #define ATM_AAL0_SDU                52  /* AAL    
 31 #define ATM_MAX_AAL34_PDU        65535  /* max    
 32 #define ATM_AAL5_TRAILER             8  /* AAL    
 33 #define ATM_MAX_AAL5_PDU         65535  /* max    
 34 #define ATM_MAX_CDV               9999  /* max    
 35 #define ATM_NOT_RSV_VCI             32  /* fir    
 36                                                   
 37 #define ATM_MAX_VPI                255  /* max    
 38 #define ATM_MAX_VPI_NNI           4096  /* max    
 39 #define ATM_MAX_VCI              65535  /* max    
 40                                                   
 41                                                   
 42 /* "protcol" values for the socket system call    
 43 #define ATM_NO_AAL      0               /* AAL    
 44 #define ATM_AAL0        13              /* "ra    
 45 #define ATM_AAL1        1               /* AAL    
 46 #define ATM_AAL2        2               /* AAL    
 47 #define ATM_AAL34       3               /* AAL    
 48 #define ATM_AAL5        5               /* AAL    
 49                                                   
 50 /*                                                
 51  * socket option name coding functions            
 52  *                                                
 53  * Note that __SO_ENCODE and __SO_LEVEL are so    
 54  * << 22 only reserves 9 bits for the level.      
 55  * SOL_SOCKET is 0xFFFF, so that's a bit of a     
 56  */                                               
 57                                                   
 58 #define __SO_ENCODE(l,n,t)      ((((l) & 0x1FF    
 59                                 sizeof(t))        
 60 #define __SO_LEVEL_MATCH(c,m)   (((c) >> 22) =    
 61 #define __SO_NUMBER(c)          (((c) >> 16) &    
 62 #define __SO_SIZE(c)            ((c) & 0x3fff)    
 63                                                   
 64 /*                                                
 65  * ATM layer                                      
 66  */                                               
 67                                                   
 68 #define SO_SETCLP       __SO_ENCODE(SOL_ATM,0,    
 69                             /* set CLP bit val    
 70 #define SO_CIRANGE      __SO_ENCODE(SOL_ATM,1,    
 71                             /* connection iden    
 72                                bound or connec    
 73 #define SO_ATMQOS       __SO_ENCODE(SOL_ATM,2,    
 74                             /* Quality of Serv    
 75 #define SO_ATMSAP       __SO_ENCODE(SOL_ATM,3,    
 76                             /* Service Access     
 77 #define SO_ATMPVC       __SO_ENCODE(SOL_ATM,4,    
 78                             /* "PVC" address (    
 79 #define SO_MULTIPOINT   __SO_ENCODE(SOL_ATM, 5    
 80                             /* make this vc a     
 81                                                   
 82                                                   
 83 /*                                                
 84  * Note @@@: since the socket layers don't rea    
 85  * the data plane but generally seems to be da    
 86  * about equally wrong for the SAP. If you hav    
 87  * please speak up ...                            
 88  */                                               
 89                                                   
 90                                                   
 91 /* ATM cell header (for AAL0) */                  
 92                                                   
 93 /* BEGIN_CH */                                    
 94 #define ATM_HDR_GFC_MASK        0xf0000000        
 95 #define ATM_HDR_GFC_SHIFT       28                
 96 #define ATM_HDR_VPI_MASK        0x0ff00000        
 97 #define ATM_HDR_VPI_SHIFT       20                
 98 #define ATM_HDR_VCI_MASK        0x000ffff0        
 99 #define ATM_HDR_VCI_SHIFT       4                 
100 #define ATM_HDR_PTI_MASK        0x0000000e        
101 #define ATM_HDR_PTI_SHIFT       1                 
102 #define ATM_HDR_CLP             0x00000001        
103 /* END_CH */                                      
104                                                   
105                                                   
106 /* PTI codings */                                 
107                                                   
108 /* BEGIN_PTI */                                   
109 #define ATM_PTI_US0     0  /* user data cell,     
110 #define ATM_PTI_US1     1  /* user data cell,     
111 #define ATM_PTI_UCES0   2  /* user data cell,     
112 #define ATM_PTI_UCES1   3  /* user data cell,     
113 #define ATM_PTI_SEGF5   4  /* segment OAM F5 f    
114 #define ATM_PTI_E2EF5   5  /* end-to-end OAM F    
115 #define ATM_PTI_RSV_RM  6  /* reserved for tra    
116 #define ATM_PTI_RSV     7  /* reserved */         
117 /* END_PTI */                                     
118                                                   
119                                                   
120 /*                                                
121  * The following items should stay in linux/at    
122  * netatm/atm.h                                   
123  */                                               
124                                                   
125 /* Traffic description */                         
126                                                   
127 #define ATM_NONE        0               /* no     
128 #define ATM_UBR         1                         
129 #define ATM_CBR         2                         
130 #define ATM_VBR         3                         
131 #define ATM_ABR         4                         
132 #define ATM_ANYCLASS    5               /* com    
133                                                   
134 #define ATM_MAX_PCR     -1              /* max    
135                                                   
136 struct atm_trafprm {                              
137         unsigned char   traffic_class;  /* tra    
138         int             max_pcr;        /* max    
139         int             pcr;            /* des    
140         int             min_pcr;        /* min    
141         int             max_cdv;        /* max    
142         int             max_sdu;        /* max    
143         /* extra params for ABR */                
144         unsigned int    icr;            /* Ini    
145         unsigned int    tbe;            /* Tra    
146         unsigned int    frtt : 24;      /* Fix    
147         unsigned int    rif  : 4;       /* Rat    
148         unsigned int    rdf  : 4;       /* Rat    
149         unsigned int nrm_pres  :1;      /* nrm    
150         unsigned int trm_pres  :1;      /* rm     
151         unsigned int adtf_pres :1;      /* adt    
152         unsigned int cdf_pres  :1;      /* cdf    
153         unsigned int nrm       :3;      /* Max    
154         unsigned int trm       :3;      /* Tim    
155         unsigned int adtf      :10;     /* ACR    
156         unsigned int cdf       :3;      /* Cut    
157         unsigned int spare     :9;      /* spa    
158 };                                                
159                                                   
160 struct atm_qos {                                  
161         struct atm_trafprm txtp;        /* par    
162         struct atm_trafprm rxtp __ATM_API_ALIG    
163                                         /* par    
164         unsigned char aal __ATM_API_ALIGN;        
165 };                                                
166                                                   
167 /* PVC addressing */                              
168                                                   
169 #define ATM_ITF_ANY     -1              /* "ma    
170 #define ATM_VPI_ANY     -1                        
171 #define ATM_VCI_ANY     -1                        
172 #define ATM_VPI_UNSPEC  -2                        
173 #define ATM_VCI_UNSPEC  -2                        
174                                                   
175                                                   
176 struct sockaddr_atmpvc {                          
177         unsigned short  sap_family;     /* add    
178         struct {                        /* PVC    
179                 short   itf;            /* ATM    
180                 short   vpi;            /* VPI    
181                 int     vci;            /* VCI    
182         } sap_addr __ATM_API_ALIGN;     /* PVC    
183 };                                                
184                                                   
185 /* SVC addressing */                              
186                                                   
187 #define ATM_ESA_LEN     20              /* ATM    
188 #define ATM_E164_LEN    12              /* max    
189                                                   
190 #define ATM_AFI_DCC     0x39            /* DCC    
191 #define ATM_AFI_ICD     0x47            /* ICD    
192 #define ATM_AFI_E164    0x45            /* E.1    
193 #define ATM_AFI_LOCAL   0x49            /* Loc    
194                                                   
195 #define ATM_AFI_DCC_GROUP       0xBD    /* DCC    
196 #define ATM_AFI_ICD_GROUP       0xC5    /* ICD    
197 #define ATM_AFI_E164_GROUP      0xC3    /* E.1    
198 #define ATM_AFI_LOCAL_GROUP     0xC7    /* Loc    
199                                                   
200 #define ATM_LIJ_NONE    0               /* no     
201 #define ATM_LIJ         1               /* req    
202 #define ATM_LIJ_RPJ     2               /* set    
203 #define ATM_LIJ_NJ      3               /* set    
204                                                   
205                                                   
206 struct sockaddr_atmsvc {                          
207     unsigned short      sas_family;     /* add    
208     struct {                            /* SVC    
209         unsigned char   prv[ATM_ESA_LEN];/* pr    
210         char            pub[ATM_E164_LEN+1]; /    
211                                         /* unu    
212         char            lij_type;       /* rol    
213         __u32   lij_id;         /* LIJ call id    
214     } sas_addr __ATM_API_ALIGN;         /* SVC    
215 };                                                
216                                                   
217                                                   
218 static __inline__ int atmsvc_addr_in_use(struc    
219 {                                                 
220         return *addr.sas_addr.prv || *addr.sas    
221 }                                                 
222                                                   
223                                                   
224 static __inline__ int atmpvc_addr_in_use(struc    
225 {                                                 
226         return addr.sap_addr.itf || addr.sap_a    
227 }                                                 
228                                                   
229                                                   
230 /*                                                
231  * Some stuff for linux/sockios.h                 
232  */                                               
233                                                   
234 struct atmif_sioc {                               
235         int number;                               
236         int length;                               
237         void __user *arg;                         
238 };                                                
239                                                   
240                                                   
241 typedef unsigned short atm_backend_t;             
242 #endif /* _UAPI_LINUX_ATM_H */                    
243                                                   

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php