Bug #20664 Unprivileged SHOW CREATE FUNCTION crashes 'mysql' command line client
| Submitted: | 23 Jun 2006 15:01 | Modified: | 2 Aug 2006 18:41 |
|---|---|---|---|
| Reporter: | Tomash Brechko | Email Updates: | |
| Status: | Closed | Impact on me: | |
| Category: | MySQL Server: Command-line Clients | Severity: | S3 (Non-critical) |
| Version: | 5.0.23-BK, 5.1.12-beta-BK | OS: | Linux (Linux) |
| Assigned to: | Tomash Brechko | CPU Architecture: | Any |
[23 Jun 2006 15:01]
Tomash Brechko
[23 Jun 2006 15:11]
Valeriy Kravchuk
Thank you for a problem report. Sorry, but I was not able to repeat on my SuSE 9.3, neither with 5.0.23-BK, nor with 5.1.12-BK-debug builds: mysql> CREATE FUNCTION f2() RETURNS INT RETURN 0; Query OK, 0 rows affected (0.00 sec) mysql> create user bug@localhost; Query OK, 0 rows affected (0.08 sec) mysql> exit Bye openxs@suse:~/dbs/5.0> bin/mysql -ubug test Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 6 to server version: 5.0.23 Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> select user(); +---------------+ | user() | +---------------+ | bug@localhost | +---------------+ 1 row in set (0.02 sec) mysql> SHOW CREATE FUNCTION f2; +----------+----------+-----------------+ | Function | sql_mode | Create Function | +----------+----------+-----------------+ | f2 | | | +----------+----------+-----------------+ 1 row in set (0.01 sec) mysql> SHOW CREATE FUNCTION f2; +----------+----------+-----------------+ | Function | sql_mode | Create Function | +----------+----------+-----------------+ | f2 | | | +----------+----------+-----------------+ 1 row in set (0.01 sec) mysql> SHOW CREATE FUNCTION f2; +----------+----------+-----------------+ | Function | sql_mode | Create Function | +----------+----------+-----------------+ | f2 | | | +----------+----------+-----------------+ 1 row in set (0.01 sec) openxs@suse:~/dbs/5.1> bin/mysql -uroot test Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 2 to server version: 5.1.12-beta-debug Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> CREATE FUNCTION f2() RETURNS INT RETURN 0; Query OK, 0 rows affected (0.05 sec) mysql> create user bug@localhost; Query OK, 0 rows affected (0.01 sec) mysql> exit Bye openxs@suse:~/dbs/5.1> bin/mysql -ubug test Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 3 to server version: 5.1.12-beta-debug Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> select user(); +---------------+ | user() | +---------------+ | bug@localhost | +---------------+ 1 row in set (0.03 sec) mysql> SHOW CREATE FUNCTION f2; +----------+----------+-----------------+ | Function | sql_mode | Create Function | +----------+----------+-----------------+ | f2 | | | +----------+----------+-----------------+ 1 row in set (0.01 sec) mysql> SHOW CREATE FUNCTION f2; +----------+----------+-----------------+ | Function | sql_mode | Create Function | +----------+----------+-----------------+ | f2 | | | +----------+----------+-----------------+ 1 row in set (0.00 sec) mysql> SHOW CREATE FUNCTION f2; +----------+----------+-----------------+ | Function | sql_mode | Create Function | +----------+----------+-----------------+ | f2 | | | +----------+----------+-----------------+ 1 row in set (0.00 sec) So, it can be something glibs/kernel/architecture related. In my case I have: openxs@suse:~/dbs/5.1> getconf GNU_LIBC_VERSION glibc 2.3.4 openxs@suse:~/dbs/5.1> uname -a Linux suse 2.6.11.4-20a-default #1 Wed Mar 23 21:52:37 UTC 2005 i686 i686 i386 GNU/Linux
[23 Jun 2006 15:26]
Tomash Brechko
> So, it can be something glibs/kernel/architecture related. I may still be a bug, and its _detection_ may be platform related. In my case it's Linux moonlight.intranet 2.6.15.2-exp #1 SMP PREEMPT Sat Feb 4 11:47:18 MSK 2006 i686 i686 i386 GNU/Linux glibc 2.3.3 Let's give it a second try. Please run mysql client with MALLOC_CHECK_=1, i.e.: MALLOC_CHECK_=1 bin/mysql -ubug test
[23 Jun 2006 16:16]
Valeriy Kravchuk
Still can't repeat: openxs@suse:~/dbs/5.1> MALLOC_CHECK_=1 bin/mysql -ubug test malloc: using debugging hooks Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 2 to server version: 5.1.12-beta-debug Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> SHOW CREATE FUNCTION f2; +----------+----------+-----------------+ | Function | sql_mode | Create Function | +----------+----------+-----------------+ | f2 | | | +----------+----------+-----------------+ 1 row in set (0.01 sec) mysql> SHOW CREATE FUNCTION f2; +----------+----------+-----------------+ | Function | sql_mode | Create Function | +----------+----------+-----------------+ | f2 | | | +----------+----------+-----------------+ 1 row in set (0.00 sec) mysql> SHOW CREATE FUNCTION f2; +----------+----------+-----------------+ | Function | sql_mode | Create Function | +----------+----------+-----------------+ | f2 | | | +----------+----------+-----------------+ 1 row in set (0.00 sec) mysql> SHOW CREATE FUNCTION f2; +----------+----------+-----------------+ | Function | sql_mode | Create Function | +----------+----------+-----------------+ | f2 | | | +----------+----------+-----------------+ 1 row in set (0.00 sec) But yes, it can be glibc version related... Will try to check on other machines.
[25 Jun 2006 15:09]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/8207
[29 Jun 2006 16:16]
Konstantin Osipov
Please close this bug when you close Bug#20230.
[29 Jun 2006 16:18]
Konstantin Osipov
(The patch for Bug#20230, which also fixes this bug, is approved). The patch submitted for this report shall not be pushed.
[2 Aug 2006 14:31]
Konstantin Osipov
Fixed in 5.0.24 and 5.1.12
[2 Aug 2006 18:41]
Paul DuBois
Noted in 5.0.24, 5.1.12 changelogs. Issuing a SHOW CREATE FUNCTION or SHOW CREATE PROCEDURE statement without sufficient privileges could crash the mysql client.
Portions of this website are copyright © 2001, 2002 The PHP Group
Page generated in 0.064 sec. using MySQL 8.4.7-u6-cloud
Timestamp references displayed by the system are UTC.
Content reproduced on this site is the property of the
respective copyright holders.
It is not reviewed in advance
by Oracle and does not necessarily represent the opinion of
Oracle or any other party.