network.h File Reference

#include <rsbac/types.h>
#include <rsbac/network_types.h>
#include <linux/net.h>
#include <linux/in.h>
#include <linux/un.h>
#include <net/sock.h>
#include <net/inet_sock.h>
#include <net/af_unix.h>
#include <net/route.h>

Go to the source code of this file.

Functions

int rsbac_ta_net_list_all_netdev (rsbac_list_ta_number_t ta_number, rsbac_netdev_id_t **id_pp)
static int rsbac_net_list_all_netdev (rsbac_netdev_id_t **id_pp)
__u32 rsbac_net_make_mask_u32 (__u8 valid_bits)
int rsbac_net_compare_data (void *data1, void *data2)
int rsbac_net_get_id (rsbac_list_ta_number_t ta_number, struct rsbac_net_description_t *desc_p, rsbac_net_temp_id_t *id_p)
int rsbac_ta_net_lookup_templates (rsbac_list_ta_number_t ta_number, struct rsbac_net_obj_desc_t *netobj_p, rsbac_net_temp_id_t *local_temp_p, rsbac_net_temp_id_t *remote_temp_p)
static int rsbac_net_lookup_templates (struct rsbac_net_obj_desc_t *netobj_p, rsbac_net_temp_id_t *local_temp_p, rsbac_net_temp_id_t *remote_temp_p)
int rsbac_ta_net_template (rsbac_list_ta_number_t ta_number, enum rsbac_net_temp_syscall_t call, rsbac_net_temp_id_t id, union rsbac_net_temp_syscall_data_t *data_p)
static int rsbac_net_template (enum rsbac_net_temp_syscall_t call, rsbac_net_temp_id_t id, union rsbac_net_temp_syscall_data_t *data_p)
int rsbac_ta_net_list_all_template (rsbac_list_ta_number_t ta_number, rsbac_net_temp_id_t **id_pp)
static int rsbac_net_list_all_template (rsbac_net_temp_id_t **id_pp)
int rsbac_ta_net_template_exist (rsbac_list_ta_number_t ta_number, rsbac_net_temp_id_t temp)
static int rsbac_net_template_exist (rsbac_net_temp_id_t temp)
int rsbac_net_remote_request (enum rsbac_adf_request_t request)


Function Documentation

int rsbac_net_compare_data void *  data1,
void *  data2
 

int rsbac_net_get_id rsbac_list_ta_number_t  ta_number,
struct rsbac_net_description_t desc_p,
rsbac_net_temp_id_t id_p
 

static int rsbac_net_list_all_netdev rsbac_netdev_id_t **  id_pp  )  [inline, static]
 

Definition at line 28 of file network.h.

References rsbac_ta_net_list_all_netdev().

00029   {
00030     return rsbac_ta_net_list_all_netdev(0, id_pp);
00031   }

static int rsbac_net_list_all_template rsbac_net_temp_id_t **  id_pp  )  [inline, static]
 

Definition at line 74 of file network.h.

References rsbac_ta_net_list_all_template().

00075   {
00076     return rsbac_ta_net_list_all_template(0, id_pp);
00077   }

static int rsbac_net_lookup_templates struct rsbac_net_obj_desc_t netobj_p,
rsbac_net_temp_id_t local_temp_p,
rsbac_net_temp_id_t remote_temp_p
[inline, static]
 

Definition at line 50 of file network.h.

References rsbac_ta_net_lookup_templates().

00054   {
00055     return rsbac_ta_net_lookup_templates(0, netobj_p, local_temp_p, remote_temp_p);
00056   }

__u32 rsbac_net_make_mask_u32 __u8  valid_bits  ) 
 

Definition at line 14 of file net_helpers.c.

