00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef IRLAN_EVENT_H
00026 #define IRLAN_EVENT_H
00027
00028 #include <linux/kernel.h>
00029 #include <linux/skbuff.h>
00030
00031 #include <net/irda/irlan_common.h>
00032
00033 typedef enum {
00034 IRLAN_IDLE,
00035 IRLAN_QUERY,
00036 IRLAN_CONN,
00037 IRLAN_INFO,
00038 IRLAN_MEDIA,
00039 IRLAN_OPEN,
00040 IRLAN_WAIT,
00041 IRLAN_ARB,
00042 IRLAN_DATA,
00043 IRLAN_CLOSE,
00044 IRLAN_SYNC
00045 } IRLAN_STATE;
00046
00047 typedef enum {
00048 IRLAN_DISCOVERY_INDICATION,
00049 IRLAN_IAS_PROVIDER_AVAIL,
00050 IRLAN_IAS_PROVIDER_NOT_AVAIL,
00051 IRLAN_LAP_DISCONNECT,
00052 IRLAN_LMP_DISCONNECT,
00053 IRLAN_CONNECT_COMPLETE,
00054 IRLAN_DATA_INDICATION,
00055 IRLAN_DATA_CONNECT_INDICATION,
00056 IRLAN_RETRY_CONNECT,
00057
00058 IRLAN_CONNECT_INDICATION,
00059 IRLAN_GET_INFO_CMD,
00060 IRLAN_GET_MEDIA_CMD,
00061 IRLAN_OPEN_DATA_CMD,
00062 IRLAN_FILTER_CONFIG_CMD,
00063
00064 IRLAN_CHECK_CON_ARB,
00065 IRLAN_PROVIDER_SIGNAL,
00066
00067 IRLAN_WATCHDOG_TIMEOUT,
00068 } IRLAN_EVENT;
00069
00070 extern char *irlan_state[];
00071
00072 void irlan_do_client_event(struct irlan_cb *self, IRLAN_EVENT event,
00073 struct sk_buff *skb);
00074
00075 void irlan_do_provider_event(struct irlan_cb *self, IRLAN_EVENT event,
00076 struct sk_buff *skb);
00077
00078 void irlan_next_client_state(struct irlan_cb *self, IRLAN_STATE state);
00079 void irlan_next_provider_state(struct irlan_cb *self, IRLAN_STATE state);
00080
00081 #endif