diff options
Diffstat (limited to 'include/linux/if_wanpipe_common.h')
| -rw-r--r-- | include/linux/if_wanpipe_common.h | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/include/linux/if_wanpipe_common.h b/include/linux/if_wanpipe_common.h new file mode 100644 index 000000000000..e1c95b5d4cda --- /dev/null +++ b/include/linux/if_wanpipe_common.h @@ -0,0 +1,67 @@ +/***************************************************************************** +* if_wanipe_common.h Sangoma Driver/Socket common area definitions. +* +* Author: Nenad Corbic <ncorbic@sangoma.com> +* +* 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 13, 2000 Nenad Corbic Initial version +*****************************************************************************/ + + +#ifndef _WANPIPE_SOCK_DRIVER_COMMON_H +#define _WANPIPE_SOCK_DRIVER_COMMON_H + +#include <linux/version.h> + +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,3,0) + #define netdevice_t struct net_device +#else + #define netdevice_t struct device +#endif + + +typedef struct { + netdevice_t *slave; + atomic_t packet_sent; + atomic_t receive_block; + atomic_t command; + atomic_t disconnect; + atomic_t driver_busy; + unsigned char common_critical; + struct timer_list *tx_timer; + struct sock *sk; /* Wanpipe Sock bind's here */ + int (*func) (struct sk_buff *, netdevice_t *, + struct sock *); + + struct tq_struct wanpipe_task; /* Immediate BH handler task */ + unsigned char rw_bind; /* Sock bind state */ + unsigned char usedby; + unsigned char state; + unsigned char svc; + unsigned short lcn; + void *mbox; +} wanpipe_common_t; + + +enum { + WANSOCK_UNCONFIGURED, /* link/channel is not configured */ + WANSOCK_DISCONNECTED, /* link/channel is disconnected */ + WANSOCK_CONNECTING, /* connection is in progress */ + WANSOCK_CONNECTED, /* link/channel is operational */ + WANSOCK_LIMIT, /* for verification only */ + WANSOCK_DUALPORT, /* for Dual Port cards */ + WANSOCK_DISCONNECTING, + WANSOCK_BINDED, + WANSOCK_BIND_LISTEN, + WANSOCK_LISTEN +}; + +#endif + + |
