1 #ifndef _FWP_PARTICIPANT_H
2 #define _FWP_PARTICIPANT_H
4 #include "fwp_contract_table.h"
5 #include "fwp_endpoint.h"
6 #include "ul_gavlcust.h"
9 struct fwp_participant_id {
10 /*unsigned int address_family */
13 } fwp_participant_id_t;
16 /*struct fwp_participant_conf {*/
17 struct fwp_participant_info {
18 fwp_participant_id_t id;
19 unsigned int stream_id;
20 } fwp_participant_info_t;
27 struct fwp_participant {
28 fwp_participant_id_t id;
29 unsigned int stream_id;
30 fwp_endpoint_d_t epointd; /**< endpoint descriptor for communication*/
31 fwp_vres_d_t vresd; /**< service vres descriptor */
32 gavl_node_t participant_tree_node;
33 fwp_contract_table_t contract_table; /**< participant`s contract table */
34 /*fwp_resource_list resource_list; or
39 static inline fwp_participant_t*
40 fwp_participant_new(fwp_participant_info_t *participant_info)
42 fwp_participant_t *participant;
44 participant = (fwp_participant_t*) malloc(sizeof(fwp_participant_t));
48 participant->id = participant_info->id;
49 participant->stream_id = participant_info->stream_id;
51 fwp_contract_table_init(&participant->contract_table);
55 static inline void fwp_participant_delete(fwp_participant_t *participant)
60 #endif /*_FWP_PARTICIPANT_H */