Release van het hulpprogramma cURL 8.0

Het hulpprogramma voor het ontvangen en verzenden van gegevens via het netwerk, curl, is 25 jaar oud. Ter ere van dit evenement is een nieuwe belangrijke cURL 8.0-vestiging opgericht. De eerste release van de vorige tak van curl 7.x werd gevormd in 2000 en sindsdien is de codebasis toegenomen van 17 naar 155 duizend regels code, het aantal opdrachtregelopties is verhoogd naar 249, ondersteuning voor 28 netwerkprotocollen Er zijn 13 cryptografische bibliotheken, 3 SSH-bibliotheken geïmplementeerd en 3 HTTP/3-bibliotheken. De projectcode wordt gedistribueerd onder de Curl-licentie (een variant van de MIT-licentie).

Voor HTTP/HTTPS biedt het hulpprogramma de mogelijkheid om op flexibele wijze een netwerkverzoek te vormen met parameters zoals Cookie, user_agent, referer en andere headers. Naast HTTPS, HTTP/1.x, HTTP/2.0 en HTTP/3 ondersteunt het hulpprogramma het verzenden van verzoeken via SMTP, IMAP, POP3, SSH, Telnet, FTP, SFTP, SMB, LDAP, RTSP, RTMP en andere netwerkprotocollen . Tegelijkertijd wordt de libcurl-bibliotheek ontwikkeld, die een API biedt voor het gebruik van alle curl-functies in programma's in talen als C, Perl, PHP, Python.

De nieuwe release van cURL 8.0 bevat geen grote innovaties of interoperabiliteitsbrekende API- en ABI-wijzigingen. De nummeringswijziging is het gevolg van de wens om de 25e verjaardag van het project te vieren en eindelijk het tweede cijfer van de versie, dat zich al meer dan 22 jaar aan het verzamelen is, opnieuw in te stellen.

De nieuwe versie elimineert 6 kwetsbaarheden in de TELNET-, FTP-, SFTP-, GSS-, SSH- en HSTS-streamhandlers, waarvan er 5 als klein zijn gemarkeerd, en één een gematigd gevaarsniveau heeft (CVE-2023-27535, de mogelijkheid om een eerder gemaakte FTP-verbinding met andere parameters, ook als de gebruikersreferenties niet overeenkomen). Van de veranderingen die geen verband houden met het elimineren van kwetsbaarheden en fouten, is de enige opmerking de stopzetting van de ondersteuning voor het bouwen op systemen die niet over werkende 64-bits datatypen beschikken (voor bouwen is nu de aanwezigheid van het “long long”-type vereist).

Kort na de release van 8.0.0 werd versie 8.0.1 uitgebracht met een oplossing voor een veel gevonden bug die in sommige testscenario's tot crashes leidde.

Bron: opennet.ru

Voeg een reactie