http NTLM: split http_ntlm.[ch] between http_ntlm.[ch] and curl_ntlm.[ch]
authorYang Tse <yangsita@gmail.com>
Sun, 14 Aug 2011 13:45:19 +0000 (15:45 +0200)
committerYang Tse <yangsita@gmail.com>
Sun, 14 Aug 2011 13:45:19 +0000 (15:45 +0200)
commit98fb0ef73ef212271895e87b8bd9a2d5b2baf6b6
treeabdf2c0dcf44e28c63f96b9eb739c8d32f833895
parent08b05efd2022c8041f2c5526bf82f9c71600618a
http NTLM: split http_ntlm.[ch] between http_ntlm.[ch] and curl_ntlm.[ch]

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.
lib/Makefile.inc
lib/Makefile.vc6
lib/curl_ntlm.c [new file with mode: 0644]
lib/curl_ntlm.h
lib/http_ntlm.c