You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by bu...@apache.org on 2014/04/05 16:21:57 UTC

[Bug 56352] New: tomcat-connectors-1.2.39-windows-x86_64-iis does not resolve worked DNS names

https://issues.apache.org/bugzilla/show_bug.cgi?id=56352

            Bug ID: 56352
           Summary: tomcat-connectors-1.2.39-windows-x86_64-iis does not
                    resolve worked DNS names
           Product: Tomcat Connectors
           Version: 1.2.39
          Hardware: PC
            Status: NEW
          Severity: normal
          Priority: P2
         Component: isapi
          Assignee: dev@tomcat.apache.org
          Reporter: knst.kolinko@gmail.com

Following the "tomcat-connectors-1.2.39-windows-x86_64-iis does not work"
thread on users list, from April 2rd

http://marc.info/?t=139644507500004&r=1&w=2
http://tomcat.markmail.org/message/sb7vbobngdqig5v6

It boils down to the following:
The following works:

> worker.ajp13w.host=127.0.0.1

The following does not work:

> worker.ajp13w.host=localhost

and connector tries to connect to 0.0.0.0:
jk_open_socket::jk_connect.c (735): connect to 0.0.0.0:8009 failed (errno=49)

------------
Looking at svn history, I see that implementation of method jk_resolve() was
changed in r1529803 for the case when APR library is not available.

Reviewing the code of jk_resolve() in jk_connect.c, I see the following issue:
line 484
[[[
 freeaddrinfo(ai_list);
 ...
 memcpy(&(saddr->sa), ai->ai_addr, ai->ai_addrlen);
]]]

The "ai" variable is a pointer to the chosen item in "ai_list" linked list of
addresses returned by getaddrinfo(). The bug is that freeaddrinfo(ai_list) is
called too early, before the information is copied away.


Also, the following on lines 436-441:
[[[
#if JK_HAVE_IPV6
        if (prefer_ipv6)
            hints.ai_family = JK_INET6;
        else
#endif
            hints.ai_family = JK_INET;
]]]
As "hints" is a structure that is passed to getaddrinfo() method, I would
expect those assignments to use AF_INET, AF_INET6. I suspect that this is
non-issue, as those defines should be defined as equal to AF_xx constants
anyway, but other code later uses AF_xx constants, so I expect the AF_xx ones
to be used here as well.
("if (ai->ai_family == AF_INET6)")

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[Bug 56352] tomcat-connectors-1.2.39-windows-x86_64-iis does not resolve workers DNS names

Posted by bu...@apache.org.
https://issues.apache.org/bugzilla/show_bug.cgi?id=56352

Konstantin Kolinko <kn...@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |FIXED

--- Comment #6 from Konstantin Kolinko <kn...@gmail.com> ---
Thanks for confirming. Closing.

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[Bug 56352] tomcat-connectors-1.2.39-windows-x86_64-iis does not resolve workers DNS names

Posted by bu...@apache.org.
https://issues.apache.org/bugzilla/show_bug.cgi?id=56352

--- Comment #1 from Konstantin Kolinko <kn...@gmail.com> ---
Created attachment 31484
  --> https://issues.apache.org/bugzilla/attachment.cgi?id=31484&action=edit
2014-04-05_jk_56352_jkresolve_v1.patch

Patch for the issue (not tested).

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[Bug 56352] tomcat-connectors-1.2.39-windows-x86_64-iis does not resolve workers DNS names

Posted by bu...@apache.org.
https://issues.apache.org/bugzilla/show_bug.cgi?id=56352

--- Comment #4 from Konstantin Kolinko <kn...@gmail.com> ---
(In reply to Mladen Turk from comment #2)
> The patch does nothing. JK_INET6 is defined as AF_INET6

OK. Good to know. I am just saying that it looks odd.

> The only thing that can be is the location of freeaddrinfo(ai_list);
> It's a clear bug.

Thank you for fixing.

(In reply to Mladen Turk from comment #3)
> The reason is probably in the missing
> 127.0.0.1 localhost
> entry in the host file. Since the resolve code is now a copy from APR, the
> same behaviour exists with HTTPD for example.

If it fails to resolve the host name, I would expect some different behaviour
rather than an attempt to connect to 0.0.0.0.

(Just for a record: Apparently, adding such entry did not help
http://markmail.org/message/pgzhzuwozcvxzab7

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[Bug 56352] tomcat-connectors-1.2.39-windows-x86_64-iis does not resolve workers DNS names

Posted by bu...@apache.org.
https://issues.apache.org/bugzilla/show_bug.cgi?id=56352

--- Comment #3 from Mladen Turk <mt...@apache.org> ---
The reason is probably in the missing
127.0.0.1 localhost
entry in the host file. Since the resolve code is now a copy from APR, the same
behaviour exists with HTTPD for example.

However there is still a bug with freeaddrinfo, so this could cause more
serious problems.

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[Bug 56352] tomcat-connectors-1.2.39-windows-x86_64-iis does not resolve workers DNS names

Posted by bu...@apache.org.
https://issues.apache.org/bugzilla/show_bug.cgi?id=56352

--- Comment #5 from Jessica-Aileen Alten <je...@liag-hannover.de> ---
The problem seems to be solved with the new 1.2.40 release!

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[Bug 56352] tomcat-connectors-1.2.39-windows-x86_64-iis does not resolve workers DNS names

Posted by bu...@apache.org.
https://issues.apache.org/bugzilla/show_bug.cgi?id=56352

christophk <ch...@iconparc.de> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |christoph.kaser@iconparc.de

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[Bug 56352] tomcat-connectors-1.2.39-windows-x86_64-iis does not resolve workers DNS names

Posted by bu...@apache.org.
https://issues.apache.org/bugzilla/show_bug.cgi?id=56352

--- Comment #2 from Mladen Turk <mt...@apache.org> ---
The patch does nothing. JK_INET6 is defined as AF_INET6
The only thing that can be is the location of freeaddrinfo(ai_list);
It's a clear bug.

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[Bug 56352] tomcat-connectors-1.2.39-windows-x86_64-iis does not resolve workers DNS names

Posted by bu...@apache.org.
https://issues.apache.org/bugzilla/show_bug.cgi?id=56352

Konstantin Kolinko <kn...@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|tomcat-connectors-1.2.39-wi |tomcat-connectors-1.2.39-wi
                   |ndows-x86_64-iis does not   |ndows-x86_64-iis does not
                   |resolve worked DNS names    |resolve workers DNS names
                 OS|                            |All

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org