-
Notifications
You must be signed in to change notification settings - Fork 60
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Simplify Address#getInfo() native implementation
Don't apply tricks and rely on OS behavior to resolve addresses. It is the caller's responsibility to properly process socket addresses if more than one exists. This mimics the behavior of HTTPd's listen.c for apr_sockaddr_info_get().
- Loading branch information
Showing
2 changed files
with
6 additions
and
41 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
420cd1c
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You cannot break ABI just like that. Please revert the change
420cd1c
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you explain why this breaks ABI for you? The Javadoc of
Address
does not document anything about the code I have changed. Also no behavior is documented.420cd1c
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you explain why you made a change? Have you tested it on Windows?
When you require a "caller (in our case Tomcat) to change responsibility" it means you are requiring to change the ABI.
You can create a new branch of Tomcat Native and require that.
420cd1c
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please read: https://www.mail-archive.com/[email protected]/msg152629.html
Yes, I have compiled (wtih you CMSC distro) and tested multiple times on Windows deployments, Windows 10 and Windows Server with IPv4 and IPv6. On hardware and in a VMWare VM. I am also checked how this is implemented in APR and how different OS behavior is that they all prefer IPv6 with
UNSPEC
unless you configure differently. Moreover, Tomcat does not even follow thenext
pointer in contrast to HTTPd (listen.c
). So this is somewhat random already.420cd1c
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please revert the change because it breaks bunch of current deployments. Like said, you can create a new branch that will not break current Tomcat ABI, and we can discuss it there.
420cd1c
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Reverted.
420cd1c
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks
420cd1c
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please see #9