Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 521024

Summary: x11-libs/motif fails to compile with format-security
Product: Gentoo Linux Reporter: Agostino Sarubbo <ago>
Component: Current packagesAssignee: Ulrich Müller <ulm>
Status: RESOLVED INVALID    
Severity: normal CC: eschwartz93, pacho, toralf
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 713576, 259417    
Attachments: motif-2.3.4-r2:20140825-210538.log

Description Agostino Sarubbo gentoo-dev 2014-08-26 10:40:27 UTC
This is an auto-filled bug because this package fails to compile with format-security. To reproduce use CFLAGS -Werror=format-security.

Portage 2.2.8-r1 (default/linux/amd64/13.0, gcc-4.7.3, glibc-2.19-r1, 3.2.61-hardened-r2-xxxx-std-ipv6-64 x86_64)
=================================================================
System uname: Linux-3.2.61-hardened-r2-xxxx-std-ipv6-64-x86_64-Intel-R-_Xeon-R-_CPU_E3-1245_V2_@_3.40GHz-with-gentoo-2.2
KiB Mem:    32857344 total,  21548488 free
KiB Swap:          0 total,         0 free
ld ld di GNU (Gentoo 2.23.2 p1.0) 2.23.2
app-shells/bash:          4.2_p45
dev-java/java-config:     2.2.0
dev-lang/python:          2.7.7, 3.2.5-r6, 3.3.5-r1
dev-util/cmake:           2.8.12.2-r1
dev-util/pkgconfig:       0.28-r1
sys-apps/baselayout:      2.2
sys-apps/openrc:          0.12.4
sys-apps/sandbox:         2.6-r1
sys-devel/autoconf:       2.13, 2.69
sys-devel/automake:       1.13.4
sys-devel/binutils:       2.23.2
sys-devel/gcc:            4.7.3-r1
sys-devel/gcc-config:     1.7.3
sys-devel/libtool:        2.4.2-r1
sys-devel/make:           3.82-r4
sys-kernel/linux-headers: 3.13 (virtual/os-headers)
sys-libs/glibc:           2.19-r1
Repositories: gentoo x-portage
ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -Wformat -Werror=format-security -g0 -O2"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.3/ext-active/ /etc/php/apache2-php5.4/ext-active/ 
/etc/php/apache2-php5.5/ext-active/ /etc/php/cgi-php5.3/ext-active/ /etc/php/cgi-php5.4/ext-active/ /etc/php/cgi-php5.5/ext-active/ /etc/php/cli-php5.3/ext-active/ 
/etc/php/cli-php5.4/ext-active/ /etc/php/cli-php5.5/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d 
/etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=native -Wformat -Werror=format-security -g0 -O2"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--with-bdeps y --keep-going y -1"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs collision-protect config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync multilib-strict news parallel-fetch preserve-libs 
protect-owned sandbox sfperms sign split-log strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="it_IT.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu"
MAKEOPTS="-j8"
PKGDIR="/root/.pkg"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 
--exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X acl amd64 berkdb bzip2 cairo cli consolekit cracklib crypt cxx dbus dri fortran gdbm gudev hwdb iconv icu ipv6 jpeg minizip mmx modules multilib ncurses nls nptl ogg openmp pam 
pax_kernel pcre png policykit python qt3support qt4 readline session sse sse2 ssl tcpd unicode vorbis zlib" ABI_X86="64" ELIBC="glibc" KERNEL="linux" 
LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="am fil zh af ca cs da de el es et gl hu nb nl pl pt ro ru sk sl sv uk bg cy en eo fo ga he id ku lt lv mk ms nn 
sw tn zu ja zh_TW en_GB pt_BR ko zh_CN ar en_CA fi kk oc sr tr fa wa nds as be bn bn_BD bn_IN en_US es_AR es_CL es_ES es_MX eu fy fy_NL ga_IE gu gu_IN hi hi_IN is ka kn ml mr nn_NO or 
pa pa_IN pt_PT rm si sq sv_SE ta ta_LK te th vi ast dz km my om sh ug uz ca@valencia sr@ijekavian sr@ijekavianlatin sr@latin csb hne mai se es_LA fr_CA zh_HK br la no es_CR et_EE 
sr_CS bo hsb hy mn sr@Latn lb ne bs tg uz@cyrillic xh be_BY brx ca_XV dgo en_ZA gd kok ks ky lo mni nr ns pap ps rw sa_IN sat sd ss st sw_TZ ti ts ve mt ia az me tl ak hy_AM lg nso 
son ur_PK it fr nb nb_NO hr nan ur tk cs_CZ da_DK de_1901 de_CH en_AU lt_LT pl_PL sa sk_SK th_TH ta_IN tt sco ha mi ven ar_SY el_GR ro_RO ru_RU sl_SI uk_UA vi_VN ar_SY te_IN de_DE 
es_VE fa_IR fr_FR hu_HU id_ID it_IT ja_JP ka_GE nl_NL sr_BA sr_RS ca_ES fi_FI he_IL jv ru_gold yi eu_ES" NGINX_MODULES_HTTP="access auth_basic autoindex browser charset empty_gif 
fastcgi geo gzip limit_conn limit_req map memcached proxy referer rewrite scgi split_clients ssi upstream_ip_hash userid uwsgi addition auth_pam cache_purge dav dav_ext degradation 
echo fancyindex flv geoip gunzip gzip_static headers_more image_filter lua metrics mp4 naxsi perl push push_stream random_index realip secure_link security slowfs_cache spdy 
stub_status sub upload_progress upstream_check xslt ajp auth_request mogilefs sticky" NGINX_MODULES_MAIL="imap pop3 smtp" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-4 
php5-5" PYTHON_SINGLE_TARGET="python2_7 python3_3" PYTHON_TARGETS="python2_7 python3_3" RUBY_TARGETS="ruby19 ruby20" USERLAND="GNU"
USE_PYTHON="2.7 3.3"
Comment 1 Agostino Sarubbo gentoo-dev 2014-08-26 10:40:32 UTC
Created attachment 383664 [details]
motif-2.3.4-r2:20140825-210538.log

