Профиль: Аноним (вход | регистрация) неRU opennet.me  
OpenNET

[ новости /+++ | форум | теги |    ]

·20.10 Ошибка при генерации ключей удостоверяющего центра eMudhra позволяла получить TLS-сертификаты для любых сайтов (12 +1)
  Компания Mozilla предупредила о компрометации закрытых ключей, связанных с восемью промежуточными (вторичными) корневыми сертификатами удостоверяющего центра eMudhra. Скомпрометированные ключи позволяли выпустить поддельные TLS-сертификаты для любого сайта, воспринимаемые как заслуживающие доверия во всех браузерах, и использовать их для перехвата или модификации транзитного трафика.

Закрытые ключи были воссозданы исследователями из имеющихся в публичном доступе данных, что стало возможным из-за ошибки в процессе генерации ключей на базе эллиптической кривой P-384. Ошибка привела к тому, что ключи были сгенерированы с использованием при инициализации целых чисел меньше 256 вместо криптографически стойких случайных чисел. При такой генерации закрытый ключ может быть воссоздан c помощью алгоритма дискретного логарифмирования или простым перебором с генерацией первых 256 возможных ключей. Так как процедура воссоздания закрытых ключей может быть повторена злоумышленниками всем пользователям рекомендуется срочно обновить браузеры и пакеты с сертификатами.

В качестве доказательства утечки закрытых ключей сообщивший об инциденте исследователь опубликовал сообщение, подписанное закрытыми ключами от каждого из восьми скомпрометированных сертификатов eMudhra. Проверить свой браузер на предмет обновления информации об отозванных сертификатах можно на сайте, посвящённом инциденту.

Экстренно сформированы корректирующие выпуски Firefox 158.0.1, 115.43.1 и 153.5.1, а также библиотеки NSS 3.131.1, в которых обновлено хранилище корневых сертификатов и заблокированы проблемные сертификаты. В Chrome и продуктах Google скомпрометированные сертификаты заблокированы 17 октября, в Apple - 19 октября, а в Microsoft - 20 октября. Блокировка также выполнена через централизованные списки отозванных сертификатов s OneCRL, CRLite и CRLSets.

Пакеты с обновлёнными корневыми сертификатами выпущены для Ubuntu (ca-certificates 20260816ubuntu0.2*.04.1), Arch Linux (ca-certificates-mozilla 3.131.1-1), Gentoo (ca-certificates 20260816.3.125), curl, Homebrew, Go (1.27.3, 1.26.10), Python, RustTLS, Electron и Elixir. Необновлёнными на момент написания новости остаются списки корневых сертификатов в Debian, FreeBSD, Node.js, Bun и Composer.

До обновления пакета ca-certificates для ручного удаления проблемных корневых сертификатов в Debian и Ubuntu можно использовать команду:


   sed -i \
     -e 's|^mozilla/emSign_ECC_Root_CA_-_G3.crt|!&|' \
     -e 's|^mozilla/Comodo_AAA_Services_root.crt|!&|' \
     /etc/ca-certificates.conf && update-ca-certificates

В Fedora, RHEL, CentOS Stream, Rocky Linux, AlmaLinux и Amazon Linux 2023:


   d=/etc/pki/ca-trust/source/blocklist; [ -d $d ] || d=/etc/pki/ca-trust/source/blacklist
   trust extract --overwrite --format=pem-bundle \
     --filter='pkcs11:object=Comodo%20AAA%20Services%20root;type=cert' \
     $d/Comodo_AAA_Services_root.pem &&
trust extract --overwrite --format=pem-bundle \
     --filter='pkcs11:object=emSign%20ECC%20Root%20CA%20-%20G3;type=cert' \
     $d/emSign_ECC_Root_CA_-_G3.pem &&
   update-ca-trust

В openSUSE и SLES:


   d=/etc/pki/trust/blocklist; [ -d $d ] || d=/etc/pki/trust/blacklist
trust extract --format=pem-bundle \
     --filter='pkcs11:object=Comodo%20AAA%20Services%20root;type=cert' \
     $d/Comodo_AAA_Services_root.pem &&
trust extract --format=pem-bundle \
     --filter='pkcs11:object=emSign%20ECC%20Root%20CA%20-%20G3;type=cert' \
     $d/emSign_ECC_Root_CA_-_G3.pem &&
   update-ca-certificates

В NixOS:


   security.pki.caCertificateBlacklist = [
     "Comodo AAA Services root"
     "emSign ECC Root CA - G3"
   ];

В NetBSD:


   certctl untrust /usr/share/certs/mozilla/all/emSign_ECC_Root_CA_-_G3.pem &&
   certctl untrust /usr/share/certs/mozilla/all/Comodo_AAA_Services_root.pem

  1. Главная ссылка к новости
  2. OpenNews: Сертификат удостоверяющего центра был использован для перехвата трафика произвольных доменов
  3. OpenNews: В клиентском ПО удостоверяющего центра MonPass выявлен бэкдор
  4. OpenNews: Уязвимость в удостоверяющем центре SSL.com, позволявшая получить сертификат для чужого домена
  5. OpenNews: Атакующие получили 27 сертификатов, скомпрометировав ПК сотрудников удостоверяющего центра Digicert
  6. OpenNews: Cloudflare создаёт удостоверяющий центр для бесплатной раздачи TLS-сертификатов
Обсуждение (12 +1) | Тип: Проблемы безопасности | Интересно


·20.10 Для ядра Linux реализованы новые файловые системы BeamFS, XMFS и MeshXFS (65 +10)
  Для обсуждения в списке рассылки разработчиков ядра Linux опубликованы патчи с реализацией файловой системы BeamFS, использующей кодирование Рида - Соломона для определения и восстановления повреждённых данных по месту в конфигурациях с одним накопителем. Основными областями применения BeamFS называются бортовые компьютеры спутников, оборудование в кабинетах лучевой терапии и прочие системы, работающие в условиях повышенной радиации, для которых возвращение искажённых данных более критично, чем невозможность прочитать информацию.

По умолчанию BeamFS может восстановить до 8 потерянных байт в каждом 255-байтовом блоке при накладных расходах 7% (288 байт кодов восстановления на каждые 4096 байт хранимых данных). Коды коррекции ошибок применяются не только для данных, но и для служебной информации в суперблоке, inode, индексах директорий и битовых картах. Проверка целостности и попытки восстановления недостающих данных осуществляются при каждой операции чтения. Если гарантировать корректность информации не удаётся, операция завершается ошибкой "-EIO", что исключает скрытое возвращение повреждённых данных.

Проведённые эксперименты показали, что при облучении платы i.MX 8M Plus с Linux и ФС ext4 протонами с энергией от 20 до 58 мэВ, 90% всех сбоев возникало на уровне файловой системы и драйверов устройств хранения. Также была проведена симуляция одиночных искажений битов при чтении с носителя: BeamFS и Btrfs успешно распознали повреждение данных и всегда возвращали ошибку, в то время как ext4 и ext3 молча возвращали искажённые данные.

BeamFS обеспечивает целостность и восстановление только на стадии от чтения с физического носителя до передачи в страничный кэш в оперативной памяти. Целость хранения в оперативной памяти может поддерживаться при помощи чипов памяти с коррекцией ошибок. Из ограничений BeamFS отмечается отсутствие поддержки журналирования и режима Copy-on-Write (CoW) - метаданные на накопитель записываются неупорядоченно, поэтому в случае некорректного завершения работы требуется полная проверка при помощи fsck.


Кроме BeamFS недавно для ядра Linux были предложены ещё две файловые системы:

  • На прошедшей несколько дней назад конференции Linux Plumbers Conference 2026 инженер из компании Huawei представил (видео, слайды) файловую систему XMFS (cross-node eXpress Memory File System) для ядра Linux, предназначенную для использования в кластерах с общей для всех узлов разделяемой оперативной памятью (как tmpfs, но для памяти всех узлов). XMFS даёт возможность использовать стандартный POSIX-интерфейс файловых систем для работы с внешней памятью, адресуемой напрямую при помощи таких технологий как CXL 3.0 (Compute Express Link) и Huawei United Bus. Проект находится на стадии экспериментального прототипа, проходящего внутреннее тестирование, и пока не готов для передачи в состав ядра.

    Файловая система имеет классическую для распределённых файловых систем архитектуру с выделением сервера, отвечающего за журналирование, поддержание таблиц inode и сопоставление содержимого и метаданных с памятью отдельных узлов.

    При тестировании использования XMFS для таких задач как совместный доступ к образам контейнеров с разных узлов реализация показала производительность близкую с tmpfs с включением больших страниц памяти (2 MB huge pages).



  • При помощи AI подготовлена файловая система MeshXFS, представляющая собой форк XFS, адаптированный для одновременного использования на нескольких узлах в кластере. MeshXFS даёт возможность примонтировать общее блочное устройство в режиме чтения-записи на разных узлах, поддерживать целостность и управлять блокировками при одновременном обращении к данным. Проект начинался как эксперимент по проверке возможности создания при помощи AI-моделей Linux-драйвера с файловой системой, поддерживающей распределённые блокировки, параллельный доступ и восстановление после сбоев. Основная работа выполнена при помощи Claude Opus, но для решения особо сложных проблем точечно привлекались модели Claude Fable, GPT, Gemini и Astra. Эксперимент признан успешным и уже опубликовано несколько рабочих релизов MeshXFS.

    Из дополнительных возможностей, реализованных поверх XFS, отмечены два режима управления распределёнными блокировками (синхронизация по сети и хранение состояния на отдельном общем диске), обеспечение непротиворечивости кэша на разных узлах, ведение журнала для восстановления и адаптация дискового формата и утилит для специфики кластерной ФС. Поддерживается работа с общим хранилищем, подключённым через iSCSI (протестировано на 16 узлах), или при репликации блочного устройства при помощи DRBD. Координация блокировок, функции обнаружения узлов, проверка доступности и определение сбойных узлов реализованы в одном общем модуле ядра. Работа проверена в Proxmox VE 9, RHEL 9, Ubuntu 24.04/26.04 и Debian 12/13.

  1. Главная ссылка к новости
  2. OpenNews: Файловая система Bcachefs официально перестала быть экспериментальной
  3. OpenNews: Для ядра Linux предложена файловая система DLMPFS
  4. OpenNews: Открыт код распределённой файловой системы TernFS
  5. OpenNews: Линус Торвальдс раскритиковал регистронезависимые файловые системы
  6. OpenNews: Открыт код распределённой файловой системы 3FS, используемой в DeepSeek
