Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Typedefs | Enumerations | Functions | Variables
irlmp.h File Reference
#include <asm/param.h>
#include <linux/types.h>
#include <net/irda/irda.h>
#include <net/irda/qos.h>
#include <net/irda/irlap.h>
#include <net/irda/irlmp_event.h>
#include <net/irda/irqueue.h>
#include <net/irda/discovery.h>

Go to the source code of this file.

Data Structures

struct  irlmp_service_t
 
struct  irlmp_client_t
 
struct  lsap_cb
 
struct  CACHE_ENTRY
 
struct  lap_cb
 
struct  irlmp_cb
 

Macros

#define LSAP_MASK   0x7f
 
#define LSAP_IAS   0x00
 
#define LSAP_ANY   0xff
 
#define LSAP_MAX   0x6f /* 0x70-0x7f are reserved */
 
#define LSAP_CONNLESS   0x70 /* Connectionless LSAP, mostly used for Ultra */
 
#define DEV_ADDR_ANY   0xffffffff
 
#define LMP_HEADER   2 /* Dest LSAP + Source LSAP */
 
#define LMP_CONTROL_HEADER   4 /* LMP_HEADER + opcode + parameter */
 
#define LMP_PID_HEADER   1 /* Used by Ultra */
 
#define LMP_MAX_HEADER   (LMP_CONTROL_HEADER+LAP_MAX_HEADER)
 
#define LM_MAX_CONNECTIONS   10
 
#define LM_IDLE_TIMEOUT   2*HZ /* 2 seconds for now */
 

Typedefs

typedef void(* DISCOVERY_CALLBACK1 )(discinfo_t *, DISCOVERY_MODE, void *)
 
typedef void(* DISCOVERY_CALLBACK2 )(discinfo_t *, DISCOVERY_MODE, void *)
 

Enumerations

enum  SERVICE {
  S_PNP = 0, S_PDA, S_COMPUTER, S_PRINTER,
  S_MODEM, S_FAX, S_LAN, S_TELEPHONY,
  S_COMM, S_OBEX, S_ANY, S_END
}
 

Functions

int irlmp_init (void)
 
void irlmp_cleanup (void)
 
struct lsap_cbirlmp_open_lsap (__u8 slsap, notify_t *notify, __u8 pid)
 
void irlmp_close_lsap (struct lsap_cb *self)
 
__u16 irlmp_service_to_hint (int service)
 
voidirlmp_register_service (__u16 hints)
 
int irlmp_unregister_service (void *handle)
 
voidirlmp_register_client (__u16 hint_mask, DISCOVERY_CALLBACK1 disco_clb, DISCOVERY_CALLBACK2 expir_clb, void *priv)
 
int irlmp_unregister_client (void *handle)
 
int irlmp_update_client (void *handle, __u16 hint_mask, DISCOVERY_CALLBACK1 disco_clb, DISCOVERY_CALLBACK2 expir_clb, void *priv)
 
void irlmp_register_link (struct irlap_cb *, __u32 saddr, notify_t *)
 
void irlmp_unregister_link (__u32 saddr)
 
int irlmp_connect_request (struct lsap_cb *, __u8 dlsap_sel, __u32 saddr, __u32 daddr, struct qos_info *, struct sk_buff *)
 
void irlmp_connect_indication (struct lsap_cb *self, struct sk_buff *skb)
 
int irlmp_connect_response (struct lsap_cb *, struct sk_buff *)
 
void irlmp_connect_confirm (struct lsap_cb *, struct sk_buff *)
 
struct lsap_cbirlmp_dup (struct lsap_cb *self, void *instance)
 
void irlmp_disconnect_indication (struct lsap_cb *self, LM_REASON reason, struct sk_buff *userdata)
 
int irlmp_disconnect_request (struct lsap_cb *, struct sk_buff *userdata)
 
void irlmp_discovery_confirm (hashbin_t *discovery_log, DISCOVERY_MODE mode)
 
void irlmp_discovery_request (int nslots)
 
discinfo_tirlmp_get_discoveries (int *pn, __u16 mask, int nslots)
 
