diff --git a/home/nipa/nipa_out/1013187/ynl/old-code/nl80211-user.c b/home/nipa/nipa_out/1013187/ynl/new-code/nl80211-user.c index 82d190756beb..853b8d6e7400 100644 --- a/home/nipa/nipa_out/1013187/ynl/old-code/nl80211-user.c +++ b/home/nipa/nipa_out/1013187/ynl/new-code/nl80211-user.c @@ -1558,6 +1558,10 @@ int nl80211_iftype_attrs_parse(struct ynl_parse_arg *yarg, void nl80211_if_combination_attributes_free(struct nl80211_if_combination_attributes *obj) { + unsigned int i; + + for (i = 0; i < obj->_count.limits; i++) + nl80211_iface_limit_attributes_free(&obj->limits[i]); free(obj->limits); } @@ -1639,6 +1643,10 @@ int nl80211_if_combination_attributes_parse(struct ynl_parse_arg *yarg, void nl80211_sar_attributes_free(struct nl80211_sar_attributes *obj) { + unsigned int i; + + for (i = 0; i < obj->_count.specs; i++) + nl80211_sar_specs_free(&obj->specs[i]); free(obj->specs); } @@ -1694,6 +1702,8 @@ int nl80211_sar_attributes_parse(struct ynl_parse_arg *yarg, void nl80211_frequency_attrs_free(struct nl80211_frequency_attrs *obj) { + unsigned int i; + free(obj->dfs_time); free(obj->no_ht40_minus); free(obj->no_ht40_plus); @@ -1704,6 +1714,8 @@ void nl80211_frequency_attrs_free(struct nl80211_frequency_attrs *obj) free(obj->ir_concurrent); free(obj->no_20mhz); free(obj->no_10mhz); + for (i = 0; i < obj->_count.wmm; i++) + nl80211_wmm_attrs_free(&obj->wmm[i]); free(obj->wmm); free(obj->no_he); free(obj->_1mhz); @@ -1998,10 +2010,18 @@ int nl80211_frequency_attrs_parse(struct ynl_parse_arg *yarg, void nl80211_band_attrs_free(struct nl80211_band_attrs *obj) { + unsigned int i; + + for (i = 0; i < obj->_count.freqs; i++) + nl80211_frequency_attrs_free(&obj->freqs[i]); free(obj->freqs); + for (i = 0; i < obj->_count.rates; i++) + nl80211_bitrate_attrs_free(&obj->rates[i]); free(obj->rates); free(obj->ht_mcs_set); free(obj->vht_mcs_set); + for (i = 0; i < obj->_count.iftype_data; i++) + nl80211_iftype_data_attrs_free(&obj->iftype_data[i]); free(obj->iftype_data); free(obj->edmg_channels); free(obj->edmg_bw_config); @@ -2260,11 +2280,15 @@ void nl80211_get_wiphy_req_free(struct nl80211_get_wiphy_req *req) void nl80211_get_wiphy_rsp_free(struct nl80211_get_wiphy_rsp *rsp) { + unsigned int i; + free(rsp->cipher_suites); free(rsp->ext_capa); free(rsp->ext_capa_mask); free(rsp->ext_features); free(rsp->ht_capability_mask); + for (i = 0; i < rsp->_count.interface_combinations; i++) + nl80211_if_combination_attributes_free(&rsp->interface_combinations[i]); free(rsp->interface_combinations); free(rsp->mac); free(rsp->max_num_akm_suites); @@ -3075,6 +3099,8 @@ void nl80211_get_wiphy_rsp_list_free(struct nl80211_get_wiphy_rsp_list *rsp) struct nl80211_get_wiphy_rsp_list *next = rsp; while ((void *)next != YNL_LIST_END) { + unsigned int i; + rsp = next; next = rsp->next; @@ -3083,6 +3109,8 @@ void nl80211_get_wiphy_rsp_list_free(struct nl80211_get_wiphy_rsp_list *rsp) free(rsp->obj.ext_capa_mask); free(rsp->obj.ext_features); free(rsp->obj.ht_capability_mask); + for (i = 0; i < rsp->obj._count.interface_combinations; i++) + nl80211_if_combination_attributes_free(&rsp->obj.interface_combinations[i]); free(rsp->obj.interface_combinations); free(rsp->obj.mac); free(rsp->obj.max_num_akm_suites); diff --git a/home/nipa/nipa_out/1013187/ynl/old-code/nlctrl-user.c b/home/nipa/nipa_out/1013187/ynl/new-code/nlctrl-user.c index f0004696b458..b225041df063 100644 --- a/home/nipa/nipa_out/1013187/ynl/old-code/nlctrl-user.c +++ b/home/nipa/nipa_out/1013187/ynl/new-code/nlctrl-user.c @@ -325,8 +325,14 @@ void nlctrl_getfamily_req_free(struct nlctrl_getfamily_req *req) void nlctrl_getfamily_rsp_free(struct nlctrl_getfamily_rsp *rsp) { + unsigned int i; + free(rsp->family_name); + for (i = 0; i < rsp->_count.mcast_groups; i++) + nlctrl_mcast_group_attrs_free(&rsp->mcast_groups[i]); free(rsp->mcast_groups); + for (i = 0; i < rsp->_count.ops; i++) + nlctrl_op_attrs_free(&rsp->ops[i]); free(rsp->ops); free(rsp); } @@ -468,11 +474,17 @@ void nlctrl_getfamily_list_free(struct nlctrl_getfamily_list *rsp) struct nlctrl_getfamily_list *next = rsp; while ((void *)next != YNL_LIST_END) { + unsigned int i; + rsp = next; next = rsp->next; free(rsp->obj.family_name); + for (i = 0; i < rsp->obj._count.mcast_groups; i++) + nlctrl_mcast_group_attrs_free(&rsp->obj.mcast_groups[i]); free(rsp->obj.mcast_groups); + for (i = 0; i < rsp->obj._count.ops; i++) + nlctrl_op_attrs_free(&rsp->obj.ops[i]); free(rsp->obj.ops); free(rsp); } diff --git a/home/nipa/nipa_out/1013187/ynl/old-code/rt-link-user.c b/home/nipa/nipa_out/1013187/ynl/new-code/rt-link-user.c index c27bada1ed36..7fe455c61452 100644 --- a/home/nipa/nipa_out/1013187/ynl/old-code/rt-link-user.c +++ b/home/nipa/nipa_out/1013187/ynl/new-code/rt-link-user.c @@ -3993,7 +3993,11 @@ int rt_link_af_spec_attrs_parse(struct ynl_parse_arg *yarg, void rt_link_link_offload_xstats_free(struct rt_link_link_offload_xstats *obj) { + unsigned int i; + free(obj->cpu_hit); + for (i = 0; i < obj->_count.hw_s_info; i++) + rt_link_hw_s_info_one_free(&obj->hw_s_info[i]); free(obj->hw_s_info); free(obj->l3_stats); } diff --git a/home/nipa/nipa_out/1013187/ynl/old-code/tc-user.c b/home/nipa/nipa_out/1013187/ynl/new-code/tc-user.c index 8ba3706e9504..ff8ad2a76a7d 100644 --- a/home/nipa/nipa_out/1013187/ynl/old-code/tc-user.c +++ b/home/nipa/nipa_out/1013187/ynl/new-code/tc-user.c @@ -6161,6 +6161,10 @@ int tc_netem_attrs_parse(struct ynl_parse_arg *yarg, void tc_cake_stats_attrs_free(struct tc_cake_stats_attrs *obj) { + unsigned int i; + + for (i = 0; i < obj->_count.tin_stats; i++) + tc_cake_tin_stats_attrs_free(&obj->tin_stats[i]); free(obj->tin_stats); } @@ -7376,7 +7380,11 @@ int tc_act_attrs_parse(struct ynl_parse_arg *yarg, const struct nlattr *nested, void tc_basic_attrs_free(struct tc_basic_attrs *obj) { + unsigned int i; + tc_ematch_attrs_free(&obj->ematches); + for (i = 0; i < obj->_count.act; i++) + tc_act_attrs_free(&obj->act[i]); free(obj->act); tc_police_attrs_free(&obj->police); free(obj->pcnt); @@ -7396,7 +7404,7 @@ int tc_basic_attrs_put(struct nlmsghdr *nlh, unsigned int attr_type, tc_ematch_attrs_put(nlh, TCA_BASIC_EMATCHES, &obj->ematches); array = ynl_attr_nest_start(nlh, TCA_BASIC_ACT); for (i = 0; i < obj->_count.act; i++) - tc_act_attrs_put(nlh, i, &obj->act[i]); + tc_act_attrs_put(nlh, i + 1, &obj->act[i]); ynl_attr_nest_end(nlh, array); if (obj->_present.police) tc_police_attrs_put(nlh, TCA_BASIC_POLICE, &obj->police); @@ -7489,6 +7497,10 @@ int tc_basic_attrs_parse(struct ynl_parse_arg *yarg, void tc_bpf_attrs_free(struct tc_bpf_attrs *obj) { + unsigned int i; + + for (i = 0; i < obj->_count.act; i++) + tc_act_attrs_free(&obj->act[i]); free(obj->act); tc_police_attrs_free(&obj->police); free(obj->ops); @@ -7644,6 +7656,10 @@ int tc_bpf_attrs_parse(struct ynl_parse_arg *yarg, const struct nlattr *nested) void tc_cgroup_attrs_free(struct tc_cgroup_attrs *obj) { + unsigned int i; + + for (i = 0; i < obj->_count.act; i++) + tc_act_attrs_free(&obj->act[i]); free(obj->act); tc_police_attrs_free(&obj->police); free(obj->ematches); @@ -7659,7 +7675,7 @@ int tc_cgroup_attrs_put(struct nlmsghdr *nlh, unsigned int attr_type, nest = ynl_attr_nest_start(nlh, attr_type); array = ynl_attr_nest_start(nlh, TCA_CGROUP_ACT); for (i = 0; i < obj->_count.act; i++) - tc_act_attrs_put(nlh, i, &obj->act[i]); + tc_act_attrs_put(nlh, i + 1, &obj->act[i]); ynl_attr_nest_end(nlh, array); if (obj->_present.police) tc_police_attrs_put(nlh, TCA_CGROUP_POLICE, &obj->police); @@ -7735,7 +7751,11 @@ int tc_cgroup_attrs_parse(struct ynl_parse_arg *yarg, void tc_flower_attrs_free(struct tc_flower_attrs *obj) { + unsigned int i; + free(obj->indev); + for (i = 0; i < obj->_count.act; i++) + tc_act_attrs_free(&obj->act[i]); free(obj->act); free(obj->key_eth_dst); free(obj->key_eth_dst_mask); @@ -7775,7 +7795,7 @@ int tc_flower_attrs_put(struct nlmsghdr *nlh, unsigned int attr_type, ynl_attr_put_str(nlh, TCA_FLOWER_INDEV, obj->indev); array = ynl_attr_nest_start(nlh, TCA_FLOWER_ACT); for (i = 0; i < obj->_count.act; i++) - tc_act_attrs_put(nlh, i, &obj->act[i]); + tc_act_attrs_put(nlh, i + 1, &obj->act[i]); ynl_attr_nest_end(nlh, array); if (obj->_len.key_eth_dst) ynl_attr_put(nlh, TCA_FLOWER_KEY_ETH_DST, obj->key_eth_dst, obj->_len.key_eth_dst); @@ -8670,8 +8690,12 @@ int tc_flower_attrs_parse(struct ynl_parse_arg *yarg, void tc_fw_attrs_free(struct tc_fw_attrs *obj) { + unsigned int i; + tc_police_attrs_free(&obj->police); free(obj->indev); + for (i = 0; i < obj->_count.act; i++) + tc_act_attrs_free(&obj->act[i]); free(obj->act); } @@ -8691,7 +8715,7 @@ int tc_fw_attrs_put(struct nlmsghdr *nlh, unsigned int attr_type, ynl_attr_put_str(nlh, TCA_FW_INDEV, obj->indev); array = ynl_attr_nest_start(nlh, TCA_FW_ACT); for (i = 0; i < obj->_count.act; i++) - tc_act_attrs_put(nlh, i, &obj->act[i]); + tc_act_attrs_put(nlh, i + 1, &obj->act[i]); ynl_attr_nest_end(nlh, array); if (obj->_present.mask) ynl_attr_put_u32(nlh, TCA_FW_MASK, obj->mask); @@ -8775,6 +8799,10 @@ int tc_fw_attrs_parse(struct ynl_parse_arg *yarg, const struct nlattr *nested) void tc_matchall_attrs_free(struct tc_matchall_attrs *obj) { + unsigned int i; + + for (i = 0; i < obj->_count.act; i++) + tc_act_attrs_free(&obj->act[i]); free(obj->act); free(obj->pcnt); } @@ -8791,7 +8819,7 @@ int tc_matchall_attrs_put(struct nlmsghdr *nlh, unsigned int attr_type, ynl_attr_put_u32(nlh, TCA_MATCHALL_CLASSID, obj->classid); array = ynl_attr_nest_start(nlh, TCA_MATCHALL_ACT); for (i = 0; i < obj->_count.act; i++) - tc_act_attrs_put(nlh, i, &obj->act[i]); + tc_act_attrs_put(nlh, i + 1, &obj->act[i]); ynl_attr_nest_end(nlh, array); if (obj->_present.flags) ynl_attr_put_u32(nlh, TCA_MATCHALL_FLAGS, obj->flags); @@ -8871,7 +8899,11 @@ int tc_matchall_attrs_parse(struct ynl_parse_arg *yarg, void tc_route_attrs_free(struct tc_route_attrs *obj) { + unsigned int i; + tc_police_attrs_free(&obj->police); + for (i = 0; i < obj->_count.act; i++) + tc_act_attrs_free(&obj->act[i]); free(obj->act); } @@ -8895,7 +8927,7 @@ int tc_route_attrs_put(struct nlmsghdr *nlh, unsigned int attr_type, tc_police_attrs_put(nlh, TCA_ROUTE4_POLICE, &obj->police); array = ynl_attr_nest_start(nlh, TCA_ROUTE4_ACT); for (i = 0; i < obj->_count.act; i++) - tc_act_attrs_put(nlh, i, &obj->act[i]); + tc_act_attrs_put(nlh, i + 1, &obj->act[i]); ynl_attr_nest_end(nlh, array); ynl_attr_nest_end(nlh, nest); @@ -8978,8 +9010,12 @@ int tc_route_attrs_parse(struct ynl_parse_arg *yarg, void tc_u32_attrs_free(struct tc_u32_attrs *obj) { + unsigned int i; + free(obj->sel); tc_police_attrs_free(&obj->police); + for (i = 0; i < obj->_count.act; i++) + tc_act_attrs_free(&obj->act[i]); free(obj->act); free(obj->indev); free(obj->pcnt); @@ -9008,7 +9044,7 @@ int tc_u32_attrs_put(struct nlmsghdr *nlh, unsigned int attr_type, tc_police_attrs_put(nlh, TCA_U32_POLICE, &obj->police); array = ynl_attr_nest_start(nlh, TCA_U32_ACT); for (i = 0; i < obj->_count.act; i++) - tc_act_attrs_put(nlh, i, &obj->act[i]); + tc_act_attrs_put(nlh, i + 1, &obj->act[i]); ynl_attr_nest_end(nlh, array); if (obj->_len.indev) ynl_attr_put_str(nlh, TCA_U32_INDEV, obj->indev); diff --git a/home/nipa/nipa_out/1013187/ynl/old-code/tc-user.h b/home/nipa/nipa_out/1013187/ynl/new-code/tc-user.h index a83019fbdac5..ebecafdd59b5 100644 --- a/home/nipa/nipa_out/1013187/ynl/old-code/tc-user.h +++ b/home/nipa/nipa_out/1013187/ynl/new-code/tc-user.h @@ -2985,9 +2985,13 @@ __tc_act_attrs_set_stats_app_cake_tin_stats(struct tc_act_attrs *obj, struct tc_cake_tin_stats_attrs *tin_stats, unsigned int n_tin_stats) { + unsigned int i; + obj->_present.stats = 1; obj->stats._present.app = 1; obj->stats.app._present.cake = 1; + for (i = 0; i < obj->stats.app.cake._count.tin_stats; i++) + tc_cake_tin_stats_attrs_free(&obj->stats.app.cake.tin_stats[i]); free(obj->stats.app.cake.tin_stats); obj->stats.app.cake.tin_stats = tin_stats; obj->stats.app.cake._count.tin_stats = n_tin_stats; @@ -3823,8 +3827,12 @@ __tc_newqdisc_req_set_options_basic_act(struct tc_newqdisc_req *req, struct tc_act_attrs *act, unsigned int n_act) { + unsigned int i; + req->_present.options = 1; req->options._present.basic = 1; + for (i = 0; i < req->options.basic._count.act; i++) + tc_act_attrs_free(&req->options.basic.act[i]); free(req->options.basic.act); req->options.basic.act = act; req->options.basic._count.act = n_act; @@ -3954,8 +3962,12 @@ __tc_newqdisc_req_set_options_bpf_act(struct tc_newqdisc_req *req, struct tc_act_attrs *act, unsigned int n_act) { + unsigned int i; + req->_present.options = 1; req->options._present.bpf = 1; + for (i = 0; i < req->options.bpf._count.act; i++) + tc_act_attrs_free(&req->options.bpf.act[i]); free(req->options.bpf.act); req->options.bpf.act = act; req->options.bpf._count.act = n_act; @@ -4327,8 +4339,12 @@ __tc_newqdisc_req_set_options_cgroup_act(struct tc_newqdisc_req *req, struct tc_act_attrs *act, unsigned int n_act) { + unsigned int i; + req->_present.options = 1; req->options._present.cgroup = 1; + for (i = 0; i < req->options.cgroup._count.act; i++) + tc_act_attrs_free(&req->options.cgroup.act[i]); free(req->options.cgroup.act); req->options.cgroup.act = act; req->options.cgroup._count.act = n_act; @@ -4923,8 +4939,12 @@ __tc_newqdisc_req_set_options_flower_act(struct tc_newqdisc_req *req, struct tc_act_attrs *act, unsigned int n_act) { + unsigned int i; + req->_present.options = 1; req->options._present.flower = 1; + for (i = 0; i < req->options.flower._count.act; i++) + tc_act_attrs_free(&req->options.flower.act[i]); free(req->options.flower.act); req->options.flower.act = act; req->options.flower._count.act = n_act; @@ -6714,8 +6734,12 @@ __tc_newqdisc_req_set_options_fw_act(struct tc_newqdisc_req *req, struct tc_act_attrs *act, unsigned int n_act) { + unsigned int i; + req->_present.options = 1; req->options._present.fw = 1; + for (i = 0; i < req->options.fw._count.act; i++) + tc_act_attrs_free(&req->options.fw.act[i]); free(req->options.fw.act); req->options.fw.act = act; req->options.fw._count.act = n_act; @@ -6970,8 +6994,12 @@ __tc_newqdisc_req_set_options_matchall_act(struct tc_newqdisc_req *req, struct tc_act_attrs *act, unsigned int n_act) { + unsigned int i; + req->_present.options = 1; req->options._present.matchall = 1; + for (i = 0; i < req->options.matchall._count.act; i++) + tc_act_attrs_free(&req->options.matchall.act[i]); free(req->options.matchall.act); req->options.matchall.act = act; req->options.matchall._count.act = n_act; @@ -7516,8 +7544,12 @@ __tc_newqdisc_req_set_options_route_act(struct tc_newqdisc_req *req, struct tc_act_attrs *act, unsigned int n_act) { + unsigned int i; + req->_present.options = 1; req->options._present.route = 1; + for (i = 0; i < req->options.route._count.act; i++) + tc_act_attrs_free(&req->options.route.act[i]); free(req->options.route.act); req->options.route.act = act; req->options.route._count.act = n_act; @@ -7932,8 +7964,12 @@ __tc_newqdisc_req_set_options_u32_act(struct tc_newqdisc_req *req, struct tc_act_attrs *act, unsigned int n_act) { + unsigned int i; + req->_present.options = 1; req->options._present.u32 = 1; + for (i = 0; i < req->options.u32._count.act; i++) + tc_act_attrs_free(&req->options.u32.act[i]); free(req->options.u32.act); req->options.u32.act = act; req->options.u32._count.act = n_act; @@ -8228,8 +8264,12 @@ __tc_newtclass_req_set_options_basic_act(struct tc_newtclass_req *req, struct tc_act_attrs *act, unsigned int n_act) { + unsigned int i; + req->_present.options = 1; req->options._present.basic = 1; + for (i = 0; i < req->options.basic._count.act; i++) + tc_act_attrs_free(&req->options.basic.act[i]); free(req->options.basic.act); req->options.basic.act = act; req->options.basic._count.act = n_act; @@ -8359,8 +8399,12 @@ __tc_newtclass_req_set_options_bpf_act(struct tc_newtclass_req *req, struct tc_act_attrs *act, unsigned int n_act) { + unsigned int i; + req->_present.options = 1; req->options._present.bpf = 1; + for (i = 0; i < req->options.bpf._count.act; i++) + tc_act_attrs_free(&req->options.bpf.act[i]); free(req->options.bpf.act); req->options.bpf.act = act; req->options.bpf._count.act = n_act; @@ -8734,8 +8778,12 @@ __tc_newtclass_req_set_options_cgroup_act(struct tc_newtclass_req *req, struct tc_act_attrs *act, unsigned int n_act) { + unsigned int i; + req->_present.options = 1; req->options._present.cgroup = 1; + for (i = 0; i < req->options.cgroup._count.act; i++) + tc_act_attrs_free(&req->options.cgroup.act[i]); free(req->options.cgroup.act); req->options.cgroup.act = act; req->options.cgroup._count.act = n_act; @@ -9333,8 +9381,12 @@ __tc_newtclass_req_set_options_flower_act(struct tc_newtclass_req *req, struct tc_act_attrs *act, unsigned int n_act) { + unsigned int i; + req->_present.options = 1; req->options._present.flower = 1; + for (i = 0; i < req->options.flower._count.act; i++) + tc_act_attrs_free(&req->options.flower.act[i]); free(req->options.flower.act); req->options.flower.act = act; req->options.flower._count.act = n_act; @@ -11125,8 +11177,12 @@ __tc_newtclass_req_set_options_fw_act(struct tc_newtclass_req *req, struct tc_act_attrs *act, unsigned int n_act) { + unsigned int i; + req->_present.options = 1; req->options._present.fw = 1; + for (i = 0; i < req->options.fw._count.act; i++) + tc_act_attrs_free(&req->options.fw.act[i]); free(req->options.fw.act); req->options.fw.act = act; req->options.fw._count.act = n_act; @@ -11381,8 +11437,12 @@ __tc_newtclass_req_set_options_matchall_act(struct tc_newtclass_req *req, struct tc_act_attrs *act, unsigned int n_act) { + unsigned int i; + req->_present.options = 1; req->options._present.matchall = 1; + for (i = 0; i < req->options.matchall._count.act; i++) + tc_act_attrs_free(&req->options.matchall.act[i]); free(req->options.matchall.act); req->options.matchall.act = act; req->options.matchall._count.act = n_act; @@ -11932,8 +11992,12 @@ __tc_newtclass_req_set_options_route_act(struct tc_newtclass_req *req, struct tc_act_attrs *act, unsigned int n_act) { + unsigned int i; + req->_present.options = 1; req->options._present.route = 1; + for (i = 0; i < req->options.route._count.act; i++) + tc_act_attrs_free(&req->options.route.act[i]); free(req->options.route.act); req->options.route.act = act; req->options.route._count.act = n_act; @@ -12349,8 +12413,12 @@ __tc_newtclass_req_set_options_u32_act(struct tc_newtclass_req *req, struct tc_act_attrs *act, unsigned int n_act) { + unsigned int i; + req->_present.options = 1; req->options._present.u32 = 1; + for (i = 0; i < req->options.u32._count.act; i++) + tc_act_attrs_free(&req->options.u32.act[i]); free(req->options.u32.act); req->options.u32.act = act; req->options.u32._count.act = n_act; @@ -12605,8 +12673,12 @@ __tc_newtfilter_req_set_options_basic_act(struct tc_newtfilter_req *req, struct tc_act_attrs *act, unsigned int n_act) { + unsigned int i; + req->_present.options = 1; req->options._present.basic = 1; + for (i = 0; i < req->options.basic._count.act; i++) + tc_act_attrs_free(&req->options.basic.act[i]); free(req->options.basic.act); req->options.basic.act = act; req->options.basic._count.act = n_act; @@ -12736,8 +12808,12 @@ __tc_newtfilter_req_set_options_bpf_act(struct tc_newtfilter_req *req, struct tc_act_attrs *act, unsigned int n_act) { + unsigned int i; + req->_present.options = 1; req->options._present.bpf = 1; + for (i = 0; i < req->options.bpf._count.act; i++) + tc_act_attrs_free(&req->options.bpf.act[i]); free(req->options.bpf.act); req->options.bpf.act = act; req->options.bpf._count.act = n_act; @@ -13116,8 +13192,12 @@ __tc_newtfilter_req_set_options_cgroup_act(struct tc_newtfilter_req *req, struct tc_act_attrs *act, unsigned int n_act) { + unsigned int i; + req->_present.options = 1; req->options._present.cgroup = 1; + for (i = 0; i < req->options.cgroup._count.act; i++) + tc_act_attrs_free(&req->options.cgroup.act[i]); free(req->options.cgroup.act); req->options.cgroup.act = act; req->options.cgroup._count.act = n_act; @@ -13717,8 +13797,12 @@ __tc_newtfilter_req_set_options_flower_act(struct tc_newtfilter_req *req, struct tc_act_attrs *act, unsigned int n_act) { + unsigned int i; + req->_present.options = 1; req->options._present.flower = 1; + for (i = 0; i < req->options.flower._count.act; i++) + tc_act_attrs_free(&req->options.flower.act[i]); free(req->options.flower.act); req->options.flower.act = act; req->options.flower._count.act = n_act; @@ -15509,8 +15593,12 @@ __tc_newtfilter_req_set_options_fw_act(struct tc_newtfilter_req *req, struct tc_act_attrs *act, unsigned int n_act) { + unsigned int i; + req->_present.options = 1; req->options._present.fw = 1; + for (i = 0; i < req->options.fw._count.act; i++) + tc_act_attrs_free(&req->options.fw.act[i]); free(req->options.fw.act); req->options.fw.act = act; req->options.fw._count.act = n_act; @@ -15766,8 +15854,12 @@ __tc_newtfilter_req_set_options_matchall_act(struct tc_newtfilter_req *req, struct tc_act_attrs *act, unsigned int n_act) { + unsigned int i; + req->_present.options = 1; req->options._present.matchall = 1; + for (i = 0; i < req->options.matchall._count.act; i++) + tc_act_attrs_free(&req->options.matchall.act[i]); free(req->options.matchall.act); req->options.matchall.act = act; req->options.matchall._count.act = n_act; @@ -16322,8 +16414,12 @@ __tc_newtfilter_req_set_options_route_act(struct tc_newtfilter_req *req, struct tc_act_attrs *act, unsigned int n_act) { + unsigned int i; + req->_present.options = 1; req->options._present.route = 1; + for (i = 0; i < req->options.route._count.act; i++) + tc_act_attrs_free(&req->options.route.act[i]); free(req->options.route.act); req->options.route.act = act; req->options.route._count.act = n_act; @@ -16741,8 +16837,12 @@ __tc_newtfilter_req_set_options_u32_act(struct tc_newtfilter_req *req, struct tc_act_attrs *act, unsigned int n_act) { + unsigned int i; + req->_present.options = 1; req->options._present.u32 = 1; + for (i = 0; i < req->options.u32._count.act; i++) + tc_act_attrs_free(&req->options.u32.act[i]); free(req->options.u32.act); req->options.u32.act = act; req->options.u32._count.act = n_act; @@ -17093,8 +17193,12 @@ __tc_newchain_req_set_options_basic_act(struct tc_newchain_req *req, struct tc_act_attrs *act, unsigned int n_act) { + unsigned int i; + req->_present.options = 1; req->options._present.basic = 1; + for (i = 0; i < req->options.basic._count.act; i++) + tc_act_attrs_free(&req->options.basic.act[i]); free(req->options.basic.act); req->options.basic.act = act; req->options.basic._count.act = n_act; @@ -17224,8 +17328,12 @@ __tc_newchain_req_set_options_bpf_act(struct tc_newchain_req *req, struct tc_act_attrs *act, unsigned int n_act) { + unsigned int i; + req->_present.options = 1; req->options._present.bpf = 1; + for (i = 0; i < req->options.bpf._count.act; i++) + tc_act_attrs_free(&req->options.bpf.act[i]); free(req->options.bpf.act); req->options.bpf.act = act; req->options.bpf._count.act = n_act; @@ -17597,8 +17705,12 @@ __tc_newchain_req_set_options_cgroup_act(struct tc_newchain_req *req, struct tc_act_attrs *act, unsigned int n_act) { + unsigned int i; + req->_present.options = 1; req->options._present.cgroup = 1; + for (i = 0; i < req->options.cgroup._count.act; i++) + tc_act_attrs_free(&req->options.cgroup.act[i]); free(req->options.cgroup.act); req->options.cgroup.act = act; req->options.cgroup._count.act = n_act; @@ -18193,8 +18305,12 @@ __tc_newchain_req_set_options_flower_act(struct tc_newchain_req *req, struct tc_act_attrs *act, unsigned int n_act) { + unsigned int i; + req->_present.options = 1; req->options._present.flower = 1; + for (i = 0; i < req->options.flower._count.act; i++) + tc_act_attrs_free(&req->options.flower.act[i]); free(req->options.flower.act); req->options.flower.act = act; req->options.flower._count.act = n_act; @@ -19984,8 +20100,12 @@ __tc_newchain_req_set_options_fw_act(struct tc_newchain_req *req, struct tc_act_attrs *act, unsigned int n_act) { + unsigned int i; + req->_present.options = 1; req->options._present.fw = 1; + for (i = 0; i < req->options.fw._count.act; i++) + tc_act_attrs_free(&req->options.fw.act[i]); free(req->options.fw.act); req->options.fw.act = act; req->options.fw._count.act = n_act; @@ -20240,8 +20360,12 @@ __tc_newchain_req_set_options_matchall_act(struct tc_newchain_req *req, struct tc_act_attrs *act, unsigned int n_act) { + unsigned int i; + req->_present.options = 1; req->options._present.matchall = 1; + for (i = 0; i < req->options.matchall._count.act; i++) + tc_act_attrs_free(&req->options.matchall.act[i]); free(req->options.matchall.act); req->options.matchall.act = act; req->options.matchall._count.act = n_act; @@ -20786,8 +20910,12 @@ __tc_newchain_req_set_options_route_act(struct tc_newchain_req *req, struct tc_act_attrs *act, unsigned int n_act) { + unsigned int i; + req->_present.options = 1; req->options._present.route = 1; + for (i = 0; i < req->options.route._count.act; i++) + tc_act_attrs_free(&req->options.route.act[i]); free(req->options.route.act); req->options.route.act = act; req->options.route._count.act = n_act; @@ -21202,8 +21330,12 @@ __tc_newchain_req_set_options_u32_act(struct tc_newchain_req *req, struct tc_act_attrs *act, unsigned int n_act) { + unsigned int i; + req->_present.options = 1; req->options._present.u32 = 1; + for (i = 0; i < req->options.u32._count.act; i++) + tc_act_attrs_free(&req->options.u32.act[i]); free(req->options.u32.act); req->options.u32.act = act; req->options.u32._count.act = n_act;