aboutsummaryrefslogtreecommitdiff
path: root/winbuild
AgeCommit message (Collapse)Author
2015-06-20INSTALL: Advise use of non-native SSL for Windows <= XPJay Satiro
Advise that WinSSL in versions <= XP will not be able to connect to servers that no longer support the legacy handshakes and algorithms used by those versions, and to use an alternate backend like OpenSSL instead. Bug: https://github.com/bagder/curl/issues/253 Reported-by: zenden2k <zenden2k@gmail.com>
2015-05-08winbuild: Document the option used to statically link the CRTJay Satiro
- Document option RTLIBCFG (runtime library configuration). Bug: https://github.com/bagder/curl/issues/254 Reported-by: Bert Huijben
2015-03-05openssl: remove all uses of USE_SSLEAYDaniel Stenberg
SSLeay was the name of the library that was subsequently turned into OpenSSL many moons ago (1999). curl does not work with the old SSLeay library since years. This is now reflected by only using USE_OPENSSL in code that depends on OpenSSL.
2015-01-08winbuild: Added option to build with c-aresSam Schanken
Added support for a WITH_CARES option to be used when invoking nmake via Makefile.vc. This option enables linking against both the DLL and static versions of the c-ares libraries, as well as the debug and release varients, depending on the value of DEBUG. The USE_ARES preprocessor symbol is also defined.
2014-09-12newlines: fix mixed newlines to LF-onlyRay Satiro
I use the curl repo mainly on Windows with the typical Windows git checkout which converts the LF line endings in the curl repo to CRLF automatically on checkout. The automatic conversion is not done on files in the repo with mixed line endings. I recently noticed some weird output with projects/build-openssl.bat that I traced back to mixed line endings, so I scanned the repo and there are files (excluding the test data) that have mixed line endings. I used this command below to do the scan. Unfortunately it's not as easy as git grep, at least not on Windows. This gets the names of all the files in the repo's HEAD, gets each of those files raw from HEAD, checks for mixed line endings of both LF and CRLF, and prints the name if mixed. I excluded path tests/data/test* because those can have mixed line endings if I understand correctly. for f in `git ls-tree --name-only --full-tree -r HEAD`; do if [ -n "${f##tests/data/test*}" ]; then git show "HEAD:$f" | \ perl -0777 -ne 'exit 1 if /([^\r]\n.*\r\n)|(\r\n.*[^\r]\n)/'; if [ $? -ne 0 ]; then echo "$f"; fi; fi; done
2014-07-16Remove all traces of FBOpenSSL SPNEGO supportDavid Woodhouse
This is just fundamentally broken. SPNEGO (RFC4178) is a protocol which allows client and server to negotiate the underlying mechanism which will actually be used to authenticate. This is *often* Kerberos, and can also be NTLM and other things. And to complicate matters, there are various different OIDs which can be used to specify the Kerberos mechanism too. A SPNEGO exchange will identify *which* GSSAPI mechanism is being used, and will exchange GSSAPI tokens which are appropriate for that mechanism. But this SPNEGO implementation just strips the incoming SPNEGO packet and extracts the token, if any. And completely discards the information about *which* mechanism is being used. Then we *assume* it was Kerberos, and feed the token into gss_init_sec_context() with the default mechanism (GSS_S_NO_OID for the mech_type argument). Furthermore... broken as this code is, it was never even *used* for input tokens anyway, because higher layers of curl would just bail out if the server actually said anything *back* to us in the negotiation. We assume that we send a single token to the server, and it accepts it. If the server wants to continue the exchange (as is required for NTLM and for SPNEGO to do anything useful), then curl was broken anyway. So the only bit which actually did anything was the bit in Curl_output_negotiate(), which always generates an *initial* SPNEGO token saying "Hey, I support only the Kerberos mechanism and this is its token". You could have done that by manually just prefixing the Kerberos token with the appropriate bytes, if you weren't going to do any proper SPNEGO handling. There's no need for the FBOpenSSL library at all. The sane way to do SPNEGO is just to *ask* the GSSAPI library to do SPNEGO. That's what the 'mech_type' argument to gss_init_sec_context() is for. And then it should all Just Work™. That 'sane way' will be added in a subsequent patch, as will bug fixes for our failure to handle any exchange other than a single outbound token to the server which results in immediate success.
2014-06-06winbuild: Don't USE_WINSSL when WITH_SSL is being usedSteve Holme
Regression of commit d39bbcfa8d when compiling against OpenSSL.
2014-06-05winbuild: Fixed static OpenSSL builds following commit c50ce85918Steve Holme
2014-05-21build: Renamed CURLX_ONES file list definition to CURLX_CFILESSteve Holme
Renamed the CURLX_ONES file list definition in order to a) try and be consistent with other file lists and b) to allow for the addition of the curlx header files, which will assist with Visual Studio project files generation rather than hard coding those files.
2014-05-04BUILD.WINDOWS: update URL for windows prereqsDaniel Stenberg
2014-04-05winbuild: Updated the VC++ make instructions following commit 11025613b9Steve Holme
* Added information regarding the February 2003 Platform SDK for VC6 * Updated the introduction to be similar to the IDE projects README
2014-03-28winbuild: added warnless.c to fix buildCody Mack
2014-01-08makefile: Added support for VC12Steve Holme
2014-01-08makefile: Added support for VC11Steve Holme
2014-01-08winbuild: Follow up fix for a47c142a88c0, 11e8066ef956 and 92b9ae5c5d59Steve Holme
2013-02-06msvc: move Makefile.msvc.names into winbuild/Daniel Stenberg
In an attempt to clear up misc files from the root dir
2013-02-05winbuild: include version info for .dll .exeAndrei Kurushin
Bug: http://curl.haxx.se/bug/view.cgi?id=1186
2013-01-20Makefile.inc: fix $(top_srcdir) not allowed in _SOURCES variablesYang Tse
2013-01-06Revert changes relative to lib/*.[ch] recent renamingYang Tse
This reverts renaming and usage of lib/*.h header files done 28-12-2012, reverting 2 commits: f871de0... build: make use of 76 lib/*.h renamed files ffd8e12... build: rename 76 lib/*.h files This also reverts removal of redundant include guard (redundant thanks to changes in above commits) done 2-12-2013, reverting 1 commit: c087374... curl_setup.h: remove redundant include guard This also reverts renaming and usage of lib/*.c source files done 3-12-2013, reverting 3 commits: 13606bb... build: make use of 93 lib/*.c renamed files 5b6e792... build: rename 93 lib/*.c files 7d83dff... build: commit 13606bbfde follow-up 1 Start of related discussion thread: http://curl.haxx.se/mail/lib-2013-01/0012.html Asking for confirmation on pushing this revertion commit: http://curl.haxx.se/mail/lib-2013-01/0048.html Confirmation summary: http://curl.haxx.se/mail/lib-2013-01/0079.html NOTICE: The list of 2 files that have been modified by other intermixed commits, while renamed, and also by at least one of the 6 commits this one reverts follows below. These 2 files will exhibit a hole in history unless git's '--follow' option is used when viewing logs. lib/curl_imap.h lib/curl_smtp.h
2013-01-03build: make use of 93 lib/*.c renamed filesYang Tse
93 *.c source files renamed to use our standard naming scheme. This change affects 77 files in libcurl's source tree.
2012-12-26curl tool: renaming hugehelp files to tool_hugehelpYang Tse
2012-11-14winbuild: Fix PDB file outputMark Snelling
And fix some newlines to be proper CRLF Bug: http://curl.haxx.se/bug/view.cgi?id=3586741
2012-11-01winbuild: Use machine type of development environmentMarc Hoersken
This patch restores the original behavior instead of always falling back to x86 if no MACHINE-type was specified.
2012-11-01winbuild: Additional clean upMarc Hoersken
2012-11-01Even more winbuild refactoringSapien2
2012-11-01Minor winbuild refactoringSapien2
2012-11-01Architecture selection for winbuild and minor makefiles refactoringSapien2
2012-11-01Fixed MSVC libssh2 static build.Guenter Knauf
Since libssh2 supports now agent stuff it also depends on user32.lib. Posted to the list by Jan Ehrhardt.
2012-10-03winbuild/MakefileBuild.vc: Follow up on 0c8ccf7Marc Hoersken
2012-09-10winbuild: Added support for building with SPNEGO enabledMarc Hoersken
Since Simple and Protected GSSAPI Negotiation Mechanism is already implemented in curl and supported by the MinGW builds, this change adds build support to winbuild makefiles.
2012-09-10winbuild: Adjusted order of options to generated config nameMarc Hoersken
Cleaned up order of handled build options by ordering them nearly alphabetically by using the order of the generated config name. Preparation for future/more build options.
2012-07-29Added DWANT_IDN_PROTOTYPES define for MSVC too.Guenter Knauf
Discussion on the list: http://curl.haxx.se/mail/lib-2012-07/0271.html
2012-07-08winbuild: Aligned BUILD.WINDOWS.txt and Makefile.vc usage helpMarc Hoersken
2012-07-07winbuild: Make USE_WINSSL depend on USE_SSPIMarc Hoersken
Since WinSSL cannot be build without SSPI being enabled, USE_WINSSL now defaults to the value of USE_SSPI. The makefile does now raise an error if WinSSL is enabled while SSPI is disabled.
2012-07-07winbuild: Aligned USE_SSPI with other USE_x definesMarc Hoersken
Renamed external parameter USE_SSPI = yes/no to ENABLE_SSPI = yes/no. Backwards compatible change: USE_SSPI can still be passed as external parameter with yes/no value as long as ENABLE_SSPI is not given. USE_x defines are passed around with true/false values internally, USE_SSPI is now aligned to this approach, but still accepts external values yes/no being passed, just like the other defines.
2012-07-07winbuild: Clean up formatting and variable namingMarc Hoersken
- Changed space usage to line up with the whole file - Renamed CFLAGS_SSPI/IPV6 to SSPI/IPV6_CFLAGS to be consistent with the other CFLAGS_x variables - Make use of existing CFLAGS_IPV6 (previously IPV6_CFLAGS) instead of appending directly to CFLAGS
2012-07-03Moved some patterns to subfolder's .gitignore.Guenter Knauf
2012-06-14winbuild/MakefileBuild.vc: convert line endings to DOS styleYang Tse
As per request on mailing list: http://curl.haxx.se/mail/lib-2012-06/0222.html
2012-06-14winbuild: Allow SSPI build with or without SchannelMarc Hoersken
The changes introduced in commit 2bfa57bc32 are not enough to make it actually possible to use the USE_WINSSL option. Makefile.vc was not updated and the configuration name which is used in the build path did not match between both build files. This patch fixes those issues and introduces the following changes: - Replaced the -schannel name with -winssl in order to be consistent with the other options - Added ENABLE_WINSSL option to winbuild/Makefile.vc (default yes) - Changed winbuild/MakefileBuild.vc to set USE_WINSSL to true if USE_SSL is false and USE_WINSSL was not specified as a parameter - Separated WINSSL handling from SSPI handling to be consistent with the other options and their corresponding code path
2012-06-13MakefileBuild.vc: Allow building without SSLYang Tse
In order to use Windows native SSL support define 'USE_WINSSL'
2012-06-13schannel: remove version number and identify its use with 'schannel' literalYang Tse
Version number is removed in order to make this info consistent with how we do it with other MS and Linux system libraries for which we don't provide this info. Identifier changed from 'WinSSPI' to 'schannel' given that this is the actual provider of the SSL/TLS support. libcurl can still be built with SSPI and without SCHANNEL support.
2012-06-11winbuild: Removed WITH_SSL=schannel and tie schannel to SSPIMarc Hoersken
Removed specific WITH_SSL=schannel paramter that did not fit the general schema and complicated the parameters. For now Schannel will be enabled if SSPI is enabled and OpenSSL is disabled.
2012-06-11winbuild: Updated winbuild scripts to add schannelMarc Hoersken
2012-06-11curl_sspi: Added Curl_sspi_version functionMarc Hoersken
Added new function to get SSPI version as string. Added required library version.lib to makefiles. Changed curl_schannel.c to use Curl_sspi_version.
2012-06-10winbuild: Fixed environment variables being lostMarc Hoersken
Fixed USE_IPV6 and USE_IDN not being passed from Makefile.vc to MakefileBuild.vc Fixed whitespace and formatting issues Fixed typo and format in help message
2012-05-22winbuild: fix IPv6 enabled buildJan Ehrhardt
The existing check was wrong so IPv6 support would never be enabled
2012-05-14MakefileBuild.vc: use the correct IDN variableDaniel Stenberg
The variable that control IDN enablement is called USE_IDN within these Makefiles
2012-04-23Revert "sspi: Added version information"Yang Tse
This reverts commit 2976de480808119dae08fc6f52c8d75ba1aedb1a.
2012-04-22sspi: Added version informationSteve Holme
Added version information for Windows SSPI to curl's main version string and removed SSPI from the features string.
2012-04-13Set batch mode to 755 to make Cygwin git pulls work.Guenter Knauf