- Множество добавлений для платформы arm64;
- Улучшения в удобстве использования Wi-Fi;
- Продолжение работы над избавлением сетевого стека от использования глобальной блокировки ядра;
- Cистемный вызов unveil(), который предоставляет новый способ изоляции доступа к файловой системе;
- Механизм защиты RETGUARD, нацеленный на усложнение выполнения эксплоитов, построенных с использованием заимствования кусков кода и приёмов возвратно-ориентированного программирования;
- Переработка синтаксиса OpenSMTPD для значительного увеличения гибкости не в ущерб удобству;
К сожалению, полагающаяся песня к моменту релиза ещё не была готова, анонс будет произведён отдельно.
Список изменений:
- Улучшения в области безопасности:
- Новый системный вызов unveil(2) для ограничения доступа текущего процесса к файловой системе путём задания списка используемых файлов и каталогов. Наибольший эффект достигается в сочетании с pledge(2).
- Реализована опция MAP_STACK для mmap(2). При возникновении ошибок доступа и системных вызовах ядро будет проверять, что верхушка стека находится в отведённой ей (с участием MAP_STACK) области памяти, что мешает атакам, переносящим верхушку стека в контролируемую атакующим область памяти (stack pivot attack).
- Новый защитный механизм RETGUARD (для платформ amd64 и arm64), использующий индвидуальные для каждой функции cookie для защиты доступа к командам возврата из функции, что затрудняет их использование в качестве ROP-гаджетов.
- В clang(1) на amd64 и i386 добавлен проход по коду с идентификацией типичных полезных для ROP-гаджетов инструкций и заменой таких инструкций альтернативами.
- Защита от Spectre v2, Retpoline, включена в clang(1) и ассемблерных файлах на amd64 и i386.
- Механизм защиты SpectreRSB включён на amd64.
- Также для amd64 добавлена защита Intel L1 Terminal Fault.
- PCID, при их наличии, используются на amd64 для разделения пользовательских и ядерных записей TLB.
- Защита от Meltdown добавлена для i386.
- На amd64 теперь используется немедленное переключение контекста FPU для предотвращения утечки состояния FPU из-за спекулятивного выполнения.
- Фальшивая многопоточность (SMT, в случае с процессорами Intel называется HT — HyperThreading) отключена по умолчанию из-за небезопасного использования ядер ЦП. Она может быть включена обратно с помощью новой переменной sysctl(2) hw.smt.
- Запись звука по умолчанию глобально отключена (имитируется запись тишины) и может быть включена с помощью новой переменной sysctl(2) kern.audio.record.
- getpwnam(3) и getpwuid(3) возвращают теперь указатель не на статичный буфер, а на явно выделяемую память, позднее освобождаемую. Это позволяет детектировать доступ к устаревшим записям.
- sshd(8) получил дополнительную защиту от атак на перебор названий учётных записей.
Улучшения гипервизора vmm(4) и соответствующего сервиса vmd(8)- Поддержка образов дисков и снимков состояния (snapshots) в формате qcow2.
- Поддержка шаблонов виртуальных машин и наследования в vm.conf(5) и vmctl(8).
- Добавлена начальная поддержка unveil(2) в vmctl(8), заодно произведена общая чистка кода данной утилиты.
- Различные исправления ошибок и улучшения.
Улучшения в стеке IEEE 802.11 (Wi-Fi)- Новая команда «join» в ifconfig(8) для сохранения списка известных сетей и автоматического подключения к ним.
- Значительно увеличена скорость работы команды «ifconfig scan» для многих устройств.
Общие улучшения сетевого стека- В trunk(4) добавлены опции для настройки режимов работы, таймаутов и приоритетов.
- В ifconfig(8) добавлена возможность настройки параметров trunk(4) (см. выше).
- Системные вызовы sendmsg(2), sendto(2), recvfrom(2) и recvmsg(2) работают без глобальной блокировки ядра (KERNEL_LOCK).
- Новые глобальные счётчики IPsec, доступные через netstat(1).
- Новый интерфейс eoip(4) для протокола инкапсуляции MikroTik Ethernet over IP (EoIP).
Маршрутизация и другие улучшения сетевого стека в пользовательском пространстве:- ospf6d(8) теперь может устанавливать метрику маршрута в зависимости от состояния интерфейса.
- ospf6d(8) теперь может работать в альтернативном домене маршрутизации.
- ospf6d(8) теперь использует pledge(2).
- ospfd(8) и ospf6d(8) теперь защищены от многократного запуска в одном домене маршрутизации.
- slaacd(8) теперь полноценно использует pledge(2).
- slaacd(8) теперь получает от ядра уведомления о дублировании сетевых адресов, и по возможности генерирует новые.
- Когда slaacd(8) обнаруживает переход между сетями, он отмечает как устаревшие все сконфигурированные сетевые адреса. Предпочтение получают адреса с новыми анонсированными префиксами.
- Новый сервис, rad(8), пришедший на замену rtadvd(8) (часть проекта KAME), для отправки сообщений IPv6 Router Advertisement.
- Анахронизм networks(5) более не поддерживается.
- Улучшена надёжность и предсказуемость поведения парсера pfctl(8) в крайних ситуациях.
- route(8) теперь сообщает об ошибках использования «-netmask» и «-prefixlen» вместо конфигурирования непонятных маршрутов.
- dhclient(8) теперь добавляет прямой маршрут к шлюзу по умолчанию, если он не доступен в рамках полученных сетевых адреса и маски.
- dhclient(8) теперь обновляет dhclient.leases(5), resolv.conf(5) и все отмеченные ключом «-L» файлы до ухода на задний план и возвращения управления вызывающей программе (скрипту).
- Опция «-i» в dhclient(8)] теперь отбрасывает любые ранее определённые значения для отмеченных к игнорированию опций.
- Любое изменение на любом интерфейсе теперь побуждает dhclient(8) соответствующим образом обновить resolv.conf(5).
- dhclient(8) теперь всегда записывает идентификатор клиента, использованный для получения lease, для лучшей совместимости с RFC 6842.
- dhclient(8) теперь имеет опцию «-r» для прекращения работы с освобождением текущей lease.
- dhclient(8) теперь избегает некорректной модификации resolv.conf(5) путём игнорирования dhclient.leases(5) для интерфейсов, не умеющих сообщать о наличии связи.
Улучшения в установщике- installurl(5) по умолчанию получает значение «cdn.openbsd.org», если зеркало не было выбрано явным образом при установке ОС. Благодаря этому pkg_add(1) и syspatch(8) работают «из коробки» в таких случаях.
- DUID можно использовать для ответа на вопрос "Which disk is the root disk?" при обновлении системы (актуально при автоматическом обновлении).
- Установка согласно diskless(8) может производиться через интерфейсы, сконфигурированные dhclient(8).
- disklabel(8) теперь создаёт раздел /usr/obj размером минимум 5ГБ при использовании автоматической разметки.
- disklabel(8) теперь создаёт раздел /usr/local размером не более 20ГБ при использовании автоматической разметки.
Улучшения в поддержке оборудования- Поддержка ACPI на платформе arm64.
- Обновлён драйвер radeondrm(4) до соответствующего Linux 4.4.155, что принесло поддержку modesetting для APU KAVERI/KABINI/MULLINS и GPU OLAND/BONAIRE/HAINAN/HAWAII.
- Также radeondrm(4) теперь поддерживается на arm64.
- Новый драйвер umt(4) для сенсорных экранов, соответствующих стандарту USB Windows Precision Touchpad.
- Новый драйвер bnxt(4) для карт Broadcom NetXtreme-C/E (PCI Express) на базе чипов Broadcom BCM573xx и BCM574xx. Драйвер изначально включён для платформ amd64 и arm64.
- Новый драйвер mue(4) для гигабитных Ethernet-устройств Microchip LAN7500/LAN7505/LAN7515/LAN7850 (USB 2.0) и LAN7800/LAN7801 (USB 3.0).
- Новый драйвер acpisurface(4) для поддержки ACPI на ноутбуках Microsoft Surface Book.
- Новый драйвер agintcmsi(4/arm64) для ITS-компонентов ARM GIC.
- Новый драйвер dwpcie(4) для PCIe-контроллеров Synopsys Designware, встречающихся на различных SoC.
- Новый драйвер acpipci(4/arm64) для мостов хост-PCI, информация о которых берётся из ACPI.
- Новые драйвера mvclock(4), mvgpio(4), mvicu(4), mvrng(4), mvrtc(4) и mvtemp(4) для различных компонентов SoC Marvell Armada.
- Новые драйверы hiclock(4), hidwusb(4), hireset(4) и hitemp(4) для различных компонентов SoC HiSilicon.
- Новые драйверы ccp(4) и octcrypto(4/octeon) для аппаратной акселерации криптографических операций.
- Новые драйверы ccpmic(4) и tipmic(4) для управления питанием на Intel Crystal Cove и Dollar Cove TI.
- Новый драйвер imxrtc(4) для часов реального времени (RTC), интегрированных в процессоры Freescale i.MX7 и i.MX8.
- Новые драйверы fanpwr(4) для регуляторов напряжения Fairchild FAN53555 и Silergy SYR827/828.
- Новый драйвер pinctrl(4) для единого мультиплексирования pin.
- Новый драйвер plgpio(4) для GPIO-контроллеров ARM PrimeCell PL061.
- Поддержка PIE на платформе m88k.
- Поддержка для некоторых сенсорных экранов HID-over-I^2C в imt(4).
- Поддержка чипов RTL8188EE и RTL8723AE в rtwn(4).
- Поддержка RT3290 в ral(4).
- Поддержка контроллеров SAS 3.5 (SAS34xx и SAS35xx) в mpii(4).
- Поддержка сенсоров состояния диска и батареи, а также bio(4) в mfii(4).
- На платформе i386 микрокод для процессоров Intel загружается при запуске ядра ОС.
- На платформе i386 уменьшено зарезервированное для brk(2) адресное пространство с целью увеличения объёма памяти, доступного для анонимных вызовов mmap(2).
- На платформе sparc64 ldomctl(8) теперь поддерживает более новые системные прошивки в машинах SPARC T2+ и T3, в частности T1000, T5120 и T5240. Переменные NVRAM теперь могут выставлять на уровне логического домена.
- Улучшена поддержка UART Synopsys Designware в com(4).
- Новый драйвер https://man.openbsd.org/islrtc.4 islrtc(4)]] для часов реального времени (RTC) Intersil ISL1208.
- Поддержка Huawei k3772 в umsm(4).
- Поддержка чипсета VIA VX900 в viapm(4).
- Поддержка других, кроме GPS, сетей GNSS в nmea(4).
- Поддержка трекпойнтов Elantech в pms(4).
- Поддержка сенсора подключения репликатора портов в acpithinkpad(4).
- Поддержка SoC Allwinner H3 и A64 в scitemp(4).
Улучшения в bgpd(8)- Фильтрующее действие по умолчанию изменено с «allow» на «deny».
- Параметр конфигурации «announce (all|self|none|default-route)» объявлен устаревшим, на замену пришло конфигурирование фильтров.
- Улучшена работа наборов префиксов (prefix-sets), как в скорости, так и в удобстве.
- Введены наборы AS (as-sets) для сопоставления ASPATH большому количеству номеров AS.
- Поддержка BGP Origin Validation (RFC 6811) посредством директивы «roa-set».
- Добавлены наборы исходящих пунктов (origin-sets) для эффективного сопоставления AS пар «префикс — источник».
- Небольшая чистка синтаксиса: переводы строк опциональны внутри раскрывающихся списков (ранее переводы строк должны были быть экранированы), однако в блоках «neighbor», «group» и «rdomain» записи должны быть на отдельных строках.
- Уменьшен объём работы при перезагрузке конфигурации.
- Перезагрузка конфигурации более не блокирует обработку остальных событий в механизме выбора маршрута.
- Улучшена поддержка и исправлен ряд ошибок при одновременной работе множества bgpd в разных доменах маршрутизации.
Прочие улучшения:- Поддержка прокрутки по истории для фреймбуферных консолей на базе rasops(9), таких как inteldrm(4), radeondrm(4) и efifb(4).
- rebound(8) получил поддержку постоянных A-записей, по аналогии с «local-data» в Unbound.
- Новый драйвер kcov(4) для сбора статистики о покрытии кода внутри ядра. Он является частью текущего проекта по fuzz-тестированию ядра.
- uid_from_user(3) и gid_from_group(3) добавлены в стандартную библиотеку языка C и уже используются некоторыми программами для ускорения повторных запросов.
- Новая реализация семафоров, обеспечивающая безопасность асинхронного использования sem_post(3).
- pcap_set_immediate_mode(3) была импортирована из upstream libpcap, что позволяет программам обрабатывать пакеты сразу по мере их поступления.
- ksh(1) теперь использует 64-битные целые числа в арифметических выражениях на всех архитектурах.
- Исправлена ошибка в раскрытии ksh(1) переменных помеченных флагом «только для чтения».
- lam(1) теперь поддерживает UTF-8.
- trunk(4) и vlan(4) теперь включены в RAMDISK на arm64.
- Улучшен алгоритм пересборки IP-фрагментов в PF с целью защиты от DoS—атак.
- Новая утилита ldap(1), реализующая простой LDAP-клиент.
- Исправлен баг в init(8), приводивший к зависаниям на платформе i386 при работе под VMWare.
- Добавлена поддержка загрузки посредством TFTP в U-Boot на платформах arm64 и armv7 посредством EFI Simple Network protocol.
- Добавлена поддержка EFI Random Number Generator Protocol для получения дополнительной энтропии для ГПСЧ при запуске системы.
- В snmpd(8) добавлена поддержка RFC 3430 (подключение по TCP).
- Драйвер bwfm(4) включён на платформах amd64, i386, arm64 и armv7, а также — для USB-устройств — на платформах loongson и macppc.
- Новый консольный шрифт «Spleen 5x8», предназначенный для небольших OLED-дисплеев.
- usbdevs(8) теперь сообщает о состоянии USB-портов.
- top(1) и systat(1) теперь сообщают время, потраченное каждым ЦП на ожидании в критических секциях (spinning locks).
- Улучшена скорость чтения MSDOSFS благодаря кластеризации.
- Доступ к NFS-узлам теперь упорядочен.
- Утилита systat(1) получила новый экран «uvm», отображающий различную статистику подсистемы UVM.
- mg(1) теперь обрабатывает символы возврата каретки при последовательном поиске (incremental search) путём установки метки (mark) и выхода из поиска, как это делают другие современные клоны Emacs.
- В disklabel(8) улучшено округление смещений и размеров разделов на границы цилиндров.
- disklabel(8) теперь контролирует выход за допустимые пределы для всего пользовательского ввода.
- disklabel(8) более не позволяет разделам типа FS_RAID становиться точками монтирования.
- disklabel(8) теперь изменяет параметры разделов только если весь пользовательский ввод был валидирован.
- Улучшены директивы управления журналированием к конфигурационном файле relayd(8) для более гибкой настройки того, что необходимо логировать.
- tmux(1) теперь корректно работает с палитрами терминалов, состоящими более чем из 256 цветов.
- httpd(8) теперь поддерживает аутентификацию по клиентскому сертификату.
- Множество исправлений в подсистеме fuse(4).
- Улучшен алгоритм поиска ядром свободной памяти для удовлетворения запросов mmap(2) на анонимную память.
- efifb(4) теперь переназначает фреймбуфер EFI раньше для использования комбинированной записи (write combining mapping), что даёт значительное ускорение его (фреймбуфера) работы.
OpenSMTPD- Нарушающие совместимость изменения в синтаксисе smtpd.conf: разделены сопоставление конвертов (envelope), происходящее во время SMTP-диалога, и выполняемые действия (actions), которые начинают выполняться при первой попытке доставки. Это изменение позволяет убрать ряд серьёзных барьеров для дальнейшего развития OpenSMTPD.
- Улучшен движок SMTP с появлением нового парсера сообщений, соответствующего RFC 5322.
- Убраны ограничения, не позволявшие smtpd(8) взаимодействовать с клиентами, отправляющими чрезмерно длинные строки.
- Улучшена безопасность путём перемещения раскрытия переменных для файлов .forward в процесс, отвечающий за доставку сообщений пользователю (MDA).
- Введены обёртки для MDA, позволяющие командам на получение быть прозрачно обёрнутыми внутри глобальных команд.
- Добавлен SMTP-клиент для командной строки.
- Множество улучшений документации и мелких исправлений в коде.
OpenSSH 7.9 Новые возможности:- В большинстве мест конфигурации ssh(1) и sshd(8), где используются номера портов, теперь можно использовать названия сервисов из /etc/services.
- В директиве ssh(1) IdentityAgent теперь можно использовать переменные окружения. Это позволяет использовать несколько сокетов для SSH-агентов без необходимости задания фиксированных путей.
- Поддержка передачи сигналов сессиям по протоколу SSH в sshd(8).
- Команда «ssh -Q sig» может быть использована для получения списка поддерживаемых параметров подписей. Также, «ssh -Q help» покажет полный список поддерживаемых запросов.
- Новая опция CASignatureAlgorithms в ssh(1) и sshd(8) управляет разрешёнными формами подписей для центров сертификации, которыми можно подписывать сертификаты. Например, это позволяет заблокировать центры сертификации, подписывающие сертификаты с использованием алгоритма RSA-SHA1.
- Списки отзыва ключей (KRL) теперь могут включать в себя ключи по хешу SHA-256. Эти списки управляются ssh-keygen(8). Более того, KRL теперь могут быть созданы из Base64-кодированного представления SHA256-отпечатков, то есть, из информации в сообщения об аутентификации sshd((8).
Неполный список исправлений: - ssh(1): ssh-keygen(1): убраны ошибки «invalid format» при загрузке приватных ключей в формате PEM с неверной парольной фразой.
- sshd(8): когда канал закрывается во время получения сообщения от клиента, теперь вместе со stdin и stdout закрывается также файловый дескриптор stderr. Это позволяет избежать зависания процессов, если они ожидают закрытия stderr, не обращая внимания на закрытие stdin и stdout.
- ssh(1): разрешено ForwardX11Timeout=0 для безусловного отключения недоверенного перенаправления X11. До этого поведение при ForwardX11Timeout=0 было неопределённым.
- sshd(8): не закрывается при конфигурировании текстового списка отзыва ключей, содержащего слишком короткий ключ.
- ssh(1): подключения с ProxyJump обрабатываются так же как с ProxyCommand касаемо приведения имени хоста к каноническому виду (то есть, приведение не производится, если только опция CanonicalizeHostname не выставлена в «always»).
- ssh(1): исправлена регрессия в OpenSSH 7.8, которая не позволяла аутентификацию по ключу с использованием сертификата в ssh-agent(1) или относительно sshd(8) из OpenSSH {7.8.
LibreSSL 2.8.2 (первый стабильный релиз ветки 2.8). Улучшения API и документации:- Верификация X509 стала строже, любая проблема X509_VERIFY_PARAM для имени хоста, IP-адреса или email заставит X509_verify_cert(3) сообщить об ошибке.
- Убрана поддержка классического (одиночного) DES.
- В RSA_sign(3) добавлена поддержка RSASSA-PKCS1-v1_5 (RFC 8017).
- Изменено поведение функций CRYPTO_mem_leaks_*(3) на возврат значения -1. Эти функции являются пустышками в LibreSSL, поэтому возвращается индикатор ошибки, чтобы не показывать (не-)наличие утечек памяти.
- SSL_copy_session_id(3), PEM_Sign(3), EVP_EncodeUpdate(3), BIO_set_cipher(3), X509_OBJECT_up_ref_count(3) теперь возвращают int для обработки ошибок, как в OpenSSL.
- Часть #define превращена в настоящие функции, для соответствия OpenSSL ABI, в частности, X509_CRL_get_issuer(3) и другие функции X509_*get*(3).
- Добавлена X509_get0_serialNumber(3) из OpenSSL.
- Убраны EVP_PKEY2PKCS8_broken(3) и PKCS8_set_broken(3), и в то же время добавлены PKCS8_pkey_add1_attr_by_NID(3) и PKCS8_pkey_get0_attrs(3), для соответствия OpenSSL.
- Удалены неработоспособные pkcs8 форматы из openssl(1).
- Добавлены RSA_meth_get_finish(3) и RSA_meth_set1_name(3) из OpenSSL.
- Добавлены новые EVP_CIPHER_CTX_(get|set)_iv(3) API, позволяющие получать и заполнять инициализирующий вектор (IV) с подходящей валидацией.
- Экстенсивные обновления документации и истории API.
- Убраны глючные клиентские костыли SSL_OP_TLS_ROLLBACK_BUG.
- ENGINE_finish(3) и ENGINE_free(3) теперь возвращают NULL при успехе для упрощения жизни вызывающим и соответствия поведению OpenSSL; документация ENGINE_* переписана.
- Добавлена аннотация const ко множеству существующих API из OpenSSL, для облегчения взаимозаменяемости для использующих приложений.
- Документированы решаемые проблемы с безопасностью при описании BN_FLG_CONSTTIME и константного времени работы функций BN_*.
Тестирование и проактивная защита: - Добавлена поддержка теста Wycheproof для тестовых векторов ECDH, RSASSA-PSS, AES-GCM, AES-CMAC, AES-CCM, AES-CBC-PKCS5, DSA, ChaCha20-Poly1305, ECDSA, X25519. Исправлены ошибки, выявленные в ходе тестирования.
- Добавлены тесты алгоритмов шифрования, включая все шифры TLS 1.2. Добавлены ослепляющие значения при генерации подписей DSA и ECDSA для усложнения проведения атак с утечкой приватного ключа по сторонним каналам.
- Добавлены timing-safe сравнения для проверки результатов верификации подписи.
- Добавлена поддержка скалярного умножения эллиптических кривых за константное время. От Билли Брумли (Billy Brumley) и его команды из Технологического университета Тампере.
Внутренние улучшения: - Упрощены генерация и верификация сигнарутры обмена ключами.
- Ещё больше кода теперь использует CBB/CBS. В частности, все сообщения-приветствия (handshake) теперь создаются CBB. Обмен ключами RSA упрощён и использует отдельные буферы для хранения секретных данных.
- Упрощены разбор и обработка сессионных билетов (session tickets), по мотивам изменений в BoringSSL.
- Прекращена обработка AES-GCM в ssl_cipher_get_evp, так как там используется интерфейс EVP_AEAD.
- Прекращено использование составных EVP_CIPHER AEAD.
- Убраны неиспользуемые флаги SSL3_FLAGS_DELAY_CLIENT_FINISHED и SSL3_FLAGS_POP_BUFFER при записи, что упростило организацию ввода-вывода.
- BN_clear(3) теперь использует explicit_bzero(3).
- Почищены BN_* вслед за изменениями, сделанными в OpenSSL Давидом Галаси (Davide Galassi) и другими.
- Проведена ревизия реализации RSASSA-PKCS1-v1_5 на предмет соответствия RFC 8017, базируясь на коммите Дэвида Бенджамина (David Benjamin) в OpenSSL.
Исправления ошибок: - Исправлено переполнение на один байт буфера у пользователей EVP_read_pw_string(3).
- Исправлены различные утечки памяти, найденные Coverity.
- Больше функций в публичных API теперь используют константные аргументы.
- Корректное очищение текущего состояния шифратора при смене состояния. Это исправляет проблему когда пересогласование заменяет AEAD-шифр на не-AEAD или наоборот. О проблеме сообщил Бернард Спил (Bernard Spil).
- Исправлена пара ошибок более чем двадцатилетней давности в X509_NAME_add_entry(3).
- Исправлены потенциальные утечки памяти при ошибке в ASN1_item_digest(3).
- Исправлена потенциальная ошибка выравнивания памяти в asn1_item_combine_free().
- Исправлены небольшие сторонние каналы утечки, связанные со временем, в ecdsa_sign_setup() и dsa_sign_setup().
- Добавлены пропущенные проверки на допустимые границы в c2i_ASN1_BIT_STRING().
- Исправлена потенциальная утечка / ошибка при возврате значения в механизме генерации DSA-подписи.
Mandoc 1.14.4- В HTML-выводе, многие mdoc(7)-макросы теперь используют более подходящие HTML-элементы.
- В HTML-выводе убраны почти все атрибуты «style» и часть избыточных «class».
- Первые шаги в сторону responsive design: @media в mandoc.css, HTML-элемент meta viewport, из генерируемого кода убраны все жёсткие размеры.
- Множество улучшений в стилях в mandoc.css.
- Более чем 15 новых низкоуровневых возможностей roff(7) и GNU man-ext. Mandoc теперь может форматировать руководства groff.
Порты и пакеты:- Программа update-plist(1) была полностью переписана и теперь практически без ошибок обрабатывает ситуации с MULTI_PACKAGES и раскрытием переменных.
- Новые пакеты теперь инициируют запуск средств вроде update-desktop-database лишь один раз за сессию вместо запуска после каждого добавления/удаления пакета.
- Страницы руководства по системе портов (bulk(8), dpb(1) и другие) теперь включены в базовую поставку и поэтому доступны даже без дерева портов.
Подготовлено пакетов ко дню релиза, по архитектурам: - aarch64 (arm64): 8139
- amd64: 10304
- i386: 10230
Пакеты для нижеследующих архитектур будут доступны по мере того как их сборка будет закончена: - arm
- mips64
- mips64el
- powerpc
- sparc64
Из находящихся в портах приложений, отмечены:- AFL 2.52b
- CMake 3.10.2
- Chromium 69.0.3497.100
- Emacs 21.4 и 26.1
- GCC 4.9.4
- GHC 8.2.2
- Gimp 2.8.22
- GNOME 3.28.2
- Go 1.11
- Groff 1.22.3
- JDK 8u172
- LLVM/Clang 6.0.1
- LibreOffice 6.1.1.2
- Lua 5.1.5, 5.2.4 и 5.3.5
- MariaDB 10.0.36
- Mono 5.14.0.177
- Mozilla Firefox 60.2.2esr и 62.0.3
- Mozilla Thunderbird 60.2.1
- Mutt 1.10.1 и NeoMutt 20180716
- Node.js 8.12.0
- OCaml 4.03.0
- OpenLDAP 2.3.43 и 2.4.46
- PHP 5.6.38, 7.0.32, 7.1.22 и 7.2.10
- Postfix 3.3.1 и 3.4-20180904
- PostgreSQL 10.5
- Python 2.7.15 и 3.6.6
- R 3.5.1
- Ruby 2.3.7, 2.4.4 и 2.5.1
- Rust 1.29.2
- Sendmail 8.16.0.29
- SQLite3 3.24.0
- Sudo 1.8.25
- Tcl/Tk 8.5.19 и 8.6.8
- TeX Live 2017
- Vim 8.1.438
- Xfce 4.12
Компоненты от сторонних разработчиков, входящие в состав OpenBSD 6.4:- Графический стек Xenocara на базе X Server 1.19.6 c патчами, freetype 2.9.1, fontconfig 2.12.4, Mesa 13.0.6, xterm 331, xkeyboard-config 2.20;
- LLVM/Clang 6.0.0 с патчами
- GCC 4.2.1 (с патчами) и 3.3.6
- Perl 5.24.3 (с патчами)
- NSD 4.1.25
- Unbound 1.8.2
- Ncurses 5.7
- Binutils 2.17 (с патчами)
- Gdb 6.3 (с патчами)
- Awk версия от 10 августа 2011 года
- Expat 2.2.6
Источник: https://www.opennet.ru/opennews/art.shtml?num=49467
(opennet.ru, основная лента)