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

irias_object.c File Reference

#include <linux/string.h>
#include <linux/socket.h>
#include <net/irda/irda.h>
#include <net/irda/irmod.h>
#include <net/irda/irias_object.h>

Include dependency graph for irias_object.c:

Go to the source code of this file.

Functions

char * strdup (char *str)
ias_objectirias_new_object (char *name, int id)
void __irias_delete_attrib (struct ias_attrib *attrib)
void __irias_delete_object (struct ias_object *obj)
int irias_delete_object (struct ias_object *obj)
void irias_insert_object (struct ias_object *obj)
ias_objectirias_find_object (char *name)
ias_attribirias_find_attrib (struct ias_object *obj, char *name)
void irias_add_attrib (struct ias_object *obj, struct ias_attrib *attrib)
int irias_object_change_attribute (char *obj_name, char *attrib_name, struct ias_value *new_value)
void irias_add_integer_attrib (struct ias_object *obj, char *name, int value)
void irias_add_octseq_attrib (struct ias_object *obj, char *name, __u8 *octets, int len)
void irias_add_string_attrib (struct ias_object *obj, char *name, char *value)
ias_valueirias_new_integer_value (int integer)
ias_valueirias_new_string_value (char *string)
ias_valueirias_new_octseq_value (__u8 *octseq, int len)
ias_valueirias_new_missing_value (void)
void irias_delete_value (struct ias_value *value)

Variables

hashbin_tobjects = NULL
ias_value missing = { IAS_MISSING, 0, 0, {0}}


Function Documentation

void __irias_delete_attrib struct ias_attrib attrib  ) 
 

Definition at line 98 of file irias_object.c.

References ASSERT, IAS_ATTRIB_MAGIC, irias_delete_value(), kfree(), ias_attrib::magic, ias_attrib::name, NULL, and ias_attrib::value.

Referenced by __irias_delete_object().

Here is the call graph for this function:

void __irias_delete_object struct ias_object obj  ) 
 

Definition at line 112 of file irias_object.c.

References __irias_delete_attrib(), ASSERT, ias_object::attribs, hashbin_delete(), IAS_OBJECT_MAGIC, kfree(), ias_object::magic, ias_object::name, and NULL.

Referenced by iriap_cleanup(), and irias_delete_object().

Here is the call graph for this function:

void irias_add_attrib struct ias_object obj,
struct ias_attrib attrib
 

Definition at line 204 of file irias_object.c.

References ASSERT, hashbin_insert(), IAS_ATTRIB_MAGIC, IAS_OBJECT_MAGIC, ias_attrib::magic, and NULL.

Referenced by irias_add_integer_attrib(), irias_add_octseq_attrib(), and irias_add_string_attrib().

Here is the call graph for this function:

void irias_add_integer_attrib struct ias_object obj,
char *  name,
int  value
 

Definition at line 265 of file irias_object.c.

References ASSERT, IAS_ATTRIB_MAGIC, IAS_OBJECT_MAGIC, irias_add_attrib(), irias_new_integer_value(), kmalloc(), ias_attrib::magic, ias_object::magic, memset, ias_attrib::name, NULL, strdup(), ias_attrib::value, and WARNING.

Referenced by ircomm_tty_ias_register(), irda_bind(), irda_setsockopt(), and irlan_ias_register().

Here is the call graph for this function:

void irias_add_octseq_attrib struct ias_object obj,
char *  name,
__u8 octets,
int  len
 

Definition at line 297 of file irias_object.c.

References ASSERT, IAS_ATTRIB_MAGIC, IAS_OBJECT_MAGIC, irias_add_attrib(), irias_new_octseq_value(), kmalloc(), ias_attrib::magic, ias_object::magic, memset, ias_attrib::name, NULL, strdup(), ias_attrib::value, and WARNING.

Referenced by ircomm_tty_ias_register(), irda_setsockopt(), and iriap_init().

Here is the call graph for this function:

void irias_add_string_attrib struct ias_object obj,
char *  name,
char *  value
 

Definition at line 331 of file irias_object.c.

References ASSERT, IAS_ATTRIB_MAGIC, IAS_OBJECT_MAGIC, irias_add_attrib(), irias_new_string_value(), kmalloc(), ias_attrib::magic, ias_object::magic, memset, ias_attrib::name, NULL, strdup(), ias_attrib::value, and WARNING.

Referenced by irda_setsockopt(), iriap_init(), and irlan_ias_register().

Here is the call graph for this function:

int irias_delete_object struct ias_object obj  ) 
 

Definition at line 134 of file irias_object.c.

References __irias_delete_object(), ASSERT, hashbin_remove(), IAS_OBJECT_MAGIC, ias_object::magic, ias_object::name, and NULL.

Referenced by ircomm_tty_detach_cable(), and irda_destroy_socket().

