History log of /dflybsd-src/sys/net/ (Results 1 – 25 of 2004)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
83e7061f28-Aug-2024 Matthew Dillon <dillon@apollo.backplane.com>

poll - Fix events == 0 handling for TAP and TUN, fix console spam

* BSD poll() supports events == 0 representing a "HUP ONLY" event.
Most of our devices properly support this but TAP and TUN did n

poll - Fix events == 0 handling for TAP and TUN, fix console spam

* BSD poll() supports events == 0 representing a "HUP ONLY" event.
Most of our devices properly support this but TAP and TUN did not.

Fix TAP and TUN to support this feature. This fixes openvpn()
when operating under heavier loads.

* Fix console spam on non-debug kprintf()s by rate-limiting any
such spam if it occurs. If a device doe snot support poll()'s
HUP ONLY feature, the loop deregistration path will be hit and
generate a kprintf(). We don't want console spam to stall the
cpu.

show more ...


/dflybsd-src/contrib/dhcpcd/README.DRAGONFLY
/dflybsd-src/contrib/dhcpcd/hooks/10-wpa_supplicant
/dflybsd-src/contrib/dhcpcd/hooks/30-hostname
/dflybsd-src/contrib/dhcpcd/src/arp.c
/dflybsd-src/contrib/dhcpcd/src/defs.h
/dflybsd-src/contrib/dhcpcd/src/dhcp.c
/dflybsd-src/contrib/dhcpcd/src/dhcp6.c
/dflybsd-src/contrib/dhcpcd/src/dhcpcd-embedded.c
/dflybsd-src/contrib/dhcpcd/src/dhcpcd-embedded.h
/dflybsd-src/contrib/dhcpcd/src/dhcpcd.c
/dflybsd-src/contrib/dhcpcd/src/dhcpcd.conf.5
/dflybsd-src/contrib/dhcpcd/src/if-bsd.c
/dflybsd-src/contrib/dhcpcd/src/if-options.c
/dflybsd-src/contrib/dhcpcd/src/if-options.h
/dflybsd-src/contrib/dhcpcd/src/if.c
/dflybsd-src/contrib/dhcpcd/src/ipv6.c
/dflybsd-src/contrib/dhcpcd/src/ipv6nd.c
/dflybsd-src/contrib/dhcpcd/src/ipv6nd.h
/dflybsd-src/contrib/dhcpcd/src/logerr.c
/dflybsd-src/contrib/dhcpcd/src/privsep-bpf.c
/dflybsd-src/contrib/dhcpcd/src/privsep-control.c
/dflybsd-src/contrib/dhcpcd/src/privsep-inet.c
/dflybsd-src/contrib/dhcpcd/src/privsep-root.c
/dflybsd-src/contrib/dhcpcd/src/privsep-root.h
/dflybsd-src/contrib/dhcpcd/src/privsep.c
/dflybsd-src/contrib/dhcpcd/src/sa.c
/dflybsd-src/contrib/dhcpcd/src/sa.h
/dflybsd-src/contrib/less/LICENSE
/dflybsd-src/contrib/less/NEWS
/dflybsd-src/contrib/less/README.DRAGONFLY
/dflybsd-src/contrib/less/brac.c
/dflybsd-src/contrib/less/ch.c
/dflybsd-src/contrib/less/charset.c
/dflybsd-src/contrib/less/charset.h
/dflybsd-src/contrib/less/cmd.h
/dflybsd-src/contrib/less/cmdbuf.c
/dflybsd-src/contrib/less/command.c
/dflybsd-src/contrib/less/compose.uni
/dflybsd-src/contrib/less/cvt.c
/dflybsd-src/contrib/less/decode.c
/dflybsd-src/contrib/less/edit.c
/dflybsd-src/contrib/less/evar.c
/dflybsd-src/contrib/less/filename.c
/dflybsd-src/contrib/less/fmt.uni
/dflybsd-src/contrib/less/forwback.c
/dflybsd-src/contrib/less/funcs.h
/dflybsd-src/contrib/less/help.c
/dflybsd-src/contrib/less/ifile.c
/dflybsd-src/contrib/less/input.c
/dflybsd-src/contrib/less/jump.c
/dflybsd-src/contrib/less/lang.h
/dflybsd-src/contrib/less/less.h
/dflybsd-src/contrib/less/less.nro
/dflybsd-src/contrib/less/lessecho.c
/dflybsd-src/contrib/less/lessecho.nro
/dflybsd-src/contrib/less/lesskey.c
/dflybsd-src/contrib/less/lesskey.h
/dflybsd-src/contrib/less/lesskey.nro
/dflybsd-src/contrib/less/lesskey_parse.c
/dflybsd-src/contrib/less/lglob.h
/dflybsd-src/contrib/less/line.c
/dflybsd-src/contrib/less/linenum.c
/dflybsd-src/contrib/less/lsystem.c
/dflybsd-src/contrib/less/main.c
/dflybsd-src/contrib/less/mark.c
/dflybsd-src/contrib/less/optfunc.c
/dflybsd-src/contrib/less/option.c
/dflybsd-src/contrib/less/option.h
/dflybsd-src/contrib/less/opttbl.c
/dflybsd-src/contrib/less/os.c
/dflybsd-src/contrib/less/output.c
/dflybsd-src/contrib/less/pattern.c
/dflybsd-src/contrib/less/pattern.h
/dflybsd-src/contrib/less/pckeys.h
/dflybsd-src/contrib/less/position.c
/dflybsd-src/contrib/less/position.h
/dflybsd-src/contrib/less/prompt.c
/dflybsd-src/contrib/less/screen.c
/dflybsd-src/contrib/less/search.c
/dflybsd-src/contrib/less/signal.c
/dflybsd-src/contrib/less/tags.c
/dflybsd-src/contrib/less/ttyin.c
/dflybsd-src/contrib/less/ubin.uni
/dflybsd-src/contrib/less/version.c
/dflybsd-src/contrib/less/wide.uni
/dflybsd-src/contrib/less/xbuf.c
/dflybsd-src/contrib/less/xbuf.h
/dflybsd-src/crypto/openssh/PROTOCOL
/dflybsd-src/crypto/openssh/PROTOCOL.agent
/dflybsd-src/crypto/openssh/PROTOCOL.key
/dflybsd-src/crypto/openssh/PROTOCOL.krl
/dflybsd-src/crypto/openssh/PROTOCOL.mux
/dflybsd-src/crypto/openssh/README
/dflybsd-src/crypto/openssh/README.DELETED
/dflybsd-src/crypto/openssh/README.DRAGONFLY
/dflybsd-src/crypto/openssh/addr.c
/dflybsd-src/crypto/openssh/addr.h
/dflybsd-src/crypto/openssh/audit-bsm.c
/dflybsd-src/crypto/openssh/audit-linux.c
/dflybsd-src/crypto/openssh/audit.c
/dflybsd-src/crypto/openssh/auth-bsdauth.c
/dflybsd-src/crypto/openssh/auth-krb5.c
/dflybsd-src/crypto/openssh/auth-options.c
/dflybsd-src/crypto/openssh/auth-pam.c
/dflybsd-src/crypto/openssh/auth-pam.h
/dflybsd-src/crypto/openssh/auth-rhosts.c
/dflybsd-src/crypto/openssh/auth-shadow.c
/dflybsd-src/crypto/openssh/auth-sia.c
/dflybsd-src/crypto/openssh/auth.c
/dflybsd-src/crypto/openssh/auth.h
/dflybsd-src/crypto/openssh/auth2-gss.c
/dflybsd-src/crypto/openssh/auth2-hostbased.c
/dflybsd-src/crypto/openssh/auth2-kbdint.c
/dflybsd-src/crypto/openssh/auth2-methods.c
/dflybsd-src/crypto/openssh/auth2-none.c
/dflybsd-src/crypto/openssh/auth2-passwd.c
/dflybsd-src/crypto/openssh/auth2-pubkey.c
/dflybsd-src/crypto/openssh/auth2-pubkeyfile.c
/dflybsd-src/crypto/openssh/auth2.c
/dflybsd-src/crypto/openssh/authfd.c
/dflybsd-src/crypto/openssh/authfd.h
/dflybsd-src/crypto/openssh/authfile.c
/dflybsd-src/crypto/openssh/canohost.c
/dflybsd-src/crypto/openssh/chacha.c
/dflybsd-src/crypto/openssh/channels.c
/dflybsd-src/crypto/openssh/channels.h
/dflybsd-src/crypto/openssh/cipher-aes.c
/dflybsd-src/crypto/openssh/cipher-aesctr.c
/dflybsd-src/crypto/openssh/cipher-chachapoly-libcrypto.c
/dflybsd-src/crypto/openssh/cipher-chachapoly.c
/dflybsd-src/crypto/openssh/cipher.c
/dflybsd-src/crypto/openssh/cipher.h
/dflybsd-src/crypto/openssh/clientloop.c
/dflybsd-src/crypto/openssh/clientloop.h
/dflybsd-src/crypto/openssh/compat.c
/dflybsd-src/crypto/openssh/compat.h
/dflybsd-src/crypto/openssh/config.guess
/dflybsd-src/crypto/openssh/config.h.in
/dflybsd-src/crypto/openssh/config.log
/dflybsd-src/crypto/openssh/config.sub
/dflybsd-src/crypto/openssh/configure
/dflybsd-src/crypto/openssh/configure.ac
/dflybsd-src/crypto/openssh/contrib/ssh-copy-id
/dflybsd-src/crypto/openssh/contrib/ssh-copy-id.1
/dflybsd-src/crypto/openssh/crypto_api.h
/dflybsd-src/crypto/openssh/digest-libc.c
/dflybsd-src/crypto/openssh/dispatch.c
/dflybsd-src/crypto/openssh/dns.c
/dflybsd-src/crypto/openssh/dns.h
/dflybsd-src/crypto/openssh/ed25519.c
/dflybsd-src/crypto/openssh/ed25519.sh
/dflybsd-src/crypto/openssh/entropy.c
/dflybsd-src/crypto/openssh/gss-genr.c
/dflybsd-src/crypto/openssh/gss-serv-krb5.c
/dflybsd-src/crypto/openssh/gss-serv.c
/dflybsd-src/crypto/openssh/hostfile.c
/dflybsd-src/crypto/openssh/install-sh
/dflybsd-src/crypto/openssh/kex-names.c
/dflybsd-src/crypto/openssh/kex.c
/dflybsd-src/crypto/openssh/kex.h
/dflybsd-src/crypto/openssh/kexgexs.c
/dflybsd-src/crypto/openssh/krl.c
/dflybsd-src/crypto/openssh/krl.h
/dflybsd-src/crypto/openssh/log.c
/dflybsd-src/crypto/openssh/log.h
/dflybsd-src/crypto/openssh/loginrec.c
/dflybsd-src/crypto/openssh/match.c
/dflybsd-src/crypto/openssh/misc.c
/dflybsd-src/crypto/openssh/misc.h
/dflybsd-src/crypto/openssh/moduli
/dflybsd-src/crypto/openssh/moduli.c
/dflybsd-src/crypto/openssh/monitor.c
/dflybsd-src/crypto/openssh/monitor.h
/dflybsd-src/crypto/openssh/monitor_wrap.c
/dflybsd-src/crypto/openssh/monitor_wrap.h
/dflybsd-src/crypto/openssh/msg.c
/dflybsd-src/crypto/openssh/mux.c
/dflybsd-src/crypto/openssh/nchan.c
/dflybsd-src/crypto/openssh/packet.c
/dflybsd-src/crypto/openssh/packet.h
/dflybsd-src/crypto/openssh/pathnames.h
/dflybsd-src/crypto/openssh/platform-listen.c
/dflybsd-src/crypto/openssh/platform-pledge.c
/dflybsd-src/crypto/openssh/platform-tracing.c
/dflybsd-src/crypto/openssh/platform.c
/dflybsd-src/crypto/openssh/platform.h
/dflybsd-src/crypto/openssh/poly1305.c
/dflybsd-src/crypto/openssh/progressmeter.c
/dflybsd-src/crypto/openssh/readconf.c
/dflybsd-src/crypto/openssh/readconf.h
/dflybsd-src/crypto/openssh/readpass.c
/dflybsd-src/crypto/openssh/rijndael.c
/dflybsd-src/crypto/openssh/sandbox-capsicum.c
/dflybsd-src/crypto/openssh/sandbox-darwin.c
/dflybsd-src/crypto/openssh/sandbox-null.c
/dflybsd-src/crypto/openssh/sandbox-pledge.c
/dflybsd-src/crypto/openssh/sandbox-seccomp-filter.c
/dflybsd-src/crypto/openssh/sandbox-solaris.c
/dflybsd-src/crypto/openssh/sandbox-systrace.c
/dflybsd-src/crypto/openssh/scp.1
/dflybsd-src/crypto/openssh/scp.c
/dflybsd-src/crypto/openssh/servconf.c
/dflybsd-src/crypto/openssh/servconf.h
/dflybsd-src/crypto/openssh/serverloop.c
/dflybsd-src/crypto/openssh/session.c
/dflybsd-src/crypto/openssh/session.h
/dflybsd-src/crypto/openssh/sftp-client.c
/dflybsd-src/crypto/openssh/sftp-client.h
/dflybsd-src/crypto/openssh/sftp-common.c
/dflybsd-src/crypto/openssh/sftp-glob.c
/dflybsd-src/crypto/openssh/sftp-server.c
/dflybsd-src/crypto/openssh/sftp-usergroup.c
/dflybsd-src/crypto/openssh/sftp.1
/dflybsd-src/crypto/openssh/sftp.c
/dflybsd-src/crypto/openssh/sntrup761.c
/dflybsd-src/crypto/openssh/srclimit.c
/dflybsd-src/crypto/openssh/srclimit.h
/dflybsd-src/crypto/openssh/ssh-add.1
/dflybsd-src/crypto/openssh/ssh-add.c
/dflybsd-src/crypto/openssh/ssh-agent.1
/dflybsd-src/crypto/openssh/ssh-agent.c
/dflybsd-src/crypto/openssh/ssh-dss.c
/dflybsd-src/crypto/openssh/ssh-ecdsa-sk.c
/dflybsd-src/crypto/openssh/ssh-ecdsa.c
/dflybsd-src/crypto/openssh/ssh-ed25519-sk.c
/dflybsd-src/crypto/openssh/ssh-ed25519.c
/dflybsd-src/crypto/openssh/ssh-keygen.1
/dflybsd-src/crypto/openssh/ssh-keygen.c
/dflybsd-src/crypto/openssh/ssh-keyscan.1
/dflybsd-src/crypto/openssh/ssh-keyscan.c
/dflybsd-src/crypto/openssh/ssh-keysign.8
/dflybsd-src/crypto/openssh/ssh-keysign.c
/dflybsd-src/crypto/openssh/ssh-pkcs11-client.c
/dflybsd-src/crypto/openssh/ssh-pkcs11-helper.0
/dflybsd-src/crypto/openssh/ssh-pkcs11.c
/dflybsd-src/crypto/openssh/ssh-pkcs11.h
/dflybsd-src/crypto/openssh/ssh-rsa.c
/dflybsd-src/crypto/openssh/ssh-xmss.c
/dflybsd-src/crypto/openssh/ssh.1
/dflybsd-src/crypto/openssh/ssh.c
/dflybsd-src/crypto/openssh/ssh2.h
/dflybsd-src/crypto/openssh/ssh_api.c
/dflybsd-src/crypto/openssh/ssh_config
/dflybsd-src/crypto/openssh/ssh_config.5
/dflybsd-src/crypto/openssh/sshbuf-getput-crypto.c
/dflybsd-src/crypto/openssh/sshbuf.c
/dflybsd-src/crypto/openssh/sshbuf.h
/dflybsd-src/crypto/openssh/sshconnect.c
/dflybsd-src/crypto/openssh/sshconnect.h
/dflybsd-src/crypto/openssh/sshconnect2.c
/dflybsd-src/crypto/openssh/sshd-session.c
/dflybsd-src/crypto/openssh/sshd.8
/dflybsd-src/crypto/openssh/sshd.c
/dflybsd-src/crypto/openssh/sshd_config
/dflybsd-src/crypto/openssh/sshd_config.5
/dflybsd-src/crypto/openssh/sshkey-xmss.c
/dflybsd-src/crypto/openssh/sshkey-xmss.h
/dflybsd-src/crypto/openssh/sshkey.c
/dflybsd-src/crypto/openssh/sshkey.h
/dflybsd-src/crypto/openssh/sshsig.c
/dflybsd-src/crypto/openssh/umac.c
/dflybsd-src/crypto/openssh/version.h
/dflybsd-src/crypto/openssh/xmss_commons.c
/dflybsd-src/crypto/openssh/xmss_commons.h
/dflybsd-src/crypto/openssh/xmss_fast.c
/dflybsd-src/crypto/openssh/xmss_hash.c
/dflybsd-src/crypto/openssh/xmss_hash.h
/dflybsd-src/crypto/openssh/xmss_hash_address.c
/dflybsd-src/crypto/openssh/xmss_hash_address.h
/dflybsd-src/crypto/openssh/xmss_wots.c
/dflybsd-src/crypto/openssh/xmss_wots.h
/dflybsd-src/etc/defaults/rc.conf
/dflybsd-src/etc/rc.d/wg
/dflybsd-src/lib/libssh/Makefile
/dflybsd-src/libexec/Makefile
/dflybsd-src/libexec/sshd-session/Makefile
/dflybsd-src/libexec/sshd-session/Makefile.etc
/dflybsd-src/libexec/sshd-session/auth-passwd-custom.c
/dflybsd-src/libexec/sshd-session/sshd_config_expect
/dflybsd-src/nrelease/Makefile
/dflybsd-src/nrelease/gui/etc/X11/xorg.conf
/dflybsd-src/nrelease/gui/etc/rc.conf
/dflybsd-src/nrelease/gui/root/.xinitrc
/dflybsd-src/share/man/man4/acpi.4
/dflybsd-src/share/man/man4/bridge.4
/dflybsd-src/share/man/man5/rc.conf.5
/dflybsd-src/share/man/man5/wg.conf.5
/dflybsd-src/sys/bus/u4b/input/ums.c
/dflybsd-src/sys/conf/files
/dflybsd-src/sys/dev/acpica/acpi.c
/dflybsd-src/sys/dev/acpica/acpi_resource.c
/dflybsd-src/sys/dev/acpica/acpivar.h
/dflybsd-src/sys/dev/misc/evdev/cdev.c
/dflybsd-src/sys/dev/misc/evdev/evdev.c
/dflybsd-src/sys/dev/misc/evdev/evdev.h
/dflybsd-src/sys/dev/misc/evdev/evdev_mt.c
/dflybsd-src/sys/dev/misc/evdev/evdev_private.h
/dflybsd-src/sys/dev/misc/evdev/evdev_utils.c
/dflybsd-src/sys/dev/misc/evdev/freebsd-bitstring.h
/dflybsd-src/sys/dev/misc/evdev/input-event-codes.h
/dflybsd-src/sys/dev/misc/evdev/input.h
/dflybsd-src/sys/dev/misc/kbd/atkbd.c
/dflybsd-src/sys/dev/misc/kbd/atkbdc.c
/dflybsd-src/sys/dev/misc/kbd/atkbdcreg.h
/dflybsd-src/sys/dev/misc/kbd/atkbdreg.h
/dflybsd-src/sys/dev/misc/kbd/kbd.c
/dflybsd-src/sys/dev/misc/kbd/kbdreg.h
/dflybsd-src/sys/dev/misc/psm/psm.c
/dflybsd-src/sys/dev/misc/syscons/sysmouse.c
/dflybsd-src/sys/dev/netif/iwm/fw/iwm9000/Makefile
/dflybsd-src/sys/dev/netif/iwm/fw/iwm9260/Makefile
/dflybsd-src/sys/dev/netif/iwm/if_iwm.c
/dflybsd-src/sys/dev/netif/iwm/if_iwm_binding.c
/dflybsd-src/sys/dev/netif/iwm/if_iwm_binding.h
/dflybsd-src/sys/dev/netif/iwm/if_iwm_config.h
/dflybsd-src/sys/dev/netif/iwm/if_iwm_constants.h
/dflybsd-src/sys/dev/netif/iwm/if_iwm_debug.h
/dflybsd-src/sys/dev/netif/iwm/if_iwm_fw.c
/dflybsd-src/sys/dev/netif/iwm/if_iwm_fw.h
/dflybsd-src/sys/dev/netif/iwm/if_iwm_led.h
/dflybsd-src/sys/dev/netif/iwm/if_iwm_mac_ctxt.h
/dflybsd-src/sys/dev/netif/iwm/if_iwm_notif_wait.h
/dflybsd-src/sys/dev/netif/iwm/if_iwm_pcie_trans.h
/dflybsd-src/sys/dev/netif/iwm/if_iwm_phy_ctxt.h
/dflybsd-src/sys/dev/netif/iwm/if_iwm_phy_db.c
/dflybsd-src/sys/dev/netif/iwm/if_iwm_phy_db.h
/dflybsd-src/sys/dev/netif/iwm/if_iwm_power.h
/dflybsd-src/sys/dev/netif/iwm/if_iwm_scan.c
/dflybsd-src/sys/dev/netif/iwm/if_iwm_scan.h
/dflybsd-src/sys/dev/netif/iwm/if_iwm_sf.h
/dflybsd-src/sys/dev/netif/iwm/if_iwm_sta.h
/dflybsd-src/sys/dev/netif/iwm/if_iwm_time_event.c
/dflybsd-src/sys/dev/netif/iwm/if_iwm_time_event.h
/dflybsd-src/sys/dev/netif/iwm/if_iwm_util.h
/dflybsd-src/sys/dev/netif/iwm/if_iwmreg.h
/dflybsd-src/sys/dev/netif/iwm/if_iwmvar.h
/dflybsd-src/sys/kern/kern_clock.c
/dflybsd-src/sys/kern/kern_mib.c
/dflybsd-src/sys/kern/subr_bus.c
/dflybsd-src/sys/kern/sys_generic.c
/dflybsd-src/sys/kern/vfs_syscalls.c
tap/if_tap.c
tun/if_tun.c
/dflybsd-src/sys/netinet6/in6.c
/dflybsd-src/sys/netinet6/in6_proto.c
/dflybsd-src/sys/netinet6/in6_var.h
/dflybsd-src/sys/netinet6/nd6.c
/dflybsd-src/sys/netinet6/nd6_nbr.c
/dflybsd-src/sys/netinet6/nd6_rtr.c
/dflybsd-src/sys/netproto/802_11/ieee80211_dragonfly.h
/dflybsd-src/sys/netproto/802_11/wlan/ieee80211_input.c
/dflybsd-src/sys/sys/bus.h
/dflybsd-src/sys/sys/mouse.h
/dflybsd-src/sys/sys/sysctl.h
/dflybsd-src/sys/vfs/Makefile
/dflybsd-src/sys/vfs/fuse/fuse_vnops.c
/dflybsd-src/sys/vfs/procfs/procfs_ctl.c
/dflybsd-src/sys/vfs/procfs/procfs_mem.c
/dflybsd-src/sys/vfs/procfs/procfs_status.c
/dflybsd-src/sys/vfs/procfs/procfs_subr.c
/dflybsd-src/sys/vfs/procfs/procfs_vfsops.c
/dflybsd-src/sys/vfs/procfs/procfs_vnops.c
/dflybsd-src/usr.bin/less/Makefile
/dflybsd-src/usr.bin/less/defines.h
/dflybsd-src/usr.bin/ssh-add/Makefile
/dflybsd-src/usr.bin/ssh-agent/Makefile
/dflybsd-src/usr.bin/ssh-keygen/Makefile
/dflybsd-src/usr.bin/ssh-keyscan/Makefile
/dflybsd-src/usr.bin/ssh/Makefile
/dflybsd-src/usr.sbin/makefs/hammer2/hammer2.h
/dflybsd-src/usr.sbin/makefs/hammer2/hammer2_chain.c
/dflybsd-src/usr.sbin/makefs/hammer2/hammer2_flush.c
/dflybsd-src/usr.sbin/makefs/hammer2/hammer2_strategy.c
/dflybsd-src/usr.sbin/sshd/Makefile
7485684f03-Mar-2024 Aaron LI <aly@aaronly.me>

