Опубликован релиз rsync 3.5.1, очередная версия широко используемой утилиты синхронизации и передачи файлов с открытым кодом. Он вышел чуть больше месяца спустя после крупного релиза 3.5.
Одна из основных областей, которых касается rsync 3.5.1, связана с обработкой путей. Явно указанные пути отправителя снова могут проходить через родительские каталоги, являющиеся симлинками, и при этом защита для путей, обнаруженных во время рекурсивного сканирования, не ослабляется.
Пути, переданные через --files-from при локальных пересылках и пересылках через remote shell, теперь корректно трактуются как пути, явно заданные оператором, а не как пути внутри корня передачи.
Кроме того, в релизе исправлен доступ к /dev/stdin, /dev/stdout, /dev/stderr и /dev/fd/N, когда они указывают на каналы или файловые дескрипторы внутри пользовательских пространств имён. Это возвращает работоспособность сценариям вроде чтения пакетных данных через FIFO или подстановку процесса, которые пострадали из-за регрессий в предыдущей версии.
Ещё одно исправление касается опции --max-alloc=0. Она снова означает, что rsync должен использовать максимальный потолок выделения памяти парсера, а не полностью отключать ограничение на выделение.
Другие исправления в rsync 3.5.1:
-
Исправлена обработка путей с ограниченным корнем в
rrsync. -
Улучшено определение соединений inetd, когда демон получает локальный сокет через стандартный ввод.
-
Добавлена поддержка
--contimeoutпри подключении к демону rsync через--rsh, при этом обычные пересылки через remote shell не затрагиваются. -
Более строгая проверка состояния частичных каталогов и путей альтернативного назначения.
-
Предотвращено следование по симлинку конечного элемента в альтернативном назначении, когда он используется как базовый файл.
-
Исправлены неопределённые сдвиги во встроенном коде zlib.
-
Исправлена проблема сборки на FreeBSD amd64, связанная с объектами ассемблера и SIMD.
Что касается протокола, rsync 3.5.1 поднимает его номер до 33. Это включает новую статистику в --stats, которая показывает, сколько отдельных логических блоков файла размером 4 КиБ затронул приёмник.
Также появилась поддержка интернационализированных доменных имён, если rsync собран с нужной библиотекой. Это позволяет напрямую работать с именами хостов, содержащими символы вне ASCII.
Подробнее в примечаниях к выпуску.





Пока нет комментариев. Будьте первым!