This is the mail archive of the mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: How can you change the DLL name in the .idata section headerof a DLL?

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:


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

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

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]