Whitespace cleanups

2976dea703-Mar-2024 Aaron LI <aly@aaronly.me>

sys: Minor fixes to some comments

cf3a56ce03-Mar-2024 Aaron LI <aly@aaronly.me>

sys: Minor code cleanups

No functional changes.

fe2ce7cf23-Mar-2024 Aaron LI <aly@aaronly.me>

wg: Minor code cleanups

c008937e20-Mar-2024 Aaron LI <aly@aaronly.me>

net: Clean up ifa_ifwithnet() and ifaof_ifpforaddr()

- Add the static inline function ifa_match_withmask() to deduplicate the
address match code in both functions.
- Use NULL instead of 0 for poin

net: Clean up ifa_ifwithnet() and ifaof_ifpforaddr()

- Add the static inline function ifa_match_withmask() to deduplicate the
address match code in both functions.
- Use NULL instead of 0 for pointers.
- Minor style cleanups.

show more ...

5f75fb6f20-Mar-2024 Aaron LI <aly@aaronly.me>

net: Improve rt_print() and rt_addrinfo_print() debug functions

- Update rt_print() to print the full interface name (if_xname) instead
of the underlying device name (if_dname).
- Update rt_addrin

net: Improve rt_print() and rt_addrinfo_print() debug functions

- Update rt_print() to print the full interface name (if_xname) instead
of the underlying device name (if_dname).
- Update rt_addrinfo_print() to print flags, ifp and ifa; similar to
rt_print().

show more ...

2b2893d619-Mar-2024 Aaron LI <aly@aaronly.me>

net: Fix panic in the rt_addrinfo_print() debug function

The 'rti_addrs' member is a bitmask of RTA_* values, not a count value,
so the rt_addrinfo_print() debug function would just panic.

Use RTAX

net: Fix panic in the rt_addrinfo_print() debug function

The 'rti_addrs' member is a bitmask of RTA_* values, not a count value,
so the rt_addrinfo_print() debug function would just panic.

Use RTAX_MAX instead to fix this bug. Meanwhile, add brief comments to
'rti_addrs' and 'rti_flags' members.

show more ...

1de656c919-Mar-2024 Aaron LI <aly@aaronly.me>

net: Clean up sockaddr_print() by removing duplicate switch()

5e1a59d520-Mar-2024 Aaron LI <aly@aaronly.me>

netinet: Improve the deletion of loopback route

When the target host address is still bound to another interface address
(e.g., an address on another interface added later), the loopback route
shoul

netinet: Improve the deletion of loopback route

When the target host address is still bound to another interface address
(e.g., an address on another interface added later), the loopback route
should be updated to point to that address instead of simply being
removed.

Given that our rtrequest1() only supports route addition and deletion,
but not route change, we have to first remove the original loopback
route and then re-add a route with the wanted interface address.

See also in_localip_more() and ifa_switch_loopback_route() in FreeBSD.

show more ...

951ecd7f18-Mar-2024 Aaron LI <aly@aaronly.me>

netinet: Auto add loopback routes to interface addresses

When adding an address to an interface, a loopback route will be created
to route the traffic targeting it through the lo0 interface. The
lo

netinet: Auto add loopback routes to interface addresses

When adding an address to an interface, a loopback route will be created
to route the traffic targeting it through the lo0 interface. The
loopback route will also be removed when the corresponding interface
address is deleted.

In principle, this can help simplify the network input and output paths
by avoiding special handling of local addresses. That deserves some
further efforts.

Nonetheless, an immediate benefit goes to wg(4). Now we can access
(e.g., ping) from localhost a wg(4) interface's IPv4 addresses.
Previously it was broken because wg(4) is a virtual device and doesn't
have/use ARP. For Ethernet devices, the ether_output() function will
redirect the traffic targeting its own address to the loopback interface
by calling if_simloop().

Derived from FreeBSD; the major commits are:
- This patch adds a host route to an interface address ...
https://github.com/freebsd/freebsd-src/commit/ebc90701ac6c1f814c5bd6f3e19f0113ebe06156
- Self pointing routes are installed for configured interface addr ...
https://github.com/freebsd/freebsd-src/commit/9bb7d0f47a3265a1782a64837ae93dde4c550a6a
- Unify loopback route switching
https://github.com/freebsd/freebsd-src/commit/59c180c35c1ddc1d544a1c73c789d126a8fbac78
- Fix rt_ifa selection during loopback route insertion process
https://github.com/freebsd/freebsd-src/commit/2ad7ed6e4a84448234e9aaef3c9fa884848f7387

