summaryrefslogtreecommitdiffstats
path: root/usr.sbin/switchd/ofp10.c
diff options
context:
space:
mode:
authorrzalamena <rzalamena@openbsd.org>2016-11-21 18:19:51 +0000
committerrzalamena <rzalamena@openbsd.org>2016-11-21 18:19:51 +0000
commite56076988ac50569616f24d4fc913b92630aeac5 (patch)
treebf8b5ff2c4307cb27eb5d14e23b91745efedb188 /usr.sbin/switchd/ofp10.c
parentTest that IPv6 framents with invalid length or more-fragment bit (diff)
downloadwireguard-openbsd-e56076988ac50569616f24d4fc913b92630aeac5.tar.xz
wireguard-openbsd-e56076988ac50569616f24d4fc913b92630aeac5.zip
Fix jumbo regress test for ofp10.c and use htonl() with OFP_PKTOUT_NO_BUFFER
for consistency. ok reyk@
Diffstat (limited to 'usr.sbin/switchd/ofp10.c')
-rw-r--r--usr.sbin/switchd/ofp10.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/usr.sbin/switchd/ofp10.c b/usr.sbin/switchd/ofp10.c
index dfbd758fe83..56b7dfdee25 100644
--- a/usr.sbin/switchd/ofp10.c
+++ b/usr.sbin/switchd/ofp10.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: ofp10.c,v 1.15 2016/11/18 20:20:19 reyk Exp $ */
+/* $OpenBSD: ofp10.c,v 1.16 2016/11/21 18:19:51 rzalamena Exp $ */
/*
* Copyright (c) 2013-2016 Reyk Floeter <reyk@openbsd.org>
@@ -376,7 +376,7 @@ ofp10_packet_in(struct switchd *sc, struct switch_connection *con,
fm->fm_priority = 0;
fm->fm_buffer_id = pin->pin_buffer_id;
fm->fm_flags = htons(OFP_FLOWFLAG_SEND_FLOW_REMOVED);
- if (pin->pin_buffer_id == (uint32_t)-1)
+ if (pin->pin_buffer_id == htonl(OFP_PKTOUT_NO_BUFFER))
addpacket = 1;
} else {
if ((pout = ibuf_advance(obuf, sizeof(*pout))) == NULL)
@@ -387,7 +387,7 @@ ofp10_packet_in(struct switchd *sc, struct switch_connection *con,
pout->pout_port = pin->pin_port;
pout->pout_actions_len = htons(sizeof(*ao));
- if (pin->pin_buffer_id == (uint32_t)-1)
+ if (pin->pin_buffer_id == htonl(OFP_PKTOUT_NO_BUFFER))
addpacket = 1;
}
@@ -398,8 +398,8 @@ ofp10_packet_in(struct switchd *sc, struct switch_connection *con,
ao->ao_port = htons((uint16_t)dstport);
ao->ao_max_len = 0;
- /* Add optional packet payload */
- if (addpacket &&
+ /* Add optional packet payload to packet-out. */
+ if (addflow == 0 && addpacket &&
imsg_add(obuf, pkt.pkt_buf, pkt.pkt_len) == -1)
goto done;