# Comments on #44393, ISAPI module patch?

- Thread: https://externals.io/message/36555
- Original archive: https://news-web.php.net/php.internals/36555
- Started by Richard Krehbiel on 2008-03-26T18:21:37+00:00
- Messages: 4
- Reply by email to internals@lists.php.net
- More for agents: search with https://externals.io/search.md?q={query} · JSON API at https://externals.io/api · documentation at https://externals.io/llms.txt

---

## #36555 — Richard Krehbiel — 2008-03-26T18:21:37+00:00

URL: https://externals.io/message/36555#36555

I've developed the patch listed in http://bugs.php.net/44393 over the last
few weeks, and I just thought I'd try to solicit some feedback.  It's an
enhancement to the Windows ISAPI module which allows Keep-Alive connections
and chunked content-encoding.  I'd sure love to get this incorporated into
some upcoming PHP version.

We have a Windows server farm and some field panels that we just converted
to report in via HTTPS rather than a proprietary protocol.  I was checking
the impact on the servers and was aghast at the number of socket ports
sitting around in TIME_WAIT state, which led me to discover that the ISAPI
module doesn't support keep-alive, which motivated me to figure out why...
one thing led to another, and, voila, a patch (or two or three) was born.
 <http://bugs.php.net/44393

---

## #36579 — Jani Taskinen — 2008-03-26T21:10:52+00:00

URL: https://externals.io/message/36555#36579 · In reply to: #36555

Richard Krehbiel kirjoitti:
> I've developed the patch listed in http://bugs.php.net/44393 over the last
> few weeks, and I just thought I'd try to solicit some feedback.  It's an
> enhancement to the Windows ISAPI module which allows Keep-Alive connections
> and chunked content-encoding.  I'd sure love to get this incorporated into
> some upcoming PHP version.
> 
> We have a Windows server farm and some field panels that we just converted
> to report in via HTTPS rather than a proprietary protocol.  I was checking
> the impact on the servers and was aghast at the number of socket ports
> sitting around in TIME_WAIT state, which led me to discover that the ISAPI
> module doesn't support keep-alive, which motivated me to figure out why...
> one thing led to another, and, voila, a patch (or two or three) was born.
>  <http://bugs.php.net/44393>

It might help a bit if you put that patch online somewhere available for 
download. A patch in the bug report is messed up and kinda unreadable..

Provide the url to the patch here and also in the bug report! :)

--Jani

---

## #36614 — Richard Krehbiel — 2008-03-27T13:22:04+00:00

URL: https://externals.io/message/36555#36614 · In reply to: #36579

>
> Richard Krehbiel kirjoitti:
>
> > […]
>
> It might help a bit if you put that patch online somewhere available for
> download. A patch in the bug report is messed up and kinda unreadable..
>
> Provide the url to the patch here and also in the bug report! :)
>
>
> --Jani
>

Very good point - word-wrapped, it was.  Um - all three were.  It's like I
wasn't paying attention, or something.  :-(

Here: http://home.comcast.net/~krehbiel3/php5isapi.c.patch<http://home.comcast.net/%7Ekrehbiel3/php5isapi.c.patch

---

## #36649 — Richard Krehbiel — 2008-03-28T13:49:58+00:00

URL: https://externals.io/message/36555#36649 · In reply to: #36614

>
>
> Here: http://home.comcast.net/~krehbiel3/php5isapi.c.patch<http://home.comcast.net/%7Ekrehbiel3/php5isapi.c.patch>
>
>
If you fetched this patch before now, you may need to fetch it again, as
it's revised.

I found that scripts would crash IIS6 (exception code 0xC0000005) when run
in a virtual directory and zlib.output_compression was turned off.  This
change "fixes" it, for reasons I don't understand, which bothers me.  And
IIS5 was immune.  And a "debug" build didn't exhibit the problem.  Since
it's so weird a "fix," I'll also mention that I built it with Visual Studio
.NET SP1.

(It is a real correction, though; if a WriteClient call were to fail, it
might have called php_handle_aborted_connection more than once.)
