[debian-mysql] Bug#850142: libmariadb-dev: mariadb_config emits trailing binary bullshit on mips64el

Andreas Beckmann anbe at debian.org
Wed Jan 4 11:39:17 UTC 2017


Package: libmariadb-dev
Version: 2.3.1-1
Severity: important
Control: affects -1 + src:rmysql

(severity should be serious, will raise after the next britney run)

(sid_mips64el-dchroot)anbe at eller:~$ mariadb_config
Copyright 2011-2015 MariaDB Corporation AB
Get compiler flags for using the MariaDB Connector/C.
Usage: mariadb_config [OPTIONS]
  --cflags        [-I/usr/include/mariadb -I/usr/include/mariadb/mysql -g -O2 -fdebug-prefix-map=/build/mariadb-connector-c-dopxmU/mariadb-connector-c-2.3.1=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2  -Wunused -Wno-uninitialized]
  --include       [-I/usr/include/mariadb -I/usr/include/mariadb/mysql]
  --libs          [-L/usr/lib/mips64el-linux-gnuabi64 -lmariadb]
  --libs_r        [-L/usr/lib/mips64el-linux-gnuabi64 -lmariadb]
  --version       [5.5.1]
  --socket        [/var/run/mysqld/mysqld.sock]
  --port          [3306]
  --plugindir     [/usr/lib/mips64el-linux-gnuabi64/mariadb/plugin]
  --plugindir     [/usr/lib/mips64el-linux-gnuabi64/mariadb/plugin]
ql]
g -O2 -fdebug-prefix-map=/build/mariadb-connector-c-dopxmU/mariadb-connector-c-2.3.1=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2  -Wunused -Wno-uninitialized]
�

Looks like some buffer is printed twice (starting at the second --plugindir)
and this includes all *bytes* from the buffer, ignoring zero termination.
Redirecting this to a file (or piping through hd) does not give the the duplicate
--plugindir setting, but a lot of \0 bytes (and three non-\0 bytes) at the end.
Running mariadb_config with some arguments emits similar trailing binary crap.


(sid_mips64el-dchroot)anbe at eller:~$ mariadb_config | hd | tail -n 20
00000540  75 73 72 2f 6c 69 62 2f  6d 69 70 73 36 34 65 6c  |usr/lib/mips64el|
00000550  2d 6c 69 6e 75 78 2d 67  6e 75 61 62 69 36 34 20  |-linux-gnuabi64 |
00000560  2d 6c 6d 61 72 69 61 64  62 5d 0a 20 20 2d 2d 76  |-lmariadb].  --v|
00000570  65 72 73 69 6f 6e 20 20  20 20 20 20 20 5b 35 2e  |ersion       [5.|
00000580  35 2e 31 5d 0a 20 20 2d  2d 73 6f 63 6b 65 74 20  |5.1].  --socket |
00000590  20 20 20 20 20 20 20 5b  2f 76 61 72 2f 72 75 6e  |       [/var/run|
000005a0  2f 6d 79 73 71 6c 64 2f  6d 79 73 71 6c 64 2e 73  |/mysqld/mysqld.s|
000005b0  6f 63 6b 5d 0a 20 20 2d  2d 70 6f 72 74 20 20 20  |ock].  --port   |
000005c0  20 20 20 20 20 20 20 5b  33 33 30 36 5d 0a 20 20  |       [3306].  |
000005d0  2d 2d 70 6c 75 67 69 6e  64 69 72 20 20 20 20 20  |--plugindir     |
000005e0  5b 2f 75 73 72 2f 6c 69  62 2f 6d 69 70 73 36 34  |[/usr/lib/mips64|
000005f0  65 6c 2d 6c 69 6e 75 78  2d 67 6e 75 61 62 69 36  |el-linux-gnuabi6|
00000600  34 2f 6d 61 72 69 61 64  62 2f 70 6c 75 67 69 6e  |4/mariadb/plugin|
00000610  5d 0a 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |]...............|
00000620  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00001310  00 f1 0f 02 00 00 00 00  00 00 00 00 00 00 00 00  |................|
00001320  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00022309


This breaks the rmysql configure script.


While you are it it, please filter out -fdebug-prefix-map=* from the cflags.


Andreas



More information about the pkg-mysql-maint mailing list