Veröffentlichung der GNU-Bibliothek libmicrohttpd 0.9.77

Das GNU-Projekt hat die Version 0.9.77 der libmicrohttpd-Bibliothek veröffentlicht, die eine einfache API zur Integration von HTTP-Serverfunktionen in Anwendungen bietet. Unterstützte Plattformen sind: GNU/Linux, FreeBSD, OpenBSD, NetBSD, Solaris, Android, macOS, Win32 und z/OS. Die Bibliothek wird unter der LGPL 2.1+ Lizenz verteilt und nimmt im kompilierten Zustand etwa 32 KB ein.

Die Bibliothek unterstützt das HTTP 1.1 Protokoll, TLS, inkrementelle Verarbeitung von POST-Anfragen, Basic- und Digest-Authentifizierung, IPv6, SHOUTcast, verschiedene Methoden der Verbindungs-Multiplexierung (select, poll, epoll) und Multithreading-Modelle (zum Beispiel kann ein Thread-Pool oder ein Thread pro Verbindung verwendet werden). Um die mit dem Kontextwechsel zwischen Kernel und Benutzerspace verbundenen Overheads zu reduzieren, wurde die Anzahl der Systemaufrufe während des Betriebs auf ein Minimum reduziert.

Die auffälligsten Änderungen:

  • Im API wird eine neue Funktion MHD_get_version_bin() angeboten, um Versionsinformationen der Bibliothek im gepackten Format (zum Beispiel 0x00097701) zu erhalten.
  • Die im RFC empfohlene Form enthält die Bezeichner der Algorithmen, die für die Digest-Authentifizierung verwendet werden („MD5“ / „SHA-256“ anstelle von „md5“ / „sha-256“).
  • Der Dekodierungscode für Base64-Blöcke wurde neu geschrieben, und die Eingabewertprüfung für das Base64-Format wurde verstärkt.
  • Die Konfiguration für die Cross-Compilation wurde verbessert, die Kompatibilität mit POSIX und neuen Compiler-Versionen erhöht.
  • Interne Tests zur Überprüfung der Base64-Dekodierung, der Basic Auth und der komprimierten langen HTTP-Header wurden hinzugefügt.
  • In den Tests wurde die aktualisierte API der libcurl-Bibliothek verwendet, um Warnmeldungen über die Nutzung veralteter Aufrufe zu verbergen.
  • Die Nutzung von VC (Visual C) Compilern beim Erstellen für ARM- und ARM64-Systeme wurde hinzugefügt.
  • Alle negativen Werte, die durch Callback-Aufrufe zurückgegeben werden, werden jetzt als Fehler behandelt (früher konnten negative Werte, mit Ausnahme vorgegebener Fehlercodes, zu unbestimmtem Verhalten führen).
  • Die Verarbeitung des Präprozessor-Makros „DEBUG“ wurde hinzugefügt (der Handler ist identisch mit dem Makro „_DEBUG“).
  • Gesammelte Fehler wurden behoben.

Quelle: opennet.ru

Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server 🔥 Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server | ProHoster