Обсуждение (65 +10) | Тип: Программы |


·20.10 Релиз OpenBSD 8.0 (76 +14)
  Представлен выпуск свободной UNIX-подобной операционной системы OpenBSD 8.0. Проект OpenBSD был основан Тэо де Раадтом (Theo de Raadt) в 1995 году после конфликта с разработчиками NetBSD, в результате которого для Тэо был закрыт доступ к CVS репозиторию NetBSD. После этого Тэо де Раадт с группой единомышленников создал на базе дерева исходных текстов NetBSD новую открытую операционную систему, главными целями развития которой стали переносимость (поддерживается 13 аппаратных платформ), стандартизация, корректная работа, проактивная безопасность и интегрированные криптографические средства. Размер полного установочного ISO-образа базовой системы OpenBSD 8.0 составляет 794 МБ.

Кроме непосредственно операционной системы, проект OpenBSD известен своими компонентами, которые получили распространение в других системах и зарекомендовали себя как одни из наиболее безопасных и качественных решений. Среди них: LibreSSL (форк OpenSSL), OpenSSH, пакетный фильтр PF, демоны маршрутизации OpenBGPD и OpenOSPFD, NTP-сервер OpenNTPD, почтовый сервер OpenSMTPD, мультиплексор текстового терминала (аналог GNU screen) tmux, демон identd с реализацией протокола IDENT, BSDL-альтернатива пакету GNU groff - mandoc, протокол для организации отказоустойчивых систем CARP (Common Address Redundancy Protocol), легковесный http-сервер, утилита синхронизации файлов OpenRSYNC.

OpenBSD 8.0 стал 61 релизом проекта. Значительное изменение номера версии обусловлено использованием десятичной нумерации, в соответствии с которой следом за выпуском 7.9 следует 8.0. Основные изменения:

  • Для архитектуры amd64 размер адресуемого ядром виртуального адресного пространства увеличен с 4 ГБ до 512 ГБ. В модуле pmap реализована рандомизация базового адреса прямого отображения (direct map) всей физической памяти на виртуальные адреса.
  • На системах с архитектурой arm64 реализована поддержка спящего режима с сохранением содержимого памяти на диск (hibernate).
  • Для архитектур arm64 и riscv64 добавлена поддержка промежуточных буферов (bounce buffer), применяемых при невозможности прямой адресации всей памяти со стороны устройства, передающего данные в режиме DMA.
  • Для ускорения шифрования данных в разделе подкачки (swap) на системах amd64 и arm64 задействованы AES-инструкции CPU.
  • Для архитектуры riscv64 реализовано определение поддерживаемых расширений CPU и передача сведения о них в пространство пользователя (данные можно получить при помощи флагов AT_HWCAP и AT_HWCAP2 в функции elf_aux_info). Добавлена поддержка расширении "V" (векторные операции), Sstc (операции с таймером) и AIA (Advanced Interrupt Architecture, обработка прерываний), а также драйверов imsi и aplic для соответствующих контроллеров прерываний.
  • Порт для архитектуры sparc64 переведён на использование инструментария LLVM.
  • Прекращена поддержка аппаратной платформы Loongson добавленной в 2010 году для MIPS-совместимых китайских процессоров Loongson 2E и 2F. Причиной удаления стали проблемы со сборкой для платформы mips64el в новых версиях компилятора Clang.
  • Реализация фреймворка drm (Direct Rendering Manager) и графических драйверов для GPU AMD (radeondrm, amdgpu) и Intel синхронизирована с ядром Linux 6.18.53 (в прошлом выпуске - 6.18.22). В драйвер inteldrm перенесена поддержка графических карт Intel серии Arc A (DG2/Alchemist). Решены проблемы с появлением таймаутов на системах с GPU Intel Alder Lake. Добавлена поддержка адресации более 4 ГБ видеопамяти.
  • В ядре улучшена эвристика обработки неактивных страниц памяти при вытеснении в раздел подкачки и освобождении памяти. Добавлена функция getexecpath для определения абсолютного пути к исполняемому файлу текущего процесса. Проведена подготовка к увеличению размера дисковых меток (disklabel).
  • Расширена поддержка спящего режима, который теперь корректно поддерживается в драйверах qwz (Qualcomm Wi-Fi 7 IEEE 802.11a/ac/ax/b/g/n), ufshci (Universal Flash Storage Host Controller) и qcuart (Qualcomm GENI UART). Изменения позволили решить проблемы с переходом в спящий режим ноутбуков и планшетов, таких как Samsung Galaxy Book4 Edge, HONOR MagicBook Art 14 Snapdragon и IdeaPad. Добавлена глобальная переменная для перехода в спящий режим, разделяющая гибернацию и ждущий режим.
  • В гипервизоре vmd появилась поддержка многопроцессорности в виртуальных машинах с возможностью использования до 64 виртуальных CPU. Для гостевых систем реализован режим x2apic, а также режимы lapic и ioapic для запуска 32-разрядных гостевых систем с Linux. Улучшена работа с образами в формате qcow.
  • В звуковом сервере sndiod реализован серверный режим управления, позволяющий динамически менять настройки утилитой sndioctl. В sndioctl появилась поддержка добавления и удаления элементов списков, а также настройки проброса MIDI-портов.
  • Расширена поддержка оборудования и добавлены новые драйверы для Ethernet-контроллеров Intel E610, Panther Lake и Wildcat Lake, сенсорных экранов GXTP7936 (Samsung Galaxy Book4 Edge), PCIe-контроллера SpacemiT K3, SABI (Samsung Advanced BIOS Interface), контроллеров заряда Samsung, OTP-памяти Rockchip, APU AMD "Krackan Point", SoC SpacemiT K3 и Qualcomm Glymur (X2). Внесены многочисленные улучшения в драйвер qwx (Qualcomm Wi-Fi 6 IEEE 802.11a/ac/ax/b/g/n).
  • В acme-client добавлена поддержка масок при задании альтернативных имён.
  • В tmux реализован безрамочный режим показа меню, расширена поддержка UTF-8, добавлена команда "T" для изменения заголовка панели, добавлена команда refresh-now, в команду new-pane добавлена поддержка модальных панелей (-O) и флаг "-K" для обработки в подобных панелях всех нажатий клавиш, в команду capture-pane добавлены флаги "-H" и "-L" для показа гиперссылок и номеров строк.
  • В LibreSSL улучшена совместимость с AIX, FreeBSD, macOS, MinGW, NetBSD и Windows, а также улучшена поддержка кода на языке ассемблера для разных платформ. Добавлен API dtls12_handshake_msg. Повышена производительность SHA-3.
  • Обновлён OpenSSH, cписок изменений можно посмотреть в анонсах OpenSSH 10.4, OpenSSH 10.5 и OpenSSH 10.6.
  • Число портов для архитектуры AMD64 составило 13060 (было 13044), для aarch64 - 12907 (было 12883), для i386 - 10659 (было 10631). Среди версий приложений в портах:
    • Asterisk 20.21.0 и 22.11.0
    • Audacity 3.7.9
    • CMake 4.3.5
    • Chromium 154.0.8037.92
    • Emacs 31.1
    • FFmpeg 9.0.2
    • GCC 16.1.0
    • GHC 9.10.3
    • GNOME 49
    • Go 1.27.1
    • JDK 11.0.32, 17.0.20, 21.0.12 и 25.0.4
    • KDE Plasma 6.7.5, KDE Gear 26.08.1, KDE Frameworks 6.30.0
    • Krita 6.0.3
    • LLVM/Clang 21.1.8 и 22.1.8
    • LibreOffice 26.8.0.3
    • Lua 5.1.5, 5.2.4, 5.3.6, 5.4.8 и 5.5.1
    • MariaDB 12.3.3
    • Mono 6.14.1
    • Mozilla Firefox 157.0 и ESR 153.4.0
    • Mozilla Thunderbird 153.4.0
    • Mutt 2.4.2 и NeoMutt 20260616
    • Node.js 24.21.0 и Deno 2.9.7
    • OCaml 4.14.2
    • OpenLDAP 2.6.15
    • PHP 8.3.33, 8.4.26 и 8.5.11
    • Postfix 3.5.28 и 3.11.7
    • PostgreSQL 18.6
    • Python 2.7.18 и 3.14.7
    • Qt 5.15.19 (+ патчи от kde) и 6.11.2
    • R 4.6.1
    • Ruby 3.3.12, 3.4.11 и 4.0.7
    • Rust 1.98.1
    • SQLite 3.53.2
    • Shotcut 26.8.1
    • Sudo 1.9.17p2
    • Suricata 7.0.7
    • Tcl/Tk 8.5.19, 8.6.18 и 9.0.4
    • TeX Live 2026
    • Vim 9.2.1125, Neovim 0.12.5 и Vim-Classic 2026091
    • Wayland 1.26.0 и композитные менеджеры CoW, Labwc, Mango, Niri, Sway, Wayfire
    • Vulkan 1.4.357.0
    • Xfce 4.20.0
  • Обновлены компоненты от сторонних разработчиков, входящие в состав OpenBSD 8.0:
    • Графический стек Xenocara на базе X.Org 7.7 с xserver 21.1.24 + патчи, freetype 2.14.3, fontconfig 2.17.1, Mesa 25.0.7, xterm 410, xkeyboard-config 2.20, fonttosfnt 1.2.5.
    • LLVM/Clang 22.1.6 (+ патчи)
    • GCC 4.2.1 (+ патчи)
    • Perl 5.42.3 (+ патчи)
    • NSD 4.15.2.
    • Unbound 1.26.1.
    • Ncurses 6.4
    • Binutils 2.17 (+ патчи)
    • Gdb 6.3 (+ патчи)
    • Awk 20250116
    • Expat 2.8.4
    • zlib 1.3.2 (+ патчи)
  • Устранены уязвимости: переполнение буфера в ppp, удалённое выполнение кода в DNS-сервере nsd (CVE-2026-101337, CVE-2026-101338, CVE-2026-101339, CVE-2026-101341), удалённое переполнение буфера в IPsec при использовании AES-GMAC и обращение к памяти после её освобождения в реализации /dev/video.

  1. Главная ссылка к новости
  2. OpenNews: OpenBSD прекратил поддержку аппаратной платформы Loongson из-за регресии в Clang
  3. OpenNews: В OpenBSD устранена локальная уязвимость, позволяющая получить права root
  4. OpenNews: Релиз OpenBSD 7.9
  5. OpenNews: В OpenBSD переименовали поле в pfsync после ложного AI-отчёта об уязвимости
  6. OpenNews: Для OpenBSD подготовлен порт с классической средой рабочего стола CDE
