[openssl-dev] Question about dynamically loadable engines on Cygwin / Mingw

Richard Levitte levitte at openssl.org
Mon Feb 15 23:16:56 UTC 2016


In message <20160215.185953.117619649162395329.levitte at openssl.org> on Mon, 15 Feb 2016 18:59:53 +0100 (CET), Richard Levitte <levitte at openssl.org> said:

levitte> In message <56C210E7.5080804 at oracle.com> on Mon, 15 Feb 2016 17:54:47 +0000, Jeremy Farrell <jeremy.farrell at oracle.com> said:
levitte> 
levitte> jeremy.farrell> It sounds good, except shouldn't it be "capi.so" for
levitte> jeremy.farrell> cygwin, like the other mainstream POSIXy
levitte> jeremy.farrell> implementations? The point of cygwin is that it's
levitte> jeremy.farrell> POSIX not Windows, and it generally follows common
levitte> jeremy.farrell> practices of POSIXy OSes for things which aren't
levitte> jeremy.farrell> specified by POSIX. It seems that it would be simpler
levitte> jeremy.farrell> all round (for users as well as development) to treat
levitte> jeremy.farrell> it the same as "normal" UNIX-like OSes except when it
levitte> jeremy.farrell> absolutely has to be treated differently.
levitte> 
levitte> In practice, it really doesn't matter, it all comes down what the DSO
levitte> module supports, and the way I'm coding this, Configure will decide.
levitte> So it's a preference and nothing else.  Me, I don't particularly care,
levitte> but if it disturbs the Cygwin community to see one .dll too many, I'm
levitte> ready to make the necessary changes (it's literally one line of code
levitte> to change).

I had myself a look around in my little installation, and tried these
two commands:

    find /usr/lib -name '*.so'

    find /usr/lib -name '*.dll'

The first one didn't even return a screenfull (in my 25 line terminal
screen), and the overwhelming majority was OpenSSL 1.0.2 engines ;-)

The second one, on the other hand, gave a *lot* more output.  All
aspell, babl, gawk, gegl, perl(!) loadable modules are named with
the FOO.dll naming convention (there are a few packages, a minority,
that have named them cygFOO.dll)...  and the list goes on.

So looking at how things seem to be done normally, I feel confident
that FOO.dll is a sane choice, even though not strictly POSIX in its
file name extension.  And like I said, it matters very little for any
user, the goal is to allow this kind of command line:

    openssl s_server -engine FOO

No extension, just a name for the user to worry about.

Cheers,
Richard

-- 
Richard Levitte         levitte at openssl.org
OpenSSL Project         http://www.openssl.org/~levitte/


More information about the openssl-dev mailing list