void irlmp_do_expiry (void)
 
void irlmp_do_discovery (int nslots)
 
discovery_tirlmp_get_discovery_response (void)
 
void irlmp_discovery_expiry (discinfo_t *expiry, int number)
 
int irlmp_data_request (struct lsap_cb *, struct sk_buff *)
 
void irlmp_data_indication (struct lsap_cb *, struct sk_buff *)
 
int irlmp_udata_request (struct lsap_cb *, struct sk_buff *)
 
void irlmp_udata_indication (struct lsap_cb *, struct sk_buff *)
 
void irlmp_status_indication (struct lap_cb *, LINK_STATUS link, LOCK_STATUS lock)
 
void irlmp_flow_indication (struct lap_cb *self, LOCAL_FLOW flow)
 
LM_REASON irlmp_convert_lap_reason (LAP_REASON)
 

Variables

const charirlmp_reasons []
 
int sysctl_discovery_timeout
 
int sysctl_discovery_slots
 
int sysctl_discovery
 
int sysctl_lap_keepalive_time
 
struct irlmp_cbirlmp
 

Macro Definition Documentation

#define DEV_ADDR_ANY   0xffffffff

Definition at line 48 of file irlmp.h.

#define LM_IDLE_TIMEOUT   2*HZ /* 2 seconds for now */

Definition at line 57 of file irlmp.h.

#define LM_MAX_CONNECTIONS   10

Definition at line 55 of file irlmp.h.

#define LMP_CONTROL_HEADER   4 /* LMP_HEADER + opcode + parameter */

Definition at line 51 of file irlmp.h.

#define LMP_HEADER   2 /* Dest LSAP + Source LSAP */

Definition at line 50 of file irlmp.h.

#define LMP_MAX_HEADER   (LMP_CONTROL_HEADER+LAP_MAX_HEADER)

Definition at line 53 of file irlmp.h.

#define LMP_PID_HEADER   1 /* Used by Ultra */

Definition at line 52 of file irlmp.h.

#define LSAP_ANY   0xff

Definition at line 44 of file irlmp.h.

#define LSAP_CONNLESS   0x70 /* Connectionless LSAP, mostly used for Ultra */

Definition at line 46 of file irlmp.h.

#define LSAP_IAS   0x00

Definition at line 43 of file irlmp.h.

#define LSAP_MASK   0x7f

Definition at line 42 of file irlmp.h.

#define LSAP_MAX   0x6f /* 0x70-0x7f are reserved */

Definition at line 45 of file irlmp.h.

Typedef Documentation

typedef void(* DISCOVERY_CALLBACK1)(discinfo_t *, DISCOVERY_MODE, void *)

Definition at line 75 of file irlmp.h.

typedef void(* DISCOVERY_CALLBACK2)(discinfo_t *, DISCOVERY_MODE, void *)

Definition at line 77 of file irlmp.h.

Enumeration Type Documentation

enum SERVICE
Enumerator:
S_PNP 
S_PDA 
S_COMPUTER 
S_PRINTER 
S_MODEM 
S_FAX 
S_LAN 
S_TELEPHONY 
S_COMM 
S_OBEX 
S_ANY 
S_END 

Definition at line 59 of file irlmp.h.

Function Documentation

void irlmp_cleanup ( void  )

Definition at line 122 of file irlmp.c.

void irlmp_close_lsap ( struct lsap_cb self)

Definition at line 228 of file irlmp.c.

void irlmp_connect_confirm ( struct lsap_cb ,
struct sk_buff  
)

Definition at line 586 of file irlmp.c.

void irlmp_connect_indication ( struct lsap_cb self,
struct sk_buff skb 
)

Definition at line 513 of file irlmp.c.

int irlmp_connect_request ( struct lsap_cb ,
__u8  dlsap_sel,
__u32  saddr,
__u32  daddr,
struct qos_info ,
struct sk_buff  
)

Definition at line 370 of file irlmp.c.

int irlmp_connect_response ( struct lsap_cb ,
struct sk_buff  
)

Definition at line 556 of file irlmp.c.

LM_REASON irlmp_convert_lap_reason ( LAP_REASON  )

