Interesting stuff. I patched trunk and ran the test suite (using OpenSSL 0.9.8o).

All tests pass for MPMs prefork, worker,event on Solaris 10 (but maybe you knew that already).

I didn't really check the intended functionality though.

Compilation showed two trivial warnings:

ssl_engine_io.c: In function `flush_coalesced_data':
ssl_engine_io.c:1348: warning: long unsigned int format, apr_size_t arg (arg 8)
ssl_engine_io.c: In function `ssl_io_filter_coalesce':
ssl_engine_io.c:1422: warning: long unsigned int format, apr_size_t arg (arg 8)

Both are about trace logging, using %lu for ctx->bytes resp. len. Using APR_SIZE_T_FMT instead of "lu" fixes those.

There are some strange lines in the switch which is part of bio_filter_out_ctrl() (the part starting with "PENDING"; note the "break" in the previous line):

 227     case BIO_CTRL_GET_CLOSE:
 228         ret = (long)bio->shutdown;
 229         break;
 230       case BIO_CTRL_SET_CLOSE:
 231         bio->shutdown = (int)num;
 232         break;
 233         /* _PENDING is interpreted as "pending to read" - since this
 234          * is a *write* buffer, return zero. */
 235         ret = 0L;
 236         break;
...

Finally: I wasn't able to find eeeko, only eeko [1] and eeek [2]. Though there is eeeko! [3].

Have a nice weekend

Rainer

[1] http://www.urbandictionary.com/define.php?term=eeko
[2] http://www.urbandictionary.com/define.php?term=eeek
[3] http://eeeko.com/

Reply via email to