Main Page | Alphabetical List | Data Structures | Directories | File List | Data Fields | Globals

irlan_event.h

Go to the documentation of this file.
00001 /*********************************************************************
00002  *                
00003  * Filename:      irlan_event.h
00004  * Version:       
00005  * Description:   LAN access
00006  * Status:        Experimental.
00007  * Author:        Dag Brattli <dagb@cs.uit.no>
00008  * Created at:    Sun Aug 31 20:14:37 1997
00009  * Modified at:   Tue Feb  2 09:45:17 1999
00010  * Modified by:   Dag Brattli <dagb@cs.uit.no>
00011  * 
00012  *     Copyright (c) 1997 Dag Brattli <dagb@cs.uit.no>, All Rights Reserved.
00013  *     
00014  *     This program is free software; you can redistribute it and/or 
00015  *     modify it under the terms of the GNU General Public License as 
00016  *     published by the Free Software Foundation; either version 2 of 
00017  *     the License, or (at your option) any later version.
00018  *
00019  *     Neither Dag Brattli nor University of Tromsų admit liability nor
00020  *     provide warranty for any of this software. This material is 
00021  *     provided "AS-IS" and at no charge.
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