java/apache-commons-lang: Remove expired port
2026-10-31 java/apache-commons-lang: Unpatched CVE, last release in 2011, does not compile with Java 11+, not actively maintained. Superseded by port java/apache-commons-lang3.
textproc/lucene: Remove expired port
2026-10-31 textproc/lucene: Release from 2013. Unsupported upstream. Lucene is now at version 10.X. Superseded in ports by textproc/lucene9.
games/eduke32: Add fullscreen-display patch
In window managers such as dwm, fvwm, bvwm, etc. moving fullscreen
windows should cause resizing to the new output display.
eduke32 automatically resizes in window mode but not when asked to
run fullscreen. This patch causes resize when, for example, a user
in dwm utilizes Alt+Shift+Period (or Alt+Shift+Comma) to send the
game to another screen.
net/igmpproxy: Fix igmpproxy_conf rc.d knob, document user and chroot
- The rc.d script documented igmpproxy_conf but read igmpproxy_config,
and required_files always pointed to the default path. Honor
igmpproxy_conf, keeping igmpproxy_config as a fallback so existing
setups do not break, and check the file actually in use.
- Add commented user and chroot examples to the sample configuration.
They allow igmpproxy to drop privileges once sysutils/mac_igmpproxy
is loaded.
Sponsored by: Rubicon Communications, LLC ("Netgate")
sysutils/mac_igmpproxy: New port, MAC policy for net/igmpproxy
A MAC framework policy that grants the multicast routing privilege to
a single configurable UID, so net/igmpproxy can drop root and run as
the new igmpproxy user (UID/GID 422). The policy can be tuned or
disabled with the security.mac.igmpproxy.uid and
security.mac.igmpproxy.enabled sysctls.
PR: 291647
net/dhcpdump: Update to 2.00 and switch to the active fork
The original dhcpdump 1.8 has not been maintained for many years. Move
to the dhcpdump-org fork, which Debian and Fedora already ship.
Changes since 1.8 include VLAN (802.1Q/802.1ad) support, reading from
pcap files, an option to dump the whole packet in hex, option 82/121/
249/93/94/116 decoding, updated IANA option names and several fixes for
out-of-bounds reads on crafted packets.
Add a TUI option, enabled by default, for the new interactive session
tracking interface (-t). It depends on devel/yascreen.
PR: 297349
Reported by: diizzy
Sponsored by: Rubicon Communications, LLC ("Netgate")
devel/yascreen: New port, curses replacement library
yascreen is a small curses replacement library for daemons and embedded
applications. It has no external dependencies, supports internal and
external event loops, can work over stdin/stdout or a socket (including
basic telnet sequences) and handles Unicode.
It is needed by the interactive TUI of net/dhcpdump 2.x.
Sponsored by: Rubicon Communications, LLC ("Netgate")
emulators/open-vm-tools: Use fixed name and rcvar in vmware-kmod
vmware-kmod handles two kernel modules by setting name and rcvar from
$kernel_mod and calling run_rc_command twice. Tools that read rcvar
without running the script, such as service -e, see the unexpanded
variable and check the nonexistent $vmware_guest__enable, warning on
every host where the package is installed.
Give the script a fixed name (vmware_guest_kmod) and rcvar
(vmware_guest_kmod_enable), and have start and status loop over the
modules, each honoring its own knob. The script name and rc.conf
knobs are unchanged: vmware_guest_kmod_enable (default YES) still
supplies the defaults for vmware_guest_vmmemctl_enable and
vmware_guest_vmblock_enable, either of which can still be enabled on
its own, and rc.conf.d files for the per-module names are still read.
PR: 300431
Sponsored by: Rubicon Communications, LLC ("Netgate")
security/sudo: Put base system directories first in secure_path
The default sudoers file installed by the port has an active
secure_path line inherited from upstream's configure.ac, which lists
/usr/local/sbin and /usr/local/bin before the base system directories.
That is a Linux convention. On FreeBSD, LOCALBASE belongs to
ports/packages and the base system comes first everywhere else, so a
binary under /usr/local/bin could shadow a base utility when run
through sudo.
Set --with-secure-path-value so the default sudoers uses
/sbin:/bin:/usr/sbin:/usr/bin:${LOCALBASE}/sbin:${LOCALBASE}/bin.
Existing installations that edited /usr/local/etc/sudoers are not
affected.
PR: 299746
Sponsored by: Rubicon Communications, LLC ("Netgate")
security/sudo: Add LOGSRVD option and rc.d script for sudo_logsrvd
- Add a LOGSRVD option, enabled by default so current users see no
change, to build sudo_logsrvd and sudo_sendlog. When disabled the
server, its sample configuration, rc script and man pages are not
installed (--disable-log-server).
- Install an rc.d script for sudo_logsrvd. It is disabled by default,
enable it with sudo_logsrvd_enable=YES.
- Fix the SSL option description. It does not affect sudo itself, only
TLS for sudo_logsrvd and I/O log transfer.
PR: 287631
Reported by: Anton Saietskii <vsasjason at gmail.com>
Sponsored by: Rubicon Communications, LLC ("Netgate")
mail/dma: Update to upstream master (f4e1d913)
The port pinned GH_TAGNAME to a commit that predates the v0.14 tag, so
the package lacked VERIFYCERT and SNI support in TLS. Pin the current
upstream master instead, which contains v0.14 plus following changes:
- LMTP: support relaying to an LMTP endpoint
- AUTH PLAIN support, with clearer syslog output when the server
offers no usable auth mechanism
- HELO fallback when the server rejects EHLO
- Accept "|" as separator between smarthost and password
- Terminate each local mbox message with an empty line (RFC 4155)
- Discard bounce queue items when handling a double bounce
- Cast ctype arguments to unsigned char
- Disambiguate two identical error messages (issue #139)
- Fix building bsd/ after "make obj"; dma.8 and SPDX updates
PR: 299680
Co-Authored by: Philip Dodd <orange.spyderman at gmail.com>
Sponsored by: Rubicon Communications, LLC ("Netgate")
www/worldmonitor: Add New Port
World Monitor is a dashboard that brings together news and geopolitical,
infrastructure and market data on one page. The port installs the
self-hosted web application with its Redis REST proxy, relay and seed
services.
WWW: https://github.com/koala73/worldmonitor
Sponsored by: Netzkommune GmbH
Makefile.inc1: Fix bare $ characters
The '$' characters inside awk commands need to be $$ when appearing
inside a Makefile. Without this, we generate empty src and src-sys
packages.
Reported by: Stefan Grundmann
Fixes: a8be89928930 ("build: Support got")
MFC after: 1 day
bnxt: correct more mappings for 400G optics and 100G LR
- Support 400G-DR4 optics
- Support 400G-CR8 and -SR8 with their types, rather than generic 400G-AUI8
- Use the generic 400G-AUI8 for 400G-SR4, rather than mislabeling it -DR4
(We probably should add a 400G-SR media type, but I don't have any to test ATM)
- Add missing legacy PAM4 100G LR entry and matching media-selection cases.
Reviewed by: sumit.saxena_broadcom.com
Differential Revision: https://reviews.freebsd.org/D61162
Sponsored by: Netflix
sched: Automatically namespace schedulers' implementation functions
This renames back scheduler implementation functions to their old names,
i.e., the same name as the interface functions, in the source code,
while providing the infrastructure to still produce from them C symbols
namespaced by the scheduler implementation, in order to avoid symbol
collisions with interface dispatching functions and other scheduler
implementations when multiple ones are compiled in. In a nutshell, the
implementation consists in re-routing interface names to implementation
names via the C preprocessor.
The main reasons for this change are that different implementation names:
1. Break navigating code with ctags-like tools like in-tree ctags,
Global and Universal Ctags.
2. Spoils inlining opportunities in internal scheduler code if not
careful. This alternatively could be regained by changing call
points to use scheduler-specific names, but that does not prevent
people from inadvertently adding more calls to interface functions.
Also, having to namespace calls with the implementation name in the
[75 lines not shown]
critical_exit_preempt(): Re-check for preemption locked
Once we have the thread lock, we are in a spinlock section and thus will
not be preempted, which ensures stability of 'td_owepreempt'. Check it
again for the improbable case where we were already preempted before
entering that section (after 'td_critnest' reached 0 in critical_exit()
but before clearing 'td_owepreempt', because of an IPI_PREEMPT received
in the meantime or any interrupt whose handler uses critical sections),
in which case there is no need to switch to another thread.
It is however still necessary to temporarily raise 'td_critnest' around
the thread_lock() call, and that is not an optimization contrary to what
the old comment stated. As explained in the new comment, thread_lock()
can lead to entering and exiting a spinlock section multiple times,
which would cause recursion with critical_exit_preempt() in some
circumstances.
Reviewed by: kib, markj
MFC after: 3 days
[2 lines not shown]