How can you change the DLL name in the .idata section header of a DLL?

Reini Urban rurban@x-ray.at
Thu Sep 30 16:33:00 GMT 2004


Corinna Vinschen schrieb:
> On Sep 29 17:20, Charles Wilson wrote:
>>Reini Urban wrote:
>>>Spoofing is a good point.
>>>But I might prefer to be able to update dynamic dependencies without 
>>>breakage. openssl usually gets updated with an security issue.
>>>e.g curl or postgresql cannot deal with an openssl update which deletes 
>>>cygssl-0.9.7.dll and replaces that with cygssl-0.9.8.dll.
>>>If we had just a cygssl.dll we can simply upgrade that and nothing breaks.
>>
>>That's the way most other DLLs on cygwin are named.  But cygssl is 
>>different -- as a security/encryption DLL, considerations other that 
>>"ease of slipstream replacement" are more important.  Usually there is a 
>>reason when a maintainer chooses to go against the common practice: 
>>openssl is one of those.
> 
> 
> I'm not quite sure if I understand exactly what you are up to, Charles,
> but Reini, you're definitely wrong here.
> 
> The numbering scheme of OpenSSL is so that 0.9.7 is a *major* version
> number.  The minor versions, which are bug fixes and security updates
> are using an addition lower case letter, following the major version
> number, as you can see if you scan through the cygwin-announce archives:
> 
>   0.9.7a
>   0.9.7b
>   0.9.7c
>   0.9.7d
> 
> The version 0.9.8 will be the next major version and this *will* break
> backward compatibility.  The same happened at the step from 0.9.6 to
> 0.9.7 and that was the reason that I began using the openssl naming
> scheme.
> 
> So, bottom line is this:  Security updates of 0.9.7 will still be named
> 0.9.7 so there's no backward compatibility breakage for depending
> packages.  0.9.8 is a major version update and will use new DLL names,
> but I will keep 0.9.7 around as well, at least until all depending
> packages in the distro have upgraded by linking against 0.9.8.
> 
> That's basically what Charles and other do, just the naming scheme
> is different because the OpenSSL project doesn't use libtool.

Thanks. I responded on the cygwin list.

Yes, I was wrong and now I finally can see the light
with dll versioning. thanks to charles.
-- 
Reini Urban
http://xarch.tu-graz.ac.at/home/rurban/



More information about the Cygwin-apps mailing list