reg_main.c File Reference

#include <linux/types.h>
#include <linux/string.h>
#include <linux/init.h>
#include <linux/kernel.h>
#include <linux/config.h>
#include <linux/module.h>
#include <asm/uaccess.h>
#include <linux/smp_lock.h>
#include <rsbac/types.h>
#include <rsbac/reg.h>
#include <rsbac/reg_main.h>
#include <rsbac/aci.h>
#include <rsbac/aci_data_structures.h>
#include <rsbac/adf.h>
#include <rsbac/adf_main.h>
#include <rsbac/error.h>
#include <rsbac/helpers.h>
#include <rsbac/getname.h>
#include <rsbac/proc_fs.h>
#include <rsbac/rkmem.h>

Go to the source code of this file.

Functions

static struct rsbac_reg_list_item_t * lookup_item (rsbac_reg_handle_t handle)
static struct rsbac_reg_sc_list_item_t * lookup_sc_item_reg (rsbac_reg_handle_t handle)
static struct rsbac_reg_sc_list_item_t * lookup_sc_item_dis (rsbac_reg_handle_t handle)
static struct rsbac_reg_list_item_t * add_item (struct rsbac_reg_entry_t entry)
static struct rsbac_reg_sc_list_item_t * add_sc_item (struct rsbac_reg_syscall_entry_t entry)
static void remove_item (rsbac_reg_handle_t handle)
static void remove_sc_item (rsbac_reg_handle_t handle)
void __init rsbac_reg_init (void)
enum rsbac_adf_req_ret_t rsbac_adf_request_reg (enum rsbac_adf_request_t request, rsbac_pid_t caller_pid, enum rsbac_target_t target, union rsbac_target_id_t tid, enum rsbac_attribute_t attr, union rsbac_attribute_value_t attr_val, rsbac_uid_t owner)
int rsbac_adf_set_attr_reg (enum rsbac_adf_request_t request, rsbac_pid_t caller_pid, enum rsbac_target_t target, union rsbac_target_id_t tid, enum rsbac_target_t new_target, union rsbac_target_id_t new_tid, enum rsbac_attribute_t attr, union rsbac_attribute_value_t attr_val, rsbac_uid_t owner)
int rsbac_mount_reg (kdev_t kdev)
int rsbac_umount_reg (kdev_t kdev)
int rsbac_check_reg (int correct, int check_inode)
 EXPORT_SYMBOL (rsbac_reg_register)
rsbac_reg_handle_t rsbac_reg_register (rsbac_version_t version, struct rsbac_reg_entry_t entry)
 EXPORT_SYMBOL (rsbac_reg_switch)
int rsbac_reg_switch (rsbac_reg_handle_t handle, rsbac_boolean_t value)
 EXPORT_SYMBOL (rsbac_reg_unregister)
int rsbac_reg_unregister (rsbac_reg_handle_t handle)
rsbac_reg_handle_t rsbac_reg_register_syscall (rsbac_version_t version, struct rsbac_reg_syscall_entry_t entry)
int rsbac_reg_unregister_syscall (rsbac_reg_handle_t handle)
int rsbac_reg_syscall (rsbac_reg_handle_t handle, void *arg)

Variables

static struct rsbac_reg_list_head_t list_head
static struct rsbac_reg_sc_list_head_t sc_list_head


Function Documentation

static struct rsbac_reg_list_item_t* add_item struct rsbac_reg_entry_t  entry  )  [static]
 

Definition at line 96 of file reg_main.c.

References list_head, NULL, rsbac_kmalloc(), and RSBAC_REG_NAME_LEN.

Referenced by read_list(), rsbac_reg_register(), and rsbac_ta_list_add_ttl().

static struct rsbac_reg_sc_list_item_t* add_sc_item struct rsbac_reg_syscall_entry_t  entry  )  [static]
 

Definition at line 137 of file reg_main.c.