00015   {
00016     __u32 res;
00017     __u8 res0 = 0;
00018     __u8 res1 = 0;
00019     __u8 res2 = 0;
00020     __u8 res3 = 0;
00021     int i;
00022 
00023     if(bits >=32)
00024       return (__u32) -1;
00025     if(!bits)
00026       return 0;
00027     if(bits >= 24)
00028       {
00029         bits -= 24;
00030         res0 = 255;
00031         res1 = 255;
00032         res2 = 255;
00033         for(i=0; i<bits; i++)
00034           res3 |= 1 << (7-i);
00035       }
00036     else
00037     if(bits >= 16)
00038       {
00039         bits -= 16;
00040         res0 = 255;
00041         res1 = 255;
00042         res3 = 0;
00043         for(i=0; i<bits; i++)
00044           res2 |= 1 << (7-i);
00045       }
00046     else
00047     if(bits >= 8)
00048       {
00049         bits -= 8;
00050         res0 = 255;
00051         res2 = 0;
00052         res3 = 0;
00053         for(i=0; i<bits; i++)
00054           res1 |= 1 << (7-i);
00055       }
00056     else
00057       {
00058         res1 = 0;
00059         res2 = 0;
00060         res3 = 0;
00061         for(i=0; i<bits; i++)
00062           res0 |= 1 << (7-i);
00063       }
00064     res = (res3 << 24) | (res2 << 16) | (res1 << 8) | res0;
00065     return res;
00066   }

int rsbac_net_remote_request enum rsbac_adf_request_t  request  ) 
 

Referenced by check_comp_rc(), rsbac_acl_get_single_right(), and rsbac_adf_request_int().

static int rsbac_net_template enum rsbac_net_temp_syscall_t  call,
rsbac_net_temp_id_t  id,
union rsbac_net_temp_syscall_data_t data_p
[inline, static]
 

Definition at line 64 of file network.h.

References rsbac_ta_net_template().

00067   {
00068     return rsbac_ta_net_template(0, call, id, data_p);
00069   }

static int rsbac_net_template_exist rsbac_net_temp_id_t  temp  )  [inline, static]
 

Definition at line 81 of file network.h.

References rsbac_ta_net_template_exist().

Referenced by rsbac_acl_get_single_right(), and sys_rsbac_net_template().

00082   {
00083     return rsbac_ta_net_template_exist(0, temp);
00084   }

int rsbac_ta_net_list_all_netdev rsbac_list_ta_number_t  ta_number,
rsbac_netdev_id_t **  id_pp
 

Referenced by rsbac_net_list_all_netdev(), and sys_rsbac_net_list_all_netdev().

int rsbac_ta_net_list_all_template rsbac_list_ta_number_t  ta_number,
rsbac_net_temp_id_t **  id_pp
 

Referenced by rsbac_net_list_all_template(), and sys_rsbac_net_list_all_template().

int rsbac_ta_net_lookup_templates rsbac_list_ta_number_t  ta_number,
struct rsbac_net_obj_desc_t netobj_p,
rsbac_net_temp_id_t local_temp_p,
rsbac_net_temp_id_t remote_temp_p
 

Referenced by rsbac_acl_get_rights(), rsbac_acl_get_single_right(), and rsbac_net_lookup_templates().

int rsbac_ta_net_template rsbac_list_ta_number_t  ta_number,
enum rsbac_net_temp_syscall_t  call,
rsbac_net_temp_id_t  id,
union rsbac_net_temp_syscall_data_t data_p
 

Referenced by rsbac_net_template(), and sys_rsbac_net_template().

int rsbac_ta_net_template_exist rsbac_list_ta_number_t  ta_number,
rsbac_net_temp_id_t  temp
 

Referenced by rsbac_acl_add_to_acl_entry(), rsbac_acl_get_mask(), rsbac_acl_get_rights(), rsbac_acl_get_tlist(), rsbac_acl_remove_acl_entry(), rsbac_acl_remove_from_acl_entry(), rsbac_acl_set_acl_entry(), rsbac_acl_set_mask(), and rsbac_net_template_exist().


Generated on Sun May 21 14:30:59 2006 for RSBAC by  doxygen 1.4.2