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

iriap.h File Reference

#include <linux/types.h>
#include <linux/skbuff.h>
#include <net/irda/qos.h>
#include <net/irda/iriap_event.h>
#include <net/irda/irias_object.h>
#include <net/irda/irqueue.h>
#include <net/irda/timer.h>

Include dependency graph for iriap.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define IAP_LST   0x80
#define IAP_ACK   0x40
#define IAS_SERVER   0
#define IAS_CLIENT   1
#define GET_INFO_BASE   0x01
#define GET_OBJECTS   0x02
#define GET_VALUE   0x03
#define GET_VALUE_BY_CLASS   0x04
#define GET_OBJECT_INFO   0x05
#define GET_ATTRIB_NAMES   0x06
#define IAS_SUCCESS   0
#define IAS_CLASS_UNKNOWN   1
#define IAS_ATTRIB_UNKNOWN   2
#define IAS_DISCONNECT   10

Typedefs

typedef void(* CONFIRM_CALLBACK )(int result, __u16 obj_id, struct ias_value *value, void *priv)

Functions

int iriap_init (void)
void iriap_cleanup (void)
iriap_cbiriap_open (__u8 slsap_sel, int mode, void *priv, CONFIRM_CALLBACK callback)
void iriap_close (struct iriap_cb *self)
int iriap_getvaluebyclass_request (struct iriap_cb *self, __u32 saddr, __u32 daddr, char *name, char *attr)
void iriap_getvaluebyclass_confirm (struct iriap_cb *self, struct sk_buff *skb)
void iriap_connect_request (struct iriap_cb *self)
void iriap_send_ack (struct iriap_cb *self)
void iriap_call_indication (struct iriap_cb *self, struct sk_buff *skb)
void iriap_register_server (void)
void iriap_watchdog_timer_expired (void *data)
static void iriap_start_watchdog_timer (struct iriap_cb *self, int timeout)


Define Documentation

#define GET_ATTRIB_NAMES   0x06
 

Definition at line 50 of file iriap.h.

#define GET_INFO_BASE   0x01
 

Definition at line 45 of file iriap.h.

Referenced by iriap_call_indication(), and iriap_data_indication().

#define GET_OBJECT_INFO   0x05
 

Definition at line 49 of file iriap.h.

#define GET_OBJECTS   0x02
 

Definition at line 46 of file iriap.h.

#define GET_VALUE   0x03
 

Definition at line 47 of file iriap.h.

#define GET_VALUE_BY_CLASS   0x04
 

Definition at line 48 of file iriap.h.

Referenced by iriap_call_indication(), iriap_data_indication(), iriap_getvaluebyclass_request(), and iriap_getvaluebyclass_response().

#define IAP_ACK   0x40
 

Definition at line 39 of file iriap.h.

Referenced by iriap_data_indication(), and iriap_send_ack().

#define IAP_LST   0x80
 

Definition at line 38 of file iriap.h.

Referenced by iriap_data_indication(), iriap_getvaluebyclass_request(), iriap_getvaluebyclass_response(), and iriap_send_ack().

#define IAS_ATTRIB_UNKNOWN   2
 

Definition at line 54 of file iriap.h.

Referenced by iriap_data_indication(), and iriap_getvaluebyclass_indication().

#define IAS_CLASS_UNKNOWN   1
 

Definition at line 53 of file iriap.h.

Referenced by iriap_data_indication(), and iriap_getvaluebyclass_indication().

#define IAS_CLIENT   1
 

Definition at line 42 of file iriap.h.

Referenced by ircomm_tty_state_idle(), ircomm_tty_state_query_parameters(), ircomm_tty_state_search(), irda_find_lsap_sel(), irda_getsockopt(), iriap_disconnect_indication(), iriap_open(), iriap_register_lsap(), and irlan_client_state_idle().

#define IAS_DISCONNECT   10
 

Definition at line 55 of file iriap.h.

Referenced by iriap_connect_request(), and iriap_disconnect_indication().

#define IAS_SERVER   0
 

Definition at line 41 of file iriap.h.

Referenced by iriap_connect_indication(), iriap_data_indication(), and iriap_init().

#define IAS_SUCCESS   0
 

Definition at line 52 of file iriap.h.

Referenced by ircomm_tty_getvalue_confirm(), irda_getvalue_confirm(), irda_simple_getvalue_confirm(), iriap_data_indication(), iriap_getvaluebyclass_confirm(), iriap_getvaluebyclass_indication(), and irlan_client_get_value_confirm().


Typedef Documentation

typedef void(* CONFIRM_CALLBACK)(int result, __u16 obj_id, struct ias_value *value, void *priv)
 

Definition at line 57 of file iriap.h.


Function Documentation

void iriap_call_indication struct iriap_cb self,
struct sk_buff skb
 

Definition at line 913 of file iriap.c.

References ASSERT, sk_buff::data, fp, GET_INFO_BASE, GET_VALUE_BY_CLASS, IAS_MAGIC, IRDA_DEBUG, iriap_getvaluebyclass_indication(), iriap_cb::magic, NULL, opcode, WARNING, and x80.

Referenced by state_r_receiving().

Here is the call graph for this function:

void iriap_cleanup void   ) 
 

Definition at line 141 of file iriap.c.

References __iriap_close(), __irias_delete_object(), hashbin_delete(), irlmp_unregister_service(), objects, and service_handle.

Here is the call graph for this function:

void iriap_close struct iriap_cb self  ) 
 

Definition at line 221 of file iriap.c.

References __iriap_close(), ASSERT, entry, hashbin_remove(), IAS_MAGIC, IRDA_DEBUG, irlmp_close_lsap(), iriap_cb::lsap, iriap_cb::magic, and NULL.

Referenced by __irlan_close(), ircomm_tty_detach_cable(), ircomm_tty_getvalue_confirm(), irda_destroy_socket(), irda_getvalue_confirm(), irda_shutdown(), irda_simple_getvalue_confirm(), iriap_disconnect_indication(), and irlan_client_get_value_confirm().

Here is the call graph for this function:

void iriap_connect_request struct iriap_cb self  ) 
 

Definition at line 719 of file iriap.c.

References ASSERT, iriap_cb::daddr, IAS_DISCONNECT, IAS_MAGIC, IRDA_DEBUG, irlmp_connect_request(), iriap_cb::lsap, LSAP_IAS, iriap_cb::magic, NULL, iriap_cb::priv, ret, and iriap_cb::saddr.

Referenced by state_s_disconnect().

Here is the call graph for this function:

void iriap_getvaluebyclass_confirm struct iriap_cb self,
struct sk_buff skb
 

Definition at line 433 of file iriap.c.

References ASSERT, be16_to_cpu, charset, iriap_cb::confirm, CS_ASCII, sk_buff::data, dev_kfree_skb, fp, get_unaligned, ias_charset_types, IAS_INTEGER, IAS_MAGIC, IAS_OCT_SEQ, IAS_STRING, IAS_SUCCESS, IRDA_DEBUG, iriap_disconnect_request(), irias_delete_value(), irias_new_integer_value(), irias_new_missing_value(), irias_new_octseq_value(), irias_new_string_value(), len, iriap_cb::magic, memcpy, n, NULL, iriap_cb::priv, ias_value::t, type, and value.

Referenced by iriap_data_indication().

Here is the call graph for this function:

int iriap_getvaluebyclass_request struct iriap_cb self,
__u32  saddr,
__u32  daddr,
char *  name,
char *  attr
 

Definition at line 376 of file iriap.c.

References ASSERT, sk_buff::data, ENOMEM, GET_VALUE_BY_CLASS, HZ, IAP_CALL_REQUEST_GVBC, IAP_LST, IAS_MAGIC, iriap_do_client_event(), iriap_start_watchdog_timer(), iriap_cb::magic, memcpy, NULL, and strlen.

Referenced by ircomm_tty_state_idle(), ircomm_tty_state_query_parameters(), ircomm_tty_state_search(), irda_find_lsap_sel(), irda_getsockopt(), and irlan_client_state_idle().

Here is the call graph for this function:

int iriap_init void   ) 
 

Definition at line 84 of file iriap.c.

References ENOMEM, hashbin_new(), HB_LOCAL, IAS_DEVICE_ID, IAS_SERVER, IRDA_DEBUG, iriap_open(), iriap_register_lsap(), irias_add_octseq_attrib(), irias_add_string_attrib(), irias_insert_object(), irias_new_object(), irlmp_register_service(), irlmp_service_to_hint(), LSAP_IAS, NULL, objects, S_COMPUTER, service_handle, and WARNING.

Referenced by irda_init().

Here is the call graph for this function:

struct iriap_cb* iriap_open __u8  slsap_sel,
int  mode,
void *  priv,
CONFIRM_CALLBACK  callback
 

Definition at line 154 of file iriap.c.

References hashbin_insert(), IAS_CLIENT, IAS_MAGIC, init_timer(), IRDA_DEBUG, iriap_next_call_state(), iriap_next_client_state(), iriap_next_r_connect_state(), iriap_next_server_state(), iriap_register_lsap(), kmalloc(), memset, NULL, R_DISCONNECT, R_WAITING, S_DISCONNECT, S_MAKE_CALL, and WARNING.

Referenced by ircomm_tty_state_idle(), ircomm_tty_state_query_parameters(), ircomm_tty_state_search(), irda_find_lsap_sel(), irda_getsockopt(), iriap_connect_indication(), iriap_init(), and irlan_client_state_idle().

Here is the call graph for this function:

void iriap_register_server void   ) 
 

void iriap_send_ack struct iriap_cb self  ) 
 

Definition at line 694 of file iriap.c.

References ASSERT, IAP_ACK, IAP_LST, IAS_MAGIC, IRDA_DEBUG, irlmp_data_request(), iriap_cb::lsap, iriap_cb::magic, iriap_cb::max_header_size, and NULL.

Here is the call graph for this function:

static void iriap_start_watchdog_timer struct iriap_cb self,
int  timeout
[inline, static]
 

Definition at line 110 of file iriap.h.

References irda_start_timer(), iriap_watchdog_timer_expired(), and iriap_cb::watchdog_timer.

Referenced by iriap_getvaluebyclass_request().

Here is the call graph for this function:

void iriap_watchdog_timer_expired void *  data  ) 
 

Definition at line 951 of file iriap.c.

References ASSERT, IAS_MAGIC, and NULL.

Referenced by iriap_start_watchdog_timer().