Discussed-with: dillon

show more ...

e255cd8b18-Mar-2024 Aaron LI <aly@aaronly.me>

net: Integrate link_rtrequest() into rt_getifa()

When a route was inserted but had an invalid IFA (rt_ifa), the
link_rtrequest() would be called to fix it with a link-level gateway.

Move the link_r

net: Integrate link_rtrequest() into rt_getifa()

When a route was inserted but had an invalid IFA (rt_ifa), the
link_rtrequest() would be called to fix it with a link-level gateway.

Move the link_rtrequest() logic into the pre-insertion rt_getifa() step,
and thus simplifies the IFA selection. This will also help the
forthcoming mangement of loopback routes for interface addresses.

Obtained-from: FreeBSD
- https://reviews.freebsd.org/D20076
- https://github.com/freebsd/freebsd-src/commit/2ad7ed6e4a84448234e9aaef3c9fa884848f7387

show more ...


/dflybsd-src/contrib/less/LICENSE
/dflybsd-src/contrib/less/NEWS
/dflybsd-src/contrib/less/README
/dflybsd-src/contrib/less/README.DELETED
/dflybsd-src/contrib/less/README.DRAGONFLY
/dflybsd-src/contrib/less/brac.c
/dflybsd-src/contrib/less/ch.c
/dflybsd-src/contrib/less/charset.c
/dflybsd-src/contrib/less/charset.h
/dflybsd-src/contrib/less/cmd.h
/dflybsd-src/contrib/less/cmdbuf.c
/dflybsd-src/contrib/less/command.c
/dflybsd-src/contrib/less/compose.uni
/dflybsd-src/contrib/less/cvt.c
/dflybsd-src/contrib/less/decode.c
/dflybsd-src/contrib/less/edit.c
/dflybsd-src/contrib/less/filename.c
/dflybsd-src/contrib/less/fmt.uni
/dflybsd-src/contrib/less/forwback.c
/dflybsd-src/contrib/less/funcs.h
/dflybsd-src/contrib/less/help.c
/dflybsd-src/contrib/less/ifile.c
/dflybsd-src/contrib/less/input.c
/dflybsd-src/contrib/less/jump.c
/dflybsd-src/contrib/less/less.h
/dflybsd-src/contrib/less/less.nro
/dflybsd-src/contrib/less/lessecho.c
/dflybsd-src/contrib/less/lessecho.nro
/dflybsd-src/contrib/less/lesskey.c
/dflybsd-src/contrib/less/lesskey.h
/dflybsd-src/contrib/less/lesskey.nro
/dflybsd-src/contrib/less/lesskey_parse.c
/dflybsd-src/contrib/less/lglob.h
/dflybsd-src/contrib/less/line.c
/dflybsd-src/contrib/less/linenum.c
/dflybsd-src/contrib/less/lsystem.c
/dflybsd-src/contrib/less/main.c
/dflybsd-src/contrib/less/mark.c
/dflybsd-src/contrib/less/optfunc.c
/dflybsd-src/contrib/less/option.c
/dflybsd-src/contrib/less/option.h
/dflybsd-src/contrib/less/opttbl.c
/dflybsd-src/contrib/less/os.c
/dflybsd-src/contrib/less/output.c
/dflybsd-src/contrib/less/pattern.c
/dflybsd-src/contrib/less/pattern.h
/dflybsd-src/contrib/less/pckeys.h
/dflybsd-src/contrib/less/position.c
/dflybsd-src/contrib/less/position.h
/dflybsd-src/contrib/less/prompt.c
/dflybsd-src/contrib/less/screen.c
/dflybsd-src/contrib/less/search.c
/dflybsd-src/contrib/less/signal.c
/dflybsd-src/contrib/less/tags.c
/dflybsd-src/contrib/less/ttyin.c
/dflybsd-src/contrib/less/ubin.uni
/dflybsd-src/contrib/less/version.c
/dflybsd-src/contrib/less/wide.uni
/dflybsd-src/contrib/less/xbuf.c
/dflybsd-src/contrib/less/xbuf.h
/dflybsd-src/sbin/md5/Makefile
/dflybsd-src/sbin/md5/md5.c
/dflybsd-src/sbin/ping/ping.8
/dflybsd-src/sbin/ping/ping.c
/dflybsd-src/share/man/man5/procfs.5
if.c
route.c
/dflybsd-src/sys/vfs/fuse/Makefile
/dflybsd-src/sys/vfs/fuse/fuse.h
/dflybsd-src/sys/vfs/fuse/fuse_device.c
/dflybsd-src/sys/vfs/fuse/fuse_io.c
/dflybsd-src/sys/vfs/fuse/fuse_ipc.c
/dflybsd-src/sys/vfs/fuse/fuse_node.c
/dflybsd-src/sys/vfs/fuse/fuse_util.c
/dflybsd-src/sys/vfs/fuse/fuse_vfsops.c
/dflybsd-src/sys/vfs/fuse/fuse_vnops.c
/dflybsd-src/sys/vfs/procfs/procfs_vnops.c
/dflybsd-src/usr.bin/gzip/gzip.c
/dflybsd-src/usr.bin/hexdump/display.c
/dflybsd-src/usr.bin/less/Makefile
/dflybsd-src/usr.bin/less/defines.h
/dflybsd-src/usr.bin/lessecho/Makefile
/dflybsd-src/usr.bin/lesskey/Makefile
/dflybsd-src/usr.bin/sockstat/sockstat.c
/dflybsd-src/usr.bin/wc/wc.c
1879acbd28-Feb-2024 Aaron LI <aly@aaronly.me>

