zlib1.2.3
Martin Buchholz
martinrb at google.com
Mon Aug 24 18:46:16 UTC 2009
On Mon, Aug 24, 2009 at 11:06, Xueming Shen<Xueming.Shen at sun.com> wrote:
> Florian Weimer wrote:
>>
>> * Martin Buchholz:
>>
>>
>>>
>>> 45 +#ifdef _LP64
>>> 46 +typedef unsigned int uLong; /* 32 bits or more */
>>> 47 +#else
>>> 48 typedef unsigned long uLong; /* 32 bits or more */
>>> 49 +#endif
>>>
>>
>> This is guaranteed to break interoperability with the system zlib. If
>> you want to make such adjustments, you really have to rename all
>> functions to avoid name clashes. Such clashes materialize if you load
>> a DSO which contains code linked to the system zlib (usually via JNI).
>>
>> Technically, this is not a regression because OpenJDK's existing zlib
>> 1.1 code is incompatible with 1.2 zlibs used on most systems, so the
>> same problem happens.
>>
>>
>
> None of the zlib functions/methods is exported from libzip.o as "glocal"
> symbol, we are using
> make/java/zip/mapfile_vers to make them "local". Those zlib methods are
> supposed to be
> only accessed by our "own" jar/zip jnis. So what is exactly the
> "interoperability with the system
> zlib" concern here?
>
Sherman: Running "nm" on jdk7 binaries suggests that you are right.
Florian: Do you have a test case demonstrating zlib failure due to
namespace contamination?
Martin
More information about the core-libs-dev
mailing list