aboutsummaryrefslogtreecommitdiff
path: root/lib/config-win32.h
AgeCommit message (Collapse)Author
2020-05-15source cleanup: remove all custom typedef structsDaniel Stenberg
- Stick to a single unified way to use structs - Make checksrc complain on 'typedef struct {' - Allow them in tests, public headers and examples - Let MD4_CTX, MD5_CTX, and SHA256_CTX typedefs remain as they actually typedef different types/structs depending on build conditions. Closes #5338
2020-04-04windows: enable UnixSockets with all build toolchainsViktor Szakats
Extend existing unix socket support in Windows builds to be enabled for all toolchain vendors or versions. (Previously it was only supported with certain MSVC versions + more recent Windows 10 SDKs) Ref: https://devblogs.microsoft.com/commandline/af_unix-comes-to-windows/ Ref: https://github.com/curl/curl/issues/5162 Closes: https://github.com/curl/curl/pull/5170
2020-03-07config-win32: Windows does not have ftruncateMarc Hoersken
2020-02-20win32: USE_WIN32_CRYPTO to enable Win32 based MD4, MD5 and SHA256 functionsSteve Holme
Whilst lib\md4.c used this pre-processor, lib\md5.c and src\tool_metalink.c did not and simply relied on the WIN32 pre-processor directive. Reviewed-by: Marcel Raad Closes #4955
2019-11-14config-win32: cpu-machine-OS for Windows on ARMMelissa Mears
Define the OS macro properly for Windows on ARM builds. Also, we might as well add the GCC-style IA-64 macro. Closes #4590
2019-05-29url: Load if_nametoindex() dynamically from iphlpapi.dll on WindowsSteve Holme
This fixes the static dependency on iphlpapi.lib and allows curl to build for targets prior to Windows Vista. This partially reverts 170bd047. Fixes #3960 Closes #3958
2019-05-28curl-win32.h: Enable Unix Domain Sockets based on the Windows SDK versionSteve Holme
Microsoft added support for Unix Domain Sockets in Windows 10 1803 (RS4). Rather than expect the user to enable Unix Domain Sockets by uncommenting the #define that was added in 0fd6221f we use the RS4 pre-processor variable that is present in newer versions of the Windows SDK. Closes #3939
2019-05-23config-win32: add support for if_nametoindex and getsocknameZenju
Closes https://github.com/curl/curl/pull/3923
2019-05-17libcurl: #ifdef away more code for disabled features/protocolsDaniel Stenberg
2018-10-19config_win32: enable LDAPSMarcel Raad
As done in the autotools and CMake builds by default. Closes https://github.com/curl/curl/pull/3137
2018-02-07curl_addrinfo.c: Allow Unix Domain Sockets to compile under WindowsSteve Holme
Windows 10.0.17061 SDK introduces support for Unix Domain Sockets. Added the necessary include file to curl_addrinfo.c. Note: The SDK (which is considered beta) has to be installed, VS 2017 project file has to be re-targeted for Windows 10.0.17061 and #define enabled in config-win32.h.
2018-01-05build: remove HAVE_LIMITS_H checkJay Satiro
.. because limits.h presence isn't optional, it's required by C89. Ref: http://port70.net/~nsz/c/c89/c89-draft.html#2.2.4.2 Closes https://github.com/curl/curl/pull/2215
2017-10-06lib/config-win32.h: let SMB/SMBS be enabled with OpenSSL/NSSViktor Szakats
The source code is now prepared to handle the case when both Win32 Crypto and OpenSSL/NSS crypto backends are enabled at the same time, making it now possible to enable `USE_WIN32_CRYPTO` whenever the targeted Windows version supports it. Since this matches the minimum Windows version supported by curl (Windows 2000), enable it unconditionally for the Win32 platform. This in turn enables SMB (and SMBS) protocol support whenever Win32 Crypto is available, regardless of what other crypto backends are enabled. Ref: https://github.com/curl/curl/pull/1840#issuecomment-325682052 Closes https://github.com/curl/curl/pull/1943
2017-08-22config-win32: define SIZEOF_LONGViktor Szakats
Recent changes that replaced CURL_SIZEOF_LONG in the source with SIZEOF_LONG broke builds that use the premade configuration files and don't have SIZEOF_LONG defined. Closes https://github.com/curl/curl/pull/1814
2017-08-17config-win32: define SIZEOF_CURL_OFF_TDaniel Stenberg
2017-03-26spelling fixesklemens
Closes #1356
2016-03-19config-w32.h: Fixed compilation warning when /Wall enabledSteve Holme
warning C4668: 'USE_IPV6' is not defined as a preprocessor macro, replacing with '0' for '#if/#elif'
2016-02-09openssl: remove most BoringSSL #ifdefs.David Benjamin
As of https://boringssl-review.googlesource.com/#/c/6980/, almost all of BoringSSL #ifdefs in cURL should be unnecessary: - BoringSSL provides no-op stubs for compatibility which replaces most #ifdefs. - DES_set_odd_parity has been in BoringSSL for nearly a year now. Remove the compatibility codepath. - With a small tweak to an extend_key_56_to_64 call, the NTLM code builds fine. - Switch OCSP-related #ifdefs to the more generally useful OPENSSL_NO_OCSP. The only #ifdefs which remain are Curl_ossl_version and the #undefs to work around OpenSSL and wincrypt.h name conflicts. (BoringSSL leaves that to the consumer. The in-header workaround makes things sensitive to include order.) This change errs on the side of removing conditionals despite many of the restored codepaths being no-ops. (BoringSSL generally adds no-op compatibility stubs when possible. OPENSSL_VERSION_NUMBER #ifdefs are bad enough!) Closes #640
2016-02-03URLs: change all http:// URLs to https://Daniel Stenberg
2015-12-07config-win32: Fix warning HAVE_WINSOCK2_H undefinedGisle Vanem
2015-09-30win32: make recent Borland compilers use long longThorsten Schöning
2015-08-30win32: Use DES_set_odd_parity() from OpenSSL/BoringSSL by defaultSteve Holme
Set HAVE_DES_SET_ODD_PARITY when using OpenSSL/BoringSSL as native Windows builds don't use the autoconf tools.
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-18ldap: Renamed the CURL_LDAP_WIN definition to USE_WIN32_LDAPSteve Holme
For consistency with other USE_WIN32_ defines as well as the USE_OPENLDAP define.
2014-12-24config-win32.h: Fixed line length > 79 columnsSteve Holme
2014-12-12config-win32.h: Don't enable Windows Crypt API if using OpenSSLSteve Holme
As the OpenSSL and NSS Crypto engines are prefered by the core NTLM routines, to the Windows Crypt API, don't define USE_WIN32_CRYPT automatically when either OpenSSL or NSS are in use - doing so would disable NTLM2Session responses in NTLM type-3 messages.
2014-12-07ntlm: Use Windows Crypt APIBill Nagel
Allow the use of the Windows Crypt API for NTLMv1 functions.
2014-11-17config-win32: Fixed build targets for the VS2012+ Windows XP toolsetSteve Holme
Even though commit 23e70e1cc6 mentioned the v110_xp toolset, I had forgotten to include the relevant pre-processor definitions.
2014-11-16config-win32: Introduce build targets for VS2012+Steve Holme
Visual Studio 2012 introduced support for Windows Store apps as well as supporting Windows Phone 8. Introduced build targets that allow more modern APIs to be used as certain legacy ones are not available on these new platforms.
2014-06-05config-win32.h: Updated for VC12Steve Holme
Bug: http://curl.haxx.se/bug/view.cgi?id=1378 Reported and Patched-by: Marcel Raad
2014-05-04config-win32.h: Fixed HAVE_LONGLONG for Visual Studio .NET 2003 and upSteve Holme
Fixed the HAVE_LONGLONG declaration as long long is supported in Visual Studio .NET 2003 (VC7.1) onwards.
2013-09-28win32: fix Visual Studio 2010 build with WINVER >= 0x600Daniel Stenberg
If no WINVER and/or _WIN32_IWNNT define was set, the Windows platform SDK often defaults to high value, e.g. 0x601 (whoch may probably depend on the Windows version being used, in my case Windows 7). If WINVER >= 0x600 then winsock2.h includes some defines for WSAPoll(), e.g. POLLIN, POLLPRI, POLLOUT etc. These defines clash with cURL's lib/select.h. Make sure HAVE_STRUCT_POLLFD is defined then. Bug: http://curl.haxx.se/bug/view.cgi?id=1282 Reported-by: "kdekker" Patch-by: Marcel Raad
2013-04-11Enabled MinGW sync resolver builds.Guenter Knauf
2013-04-09Fixed ares-enabled builds with static makefiles.Guenter Knauf
2011-09-20Changed Windows 64bit OS define to x86_64.Guenter Knauf
Also added check for __x86_64__ define since MinGW64 seems to define the _M_X64 macro through a header not available for config-win32.h.
2011-08-06config-win32.h: comments adjustmentsYang Tse
2011-08-05BSD-style lwIP TCP/IP stack support - followupYang Tse
2011-08-05keep a single copy of config-win32.h in version control repository.Yang Tse
maketgz and buildconf.bat updated to reflect this.
2011-08-04BSD-style lwIP TCP/IP stack support:Yang Tse
Allow compilation of libcurl and curl using BSD-style lwIP on Win32. In order to compile libcurl and curl with this support it is necessary to edit files lib/config-win32.h and src/config-win32.h and uncomment a line to make definition of preprocessor symbol USE_LWIPSOCK visible. Afterwards you can compile as usual. In order to use compiled library with BSD-style lwIP TCP/IP stack in your program it is mandatory that you include lwIP header file <lwip/opt.h> before including <curl/curl.h> or <curl/multi.h> Compilation has been verified with lwIP 1.4.0 and contrib-1.4.0 from: http://download.savannah.gnu.org/releases/lwip/lwip-1.4.0.zip http://download.savannah.gnu.org/releases/lwip/contrib-1.4.0.zip Have fun!
2011-07-24errno.h inclusion conditionally done in setup_once.hYang Tse
2011-03-10sources: update source headersDaniel Stenberg
All C and H files now (should) feature the proper project curl source code header, which includes basic info, a copyright statement and some basic disclaimers.
2011-01-12build: use external preprocessor cpp32 when building with Borland CYang Tse
2011-01-11Borland C++ doesnt have struct sockaddr_storage.Guenter Knauf
2010-12-02build: provide SIZEOF_SIZE_T definition for non-configure buildsYang Tse
2010-09-02Moved S_ISREG define to setup as suggested by Dan.Guenter Knauf
2010-09-02Added S_ISREG define for Win32.Guenter Knauf
2010-08-02Moved the LDAP API defines from Makefile.Watcom to config-win32.h.Guenter Knauf
These defines are only needed for older Watcom versions (< 1280).
2010-07-29Watcom makefiles overhaul.Guenter Knauf
- make both libcurl and curl makefiles use register calling convention (previously libcurl had stack calling convention). - added include paths to the Watcom headers so its no longer required to set the environment vars for this. - added -wcd=201 to supress compiler warning about unreachable code. - use macros for all tools, and removed dependency on GNU tools like rm. - make ipv6 and debug builds controlable via env vars and so make them optional instead of default. - commented WINLDAPAPI and WINBERAPI since they broke with OW 1.8, and it seems they're not needed (anymore?). - added rule for hugehelp.c.cvs so that it will be created when not already exist - this is required for building from a release tarball since there we have no hugehelp.c.cvs, thus compilation broke. - removed C_ARG creation from lib/Makefile.Watcom and use CFLAGS directly as done too in src/Makefile.Watcom - this has the benefit that we will see all active cflags and defines during compile. - added LINK-ARG to src/Makefile.Watcom in order to better control linker input. - a couple of other minor makefile tweaks here and there ... - added largefile support for Watcom builds to config-win32.h. Not yet tested if it really works, but should since Win32 supports it. - added loaddll stuff to speed up builds if supported.
2010-06-30build: add enable IPV6 option for the VC makefilesPierre Joye
2010-06-04Enable OpenLDAP support for cygwin builds.Yang Tse
Enable OpenLDAP support for cygwin builds. This support was disabled back in 2008 due to incompatibilities between OpenSSL and OpenLDAP headers. cygwin's OpenSSL 0.9.8l and OpenLDAP 2.3.43 versions on cygwin 1.5.25 allow building an OpenLDAP enabled libcurl supporting back to Windows 95. Remove non-functional CURL_LDAP_HYBRID code and references.