diff options
| author | Mohammed Javid <mjavid@codeaurora.org> | 2018-08-27 13:06:49 +0530 |
|---|---|---|
| committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2018-09-05 04:52:07 -0700 |
| commit | b3759152baa1d860e87d0104af97e889e2ee8891 (patch) | |
| tree | 43fe4e39a42087f7b2229fbb623182b0247f6f8c | |
| parent | 95ec509e853ec5131b6250eb245da288c40fa265 (diff) | |
ipacm: Update tcp fragment rule for IPv6
Update TCP fragment rule attribute for IPv6.
Change-Id: I6c2a7c1b6f6ed7638497eb220ad5f5d6462c838e
| -rw-r--r-- | ipacm/src/IPACM_Iface.cpp | 28 |
1 files changed, 6 insertions, 22 deletions
diff --git a/ipacm/src/IPACM_Iface.cpp b/ipacm/src/IPACM_Iface.cpp index d05cefd..512846f 100644 --- a/ipacm/src/IPACM_Iface.cpp +++ b/ipacm/src/IPACM_Iface.cpp @@ -854,29 +854,13 @@ int IPACM_Iface::init_fl_rule(ipa_ip_type iptype) #ifdef FEATURE_IPA_ANDROID /* Add the ipv6 tcp fragment filtering rule. */ - memset(&flt_rule_entry, 0, sizeof(struct ipa_flt_rule_add)); - flt_rule_entry.at_rear = true; - flt_rule_entry.flt_rule_hdl = -1; - flt_rule_entry.status = -1; - flt_rule_entry.rule.retain_hdr = 1; - flt_rule_entry.rule.to_uc = 0; - flt_rule_entry.rule.eq_attrib_type = 1; - flt_rule_entry.rule.action = IPA_PASS_TO_EXCEPTION; -#ifdef FEATURE_IPA_V3 - flt_rule_entry.rule.hashable = true; -#endif - flt_rule_entry.rule.eq_attrib.rule_eq_bitmap |= (1<<1); - flt_rule_entry.rule.eq_attrib.protocol_eq_present = 1; - flt_rule_entry.rule.eq_attrib.protocol_eq = IPACM_FIREWALL_IPPROTO_TCP; - flt_rule_entry.rule.attrib.u.v6.next_hdr = (uint8_t)IPACM_FIREWALL_IPPROTO_TCP; - /* Configuring Fragment Filtering Rule */ - memcpy(&flt_rule_entry.rule.attrib, - &rx_prop->rx[0].attrib, - sizeof(flt_rule_entry.rule.attrib)); - /* remove meta data mask since we only install default flt rules once for all modem - PDN*/ - flt_rule_entry.rule.attrib.attrib_mask &= ~((uint32_t)IPA_FLT_META_DATA); + IPACMDBG_H("Adding IPv6 TCP fragment filter rule\n"); + + flt_rule_entry.rule.attrib.attrib_mask &= ~((uint32_t)IPA_FLT_DST_ADDR); + + flt_rule_entry.rule.attrib.attrib_mask |= IPA_FLT_NEXT_HDR; + flt_rule_entry.rule.attrib.u.v6.next_hdr = IPACM_FIREWALL_IPPROTO_TCP; flt_rule_entry.rule.attrib.attrib_mask |= IPA_FLT_FRAGMENT; |