Definition at line 1821 of file irlmp.c.

void irlmp_data_indication ( struct lsap_cb ,
struct sk_buff  
)

Definition at line 1145 of file irlmp.c.

int irlmp_data_request ( struct lsap_cb ,
struct sk_buff  
)

Definition at line 1119 of file irlmp.c.

void irlmp_disconnect_indication ( struct lsap_cb self,
LM_REASON  reason,
struct sk_buff userdata 
)

Definition at line 745 of file irlmp.c.

int irlmp_disconnect_request ( struct lsap_cb ,
struct sk_buff userdata 
)

Definition at line 683 of file irlmp.c.

void irlmp_discovery_confirm ( hashbin_t discovery_log,
DISCOVERY_MODE  mode 
)

Definition at line 1012 of file irlmp.c.

void irlmp_discovery_expiry ( discinfo_t expiry,
int  number 
)

Definition at line 1046 of file irlmp.c.

void irlmp_discovery_request ( int  nslots)

Definition at line 892 of file irlmp.c.

void irlmp_do_discovery ( int  nslots)

Definition at line 840 of file irlmp.c.

void irlmp_do_expiry ( void  )

Definition at line 807 of file irlmp.c.

struct lsap_cb* irlmp_dup ( struct lsap_cb self,
void instance 
)
read

Definition at line 627 of file irlmp.c.

void irlmp_flow_indication ( struct lap_cb self,
LOCAL_FLOW  flow 
)

Definition at line 1325 of file irlmp.c.

discinfo_t* irlmp_get_discoveries ( int pn,
__u16  mask,
int  nslots 
)
read

Definition at line 922 of file irlmp.c.

discovery_t* irlmp_get_discovery_response ( void  )

Definition at line 1084 of file irlmp.c.

int irlmp_init ( void  )

Definition at line 77 of file irlmp.c.

struct lsap_cb* irlmp_open_lsap ( __u8  slsap,
notify_t notify,
__u8  pid 
)
read

Definition at line 147 of file irlmp.c.

void* irlmp_register_client ( __u16  hint_mask,
DISCOVERY_CALLBACK1  disco_clb,
DISCOVERY_CALLBACK2  expir_clb,
void priv 
)

Definition at line 1556 of file irlmp.c.

void irlmp_register_link ( struct irlap_cb ,
__u32  saddr,
notify_t  
)

Definition at line 281 of file irlmp.c.

void* irlmp_register_service ( __u16  hints)

Definition at line 1482 of file irlmp.c.

__u16 irlmp_service_to_hint ( int  service)

Definition at line 1465 of file irlmp.c.

void irlmp_status_indication ( struct lap_cb ,
LINK_STATUS  link,
LOCK_STATUS  lock 
)

Definition at line 1291 of file irlmp.c.

void irlmp_udata_indication ( struct lsap_cb ,
struct sk_buff  
)

Definition at line 1186 of file irlmp.c.

int irlmp_udata_request ( struct lsap_cb ,
struct sk_buff  
)

Definition at line 1160 of file irlmp.c.

int irlmp_unregister_client ( void handle)

Definition at line 1622 of file irlmp.c.

void irlmp_unregister_link ( __u32  saddr)

Definition at line 335 of file irlmp.c.

int irlmp_unregister_service ( void handle)

Definition at line 1511 of file irlmp.c.

int irlmp_update_client ( void handle,
__u16  hint_mask,
DISCOVERY_CALLBACK1  disco_clb,
DISCOVERY_CALLBACK2  expir_clb,
void priv 
)

Definition at line 1592 of file irlmp.c.

Variable Documentation

struct irlmp_cb* irlmp

Definition at line 52 of file irlmp.c.

const char* irlmp_reasons[]

Definition at line 61 of file irlmp.c.

int sysctl_discovery

Definition at line 55 of file irlmp.c.

int sysctl_discovery_slots

Definition at line 57 of file irlmp.c.

int sysctl_discovery_timeout

Definition at line 56 of file irlmp.c.

int sysctl_lap_keepalive_time

Definition at line 58 of file irlmp.c.