mirror of
				https://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
				synced 2025-10-31 12:09:34 +00:00 
			
		
		
		
	 1da177e4c3
			
		
	
	
		1da177e4c3
		
	
	
	
	
		
			
			Initial git repository build. I'm not bothering with the full history, even though we have it. We can create a separate "historical" git archive of that later if we want to, and in the meantime it's about 3.2GB when imported into git - space that would just make the early git days unnecessarily complicated, when we don't have a lot of good infrastructure for it. Let it rip!
		
			
				
	
	
		
			125 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			125 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /*****************************************************************************
 | |
| * if_wanpipe.h	Header file for the Sangoma AF_WANPIPE Socket 	
 | |
| *
 | |
| * Author: 	Nenad Corbic 	
 | |
| *
 | |
| * Copyright:	(c) 2000 Sangoma Technologies Inc.
 | |
| *
 | |
| *		This program is free software; you can redistribute it and/or
 | |
| *		modify it under the terms of the GNU General Public License
 | |
| *		as published by the Free Software Foundation; either version
 | |
| *		2 of the License, or (at your option) any later version.
 | |
| * ============================================================================
 | |
| *
 | |
| * Jan 28, 2000	Nenad Corbic 	Initial Version
 | |
| *
 | |
| *****************************************************************************/
 | |
| 
 | |
| #ifndef __LINUX_IF_WAN_PACKET_H
 | |
| #define __LINUX_IF_WAN_PACKET_H
 | |
| 
 | |
| struct wan_sockaddr_ll
 | |
| {
 | |
| 	unsigned short	sll_family;
 | |
| 	unsigned short	sll_protocol;
 | |
| 	int		sll_ifindex;
 | |
| 	unsigned short	sll_hatype;
 | |
| 	unsigned char	sll_pkttype;
 | |
| 	unsigned char	sll_halen;
 | |
| 	unsigned char	sll_addr[8];
 | |
| 	unsigned char   sll_device[14];
 | |
| 	unsigned char 	sll_card[14];
 | |
| };
 | |
| 
 | |
| typedef struct 
 | |
| {
 | |
| 	unsigned char free;
 | |
| 	unsigned char state_sk;
 | |
| 	int rcvbuf;
 | |
| 	int sndbuf;
 | |
| 	int rmem;
 | |
| 	int wmem;
 | |
| 	int sk_count;
 | |
| 	unsigned char bound;
 | |
| 	char name[14];
 | |
| 	unsigned char d_state;
 | |
| 	unsigned char svc;
 | |
| 	unsigned short lcn;
 | |
| 	unsigned char mbox;
 | |
| 	unsigned char cmd_busy;
 | |
| 	unsigned char command;
 | |
| 	unsigned poll;
 | |
| 	unsigned poll_cnt;
 | |
| 	int rblock;	
 | |
| } wan_debug_hdr_t;
 | |
| 
 | |
| #define MAX_NUM_DEBUG  10
 | |
| #define X25_PROT       0x16
 | |
| #define PVC_PROT       0x17	
 | |
| 
 | |
| typedef struct
 | |
| {
 | |
| 	wan_debug_hdr_t debug[MAX_NUM_DEBUG];
 | |
| }wan_debug_t;
 | |
| 
 | |
| #define	SIOC_WANPIPE_GET_CALL_DATA	(SIOCPROTOPRIVATE + 0)
 | |
| #define	SIOC_WANPIPE_SET_CALL_DATA	(SIOCPROTOPRIVATE + 1)
 | |
| #define SIOC_WANPIPE_ACCEPT_CALL	(SIOCPROTOPRIVATE + 2)
 | |
| #define SIOC_WANPIPE_CLEAR_CALL	        (SIOCPROTOPRIVATE + 3)
 | |
| #define SIOC_WANPIPE_RESET_CALL	        (SIOCPROTOPRIVATE + 4)
 | |
| #define SIOC_WANPIPE_DEBUG	        (SIOCPROTOPRIVATE + 5)
 | |
| #define SIOC_WANPIPE_SET_NONBLOCK	(SIOCPROTOPRIVATE + 6)
 | |
| #define SIOC_WANPIPE_CHECK_TX		(SIOCPROTOPRIVATE + 7)
 | |
| #define SIOC_WANPIPE_SOCK_STATE		(SIOCPROTOPRIVATE + 8)
 | |
| 
 | |
| /* Packet types */
 | |
| 
 | |
| #define WAN_PACKET_HOST		0		/* To us		*/
 | |
| #define WAN_PACKET_BROADCAST	1		/* To all		*/
 | |
| #define WAN_PACKET_MULTICAST	2		/* To group		*/
 | |
| #define WAN_PACKET_OTHERHOST	3		/* To someone else 	*/
 | |
| #define WAN_PACKET_OUTGOING		4		/* Outgoing of any type */
 | |
| /* These ones are invisible by user level */
 | |
| #define WAN_PACKET_LOOPBACK		5		/* MC/BRD frame looped back */
 | |
| #define WAN_PACKET_FASTROUTE	6		/* Fastrouted frame	*/
 | |
| 
 | |
| 
 | |
| /* X25 specific */
 | |
| #define WAN_PACKET_DATA 	7
 | |
| #define WAN_PACKET_CMD 		8
 | |
| #define WAN_PACKET_ASYNC	9
 | |
| #define WAN_PACKET_ERR	       10
 | |
| 
 | |
| /* Packet socket options */
 | |
| 
 | |
| #define WAN_PACKET_ADD_MEMBERSHIP		1
 | |
| #define WAN_PACKET_DROP_MEMBERSHIP		2
 | |
| 
 | |
| #define WAN_PACKET_MR_MULTICAST	0
 | |
| #define WAN_PACKET_MR_PROMISC	1
 | |
| #define WAN_PACKET_MR_ALLMULTI	2
 | |
| 
 | |
| #ifdef __KERNEL__
 | |
| 
 | |
| /* Private wanpipe socket structures. */
 | |
| struct wanpipe_opt
 | |
| {
 | |
| 	void   *mbox;		/* Mail box  */
 | |
| 	void   *card; 		/* Card bouded to */
 | |
| 	struct net_device *dev;	/* Bounded device */
 | |
| 	unsigned short lcn;	/* Binded LCN */
 | |
| 	unsigned char  svc;	/* 0=pvc, 1=svc */
 | |
| 	unsigned char  timer;   /* flag for delayed transmit*/	
 | |
| 	struct timer_list tx_timer;
 | |
| 	unsigned poll_cnt;
 | |
| 	unsigned char force;	/* Used to force sock release */
 | |
| 	atomic_t packet_sent;   
 | |
| 	unsigned short num; 
 | |
| };
 | |
| 
 | |
| #define wp_sk(__sk) ((struct wanpipe_opt *)(__sk)->sk_protinfo)
 | |
| 
 | |
| #endif
 | |
| 
 | |
| #endif
 |