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

Oleg Kalnichevski commented on HTTPCLIENT-1394:
-----------------------------------------------

Hi Ryan

Overall the patch looks fine to me. However, there is quite a major issue of 
extra runtime dependencies. I do not think that adding 'net.java.dev.jna' 
packages as mandatory runtime dependencies is a good idea. They might make 
sense for Windows centric folks but would be completely pointless for other 
platforms. We ought not impose them on the entire user base indiscriminately. 

There are two options that I can see here. (1) make then optional at runtime 
(they would still be required in order to build HttpClient) (2) move Windows 
specific code to a separate module (similar to HttpMime and HttpClient Cache). 
On the upside the latter approach would allow to use whatever extra 
dependencies you might need to get the job done. On the downside it would 
require the users to explicitly add Windows specific module as a dependency and 
likely to build HttpClient in a slightly different manner.

As to your questions

(1) Seems quite reasonable. We just need a means of forcing HttpClient to use 
platform specific creds and CurrentUserCredentials looks adequate. I think 
SPNego scheme does something very simiular, so we just need to make sure both 
schemes are consistent

(2) Cannot give a good advice here. All my attempts at improving test coverage 
of NTLM/SPNego scheme without relying on external resource(s) failed so far. 
So, Mockito is your good friend here.

(3) This very much depends on how we manage to solve the dependency issue. I 
could easily see HttpClientBuilder building HttpClient instances differently 
depending on the actual execution platform. We already have OSGi module that 
does something similar.

(typed in an awful hurry. please excuse typos)

Oleg
                
> Native windows Negotiate/NTLM via JNA
> -------------------------------------
>
>                 Key: HTTPCLIENT-1394
>                 URL: https://issues.apache.org/jira/browse/HTTPCLIENT-1394
>             Project: HttpComponents HttpClient
>          Issue Type: New Feature
>         Environment: Windows
>            Reporter: Ryan McKinley
>         Attachments: HTTPCLIENT-1394-jna.patch
>
>
> HttpClient has made great progress in supporting NTLM and Negotiate, but the 
> setup often requires considerable configuration.  Using native calls, we can 
> authenticate the current logged in user directly via windows with no 
> configuration.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to