Hello Alex,

Unfortunately, the code was not portable initially. Also, the code have a number of other problems. For example, let's take the very first function MHD_websocket_check_http_version(). It would accept "HTTP/1.1" (which is nice), but also would work with "HTTP/1.01", "HTTP/0001.0001", "HTTP/2.2", while it is incorrect.

We may continue this conversion off-list if you (or David) would like to discuss it.

--
Best,
Evgeny

On 22/10/2025 14:53, Alexander Dahl wrote:
Hello Evgeny,

Am Fri, Oct 17, 2025 at 07:45:17PM +0200 schrieb Evgeny Grin via libmicrohttpd:
Hi Alex,

The whole WebSockets implementation was contributed by an MHD user. It was
merged mostly “as is”, in the hope that the code would eventually be
improved when someone found it useful.
However, for several years no one has contributed to or improved the WS
code, and the whole WS implementation has become unmaintained.
We had to remove the unmaintained code, as it could become problematic.

In what ways could it become problematic?  Is it problematic already?

If anyone wishes to address the known problems with the code, please contact
us. We can merge the WS implementation back as soon as it is fixed.

What are the known problems?  Can you point us?

(I searched my mailinglist archive which goes back to January 2022 for
this list, and the bugtracker, and the removed parts in VCS, but found
no hints.)

Greets
Alex


--
Best,
Evgeny

On 17/10/2025 16:17, Alexander Dahl via libmicrohttpd wrote:
Hello,

when evaluating the possibilites for implementing websockets in C/C++
I stumbled over some recent post v1.0.2 commits removing websocket
support from libmicrohttpd.  The commit messages were very short and
gave no hints on reasons for the removal.  I could not find any
discussion on the matter here on this list, and I also found only one
ticket for a post removal issue [1].

Could anyone please elaborate what's going on, and please recommend
alternatives or ways to move forward?

This is related to a PR for libhttpserver opened back in 2021 which
makes use of the now removed features:

https://github.com/etr/libhttpserver/pull/236

Greets
Alex

[1] https://bugs.gnunet.org/view.php?id=10483






Reply via email to