De release van het vrije UNIX-achtige besturingssysteem OpenBSD 7.8 is aangekondigd. Het OpenBSD-project werd opgericht door Theo de Raadt in 1995 na een conflict met de ontwikkelaars van NetBSD, dat leidde tot een beëindiging van zijn toegang tot de CVS-repository van NetBSD. Na dit conflict creëerde Theo de Raadt samen met een groep gelijkgestemdingen een nieuw open besturingssysteem op basis van de broncodeboom van NetBSD, met als belangrijkste ontwikkelingsdoelen draagbaarheid (ondersteuning voor 13 hardwareplatforms), standaardisatie, correcte werking, proactieve veiligheid en geïntegreerde cryptografische middelen. De grootte van de volledige installatie-ISO-afbeelding van het basisbesturingssysteem OpenBSD 7.8 bedraagt 597 MB.
Naast het besturingssysteem is het OpenBSD-project bekend om zijn componenten, die ook in andere systemen zijn verspreid en zich als een van de veiligste en kwalitatief hoogstaande oplossingen hebben bewezen. Onder deze componenten bevinden zich: LibreSSL (fork van OpenSSL), OpenSSH, pakketfilter PF, routeringsdemonen OpenBGPD en OpenOSPFD, NTP-server OpenNTPD, mailserver OpenSMTPD, de tekstterminalmultiplexer (vergelijkbaar met GNU screen) tmux, de identd-demon met een implementatie van het IDENT-protocol, de BSDL-alternatief voor het GNU groff-pakket — mandoc, en het protocol voor het opzetten van redundante systemen CARP (Common Address Redundancy Protocol), evenals een lichtgewicht http-server en het hulpprogramma voor het synchroniseren van bestanden OpenRSYNC. server OpenSMTPD, de multiplexor voor tekstterminals (vergelijkbaar met GNU screen) tmux, de identd-demon met een implementatie van het IDENT-protocol, een BSDL-alternatief voor het GNU groff-pakket — mandoc, het protocol voor de opzet van failover systemen CARP (Common Address Redundancy Protocol), een lichte http-server, en het synchronisatiehulpmiddel voor bestanden OpenRSYNC.
Belangrijkste wijzigingen:
- In de poort voor de ARM64-architectuur is ondersteuning voor Raspberry Pi 5-borden toegevoegd, is de acpicpu-driver geïmplementeerd en is de werking van apm (Advanced Power Management) en sysctl hw.cpuspeed op apparaten met Qualcomm Snapdragon X Elite-chips verzekerd.
- Ondersteuning voor de FD_CLOFORK (close-on-fork) vlag is geïmplementeerd om een bestandsdescriptor voor kindprocessen te sluiten na het aanroepen van de fork()-functie. In vergelijking met andere implementaties is deze vlag na het aanroepen van de exec()-functie gereset uit veiligheidsoverwegingen en gebruiksgemak.
- Een subsysteem is toegevoegd voor het uitvoeren van high-level operaties voor toewijzing, planning en dispatching van software-interrupts (soft interrupt dispatcher).
- De kernel is overgeschakeld naar het gebruik van nanoseconden in plaats van timer-ticks bij de uitvoering van de sleep-functie, wat het verlies van nauwkeurigheid helpt voorkomen dat optreedt door conversies van nanoseconden naar ticks en vice versa bij het initiëren van bewerkingen vanuit bibliotheekfuncties in de gebruikersruimte.
- De compatibiliteit met bestandssystemen op basis van het FUSE-mechanisme (Filesystem in Userspace), waarvan de implementaties gebruikmaken van de libfuse-bibliotheek, is verbeterd.
- Verbeterde ondersteuning voor slaap- en sluimerstand. Vooraf toegewijde werkruimte voor sluimerstand tijdens het opstarten. Mogelijkheid toegevoegd om de sluimerstand te gebruiken bij aansluiting van apparaten via GPIO. Ondersteuning toegevoegd voor het overschakelen naar sluimerstand van laptops met AMD CPU's bij gebruik van de energiezuinige modus S0ix. De sysctl ddb.suspend is geïmplementeerd om over te schakelen naar sluimerstand voor de drivers inteldrm en amdgpu, zodat het scherm actief blijft. Betrouwbaarheid van de S3-sluimerstand verbeterd bij gebruik van de amdgpu grafische driver.
- Verbeterde ondersteuning voor multiprocessorsystemen (SMP). De TCP-stack is parallel geïmplementeerd op verschillende CPU-kernen. Tot 8 threads (maar niet meer dan het aantal CPU-kernen) kunnen nu worden gebruikt voor het verwerken van TCP-verkeer en binnenkomende netwerkpakketten. Parallelle uitvoering van operaties voor het opnieuw assembleren van IPv6-pakketfragmenten en het parseren van IPv6-routeringsparameters is gerealiseerd. Er zijn geen globale blokkeringen meer voor de systeemaanroepen close() en listen().
- De implementatie van het drm (Direct Rendering Manager) framework is gesynchroniseerd met de Linux-kernel 6.12.50 (in de vorige release was dat 6.12.21). Nieuwe drivers qcdrm en qcdpc zijn toegevoegd voor de DRM-subsystemen van Qualcomm Snapdragon chips en de DisplayPort-controller van Qualcomm.
- Ondersteuning voor OpenBSD is geïmplementeerd in virtuele machines kvm/qemu met behulp van de AMD SEV-ES (Encrypted State) uitbreiding ter bescherming van het gastbesturingssysteem. De hypervisor vmd heeft de mogelijkheid gekregen om gastsystemen op te starten in de AMD SEV-ES modus, waarvoor een parameter "seves" in vm.conf is toegevoegd. Geëmmuleerde Virtio-apparaten voor netwerk, block, entropy en scsi zijn bijgewerkt met ondersteuning voor de Virtio 1.2 specificatie.
- De pkg-config tool is overgezet van een eigen implementatie op Perl naar een gebruik van de pkgconf 2.4.3 toolkit, geschreven in C.
- De iwatch applicatie wordt gebruikt als een watch utility die periodiek commando's uitvoert en hun output toont.
- In het security script, dat periodiek beveiligingscontroles uitvoert, is functionaliteit toegevoegd voor het maken van back-ups van GPT/MBR. Voor het herstellen van een GPT/MBR-back-up uit een bestand is de optie "-R" aan de fdisk tool toegevoegd.
- In het achtergrondproces apmd is de optie "-w procent" en de handler /etc/apm/warnlow toegevoegd om waarschuwingen weer te geven wanneer het batterijpercentage onder het opgegeven niveau daalt.
- Een nieuw profileringssysteem gprof is geïmplementeerd, dat gebruikmaakt van de systeemaanroep profil.
- De hardwareondersteuning is uitgebreid en er zijn nieuwe stuurprogramma's toegevoegd:
- acpiwmi - Windows Management Instrumentation.
- amdpmc - AMD energiebeheercontroller.
- bcmmip - MSI BCM2712-controller.
- bcmstbgpio - Broadcom GPIO-controller.
- bcmstbintc - Broadcom interruptcontroller.
- bcmstbpinctrl - Broadcom pin multiplexing.
- bcmstbrescal - Broadcom resetcalibratiecontroller.
- bcmstbreset - Broadcom resetcontroller.
- rpone - Raspberry Pi RP1 perifere controller.
- rpiclock - Raspberry Pi RP1 klokcontroller.
- rpipwm - Raspberry Pi RP1 PWM-controller.
- rpirtc - Raspberry Pi real-time clock.
- iasuskbd(4) - ASUS I2C HID.
- De driver voor de webcam uvideo heeft ondersteuning voor de H.264-codec toegevoegd.
- Er is een achtergrondproces lldpd toegevoegd met implementatie van de LLDP (Link Layer Discovery Protocol) en de lldp-tool voor beheer.
- Er is een achtergrondproces bpflogd toegevoegd voor het vastleggen van netwerkpakketten via bpf (Berkeley Packet Filter) en het loggen ervan in tcpdump-formaat.
- In iked, de implementatie van het IKEv2-protocol voor IPsec, is de mogelijkheid toegevoegd om meerdere certificaten uit een bestand te laden.
- De LibreSSL-bibliotheek is bijgewerkt naar versie 4.2.0, waarin een API voor het gebruik van het sleuteluitwisselingsalgoritme ML-KEM (CRYSTALS-Kyber) is voorgesteld, dat bestand is tegen aanvallen van quantumcomputers.
- OpenSSH is bijgewerkt. De wijzigingslijst kan worden bekeken in de aankondigingen van OpenSSH 10.1 en 10.2:
- Het aantal poorten voor de AMD64-architectuur is gestegen naar 12651 (was 12593), voor aarch64 naar 12506 (was 12446), voor i386 naar 10457 (was 10429). Onder de versies van applicaties in de poorten:
- Asterisk 22.5.2
- Audacity 3.7.5
- CMake 3.31.8
- Chromium 141.0.7390.54
- Emacs 30.2
- FFmpeg 6.1.3
- GCC 8.4.0 en 11.2.0
- GHC 9.8.3
- GNOME 48
- Go 1.25.1
- JDK 8u462, 11.0.28, 17.0.16, 21.0.8 en 25.0.0
- KDE Applications 25.08.1
- KDE Frameworks 6.18.0
- KDE Plasma 6.4.5
- Krita 5.2.13
- LLVM/Clang 19.1.7, 20.1.8 en 21.1.2
- LibreOffice 25.8.1.1
- Lua 5.1.5, 5.2.4, 5.3.6 en 5.4.7
- MariaDB 11.4.7
- Mono 6.12.0.199
- Mozilla Firefox 143.0.3 en ESR 140.3.1
- Mozilla Thunderbird 143.3.1
- Mutt 2.2.15 en NeoMutt 20250905
- Node.js 22.20.0
- OCaml 4.14.2
- OpenLDAP 2.6.10
- PHP 8.2.29, 8.3.26 en 8.4.13
- Postfix 3.5.25 en 3.10.1
- PostgreSQL 17.6
- Python 2.7.18 en 3.12.11
- Qt 5.15.16 (+ patches van kde) en 6.8.3
- R 4.5.1
- Ruby 3.2.9, 3.3.9 en 3.4.6
- Rust 1.90.0
- SQLite 3.50.4
- Shotcut 25.08.16
- Sudo 1.9.17p2
- Suricata 7.0.7
- Tcl/Tk 8.5.19 en 8.6.16
- TeX Live 2025
- Vim 9.1.1706 en Neovim 0.11.4
- Xfce 4.20.0
- De componenten van derden die zijn opgenomen in OpenBSD 7.8 zijn bijgewerkt:
- De grafische stack Xenocara op basis van X.Org 7.7 met xserver 21.1.18 + patches, freetype 2.13.3, fontconfig 2.15.0, Mesa 25.0.7, xterm 399, xkeyboard-config 2.20, fonttosfnt 1.2.4.
- LLVM/Clang 19.1.7 (+ patches)
- GCC 4.2.1 (+ patches) en 3.3.6 (+ patches)
- Perl 5.40.1 (+ patches)
- NSD 4.3.0
- Unbound 1.24.0
- Ncurses 6.4
- Binutils 2.17 (+ patches)
- Gdb 6.3 (+ patches)
- Awk 20250116
- Expat 2.7.3
- zlib 1.3.1 (+ patches)
Bron: opennet.ru