build log
Comment 2 Ulrich Müller gentoo-dev 2014-08-26 11:47:21 UTC
Can you also report this upstream, please?
Comment 3 Ulrich Müller gentoo-dev 2014-08-26 12:43:14 UTC
These are false positives. Looking at the lines where the warning is reported, they are all of the form (e.g. line 267 in lib/Mrm/Mrmhier.c):

    sprintf (err_stg, _MrmMMsg_0113);

The messages are defined in lib/Mrm/MrmMessages.c, for example:

    externaldef(mrmmsg) _MrmConst char *_MrmMsg_0113 =
       "Could not open buffer - UID version mismatch";

This looks like a perfect string literal to me, therefore no security issue that should be warned about.
Comment 4 Agostino Sarubbo gentoo-dev 2014-12-26 19:31:15 UTC
are you sure?

take a look at: http://bugs.motifzone.net/show_bug.cgi?id=1574
Comment 5 Ulrich Müller gentoo-dev 2014-12-26 21:09:24 UTC
In the patch attached to the upstream bug I still see only false positives. There is not a single instance of a format string from untrusted input.
Comment 6 Agostino Sarubbo gentoo-dev 2014-12-26 21:59:24 UTC
ok, the point is:

- atm motif fails to compile with format-security but maybe they are false positive.
- We are not here to monitoring the motif code, but tomorrow we could have a format-security from untrusted input. So if you fix it now, we can track other future problems.
-If you don't fix it I just avoid to compile it with format-security in the future.
Comment 7 Ulrich Müller gentoo-dev 2014-12-26 23:45:35 UTC
I can apply a patch that has been accepted upstream. However, I won't locally patch perfectly working code (and risk introducing real bugs), only to work around deficiencies in gcc's error reporting.

Alternatively, we could filter the flag in the motif ebuild.
Comment 8 Ulrich Müller gentoo-dev 2020-03-23 15:59:06 UTC
*** Bug 714080 has been marked as a duplicate of this bug. ***