CVS: cvs.openbsd.org: src

2017-05-19 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/05/19 04:43:05

Modified files:
sys/net: pf.c 

Log message:
Change PF behavior to allow MLD Listener Report packets to be sent
without needing a previously created state by MLD Listener Query. It
wasn't working because: (1) you might not have a previous MLD Listener
Query and (2) the addresses of the Query and Report don't match.

ok mikeb@, sashan@



CVS: cvs.openbsd.org: src

2017-05-17 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/05/17 07:25:27

Modified files:
sys/netinet6   : ip6_mroute.c 

Log message:
Optimize multicast packet sending by using m_dup_pkt() instead of
m_copym() for cloning packets. m_dup_pkt() creates a new mbuf with the
whole packet content and also pre allocates the space for layer 2
headers (Ethernet/VLAN).

ok mikeb@



CVS: cvs.openbsd.org: src

2017-05-16 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/05/16 07:09:21

Modified files:
sys/netinet: ip_mroute.c 

Log message:
Sync three changes that were caught by IPv6 multicast routing review:

* use a variable to allow disabling debugs on run-time
* fix a potential memory leak on copyout() failure
* don't just blindly use the first address provided by ifalist

ok bluhm@



CVS: cvs.openbsd.org: src

2017-05-16 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/05/16 07:05:07

Modified files:
sys/netinet: ip_mroute.c 

Log message:
Make return values more meaningful by using errno instead of -1 or 1.

ok bluhm@



CVS: cvs.openbsd.org: src

2017-05-16 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/05/16 02:50:18

Modified files:
sys/netinet6   : ip6_mroute.c ip6_mroute.h 

Log message:
Make the IPv6 multicast routing code use the OpenBSD routing table
instead of implementing its own. This makes the IPv6 multicast routing
code look more like the IPv4 version.

ok bluhm@, mpi@



CVS: cvs.openbsd.org: src

2017-05-16 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/05/16 02:32:17

Modified files:
sys/netinet: ip_mroute.c 

Log message:
Let malloc() block when the caller of the add route function is
setsockopt(), otherwise use non-blocking malloc() for network stack
calls.

ok bluhm@



CVS: cvs.openbsd.org: src

2017-05-16 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/05/16 02:28:29

Modified files:
sys/netinet: ip_mroute.c 

Log message:
Call rtfree() after each use of routes and make sure the route is valid
when finding one. Since rtfree() is being called and rt_llinfo being
removed, add checks everywhere to make sure we are using a route that is
not being removed.

ok bluhm@



CVS: cvs.openbsd.org: src

2017-05-08 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/05/08 15:13:26

Modified files:
sys/netinet6   : mld6.c 

Log message:
Fix a compilation error on arm64 that was caught by clang.

Found by kettenis@



CVS: cvs.openbsd.org: src

2017-05-08 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/05/08 10:14:47

Modified files:
sys/netinet6   : icmp6.c 

Log message:
Fix a possible NULL pointer deference on icmp6 echo reply caught by
clang.

with tweak from and ok bluhm@



CVS: cvs.openbsd.org: src

2017-05-08 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/05/08 07:51:10

Modified files:
sys/netinet6   : icmp6.c ip6_output.c 

Log message:
Remove icmp6_reflect() micro optimization to simplify code and avoid a
M_LOOP flag dance in ip6_output().

ok bluhm@, mpi@



CVS: cvs.openbsd.org: src

2017-05-08 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/05/08 03:31:34

Modified files:
usr.bin/netstat: mroute6.c 

Log message:
Make netstat(8) always ask for IPv6 multicast routing information. Worst
case is that we get an empty response instead of a message saying that
there is no multicast support.

ok mpi@



CVS: cvs.openbsd.org: src

2017-05-08 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/05/08 02:46:39

Modified files:
sys/net: if_var.h 
sys/netinet6   : in6.c ip6_input.c ip6_mroute.c ip6_mroute.h 
 ip6_output.c ip6_var.h raw_ip6.c 

Log message:
Added initial IPv6 multicast routing support for multiple rdomains:

* don't share mifs (multicast interface) between rdomains
* allow multiple routing sockets connected at the same time if they are
in different rdomains.

ok bluhm@



CVS: cvs.openbsd.org: src

2017-05-04 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/05/04 07:59:25

Modified files:
sys/netinet6   : mld6.c 

Log message:
Reset the MLD default ip6_opts by using ip6_initpktopts(). This fixes a
problem with MLD packets being sent with hlim set to zero.

with suggestion from and ok bluhm@



CVS: cvs.openbsd.org: src

2017-05-03 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/05/03 02:35:55

Modified files:
sys/netinet6   : ip6_output.c 

Log message:
Change the ip6_setmoptions() function to receive the rdomain as a new
parameter. This makes the ip6_setmoptions() function look more like the
ipv4 version and fixes a problem with IPV6_JOIN_GROUP when no interface
is specified.

ok bluhm@



CVS: cvs.openbsd.org: src

2017-03-27 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/03/27 03:38:03

Modified files:
sys/netinet: in.c 

Log message:
Fix the prefixlen sent by RTM_NEWADDR on new addresses without masks:
calculate the prefixlen using the address before sending the RTM_NEWADDR
message.

ok claudio@



CVS: cvs.openbsd.org: src

2017-03-17 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/03/17 11:57:40

Modified files:
distrib/sets/lists/base: mi 
distrib/sets/lists/man: mi 
etc: Makefile 
usr.sbin   : Makefile 
Added files:
etc/rc.d   : dhcrelay6 

Log message:
Enable dhcrelay6(8).

ok deraadt@



CVS: cvs.openbsd.org: src

2017-03-17 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/03/17 08:59:29

Modified files:
sys/netinet: ip_mroute.c 

Log message:
Be more strict on all route iterations, lets always make sure that we
are not going to get a unicast route by accident.

ok mpi@



CVS: cvs.openbsd.org: src

2017-03-17 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/03/17 08:45:16

Added files:
usr.sbin/dhcrelay6: Makefile bpf.c dhcp.h dhcpd.h dhcrelay6.8 
dhcrelay6.c dispatch.c log.c log.h packet.c 

Log message:
Import the DHCPv6 relay implementation.

This code was based on the dhcrelay(8) daemon and shares a lot of the
structures and functions. This daemon implements the following RFCs:
* RFC 3315 Section 20: Relay Agent Behavior
* RFC 4649: Relay Agent Remote-ID option
* RFC 6221: Lightweight DHCPv6 Relay Agent



CVS: cvs.openbsd.org: src

2017-03-17 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/03/17 08:31:15

src/usr.sbin/dhcrelay6

Update of /cvs/src/usr.sbin/dhcrelay6
In directory cvs.openbsd.org:/tmp/cvs-serv81340/dhcrelay6

Log Message:
Directory /cvs/src/usr.sbin/dhcrelay6 added to the repository



CVS: cvs.openbsd.org: src

2017-03-16 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/03/16 03:17:20

Modified files:
usr.sbin/dhcrelay: dhcpd.h dhcrelay.c 

Log message:
Move the server struct to header file and make it compatible with IPv6.

ok reyk@



CVS: cvs.openbsd.org: src

2017-03-15 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/03/15 08:31:49

Modified files:
usr.sbin/dhcrelay: dhcpd.h dhcrelay.c dispatch.c 

Log message:
Improve the interface and addresses discovery code and prepare to
receive IPv6 support.

ok reyk@



CVS: cvs.openbsd.org: src

2017-03-14 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/03/14 04:27:11

Modified files:
sys/netinet: ip_mroute.c 

Log message:
Make mfc_find() more strict when looking for routes, fixes a problem
causing ip_mforward() not to send packets to the userland multicast
routing daemon.

Reported and tested by Paul de Weerd.

ok bluhm@, claudio@



CVS: cvs.openbsd.org: src

2017-03-14 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/03/14 03:21:26

Modified files:
usr.sbin/dhcrelay: dhcpd.h dhcrelay.c 

Log message:
Remove some global variables that are not being used.

ok gsoares@, jca@



CVS: cvs.openbsd.org: src

2017-02-09 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/02/09 08:36:46

Modified files:
sys/netinet: ip_mroute.c 

Log message:
Unbreak 'netstat -g' and make multicast route stats sysctl more robust.

ok mpi@



CVS: cvs.openbsd.org: src

2017-01-24 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/01/24 07:14:51

Modified files:
sys/net: switchofp.c 

Log message:
Kill some unused variables found by clang.



CVS: cvs.openbsd.org: src

2017-01-17 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/01/17 13:35:49

Modified files:
sys/conf   : GENERIC 

Log message:
Enable switch(4).

ok jca@, reyk@



CVS: cvs.openbsd.org: src

2017-01-17 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/01/17 09:54:40

Modified files:
sys/net: switchofp.c 

Log message:
Make switch(4) compile with debug again.



CVS: cvs.openbsd.org: src

2017-01-17 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/01/17 09:47:55

Modified files:
sys/net: switchofp.c 

Log message:
Initialize swas_actions for set-field with the expected pointer to the
swpld_set_fields vector. This makes write-action work with set-field
actions.



CVS: cvs.openbsd.org: src

2017-01-17 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/01/17 05:34:21

Modified files:
sys/net: switchofp.c 

Log message:
Fix a panic when set-field with VLAN is set, but no VLANs were
classified in the packet.



CVS: cvs.openbsd.org: src

2017-01-17 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/01/17 05:30:35

Modified files:
sys/net: if_switch.c switchofp.c 

Log message:
Clean-up switch(4) device by removing excess prototypes, verbose debugs
and unused functions.

ok reyk@



CVS: cvs.openbsd.org: src

2017-01-17 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/01/17 02:36:28

Modified files:
sys/net: switchofp.c 

Log message:
Add more action specific validations, unbreak instructions validation
with multiple actions and add more error reports with what went wrong.



CVS: cvs.openbsd.org: src

2017-01-17 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/01/17 02:21:50

Modified files:
usr.sbin/switchd: ofp13.c 

Log message:
Fix OXM parser for set-field messages. Found it the hardway while
testing set-field configuration.



CVS: cvs.openbsd.org: src

2017-01-12 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/01/12 04:49:42

Modified files:
sys/net: switchofp.c 

Log message:
Don't write configuration request replies outside of the packet
boundaries. The config request message mbuf is always shorter than the
config request reply message, so use m_copyback() to append the extra
data.



CVS: cvs.openbsd.org: src

2017-01-12 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/01/12 01:22:42

Modified files:
sys/netinet: ip_mroute.c ip_mroute.h 

Log message:
Clean up multicast files from unused definitions and comments.

ok mpi@



CVS: cvs.openbsd.org: src

2017-01-11 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/01/11 08:09:52

Modified files:
share/man/man9 : route.9 

Log message:
Updated the route(9) man page by removing nonexistent function and
updating the prototype of others.

ok jmc@



CVS: cvs.openbsd.org: src

2017-01-11 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/01/11 06:17:35

Modified files:
sys/netinet: ip_mroute.c ip_mroute.h 

Log message:
Remove mfc hash tables and use the OpenBSD routing table for multicast
routes. Beside the code simplification and removal, we also get to see
the multicast routes now in the route(8) utility.

ok mpi@



CVS: cvs.openbsd.org: src

2017-01-11 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/01/11 03:58:17

Modified files:
sys/net: switchofp.c 

Log message:
Remove m_pullup() from packet-out since it is not doing anything anymore
with the packet. swofp_input() already guarantees us that the whole data
is contiguous in the mbuf.



CVS: cvs.openbsd.org: src

2017-01-06 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/01/06 07:01:19

Modified files:
sys/net: if_var.h 
sys/netinet: ip_mroute.c ip_mroute.h 

Log message:
Remove the global viftable vector that holds the virtual interfaces
configuration and instead use ifnet to store the configuration and
counters. With this we can safely use multicast routing daemons on
multiple domains without vif id colisions.

ok mpi@



CVS: cvs.openbsd.org: src

2017-01-06 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/01/06 06:48:58

Modified files:
sys/netinet: ip_mroute.c 

Log message:
Simplify code by removing some old pullup macro, killing some variables
and using m_dup_pkt() instead of m_copym() with max_linkhdr space adjust
on packet sending to avoid more mbuf allocations.

with input from millert@ and mikeb@,
ok mikeb@



CVS: cvs.openbsd.org: src

2017-01-05 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/01/05 05:10:54

Modified files:
sys/netinet: ip_mroute.c 

Log message:
Remove some unnecessary code abstractions and while here remove a
splsoftnet.

ok mikeb@



CVS: cvs.openbsd.org: src

2017-01-02 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2017/01/02 06:52:11

Modified files:
sys/arch/amd64/conf: RAMDISK_CD 

Log message:
Enable xbf(4).

ok mikeb@



CVS: cvs.openbsd.org: src

2016-12-22 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/12/22 08:45:37

Modified files:
usr.sbin/switchctl: parser.c 

Log message:
Don't convert endianess for flow-mod command field, it is a 8 bit field.



CVS: cvs.openbsd.org: src

2016-12-22 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/12/22 08:40:07

Modified files:
regress/usr.sbin/switchd: OFP.pm run.pl 

Log message:
Update the regress test to work with the new changes in the switchd(8)
table learning implementation.

ok reyk@



CVS: cvs.openbsd.org: src

2016-12-22 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/12/22 08:31:43

Modified files:
usr.sbin/switchd: ofp.c ofp13.c ofp_common.c ofrelay.c switchd.h 

Log message:
Learn remote switch flow tables properties to find out where to install
the default table-miss flow for OpenFlow 1.3.5. This is enough to make
switchd(8) to work with switch(4) and HP 3800 switch out-of-the-box.

ok reyk@



CVS: cvs.openbsd.org: src

2016-12-22 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/12/22 08:14:05

Modified files:
sys/net: if_switch.c switchofp.c 

Log message:
Validate the OFP header to make sure it always have a sane size, also
make sure to not accept anything else outside of the header size
boundaries.

ok reyk@



CVS: cvs.openbsd.org: src

2016-12-22 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/12/22 04:04:44

Modified files:
distrib/sets/lists/comp: mi 
distrib/sets/lists/man: mi 
sbin/sysctl: sysctl.c 
share/man/man4 : Makefile multicast.4 
sys/conf   : GENERIC 
sys/netinet: in.h in_proto.c ip_mroute.c ip_mroute.h 
sys/netinet6   : in6.h in6_proto.c ip6_mroute.c ip6_mroute.h 
 raw_ip6.c 
usr.bin/netstat: inet.c inet6.c main.c mroute6.c 
Removed files:
share/man/man4 : pim.4 
sys/netinet: pim.h pim_var.h 
sys/netinet6   : pim6.h pim6_var.h 

Log message:
Remove PIM support from the multicast stack.

ok mpi@



CVS: cvs.openbsd.org: src

2016-12-21 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/12/21 02:52:29

Modified files:
sys/netinet: ip_mroute.c 

Log message:
Fix PIM compilation even though it is disabled.

ok bluhm@



CVS: cvs.openbsd.org: src

2016-12-20 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/12/20 03:54:52

Modified files:
sys/netinet: ip_mroute.c 

Log message:
Call the multicast timer callback per domain instead of for all domains
this way we save doing big tables walk and iterating tables that we don't
need to.

ok mpi@



CVS: cvs.openbsd.org: src

2016-12-20 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/12/20 02:33:13

Modified files:
sys/netinet: ip_mroute.c ip_mroute.h 

Log message:
Remove unused timeout that was never being set.

ok reyk@



CVS: cvs.openbsd.org: src

2016-12-19 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/12/19 05:52:41

Modified files:
sys/netinet: ip_mroute.c ip_mroute.h 

Log message:
Kill unused function.

ok mpi@



CVS: cvs.openbsd.org: src

2016-12-19 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/12/19 02:22:24

Modified files:
sys/netinet: igmp.c ip_input.c ip_mroute.c ip_mroute.h 
 ip_output.c ip_var.h raw_ip.c 

Log message:
Extend the multicast sockets and multicast hash table support to multiple
domains. This is one step towards supporting to run more than one multicast
socket in different domains at the same time.

ok mpi@



CVS: cvs.openbsd.org: src

2016-12-16 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/12/16 11:38:39

Modified files:
usr.sbin/dhcrelay: dhcrelay.8 dhcrelay.c 

Log message:
Add dhcrelay(8) command-line option for replacing Relay Agent Information
on the incoming packets.

Man page tweaks from jmc@
ok reyk@



CVS: cvs.openbsd.org: src

2016-12-16 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/12/16 05:24:43

Modified files:
sys/netinet: igmp.c 

Log message:
Move the if_get/if_put to the caller of igmp_sendpkt so we avoid having
to do this lookup twice.

Suggested by and ok mpi@



CVS: cvs.openbsd.org: src

2016-12-14 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/12/14 10:15:56

Modified files:
sys/netinet: igmp.c 

Log message:
Set the rtableid for new mbufs when sending packets in igmp_sendpkt().

ok mikeb@, phessler@



CVS: cvs.openbsd.org: src

2016-12-13 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/12/13 10:40:41

Modified files:
usr.sbin/dhcrelay: dhcrelay.c 

Log message:
Unbreak the dhcrelay(8) support to run on enc(4) interfaces.

ok reyk@



CVS: cvs.openbsd.org: src

2016-12-13 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/12/13 08:28:19

Modified files:
usr.sbin/dhcrelay: dhcrelay.c 

Log message:
Unbreak the insertion of Relay Agent Information on layer 3 mode when
using the default values: use the right address for remote-id.

ok reyk@



CVS: cvs.openbsd.org: src

2016-12-13 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/12/13 02:29:05

Modified files:
usr.sbin/dhcrelay: dhcrelay.c 

Log message:
Filter DHCP reply messages that were not meant for us by looking at the
gateway set. This happens mostly because we are watching a BPF socket.

Suggested by and ok jca@



CVS: cvs.openbsd.org: src

2016-12-13 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/12/13 02:22:18

Modified files:
sys/netinet: ip_mroute.c 

Log message:
Propagate the routing table id in ip_mrouter_set() so the MRT_ADD_VIF
calls won't fail anymore when doing from a different rdomain.

ok mpi@



CVS: cvs.openbsd.org: src

2016-12-12 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/12/12 08:41:05

Modified files:
usr.sbin/dhcrelay: bpf.c dhcp.h dhcpd.h dhcrelay.8 dhcrelay.c 
   dispatch.c 

Log message:
Implement support for layer 2 relaying and add further Relay Agent
Information (RFC 3046) options. While at there change the naming of the
remote destination parameters: instead of "server" call it "destination".

ok reyk@



CVS: cvs.openbsd.org: src

2016-12-08 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/12/08 12:18:15

Modified files:
usr.sbin/dhcrelay: bpf.c dhcpd.h dhcrelay.c dispatch.c packet.c 

Log message:
Clean up function prototypes: use a single struct to hold all address
information instead of passing multiple different parameters. This also
prepares the dhcrelay code to receive new features, like: IPv6, layer 2
relaying.

ok jca@



CVS: cvs.openbsd.org: src

2016-12-08 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/12/08 02:29:50

Modified files:
usr.sbin/dhcrelay: bpf.c dhcpd.h dhcrelay.c dispatch.c 

Log message:
Simplify get_interfaces function, make it return NULL if we didn't find
the interface and abort dhcrelay with a more friendly message when we
don't have an address configured in the interface.

ok jca@



CVS: cvs.openbsd.org: src

2016-12-07 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/12/07 06:19:18

Modified files:
usr.sbin/dhcrelay: dhcpd.h dhcrelay.c dispatch.c 

Log message:
Rename function discover_interfaces into get_interface and change its
prototype to be more useful.

ok reyk@



CVS: cvs.openbsd.org: src

2016-12-05 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/12/05 05:16:55

Modified files:
sys/net: switchofp.c 

Log message:
Propagate error type in validation functions that call
swofp_validate_action(), because actions have a different class of errors.
While there update the error type and error variables type to match the
swofp_send_error() prototype.



CVS: cvs.openbsd.org: src

2016-12-05 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/12/05 03:41:33

Modified files:
usr.sbin/ntpd  : constraint.c 

Log message:
Use the stack to hold the constraint child process variables instead of
using the heap.

ok bcook@



CVS: cvs.openbsd.org: src

2016-12-05 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/12/05 02:46:31

Modified files:
sys/net: switchofp.c 

Log message:
Remove the flow id from the flow entry struct and the global variable,
since they were not being used and the OpenFlow specification doesn't
mention anything about them.

ok reyk@



CVS: cvs.openbsd.org: src

2016-12-05 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/12/05 02:41:51

Modified files:
sys/net: switchofp.c 

Log message:
Add missing prototypes for all functions declared in the file.

ok reyk@



CVS: cvs.openbsd.org: src

2016-12-02 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/12/02 10:25:34

Modified files:
sys/net: switchofp.c 

Log message:
Limit the amount of flows that can be installed on flow tables.



CVS: cvs.openbsd.org: src

2016-12-02 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/12/02 10:10:20

Modified files:
sys/net: ofp.h 
usr.sbin/tcpdump: ofp_map.c 

Log message:
Fix some spelling errors in the OpenFlow header and update the tcpdump(8)
ofp_map.c file.

ok reyk@



CVS: cvs.openbsd.org: src

2016-12-02 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/12/02 10:06:13

Modified files:
sys/net: switchofp.c 

Log message:
Use the right variable for storing the maximum group table size and use
it to limit the amount of installable groups.



CVS: cvs.openbsd.org: src

2016-12-02 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/12/02 07:39:46

Modified files:
usr.sbin/switchctl: ofpclient.c 
usr.sbin/switchd: ofp.c ofp10.c ofp13.c ofp_common.c ofrelay.c 
  switchd.h 

Log message:
Implement the connection state machine for OpenFlow 1.0 and 1.3 to detect
invalid state transitions and invalid protocol version switching after the
hello messages exchange.

ok reyk@



CVS: cvs.openbsd.org: src

2016-12-02 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/12/02 03:07:47

Modified files:
sys/net: switchofp.c 

Log message:
Fix flow-removed OFP header xid value: use htonl() instead of htons() for
32bit integers.



CVS: cvs.openbsd.org: src

2016-11-30 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/11/30 12:58:29

Modified files:
sys/net: switchofp.c 

Log message:
Fix another free() with wrong size panic when handling group-mod buckets
size changes and add more sanity checks for group buckets payload.



CVS: cvs.openbsd.org: src

2016-11-28 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/11/28 11:04:00

Modified files:
sys/net: switchofp.c 

Log message:
Implement more validations for switch(4) groups handling: check for invalid
group-mod message sizes and validate bucket sizes and actions lists.

Discussed with reyk@: we should get this in as it is better to have some
validation than having none at all.



CVS: cvs.openbsd.org: src

2016-11-25 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/11/25 02:37:21

Modified files:
usr.sbin/tcpdump: print-ofp.c 

Log message:
Fix some bad copy paste bits and simplify the ethernet printing function.

ok reyk@



CVS: cvs.openbsd.org: src

2016-11-22 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/11/22 16:23:12

Modified files:
sys/net: if_switch.c 

Log message:
Fix panic on detach hook when interfaces get destroyed.

ok reyk@



CVS: cvs.openbsd.org: src

2016-11-22 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/11/22 15:05:20

Modified files:
usr.sbin/switchd: ofp10.c 

Log message:
Add "features request" support and reply validation.

ok reyk@



CVS: cvs.openbsd.org: src

2016-11-22 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/11/22 10:21:56

Modified files:
usr.sbin/switchd: ofp.c ofp10.c ofp13.c ofp_common.c switchd.h 

Log message:
Implement support for version negotiation using hello messages. This
also prevents connections from switching the version in the middle of
the operation.

tweak from and ok reyk@



CVS: cvs.openbsd.org: src

2016-11-22 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/11/22 06:01:32

Modified files:
sys/net: ofp.h 
usr.sbin/tcpdump: print-ofp.c 

Log message:
Fix OFP spelling for version bitmap define in ofp header and tcpdump, also
change the truncation message in hello with the standard one.

ok reyk@



CVS: cvs.openbsd.org: src

2016-11-21 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/11/21 12:33:12

Modified files:
usr.sbin/switchd: ofp13.c 

Log message:
Do more strict checks of OXM by looking at mask restrictions and add
missing OXM type (IP_PROTO).

ok reyk@



CVS: cvs.openbsd.org: src

2016-11-21 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/11/21 12:29:28

Modified files:
sys/net: switchofp.c 

Log message:
Simplify pad calculation for flow match on swofp_put_flow().

ok reyk@



CVS: cvs.openbsd.org: src

2016-11-21 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/11/21 12:18:39

Modified files:
usr.sbin/switchd: ofp13.c 

Log message:
Add truncation validation for packet-out and reuse the action validation
function instead of manually rolling the code again.

ok reyk@



CVS: cvs.openbsd.org: src

2016-11-21 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/11/21 11:19:51

Modified files:
usr.sbin/switchd: ofp10.c ofp13.c 

Log message:
Fix jumbo regress test for ofp10.c and use htonl() with OFP_PKTOUT_NO_BUFFER
for consistency.

ok reyk@



CVS: cvs.openbsd.org: src

2016-11-21 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/11/21 10:58:24

Modified files:
usr.sbin/switchd: ofp13.c 

Log message:
Implement better table features validation. With this we get free switchctl
display of table features.

ok reyk@



CVS: cvs.openbsd.org: src

2016-11-21 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/11/21 05:13:16

Modified files:
usr.sbin/switchd: ofp13.c 

Log message:
Parse flow-status instructions in multipart replies, so we can see what
instructions are used by the flow.



CVS: cvs.openbsd.org: src

2016-11-21 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/11/21 01:28:19

Modified files:
sys/net: switchofp.c 

Log message:
Include the OFP header of the message that caused the error on error
messages.

ok reyk@



CVS: cvs.openbsd.org: src

2016-11-18 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/11/18 12:07:44

Modified files:
usr.sbin/switchd: ofp13.c 

Log message:
Make switchd(8) use more strings just like tcpdump(8). While here remove
action field display from features request.



CVS: cvs.openbsd.org: src

2016-11-18 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/11/18 11:45:27

Modified files:
usr.sbin/tcpdump: print-ofp.c 

Log message:
Add support for printing the missing OpenFlow set-queue action.



CVS: cvs.openbsd.org: src

