Re: Trying to get a mod_h3 working using openssl and nghttp3
Tarek <[email protected]> Wed, 22 Jul 2026 03:16:04 -0400
| Newsgroups | gmane.comp.apache.devel |
|---|---|
| Message-ID | <[email protected]> |
This is a multi-part message in MIME format. --------------yyw10nCz3WEoBVRRoGcL6lHV Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi, Expanded to add support for mpm worker and prefork. PATCH: https://github.com/machine-moon/httpd/commit/07edab0c0bb314e140117fb357b24b9f622c0357 Any concerns? On 2026-07-17 17:49, Tarek wrote: > > Hi, > > This patch adds optional hooks so modules that manage connections > outside the event MPM accept loop (UDP connections) can be accounted for. > > Patch against trunk for feedback: > https://github.com/machine-moon/httpd/commit/9ae19a4b0af00973d867f0740a709e059b4e6c7c > > This patch is critical for mod_http3. > > You can find the project here: https://github.com/machine-moon/mod_http3 > > > On 2026-05-12 14:55, Pierre Brochard wrote: >> >> A syntax to specify udp listening sockets should be found for >> virtualhosts. nginx add quic and reuseport keyword to their listen >> directive in config files. >> >> Pierre >> >> Le 12/05/2026 à 19:11, Pierre a écrit : >>> I was thinking of adding the udp ports to the list of ports to >>> listen in the listening thread of thé event pool. >>> >>> Le 12 mai 2026 18:48, tarek i <[email protected]> a écrit : >>> >>> Hi, >>> >>> I’m new here and participating in GSoC 2026, currently working >>> on the mod_http3 project. I’ve made some cleanups to the >>> codebase here: https://github.com/machine-moon/mod_http3/ >>> >>> Could someone point me toward beginner documentation on the >>> Worker MPM? >>> >>> Also I’d appreciate any help with testing my changes using >>> (curl, chrome, etc). >>> >>> Cheers, >>> Tarek >>> >>> >>> On Tue, May 12, 2026 at 11:53 AM Eric Covener >>> <[email protected]> wrote: >>> >>> On Tue, May 12, 2026 at 11:24 AM jean-frederic clere >>> <[email protected]> wrote: >>> > >>> > On 5/10/26 6:53 PM, Pierre Brochard wrote: >>> > > Hi, >>> > > >>> > > What about the Event MPM which has workers threads, a >>> thread for waiting >>> > > sockets and others (for each child) ? >>> > > >>> > > It may be more adequate than the Worker MPM ? >>> > >>> > If we want to use the openssl streams like sockets we need >>> to write a >>> > specialized worker, for the moment the prototype use >>> threads that aren't >>> > in the MPM logic. >>> > >>> > I did a bunch of tries and on linux the upd data seem to >>> stick on the >>> > process/thread that was used to "accept" the new connection. >>> >>> Did you see PT_USER / ap_mpm_register_poll_callback_timeout >>> in trunk? >>> >>> > -- > Cheers, > Tarek > > GPG Fingerprint: B9BD295C26A1ED077599810CA284507F96DB79EF -- Cheers, Tarek GPG Fingerprint: B9BD295C26A1ED077599810CA284507F96DB79EF --------------yyw10nCz3WEoBVRRoGcL6lHV Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: 8bit <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> </head> <body> <p>Hi,<br> <br> Expanded to add support for mpm worker and prefork.<br> <br> PATCH: <a class="moz-txt-link-freetext" href="https://github.com/machine-moon/httpd/commit/07edab0c0bb314e140117fb357b24b9f622c0357">https://github.com/machine-moon/httpd/commit/07edab0c0bb314e140117fb357b24b9f622c0357</a><br> <br> Any concerns?<br> <br> <br> </p> <div class="moz-cite-prefix">On 2026-07-17 17:49, Tarek wrote:<br> </div> <blockquote type="cite" cite="mid:[email protected]"> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <p>Hi,<br> <br> This patch adds optional hooks so modules that manage connections outside the event MPM accept loop (UDP connections) can be accounted for.<br> <br> Patch against trunk for feedback: <a class="moz-txt-link-freetext" href="https://github.com/machine-moon/httpd/commit/9ae19a4b0af00973d867f0740a709e059b4e6c7c" moz-do-not-send="true">https://github.com/machine-moon/httpd/commit/9ae19a4b0af00973d867f0740a709e059b4e6c7c</a><br> <br> This patch is critical for mod_http3. <br> <br> You can find the project here: <a class="moz-txt-link-freetext" href="https://github.com/machine-moon/mod_http3" moz-do-not-send="true">https://github.com/machine-moon/mod_http3</a></p> <div class="moz-cite-prefix"><br> </div> <div class="moz-cite-prefix">On 2026-05-12 14:55, Pierre Brochard wrote:<br> </div> <blockquote type="cite" cite="mid:[email protected]"> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <p>A syntax to specify udp listening sockets should be found for virtualhosts. nginx add quic and reuseport keyword to their listen directive in config files.</p> <p>Pierre</p> <div class="moz-cite-prefix">Le 12/05/2026 à 19:11, Pierre a écrit :<br> </div> <blockquote type="cite" cite="mid:[email protected]"> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <div dir="auto">I was thinking of adding the udp ports to the list of ports to listen in the listening thread of thé event pool.</div> <div class="gmail_extra"><br> <div class="gmail_quote">Le 12 mai 2026 18:48, tarek i <a class="moz-txt-link-rfc2396E" href="mailto:[email protected]" moz-do-not-send="true"><[email protected]></a> a écrit :<br type="attribution"> <blockquote class="quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> <div dir="ltr"> <div dir="ltr">Hi,<br> <br> I’m new here and participating in GSoC 2026, currently working on the mod_http3 project. I’ve made some cleanups to the codebase here: <a href="https://github.com/machine-moon/mod_http3/" moz-do-not-send="true" class="moz-txt-link-freetext">https://github.com/machine-moon/mod_http3/</a><br> <br> Could someone point me toward beginner documentation on the Worker MPM?<br> <br> Also I’d appreciate any help with testing my changes using (curl, chrome, etc).<br> <br> Cheers,<br> Tarek<br> <br> </div> <br> <div> <div dir="ltr">On Tue, May 12, 2026 at 11:53 AM Eric Covener <<a href="mailto:[email protected]" moz-do-not-send="true" class="moz-txt-link-freetext">[email protected]</a>> wrote:<br> </div> <blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb( 204 , 204 , 204 );padding-left:1ex">On Tue, May 12, 2026 at 11:24 AM jean-frederic clere <<a href="mailto:[email protected]" moz-do-not-send="true" class="moz-txt-link-freetext">[email protected]</a>> wrote:<br> ><br> > On 5/10/26 6:53 PM, Pierre Brochard wrote:<br> > > Hi,<br> > ><br> > > What about the Event MPM which has workers threads, a thread for waiting<br> > > sockets and others (for each child) ?<br> > ><br> > > It may be more adequate than the Worker MPM ?<br> ><br> > If we want to use the openssl streams like sockets we need to write a<br> > specialized worker, for the moment the prototype use threads that aren't<br> > in the MPM logic.<br> ><br> > I did a bunch of tries and on linux the upd data seem to stick on the<br> > process/thread that was used to "accept" the new connection.<br> <br> Did you see PT_USER / ap_mpm_register_poll_callback_timeout in trunk?<br> </blockquote> </div> </div> </blockquote> </div> <br> </div> </blockquote> </blockquote> <pre class="moz-signature" cols="72">-- Cheers, Tarek GPG Fingerprint: B9BD295C26A1ED077599810CA284507F96DB79EF</pre> </blockquote> <pre class="moz-signature" cols="72">-- Cheers, Tarek GPG Fingerprint: B9BD295C26A1ED077599810CA284507F96DB79EF</pre> </body> </html> --------------yyw10nCz3WEoBVRRoGcL6lHV--