References rsbac_reg_syscall_entry_t::dispatcher_handle, rsbac_reg_syscall_entry_t::name, NULL, rsbac_reg_syscall_entry_t::registration_handle, rsbac_kmalloc(), RSBAC_REG_NAME_LEN, sc_list_head, and rsbac_reg_syscall_entry_t::syscall_func.

Referenced by rsbac_reg_register_syscall().

EXPORT_SYMBOL rsbac_reg_unregister   ) 
 

EXPORT_SYMBOL rsbac_reg_switch   ) 
 

EXPORT_SYMBOL rsbac_reg_register   ) 
 

static struct rsbac_reg_list_item_t* lookup_item rsbac_reg_handle_t  handle  )  [static]
 

Definition at line 45 of file reg_main.c.

References list_head.

Referenced by remove_item(), rsbac_reg_register(), rsbac_reg_switch(), rsbac_reg_unregister(), rsbac_ta_list_add_ttl(), rsbac_ta_list_exist(), rsbac_ta_list_get_data_ttl(), rsbac_ta_list_get_next_desc(), and rsbac_ta_list_remove().

static struct rsbac_reg_sc_list_item_t* lookup_sc_item_dis rsbac_reg_handle_t  handle  )  [static]
 

Definition at line 79 of file reg_main.c.

References sc_list_head.

Referenced by rsbac_reg_register_syscall(), and rsbac_reg_syscall().

static struct rsbac_reg_sc_list_item_t* lookup_sc_item_reg rsbac_reg_handle_t  handle  )  [static]
 

Definition at line 62 of file reg_main.c.

References sc_list_head.

Referenced by remove_sc_item(), rsbac_reg_register_syscall(), and rsbac_reg_unregister_syscall().

static void remove_item rsbac_reg_handle_t  handle  )  [static]
 

Definition at line 171 of file reg_main.c.

References list_head, lookup_item(), NULL, and rsbac_kfree().

Referenced by rsbac_reg_unregister(), and rsbac_ta_list_remove().

static void remove_sc_item rsbac_reg_handle_t  handle  )  [static]
 

Definition at line 214 of file reg_main.c.

References lookup_sc_item_reg(), NULL, rsbac_kfree(), and sc_list_head.

Referenced by rsbac_reg_unregister_syscall().

enum rsbac_adf_req_ret_t rsbac_adf_request_reg enum rsbac_adf_request_t  request,
rsbac_pid_t  caller_pid,
enum rsbac_target_t  target,
union rsbac_target_id_t  tid,
enum rsbac_attribute_t  attr,
union rsbac_attribute_value_t  attr_val,
rsbac_uid_t  owner
 

Definition at line 464 of file reg_main.c.

References adf_and_plus(), DO_NOT_CARE, and list_head.

Referenced by rsbac_adf_request_int().

int rsbac_adf_set_attr_reg enum rsbac_adf_request_t  request,
rsbac_pid_t  caller_pid,
enum rsbac_target_t  target,
union rsbac_target_id_t  tid,
enum rsbac_target_t  new_target,
union rsbac_target_id_t  new_tid,
enum rsbac_attribute_t  attr,
union rsbac_attribute_value_t  attr_val,
rsbac_uid_t  owner
 

Definition at line 499 of file reg_main.c.

References list_head.

Referenced by rsbac_adf_set_attr().

int rsbac_check_reg int  correct,
int  check_inode
 

Definition at line 678 of file reg_main.c.

References list_head.

Referenced by sys_rsbac_check().

int rsbac_mount_reg kdev_t  kdev  ) 
 

Definition at line 570 of file reg_main.c.

References list_head.

Referenced by rsbac_mount().

void __init rsbac_reg_init void   ) 
 

Definition at line 412 of file reg_main.c.

References list_head, NULL, proc_rsbac_root_p, rsbac_is_initialized(), RSBAC_REG_PROC_NAME, and sc_list_head.

Referenced by rsbac_init_adf().

rsbac_reg_handle_t rsbac_reg_register rsbac_version_t  version,
struct rsbac_reg_entry_t  entry
 

