what $subject says.

no real compat issue since we're using spare bytes.
old -> new ends up with set prio (0, 0) equivalent
new -> old is entirely harmless, old ignores the prios.

acceptable imo, since the effects of set prio aren't all THAT big and
the other option, bumping the pfsync version, is much more intrusive
and leads to no syncing between old and new at all.

Index: net/if_pfsync.c
===================================================================
RCS file: /cvs/src/sys/net/if_pfsync.c,v
retrieving revision 1.216
diff -u -p -r1.216 if_pfsync.c
--- net/if_pfsync.c     24 Jan 2015 00:29:06 -0000      1.216
+++ net/if_pfsync.c     9 Feb 2015 13:19:58 -0000
@@ -594,6 +594,8 @@ pfsync_state_import(struct pfsync_state 
        st->max_mss = ntohs(sp->max_mss);
        st->min_ttl = sp->min_ttl;
        st->set_tos = sp->set_tos;
+       st->set_prio[0] = sp->set_prio[0];
+       st->set_prio[1] = sp->set_prio[1];
 
        st->id = sp->id;
        st->creatorid = sp->creatorid;
Index: net/pf.c
===================================================================
RCS file: /cvs/src/sys/net/pf.c,v
retrieving revision 1.901
diff -u -p -r1.901 pf.c
--- net/pf.c    7 Feb 2015 09:15:25 -0000       1.901
+++ net/pf.c    9 Feb 2015 13:20:55 -0000
@@ -1142,6 +1142,8 @@ pf_state_export(struct pfsync_state *sp,
        sp->max_mss = htons(st->max_mss);
        sp->min_ttl = st->min_ttl;
        sp->set_tos = st->set_tos;
+       sp->set_prio[0] = st->set_prio[0];
+       sp->set_prio[1] = st->set_prio[1];
 }
 
 /* END state table stuff */
Index: net/pfvar.h
===================================================================
RCS file: /cvs/src/sys/net/pfvar.h,v
retrieving revision 1.409
diff -u -p -r1.409 pfvar.h
--- net/pfvar.h 7 Feb 2015 06:27:46 -0000       1.409
+++ net/pfvar.h 9 Feb 2015 13:18:34 -0000
@@ -914,7 +914,7 @@ struct pfsync_state {
        u_int8_t         min_ttl;
        u_int8_t         set_tos;
        u_int16_t        state_flags;
-       u_int8_t         pad[2];
+       u_int8_t         set_prio[2];
 } __packed;
 
 #define PFSYNC_FLAG_SRCNODE    0x04


-- 
Henning Brauer, h...@bsws.de, henn...@openbsd.org
BS Web Services GmbH, http://bsws.de, Full-Service ISP
Secure Hosting, Mail and DNS. Virtual & Dedicated Servers, Root to Fully Managed
Henning Brauer Consulting, http://henningbrauer.com/

Reply via email to