Обсуждение (76 +14) | Тип: Программы |


·20.10 Выпуск CRIU 4.3, системы для сохранения и восстановления состояния процессов в Linux (45 +9)
  После 11 месяцев разработки опубликован выпуск инструментария CRIU 4.3 (Checkpoint and Restore In Userspace), предназначенного для сохранения и восстановления процессов в пространстве пользователя. Инструментарий позволяет сохранить состояние одного или группы процессов, а затем возобновить работу с сохранённой позиции, в том числе после перезагрузки системы или на другом сервере без разрыва уже установленных сетевых соединений. Код проекта написан на языке Си и распространяется под лицензией GPLv2. CRIU применяется в таких системах управления контейнерами, как OpenVZ, LXC/LXD и Docker. Необходимые для работы CRIU изменения включены в основной состав ядра Linux.

Из областей применения технологии CRIU отмечается обеспечение перезагрузки ОС без нарушения непрерывности выполнения длительно выполняемых процессов, Live-миграция изолированных контейнеров, ускорение запуска медленных процессов (можно начать работу с состояния, сохранённого после инициализации), проведение обновлений ядра без перезапуска сервисов, периодическое сохранение состояния длительно выполняемых вычислительных задач для возобновления работы в случае аварийного завершения, балансировка нагрузки на узлы в кластерах, дублирование процессов на другую машину (fork на удалённую систему), создание снапшотов пользовательских приложений в процессе работы для их анализа на другой системе или на случай если потребуется отменить дальнейшие действия в программе.

В новом выпуске:

  • Реализована возможность сжатия блоков и страниц памяти с использованием алгоритма LZ4 и многопоточной распаковкой.
  • Повышена производительность благодаря задействованию асинхронного ввода/вывода (AIO) при восстановлении страниц VMA (Virtual Memory Area ), новому методу остановки задач без применения аппаратных точек останова и распараллеливанию восстановления memfd и анонимной разделяемой памяти.
  • Добавлена поддержка расширения ARM64 GCS (Guarded Control Stack), обеспечивающего аппаратную защиту адресов возврата из функций. После передачи управления функции, адреса возврата сохраняются процессором не только в обычном стеке, но и в отдельном теневом стеке, который не может быть изменён напрямую. Перед выходом из функции адрес возврата извлекается из теневого стека и сверяется с адресом возврата из основного стека.
  • Добавлен бэкенд для сохранения состояния API драйвера NVIDIA CUDA.
  • Обеспечено восстановление маппинга GPU.
  • Для драйвера amdgpu реализовано сохранение и восстановление состояния буферов подсистемы DRM (Direct Rendering Manager) и файловых дескрипторов DMA-BUF.
  • Добавлены команды для сжатия и распаковки образов памяти в offline-режиме.
  • Добавлена поддержка сохранения и восстановления информации о привязке UID-идентификаторов к сетевым сокетам.
  • Добавлена опция "--image-io-mode" для записи и чтения образов страниц памяти в режиме O_DIRECT (в обход страничного кэша).

  1. Главная ссылка к новости
  2. OpenNews: Выпуск CRIU 4.2, системы для сохранения и восстановления состояния процессов в Linux
  3. OpenNews: Linux Foundation представил containerd 1.0, runtime для изолированных контейнеров
  4. OpenNews: Для ядра Linux развивается система распределённого выполнения потоков Popcorn
  5. OpenNews: Выпуск инструментариев для управления контейнерами LXC 7.0 и LXD 6.8
  6. OpenNews: Google развивает систему перезагрузки ядра без остановки работы устройств
Обсуждение (45 +9) | Тип: Программы |


·19.10 Доступен порт Wine для OpenBSD (46 +33)
  Представлен порт прослойки для запуска Windows-приложений Wine, способный работать в OpenBSD. Основная проблема с запуском Wine в OpenBSD связана с запретом в данной ОС установки регистра gsbase из пользовательского пространства, при том, что при выполнении Windows-приложений данный регистр применяется для доступа к локальной памяти потока. В предложенном проекте данное ограничение устранено через эмуляцию префикса сегмента %gs в командах.

Из ограничений порта отмечается возможность запуска только 64-разрядных программ Windows (режим WoW64 для выполнения 32-разрядных Windows-приложений в 64-разрядных Unix-системах пока не работает). В качестве примера продемонстрирован запуск в OpenBSD игры "The Witcher 3: Wild Hunt - Remastered" с использованием wine и vkd3d-proton. Из планов упоминается намерение задействовать системный вызов unveil для изоляции. Порт включает 42 патча, включён в master-ветку дерева портов, но пока не перенесён в ветку "stable".

  1. Главная ссылка к новости
  2. OpenNews: OpenBSD прекратил поддержку аппаратной платформы Loongson из-за регресии в Clang
  3. OpenNews: Релиз OpenBSD 7.9
  4. OpenNews: В OpenBSD переименовали поле в pfsync после ложного AI-отчёта об уязвимости
  5. OpenNews: В OpenBSD реализована поддержка запуска под управлением Apple Hypervisor
  6. OpenNews: Для OpenBSD подготовлен порт с классической средой рабочего стола CDE
Обсуждение (46 +33) | Тип: К сведению |


·19.10 NotQuiteRSS - развитие QuiteRSS с поддержкой Qt 6 и без встроенного браузера (94 +1)
  Проект NotQuiteRSS развивает ответвление от RSS/Atom-агрегатора QuiteRSS, созданное для модернизации приложения с сохранением привычного интерфейса. Проект ориентирован на пользователей, которым нужен самостоятельный настольный инструмент для чтения новостных лент и хранения новостей локально. Код написан на C++ с использованием Qt Widgets и распространяется под лицензией GPLv3. При разработке применяются AI-инструменты. Сборки формируются для Linux (AppImage), Windows и macOS.

Основное архитектурное отличие от QuiteRSS - полный отказ от встроенного браузерного движка QtWebKit без замены его на QtWebEngine. Статьи отображаются средствами QTextBrowser и QTextDocument. Вместо Qt Multimedia для воспроизведения звуковых уведомлений задействована библиотека miniaudio со встроенной поддержкой WAV, MP3 и FLAC, не требующей установки плагинов GStreamer.

Перед показом HTML проходит обработку по списку разрешённых элементов и атрибутов: удаляются скрипты, фреймы, формы и другие неподдерживаемые конструкции. JavaScript не исполняется, а ссылки на сайты открываются во внешнем браузере. Для HTTPS требуется TLS 1.2 или новее и проверка сертификатов. Ограничиваются размеры ответов и перенаправления, запрещено перенаправление с HTTPS на HTTP. Изображения статей загружаются отдельно от лент, без передачи их учётных данных и Cookies. Анимация изображений в скрытых частях страницы приостанавливается.

При этом приложение не превращено в список ссылок. В нём сохранены чтение статей с форматированием и изображениями, газетный режим, вкладки лент и категорий, поиск внутри статьи, масштабирование, печать и экспорт. Ограничением является отсутствие полноценной встроенной вёрстки HTML/CSS (для просмотра исходной страницы может вызываться внешний браузер).

Среди возможностей и доработок NotQuiteRSS:

  • Поддерживается работа с базой SQLite в оперативной памяти с сохранением на диск через заданный интервал и при штатном завершении. Исправлены нежелательные сохранения при сворачивании в трей и обработка ошибок записи.
  • Резервные копии можно создавать вручную, по расписанию, при изменении подписок и выходе из приложения. Настраивается количество сохраняемых комплектов. Предусмотрены сокращённые копии, содержащие только избранные или помеченные статьи, а также полные страховочные копии перед обновлением структуры базы.
  • Исправлено неограниченное накопление служебных записей об удалённых публикациях при использовании очистки по сроку публикации. Доработаны удаление старых статей, обнаружение дубликатов и обработка ошибок базы.
  • Для выбранных лент можно одновременно менять расписание обновлений, загрузку изображений, направление текста и параметры колонок. Фильтры статей могут распространяться на все ленты, включая добавленные впоследствии.
  • Доступны настройка User-Agent и отдельные правила для доменов, включая параметры GET/POST. Для сайтов с браузерной проверкой предусмотрен выборочный импорт Cookies в формате Netscape. Cloudflare и Anubis распознаются с выводом понятной диагностики, но успешное прохождение проверки через импорт Cookies не гарантируется.
  • Темы оформления, переводы и сервисы отправки ссылок вынесены во внешние ресурсы. Есть OLED-тема, улучшенные пиктограммы для HiDPI и возможность возвращать фокус агрегатору после открытия статьи во внешнем браузере.

  1. Главная ссылка к новости
Обсуждение (94 +1) | Автор: Аноним | Тип: Программы |


·19.10 Terraphim - приватный локальный AI-ассистент и поисковый движок по графам знаний (40 +1)
  Представлен Terraphim, приватный AI-ассистент и движок поиска по графам знаний, работающий целиком на устройстве пользователя. Проект написан на Rust и компилируется в WebAssembly: индексация, поиск и обход графа выполняются локально, без облака, без телеметрии и без отправки данных наружу. Код открыт под лицензией Apache 2.0. Разработка ведётся с 2023 года, последний год с привлечением AI.

Вместо нейросетевых векторов используются детерминистические графовые эмбеддинги и сопоставление шаблонов на базе алгоритма Ахо-Корасик по ролевым тезаурусам - каждое совпадение прослеживается до понятия в графе знаний и занимает меньше миллисекунды. Один запрос покрывает несколько источников: локальные файлы, Confluence, Jira, Discourse, почту и grepapp.

Для AI-агентов есть MCP-сервер (подключение локальных графов знаний к ассистентам), CLI terraphim-agent (поиск по сессиям Claude Code и Cursor, фиксация ошибок и извлечённых уроков), а также хуки до и после вызова инструментов. Отдельно доступен редактор Terraphim с предложением альтернативных формулировок на основе графа знаний.

  1. Главная ссылка к новости
Обсуждение (40 +1) | Автор: Alex Mikhalev | Тип: Программы |


·19.10 Выпуск OpenWrt 25.12.6 (68 +30)
  Представлен выпуск дистрибутива OpenWrt 25.12.6, развиваемого для сетевых устройств, таких как маршрутизаторы, коммутаторы и точки доступа. OpenWrt поддерживает более 2200 устройств и предлагает систему сборки, упрощающую кросс-компиляцию и создание собственных сборок. Подобные сборки позволяют формировать готовые прошивки с желаемым набором предустановленных пакетов, оптимизированные под конкретные задачи. Готовые сборки опубликованы для 41 целевой платформы.

Среди изменений:

  • Добавлена поддержка устройств:
    • ipq806x: Aruba AP-324, AP-325, Siemens Scalance W1750D.
    • mediatek: Airtel AirFiber AAP4221ZY, Zyxel EX3310-T0, Cudy WR3000U v1, Globitel BT-R320, Hiveton H5000M, Airpi H5000M, JioRouter AX6000 JIDU6J01 / JIDU6201, Livinet Li320, netis N6 V2, Teralink TL3020 (256 MB), WAVLINK WL-WNT100X3.
    • qualcommax (ipq50xx): CMCC MR3000D-CI.
    • ramips (mt7621): TP-Link ER605 v1 (TL-R605 v1).
    • ramips (mt76x8): Cudy LT500 Outdoor v1.
    • rockchip: FriendlyARM NanoPi R2S Plus.
  • Добавлены новые варианты сборок для ранее поддерживаемых устройств на чипах mediatek: Cudy M3000 v1/v2 и Cudy M3000 v2 - добавлены образы с U-Boot.
  • Внесены исправления, связанные с работой платформ:
    • ath79: GL.iNet GL-E750 (Mudi) V2.
    • bcm47xx: Gateworks Ventana, Traverse Ten64.
    • mediatek: MT7986, Cudy, JioRouter AX6000 JIDU6101, Keenetic / Netcraze, Comfast CF-WR632AX, Cudy WR3000S, ipTIME AX3000SE, ipTIME A8004T.
    • mpc85xx: Freescale P2020RDB, TP-Link TL-WDR4900 v1, Enterasys WS-AP3715i .
    • mvebu: Turris MOX.
    • qualcommax: ASUS RT-AX89X.
    • realtek: D-Link DGS-1210-28P/MP.
    • rockchip: NanoPi R3S (1 GB).
    • sunxi: NanoPi NEO 2.
  • Настройки WPA3 изменены для соответствия рекомендациям, указанным в спецификации WPA3:
    • По умолчанию отключена поддержка шифра GCMP-256 и алгоритма управления ключами SAE-EXT-KEY в режимах sae (WPA3-Personal) и sae-mixed (WPA2/WPA3).
    • При активном режиме защиты кадров (PMF / 802.11w) включён по умолчанию механизм Beacon Protection, предназначенный для защиты от активных атак на беспроводную сеть, манипулирующих изменением кадров Beacon.
    • Добавлен новый режим совместимости с WPA3-Personal - sae-compat, позволяющий клиентам WPA2 продолжать использовать сеть WPA2, но клиентов с поддержкой RSN (Robust Security Network) перебрасывающий на WPA3.
    • Добавлена опция transition_disable для запрета отката клиентов на старые режимы безопасности в сети с WPA3.
  • В пакете wifi-scripts возобновлена поддержка 802.11ad (60 GHz) и налажена работа опции multicast_to_unicast.
  • В DHCP-клиент добавлена опция "sendclientid" для переопределения идентификатора клиента DHCPv4 и DHCPv6.
  • В web-интерфейсе LuCI предложена новая опциональная тема оформления "luci-theme-footstrap". В тему "luci-mod-dashboard" добавлены интерактивные графики и возможность настройки расположения элементов. Добавлены новые приложения luci-app-librespeed и luci-app-weechat.
  • Обновлены версии ядра Linux 6.12.112 (было 6.12.94), OpenSSL 3.5.9, Mbed TLS 3.6.7, wolfSSL 5.9.4, mac80211 6.18.55, wireless-regdb 2026.09.03, nilfs-utils 2.2.17, wireguard-tools 1.0.20260223, uhttpd, rpcd, umdns, odhcp6c и iwinfo.
  • Обновлены версии curl 8.22.0, OpenSSH 10.6p1, unbound 1.26.1, BIND 9.20.29, OpenVPN 2.7.7, strongSwan 6.0.7, HAProxy 3.2.21, expat 2.8.4, nghttp2 1.70.0, libssh 0.12.2, c-ares 1.34.8, Tor 0.4.9.13, Knot DNS 3.5.7, PowerDNS 4.9.17, PowerDNS Recursor 5.2.13, Exim 4.100.1, Python 3.13.15, Node.js 22.23.2, xz 5.8.3 и rsync 3.5.1 с устранением уязвимостей.
  • Устранены удалённо эксплуатируемые уязвимости в сетевых сервисах, включённых по умолчанию:
    • uhttpd - переполнение буфера через манипуляцию с параметром в запросах "POST /ubus/call/", а также несколько DoS-уязвимостей и возможность вклинивания в чужие запросы.
    • 16 уязвимстей в Mbed TLS (используется по умолчанию в uhttpd, hostapd и wpa_supplicant), среди которых удалённое переполнение буфера, эксплуатируемое в конфигурациях (D)TLS с набором шифров ECDHE-PSK.
    • hostapd и wpa_supplicant - повреждение памяти при обработке специально оформленных управляющих кадров (атака возможна без аутентификации) в сетях WiFi 7.
    • rpcd - две уязвимости, приводящие к повышению привилегий из-за проблем при обработке символических ссылок и размещения токена привилегированного сеанса во временном каталоге.
    • cgi-io - обращение к памяти после освобождения при декодировании специально оформленных POST-запросов.
    • web-интерфейс LuCI: несколько уязвимостей, позволяющих непривилегированному пользователю выполнить код с правами root.
    • ead-client (Emergency Access Daemon client): переполнение буфера при обработке специально оформленных поддельных сообщений от сервера.
    • Несколько десятков уязвимостей в OpenSSL и wolfSSL.

    1. Главная ссылка к новости
    2. OpenNews: Обновление OpenWrt 25.12.5
    3. OpenNews: 10-гигабитный маршрутизатор Turris Omnia NG Wired, использующий OpenWRT
    4. OpenNews: Релиз OpenWrt 25.12 с заменой пакетного менеджера и системой обновления прошивки
    5. OpenNews: Опубликован инструментарий для запуска Debian на устройстве OpenWrt One
    6. OpenNews: Доступен маршрутизатор OpenWrt One, развиваемый сообществами OpenWrt и Banana Pi
Обсуждение (68 +30) | Тип: Программы |


·19.10 Релиз ядра Linux 7.3 (235 +30)
  После двух месяцев разработки Линус Торвальдс представил релиз ядра Linux 7.3. Среди наиболее заметных изменений: механизм изоляции ФС на базе псевдо-ФС failfs и системного вызова fchroot(), поддержка создания вложенных планировщиков SCHED_EXT, BPF-обработчики запуска исполняемых файлов, альтернативные потоки данных в NTFS3, оптимизации производительности FUSE, Btrfs и Ext4, поддержка Apple Time Machine в ksmbd, удаление ФС EFS и FreeVxFS, режим прямого доступа к блочным устройствам, улучшение обработки нехватки видеопамяти, отслеживание обращений к памяти гостевой системы через userfaultfd, сжатие правил AppArmor, ограничение доступа к AF_ALG, поддержка чипов Apple M3 Pro, Max и Ultra.

В новую версию принято 20260 исправлений от 3171 разработчика, из которых 807 впервые отправили свои изменения в ядро. Размер патча - 63 МБ (изменения затронули 14923 файлов, добавлено 943849 строк кода, удалено 297515 строк). В прошлом выпуске было 17833 исправлений от 2766 разработчиков, размер патча - 68 МБ. Около 44% всех представленных в 7.3 изменений связаны с драйверами устройств, примерно 12% изменений имеют отношение к обновлению кода, специфичного для аппаратных архитектур, 12% связано с сетевым стеком, 5% - с файловыми системами и 3% c внутренними подсистемами ядра.

Основные новшества в ядре 7.3 (1, 2, 3):

  • Дисковая подсистема, ввод/вывод и файловые системы
    • Проведена оптимизация производительности ФС Btrfs. Для не SSD-накопителей удалена лишняя задержка, что привело к пятикратному повышению пропускной способности для нагрузок с активным использованием функции fsync, таких как запись логов. В fsync отключено определение пустот в файлах с большим числом экстентов и без пустот, что ускорило выполнение некоторых специфичных тестов в 5 раз.

      При отслеживании некэшируемых буферов экстентов структура xarray заменена на локальный LRU-список, что привело к повышению производительности данных операций в 3 раза. Устранены провалы в производительности при использовании режима прямого ввода/вывода, вызванные регрессиями в прошлых выпусках ядра. Сокращены блокировки при упреждающем чтении экстентов, что снизило накладные расходы при обращении разных задач к перекрывающимся областям.

    • В Btrfs удалена поддержка первой версии кэша с информацией о свободном месте. ФС, созданные на старых системах, необходимо перевести на вторую версию кэша при помощи утилиты btrfstune, иначе они будут работать медленнее. Также удалена опция монтирования "usebackuproot", вместо которой следует использовать "rescue=usebackuproot".
    • В ФС Ext4 повышена производительность параллельных операций записи при прямом вводе/выводе (Direct I/O) и ускорено резервирование пустых областей через вызов fallocate(). Устранена регрессия, снижавшая производительность при буферизированной записи.
    • В ФС Ext4 режим монтирования "data=journal" переведён в разряд устаревших. Поддержку данной опции монтирования намерены прекратить в 2028 году. Опция "data=journal" включает режим полного журналирования, при котором в журнал записываются не только метаданные, но и сами данные, что обеспечивает высокую устойчивость в случае сбоев, но усложняет сопровождение кода, приводит к значительному снижению производительности по сравнению с режимами "data=ordered" и "data=writeback".
    • Удалена файловая система EFS, которая применялась в ранних версиях ОС IRIX, перестала использоваться около 30 лет назад и уже более 20 лет находится без сопровождения. Для тех кому необходим доступ разделам с EFS существуют утилиты, работающие в пользовательском пространстве.
    • Удалена файловая система FreeVxFS, реализующая формат ФС VERITAS VxFS, применявшийся в SCO UnixWare в 1990-е годы и давно не используемый на практике.
    • В механизме создания файловых систем в пространстве пользователя FUSE повышена производительность и сокращено потребление памяти при использовании системы асинхронного ввода/вывода io_uring. Ускорение достигнуто благодаря добавлению возможности передачи пулов буферов из пользовательского пространства в ядро и исключению лишней буферизации (zero-copy) при доступе FUSE-сервера к страницам памяти клиентского процесса или страничному кэшу.
    • Для блочных устройств реализован флаг RWF_DONTCACHE, похожий на режим прямого ввода/вывода (Direct I/O), который можно использовать в функциях preadv2() и pwritev2() или в запросах на чтения и запись через io_uring для доступа к блочному устройству в обход страничного кэша. Например, флаг может применяться в СУБД для низкоуровневой работы с блочными устройствами.
    • В ФС overlayfs добавлена поддержка маппинга идентификаторов пользователей, применяемом для сопоставления файлов определённого пользователя на примонтированном чужом разделе с другим пользователем в текущей системе.
    • Улучшена поддержка монтирования нескольких ФС с одного блочного устройства.
    • В драйвере ntfs3 реализована начальная поддержка альтернативных потоков данных, разделяемых через двоеточие в имени файла. Для создания нового альтернативного потока можно использовать команду "touch file:поток", чтения - "cat file:поток", удаления - "rm file:поток", вывода доступных потоков - "cat file:query_streams".
    • В новой реализации NTFS (ntfsplus) в режиме только для чтения появилась поддержка технологии прозрачного сжатия файлов с использованием оверлейных фильтров WOF (Windows Оverlay Filter).
    • В NFS-сервер добавлена поддержка операции CB_NOTIFY, позволяющей клиенту кэшировать метаданные директорий на своей стороне, получая уведомления об изменениях от сервера.
    • В ФС F2FS добавлена поддержка динамического (без отмонтирования ФС) удаления разделов из общего пула с автоматическим переносом данных на другие разделы и возвращения обратно (например, можно временно изъять накопитель для других нужд).
    • В XFS добавлена поддержка флага FALLOC_FL_WRITE_ZEROES в системном вызове fallocate(), позволяющего заполнить нулями указанный диапазон в файле, используя поддерживаемую некоторыми SSD-накопителями команду WRITE_ZERO, выполняющую обнуление без операций ввода/вывода.
  • Память и системные сервисы
    • Улучшена обработка нехватки видеопамяти. В ситуации исчерпания свободной видеопамяти ядро теперь пытается вытеснить из видеопамяти в системную память (GTT) буферы приложений, не имеющих гарантированной квоты памяти (dmem cgroup), а не сразу отказывать в выделении видеопамяти. Такой подход гарантирует выделение ресурсов приложению, которому система зарезервировала определённый объем видеопамяти, даже если память уже выделена другим приложениям. Ранее, если приложению без квот уже была выделена видеопамять, то в ситуации нехватки видеопамяти приложение с гарантированными квотами не могло получить её, и вместо видеопамяти через подсистему TTM (Translation Table Maps) приложению выделялась более медленная системная оперативная память, адресуемая из GPU (GTT). Поддержка dmem cgroup реализована для драйверов nouveau, xe и amdgpu.
    • В механизме SCHED_EXT, позволяющем использовать BPF для создания планировщиков CPU, завершена работа над возможностью создания вложенных планировщиков (sub-scheduler), при помощи которых для каждого cgroup можно задействовать собственный планировщик задач.
    • В планировщик задач внесены улучшения, связанные с обработкой cgroup и решением проблем с распределением весов, из-за которых возникали дополнительные накладные расходы и задержки. Предложено несколько методов распределения весов для cgroup - 'up', 'max', 'concur' и 'tasks', выставляемых через параметр cgroup_mode. Задействована единая очередь выполнения (runqueue) для планирования задач внутри cgroup. Сокращены задержки при планировании задач, которым выделяются короткие кванты процессорного времени, за счёт возможности при необходимости отменять, обновлять или минимизировать время выполнения задач, защищённых от вытеснения.
    • В механизме binfmt_misc (/proc/sys/fs/binfmt_misc) реализована возможность подключения BPF-обработчиков для добавления поддержки новых форматов исполняемых файлов. Изменение позволяет программно в момент каждого запуска анализировать тип исполняемого файла и выбирать для него интерпретатор или динамический загрузчик без хаков типа использования утилиты patchelf и скриптовых обвязок. Например, в BPF-программе можно определять исполняемые файлы для иных архитектур или платформ и запускать соответствующие эмуляторы или Wine, а также упростить организацию запуска исполняемых файлов в пакетах, установленных в разные каталоги в системах с пакетным менеджером Nix.
    • Продолжен перенос изменений из ветки Rust-for-Linux, связанных с использованием языка Rust в качестве второго языка для разработки драйверов и модулей ядра (поддержка Rust не активна по умолчанию, и не приводит ко включению Rust в число обязательных сборочных зависимостей к ядру). Появилась возможность использования Rust для архитектуры PowerPC. Реализованы: модуль для целочисленных преобразований без потерь, режим обфусцированного логгирования значений указателей для предотвращения утечки сведений об адресном пространстве, обвязка над функцией synchronize_rcu(), барьеры памяти, модуль interrupt для включения/отключения прерываний, типы для ввода/вывода, обвязки над fwctl, механизм SRCU (sleepable read-copy-update), обвязки над gem shmem, spinlock-блокировки SpinLockIrq, не допускающие прерывания в критических секциях.
    • Добавлен sysctl-параметр syscall_user_dispatch для управления включением режима диспетчеризации системных вызовов в пользовательском пространстве, позволяющий одному процессу перехватывать системные вызовы другого процесса (применяется в Wine для эмуляции системных вызовов Windows).
    • В BPF добавлена функция bpf_sock_read_xattr(), при помощи которой BPF-программы могут читать выставляемые пользователем расширенные атрибуты (user.*) из inode сокетов. В BPF-приложениях появилась возможность определения глобальных переменных, привязанных к CPU. В верификаторе BPF-программ предоставлена дополнительная информация о выявленных ошибках, упрощающая определение причин проблем.
    • В механизмах трассировки kprobes, uprobes и fprobes реализована поддержка приведения типов, используя данные BTF (BPF Type Format) с информацией для проверки типов в псевдокоде BPF, а также улучшено извлечение сведений о переменных.
    • В подсистему DAMON (Data Access MONitor), позволяющую отслеживать доступ процесса к данным в оперативной памяти (например, можно узнать к каким областям памяти обращался процесс, а какие области памяти остались невостребованными), добавлена возможность мониторинга изменения атрибутов данных (анонимная память, отображённые в память файлы, доступ только для чтения, отсутствие обращений к памяти и т.п.).
    • В механизме KHO (Kexec HandOver), применяемом для запуска нового ядра из старого без потери состояния системы, обеспечен учёт выделения больших страниц памяти (huge pages) во время загрузки. Подобные страницы памяти теперь маркируются и сохраняются после запуска нового ядра.
    • Низкоуровневый код системы подкачки (swap) переведён на новую низкоуровневую структуру данных swap_ops, которая упростила сопровождение кода и реализовала абстракции, необходимые для расширения функциональности в будущем.
    • Добавлены ioctl-команды ALLOCINFO_IOC_CONTENT_ID, ALLOCINFO_IOC_GET_AT и ALLOCINFO_IOC_GET_NEXT, позволяющие выборочно передавать в пространство пользователя данные профилирования выделения памяти. По сравнению с ранее доступным интерфейсом /proc/allocinfo, предложенные ioctl-вызовы позволяют до 20 раз повысить производительность запросов профилирования за счёт фильтрации лишних данных.
  • Виртуализация и безопасность
    • Предложен новый механизм изоляции, блокирующий доступ к содержимому файловых систем, за исключением ресурсов, явно переданных в sandbox-окружение через файловые дескрипторы. Механизм реализован при помощи псевдо-ФС failfs и системного вызова fchroot.

      Псевдо-ФС failfs напоминает ФС nullfs, но в отличие от последней реализует принцип "ничего не поддерживается" вместо "ничего не хранится". Подобное свойство не позволяет монтировать что-либо поверх failfs, клонировать ФС и отслеживать состояние через statmount(), listmount(), /proc/<pid>/mountinfo и /proc/filesystems. Если корневой или рабочий каталог процесса находится в failfs, то блокируются любые попытки навигации по ФС c использованием абсолютных файловых путей, символических ссылок и относительных путей, зависящих от текущего рабочего каталога. Процессу оставляется только возможность обращения к определённому каталогу по файловым дескрипторам, открытым до изоляции.

      Для перехода в новый режим изоляции добавлен системный вызов fchroot, похожий на системный вызов chroot, но работающий на уровне файловых дескрипторов. В системные вызовы fchdir добавлен флаг FD_FAILFS_ROOT для перемещения рабочего каталога процесса в ФС failfs. Аналогичный флаг доступен в системном вызове fchroot.

    • Добавлена возможность отслеживания обращений к памяти гостевой системы при помощи механизма userfaultfd, позволяющего создавать обработчики обращений к невыделенным или защищённым страницам памяти в пространстве пользователя. На практике, предложенная возможность позволяет гипервизору определять страницы памяти, к которым в виртуальной машине не было обращений, для их вытеснения в более медленную память или во внешнее хранилище. Для отслеживания нарушений выставленного запрета чтения и записи в отслеживаемой области памяти добавлен флаг UFFDIO_REGISTER_MODE_RWP, который может использоваться как более высокопроизводительный аналог применения mprotect(PROT_NONE) совместно с обработчиком сигнала, генерируемого при обращении к памяти, для которой выставлен запрет на чтение и запись (в случае userfaultfd генерируется исключение, обрабатываемое в пространстве пользователя). Изменение подготовлено при помощи AI ("Assisted-by: Claude:claude-opus-4-6").
    • Усилено разделение между потоками ядра (kthread) и init-процессом (PID 1). Ранее в потоках ядра и в PID 1 совместно использовалось общее состояния файловой системы, что позволяло через вызов pivot_root() переопределить состояние ФС для всех потоков ядра. В новой версии в PID 1 задействована полностью отдельная структура fs_struct, а потоки ядра изолированы в отдельной точке монтирования с nullfs.
    • Во встроенную криптографическую библиотеку (libcrypto) добавлена поддержка режимов шифрования AES - ECB, CBC, CBC-CTS, CTR, XCTR, XTS, GCM и CCM.
    • В системе мандатного управления доступом AppArmor реализована возможность загрузки сжатых наборов правил и добавлен режим аудита.
    • Добавлен sysctl-параметр af_alg_restrict, управляющий включением доступа к криптографическому API AF_ALG из пространства пользователя. AF_ALG позволяет задействовать аппаратные ускорители для криптографических вычислений в Crypto API ядра, но применяется в достаточно специфичных ситуациях и не всегда даёт прирост производительности по сравнению с реализацией ускорения в пространстве пользователя. При этом в связанных с AF_ALG обработчиках выявлена серия уязвимостей, таких как Copy Fail, позволяющих изменить данные в страничном кэше. Для снижения поверхности атаки по умолчанию доступ к AF_ALG частично ограничен. Рассматривается возможность удаления AF_ALG в одном из будущих выпусков.
    • Ужесточена верификация BPF-программ, заверенных цифровой подписью. Добавлена проверка целостности метаданных BPF-программы перед её загрузкой.
    • В системный вызов landlock_restrict_self(), применяемый для активации блокировок Landlock, добавлен флаг LANDLOCK_RESTRICT_SELF_NO_NEW_PRIVS, запрещающий текущему процессу получение любых новых привилегий. Механизм Landlock позволяет непривилегированным программам сбрасывать ненужные для работы привилегии, добровольно ограничивая свой дальнейший доступ к системе в целях повышения безопасности, например, для защиты в случае попыток эксплуатации уязвимостей в программе.
    • В драйвер VirtIO-GPU, обеспечивающий работу виртуального GPU, добавлена поддержка спящего режима S4 (hibernation).
  • Сетевая подсистема
    • В ksmbd, встроенный в ядро сервер для протокола SMB, добавлена поддержка расширений Apple Time Machine для хранения резервных копий, создаваемых в macOS через данное приложение. Реализован механизм изоляции последовательностей команд SMB в привязке к MessageId для блокирования атак через отправку недействительных или дублированных запросов. Добавлена поддержка отправки повторных запросов по протоколу SMB3 без нарушения состояния сеанса, если предыдущий запрос был потерян. В SMB3 реализована возможность шифрования на уровне отдельных общих хранилищ (share). Добавлена поддержка шифрования канала связи SMB Direct, использующего технологию RDMA (Remote Direct Memory Access).
    • Реализована возможность использования TCP-пакетов c расширением BIG TCP, позволяющим увеличить максимальный размер TCP-пакета до 4ГБ, в UDP-туннелях на базе протоколов VXLAN и GENEVE.
    • Добавлена поддержка проброса протокола MCTP (Management Component Transport Protocol) поверх USB (MCTP-over-USB 1.1).
    • Предоставлена возможность отключения (unregistration) сетевых устройств (netkit, veth, vxcan, bareudp, geneve, ipvlan, macvlan и т.п.) для выбранных пространств имён.
    • Для Bluetooth 6.2+ реализована поддержка механизма SCI (Shorter Connection Interval) для снижения задержек при передаче данных в режиме Bluetooth LE (Low Energy).
    • В API nl80211 добавлен унифицированный механизм (NL80211_CMD_PROBE_PEER) для проверки подключённых пиров, работающий как в беспроводных точках доступа, так и на стороне клиента.
  • Оборудование
    • Объявлены устаревшими и намечены для удаления в ядре 7.5 старые ARM-платформы, которые почти не используются и мешают сопровождению актуальных подсистем. К удалению намечено около 55 тысяч строк кода, связанного с поддержкой платформ sa1100, omap24xx, i.MX31, samv7, lpc18xx, riscpc, axxia, footbridge, старых плат pxa, orion, dove и mv78xx0, чипов без блока управления памятью (MMU) и микроконтроллеров stm32f4/f7/h7.
    • Добавлена начальная поддержка чипов Apple M3 Pro, Max и Ultra. Реализовано управление состоянием энергопотребления для SoC Apple.
    • В подсистему DRM (Direct Rendering Manager) добавлено свойство "color format", позволяющее пользователю переключить формат представления цвета для устройства вывода. Свойство реализовано для драйверов GPU i915 (HDMI, DP), amdgpu (HDMI, DP) и rockchip (HDMI). Для тестирования можно использовать команду вида "modetest -s 115:1920x1080-60@NV12 -w 115:'color format':4", в которой 115 - идентификатор коннектора, а '4' номер формата YUV420.
    • В драйвер amdgpu добавлена поддержка модификаторов DRM для GPU AMD серий GFX6-8 (Southern Islands, Sea Islands и Volcanic Islands). Реализована начальная поддержка DCN 6.0.0 (Display Core Next). Проведена чистка устаревшего кода. Включена поддержка CACP (Content Adaptive Contrast and Power), позволяющая снизить энергопотребление OLED-панелей. Для дисплейных движков на архитектуре DCN4 включена поддержка механизма IPS (Idle Power State) для снижения энергопотребления во время неактивности. Добавлена поддержка видеокарт AMD Barco.
    • В драйвере i915 переработан код для определения возможностей и восстановления состояния коннекторов DisplayPort. Для GPU Novalake (NVL) добавлена поддержка CMTG (Common mode timing generator) и DC3DO (Display C3 with Clock Off).
    • Продолжена работа над drm-драйвером (Direct Rendering Manager) Xe для GPU на базе архитектуры Intel Xe, которая используется в видеокартах Intel семейства Arc и интегрированной графике, начиная с процессоров Tiger Lake. Добавлены новые идентификаторы поддерживаемых устройств. В configfs реализован атрибут 'enable_multi_queue' для отключения одновременного использования нескольких очередей передачи команд. Улучшена поддержка перехода в спящий режим.
    • Продолжена интеграция компонентов драйвера Nova для GPU NVIDIA, оснащённых GSP-прошивками, используемыми начиная с серии NVIDIA GeForce RTX 2000 на базе микроархитектуры Turing. Драйвер написан на языке Rust. В новой версии осуществлён переход на новые образы прошивок TLV, вместо старых вариантов, используемых в драйвере Nouveau. Добавлена поддержка запуска прошивки для чипа GSP (GPU System Processor) с включением vGPU. Добавлен API для получения информации о размере видеопамяти.
    • В драйвер Tyr, написанный на языке Rust и обеспечивающий работу с GPU ARM Mali, добавлена возможность загрузки прошивок в формате Mali CSF, активации виртуальной памяти GPU и запуска MCU.
    • В драйвер msm добавлена поддержка GPU Adreno Shikra (A704) и Eliza (722).
    • Добавлена поддержка звуковых устройств и ASoC: Pioneer DJ DJM-S11, AW88399 (Lenovo Legion Pro), AW88399 (Lenovo Legion), Lisuan, ALC235, RME HDSPe AIO, RT766/RT767 SDCA, Maili, Hawi, CS35L62 (SoundWire), RT766/RT767 VA1.
    • Добавлена поддержка Steam Controller (модель 2026 года); мышей Logitech G502 X Plus и G502 X Lightspeed,; клавиатур Endorfy Thock TKL, Zenbook A16; гарнитур Nova 5X, Nova 7 и Arctis 7; игрового руля Turtle Beach VelocityOne Race; геймпада MSI Claw.
    • Улучшена поддержка звука на устройствах ASUS VivoBook M515DA/X515DAP, LG gram 16 (16Z90TR), Minisforum AI X1 Pro, HP Pavilion 15-eh2xxx, HP Laptop 15-dy0xxx и HP Spectre x360 16-aa0xxx, HP EliteBook 6 G1, HP OmniBook X Flip 14, Lenovo Yoga Pro 7, Huawei Matebook, ThinkPad X1 Carbon 6th, HP ProBook 440 G5, Acer Aspire A515-57.
    • Добавлена поддержка смартфонов, планшетов и ноутбуков: Motorola Edge 30, Motorola Moto G2, Xiaomi 12 Lite 5G, Microsoft Surface Pro, Honor MagicBook art 1412in, Sony Xperia M2, Vicharak Axon, Axon Mini и Vaaman2, Asus Zenbook A16, Lenovo Thinkedge se70.
    • Добавлена поддержка ARM-плат и SoC Samsung Exynos 1580 (используется в флагманских смартфонах с 2024 года), Orange Pi 5 pro, Sophgo SG2000 (гибрид Arm/RISC-V), BeagleBadge, Qualcomm "Shikra" и "Altera" (Cortex-A78C), Agilex72 (Cortex-A720), Alientek ATK-DLRV1126, Variscite SoC DART-MX8M-PLUS, DART-MX8M-MINI, VAR-SOM-MX8QM и платы Sonata/Symphony на их основе, 9Tripod X3568 v4, Youyeetoo YY3588, milk-v duo, ArmSoM CM5, Freescale Verdin iMX8M Mini, Anbernic rg vita-pro, Embedfire lubancat 4, Vicharak Vaaman, LincStation E1, HINLINK H28K.