Definition at line 710 of file reg_main.c.

References add_item(), rsbac_reg_entry_t::handle, list_head, lookup_item(), rsbac_reg_entry_t::mount_func, rsbac_reg_entry_t::name, rsbac_reg_entry_t::need_overwrite_func, rsbac_reg_entry_t::request_func, RSBAC_ECOULDNOTADDITEM, RSBAC_EEXISTS, RSBAC_EINVALIDVALUE, RSBAC_EINVALIDVERSION, RSBAC_REG_NAME_LEN, RSBAC_REG_VERSION, rsbac_reg_entry_t::set_attr_func, rsbac_reg_entry_t::umount_func, and rsbac_reg_entry_t::write_func.

Referenced by init_module().

rsbac_reg_handle_t rsbac_reg_register_syscall rsbac_version_t  version,
struct rsbac_reg_syscall_entry_t  entry
 

Definition at line 888 of file reg_main.c.

References add_sc_item(), rsbac_reg_syscall_entry_t::dispatcher_handle, lookup_sc_item_dis(), lookup_sc_item_reg(), rsbac_reg_syscall_entry_t::name, rsbac_reg_syscall_entry_t::registration_handle, RSBAC_ECOULDNOTADDITEM, RSBAC_EEXISTS, RSBAC_EINVALIDVALUE, RSBAC_EINVALIDVERSION, RSBAC_REG_NAME_LEN, RSBAC_REG_VERSION, sc_list_head, and rsbac_reg_syscall_entry_t::syscall_func.

Referenced by init_module().

int rsbac_reg_switch rsbac_reg_handle_t  handle,
rsbac_boolean_t  value
 

Definition at line 787 of file reg_main.c.

References FALSE, list_head, lookup_item(), RSBAC_EINVALIDTARGET, RSBAC_EINVALIDVALUE, and TRUE.

int rsbac_reg_syscall rsbac_reg_handle_t  handle,
void *  arg
 

Definition at line 1015 of file reg_main.c.

References lookup_sc_item_dis(), RSBAC_EINVALIDTARGET, and sc_list_head.

Referenced by sys_rsbac_reg().

int rsbac_reg_unregister rsbac_reg_handle_t  handle  ) 
 

Definition at line 835 of file reg_main.c.

References list_head, lookup_item(), remove_item(), RSBAC_EINVALIDTARGET, and RSBAC_EINVALIDVALUE.

Referenced by cleanup_module(), and init_module().

int rsbac_reg_unregister_syscall rsbac_reg_handle_t  handle  ) 
 

Definition at line 975 of file reg_main.c.

References lookup_sc_item_reg(), remove_sc_item(), RSBAC_EINVALIDTARGET, RSBAC_EINVALIDVALUE, and sc_list_head.

Referenced by cleanup_module(), and init_module().

int rsbac_umount_reg kdev_t  kdev  ) 
 

Definition at line 594 of file reg_main.c.

References list_head.

Referenced by rsbac_umount().


Variable Documentation

struct rsbac_reg_list_head_t list_head [static]
 

Definition at line 37 of file reg_main.c.

Referenced by add_item(), lookup_item(), remove_item(), rsbac_adf_request_reg(), rsbac_adf_set_attr_reg(), rsbac_check_reg(), rsbac_mount_reg(), rsbac_reg_init(), rsbac_reg_register(), rsbac_reg_switch(), rsbac_reg_unregister(), and rsbac_umount_reg().

struct rsbac_reg_sc_list_head_t sc_list_head [static]
 

Definition at line 38 of file reg_main.c.

Referenced by add_sc_item(), lookup_sc_item_dis(), lookup_sc_item_reg(), remove_sc_item(), rsbac_reg_init(), rsbac_reg_register_syscall(), rsbac_reg_syscall(), and rsbac_reg_unregister_syscall().


Generated on Fri Jun 17 09:45:29 2005 for RSBAC by  doxygen 1.4.2