On Sun, Jan 25, 2015 at 10:35 PM, Matthew Barr <mb...@mbarr.net> wrote:
> The real question is what happens if you use a different version of > openssl for compiling Middle than you do for Top. Depends on whether Middle and Top are exchanging OpenSSL-related values (e.g. SSL connection handles), or using them independently. In the former case, you need versions to match (and ideally for Middle to re-export the stuff it uses from OpenSSL, possibly wrapped, and Top to get its dependency from that by using the Middle-provided wrapper). In the latter case, it doesn't matter any more than whether an OpenSSL client and server are using the same version --- *unless* the library in question uses a common global table for some kind of global state, in which case initializing it from one version will cause calls made from the other version to behave erratically. (I don't recall OpenSSL doing this. libiconv does, which is why building software on a Mac runs into symbol errors involving libiconv so often: the symbol errors are forced, since otherwise you'd find out when your program dumped core in one of the iconv library calls.) See "diamond dependency problem" for a variant of the first case. -- brandon s allbery kf8nh sine nomine associates allber...@gmail.com ballb...@sinenomine.net unix, openafs, kerberos, infrastructure, xmonad http://sinenomine.net
_______________________________________________ Tech mailing list Tech@lists.lopsa.org https://lists.lopsa.org/cgi-bin/mailman/listinfo/tech This list provided by the League of Professional System Administrators http://lopsa.org/