]
Aaron Ogburn updated MODCLUSTER-433:
------------------------------------
Affects Version/s: 1.2.5.Final
(was: 1.2.9.Final)
(was: 1.3.1.Alpha2)
remove_session_route causes an infinite loop when parsing jsessionid
out of URLs
--------------------------------------------------------------------------------
Key: MODCLUSTER-433
URL:
https://issues.jboss.org/browse/MODCLUSTER-433
Project: mod_cluster
Issue Type: Bug
Components: Native (httpd modules)
Affects Versions: 1.2.5.Final
Reporter: Aaron Ogburn
Assignee: Jean-Frederic Clere
remove_session_route causes an infinite loop when parsing jsessionid out of URLs. The
stack of the looping thread is:
{code}
#0 0x00007f4cf2b66e45 in remove_session_route () from
/etc/httpd/modules/mod_proxy_cluster.so
#1 0x00007f4cf2b68ad9 in ?? () from /etc/httpd/modules/mod_proxy_cluster.so
#2 0x00007f4cf2f7d116 in proxy_run_pre_request () from /etc/httpd/modules/mod_proxy.so
#3 0x00007f4cf2f84186 in ap_proxy_pre_request () from /etc/httpd/modules/mod_proxy.so
#4 0x00007f4cf2f813c2 in ?? () from /etc/httpd/modules/mod_proxy.so
#5 0x00007f4cf776df70 in ap_run_handler ()
#6 0x00007f4cf777180e in ap_invoke_handler ()
#7 0x00007f4cf777cfd0 in ap_process_request ()
#8 0x00007f4cf7779d48 in ?? ()
#9 0x00007f4cf7775a58 in ap_run_process_connection ()
#10 0x00007f4cf7781fa7 in ?? ()
#11 0x00007f4cf77822ca in ?? ()
#12 0x00007f4cf7782f4c in ap_mpm_run ()
#13 0x00007f4cf7759ab5 in main ()
{code}
That is looping here:
{code:title=mod_proxy_cluster.c}
while (*path !='&' || *path !='\0')
path++;
{code}
"*path !='&' || *path !='\0'" is a tautology so the while
never ends. It should be an && instead of ||.