Here is the call graph for this function:

void irias_delete_value struct ias_value value  ) 
 

Definition at line 459 of file irias_object.c.

References ASSERT, IAS_INTEGER, IAS_MISSING, IAS_OCT_SEQ, IAS_STRING, IRDA_DEBUG, kfree(), NULL, ias_value::t, and ias_value::type.

Referenced by __irias_delete_attrib(), ircomm_tty_getvalue_confirm(), irda_getvalue_confirm(), irda_simple_getvalue_confirm(), iriap_getvaluebyclass_confirm(), irias_object_change_attribute(), and irlan_client_get_value_confirm().

Here is the call graph for this function:

struct ias_attrib* irias_find_attrib struct ias_object obj,
char *  name
 

Definition at line 183 of file irias_object.c.

References ASSERT, ias_object::attribs, hashbin_find(), IAS_OBJECT_MAGIC, ias_object::magic, and NULL.

Referenced by irda_getsockopt(), irda_setsockopt(), and iriap_getvaluebyclass_indication().

Here is the call graph for this function:

struct ias_object* irias_find_object char *  name  ) 
 

Definition at line 170 of file irias_object.c.

References ASSERT, hashbin_find(), and NULL.

Referenced by irda_getsockopt(), irda_setsockopt(), iriap_getvaluebyclass_indication(), and irlan_ias_register().

Here is the call graph for this function:

void irias_insert_object struct ias_object obj  ) 
 

Definition at line 156 of file irias_object.c.

References ASSERT, hashbin_insert(), IAS_OBJECT_MAGIC, ias_object::magic, and NULL.

Referenced by ircomm_tty_ias_register(), irda_bind(), irda_setsockopt(), iriap_init(), and irlan_ias_register().

Here is the call graph for this function:

struct ias_value* irias_new_integer_value int  integer  ) 
 

Definition at line 363 of file irias_object.c.

References IAS_INTEGER, kmalloc(), ias_value::len, memset, NULL, ias_value::t, ias_value::type, value, and WARNING.

Referenced by iriap_getvaluebyclass_confirm(), irias_add_integer_attrib(), and irlan_ias_register().

Here is the call graph for this function:

struct ias_value* irias_new_missing_value void   ) 
 

Definition at line 436 of file irias_object.c.

References IAS_MISSING, kmalloc(), ias_value::len, memset, NULL, ias_value::type, value, and WARNING.

Referenced by iriap_getvaluebyclass_confirm().

Here is the call graph for this function:

struct ias_object* irias_new_object char *  name,
int  id
 

Definition at line 69 of file irias_object.c.

References ias_object::attribs, hashbin_new(), HB_LOCAL, IAS_OBJECT_MAGIC, ias_object::id, IRDA_DEBUG, kmalloc(), ias_object::magic, memset, ias_object::name, NULL, and strdup().

Referenced by ircomm_tty_ias_register(), irda_bind(), irda_setsockopt(), iriap_init(), and irlan_ias_register().

Here is the call graph for this function:

struct ias_value* irias_new_octseq_value __u8 octseq,
int  len
 

Definition at line 413 of file irias_object.c.

References IAS_OCT_SEQ, kmalloc(), ias_value::len, memcpy, memset, NULL, ias_value::t, ias_value::type, value, and WARNING.

Referenced by iriap_getvaluebyclass_confirm(), and irias_add_octseq_attrib().

Here is the call graph for this function:

struct ias_value* irias_new_string_value char *  string  ) 
 

Definition at line 387 of file irias_object.c.

References ias_value::charset, CS_ASCII, IAS_STRING, kmalloc(), ias_value::len, memset, NULL, strdup(), strlen, ias_value::t, ias_value::type, value, and WARNING.

Referenced by iriap_getvaluebyclass_confirm(), and irias_add_string_attrib().

Here is the call graph for this function:

int irias_object_change_attribute char *  obj_name,
char *  attrib_name,
struct ias_value new_value
 

Definition at line 221 of file irias_object.c.

References ias_object::attribs, hashbin_find(), IRDA_DEBUG, irias_delete_value(), NULL, ias_value::type, ias_attrib::value, and WARNING.

Referenced by irlan_ias_register().

Here is the call graph for this function:

char* strdup char *  str  ) 
 

Definition at line 45 of file irias_object.c.

References ASSERT, kmalloc(), NULL, strcpy, and strlen.

Here is the call graph for this function:


Variable Documentation

struct ias_value missing = { IAS_MISSING, 0, 0, {0}}
 

Definition at line 37 of file irias_object.c.

Referenced by csum_partial_copy_from_user(), and iriap_getvaluebyclass_indication().

hashbin_t* objects = NULL
 

Definition at line 32 of file irias_object.c.

Referenced by iriap_cleanup(), iriap_init(), and main().