• Show log

    Commit

  • Hash : e7cf8c57
    Author : Guillem Jover
    Date : 2021-11-28T22:44:08

    Switch md5 compatibility logic back to direct linking
    
    When using the recent dlsym() based wrapper, we are not requiring any
    symbol from libmd, as we resolve those dynamically at run-time. We were
    ending up linking against libmd because in another part of the code we
    require (depending on the architecture) the SHA512 functions for the
    getentropy() local implementation. But that function might be provided
    by the system libc on some systems, which means we end up not linking
    against libmd at all.
    
    To solve this we go back to the previous simpler solution of linking
    directly, which had the main drawback of then making programs fail to
    link when not specifying -lmd (on platforms that need it). And then
    switch the .so link point from a symlink to a linker script, so that we
    can inject the -lmd library as-needed. This is similar to what glibc is
    doing.
    
    Fixes: commit 31f034e3862debda8615a449b1c11c4d6920dcc7