Одновременно латиноамериканский Фонд свободного ПО сформировал вариант полностью свободного ядра 7.3 - Linux-libre 7.3-gnu, очищенного от элементов прошивок и драйверов, содержащих несвободные компоненты или участки кода, область применения которых ограничена производителем. В выпуске 7.3 проведена чистка от блобов новых драйверов для GPU Mali Tyr, Morse Micro mm81x wi-fi, NXP wi-fi, и сетевых карт на чипах Realtek. Обновлён код чистки в драйверах nova-core, amdgpu, adreno, tegra, iris, rtw89 и mt76 wifi, Qualcomm Q6V5 PAS, qla2xxx scsi и звуковых кодеках aw88399. Выполнена чистка имён blob-ов в dts-файлах (devicetree) для ARM-чипов Qualcomm.

  1. Главная ссылка к новости
  2. OpenNews: Релиз ядра Linux 7.2
  3. OpenNews: Релиз ядра Linux 7.1
  4. OpenNews: Релиз ядра Linux 7.0
  5. OpenNews: Релиз ядра Linux 6.19
  6. OpenNews: Релиз ядра Linux 6.18
Обсуждение (235 +30) | Тип: Программы | Интересно


·18.10 Релиз Tewi 3.0.0, текстового интерфейса для управления torrent-клиентами (45 +11)
  Состоялся выпуск Tewi 3.0.0, консольного приложения с текстовым интерфейсом (TUI) для управления BitTorrent-клиентами. Программа позволяет подключаться к демонам Transmission, qBittorrent, Deluge и rTorrent, просматривать и управлять списком торрентов, добавлять новые закачки, выполнять поиск по популярным трекерам. Поддерживаются различные режимы отображения (карточки, компактный, однострочный), просмотр детальной информации о торрентах (файлы, трекеры, пиры), управление категориями и метками, переключение альтернативных лимитов скорости. Интерфейс построен на базе библиотеки Textual. Код написан на Python и распространяется под лицензией GPLv3+.

Основные изменения с версии 2.0.0:

  • Добавлена поддержка rTorrent (0.9.7 и новее): подключение напрямую через SCGI или через XML-RPC поверх HTTP (при указании "--path"). Поддерживаются почти все возможности остальных клиентов, кроме переключения альтернативных лимитов скорости. Категории хранятся в формате ruTorrent, поэтому совместимы с ним.
  • Список торрентов переписан на Textual Line API. Отрисовываются только видимые строки, поэтому загрузка, обновление и прокрутка заметно ускорены.
  • Добавлена постраничная и полустраничная навигация по списку торрентов ("Ctrl+F"/"Ctrl+B", "Ctrl+D"/"Ctrl+U").
  • Добавлена фильтрация торрентов по имени ("F") и новые фильтры по статусу.
  • Появилась возможность добавить торрент по его хешу.
  • Добавлен множественный выбор файлов торрента для групповой смены приоритета.
  • Добавлено открытие файлов из детальной информации о торренте по нажатию "Enter".
  • Добавлено отображение общих лимитов скорости клиента (в дополнение к альтернативным).
  • В заголовок добавлен статус подключения к клиенту (показывается потеря связи с демоном).
  • Добавлен выбор тем оформления Textual: dracula, monokai, nord и др. ("T", опция "--theme", полный список: "--list-themes").
  • В файле конфигурации разрешено указание переменных окружения ("${VAR_NAME}"), например, для передачи хранимых отдельно паролей и API-ключей.
  • Реализована генерация скриптов автодополнения для bash, zsh и tcsh ("--print-completion"). В пакет PyPI включено готовое автодополнение для Bash.
  • Добавлена поддержка Prowlarr с возможностью поиска по всем индексаторам сразу или выбора отдельных ("--prowlarr-multi"). Индексаторы можно указывать в пресетах поиска.
  • Добавлена поддержка Bitmagnet, self-hosted BitTorrent-индексатора и DHT-краулера. При поиске в деталях отображаются метаданные контента (тип, название, эпизоды, разрешение, кодек и источник видео).
  • Добавлены пресеты поиска (именованные комбинации поисковых провайдеров и категорий).
  • Добавлена сортировка результатов поиска по различным атрибутам ("s").
  • Добавлен компактный режим отображения результатов поиска с минимумом столбцов ("V").
  • Обеспечено запоминание последних выбранных при поиске индексаторов и категорий ("W").

  1. Главная ссылка к новости
  2. OpenNews: Релиз Tewi 2.0.0, текстового интерфейса для управления torrent-клиентами
  3. OpenNews: Выпуск qBittorrent 5.2.0
  4. OpenNews: Выпуск libtorrent 2.1 с включением протокола WebTorrent
  5. OpenNews: Представлен ReTransmission, форк BitTorrent-клиента Transmission
  6. OpenNews: Выпуск FUSE-модуля BTFS 3.3 для монтирования torrent-файлов как ФС
Обсуждение (45 +11) | Автор: anlar | Тип: Программы |


·18.10 В ReactOS появилась возможность установки на NTFS (90 +29)
  Развиваемый проектом ReactOS драйвер файловой системы NTFS достиг уровня, позволяющего устанавливать и использовать ReactOS на разделах NTFS. Помимо этого добавлена возможность форматирования разделов в NTFS с обеспечением совместимости с Windows. Нереализованными остаются кэширование, журналирование и механизмы безопасности NTFS, что может негативно влиять на производительность и ограничивает возможности восстановления ФС после сбоев.

  1. Главная ссылка к новости
  2. OpenNews: Выпуск операционной системы ReactOS 0.4.16
  3. OpenNews: В ReactOS продемонстрирован запуск игры Half-Life 2 и реализован первый системный вызов из Windows Vista
  4. OpenNews: В ReactOS реализованы единый BootCD, графический установщик и экспериментальная поддержка ARM64
  5. OpenNews: В ReactOS обеспечена совместимость с проприетарными видеодрайверами
  6. OpenNews: Loss32 - Windows-подобная система, похожая на ReactOS, но на ядре Linux
Обсуждение (90 +29) | Автор: Мемоним | Тип: К сведению |


·18.10 В Gentoo намерены прекратить поставку Chromium из-за трудности сопровождения (377 +59)
  Сопровождающий пакет (ebuild) Chromium в Gentoo Linux объявил о скором удалении пакета из репозитория из-за слишком больших трудозатрат на сопровождение. Упоминается, что сопровождающий не имеет возможности продолжать поддерживать пакет на должном уровне после сокращения цикла публикации релизов Chrome. Если в ближайшие дни не найдётся доброволец, готовый взять на себя сопровождение Chromium в Gentoo, то 24 октября пакет www-client/chromium перестанет быть доступен для установки.

Новые корректирующие версии Chromium последнее время появляются каждую неделю и содержат исправление сотен уязвимостей. Помимо участившихся релизов, сопровождение усложняют изменения в инструментарии upstream-проектов и конфликты, связанные, с одной стороны, со стремлением предоставить пользователям должное качество, избегая по-возможности встраивания зависимостей в пакет, и, с другой стороны, с необходимостью оперативной публикации обновлений с исправлением уязвимостей. Компиляция Chromium занимает 15-16 часов на ноутбуке и около 6 часов на мощном ПК, при том, что перед публикацией пакета требуется проверить все варианты сборки с разным USE-флагами.

Chromium использует большое число встроенных зависимостей (например, ffmpeg, harfbuzz, zstd), но особенно усложнило сопровождение добавление в зависимости Rust и Go. В случае с Rust проблемы связаны с использованием экспериментальных возможностей, совместимость с которыми может нарушаться с новых релизах, а Go с тем, что инструментарий требует доступа к сети, который запрещён для сборочных окружений правилами Gentoo. Помимо этого, отмечены сбои в системе непрерывной интеграции Google, которые временами приводят к публикации неполных архивов с кодом.

По мнению сопровождающего, для качественной поддержки пакета требуется команда как минимум из трёх человек со знаниями языков C, C++, Go, JavaScript и Rust, а также знакомых со специфичными инструментариями Google. У одного сопровождающего на поддержание Chromium уходит более 6 часов в неделю, т.е. почти целый рабочий день из своего свободного времени, и это не считая ситуаций, в которых приходится диагностировать и исправлять ошибки, а также приводить состояние сборки к соответствию требованиям Gentoo.

Последней каплей, после которой сопровождающий решил прекратить поддержание пакета, стало обесценивание его труда при обсуждении слишком медленной публикации обновлений Chromium в Gentoo (в Gentoo сейчас поставляется версия 151 при актуальном выпуске 155). Один из участников дискуссии предложил использовать готовый ebuild-сценарий из стороннего репозитория Bentoo, поддержание которого автоматизировано. Сопровождающий пояснил, что простое копирование недопустимо без аудита изменений и полного тестирования всех вариантов сборки с разными USE-флагами, иначе невозможно гарантировать работоспособность пакета у всех пользователей. На что получил ответ, что всё это чушь (ridiculous).

В случае удаления пакета www-client/chromium, пользователи могут переключится на использование пакета www-client/google-chrome, в котором упакованы поставляемые Google бинарные сборки Chrome, или использовать сторонние сборки Chromium в формате Flatpak.

  1. Главная ссылка к новости
  2. OpenNews: Лицензионные проблемы с поставкой файлов Gentoo в репозиториях ChromiumOS и CoreOS
  3. OpenNews: Gentoo начал формирование бинарных пакетов для архитектуры x86-64-v3
  4. OpenNews: Chromium будет удалён из репозиториев openSUSE, если не найдётся новый сопровождающий
  5. OpenNews: Прекращена разработка Funtoo Linux, развивавшегося создателем Gentoo
  6. OpenNews: Arch Linux, Fedora, Debian, Slackware и openSUSE могут отказаться от поставки Chromium
Обсуждение (377 +59) | Тип: Тема для размышления |


·17.10 Исследователи из Anthropic воссоздали формирование seed-параметров стандартных эллиптических кривых ECDSA (140 +40)
  Группа исследователей из компании Anthropic объявила об успешном определении происхождения исходных seed-параметров, задающих форму эллиптических кривых ECDSA P-192, P-224, P-256, P-384 и P-521, стандартизированных Национальным институтом стандартов и технологий США (NIST). Воссозданный алгоритм генерации seed-параметров подтверждает надёжность ECDSA и опровергает популярную конспирологическую теорию о том, что исходные параметры для стандартизированных эллиптических кривых, изначально разработанных в АНБ, были специально подобраны для оставления слабых мест, компрометирующих алгоритмы цифровой подписи ECDSA.

Появлению подобной теории заговора способствовала непрозрачность процесса выбора seed-параметров на фоне выявление потенциального бэкдора в генераторе псевдослучайных чисел Dual_EC_DRBG, входившем в стандарт NIST. Информация о том, как были сгенерированы параметры для инициализации стандартизированных в NIST эллиптических кривых, не раскрывалась. Предполагалось, что параметры были созданы в 1997 году на основе хэшей от фраз, экспромтом придуманных Джерри Солинасом (Jerry Solinas), но затем забытых.

В ходе проведённого в Anthropic исследования AI-модель Claude определила, что seed-параметры были созданы с использованием псевдослучайных чисел, полученных при помощи входящей в стандартную Си-библиотеку функции lrand48, инициализированной значениями текущего эпохального времени. Наводкой на возможность использования случайных чисел, полученных через функцию lrand48, послужили характерные для её использования шаблоны, такие как возврат только 31 старшего бита из 48-битного внутреннего состояния генератора псевдослучайных чисел.

Для восстановления состояния генератора псевдослучайных чисел был применён алгоритм редукции базиса, после чего с имеющимися seed-параметрами перебором сопоставлялись SHA-1 хэши от получаемых через lrand48 наборов чисел необходимой длины. Попытки повторялись c переинициализацией генератора через функцию srand48() для моментов времени в 1997-1998 годах, в которых происходила разработка ECDSA. При этом оказалось, что не все подходящие для надёжных эллиптических кривых значения принимались создателями ECDSA, некоторые значения пропускались, но подобные единичные пропуски трактуются не как злонамеренные действия, а как отсутствие точных сведений о критериях выбора.

