Выпуск утилиты curl 7.75.0 с экспериментальным HTTP-бэкендом на языке Rust

4 февраля 2021 года

Доступна новая версия утилиты для получения и отправки данных по сети - curl 7.75.0, предоставляющей возможность гибкого формирования запроса с заданием таких параметров, как cookie, user_agent, referer и любых других заголовков. cURL поддерживает HTTP, HTTPS, HTTP/2.0, HTTP/3, SMTP, IMAP, POP3, SSH, Telnet, FTP, LDAP, RTSP, RTMP и другие сетевые протоколы. Одновременно вышло обновление параллельно развиваемой библиотеки libcurl, предоставляющей API для задействования всех функций curl в программах на таких языках, как Си, Perl, PHP, Python.

Выпуск примечателен появлением возможности замены бэкендов для обработки протокола HTTP в curl и libcurl. В качестве опции в состав включён первый альтернативный HTTP-бэкенд Hyper, реализованный на языке Rust. Бэкенд построен с использованием одноимённой библиотеки c реализацией протоколов HTTP/1 и HTTP/2, и позиционируется как более защищённый за счёт применения технологий безопасной работы с памятью. Работа выполнена при поддержке организации ISRG, стоящей за проектом Let’s Encrypt, которая на днях выступила с инициативой реализации на языке Rust модуля mod_tls для http-сервера Apache.

Другие изменения:

  • Добавлена опция "--create-file-mode [mode]", позволяющая задать права доступа для файлов, сохраняемых на удалённом сервере (для протоколов, поддерживающих подобное сохранение).
  • В опции "--write-out" применяемой для настройки вывода информации о ходе передачи данных, добавлена поддержка новых переменных: onerror для определения сообщения при ошибке, url для подстановки url, exitcode для подстановки кода ошибки, errormsg для подстановки сообщения об ошибке, stderr для отправки в stderr и т.п. Например:

curl -w '%{onerror}%{url} got %{exitcode}\n' $URL

  • Расширен синтаксис параметра CURLOPT_RESOLVE, в котором теперь допускается добавление временных записей.
  • Добавлена поддержка "gophers://", защищённого варианта протокола Gopher, работающего поверх TLS.
  • Добавлена поддержка AWS HTTP v4 Signature.

Источники

править


 
 
Creative Commons
Эта статья содержит материалы из статьи «Выпуск утилиты curl 7.75.0 с экспериментальным HTTP-бэкендом на языке Rust», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.