Nástroj pro stahování a odesílání dat přes síť curl oslavil 25 let. K této příležitosti byla vytvořena nová významná větev cURL 8.0. První vydání předchozí větve curl 7.x bylo vydáno v roce 2000, a od té doby se kódová základna zvýšila z 17 na 155 tisíc řádků kódu, počet možností příkazového řádku byl zvýšen na 249, byla implementována podpora 28 síťových protokolů, 13 kryptografických knihoven, 3 SSH knihoven a 3 knihoven HTTP/3. Kód projektu je distribuován pod licencí Curl (varianta licencí MIT).
Pro HTTP/HTTPS nástroj poskytuje možnost flexibilního vytváření síťového požadavku s nastavením takových parametrů, jako jsou Cookie, user_agent, referer a jakékoliv další hlavičky. Kromě HTTPS, HTTP/1.x, HTTP/2.0 a HTTP/3 nástroj podporuje odesílání požadavků pomocí SMTP, IMAP, POP3, SSH, Telnet, FTP, SFTP, SMB, LDAP, RTSP, RTMP a dalších síťových protokolů. Současně se vyvíjí knihovna libcurl, která poskytuje API pro využití všech funkcí curl v programech napsaných v jazycích, jako jsou C, Perl, PHP, Python.
Nová verze cURL 8.0 neobsahuje žádné zásadní novinky nebo nekompatibilní změny API a ABI. Změna číslování je vyvolána přáním oslavit 25. výročí projektu a konečně snížit druhou číslici verze, která se hromadila již více než 22 let.
V nové verzi bylo odstraněno 6 zranitelností v zpracovatelích protokolů TELNET, FTP, SFTP, GSS, SSH, HSTS, z nichž 5 je označeno jako nepatrné a jedna má střední úroveň nebezpečí (CVE-2023-27535, možnost opětovného využití dříve vytvořeného FTP spojení s jinými parametry, včetně nesouladu uživatelských údajů). Mezi změnami, které se netýkají odstranění zranitelností a chyb, byla zaznamenána pouze ukončení podpory pro sestavení na systémech, pro které chybí funkční 64-bitové datové typy (pro sestavení je nyní vyžadována přítomnost typu „long long“).
Krátce po vydání 8.0.0 byla uvolněna verze 8.0.1 s opravou nedávno nalezené chyby, která vedla k havárii v některých testovacích scénářích.
Zdroj: opennet.ru
