mirror of
				https://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
				synced 2025-10-31 14:30:50 +00:00 
			
		
		
		
	 a1a61a435b
			
		
	
	
		a1a61a435b
		
	
	
	
	
		
			
			The atm_tcp.h uses types from linux/atm.h, but does not include it. It should also use the standard __u## types from linux/types.h rather than the uint##_t types since the former can be found with the kernel already. Same goes for linux/atm.h. The linux/socket.h include there also gets dropped as atm.h does not actually use anything from socket.h. Signed-off-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: David S. Miller <davem@davemloft.net>
		
			
				
	
	
		
			74 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			74 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /* atm_tcp.h - Driver-specific declarations of the ATMTCP driver (for use by
 | |
| 	       driver-specific utilities) */
 | |
| 
 | |
| /* Written 1997-2000 by Werner Almesberger, EPFL LRC/ICA */
 | |
| 
 | |
| 
 | |
| #ifndef LINUX_ATM_TCP_H
 | |
| #define LINUX_ATM_TCP_H
 | |
| 
 | |
| #include <linux/atmapi.h>
 | |
| #include <linux/atm.h>
 | |
| #include <linux/atmioc.h>
 | |
| #include <linux/types.h>
 | |
| 
 | |
| 
 | |
| /*
 | |
|  * All values in struct atmtcp_hdr are in network byte order
 | |
|  */
 | |
| 
 | |
| struct atmtcp_hdr {
 | |
| 	__u16	vpi;
 | |
| 	__u16	vci;
 | |
| 	__u32	length;		/* ... of data part */
 | |
| };
 | |
| 
 | |
| /*
 | |
|  * All values in struct atmtcp_command are in host byte order
 | |
|  */
 | |
| 
 | |
| #define ATMTCP_HDR_MAGIC	(~0)	/* this length indicates a command */
 | |
| #define ATMTCP_CTRL_OPEN	1	/* request/reply */
 | |
| #define ATMTCP_CTRL_CLOSE	2	/* request/reply */
 | |
| 
 | |
| struct atmtcp_control {
 | |
| 	struct atmtcp_hdr hdr;	/* must be first */
 | |
| 	int type;		/* message type; both directions */
 | |
| 	atm_kptr_t vcc;		/* both directions */
 | |
| 	struct sockaddr_atmpvc addr; /* suggested value from kernel */
 | |
| 	struct atm_qos	qos;	/* both directions */
 | |
| 	int result;		/* to kernel only */
 | |
| } __ATM_API_ALIGN;
 | |
| 
 | |
| /*
 | |
|  * Field usage:
 | |
|  * Messge type	dir.	hdr.v?i	type	addr	qos	vcc	result
 | |
|  * -----------  ----	------- ----	----	---	---	------
 | |
|  * OPEN		K->D	Y	Y	Y	Y	Y	0
 | |
|  * OPEN		D->K	-	Y	Y	Y	Y	Y
 | |
|  * CLOSE	K->D	-	-	Y	-	Y	0
 | |
|  * CLOSE	D->K	-	-	-	-	Y	Y
 | |
|  */
 | |
| 
 | |
| #define SIOCSIFATMTCP	_IO('a',ATMIOC_ITF)	/* set ATMTCP mode */
 | |
| #define ATMTCP_CREATE	_IO('a',ATMIOC_ITF+14)	/* create persistent ATMTCP
 | |
| 						   interface */
 | |
| #define ATMTCP_REMOVE	_IO('a',ATMIOC_ITF+15)	/* destroy persistent ATMTCP
 | |
| 						   interface */
 | |
| 
 | |
| 
 | |
| #ifdef __KERNEL__
 | |
| 
 | |
| struct atm_tcp_ops {
 | |
| 	int (*attach)(struct atm_vcc *vcc,int itf);
 | |
| 	int (*create_persistent)(int itf);
 | |
| 	int (*remove_persistent)(int itf);
 | |
| 	struct module *owner;
 | |
| };
 | |
| 
 | |
| extern struct atm_tcp_ops atm_tcp_ops;
 | |
| 
 | |
| #endif
 | |
| 
 | |
| #endif
 |