Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 555076 - net-ftp/proftpd service emits a warning after upgrading sqlite
Summary: net-ftp/proftpd service emits a warning after upgrading sqlite
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Server (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Sergei Trofimovich (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-07-16 14:13 UTC by Matthew Schultz
Modified: 2016-04-13 23:13 UTC (History)
2 users (show)

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 Matthew Schultz 2015-07-16 14:13:49 UTC
When I restart proftpd after upgrading proftpd, it outputs this warning message:

/etc/init.d/proftpd restart
 * Stopping ProFTPD ...
Checking syntax of configuration file
2015-07-16 09:06:28,981 bilbodev proftpd[3008]: mod_sql_sqlite/0.4: compiled using SQLite version '3.8.10.1' headers, but linked to SQLite version '3.8.10.2' library
Syntax check complete.                                                                                                                                                                                       [ ok ]
 * Starting ProFTPD ... 

emerge @preserved-rebuild or revdep-rebuild does not detect the difference in library versions.

Reproducible: Always

Steps to Reproduce:
1. Upgrade sqlite
2. Restart proftpd
3. Notice a warning message about sqlite being a different version than proftpd was compiled with.
Actual Results:  
proftpd emits a warning message when restarting/starting the init script

Expected Results:  
proftpd should not emit a warning message for minor version (slot 3) differences or the ebuild should trigger a rebuild of proftpd when sqlite is upgraded.

emerge -pv proftpd sqlite

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R    ] dev-db/sqlite-3.8.10.2:3::gentoo  USE="icu readline secure-delete -debug -doc -static-libs -tcl {-test} -tools" ABI_X86="32 (64) (-x32)" 0 KiB
[ebuild   R    ] net-ftp/proftpd-1.3.5a::gentoo  USE="acl caps ipv6 mysql ncurses nls openssl pam pcre sqlite ssl tcpd -authfile -ban -case -clamav -copy -ctrls -deflate -diskuse -doc -dso -dynmasq -exec -ident -ifsession -ifversion -kerberos -ldap -log_forensic -memcache -msg -postgres -qos -radius -ratio -readme -rewrite (-selinux) -sftp -shaper -sitemisc -snmp -softquota {-test} -trace -unique_id -vroot -xinetd" LINGUAS="-bg_BG -en_US -fr_FR -it_IT -ja_JP -ko_KR -ru_RU -zh_CN -zh_TW" 0 KiB
Comment 1 Sergei Trofimovich (RETIRED) gentoo-dev 2015-07-18 10:26:30 UTC
I don't know if sqlite maintains ABI compatibility promises.

If it does i'll be happy to tweak proftpd to match the reality.
Comment 2 Arfrever Frehtes Taifersar Arahesis 2015-07-20 06:56:31 UTC
AFAIK ABI compatibility is maintained in SQLite.
Comment 3 Sergei Trofimovich (RETIRED) gentoo-dev 2016-04-11 20:47:03 UTC
There is a few 'pr_log_pri(PR_LOG_WARNING' calls:

contrib/mod_sftp/mod_sftp.c-      pr_log_pri(PR_LOG_WARNING, MOD_SFTP_VERSION
contrib/mod_sftp/mod_sftp.c:        ": compiled using OpenSSL version '%s' headers, but linked to "
--
contrib/mod_sql_sqlite.c-    pr_log_pri(PR_LOG_WARNING, MOD_SQL_SQLITE_VERSION
contrib/mod_sql_sqlite.c:      ": compiled using SQLite version '%s' headers, but linked to "
--
contrib/mod_tls.c-      pr_log_pri(PR_LOG_WARNING, MOD_TLS_VERSION
contrib/mod_tls.c:        ": compiled using OpenSSL version '%s' headers, but linked to "
--
contrib/mod_tls.c-        SSLeay_version(SSLEAY_VERSION));
contrib/mod_tls.c:      tls_log("compiled using OpenSSL version '%s' headers, but linked to "
--
doc/contrib/mod_sftp.html-<pre>
doc/contrib/mod_sftp.html:  - mod_sftp/0.9.7: compiled using OpenSSL version 'OpenSSL 0.9.8n 24 Mar 2010' headers, but linked $
--
doc/howto/TLS.html- - mod_tls/2.2: compiled using OpenSSL version 'OpenSSL 0.9.7i 14 Oct 2005'
doc/howto/TLS.html:headers, but linked to OpenSSL version 'OpenSSL 0.9.7l 28 Sep 2006' library
--
modules/mod_memcache.c-    pr_log_pri(PR_LOG_WARNING, MOD_MEMCACHE_VERSION
modules/mod_memcache.c:      ": compiled using libmemcached-%s headers, but linked to "

Gentoo claims that:
- OpenSSL ABI changed ABI only once: 0.9.8 to -> 1.0.0 (thus modern security upgrades cause these warnings but don't require rebuilds)
- SQLite didn't change ABI recently
- libmemcached didn't change ABI recently

TJ, what do you think of downgrading those down to PR_LOG_NOTICE / PR_LOG_INFO?
Comment 4 TJ Saunders 2016-04-11 20:55:03 UTC
OpenSSL's ABI, prior to 1.x, has been unable, so I'd like to keep those log messages as WARNING; the recent proftpd releases try to be a little better about those, specifically.

I'm OK with changing the libmemcached/SQLite log messages to INFO, as those projects seem to do a better job of maintaining compatibility.
Comment 6 Sergei Trofimovich (RETIRED) gentoo-dev 2016-04-13 23:13:14 UTC
Psuhed to proftpd-1.3.5b-r1 ebuild as: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=563929d695450a785859a044140a38ca869b97be

Thanks all!