Для шести вариантов эллиптических кривых ECDSA также удалось определить происхождение базовых точек, которые оказались сгенерированы с помощью генератора псевдослучайных чисел из библиотеки FreeLIP с использованием простых значений инициализации, таких как 20000 для P-192 и 20420 для prime239v1.

За определение происхождения seed-параметров исследователям из Anthropic присуждена учреждённая три года назад премия в $36864, которую команда исследователей пожертвовала некоммерческой организации ISRG, развивающей проект Let’s Encrypt. Учредивший премию криптограф Филиппо Валсорда (Filippo Valsorda) заявил, что теперь лично ставит кривые ECDSA выше Curve25519, Ed25519 и X25519, и будет рекомендовать их в первую очередь.

  1. Главная ссылка к новости
  2. OpenNews: Представлена техника атаки для определения ключей ECDSA и DSA
  3. OpenNews: Новая техника атаки по сторонним каналам, позволяющая восстановить ключи ECDSA
  4. OpenNews: Уязвимость в реализациях постквантового алгоритма шифрования Kyber
  5. OpenNews: Дэниэл Бернштейн подал в суд из-за утаивания NIST информации о постквантовых криптоалгоритмах
  6. OpenNews: Опубликован прототип бэкдора в генераторе псевдослучайных чисел Dual_EC_DRBG, входившем в стандарт NIST
Обсуждение (140 +40) | Тип: К сведению | Интересно


·17.10 Новые версии Wine 11.20 и Wine-staging 11.20 (24 +15)
  Опубликован экспериментальный выпуск открытой реализации Win32 API - Wine 11.20. С момента выпуска 11.19 был закрыто 24 отчёта об ошибках и внесено 341 изменение.

Наиболее важные изменения:

  • Для архитектуры ARM64EC (ARM64 Emulation Compatible) реализована поддержка отладочного режима "WINEDEBUG=+relay", позволяющего отслеживать аргументы и возвращаемые значения вызываемых функций. Архитектура ARM64EC применяется для упрощения портирования на системы ARM64 приложений, изначально написанных для систем x86_64, и позволяет выполнять в окружении ARM64 отдельные модули с кодом x86_64 при помощи эмулятора.
  • Улучшена проверка данных в формате XML.
  • Реализация поддержки CDROM перемещена из ntdll в Mount Manager.
  • Закрыты отчёты об ошибках, связанные с работой приложений: MS Office 2013, Unigine Heaven 2.0, Toad for SQL Server 5.7, Intuit QuickBooks 2008-2010, QuickBooks SS 2008 R1, SumatraPDF 3.1.2, Microsoft Core XML Services 6.0, Neko Project 21, FL Studio, cmd.exe, Medicalc4, UE4 ElectraPlayer, MusicBee, OneDrive.
  • Закрыты отчёты об ошибках, связанные с работой игр: Star Wolves 3, UFO: Aftershock, UFO: Afterlight, Pure Pinball, Imperium Great Battles of Rome, Incoming, Battlefield 1942.

Параллельно сформирован выпуск проекта Wine Staging 11.20, предоставляющего расширенные сборки Wine, включающие не полностью готовые или рискованные патчи, пока непригодные для принятия в основную ветку Wine. По сравнению с Wine в Wine Staging предоставляется 279 дополнительных патчей. В новом выпуске Wine Staging осуществлена синхронизация с кодовой базой Wine 11.20 и обновлён код vkd3d. В основной состав Wine перенесены патчи, улучшающие в wininet обработку некорректных параметров в APPINFO_QueryOption и HTTPREQ_QueryOption.

  1. Главная ссылка к новости
  2. OpenNews: Новые версии Wine 11.19, Wine-staging 11.19 и D7VK 2.3
  3. OpenNews: Стабильный релиз Wine 11.0
  4. OpenNews: Стабильный релиз Proton 11.0, пакета для запуска Windows-игр в Linux
Обсуждение (24 +15) | Тип: Программы |


·17.10 ESP-KVM 0.65.0 и прошивка, превращающая планшет M5Stack Tab5 в экран для IP-KVM (32 +12)
  Выпущена новая версия ESP-KVM 0.65.0, открытой прошивки, превращающей плату на микроконтроллере ESP32-P4 в IP-KVM с доступом к экрану, клавиатуре и мыши удалённого компьютера через браузер. Устройство подключается перед HDMI целевой машины и прикидывается для неё USB-клавиатурой и мышью, а картинку и управление отдаёт в браузер. На целевую машину ничего ставить не надо, работает хоть в BIOS. Код написан на языке Си и распространяется под лицензией Apache 2.0.

Одновременно опубликован отдельный экспериментальный проект - ESP-KVM terminal, развивающий прошивку для планшета M5Stack Tab5, в котором используется тот же SoC ESP32-P4, что и в KVM. Терминал подключается к ESP-KVM по сети как обычный зритель, только вместо вкладки браузера у него пятидюймовый экран 1280x720.

Кадры MJPEG разжимает аппаратный декодер JPEG, а блок PPA масштабирует их и поворачивает сразу в буфер дисплея. Выходит до 20 кадров в секунду, если KVM успевает отдавать их по WiFi. В ESP32-P4 нет аппаратного декодера H.264, поэтому на KVM нужно включить MJPEG. KVM в сети терминал находит сам. Для управления указателем используется сенсорный экран, а вводить текст можно на клавиатуре для Tab5 или на обычной USB-клавиатуре.

Выпуск ESP-KVM 0.65.0 почти целиком сосредоточен оптимизации работы через медленные каналы. По WiFi устройство слало кадры быстрее, чем Tab5 успевал их принимать. Очередь росла, и экран отставал на пару секунд. Теперь устройство отображения подтверждает каждый кадр, а отправляющее устройство держит в пути не больше двух кадров. Без подобной синхронизации Tab5 в той же сети показывал около 3 кадров в секунду, а с подтверждениями - 8-9. ESP-KVM сначала сообщает, что понимает подтверждения, и только тогда клиент их шлёт.

Через Tailscale видео шло ещё медленнее: 1-3 кадра в секунду между двумя ESP32-P4 в одной сети WiFi. Весь туннель идёт через один UDP-сокет, а его очередь приёма вмещала 6 пакетов, когда пачка видео - около 45. Отправка, которую обрывал таймаут, оставляла в соединении половину кадра WebSocket, и зритель терял разметку потока. Алгоритм Нейгла придерживал каждое короткое сообщение на 200-450 мс, из-за чего пинг между терминалом и KVM после TCP_NODELAY упал с 440 до 15 мс. После перезапуска одной стороны узлы не могли снова договориться, потому что новая попытка рукопожатия затирала предыдущую раньше, чем на неё приходил ответ. При каждом переходе между прямым путём и ретранслятором DERP рукопожатие начиналось заново, примерно раз в 15 секунд, хотя ключам сессии путь безразличен. После правок получилось 11-14 fps при 720p, почти как в локальной сети.

Коротко об изменениях в ESP-KVM после прошлой новости о выпуске ESP-KVM 0.51.0:

  • 0.52-0.54: Прошивка заработала на M5Stack Unit PoE-P4 с модулем Add-on Display In на мосте LT6911D: питание по PoE, паять ничего не нужно. В консоли появилась экранная клавиатура, заработали карты microSD с exFAT и разметкой GPT. Alt+Tab и клавиша Windows теперь уходят на целевую машину, а не в браузер.
  • 0.55: Виртуальный CD-ROM отвечает на команды настоящего привода (READ TOC, GET CONFIGURATION и другие). UEFI и Linux грузились и без них, но Windows и macOS спрашивают их первыми. С карты exFAT работают образы больше 4 ГБ, так что влезает полный установщик на DVD.
  • 0.56-0.57: Обрывы по WiFi шли из-за того, что сопроцессору не хватало внутренней памяти P4 под буферы. Добавились вход с кодом TOTP и часы DS3231. Уведомления ждут, пока появится сеть. Обновления устройство проверяет, только если пользователь разрешил.
  • 0.58-0.59: На платах с TC358743 работает HDMI-CEC: кнопки пульта, ожидание, пробуждение. Steam Deck, правда, просыпаться по CEC отказывается - SteamOS эту команду игнорирует. Устройство умеет притворяться геймпадом для Switch и Xbox 360 и переходит с Ethernet на WiFi, если выдернуть кабель.
  • 0.60: Последовательная консоль целевой машины открывается в браузере - для NAS, роутеров и серверов без экрана. Журналы ядра можно слать на устройство по сети (netconsole, syslog), при панике оно пришлёт уведомление. Образ по ссылке устройство скачивает прямо на карту, netboot.xyz - в один клик.
  • 0.61-0.62: Добавлены модули M5Stack Unit OLED, Unit Glass2, Unit RTC и кнопка на корпусе. Сессии переживают перезагрузку. Задержка H.264 в браузере упала на 170 мс. B-кадров кодировщик не пишет, но в потоке об этом не говорилось, и декодер Chrome придерживал около четырёх кадров. Нажатия доходят до цели до 64 мс быстрее. Стеки задач занимали 220 КБ внутренней памяти и в основном пустовали, после их урезания свободной памяти стало вдвое больше.
  • 0.63: Устройство теперь может получать сертификат Let's Encrypt для своего имени в tailnet. Запись DNS публикует сервер управления Tailscale, поэтому не нужны ни домен, ни токен DNS, ни открытый порт. Все операции с протоколом ACME выполняются на самом P4.
  • 0.64: Режим геймпада оригинального Xbox (XID).

Прошивка собирается для 15 плат на ESP32-P4. Чтобы было проще выбрать, на сайте появилось сравнение плат ESP32-P4 для IP-KVM: ревизия чипа, память, размер платы в масштабе, Ethernet, PoE и Wi-Fi, подходящий адаптер HDMI и замеренная частота кадров. Отдельно есть сравнение плат захвата HDMI - мост, шлейфы, проход HDMI на монитор, CEC и звук.

  1. Главная ссылка к новости
  2. OpenNews: Выпуск ESP-KVM 0.51.0, открытой прошивки IP-KVM , с записью экрана на microSD
  3. OpenNews: Выпуск ESP-KVM 0.45.0, открытой прошивки IP-KVM на базе ESP32-P4
Обсуждение (32 +12) | Автор: Dexif | Тип: Программы |


Следующая страница (раньше) >>



XSQUARE
Inferno Solutions
Hosting by Hoster.ru
Хоcтинг: