Am 22.12.2016 um 23:56 schrieb Yann Ylavic:
On Thu, Dec 22, 2016 at 11:38 PM, Rainer Jung <rainer.jung@xxxxxxxxxxx> wrote:OK, looking closer at the suggested patch I see it fixes trace2-Loggging. When I activate e.g. trace8, I do get the expected crash in ap_proxy_check_connection.Yes, it depends on the LogLevel, and probably also on AP_HAVE_C99 (which avoids ap_log_* args evaluation when the LogLevel doesn't match).
Ah yes, you are right.
How is AP_HAVE_C99 defined with msvc (or the compiler used at apachelounge)? If undefined/zero, it may segfault at any level.
It seems we set AP_HAVE_C99 in include/ap_config.h depending on __STDC_VERSION__. Various sources suggest MSVC isn't setting __STDC_VERSION__:
https://connect.microsoft.com/VisualStudio/feedback/details/1006806/c99-support-is-missing-stdc-version So it could well be, that Windows users run into this with any log level.@Jim: it only happens when backend connections get reused (that's what the broken log statement is logging), so e.g. not on the first request.
@Yann: your patch is just to check whether that is the problem? I guess the final patch will distinguish between conn->connection being NULL (then using your suggested code) or non-NULL (then using the original code). Or would you always use your suggested code?I was thinking about always using the new code, maybe with an "if APLOGtrace2(s)" around to save a getsockname() call when not needed.
I see, thanks. Regards, Rainer --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscribe@xxxxxxxxxxxxxxxx For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx