diff options
author | Renato Botelho <renato@netgate.com> | 2016-02-22 11:28:25 -0300 |
---|---|---|
committer | Renato Botelho <renato@netgate.com> | 2016-02-22 11:55:05 -0300 |
commit | f9c13be737f3ceaf1694a8af973373f7a4d0ce22 (patch) | |
tree | b924bd5aa11593f20ba072eee4c3cc67ae535f51 | |
parent | f4f04f91a787d9f61d56b19a966ae4a9b9e79ad5 (diff) | |
download | FreeBSD-src-f9c13be737f3ceaf1694a8af973373f7a4d0ce22.zip FreeBSD-src-f9c13be737f3ceaf1694a8af973373f7a4d0ce22.tar.gz |
Correct a mis-merge when imported VLAN PCP code:
There was a mistake when code was imported that lead us to end up with
duplicated block of code on IPv6 code path while one of these blocks
belong to IPv4.
Whithout this patch pf wouldn't apply vlan pcp value correctly to
outbound IPv4 traffic.
Patch: pf_802.1p.diff
Submitted by: Matthew Grooms <mgrooms@shrew.net>
-rw-r--r-- | sys/netpfil/pf/pf.c | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/sys/netpfil/pf/pf.c b/sys/netpfil/pf/pf.c index eed1ac8..ebda220 100644 --- a/sys/netpfil/pf/pf.c +++ b/sys/netpfil/pf/pf.c @@ -6435,6 +6435,15 @@ done: if (r->rtableid >= 0) M_SETFIB(m, r->rtableid); + if ((r->ieee8021q_pcp.setpcp & SETPCP_VALID) && + pf_ieee8021q_setpcp(m, r)) { + action = PF_DROP; + REASON_SET(&reason, PFRES_MEMORY); + log = 1; + DPFPRINTF(PF_DEBUG_MISC, + ("pf: failed to allocate 802.1q mtag\n")); + } + #ifdef ALTQ if (s && s->qid) { pd.act.pqid = s->pqid; @@ -7004,15 +7013,6 @@ done: ("pf: failed to allocate 802.1q mtag\n")); } - if ((r->ieee8021q_pcp.setpcp & SETPCP_VALID) && - pf_ieee8021q_setpcp(m, r)) { - action = PF_DROP; - REASON_SET(&reason, PFRES_MEMORY); - log = 1; - DPFPRINTF(PF_DEBUG_MISC, - ("pf: failed to allocate 802.1q mtag\n")); - } - #ifdef ALTQ if (s && s->qid) { pd.act.pqid = s->pqid; |