X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Fhelper%2Fhelper-nfacct-rule.h;h=97c9b5e2fda63c7f8933a44098e3a25cfecf5780;hb=64fb306678517e3968a1ef50c4041a993959aeee;hp=89eb27c040b3e5bb933c54d42d983925a1d58014;hpb=1e43de3cef3def735d5bf304900d34154f3cf2bc;p=platform%2Fcore%2Fconnectivity%2Fstc-manager.git diff --git a/src/helper/helper-nfacct-rule.h b/src/helper/helper-nfacct-rule.h index 89eb27c..97c9b5e 100755 --- a/src/helper/helper-nfacct-rule.h +++ b/src/helper/helper-nfacct-rule.h @@ -31,6 +31,7 @@ typedef enum { NFACCT_COUNTER_UNKNOWN, NFACCT_COUNTER_IN = (1 << 1), NFACCT_COUNTER_OUT = (1 << 2), + NFACCT_COUNTER_FORWARD = (1 << 3), NFACCT_COUNTER_LAST_ELEM } nfacct_rule_direction; @@ -53,7 +54,11 @@ typedef enum { NFACCT_COUNTER, NFACCT_WARN, NFACCT_BLOCK, + NFACCT_ALLOW, NFACCT_TETH_COUNTER, + NFACCT_TETH_WARN, + NFACCT_TETH_BLOCK, + NFACCT_TETH_ALLOW, NFACCT_RULE_LAST_ELEM, } nfacct_rule_intend; @@ -61,9 +66,17 @@ typedef enum { NFACCT_TYPE_UNKNOWN, NFACCT_TYPE_IPV4, NFACCT_TYPE_IPV6, + NFACCT_TYPE_IPV4_IPV6, NFACCT_TYPE_LAST_ELEM } nfacct_rule_iptype; +typedef enum { + NFACCT_IPRANGE_TYPE_NONE, + NFACCT_IPRANGE_TYPE_SINGLE, + NFACCT_IPRANGE_TYPE_MASK, + NFACCT_IPRANGE_TYPE_RANGE, +} nfacct_rule_iprange_type; + enum nfnl_acct_flags { NFACCT_F_QUOTA_PKTS = (1 << 0), NFACCT_F_QUOTA_BYTES = (1 << 1), @@ -77,7 +90,7 @@ enum nfnl_acct_flags { * * and inherited nfacct_rule_counter and nfacct_rule_restriction * with additional field: - * quota, quota_id, roaming, rst_state + * quota, quota_id, roaming, rstn_state * * But ANSI C doesn't support inheritance. */ @@ -92,17 +105,24 @@ struct nfacct_rule { nfacct_rule_direction iotype; nfacct_rule_intend intend; nfacct_rule_jump jump; /* in most cases jump is evalutation based on intend, but not always */ - stc_restriction_state_e rst_state; + stc_app_state_e app_state; + stc_rstn_state_e rstn_state; nfacct_rule_iptype iptype; + nfacct_rule_iprange_type src_iprange_type; + nfacct_rule_iprange_type dst_iprange_type; + char *src_ip1; + char *src_ip2; + char *dst_ip1; + char *dst_ip2; struct counter_arg *carg; stc_error_e(*iptables_rule)(struct nfacct_rule *counter); - int64_t quota; + long long int quota; int quota_id; stc_roaming_type_e roaming; - int64_t send_limit; - int64_t rcv_limit; + long long int send_limit; + long long int rcv_limit; }; typedef struct nfacct_rule nfacct_rule_s;