Age | Commit message (Collapse) | Author |
|
For modularity purposes, huge chunks of NTLM existing code is transformed into
functions to allow future internal code reuse.
Resulting three new libcurl private functions:
- Curl_ntlm_create_type1_message()
- Curl_ntlm_create_type3_message()
- Curl_ntlm_decode_type2_message()
Changing static ntlm_sspi_cleanup() into non-static Curl_ntlm_sspi_cleanup()
This 'refactoring' has been prepared by previous commits to allow that this
specific one does not introduce any change to existing code. All existing
goodness and badness previous to this commit should remain the same once it is
applied, the only difference should be that existing code is moved into
functions.
Given the quite big portions of code being moved around, and the importance of
change traceability, this commit has been done in such a way that it is
possible to perform a three-way diff from initial http_ntlm.[ch] to resulting
http_ntlm.[ch] and curl_ntlm.[ch] to actually verify that no functional change
is introduced here.
Notice that Steve Holme has provided several patches, but these included this
refactoring along with 'extra' fixes. I really wanted this 'clean' refactoring
done first, in order to allow discussion or committing of 'extra' fixes on a
case by case basis, so, I had to bite the bullet ;-)
Comments, line adjustments, compiler warning fixes, whatever, may follow
afterwards.
|
|
Just a note about the fact that all VC[6/8/9/10] makefiles are generated
from the VC6 one as source.
|
|
|
|
|
|
The new http_proxy.* files now host HTTP proxy specific code (500+ lines
moved out from http.c), and as a consequence there is a macro introduced
for the Curl_proxyCONNECT() function so that code can use it without
actually supporting proxy (or HTTP) in builds.
|
|
http_negotiate_sspi.c was added to the source tree recently
|
|
|
|
|
|
sorted to reflect same internal order as the one shown
in the usage message.
|
|
Default libcurl's file names are kept equal to those used since Y2K.
|
|
As the VC and RISCOS makefiles don't use the .inc file
|
|
|
|
|
|
|
|
|
|
I didn't bother with a few that have little hope of running the required
dependent libraries.
|
|
|
|
|
|
platform-specific makefiles.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
into curl_rand.c and curl_rand.h
|
|
|
|
|
|
|
|
Curl_sspi_global_init() and Curl_sspi_global_cleanup() which previously were
named Curl_ntlm_global_init() and Curl_ntlm_global_cleanup() in http_ntlm.c
Also adjusted socks_sspi.c to remove the link-time dependency on the Windows
SSPI library using it now in the same way as it was done in http_ntlm.c.
|
|
CURLOPT_SOCKS5_GSSAPI_SERVICE and CURLOPT_SOCKS5_GSSAPI_NEC to allow libcurl
to do GSS-style authentication with SOCKS5 proxies. The curl tool got the
options called --socks5-gssapi-service and --socks5-gssapi-nec to enable
these.
|
|
lib/Makefile.vc6
file (and thus from the vc8 and vc9 ones too).
|
|
|
|
|
|
This also implies the removal of the winmm.lib dependency for WIN32.
|
|
(http://curl.haxx.se/bug/view.cgi?id=1942022) pointing out a mistake in the
lib/Makefile.vc[68] makefiles' release-ssl-dll target.
|
|
|
|
|
|
|
|
added hint to compile with SSPI with MSVC6 without PSDK.
|
|
machine type too.
|
|
|
|
it now will read the full data sent from servers. The SOCKS-related code was
also moved to the new lib/socks.c source file.
|
|
|
|
static libcurl using openssl as dll.
|
|
version of libcurl with different Windows versions. Current version of
libcurl imports SSPI functions from secur32.dll. However, under Windows NT
4.0 these functions are located in security.dll, under Windows 9x - in
secur32.dll and Windows 2000 and XP contains both these DLLs (security.dll
just forwards calls to secur32.dll).
Dmitry's patch loads proper library dynamically depending on Windows
version. Function InitSecurityInterface() is used to obtain pointers to all
of SSPI function in one structure.
: ----------------------------------------------------------------------
|
|
linked to the executable and not to the libcurld.lib
http://curl.haxx.se/bug/view.cgi?id=1326676
|
|
you set rtlibcfg=static for the make, then it would build with /MT. The
default behaviour is /MD (the original)."
http://curl.haxx.se/bug/view.cgi?id=1326665
|
|
when building the static library. http://curl.haxx.se/bug/view.cgi?id=1326665
|
|
|