2016-11-18 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/11/18 11:35:20

Modified files:
usr.sbin/tcpdump: print-ofp.c 

Log message:
Don't print the field 'actions' on features reply, because in the new
OpenFlow 1.3.5 it is a reserved field that is not being used.



CVS: cvs.openbsd.org: src

2016-11-18 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/11/18 09:23:13

Modified files:
sys/net: switchofp.c 

Log message:
Fix a panic introduced with the memory leak correction. Use the saved
length instead of the packet instruction length to free the old
instruction.

ok reyk@



CVS: cvs.openbsd.org: src

2016-11-18 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/11/18 06:15:42

Modified files:
usr.sbin/switchd: ofp13.c 

Log message:
Small code improvements:
- Free ibufs on validation failures;
- Don't use htons() for flow-mod command;

ok reyk@



CVS: cvs.openbsd.org: src

2016-11-18 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/11/18 06:10:58

Modified files:
sys/net: ofp.h 

Log message:
Add more documentation to header definitions that were missing.



CVS: cvs.openbsd.org: src

2016-11-18 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/11/18 04:55:02

Modified files:
sys/net: ofp.h 

Log message:
Fix some style issues in header file:
- Use the right amount of zeros to match the header bit length;
- Use hex instead of bit shifting;



CVS: cvs.openbsd.org: src

2016-11-17 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/11/17 09:24:00

Modified files:
usr.sbin/switchd: ofp10.c ofp13.c ofrelay.c 

Log message:
Fix some styles issues: break big lines and remove some useless spaces.



CVS: cvs.openbsd.org: src

2016-11-17 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/11/17 07:37:55

Modified files:
regress/usr.sbin/switchd: args-packet-jumbo.pm run.pl 

Log message:
Add support for OpenFlow 1.3.5 tests and make jumbo test use the new
version.

ok reyk@



CVS: cvs.openbsd.org: src

2016-11-17 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/11/17 02:42:11

Modified files:
usr.sbin/switchd: ofp13.c ofp_common.c switchd.h 

Log message:
Added the missing code to build flow-mod messages and to install
table-miss by default for switch(4).

ok reyk@



CVS: cvs.openbsd.org: src

2016-11-16 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/11/16 08:32:42

Modified files:
usr.sbin/switchd: proc.c proc.h 
usr.sbin/vmd   : proc.c proc.h 

Log message:
Sync switchd(8) and vmd(8) with the latest proc.c changes. This sync
basically imports the imsg_flush() fix from reyk@ in httpd(8).

ok reyk@



CVS: cvs.openbsd.org: src

2016-11-16 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/11/16 04:36:03

Modified files:
regress/usr.sbin/switchd: OFP.pm args-packet-jumbo.pm run.pl 

Log message:
Add support for big reads in perl and fix the jumbo test, also remove
message type specific code from OFP encode.

ok reyk@



CVS: cvs.openbsd.org: src

2016-11-16 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/11/16 01:09:26

Modified files:
regress/usr.sbin/switchd: OFP.pm run.pl 

Log message:
Remove code duplication for receiving/sending OFP packets and simplify
packet-in building.

ok reyk@



CVS: cvs.openbsd.org: src

2016-11-14 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/11/14 12:41:47

Modified files:
share/man/man4 : switch.4 

Log message:
Update the switch(4) man page to tell that the device handles streams and
not packets anymore.

ok reyk@, jmc@



CVS: cvs.openbsd.org: src

2016-11-11 Thread Rafael Zalamena
CVSROOT:/cvs
Module name:src
Changes by: rzalam...@cvs.openbsd.org   2016/11/11 09:19:09

Modified files:
sys/net: if_switch.h switchctl.c 

Log message:
Remove mutexes protection from the switchctl as they don't seem to be
doing anything for us, and remove some whitespaces from the header that
can be found near the removed lines.

ok mikeb@



  1   2   3   >