wg: Add comment for noise_remote_index() in handling cookie replies

noise_remote_index() will lookup the index for both remote and keypair
entries. Add a comment to explain why this double lookup i

wg: Add comment for noise_remote_index() in handling cookie replies

noise_remote_index() will lookup the index for both remote and keypair
entries. Add a comment to explain why this double lookup is necessary.

Credit: Jason A. Donenfeld

show more ...

ee9faa1603-Mar-2024 Aaron LI <aly@aaronly.me>

wg: Disable auto link-local configuration and DAD

They're useless for this virtual interface.

Actually, this code presents in the FreeBSD version but was removed
during the porting; now add it back.

f9be6a1c03-Mar-2024 Aaron LI <aly@aaronly.me>

stf(4): Set ND6 flags to disable auto link-local and DAD

Clear the 'ND6_IFF_AUTO_LINKLOCAL' flag and set the 'ND6_IFF_NO_DAD'
flag for the stf(4) interface after if_attach(). In this way, the
quirk

stf(4): Set ND6 flags to disable auto link-local and DAD

Clear the 'ND6_IFF_AUTO_LINKLOCAL' flag and set the 'ND6_IFF_NO_DAD'
flag for the stf(4) interface after if_attach(). In this way, the
quirks in in6_ifattach() is removed.

show more ...

b44c913f28-Feb-2024 Aaron LI <aly@aaronly.me>

net: Reimplement packet loop detection based on mbuf tags

The original naive implementation based on mbuf 'm_pkthdr.loop_cnt' was
flawed:

* There were likely some code paths that allocated mbufs fa

net: Reimplement packet loop detection based on mbuf tags

The original naive implementation based on mbuf 'm_pkthdr.loop_cnt' was
flawed:

* There were likely some code paths that allocated mbufs failed to
initialize the 'loop_cnt' to be zero. This caused unwanted packet
drops in gif(4), as reported by Kyle Butt (iteratee).

* The 'loop_cnt' was system-wide and thus cannot distinguish between the
nesting of specific drivers. For example, it would break an actually
valid setup that makes use of both gif(4) and gre(4).

As a result, follow the FreeBSD's way and reimplement the packet loop
detection based on mbuf tags. Each driver is allocated a unique mbuf
tag cookie, and thus a unique mbuf tag will be created to track the
nesting level of each driver.

The if_tunnel_check_nesting() was derived from FreeBSD but I changed it
to use only one mbuf tag for each cookie (i.e., driver). Although it
can no longer directly detect that a packet loops through the same
interface, it would still be prevented as that would lead to infinite
recursions.

Update gif(4), gre(4) and wg(4) to use the new loop detection facility.

Bump __DragonFly_version as well.

Reported-by: Kyle Butt (iteratee)

show more ...

a4b1c56f20-Feb-2024 Aaron LI <aly@aaronly.me>

wg: Update wg_handshake() to increase 'ierrors' on error

Meanwhile, add a comment for 'pkt->p_mbuf' update after m_pullup().

5ffb7caf20-Feb-2024 Aaron LI <aly@aaronly.me>

wg: Improve error handling in wg_output()

- Don't send ICMP error if the packet looped, avoiding infinite loops.
- Move the packet loop detection upper to optimize the logic a bit.
- Integrate xmit_

wg: Improve error handling in wg_output()

- Don't send ICMP error if the packet looped, avoiding infinite loops.
- Move the packet loop detection upper to optimize the logic a bit.
- Integrate xmit_err() into wg_output() to simplify the error handling.
- Just increase 'oerrors' and don't use 'oqdrops', which doesn't really
make more sense here.

show more ...


/dflybsd-src/contrib/awk/FIXES
/dflybsd-src/contrib/awk/FIXES.1e
/dflybsd-src/contrib/awk/LICENSE
/dflybsd-src/contrib/awk/README.DELETED
/dflybsd-src/contrib/awk/README.md
/dflybsd-src/contrib/awk/awk.1
/dflybsd-src/contrib/awk/awk.h
/dflybsd-src/contrib/awk/awkgram.y
/dflybsd-src/contrib/awk/b.c
/dflybsd-src/contrib/awk/lex.c
/dflybsd-src/contrib/awk/lib.c
/dflybsd-src/contrib/awk/main.c
/dflybsd-src/contrib/awk/maketab.c
/dflybsd-src/contrib/awk/parse.c
/dflybsd-src/contrib/awk/proto.h
/dflybsd-src/contrib/awk/run.c
/dflybsd-src/contrib/awk/tran.c
/dflybsd-src/etc/rc.d/DAEMON
/dflybsd-src/etc/rc.d/FILESYSTEMS
/dflybsd-src/etc/rc.d/LOGIN
/dflybsd-src/etc/rc.d/Makefile
/dflybsd-src/etc/rc.d/NETWORKING
/dflybsd-src/etc/rc.d/SERVERS
/dflybsd-src/etc/rc.d/addswap
/dflybsd-src/etc/rc.d/adjkerntz
/dflybsd-src/etc/rc.d/automount
/dflybsd-src/etc/rc.d/automountd
/dflybsd-src/etc/rc.d/autounmountd
/dflybsd-src/etc/rc.d/bootconf
/dflybsd-src/etc/rc.d/bootparams
/dflybsd-src/etc/rc.d/cleanvar
/dflybsd-src/etc/rc.d/cleartmp
/dflybsd-src/etc/rc.d/cryptdisks
/dflybsd-src/etc/rc.d/devd
/dflybsd-src/etc/rc.d/devfs
/dflybsd-src/etc/rc.d/dhclient
/dflybsd-src/etc/rc.d/dhcp_client
/dflybsd-src/etc/rc.d/dhcpcd
/dflybsd-src/etc/rc.d/diskless
/dflybsd-src/etc/rc.d/dmesg
/dflybsd-src/etc/rc.d/dntpd
/dflybsd-src/etc/rc.d/dumpon
/dflybsd-src/etc/rc.d/fixbootfile
/dflybsd-src/etc/rc.d/ftpd
/dflybsd-src/etc/rc.d/hostname
/dflybsd-src/etc/rc.d/hotplugd
/dflybsd-src/etc/rc.d/inetd
/dflybsd-src/etc/rc.d/initdiskless
/dflybsd-src/etc/rc.d/ip6addrctl
/dflybsd-src/etc/rc.d/ip6fw
/dflybsd-src/etc/rc.d/ipfw
/dflybsd-src/etc/rc.d/ipfw3
/dflybsd-src/etc/rc.d/keyserv
/dflybsd-src/etc/rc.d/ldconfig
/dflybsd-src/etc/rc.d/lockd
/dflybsd-src/etc/rc.d/lvm
/dflybsd-src/etc/rc.d/mixer
/dflybsd-src/etc/rc.d/modules
/dflybsd-src/etc/rc.d/motd
/dflybsd-src/etc/rc.d/mountcritlocal
/dflybsd-src/etc/rc.d/mountcritremote
/dflybsd-src/etc/rc.d/mountd
/dflybsd-src/etc/rc.d/mounttmpfs
/dflybsd-src/etc/rc.d/netif
/dflybsd-src/etc/rc.d/netoptions
/dflybsd-src/etc/rc.d/network_ipv6
/dflybsd-src/etc/rc.d/newsyslog
/dflybsd-src/etc/rc.d/nfsclient
/dflybsd-src/etc/rc.d/nfsd
/dflybsd-src/etc/rc.d/nfsserver
/dflybsd-src/etc/rc.d/nisdomain
/dflybsd-src/etc/rc.d/nsswitch
/dflybsd-src/etc/rc.d/pf
/dflybsd-src/etc/rc.d/pflog
/dflybsd-src/etc/rc.d/powerd
/dflybsd-src/etc/rc.d/pppoed
/dflybsd-src/etc/rc.d/pwcheck
/dflybsd-src/etc/rc.d/quota
/dflybsd-src/etc/rc.d/random
/dflybsd-src/etc/rc.d/rcconf
/dflybsd-src/etc/rc.d/resident
/dflybsd-src/etc/rc.d/rndcontrol
/dflybsd-src/etc/rc.d/route6d
/dflybsd-src/etc/rc.d/routed
/dflybsd-src/etc/rc.d/routing
/dflybsd-src/etc/rc.d/rpcbind
/dflybsd-src/etc/rc.d/rtadvd
/dflybsd-src/etc/rc.d/rtsold
/dflybsd-src/etc/rc.d/savecore
/dflybsd-src/etc/rc.d/securelevel
/dflybsd-src/etc/rc.d/sendmail
/dflybsd-src/etc/rc.d/sensorsd
/dflybsd-src/etc/rc.d/serial
/dflybsd-src/etc/rc.d/sppp
/dflybsd-src/etc/rc.d/statd
/dflybsd-src/etc/rc.d/swap1
/dflybsd-src/etc/rc.d/syscons
/dflybsd-src/etc/rc.d/sysctl
/dflybsd-src/etc/rc.d/sysdb
/dflybsd-src/etc/rc.d/syslogd
/dflybsd-src/etc/rc.d/ttys
/dflybsd-src/etc/rc.d/udevd
/dflybsd-src/etc/rc.d/udevd_early
/dflybsd-src/etc/rc.d/vfs_quota
/dflybsd-src/etc/rc.d/virecover
/dflybsd-src/etc/rc.d/vkernel
/dflybsd-src/etc/rc.d/vknetd
/dflybsd-src/etc/rc.d/wg
/dflybsd-src/etc/rc.d/wpa_supplicant
/dflybsd-src/etc/rc.d/ypbind
/dflybsd-src/etc/rc.d/yppasswdd
/dflybsd-src/etc/rc.d/ypserv
/dflybsd-src/etc/rc.d/ypset
/dflybsd-src/etc/rc.d/ypupdated
/dflybsd-src/etc/rc.d/ypxfrd
/dflybsd-src/share/man/man8/rc.8
/dflybsd-src/sys/bus/pci/pcidevs
/dflybsd-src/sys/dev/netif/re/if_re.c
/dflybsd-src/sys/dev/netif/re/re.h
wg/if_wg.c
/dflybsd-src/usr.bin/awk/maketab/Makefile
979e91ed20-Feb-2024 Aaron LI <aly@aaronly.me>

