Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- diff --git a/src/bus/policy.c b/src/bus/policy.c
- index 91bea60..3286d07 100644
- --- a/src/bus/policy.c
- +++ b/src/bus/policy.c
- @@ -538,8 +538,7 @@ int policy_registry_import(PolicyRegistry *registry, CDVar *v) {
- bool apparmor;
- int r;
- - /* XXX: provide the type */
- - c_dvar_read(v, "<(", NULL);
- + c_dvar_read(v, "<(", policy_type);
- c_dvar_read(v, "[");
- diff --git a/src/bus/policy.h b/src/bus/policy.h
- index f9fd144..aca3cbb 100644
- --- a/src/bus/policy.h
- +++ b/src/bus/policy.h
- @@ -5,6 +5,7 @@
- */
- #include <c-dvar.h>
- +#include <c-dvar-type.h>
- #include <c-list.h>
- #include <c-rbtree.h>
- #include <c-stdaux.h>
- @@ -23,6 +24,136 @@ typedef struct PolicySnapshot PolicySnapshot;
- typedef struct PolicyVerdict PolicyVerdict;
- typedef struct PolicyXmit PolicyXmit;
- +#define C_DVAR_T_TUPLE10(_type1, _type2, _type3, _type4, _type5, _type6, _type7, _type8, _type9, _type_l) \
- + C_DVAR_T_TUPLE( \
- + C_DVAR_T_TUPLE_APPEND( \
- + C_DVAR_T_TUPLE_APPEND( \
- + C_DVAR_T_TUPLE_APPEND( \
- + C_DVAR_T_TUPLE_APPEND( \
- + C_DVAR_T_TUPLE_APPEND( \
- + C_DVAR_T_TUPLE_APPEND( \
- + C_DVAR_T_TUPLE_APPEND( \
- + C_DVAR_T_TUPLE_APPEND( \
- + C_DVAR_T_TUPLE_APPEND( \
- + _type1, \
- + _type2), \
- + _type3), \
- + _type4), \
- + _type5), \
- + _type6), \
- + _type7), \
- + _type8), \
- + _type9), \
- + _type_l) \
- + )
- +
- +
- +static const CDVarType policy_type[] = {
- + C_DVAR_T_INIT(
- + C_DVAR_T_TUPLE4(
- + C_DVAR_T_ARRAY(
- + C_DVAR_T_TUPLE2(
- + C_DVAR_T_u,
- + C_DVAR_T_TUPLE5(
- + C_DVAR_T_b,
- + C_DVAR_T_t,
- + C_DVAR_T_ARRAY(
- + C_DVAR_T_TUPLE4(
- + C_DVAR_T_b,
- + C_DVAR_T_t,
- + C_DVAR_T_b,
- + C_DVAR_T_s
- + )
- + ),
- + C_DVAR_T_ARRAY(
- + C_DVAR_T_TUPLE10(
- + C_DVAR_T_b,
- + C_DVAR_T_t,
- + C_DVAR_T_s,
- + C_DVAR_T_s,
- + C_DVAR_T_s,
- + C_DVAR_T_s,
- + C_DVAR_T_u,
- + C_DVAR_T_u,
- + C_DVAR_T_t,
- + C_DVAR_T_t
- + )
- + ),
- + C_DVAR_T_ARRAY(
- + C_DVAR_T_TUPLE10(
- + C_DVAR_T_b,
- + C_DVAR_T_t,
- + C_DVAR_T_s,
- + C_DVAR_T_s,
- + C_DVAR_T_s,
- + C_DVAR_T_s,
- + C_DVAR_T_u,
- + C_DVAR_T_u,
- + C_DVAR_T_t,
- + C_DVAR_T_t
- + )
- + )
- + )
- + )
- + ),
- + C_DVAR_T_ARRAY(
- + C_DVAR_T_TUPLE4(
- + C_DVAR_T_b,
- + C_DVAR_T_u,
- + C_DVAR_T_u,
- + C_DVAR_T_TUPLE5(
- + C_DVAR_T_b,
- + C_DVAR_T_t,
- + C_DVAR_T_ARRAY(
- + C_DVAR_T_TUPLE4(
- + C_DVAR_T_b,
- + C_DVAR_T_t,
- + C_DVAR_T_b,
- + C_DVAR_T_s
- + )
- + ),
- + C_DVAR_T_ARRAY(
- + C_DVAR_T_TUPLE10(
- + C_DVAR_T_b,
- + C_DVAR_T_t,
- + C_DVAR_T_s,
- + C_DVAR_T_s,
- + C_DVAR_T_s,
- + C_DVAR_T_s,
- + C_DVAR_T_u,
- + C_DVAR_T_u,
- + C_DVAR_T_t,
- + C_DVAR_T_t
- + )
- + ),
- + C_DVAR_T_ARRAY(
- + C_DVAR_T_TUPLE10(
- + C_DVAR_T_b,
- + C_DVAR_T_t,
- + C_DVAR_T_s,
- + C_DVAR_T_s,
- + C_DVAR_T_s,
- + C_DVAR_T_s,
- + C_DVAR_T_u,
- + C_DVAR_T_u,
- + C_DVAR_T_t,
- + C_DVAR_T_t
- + )
- + )
- + )
- + )
- + ),
- + C_DVAR_T_ARRAY(
- + C_DVAR_T_TUPLE2(
- + C_DVAR_T_s,
- + C_DVAR_T_s
- + )
- + ),
- + C_DVAR_T_b
- + )
- + )
- +};
- +
- enum {
- _POLICY_E_SUCCESS,
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement