llhttp
ZLib
llhttp | ZLib | |
---|---|---|
7 | 49 | |
1,586 | 5,293 | |
0.6% | - | |
8.7 | 8.8 | |
5 days ago | 8 days ago | |
TypeScript | C | |
GNU General Public License v3.0 or later | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
llhttp
-
Notes: Advanced Node.js Concepts by Stephen Grider
In the source code of the Node.js opensource project, lib folder contains JavaScript code, mostly wrappers over C++ and function definitions. On the contrary, src folder contains C++ implementations of the functions, which pulls dependencies from the V8 project, the libuv project, the zlib project, the llhttp project, and many more - which are all placed at the deps folder.
-
Rest server for embedded system
Some useful libraries include nghttp2 for HTTP/2 and llhttp for HTTP/1.1. Both are network stack and TLS implementation agnostic.
-
Does nodejs intercept http request natively or does it use something to understand http request like wsgi in python ?
There is a HTTP parser directly bundled in node (https://github.com/nodejs/llhttp)
-
Fetch API has landed into Node.js
Those wasm blobs are Node's own llhttp https://github.com/nodejs/llhttp in wasm to speed up HTTP parsing.
The question is totally legitimate but please assume core doesn't make "load random binary" level kind of goofs :)
-
Book recommendations for Backend development concepts for a beginner
For HTTP, you have to look at HTTP parser. For example, https://github.com/nodejs/llhttp is used in NodeJS.
-
The history and reasons behind CORS, and how to use it
Whoa, I didn't know that! But yeah, it seems like https://github.com/nodejs/http-parser is based on nginx. It now uses https://github.com/nodejs/llhttp but has some of the same legacy.
On the other hand, deno's HTTP stuff is built on top of Hyper, a Rust library https://github.com/hyperium/hyper
-
Show HN: Micro HTTP server in 22 lines of C
No, parsing HTTP/1.x is a nightmare and definitely not simple. It wasn't even particularly well defined until 2014 when the original RFCs were modernized, and even now there are bugs reported in HTTP parsers all the time.
Node.js came out in 2009, a full ten years after HTTP/1.1 (RFC 2068) and it's original http-parser is full-on spaghetti code, doesn't conform to the RFCs for performance reasons, and is considered unmaintainable by the author of it's replacement[0]
[0] https://github.com/nodejs/llhttp
ZLib
- Zlib 1.3.1 Out
-
Vulnerability found after scanning debian 12 bookworm VM
A fix has been checked into the upstream git repo: https://github.com/madler/zlib/pull/843 but a release has not yet been made including it.
-
ZLib VS jdeflate - a user suggested alternative
2 projects | 25 Nov 2023
-
CVE-2023-4863: Heap buffer overflow in WebP (Chrome)
So the real issue here is that the lack of tree validation before the tree construction, I believe. I'm surprised that this check was not yet implemented (I actually checked libwebp to make sure that I was missing one). Given this blind spot, an automated test based on the domain knowledge is likely useless to catch this bug.
[1] https://github.com/madler/zlib/blob/master/examples/enough.c
-
Notes: Advanced Node.js Concepts by Stephen Grider
In the source code of the Node.js opensource project, lib folder contains JavaScript code, mostly wrappers over C++ and function definitions. On the contrary, src folder contains C++ implementations of the functions, which pulls dependencies from the V8 project, the libuv project, the zlib project, the llhttp project, and many more - which are all placed at the deps folder.
- Zlib 1.3 · madler/zlib 09155ea
- Zlib 1.3 – A Spiffy yet Delicately Unobtrusive Compression Library
- Exploring the Internals of Linux v0.01
-
Dear Pirates Donate as much as you can
Seeing the text in red got me thinking for a moment, "wow, didn't realize pirates had such love for an open-source compression library"
-
Updated packages: do Arch devs update/build the original source as is or...
cd "${srcdir}/zlib-$pkgver/contrib/minizip" make install DESTDIR="${pkgdir}" install -D -m644 "${srcdir}/zlib-$pkgver/LICENSE" "${pkgdir}/usr/share/licenses/minizip/LICENSE" # https://github.com/madler/zlib/pull/229 rm "${pkgdir}/usr/include/minizip/crypt.h"
What are some alternatives?
HTTP Parser - http request/response parser for c
zstd - Zstandard - Fast real-time compression algorithm
http-proxy - A full-featured http proxy for node.js
LZ4 - Extremely Fast Compression algorithm
ioccc - My IOCCC submissions and practice.
Snappy - A fast compressor/decompressor
ultra - An ultra-small, ultra-fast, web server.
LZMA - (Unofficial) Git mirror of LZMA SDK releases
µWebSockets - Simple, secure & standards compliant web server for the most demanding of applications
Onion - C library to create simple HTTP servers and Web Applications.
fetch - Fetch Standard
Minizip-ng - Fork of the popular zip manipulation library found in the zlib distribution.