crypto: Move blake2s_hmac() to its only user wg_noise.c

The blake2s_hmac() is simply an ad-hoc HMAC implementation using the
BLAKE2s hash algorithm. It's not generic; a proper solution is to
implem

crypto: Move blake2s_hmac() to its only user wg_noise.c

The blake2s_hmac() is simply an ad-hoc HMAC implementation using the
BLAKE2s hash algorithm. It's not generic; a proper solution is to
implement the HMAC construction that supports any hash algorithms.
Therefore, it's better to move blake2s_hmac() to wg_noise.c as
noise_hmac().

See also: https://git.zx2c4.com/wireguard-freebsd/commit/?id=5c5832279855722b939a381b9a291dc5ca2ee52e

show more ...

32a12de208-Feb-2024 Aaron LI <aly@aaronly.me>

wg: Change cpu_sfence() to release store + acquire load pair

Although DragonFly is currently x86-only and this is actually
unnecessary, update to use the store+load pairs for better
portability.

5378cebb08-Feb-2024 Aaron LI <aly@aaronly.me>

wg: Convert BPF_MTAP_AF() macro to inline function wg_bpf_ptap()

6716a06c08-Feb-2024 Aaron LI <aly@aaronly.me>

wg: Add RXCSUM support to avoid unnecessary checksum validation

The packet that is about to be delivered in is authentic as ensured by
the AEAD tag, so we can tell the networking stack that this pac

wg: Add RXCSUM support to avoid unnecessary checksum validation

The packet that is about to be delivered in is authentic as ensured by
the AEAD tag, so we can tell the networking stack that this packet has
valid checksums and thus is unnecessary to check again.

Therefore, implement RXCSUM support for the wg interface, and update the
ioctl() to support to enable/disable this feature.

Meanwhile, move the mbuf flags clearance code just before the delivery,
i.e., netisr_queue() and wg_send().

show more ...

41fc5cd708-Feb-2024 Aaron LI <aly@aaronly.me>

wg: Track noise_{local,remote,keypair} allocations to detect leaks

Use lists to track the allocations of noise_{local,remote,keypair}
structs, and then assert that all of them have been freed upon t

wg: Track noise_{local,remote,keypair} allocations to detect leaks

Use lists to track the allocations of noise_{local,remote,keypair}
structs, and then assert that all of them have been freed upon the
module deinitialization.

Enclose the code within 'INVARIANTS' macro, so that it can be just
ignored when performance is important.

show more ...

015567cb07-Feb-2024 Aaron LI <aly@aaronly.me>

wg: Some code cleanups, minor improvements and comment updates

- Clean up some code logics to make the conditional flow and error
handling more smooth.
- Add and update various comments to make th

wg: Some code cleanups, minor improvements and comment updates

- Clean up some code logics to make the conditional flow and error
handling more smooth.
- Add and update various comments to make the code more understandable.
A large fraction of the comments are derived from the WireGuard code
in Linux/OpenBSD, and from commit messages.

show more ...

9c92b55f07-Feb-2024 Aaron LI <aly@aaronly.me>

wg: Minor improvements to wg_ioctl_set()

- Skip allowed IPs removal for a new peer.
- Try and send staged packets if the interface is UP.

Referred to the Linux version of WireGuard.

12345678910>>...81