commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Matthew McGillis (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (NET-650) IMAPClient over proxy doesn't properly resolve DNS
Date Fri, 12 Jan 2018 02:53:00 GMT

    [ https://issues.apache.org/jira/browse/NET-650?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16323469#comment-16323469
] 

Matthew McGillis commented on NET-650:
--------------------------------------

Well this is the details of the exception:

{noformat}
java.net.UnknownHostException: zimbra07.loadtest.synacor.com
	at java.net.InetAddress.getAllByName0(InetAddress.java:1280)
	at java.net.InetAddress.getAllByName(InetAddress.java:1192)
	at java.net.InetAddress.getAllByName(InetAddress.java:1126)
	at java.net.InetAddress.getByName(InetAddress.java:1076)
	at org.apache.commons.net.SocketClient.connect(SocketClient.java:202)
	at imapproxy.main(imapproxy.java:45)
{noformat}

So it looks like your connect code calls InetAddress directly to resolve the name which will
happen on the server that code is run from. Which is not what we need.

I have attached a new program that works at a socket level in both cases:

{noformat}
$ java -DsocksProxyHost=localhost -DsocksProxyPort=16003 -cp .:./commons-net-3.6.jar socketproxy
imap.server.test.com user1 userpass
* OK IMAP4rev1 proxy server ready
palladium:commons-net-3.6 matthew$ java -DsocksProxyHost=localhost -DsocksProxyPort=16003
-cp .:./commons-net-3.6.jar socketproxy 10.250.3.127 user1 userpass
* OK IMAP4rev1 proxy server ready
{noformat}

Let me know if that doesn't help I'm not going to have time to work out a patch but hopefully
the above should turn into a simple replacement in the appropriate place.


> IMAPClient over proxy doesn't properly resolve DNS
> --------------------------------------------------
>
>                 Key: NET-650
>                 URL: https://issues.apache.org/jira/browse/NET-650
>             Project: Commons Net
>          Issue Type: Bug
>          Components: IMAP
>    Affects Versions: 3.6
>            Reporter: Matthew McGillis
>         Attachments: imapproxy.java, socketproxy.java
>
>
> IMAPClient when configured to use a socks proxy is not able to resolve DNS names through
the proxy.
> See attached sample code, if I use it with:
> {noformat}
> $ java -DsocksProxyHost=localhost -DsocksProxyPort=16003 -cp .:./commons-net-3.6.jar
imapproxy imap.server.test.com user1 userpass
> connect error: java.net.UnknownHostException: imap.server.test.com: unknown error
> {noformat}
> vs if I use it with the appropriate IP:
> {noformat}
> $ java -DsocksProxyHost=localhost -DsocksProxyPort=16003 -cp .:./commons-net-3.6.jar
imapproxy 10.250.3.127 user1 userpass
> * OK IMAP4rev1 proxy server ready
> IMAP: 10.250.3.127 143
> AAAA LOGIN *******
> AAAA OK [CAPABILITY IMAP4rev1 ACL BINARY CATENATE CHILDREN CONDSTORE ENABLE ESEARCH ESORT
I18NLEVEL=1 ID IDLE LIST-EXTENDED LIST-STATUS LITERAL+ LOGIN-REFERRALS MULTIAPPEND NAMESPACE
QRESYNC QUOTA RIGHTS=ektx SASL-IR SEARCHRES SORT THREAD=ORDEREDSUBJECT UIDPLUS UNSELECT WITHIN
XLIST] LOGIN completed
> AAAB LOGOUT
> * BYE 10.250.3.127 Zimbra IMAP4rev1 server closing connection
> AAAB OK LOGOUT completed
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Mime
View raw message