Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
mariadb
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
mariadb
Commits
06dd1244
Commit
06dd1244
authored
Nov 21, 2006
by
gkodinov/kgeorge@macbook.gmz
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Bug #23556: TRUNCATE TABLE still maps to DELETE
- TRUNCATE requires DROP privilege, not DELETE
parent
98911707
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
60 additions
and
5 deletions
+60
-5
mysql-test/r/grant.result
mysql-test/r/grant.result
+20
-0
mysql-test/r/trigger-grant.result
mysql-test/r/trigger-grant.result
+2
-2
mysql-test/t/grant.test
mysql-test/t/grant.test
+35
-0
mysql-test/t/trigger-grant.test
mysql-test/t/trigger-grant.test
+2
-2
sql/sql_parse.cc
sql/sql_parse.cc
+1
-1
No files found.
mysql-test/r/grant.result
View file @
06dd1244
...
...
@@ -972,4 +972,24 @@ REVOKE EXECUTE ON PROCEDURE p1 FROM 1234567890abcdefGHIKL@localhost;
ERROR HY000: String '1234567890abcdefGHIKL' is too long for user name (should be no longer than 16)
REVOKE EXECUTE ON PROCEDURE t1 FROM some_user_name@1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY;
ERROR HY000: String '1234567890abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY' is too long for host name (should be no longer than 60)
CREATE USER bug23556@localhost;
CREATE DATABASE bug23556;
GRANT SELECT ON bug23556.* TO bug23556@localhost;
USE bug23556;
CREATE TABLE t1 (a INT PRIMARY KEY);
INSERT INTO t1 VALUES (1),(2),(3),(4),(5);
GRANT DELETE ON t1 TO bug23556@localhost;
USE bug23556;
TRUNCATE t1;
ERROR 42000: DROP command denied to user 'bug23556'@'localhost' for table 't1'
USE bug23556;
REVOKE DELETE ON t1 FROM bug23556@localhost;
GRANT DROP ON t1 TO bug23556@localhost;
USE bug23556;
TRUNCATE t1;
USE bug23556;
DROP TABLE t1;
USE test;
DROP DATABASE bug23556;
DROP USER bug23556@localhost;
End of 5.0 tests
mysql-test/r/trigger-grant.result
View file @
06dd1244
...
...
@@ -14,8 +14,8 @@ CREATE TABLE t1(num_value INT);
CREATE TABLE t2(user_str TEXT);
---> connection: default
GRANT INSERT, D
ELETE
ON mysqltest_db1.t1 TO mysqltest_dfn@localhost;
GRANT INSERT, D
ELETE
ON mysqltest_db1.t2 TO mysqltest_dfn@localhost;
GRANT INSERT, D
ROP
ON mysqltest_db1.t1 TO mysqltest_dfn@localhost;
GRANT INSERT, D
ROP
ON mysqltest_db1.t2 TO mysqltest_dfn@localhost;
---> connection: default
GRANT SUPER ON *.* TO mysqltest_dfn@localhost;
...
...
mysql-test/t/grant.test
View file @
06dd1244
...
...
@@ -863,4 +863,39 @@ REVOKE EXECUTE ON PROCEDURE p1 FROM 1234567890abcdefGHIKL@localhost;
--
error
ER_WRONG_STRING_LENGTH
REVOKE
EXECUTE
ON
PROCEDURE
t1
FROM
some_user_name
@
1234567890
abcdefghij1234567890abcdefghij1234567890abcdefghijQWERTY
;
#
# BUG#23556: TRUNCATE TABLE still maps to DELETE
#
CREATE
USER
bug23556
@
localhost
;
CREATE
DATABASE
bug23556
;
GRANT
SELECT
ON
bug23556
.*
TO
bug23556
@
localhost
;
connect
(
bug23556
,
localhost
,
bug23556
,,
bug23556
);
connection
default
;
USE
bug23556
;
CREATE
TABLE
t1
(
a
INT
PRIMARY
KEY
);
INSERT
INTO
t1
VALUES
(
1
),(
2
),(
3
),(
4
),(
5
);
GRANT
DELETE
ON
t1
TO
bug23556
@
localhost
;
connection
bug23556
;
USE
bug23556
;
--
error
ER_TABLEACCESS_DENIED_ERROR
TRUNCATE
t1
;
connection
default
;
USE
bug23556
;
REVOKE
DELETE
ON
t1
FROM
bug23556
@
localhost
;
GRANT
DROP
ON
t1
TO
bug23556
@
localhost
;
connection
bug23556
;
USE
bug23556
;
TRUNCATE
t1
;
connection
default
;
USE
bug23556
;
DROP
TABLE
t1
;
USE
test
;
DROP
DATABASE
bug23556
;
DROP
USER
bug23556
@
localhost
;
--
echo
End
of
5.0
tests
mysql-test/t/trigger-grant.test
View file @
06dd1244
...
...
@@ -60,8 +60,8 @@ CREATE TABLE t2(user_str TEXT);
--
echo
--
echo
--->
connection
:
default
GRANT
INSERT
,
D
ELETE
ON
mysqltest_db1
.
t1
TO
mysqltest_dfn
@
localhost
;
GRANT
INSERT
,
D
ELETE
ON
mysqltest_db1
.
t2
TO
mysqltest_dfn
@
localhost
;
GRANT
INSERT
,
D
ROP
ON
mysqltest_db1
.
t1
TO
mysqltest_dfn
@
localhost
;
GRANT
INSERT
,
D
ROP
ON
mysqltest_db1
.
t2
TO
mysqltest_dfn
@
localhost
;
#
# Check that the user must have TRIGGER privilege to create a trigger.
...
...
sql/sql_parse.cc
View file @
06dd1244
...
...
@@ -3508,7 +3508,7 @@ end_with_restore_list:
break
;
}
DBUG_ASSERT
(
first_table
==
all_tables
&&
first_table
!=
0
);
if
(
check_one_table_access
(
thd
,
D
ELETE
_ACL
,
all_tables
))
if
(
check_one_table_access
(
thd
,
D
ROP
_ACL
,
all_tables
))
goto
error
;
/*
Don't allow this within a transaction because we want to use
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment