NetBSD/sys/netinet
ozaki-r daf303d013 Avoid a race condition of DAD timer destructions
When we see dp->dad_ifa == NULL, it means that the ifa is being deleted and also
the callout is scheduled again by someone.  We shouldn't rely on a result of
callout_pending to know if the callout is scheduled because it returns false if
the subsequent callout handler is already on the fly.

We have to always delegate the destruction of dp to the subsequent handler
unconditionally if dp->dad_ifa == NULL. Otherwise, the first handler destroys
the dp and the second handler tries to handle destroyed dp.
2018-02-24 07:53:15 +00:00
..
Makefile add l2tp(4) L2TPv3 interface. 2017-02-16 08:12:43 +00:00
accept_filter.h
accf_data.c KNF. Remove extra spaces. No functional change. 2016-07-07 06:55:38 +00:00
accf_http.c include "ioconf.h" to get the 'void <driver>attach(int count);' prototype. 2015-08-20 14:40:16 +00:00
cpu_in_cksum.c
dccp.h Add DCCP protocol support from KAME. 2015-02-10 19:11:52 +00:00
dccp_cc_sw.c Sweep unnecessary route.h inclusions 2016-04-26 08:44:44 +00:00
dccp_cc_sw.h Add DCCP protocol support from KAME. 2015-02-10 19:11:52 +00:00
dccp_tcplike.c Sweep unnecessary route.h inclusions 2016-04-26 08:44:44 +00:00
dccp_tcplike.h KNF. Remove extra spaces. No functional change. 2016-07-07 06:55:38 +00:00
dccp_tfrc.c KNF. Remove extra spaces. No functional change. 2016-07-07 06:55:38 +00:00
dccp_tfrc.h KNF. Remove extra spaces. No functional change. 2016-07-07 06:55:38 +00:00
dccp_tfrc_lookup.h Add DCCP protocol support from KAME. 2015-02-10 19:11:52 +00:00
dccp_usrreq.c Typos. 2018-02-08 09:05:16 +00:00
dccp_var.h KNF. Remove extra spaces. No functional change. 2016-07-07 06:55:38 +00:00
files.ipfilter
files.netinet Remove TCP_COMPAT_42. 2017-07-29 05:46:29 +00:00
icmp6.h Style, localify, remove XXX when there's no issue, and switch 'extra' 2018-01-23 10:55:38 +00:00
icmp_private.h
icmp_var.h PR/49676: Ryo Shimizu: ICMP_STATINC() buffer overflows 2015-02-18 17:00:15 +00:00
if_arp.c Avoid a race condition of DAD timer destructions 2018-02-24 07:53:15 +00:00
if_atm.c Make the routing table and rtcaches MP-safe 2016-12-12 03:55:57 +00:00
if_atm.h Constify rtentry of if_output 2016-04-28 00:16:56 +00:00
if_ether.h
if_inarp.h Replace malloc for DAD with kmem and move them out of the lock for DAD 2017-02-21 03:58:23 +00:00
igmp.c Remove RSVP_ISI, that's mostly dead code. FreeBSD and OpenBSD too removed 2018-02-07 11:42:57 +00:00
igmp.h
igmp_var.h
in.c Avoid a deadlock between softnet_lock and IFNET_LOCK 2018-02-24 07:37:08 +00:00
in.h Remove dead code. 2018-02-09 18:31:52 +00:00
in4_cksum.c Only check that the offset < sizeof(struct ip) if nxt != 0, i.e. in the 2014-11-30 18:15:41 +00:00
in_cksum.c
in_gif.c apply in{,6}_tunnel_validate() to gif(4). 2018-01-10 11:13:26 +00:00
in_gif.h preserve gif(4) configs by psref(9) like vlan(4) and l2tp(4). 2017-11-27 05:02:22 +00:00
in_ifattach.h
in_l2tp.c Several fixes in L2TP: 2018-01-26 07:49:15 +00:00
in_l2tp.h add missing files. 2017-02-16 08:23:35 +00:00
in_offload.c Stop using rt_gwroute on packet sending paths 2016-04-26 09:30:01 +00:00
in_offload.h
in_pcb.c 1) "#define ipi_spec_dst ipi_addr" in <netinet/in.h> 2018-01-01 00:51:36 +00:00
in_pcb.h 1) "#define ipi_spec_dst ipi_addr" in <netinet/in.h> 2018-01-01 00:51:36 +00:00
in_pcb_hdr.h Assert inph_locked on ipsec_pcb_skip_ipsec (was IPSEC_PCB_SKIP_IPSEC) 2017-06-02 03:41:20 +00:00
in_print.c add routines to print in_addr and sockaddr_in (in_print and sin_print) 2014-12-02 19:35:27 +00:00
in_proto.c Declare icmperrppslim in ip_icmp.c, it shouldn't be used elsewhere. 2018-02-05 08:38:06 +00:00
in_proto.h Revert previous: ran cvs commit when I meant cvs diff. Sorry! 2016-01-21 15:41:29 +00:00
in_selsrc.c Switch the address list of intefaces to pslist(9) 2016-07-07 09:32:01 +00:00
in_selsrc.h Hook up lltable/llentry with the kernel (and rumpkernel) 2015-08-31 08:02:44 +00:00
in_systm.h
in_var.h replace in_fmtaddr() by IN_PRINT(), and delete function in_fmtaddr() 2017-05-12 17:53:53 +00:00
ip.h
ip6.h
ip_carp.c Make if_link_queue MP-safe if IFEF_MPSAFE 2017-12-06 09:54:47 +00:00
ip_carp.h Constify rtentry of if_output 2016-04-28 00:16:56 +00:00
ip_ecn.c Split ip_ecn code into its own module, so it can be shared between 2017-12-09 08:03:06 +00:00
ip_ecn.h
ip_encap.c Fix memory leak, found by Mootja. 2018-01-14 16:18:11 +00:00
ip_encap.h Add argument to encapsw->pr_input() instead of m_tag. 2017-11-15 10:42:41 +00:00
ip_etherip.c A few fixes: 2018-01-26 14:47:41 +00:00
ip_etherip.h
ip_flow.c Provide macros for softnet_lock and KERNEL_LOCK hiding NET_MPSAFE switch 2017-11-17 07:37:12 +00:00
ip_icmp.c Fix a possible buffer overflow in the IPv4 _ctlinput functions. 2018-02-08 09:32:02 +00:00
ip_icmp.h Use C99 types - in particular, stop using n_time and n_short -, style, and 2018-02-08 10:42:12 +00:00
ip_id.c
ip_input.c Avoid a deadlock between softnet_lock and IFNET_LOCK 2018-02-24 07:37:08 +00:00
ip_mroute.c Style (realign everything correctly), and fix a typo. 2018-02-09 08:03:33 +00:00
ip_mroute.h Remove RSVP_ISI, that's mostly dead code. FreeBSD and OpenBSD too removed 2018-02-07 11:42:57 +00:00
ip_output.c Keep a pointer to the interface of the multicast membership, because the 2018-02-12 18:19:12 +00:00
ip_private.h
ip_reass.c Change the error stat from IP_STAT_BADFRAGS to IP_STAT_TOOLONG. The 2018-02-08 10:03:52 +00:00
ip_var.h add ipsec(4) interface, which is used for route-based VPN. 2018-01-10 10:56:30 +00:00
pim.h
pim_var.h
portalgo.c Get rid of unnecessary header inclusions 2017-01-11 13:08:29 +00:00
portalgo.h
raw_ip.c join lines where they fit. 2018-02-14 16:45:24 +00:00
sctp.h Pack structs. 2017-06-27 11:55:07 +00:00
sctp_asconf.c Put back some commented out code. 2017-06-28 14:38:18 +00:00
sctp_asconf.h Add core networking support for SCTP. 2015-10-13 21:28:34 +00:00
sctp_constants.h Add core networking support for SCTP. 2015-10-13 21:28:34 +00:00
sctp_crc32.c sprinkle const on sctp_crc_c[] 2016-08-12 19:08:54 +00:00
sctp_crc32.h Add core networking support for SCTP. 2015-10-13 21:28:34 +00:00
sctp_hashdriver.c Add core networking support for SCTP. 2015-10-13 21:28:34 +00:00
sctp_hashdriver.h Add core networking support for SCTP. 2015-10-13 21:28:34 +00:00
sctp_header.h Pack structs. 2017-06-27 11:55:07 +00:00
sctp_indata.c Improve compliance to RFC 6458. 2017-12-10 11:52:14 +00:00
sctp_indata.h Add core networking support for SCTP. 2015-10-13 21:28:34 +00:00
sctp_input.c Check outgoing cookie size before accessing any contents. 2017-06-27 13:27:54 +00:00
sctp_input.h Add core networking support for SCTP. 2015-10-13 21:28:34 +00:00
sctp_output.c Improve compliance to RFC 6458. 2017-12-10 11:52:14 +00:00
sctp_output.h Add core networking support for SCTP. 2015-10-13 21:28:34 +00:00
sctp_pcb.c Make SCTP work when IPSEC is also defined. 2017-10-17 19:23:42 +00:00
sctp_pcb.h Add core networking support for SCTP. 2015-10-13 21:28:34 +00:00
sctp_peeloff.c Fix build when IPSEC enabled. 2016-04-25 21:21:02 +00:00
sctp_peeloff.h Add core networking support for SCTP. 2015-10-13 21:28:34 +00:00
sctp_structs.h Fix build when IPSEC enabled. 2016-04-25 21:21:02 +00:00
sctp_timer.c Add ipsec option header. 2017-12-10 11:03:58 +00:00
sctp_timer.h Add core networking support for SCTP. 2015-10-13 21:28:34 +00:00
sctp_uio.h Improve compliance to RFC 6458. 2017-12-10 11:52:14 +00:00
sctp_usrreq.c Improve compliance to RFC 6458. 2017-12-10 11:52:14 +00:00
sctp_var.h Add core networking support for SCTP. 2015-10-13 21:28:34 +00:00
sctputil.c ip6_sprintf -> IN6_PRINT so that we pass the size. 2017-01-16 15:44:46 +00:00
sctputil.h Use const for arguments to sctp_is_same_scope(). 2016-05-22 23:04:27 +00:00
tcp.h add a couple of lint comments. 2017-01-10 20:32:27 +00:00
tcp_congctl.c Restore behaviour to pre- tcp_congctl.c:1.18 for SACK. Further analysis 2017-01-02 09:29:38 +00:00
tcp_congctl.h
tcp_debug.c Sweep unnecessary route.h inclusions 2016-04-26 08:44:44 +00:00
tcp_debug.h
tcp_fsm.h
tcp_input.c Remove unused argument from tcp_signature_getsav. 2018-02-12 08:22:26 +00:00
tcp_output.c Remove unused argument from tcp_signature_getsav. 2018-02-12 08:22:26 +00:00
tcp_private.h
tcp_sack.c Remove unnecessary inclusions of nd6.h 2016-12-13 08:29:03 +00:00
tcp_seq.h fix some case of reference to uninitialized tp->snd_fack. 2014-07-25 17:53:59 +00:00
tcp_subr.c Run tcp_slowtimo in workqueue if NET_MPSAFE 2018-01-19 07:53:01 +00:00
tcp_timer.c Run tcp_slowtimo in workqueue if NET_MPSAFE 2018-01-19 07:53:01 +00:00
tcp_timer.h Run tcp_slowtimo in workqueue if NET_MPSAFE 2018-01-19 07:53:01 +00:00
tcp_usrreq.c add some more getsockopt(2) params 2017-08-15 09:21:48 +00:00
tcp_var.h Remove unused argument from tcp_signature_getsav. 2018-02-12 08:22:26 +00:00
tcp_vtw.c remove checks for failure after memory allocation calls that cannot fail: 2017-06-01 02:45:05 +00:00
tcp_vtw.h Remove unnecessary inclusions of nd6.h 2016-12-13 08:29:03 +00:00
tcpip.h
udp.h
udp_private.h
udp_usrreq.c Revert my two last changes in this file. They are apparently causing 2018-02-14 05:24:44 +00:00
udp_var.h Style, and remove prototype of udp_sysctl (does not exist). 2018-02-08 10:30:30 +00:00
wqinput.c Avoid a deadlock between softnet_lock and IFNET_LOCK 2018-02-24 07:37:08 +00:00
wqinput.h Defer some pr_input to workqueue 2017-02-02 02:52:10 +00:00