Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 307641 - dev-db/mysql-5.1.* changes SSL library defaults compared to 5.0.*
Summary: dev-db/mysql-5.1.* changes SSL library defaults compared to 5.0.*
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Server (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Linux MySQL bugs team
URL: http://dev.mysql.com/doc/refman/5.1/e...
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-03-03 16:59 UTC by Brian Evans (RETIRED)
Modified: 2010-03-09 20:38 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Brian Evans (RETIRED) gentoo-dev 2010-03-03 16:59:58 UTC
The meaning of the option of --with-ssl changed from 5.0 to 5.1.

In 5.0, --with-ssl chose the system OpenSSL library over the yaSSL:
        linux-vdso.so.1 =>  (0x00007fff737ff000)
        libpthread.so.0 => /lib/libpthread.so.0 (0x00007f9a32625000)
        libz.so.1 => /lib/libz.so.1 (0x00007f9a3240f000)
        libdl.so.2 => /lib/libdl.so.2 (0x00007f9a3220b000)
        libssl.so.0.9.8 => /usr/lib/libssl.so.0.9.8 (0x00007f9a31fba000)
        libcrypto.so.0.9.8 => /usr/lib/libcrypto.so.0.9.8 (0x00007f9a31c30000)
        libcrypt.so.1 => /lib/libcrypt.so.1 (0x00007f9a319f8000)
        libnsl.so.1 => /lib/libnsl.so.1 (0x00007f9a317e0000)
        libstdc++.so.6 => /usr/lib/gcc/x86_64-pc-linux-gnu/4.3.4/libstdc++.so.6 (0x00007f9a314d6000)
        libm.so.6 => /lib/libm.so.6 (0x00007f9a31253000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00007f9a3103c000)
        libc.so.6 => /lib/libc.so.6 (0x00007f9a30ce3000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f9a32841000)

With 5.1, the option default changed per the URL 
http://dev.mysql.com/doc/refman/5.1/en/upgrading-from-previous-series.html.

Now, --with-ssl would choose the bundled yaSSL and --with-ssl=/usr (for Gentoo) will choose the system OpenSSL library.

Reproducible: Always

Actual Results:  
mysql ldd:
        linux-vdso.so.1 =>  (0x00007fff69b84000)
        libpthread.so.0 => /lib/libpthread.so.0 (0x00007fd6babf1000)
        libz.so.1 => /lib/libz.so.1 (0x00007fd6ba9db000)
        libdl.so.2 => /lib/libdl.so.2 (0x00007fd6ba7d7000)
        libcrypt.so.1 => /lib/libcrypt.so.1 (0x00007fd6ba59f000)
        libnsl.so.1 => /lib/libnsl.so.1 (0x00007fd6ba387000)
        libstdc++.so.6 => /usr/lib/gcc/x86_64-pc-linux-gnu/4.3.4/libstdc++.so.6 (0x00007fd6ba07d000)
        libm.so.6 => /lib/libm.so.6 (0x00007fd6b9dfa000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00007fd6b9be3000)
        libc.so.6 => /lib/libc.so.6 (0x00007fd6b988a000)
        /lib64/ld-linux-x86-64.so.2 (0x00007fd6bae0d000)


Expected Results:  
mysqld ldd:
        linux-vdso.so.1 =>  (0x00007fff737ff000)
        libpthread.so.0 => /lib/libpthread.so.0 (0x00007f9a32625000)
        libz.so.1 => /lib/libz.so.1 (0x00007f9a3240f000)
        libdl.so.2 => /lib/libdl.so.2 (0x00007f9a3220b000)
        libssl.so.0.9.8 => /usr/lib/libssl.so.0.9.8 (0x00007f9a31fba000)
        libcrypto.so.0.9.8 => /usr/lib/libcrypto.so.0.9.8 (0x00007f9a31c30000)
        libcrypt.so.1 => /lib/libcrypt.so.1 (0x00007f9a319f8000)
        libnsl.so.1 => /lib/libnsl.so.1 (0x00007f9a317e0000)
        libstdc++.so.6 => /usr/lib/gcc/x86_64-pc-linux-gnu/4.3.4/libstdc++.so.6 (0x00007f9a314d6000)
        libm.so.6 => /lib/libm.so.6 (0x00007f9a31253000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00007f9a3103c000)
        libc.so.6 => /lib/libc.so.6 (0x00007f9a30ce3000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f9a32841000)
Comment 1 Robin Johnson archtester Gentoo Infrastructure gentoo-dev Security 2010-03-03 23:57:35 UTC
Fixed in the eclass, not throwing out a new revision yet as I've got some other upcoming changes that will need one.
Comment 2 Brian Evans (RETIRED) gentoo-dev 2010-03-04 17:51:58 UTC
Not fixed in the eclass..

The change was made to configure_40_41_50() which now lists:
if mysql_version_is_at_least "5.1.11" ; then
     myconf="${myconf} $(use_with ssl /usr)"
else
     myconf="${myconf} $(use_with ssl openssl)"
fi

However, this is never checked according to mysql_src_configure (lines 759-763)
if mysql_version_is_at_least "5.1.10" ; then
     configure_51
else
     configure_40_41_50
fi

The variable should be fixed in configure_51 instead, and possibly remove the confusing lines from configure_40_41_50.
Comment 3 Brian Evans (RETIRED) gentoo-dev 2010-03-04 21:59:43 UTC
In addition..
$(use_with ssl /usr) becomes "--with-/usr" instead of "--with-ssl=/usr" when it is used by an ebuild (tested in personal overlay).
Comment 4 Robin Johnson archtester Gentoo Infrastructure gentoo-dev Security 2010-03-09 20:38:14 UTC
Fixed better now.