--- zzzz-none-000/linux-4.1.38/net/netfilter/nf_nat_sip.c 2017-01-18 18:48:06.000000000 +0000 +++ bcm63-7582-715/linux-4.1.38/net/netfilter/nf_nat_sip.c 2020-11-25 10:06:48.000000000 +0000 @@ -23,12 +23,21 @@ #include #include +#if defined(CONFIG_BCM_KF_RUNNER) +#if defined(CONFIG_BCM_RDPA) || defined(CONFIG_BCM_RDPA_MODULE) +#include +#endif /* CONFIG_BCM_RUNNER */ +#endif /* CONFIG_BCM_KF_RUNNER */ + +#if defined(CONFIG_BCM_KF_NETFILTER_SIP) +#include +#endif + MODULE_LICENSE("GPL"); MODULE_AUTHOR("Christian Hentschel "); MODULE_DESCRIPTION("SIP NAT helper"); MODULE_ALIAS("ip_nat_sip"); - static unsigned int mangle_packet(struct sk_buff *skb, unsigned int protoff, unsigned int dataoff, const char **dptr, unsigned int *datalen, @@ -336,6 +345,22 @@ = ct->master->tuplehash[!exp->dir].tuple.dst.u3; nf_nat_setup_info(ct, &range, NF_NAT_MANIP_SRC); } +#if defined(CONFIG_BCM_KF_NETFILTER_SIP) + + /* + * added iqos here + */ + + iqos_add_L4port(IPPROTO_UDP, + ntohs(ct->tuplehash[IP_CT_DIR_REPLY].tuple.dst.u.udp.port), + IQOS_ENT_DYN, IQOS_PRIO_HIGH ); + iqos_add_L4port( IPPROTO_UDP, + ntohs(ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.dst.u.udp.port), + IQOS_ENT_DYN, + IQOS_PRIO_HIGH ); + + set_bit(IPS_IQOS_BIT, &ct->status); +#endif } static unsigned int nf_nat_sip_expect(struct sk_buff *skb, unsigned int protoff, @@ -609,6 +634,12 @@ goto err2; } +#if defined(CONFIG_BCM_KF_RUNNER) +#if defined(CONFIG_BCM_RDPA) || defined(CONFIG_BCM_RDPA_MODULE) + BL_OPS(net_ipv4_netfilter_nf_nat_sip(ct, port, dir)); +#endif /* CONFIG_BCM_RUNNER */ +#endif /* CONFIG_BCM_KF_RUNNER */ + return NF_ACCEPT; err2: