OpenBSD CVS

CVS log for src/sys/netinet/ip_gre.c


[BACK] Up to [local] / src / sys / netinet

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.87 / (download) - annotate - [select for diffs], Fri Dec 15 00:24:56 2023 UTC (5 months, 3 weeks ago) by bluhm
Branch: MAIN
CVS Tags: OPENBSD_7_5_BASE, OPENBSD_7_5, HEAD
Changes since 1.86: +2 -2 lines
Diff to previous 1.86 (colored)

Use inpcb table mutex to set addresses.

Protect all remaining write access to inp_faddr and inp_laddr with
inpcb table mutex.  Document inpcb locking for foreign and local
address and port and routing table id.  Reading will be made MP
safe by adding per socket rw-locks in a next step.

OK sashan@ mvs@

Revision 1.86 / (download) - annotate - [select for diffs], Sat Apr 8 13:50:22 2023 UTC (14 months ago) by mvs
Branch: MAIN
CVS Tags: OPENBSD_7_4_BASE, OPENBSD_7_4
Changes since 1.85: +4 -6 lines
Diff to previous 1.85 (colored)

Do not reload `inp' in gre_send(). The pointer to PCB of raw socket is
immutable, we don't need to reload it again.

ok bluhm@

Revision 1.85 / (download) - annotate - [select for diffs], Mon Oct 17 14:49:02 2022 UTC (19 months, 3 weeks ago) by mvs
Branch: MAIN
CVS Tags: OPENBSD_7_3_BASE, OPENBSD_7_3
Changes since 1.84: +1 -2 lines
Diff to previous 1.84 (colored)

Change pru_abort() return type to the type of void and make pru_abort()
optional.

We have no interest on pru_abort() return value. We call it only from
soabort() which is dummy pru_abort() wrapper and has no return value.

Only the connection oriented sockets need to implement (*pru_abort)()
handler. Such sockets are tcp(4) and unix(4) sockets, so remove existing
code for all others, it doesn't called.

ok guenther@

Revision 1.84 / (download) - annotate - [select for diffs], Sat Sep 3 22:43:38 2022 UTC (21 months, 1 week ago) by mvs
Branch: MAIN
CVS Tags: OPENBSD_7_2_BASE, OPENBSD_7_2
Changes since 1.83: +2 -9 lines
Diff to previous 1.83 (colored)

Move PRU_PEERADDR request to (*pru_peeraddr)().

Introduce in{,6}_peeraddr() and use them for inet and inet6 sockets,
except tcp(4) case.

Also remove *_usrreq() handlers.

ok bluhm@

Revision 1.83 / (download) - annotate - [select for diffs], Sat Sep 3 18:48:50 2022 UTC (21 months, 1 week ago) by mvs
Branch: MAIN
Changes since 1.82: +2 -1 lines
Diff to previous 1.82 (colored)

Move PRU_SOCKADDR request to (*pru_sockaddr)()

Introduce in{,6}_sockaddr() functions, and use them for all except tcp(4)
inet sockets. For tcp(4) sockets use tcp_sockaddr() to keep debug ability.

The key management and route domain sockets returns EINVAL error for
PRU_SOCKADDR request, so keep this behaviour for a while instead of make
pru_sockaddr handler optional and return EOPNOTSUPP.

ok bluhm@

Revision 1.82 / (download) - annotate - [select for diffs], Fri Sep 2 13:12:32 2022 UTC (21 months, 1 week ago) by mvs
Branch: MAIN
Changes since 1.81: +4 -1 lines
Diff to previous 1.81 (colored)

Move PRU_CONTROL request to (*pru_control)().

The 'proc *' arg is not used for PRU_CONTROL request, so remove it from
pru_control() wrapper.

Split out {tcp,udp}6_usrreqs from {tcp,udp}_usrreqs and use them for
inet6 case.

ok guenther@ bluhm@

Revision 1.81 / (download) - annotate - [select for diffs], Sun Aug 28 18:44:16 2022 UTC (21 months, 1 week ago) by mvs
Branch: MAIN
Changes since 1.80: +2 -1 lines
Diff to previous 1.80 (colored)

Move PRU_ABORT request to (*pru_abort)().

We abort only the sockets which are linked to `so_q' or `so_q0' queues of
listening socket. Such sockets have no corresponding file descriptor and
are not accessed from userland, so PRU_ABORT used to destroy them on
listening socket destruction.

Currently all our sockets support PRU_ABORT request, but actually it
required only for tcp(4) and unix(4) sockets, so i should be optional.
However, they will be removed with separate diff, and this time  PRU_ABORT
requests were converted as is.

Also, the socket should be destroyed on PRU_ABORT request, but route and
key management sockets leave it alive. This was also converted as is,
because this wrong code never called.

ok bluhm@

Revision 1.80 / (download) - annotate - [select for diffs], Sat Aug 27 20:28:01 2022 UTC (21 months, 2 weeks ago) by mvs
Branch: MAIN
Changes since 1.79: +15 -4 lines
Diff to previous 1.79 (colored)

Move PRU_SEND request to (*pru_send)().

The former PRU_SEND error path of gre_usrreq() had `control' mbuf(9)
leak. It was fixed in new gre_send().

The former pfkeyv2_send() was renamed to pfkeyv2_dosend().

ok bluhm@

Revision 1.79 / (download) - annotate - [select for diffs], Mon Aug 22 21:18:48 2022 UTC (21 months, 2 weeks ago) by mvs
Branch: MAIN
Changes since 1.78: +2 -1 lines
Diff to previous 1.78 (colored)

Move PRU_SHUTDOWN request to (*pru_shutdown)().

ok bluhm@

Revision 1.78 / (download) - annotate - [select for diffs], Mon Aug 22 13:23:07 2022 UTC (21 months, 2 weeks ago) by mvs
Branch: MAIN
Changes since 1.77: +2 -1 lines
Diff to previous 1.77 (colored)

Move PRU_DISCONNECT request to (*pru_disconnect).

ok bluhm@

Revision 1.77 / (download) - annotate - [select for diffs], Sun Aug 21 22:45:55 2022 UTC (21 months, 2 weeks ago) by mvs
Branch: MAIN
Changes since 1.76: +2 -1 lines
Diff to previous 1.76 (colored)

Move PRU_CONNECT request to (*pru_connect)() handler.

ok bluhm@

Revision 1.76 / (download) - annotate - [select for diffs], Sat Aug 20 23:48:58 2022 UTC (21 months, 3 weeks ago) by mvs
Branch: MAIN
Changes since 1.75: +2 -1 lines
Diff to previous 1.75 (colored)

Move PRU_BIND request to (*pru_bind)() handler.

For the protocols which don't support request, leave handler NULL. Do the
NULL check within corresponding pru_() wrapper and return EOPNOTSUPP in
such case. This will be done for all upcoming user request handlers.

ok bluhm@ guenther@

Revision 1.75 / (download) - annotate - [select for diffs], Mon Aug 15 09:11:39 2022 UTC (21 months, 3 weeks ago) by mvs
Branch: MAIN
Changes since 1.74: +8 -1 lines
Diff to previous 1.74 (colored)

Introduce 'pr_usrreqs' structure and move existing user-protocol
handlers into it. We want to split existing (*pr_usrreq)() to multiple
short handlers for each PRU_ request as it was already done for
PRU_ATTACH and PRU_DETACH. This is the preparation step, (*pr_usrreq)()
split will be done with the following diffs.

Based on reverted diff from guenther@.

ok bluhm@

Revision 1.74 / (download) - annotate - [select for diffs], Sun Jun 26 15:50:21 2022 UTC (23 months, 2 weeks ago) by mvs
Branch: MAIN
Changes since 1.73: +12 -6 lines
Diff to previous 1.73 (colored)

The "ifq_set_maxlen(..., 1);" hack we use to enforce pipex(4) related
(*if_qstart)() be always called with netlock held doesn't work anymore
with PPPOE sessions.

Introduce `pipex_list_mtx' mutex(9) and use it to protect global pipex(4)
lists and radix trees.

Protect pipex(4) `session' dereference with reference counters, because we
could sleep when accessing pipex(4) from ioctl(2) path, and this is not
possible with mutex(9) held.

ok bluhm@

Revision 1.73 / (download) - annotate - [select for diffs], Fri Feb 25 23:51:03 2022 UTC (2 years, 3 months ago) by guenther
Branch: MAIN
CVS Tags: OPENBSD_7_1_BASE, OPENBSD_7_1
Changes since 1.72: +1 -6 lines
Diff to previous 1.72 (colored)

Reported-by: syzbot+1b5b209ce506db4d411d@syzkaller.appspotmail.com
Revert the pr_usrreqs move: syzkaller found a NULL pointer deref
and I won't be available to monitor for followup issues for a bit

Revision 1.72 / (download) - annotate - [select for diffs], Fri Feb 25 08:36:01 2022 UTC (2 years, 3 months ago) by guenther
Branch: MAIN
Changes since 1.71: +6 -1 lines
Diff to previous 1.71 (colored)

Move pr_attach and pr_detach to a new structure pr_usrreqs that can
then be shared among protosw structures, following the same basic
direction as NetBSD and FreeBSD for this.

Split PRU_CONTROL out of pr_usrreq into pru_control, giving it the
proper prototype to eliminate the previously necessary casts.

ok mvs@ bluhm@

Revision 1.71 / (download) - annotate - [select for diffs], Wed Feb 7 22:30:59 2018 UTC (6 years, 4 months ago) by dlg
Branch: MAIN
CVS Tags: OPENBSD_7_0_BASE, OPENBSD_7_0, OPENBSD_6_9_BASE, OPENBSD_6_9, OPENBSD_6_8_BASE, OPENBSD_6_8, OPENBSD_6_7_BASE, OPENBSD_6_7, OPENBSD_6_6_BASE, OPENBSD_6_6, OPENBSD_6_5_BASE, OPENBSD_6_5, OPENBSD_6_4_BASE, OPENBSD_6_4, OPENBSD_6_3_BASE, OPENBSD_6_3
Changes since 1.70: +2 -252 lines
Diff to previous 1.70 (colored)

update the gre driver.

the main new feature is gre keys, supported by the vnetid ioctls.
this also adds support for gre over ipv6, the use of hfsc, and
allows tx mitigation in the future.

this diff removes keepalive support, but i promised claudio@ and
patrick@ i would put it back after this goes in.

ok claudio@

Revision 1.70 / (download) - annotate - [select for diffs], Wed Feb 7 01:09:57 2018 UTC (6 years, 4 months ago) by dlg
Branch: MAIN
Changes since 1.69: +1 -111 lines
Diff to previous 1.69 (colored)

split mobileip(4) out from the gre(4) driver.

having mobileip in gre makes it hard to cut gre up. the current mobileip
code is also broken, so this is def and improvement. it also makes it
easy to disable and remove mobileip in the future.

ok claudio@ henning@

Revision 1.69 / (download) - annotate - [select for diffs], Tue Jan 9 06:24:15 2018 UTC (6 years, 5 months ago) by dlg
Branch: MAIN
Changes since 1.68: +2 -2 lines
Diff to previous 1.68 (colored)

make mpls_input take a struct ifnet *ifp argument.

this makes it like all our other protocol family input functions.

mpls_input always looks up the interface the mbuf was received on,
but it's always called by code that already has a reference to that
interface anyway. the result of this is a few less if_get/if_put
calls.

ok mpi@ bluhm@ visa@ claudio@

Revision 1.68 / (download) - annotate - [select for diffs], Mon Nov 20 10:35:24 2017 UTC (6 years, 6 months ago) by mpi
Branch: MAIN
Changes since 1.67: +2 -1 lines
Diff to previous 1.67 (colored)

Sprinkle some NET_ASSERT_LOCKED(), const and co to prepare running
pr_input handlers without KERNEL_LOCK().

ok visa@

Revision 1.67 / (download) - annotate - [select for diffs], Mon Oct 9 08:35:38 2017 UTC (6 years, 8 months ago) by mpi
Branch: MAIN
Changes since 1.66: +18 -5 lines
Diff to previous 1.66 (colored)

Reduces the scope of the NET_LOCK() in sysctl(2) path.

Exposes per-CPU counters to real parrallelism.

ok visa@, bluhm@, jca@

Revision 1.66 / (download) - annotate - [select for diffs], Tue Aug 15 17:47:15 2017 UTC (6 years, 9 months ago) by bluhm
Branch: MAIN
CVS Tags: OPENBSD_6_2_BASE, OPENBSD_6_2
Changes since 1.65: +2 -4 lines
Diff to previous 1.65 (colored)

Convert hand rolled sockaddr checks to the nam2sin functions.
Especially in tcp_usrreq() connect detect the correct address family
based on the inp_flags instead of the sa_family user input.
OK mpi@

Revision 1.65 / (download) - annotate - [select for diffs], Tue May 30 07:50:37 2017 UTC (7 years ago) by mpi
Branch: MAIN
Changes since 1.64: +16 -7 lines
Diff to previous 1.64 (colored)

Introduce ipv{4,6}_input(), two wrappers around IP queues.

This will help transitionning to an un-KERNEL_LOCK()ed IP
forwarding path.

Disucssed with bluhm@, ok claudio@

Revision 1.64 / (download) - annotate - [select for diffs], Thu May 4 17:58:46 2017 UTC (7 years, 1 month ago) by bluhm
Branch: MAIN
Changes since 1.63: +3 -3 lines
Diff to previous 1.63 (colored)

If m is not a continuous mbuf cluster, m_pullup() in pr_input may
change the pointer.  Then *mp keeps the invalid pointer and it might
be used.  Fix the potential use after free and also reset *mp in
other places to have less dangling pointers to freed mbufs.
OK mpi@ mikeb@

Revision 1.63 / (download) - annotate - [select for diffs], Fri Apr 14 20:46:31 2017 UTC (7 years, 1 month ago) by bluhm
Branch: MAIN
Changes since 1.62: +4 -4 lines
Diff to previous 1.62 (colored)

Pass down the address family through the pr_input calls.  This
allows to simplify code used for both IPv4 and IPv6.
OK mikeb@ deraadt@

Revision 1.62 / (download) - annotate - [select for diffs], Sun Jan 29 19:58:47 2017 UTC (7 years, 4 months ago) by bluhm
Branch: MAIN
CVS Tags: OPENBSD_6_1_BASE, OPENBSD_6_1
Changes since 1.61: +18 -13 lines
Diff to previous 1.61 (colored)

Change the IPv4 pr_input function to the way IPv6 is implemented,
to get rid of struct ip6protosw and some wrapper functions.  It is
more consistent to have less different structures.  The divert_input
functions cannot be called anyway, so remove them.
OK visa@ mpi@

Revision 1.61 / (download) - annotate - [select for diffs], Wed Jan 25 17:34:31 2017 UTC (7 years, 4 months ago) by bluhm
Branch: MAIN
Changes since 1.60: +9 -20 lines
Diff to previous 1.60 (colored)

Since raw_input() and route_input() are gone from pr_input, we can
make the variable parameters of the protocol input functions fixed.
Also add the proto to make it similar to IPv6.
OK mpi@ guenther@ millert@

Revision 1.60 / (download) - annotate - [select for diffs], Tue Jan 3 10:52:21 2017 UTC (7 years, 5 months ago) by mpi
Branch: MAIN
Changes since 1.59: +1 -4 lines
Diff to previous 1.59 (colored)

Remove some recursives splsoftnet().

ok visa@, mikeb@

Revision 1.59 / (download) - annotate - [select for diffs], Fri Mar 4 22:38:23 2016 UTC (8 years, 3 months ago) by sashan
Branch: MAIN
CVS Tags: OPENBSD_6_0_BASE, OPENBSD_6_0
Changes since 1.58: +5 -1 lines
Diff to previous 1.58 (colored)

- putting back KASSERT(), which I've backed out on Jan 31
  We don't expect inbound packets to come to PF with statekey attached.

- I've also found missing call to pf_pkt_addr_changed() at various
  places, which needs to get fixed to prevent KASSERT() from firing.

OK mpi@, sthen@

Revision 1.58 / (download) - annotate - [select for diffs], Wed Dec 2 08:47:00 2015 UTC (8 years, 6 months ago) by claudio
Branch: MAIN
CVS Tags: OPENBSD_5_9_BASE, OPENBSD_5_9
Changes since 1.57: +2 -2 lines
Diff to previous 1.57 (colored)

Rework the MPLS handling. Remove the lookup loops since nothing is using
them and they make everything so much harder with no gain. Remove the
ifp argument from mpls_input since it is not needed. On the input side
the lookup side is modified a bit when it comes to BOS handling.
Tested in a L3VPN setup with ldpd and bgpd. Commiting now so we can move
on with cleaning up rt_ifp usage. If this breaks L2VPN I will fix it once
reported. OK mpi@

Revision 1.57 / (download) - annotate - [select for diffs], Wed Jul 29 00:04:03 2015 UTC (8 years, 10 months ago) by rzalamena
Branch: MAIN
CVS Tags: OPENBSD_5_8_BASE, OPENBSD_5_8
Changes since 1.56: +3 -14 lines
Diff to previous 1.56 (colored)

Don't use mpls_input() as input handler anymore and instead call it
directly. Also protect non mp-safe functions while at it.

ok mpi@.

Revision 1.56 / (download) - annotate - [select for diffs], Mon Jul 20 21:16:39 2015 UTC (8 years, 10 months ago) by rzalamena
Branch: MAIN
Changes since 1.55: +14 -4 lines
Diff to previous 1.55 (colored)

Kill NETISR_MPLS, from now on we will use interface input handlers to deal
with MPLS packets.

ok mpi@, claudio@

Revision 1.55 / (download) - annotate - [select for diffs], Tue Jun 16 11:09:40 2015 UTC (8 years, 11 months ago) by mpi
Branch: MAIN
Changes since 1.54: +3 -3 lines
Diff to previous 1.54 (colored)

Store a unique ID, an interface index, rather than a pointer to the
receiving interface in the packet header of every mbuf.

The interface pointer should now be retrieved when necessary with
if_get().  If a NULL pointer is returned by if_get(), the interface
has probably been destroy/removed and the mbuf should be freed.

Such mechanism will simplify garbage collection of mbufs and limit
problems with dangling ifp pointers.

Tested by jmatthew@ and krw@, discussed with many.

ok mikeb@, bluhm@, dlg@

Revision 1.54 / (download) - annotate - [select for diffs], Fri Apr 10 13:58:20 2015 UTC (9 years, 2 months ago) by dlg
Branch: MAIN
Changes since 1.53: +5 -15 lines
Diff to previous 1.53 (colored)

replace the use of ifqueues for most input queues serviced by netisr
with niqueues.

this change is so big because there's a lot of code that takes
pointers to different input queues (eg, ether_input picks between
ipv4, ipv6, pppoe, arp, and mpls input queues) and falls through
to code to enqueue packets against the pointer. if i changed only
one of the input queues id have to add sepearate code paths, one
for ifqueues and one for niqueues in each of these places

by flipping all these input queues at once i can keep the currently
common code common.

testing by mpi@ sthen@ and rafael zalamena
ok mpi@ sthen@ claudio@ henning@

Revision 1.53 / (download) - annotate - [select for diffs], Wed Mar 18 01:12:16 2015 UTC (9 years, 2 months ago) by mcbride
Branch: MAIN
Changes since 1.52: +10 -2 lines
Diff to previous 1.52 (colored)

"handle" wccp2 packets if net.inet.gre.wccp is set to 2 by truncating
skipping the wccp 2 header. Tested with Cisco ASA.

"looks correct" claudio
ok yasuoka

Revision 1.52 / (download) - annotate - [select for diffs], Fri Dec 19 17:14:40 2014 UTC (9 years, 5 months ago) by tedu
Branch: MAIN
CVS Tags: OPENBSD_5_7_BASE, OPENBSD_5_7
Changes since 1.51: +1 -5 lines
Diff to previous 1.51 (colored)

unifdef INET in net code as a precursor to removing the pretend option.
long live the one true internet.
ok henning mikeb

Revision 1.51 / (download) - annotate - [select for diffs], Sun Sep 14 14:17:26 2014 UTC (9 years, 8 months ago) by jsg
Branch: MAIN
Changes since 1.50: +1 -2 lines
Diff to previous 1.50 (colored)

remove uneeded proc.h includes
ok mpi@ kspillner@

Revision 1.50 / (download) - annotate - [select for diffs], Tue Jul 22 11:06:10 2014 UTC (9 years, 10 months ago) by mpi
Branch: MAIN
CVS Tags: OPENBSD_5_6_BASE, OPENBSD_5_6
Changes since 1.49: +1 -2 lines
Diff to previous 1.49 (colored)

Fewer <netinet/in_systm.h> !

Revision 1.49 / (download) - annotate - [select for diffs], Mon Apr 14 09:06:42 2014 UTC (10 years, 2 months ago) by mpi
Branch: MAIN
Changes since 1.48: +3 -3 lines
Diff to previous 1.48 (colored)

"struct pkthdr" holds a routing table ID, not a routing domain one.
Avoid the confusion by using an appropriate name for the variable.

Note that since routing domain IDs are a subset of the set of routing
table IDs, the following idiom is correct:

	rtableid = rdomain

But to get the routing domain ID corresponding to a given routing table
ID, you must call rtable_l2(9).

claudio@ likes it, ok mikeb@

Revision 1.48 / (download) - annotate - [select for diffs], Tue Dec 31 03:24:44 2013 UTC (10 years, 5 months ago) by tedu
Branch: MAIN
CVS Tags: OPENBSD_5_5_BASE, OPENBSD_5_5
Changes since 1.47: +2 -2 lines
Diff to previous 1.47 (colored)

bcopy -> memcpy. reviewed with one fix from matthew

Revision 1.47 / (download) - annotate - [select for diffs], Thu Oct 24 11:31:43 2013 UTC (10 years, 7 months ago) by mpi
Branch: MAIN
Changes since 1.46: +1 -5 lines
Diff to previous 1.46 (colored)

Remove the number of in6_var.h inclusions by moving some functions and
global variables to in6.h.

ok deraadt@

Revision 1.46 / (download) - annotate - [select for diffs], Wed Oct 23 15:12:42 2013 UTC (10 years, 7 months ago) by mpi
Branch: MAIN
Changes since 1.45: +1 -2 lines
Diff to previous 1.45 (colored)

Remove the number of in_var.h inclusions by moving some functions and
global variables to in.h.

ok mikeb@, deraadt@

Revision 1.45 / (download) - annotate - [select for diffs], Thu Oct 17 16:27:44 2013 UTC (10 years, 7 months ago) by bluhm
Branch: MAIN
Changes since 1.44: +5 -1 lines
Diff to previous 1.44 (colored)

The header file netinet/in_var.h included netinet6/in6_var.h.  This
created a bunch of useless dependencies.  Remove this implicit
inclusion and do an explicit #include <netinet6/in6_var.h> when it
is needed.
OK mpi@ henning@

Revision 1.44 / (download) - annotate - [select for diffs], Sat Jul 9 00:47:18 2011 UTC (12 years, 11 months ago) by henning
Branch: MAIN
CVS Tags: OPENBSD_5_4_BASE, OPENBSD_5_4, OPENBSD_5_3_BASE, OPENBSD_5_3, OPENBSD_5_2_BASE, OPENBSD_5_2, OPENBSD_5_1_BASE, OPENBSD_5_1, OPENBSD_5_0_BASE, OPENBSD_5_0
Changes since 1.43: +1 -14 lines
Diff to previous 1.43 (colored)

begone, fucking rotten appletalk shit. ok room

Revision 1.43 / (download) - annotate - [select for diffs], Fri Jul 8 18:30:17 2011 UTC (12 years, 11 months ago) by yasuoka
Branch: MAIN
Changes since 1.42: +7 -7 lines
Diff to previous 1.42 (colored)

Include PIPEX in kernel by default.  And add new sysctl variable
`net.pipex.enable' to enable PIPEX.   By default, pipex is disabled
and it will not process packets from wire.  Update man pages and
update HOWTO_PIPEX_NPPPD.txt for testers.

discussed with dlg@, ok deraadt@ mcbride@ claudio@

Revision 1.42 / (download) - annotate - [select for diffs], Tue Jul 5 21:40:38 2011 UTC (12 years, 11 months ago) by dhill
Branch: MAIN
Changes since 1.41: +7 -22 lines
Diff to previous 1.41 (colored)

ansify

ok claudio@

Revision 1.41 / (download) - annotate - [select for diffs], Tue May 31 13:07:20 2011 UTC (13 years ago) by sthen
Branch: MAIN
Changes since 1.40: +3 -3 lines
Diff to previous 1.40 (colored)

fix typos in comment

Revision 1.40 / (download) - annotate - [select for diffs], Tue Sep 28 14:14:54 2010 UTC (13 years, 8 months ago) by yasuoka
Branch: MAIN
CVS Tags: OPENBSD_4_9_BASE, OPENBSD_4_9
Changes since 1.39: +3 -2 lines
Diff to previous 1.39 (colored)

wrap long line.  correct indent.  delete a useless comment.

OK djm@ claudio@ dlg@

Revision 1.39 / (download) - annotate - [select for diffs], Fri Sep 24 14:50:30 2010 UTC (13 years, 8 months ago) by hsuenaga
Branch: MAIN
Changes since 1.38: +5 -4 lines
Diff to previous 1.38 (colored)

Add L2TP support to PIPEX.
We can use IPv6 address as outer header of L2TP.

Kernel ABI is changed. You must update npppd.

OK @claudio, yasuoka@, dlg@

Revision 1.38 / (download) - annotate - [select for diffs], Sat Jun 26 19:49:54 2010 UTC (13 years, 11 months ago) by claudio
Branch: MAIN
CVS Tags: OPENBSD_4_8_BASE, OPENBSD_4_8
Changes since 1.37: +6 -1 lines
Diff to previous 1.37 (colored)

Implement a simple keepalive mechanism in gre(4) that is compatible with
the one used by Cisco. It sends a return gre packet inside a gre packet
to the other side and expects it to return.
OK deraadt, reyk additional testing by sthen

Revision 1.37 / (download) - annotate - [select for diffs], Tue May 11 09:22:56 2010 UTC (14 years, 1 month ago) by claudio
Branch: MAIN
Changes since 1.36: +14 -2 lines
Diff to previous 1.36 (colored)

Add support for MPLS in GRE. Fairly trivial and a NOP unless option MPLS
is defined.

Revision 1.36 / (download) - annotate - [select for diffs], Tue Apr 20 22:05:43 2010 UTC (14 years, 1 month ago) by tedu
Branch: MAIN
Changes since 1.35: +2 -1 lines
Diff to previous 1.35 (colored)

remove proc.h include from uvm_map.h.  This has far reaching effects, as
sysctl.h was reliant on this particular include, and many drivers included
sysctl.h unnecessarily.  remove sysctl.h or add proc.h as needed.
ok deraadt

Revision 1.35 / (download) - annotate - [select for diffs], Tue Jan 12 23:33:24 2010 UTC (14 years, 5 months ago) by yasuoka
Branch: MAIN
CVS Tags: OPENBSD_4_7_BASE, OPENBSD_4_7
Changes since 1.34: +55 -1 lines
Diff to previous 1.34 (colored)

Add input and user protocol hook to handle GRE packets by pipex.

ok @dlg

Revision 1.34 / (download) - annotate - [select for diffs], Sat Nov 21 14:08:14 2009 UTC (14 years, 6 months ago) by claudio
Branch: MAIN
Changes since 1.33: +5 -1 lines
Diff to previous 1.33 (colored)

Add a way to bind the tunnel endpoint of a gif/gre interface into a
different rdomain than the default one. This allows to do MPLS VPNs
without the MPLS madness.  OK deraadt@, henning@

Revision 1.33 / (download) - annotate - [select for diffs], Tue Jun 2 17:10:23 2009 UTC (15 years ago) by henning
Branch: MAIN
CVS Tags: OPENBSD_4_6_BASE, OPENBSD_4_6
Changes since 1.32: +9 -1 lines
Diff to previous 1.32 (colored)

do the pf_pkt_addr_changed(m) magic just like gif etc
tested by Manuel Rodriguez Morales <marodriguez at grupogdt.com>

Revision 1.32 / (download) - annotate - [select for diffs], Thu Jun 26 05:42:20 2008 UTC (15 years, 11 months ago) by ray
Branch: MAIN
CVS Tags: OPENBSD_4_5_BASE, OPENBSD_4_5, OPENBSD_4_4_BASE, OPENBSD_4_4
Changes since 1.31: +1 -8 lines
Diff to previous 1.31 (colored)

First pass at removing clauses 3 and 4 from NetBSD licenses.

Not sure what's more surprising: how long it took for NetBSD to
catch up to the rest of the BSDs (including UCB), or the amount of
code that NetBSD has claimed for itself without attributing to the
actual authors.

OK deraadt@

Revision 1.31 / (download) - annotate - [select for diffs], Sun May 27 21:20:52 2007 UTC (17 years ago) by claudio
Branch: MAIN
CVS Tags: OPENBSD_4_3_BASE, OPENBSD_4_3, OPENBSD_4_2_BASE, OPENBSD_4_2
Changes since 1.30: +3 -3 lines
Diff to previous 1.30 (colored)

De-static. OK dlg@

Revision 1.30 / (download) - annotate - [select for diffs], Tue Apr 10 17:47:55 2007 UTC (17 years, 2 months ago) by miod
Branch: MAIN
Changes since 1.29: +2 -2 lines
Diff to previous 1.29 (colored)

``it's'' -> ``its'' when the grammar gods require this change.

Revision 1.29 / (download) - annotate - [select for diffs], Sat Mar 25 22:41:48 2006 UTC (18 years, 2 months ago) by djm
Branch: MAIN
CVS Tags: OPENBSD_4_1_BASE, OPENBSD_4_1, OPENBSD_4_0_BASE, OPENBSD_4_0
Changes since 1.28: +3 -3 lines
Diff to previous 1.28 (colored)

allow bpf(4) to ignore packets based on their direction (inbound or
outbound), using a new BIOCSDIRFILT ioctl;
guidance, feedback and ok canacar@

Revision 1.28 / (download) - annotate - [select for diffs], Sat Mar 4 22:40:16 2006 UTC (18 years, 3 months ago) by brad
Branch: MAIN
Changes since 1.27: +3 -3 lines
Diff to previous 1.27 (colored)

With the exception of two other small uncommited diffs this moves
the remainder of the network stack from splimp to splnet.

ok miod@

Revision 1.27 / (download) - annotate - [select for diffs], Sun Jul 31 03:52:19 2005 UTC (18 years, 10 months ago) by pascoe
Branch: MAIN
CVS Tags: OPENBSD_3_9_BASE, OPENBSD_3_9, OPENBSD_3_8_BASE, OPENBSD_3_8
Changes since 1.26: +5 -36 lines
Diff to previous 1.26 (colored)

Introduce bpf_mtap_af and bpf_mtap_hdr to be used when passing a mbuf chain
to bpf with either an address family or other header added.

These helpers only allocate a much smaller struct m_hdr on the stack when
needed, rather than leaving 256 byte struct mbufs on the stack in deep
call paths.  Also removes a fair bit of duplicated code.

commit now, tune after deraadt@

Revision 1.26 / (download) - annotate - [select for diffs], Wed Jun 8 06:16:42 2005 UTC (19 years ago) by henning
Branch: MAIN
Changes since 1.25: +1 -13 lines
Diff to previous 1.25 (colored)

netns bites the dust

Revision 1.25 / (download) - annotate - [select for diffs], Sat Jun 26 21:37:09 2004 UTC (19 years, 11 months ago) by pb
Branch: MAIN
CVS Tags: OPENBSD_3_7_BASE, OPENBSD_3_7, OPENBSD_3_6_BASE, OPENBSD_3_6
Changes since 1.24: +3 -13 lines
Diff to previous 1.24 (colored)

use IF_INPUT_ENQUEUE

ok henning@, mcbride@

Revision 1.6.2.7 / (download) - annotate - [select for diffs], Thu Feb 19 10:57:24 2004 UTC (20 years, 3 months ago) by niklas
Branch: SMP
Changes since 1.6.2.6: +11 -13 lines
Diff to previous 1.6.2.6 (colored) to branchpoint 1.6 (colored) next main 1.7 (colored)

Merge of current from two weeks agointo the SMP branch

Revision 1.24 / (download) - annotate - [select for diffs], Wed Dec 10 07:22:43 2003 UTC (20 years, 6 months ago) by itojun
Branch: MAIN
CVS Tags: SMP_SYNC_B, SMP_SYNC_A, OPENBSD_3_5_BASE, OPENBSD_3_5
Changes since 1.23: +9 -9 lines
Diff to previous 1.23 (colored)

de-register.  deraadt ok

Revision 1.23 / (download) - annotate - [select for diffs], Wed Dec 3 14:52:23 2003 UTC (20 years, 6 months ago) by markus
Branch: MAIN
Changes since 1.22: +2 -3 lines
Diff to previous 1.22 (colored)

add support for ifconfig clone/destroy; ok henning deraadt

Revision 1.22 / (download) - annotate - [select for diffs], Wed Jul 9 22:03:16 2003 UTC (20 years, 11 months ago) by itojun
Branch: MAIN
CVS Tags: OPENBSD_3_4_BASE, OPENBSD_3_4
Changes since 1.21: +2 -3 lines
Diff to previous 1.21 (colored)

do not flip ip_len/ip_off in netinet stack.  deraadt ok.
(please test, especially PF portion)

Revision 1.12.4.3 / (download) - annotate - [select for diffs], Mon May 19 22:40:40 2003 UTC (21 years ago) by tedu
Branch: UBC
Changes since 1.12.4.2: +40 -13 lines
Diff to previous 1.12.4.2 (colored) to branchpoint 1.12 (colored) next main 1.13 (colored)

sync

Revision 1.6.2.6 / (download) - annotate - [select for diffs], Tue May 13 19:36:17 2003 UTC (21 years, 1 month ago) by ho
Branch: SMP
Changes since 1.6.2.5: +40 -13 lines
Diff to previous 1.6.2.5 (colored) to branchpoint 1.6 (colored)

Sync the SMP branch to -current. This includes moving to ELF.

Revision 1.21 / (download) - annotate - [select for diffs], Sat May 3 01:43:07 2003 UTC (21 years, 1 month ago) by itojun
Branch: MAIN
CVS Tags: UBC_SYNC_A
Changes since 1.20: +3 -1 lines
Diff to previous 1.20 (colored)

just as a safety measure, set m_flags to 0 for mbufs allocated on stack.
dhartmei ok

Revision 1.20 / (download) - annotate - [select for diffs], Tue Apr 22 02:52:28 2003 UTC (21 years, 1 month ago) by itojun
Branch: MAIN
Changes since 1.19: +38 -13 lines
Diff to previous 1.19 (colored)

correct (false) assumption made about m->m_len.  dhartmei ok.

Revision 1.6.2.5 / (download) - annotate - [select for diffs], Fri Mar 28 00:06:54 2003 UTC (21 years, 2 months ago) by niklas
Branch: SMP
Changes since 1.6.2.4: +37 -18 lines
Diff to previous 1.6.2.4 (colored) to branchpoint 1.6 (colored)

Sync the SMP branch with 3.3

Revision 1.12.4.2 / (download) - annotate - [select for diffs], Tue Oct 29 00:36:47 2002 UTC (21 years, 7 months ago) by art
Branch: UBC
Changes since 1.12.4.1: +19 -18 lines
Diff to previous 1.12.4.1 (colored) to branchpoint 1.12 (colored)

sync to -current

Revision 1.19 / (download) - annotate - [select for diffs], Fri Aug 16 09:32:39 2002 UTC (21 years, 10 months ago) by itojun
Branch: MAIN
CVS Tags: UBC_SYNC_B, OPENBSD_3_3_BASE, OPENBSD_3_3, OPENBSD_3_2_BASE, OPENBSD_3_2
Changes since 1.18: +5 -4 lines
Diff to previous 1.18 (colored)

pass unprocessed GRE packet to raw ip socket.  binkertn@ ok

Revision 1.12.4.1 / (download) - annotate - [select for diffs], Tue Jun 11 03:31:36 2002 UTC (22 years ago) by art
Branch: UBC
Changes since 1.12: +24 -18 lines
Diff to previous 1.12 (colored)

Sync UBC branch to -current

Revision 1.18 / (download) - annotate - [select for diffs], Sun Jun 9 16:26:10 2002 UTC (22 years ago) by itojun
Branch: MAIN
Changes since 1.17: +15 -15 lines
Diff to previous 1.17 (colored)

whitespace

Revision 1.17 / (download) - annotate - [select for diffs], Wed Apr 3 20:37:28 2002 UTC (22 years, 2 months ago) by angelos
Branch: MAIN
CVS Tags: OPENBSD_3_1_BASE, OPENBSD_3_1
Changes since 1.16: +11 -4 lines
Diff to previous 1.16 (colored)

Don't process WCCPv1-style GRE packets, unless allowed (via sysctl
variable); GRE processing must also be allowed. From
joeycoleman@acm.org, ok deraadt@ niklas@

Revision 1.6.2.4 / (download) - annotate - [select for diffs], Thu Mar 28 14:56:45 2002 UTC (22 years, 2 months ago) by niklas
Branch: SMP
Changes since 1.6.2.3: +4 -16 lines
Diff to previous 1.6.2.3 (colored) to branchpoint 1.6 (colored)

Merge in -current from roughly a week ago

Revision 1.16 / (download) - annotate - [select for diffs], Sun Mar 24 01:26:05 2002 UTC (22 years, 2 months ago) by angelos
Branch: MAIN
Changes since 1.15: +12 -1 lines
Diff to previous 1.15 (colored)

WCCP support (trivial hack, it's not the complete protocol, but it'll
accept packets from Cisco boxes) --- from joeycoleman@acm.org

Revision 1.15 / (download) - annotate - [select for diffs], Fri Mar 15 18:19:52 2002 UTC (22 years, 3 months ago) by millert
Branch: MAIN
Changes since 1.14: +1 -13 lines
Diff to previous 1.14 (colored)

Kill #if __STDC__ used to do K&R vs. ANSI varargs/stdarg; just do things
the ANSI way.

Revision 1.14 / (download) - annotate - [select for diffs], Thu Mar 14 03:16:11 2002 UTC (22 years, 3 months ago) by millert
Branch: MAIN
Changes since 1.13: +2 -2 lines
Diff to previous 1.13 (colored)

Final __P removal plus some cosmetic fixups

Revision 1.13 / (download) - annotate - [select for diffs], Thu Mar 14 01:27:11 2002 UTC (22 years, 3 months ago) by millert
Branch: MAIN
Changes since 1.12: +3 -3 lines
Diff to previous 1.12 (colored)

First round of __P removal in sys

Revision 1.6.2.3 / (download) - annotate - [select for diffs], Wed Oct 31 03:29:03 2001 UTC (22 years, 7 months ago) by nate
Branch: SMP
Changes since 1.6.2.2: +2 -2 lines
Diff to previous 1.6.2.2 (colored) to branchpoint 1.6 (colored)

Sync the SMP branch to something just after 3.0

Revision 1.12 / (download) - annotate - [select for diffs], Tue Sep 4 00:57:44 2001 UTC (22 years, 9 months ago) by angelos
Branch: MAIN
CVS Tags: UBC_BASE, OPENBSD_3_0_BASE, OPENBSD_3_0
Branch point for: UBC
Changes since 1.11: +2 -2 lines
Diff to previous 1.11 (colored)

Make it compile without option BPF.

Revision 1.6.2.2 / (download) - annotate - [select for diffs], Wed Jul 4 10:54:47 2001 UTC (22 years, 11 months ago) by niklas
Branch: SMP
Changes since 1.6.2.1: +2 -7 lines
Diff to previous 1.6.2.1 (colored) to branchpoint 1.6 (colored)

Merge in -current from two days ago in the SMP branch.
As usual with merges, they do not indicate progress, so do not hold
your breath for working SMP, and do not mail me and ask about the
state of it.  It has not changed.  There is work ongoing, but very, very
slowly.  The commit is done in parts as to not lock up the tree in too
big chunks at a time.

Revision 1.11 / (download) - annotate - [select for diffs], Tue Jun 19 00:48:23 2001 UTC (22 years, 11 months ago) by deraadt
Branch: MAIN
Changes since 1.10: +2 -1 lines
Diff to previous 1.10 (colored)

mop up after angelos

Revision 1.10 / (download) - annotate - [select for diffs], Fri Jun 8 03:53:46 2001 UTC (23 years ago) by angelos
Branch: MAIN
Changes since 1.9: +1 -6 lines
Diff to previous 1.9 (colored)

Cut down on include files.

Revision 1.9 / (download) - annotate - [select for diffs], Tue Jun 5 23:43:46 2001 UTC (23 years ago) by maja
Branch: MAIN
Changes since 1.8: +2 -3 lines
Diff to previous 1.8 (colored)

Allow boot -c to change number of gre devices. -moj ok angelos@

Revision 1.6.2.1 / (download) - annotate - [select for diffs], Mon May 14 22:40:10 2001 UTC (23 years, 1 month ago) by niklas
Branch: SMP
Changes since 1.6: +25 -10 lines
Diff to previous 1.6 (colored)

merge in approximately 2.9 into SMP branch

Revision 1.8 / (download) - annotate - [select for diffs], Tue Feb 27 09:54:21 2001 UTC (23 years, 3 months ago) by niklas
Branch: MAIN
CVS Tags: OPENBSD_2_9_BASE, OPENBSD_2_9
Changes since 1.7: +1 -2 lines
Diff to previous 1.7 (colored)

Remove superfluous printf in Angelos last commit

Revision 1.7 / (download) - annotate - [select for diffs], Fri Feb 9 19:59:10 2001 UTC (23 years, 4 months ago) by angelos
Branch: MAIN
Changes since 1.6: +26 -10 lines
Diff to previous 1.6 (colored)

Fix BPF support.

Revision 1.6 / (download) - annotate - [select for diffs], Tue Jan 25 17:18:59 2000 UTC (24 years, 4 months ago) by espie
Branch: MAIN
CVS Tags: SMP_BASE, OPENBSD_2_8_BASE, OPENBSD_2_8, OPENBSD_2_7_BASE, OPENBSD_2_7
Branch point for: SMP
Changes since 1.5: +3 -1 lines
Diff to previous 1.5 (colored)

Ok, so setsoftnet is md.

Well, on the amiga, setsoftnet *REQUIRES* machine/cpu.h to work...
and no include mentioned in those files pulls machine/cpu.h...

Nit-fix: / * INET6 */ -> /* INET6 */

Revision 1.5 / (download) - annotate - [select for diffs], Sun Jan 16 00:35:43 2000 UTC (24 years, 5 months ago) by angelos
Branch: MAIN
Changes since 1.4: +2 -2 lines
Diff to previous 1.4 (colored)

ETHERTYPE_ATALK -> ETHERTYPE_AT (op21@squish.org)

Revision 1.4 / (download) - annotate - [select for diffs], Sat Jan 8 00:07:18 2000 UTC (24 years, 5 months ago) by angelos
Branch: MAIN
Changes since 1.3: +41 -1 lines
Diff to previous 1.3 (colored)

Incoming bpf tap.

Revision 1.3 / (download) - annotate - [select for diffs], Fri Jan 7 21:57:02 2000 UTC (24 years, 5 months ago) by angelos
Branch: MAIN
Changes since 1.2: +2 -11 lines
Diff to previous 1.2 (colored)

Remove unused include files.

Revision 1.2 / (download) - annotate - [select for diffs], Fri Jan 7 21:50:21 2000 UTC (24 years, 5 months ago) by angelos
Branch: MAIN
Changes since 1.1: +2 -1 lines
Diff to previous 1.1 (colored)

Missing sysctl.h include

Revision 1.1 / (download) - annotate - [select for diffs], Fri Jan 7 21:38:01 2000 UTC (24 years, 5 months ago) by angelos
Branch: MAIN

GRE/MobileIP input routine processing, from NetBSD (with a few
changes). Also, minor cleanup in in_proto.c

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.