Fix curl_off_t definition for builds done using Sun compilers and a
non-configured libcurl. In this case curl_off_t data type was gated to the off_t data type which depends on the _FILE_OFFSET_BITS. This configuration is exactly the unwanted configuration for our curl_off_t data type which must not depend on such setting. This breaks ABI for libcurl libraries built with Sun compilers which were built without having run the configure script with _FILE_OFFSET_BITS different than 64 and using the ILP32 data model.
This commit is contained in:
Родитель
4c5307b456
Коммит
168fb3a8d8
10
CHANGES
10
CHANGES
|
@ -7,6 +7,16 @@
|
||||||
Changelog
|
Changelog
|
||||||
|
|
||||||
|
|
||||||
|
Yang Tse (2 Apr 2009)
|
||||||
|
- Fix curl_off_t definition for builds done using Sun compilers and a
|
||||||
|
non-configured libcurl. In this case curl_off_t data type was gated
|
||||||
|
to the off_t data type which depends on the _FILE_OFFSET_BITS. This
|
||||||
|
configuration is exactly the unwanted configuration for our curl_off_t
|
||||||
|
data type which must not depend on such setting. This breaks ABI for
|
||||||
|
libcurl libraries built with Sun compilers which were built without
|
||||||
|
having run the configure script with _FILE_OFFSET_BITS different than
|
||||||
|
64 and using the ILP32 data model.
|
||||||
|
|
||||||
Daniel Stenberg (1 Apr 2009)
|
Daniel Stenberg (1 Apr 2009)
|
||||||
- Andre Guibert de Bruet fixed a NULL pointer use in an infof() call if a
|
- Andre Guibert de Bruet fixed a NULL pointer use in an infof() call if a
|
||||||
strdup() call failed.
|
strdup() call failed.
|
||||||
|
|
|
@ -24,6 +24,7 @@ This release includes the following bugfixes:
|
||||||
o missing Curl_read() and write callback result checking in TELNET transfers
|
o missing Curl_read() and write callback result checking in TELNET transfers
|
||||||
o more ciphers enabled in libcurl built to use NSS
|
o more ciphers enabled in libcurl built to use NSS
|
||||||
o properly return an error code in curl_easy_recv
|
o properly return an error code in curl_easy_recv
|
||||||
|
o fixed curl_off_t definition for non-configured builds with Sun compilers
|
||||||
|
|
||||||
This release includes the following known bugs:
|
This release includes the following known bugs:
|
||||||
|
|
||||||
|
|
|
@ -443,25 +443,33 @@
|
||||||
/* ===================================== */
|
/* ===================================== */
|
||||||
|
|
||||||
#elif defined(__SUNPRO_C) || defined(__SUNPRO_CC)
|
#elif defined(__SUNPRO_C) || defined(__SUNPRO_CC)
|
||||||
#include <sys/types.h>
|
# if defined(_LP64)
|
||||||
#include <stdint.h>
|
# define CURL_SIZEOF_LONG 8
|
||||||
|
# define CURL_TYPEOF_CURL_OFF_T long
|
||||||
# define CURL_TYPEOF_CURL_OFF_T off_t
|
# define CURL_FORMAT_CURL_OFF_T "ld"
|
||||||
# define CURL_SIZEOF_CURL_OFF_T 8
|
# define CURL_FORMAT_CURL_OFF_TU "lu"
|
||||||
# if defined(__amd64) || defined(__sparcv9)
|
# define CURL_FORMAT_OFF_T "%ld"
|
||||||
# define CURL_SIZEOF_LONG 8
|
# define CURL_SIZEOF_CURL_OFF_T 8
|
||||||
# define CURL_FORMAT_CURL_OFF_T "ld"
|
# define CURL_SUFFIX_CURL_OFF_T L
|
||||||
# define CURL_FORMAT_CURL_OFF_TU "lu"
|
# define CURL_SUFFIX_CURL_OFF_TU UL
|
||||||
# define CURL_FORMAT_OFF_T "%ld"
|
# elif defined(__STDC__) && (__STDC__ == 1)
|
||||||
# define CURL_SUFFIX_CURL_OFF_T L
|
# define CURL_SIZEOF_LONG 4
|
||||||
# define CURL_SUFFIX_CURL_OFF_TU UL
|
# define CURL_TYPEOF_CURL_OFF_T long
|
||||||
|
# define CURL_FORMAT_CURL_OFF_T "ld"
|
||||||
|
# define CURL_FORMAT_CURL_OFF_TU "lu"
|
||||||
|
# define CURL_FORMAT_OFF_T "%ld"
|
||||||
|
# define CURL_SIZEOF_CURL_OFF_T 4
|
||||||
|
# define CURL_SUFFIX_CURL_OFF_T L
|
||||||
|
# define CURL_SUFFIX_CURL_OFF_TU UL
|
||||||
# else
|
# else
|
||||||
# define CURL_SIZEOF_LONG 4
|
# define CURL_SIZEOF_LONG 4
|
||||||
# define CURL_FORMAT_CURL_OFF_T "lld"
|
# define CURL_TYPEOF_CURL_OFF_T long long
|
||||||
# define CURL_FORMAT_CURL_OFF_TU "llu"
|
# define CURL_FORMAT_CURL_OFF_T "lld"
|
||||||
# define CURL_FORMAT_OFF_T "%lld"
|
# define CURL_FORMAT_CURL_OFF_TU "llu"
|
||||||
# define CURL_SUFFIX_CURL_OFF_T LL
|
# define CURL_FORMAT_OFF_T "%lld"
|
||||||
# define CURL_SUFFIX_CURL_OFF_TU ULL
|
# define CURL_SIZEOF_CURL_OFF_T 8
|
||||||
|
# define CURL_SUFFIX_CURL_OFF_T LL
|
||||||
|
# define CURL_SUFFIX_CURL_OFF_TU ULL
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
/* ===================================== */
|
/* ===================================== */
|
||||||
|
|
Загрузка…
Ссылка в новой задаче