Home | History | Annotate | Download | only in sepol
      1 #ifndef _SEPOL_IBENDPORT_RECORD_H_
      2 #define _SEPOL_IBENDPORT_RECORD_H_
      3 
      4 #include <stddef.h>
      5 #include <sepol/context_record.h>
      6 #include <sepol/handle.h>
      7 
      8 #ifdef __cplusplus
      9 extern "C" {
     10 #endif
     11 
     12 struct sepol_ibendport;
     13 struct sepol_ibendport_key;
     14 typedef struct sepol_ibendport sepol_ibendport_t;
     15 typedef struct sepol_ibendport_key sepol_ibendport_key_t;
     16 
     17 extern int sepol_ibendport_compare(const sepol_ibendport_t *ibendport,
     18 				   const sepol_ibendport_key_t *key);
     19 
     20 extern int sepol_ibendport_compare2(const sepol_ibendport_t *ibendport,
     21 				    const sepol_ibendport_t *ibendport2);
     22 
     23 extern int sepol_ibendport_key_create(sepol_handle_t *handle,
     24 				      const char *ibdev_name,
     25 				      int port,
     26 				      sepol_ibendport_key_t **key_ptr);
     27 
     28 extern void sepol_ibendport_key_unpack(const sepol_ibendport_key_t *key,
     29 				       const char **ibdev_name,
     30 				       int *port);
     31 
     32 extern int sepol_ibendport_alloc_ibdev_name(sepol_handle_t *handle,
     33 					    char **ibdev_name);
     34 
     35 extern int sepol_ibendport_key_extract(sepol_handle_t *handle,
     36 				       const sepol_ibendport_t *ibendport,
     37 				       sepol_ibendport_key_t **key_ptr);
     38 
     39 extern void sepol_ibendport_key_free(sepol_ibendport_key_t *key);
     40 
     41 extern void sepol_ibendport_set_port(sepol_ibendport_t *ibendport, int port);
     42 
     43 extern int sepol_ibendport_get_port(const sepol_ibendport_t *ibendport);
     44 
     45 extern int sepol_ibendport_get_ibdev_name(sepol_handle_t *handle,
     46 					  const sepol_ibendport_t *ibendport,
     47 					  char **ibdev_name);
     48 
     49 extern int sepol_ibendport_set_ibdev_name(sepol_handle_t *handle,
     50 					  sepol_ibendport_t *ibendport,
     51 					  const char *ibdev_name);
     52 
     53 extern sepol_context_t *sepol_ibendport_get_con(const sepol_ibendport_t *ibendport);
     54 
     55 extern int sepol_ibendport_set_con(sepol_handle_t *handle,
     56 				   sepol_ibendport_t *ibendport,
     57 				   sepol_context_t *con);
     58 
     59 extern int sepol_ibendport_create(sepol_handle_t *handle,
     60 				  sepol_ibendport_t **ibendport_ptr);
     61 
     62 extern int sepol_ibendport_clone(sepol_handle_t *handle,
     63 				 const sepol_ibendport_t *ibendport,
     64 				 sepol_ibendport_t **ibendport_ptr);
     65 
     66 extern void sepol_ibendport_free(sepol_ibendport_t *ibendport);
     67 
     68 #ifdef __cplusplus
     69 }
     70 #endif
     71 
     72 #endif
     73