diff options
author | unknown <acurtis@xiphis.org> | 2005-05-17 19:54:20 +0100 |
---|---|---|
committer | unknown <acurtis@xiphis.org> | 2005-05-17 19:54:20 +0100 |
commit | 55171821d238704a8b43a7ba4d150384f9ea70e1 (patch) | |
tree | 09011cb747c8c1ed831bf8ca66668d0aa4f2610a /scripts | |
parent | 9b07cafe1e7a1230218c06f85b88f68b5741c9ef (diff) | |
download | mariadb-git-55171821d238704a8b43a7ba4d150384f9ea70e1.tar.gz |
Bug#10246 - Parser: bad syntax for GRANT EXECUTE
Rename some functions
more fine-grained sp privileges
make grant/revoke sp grammar less ambigious
mysql-test/r/sp-security.result:
change test for new syntax
mysql-test/r/system_mysql_db.result:
change test for new syntax
mysql-test/t/sp-security.test:
change test for new syntax
scripts/mysql_create_system_tables.sh:
now store routine_type for procs_priv
scripts/mysql_fix_privilege_tables.sql:
now store routine_type for procs_priv
sql/item_func.cc:
rename of function
sql/mysql_priv.h:
rename of function
sql/sp_head.cc:
extra arg for check_some_routine_access
sql/sql_acl.cc:
rename of function. now handle func/proc acls seperately
sql/sql_acl.h:
rename of function
sql/sql_parse.cc:
rename of function
grants for procs handled distinctly from funcs
sql/sql_show.cc:
check_some_routine_access extra arg
sql/sql_base.cc:
fix for build
sql/sql_yacc.yy:
fix for build
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/mysql_create_system_tables.sh | 5 | ||||
-rw-r--r-- | scripts/mysql_fix_privilege_tables.sql | 9 |
2 files changed, 10 insertions, 4 deletions
diff --git a/scripts/mysql_create_system_tables.sh b/scripts/mysql_create_system_tables.sh index 0eb14cd5e65..a8f6c02b057 100644 --- a/scripts/mysql_create_system_tables.sh +++ b/scripts/mysql_create_system_tables.sh @@ -255,10 +255,11 @@ then c_pp="$c_pp Db char(64) binary DEFAULT '' NOT NULL," c_pp="$c_pp User char(16) binary DEFAULT '' NOT NULL," c_pp="$c_pp Routine_name char(64) binary DEFAULT '' NOT NULL," + c_pp="$c_pp Routine_type enum('FUNCTION','PROCEDURE') NOT NULL," c_pp="$c_pp Grantor char(77) DEFAULT '' NOT NULL," - c_pp="$c_pp Timestamp timestamp(14)," c_pp="$c_pp Proc_priv set('Execute','Alter Routine','Grant') COLLATE utf8_general_ci DEFAULT '' NOT NULL," - c_pp="$c_pp PRIMARY KEY (Host,Db,User,Routine_name)," + c_pp="$c_pp Timestamp timestamp(14)," + c_pp="$c_pp PRIMARY KEY (Host,Db,User,Routine_name,Routine_type)," c_pp="$c_pp KEY Grantor (Grantor)" c_pp="$c_pp ) engine=MyISAM" c_pp="$c_pp CHARACTER SET utf8 COLLATE utf8_bin" diff --git a/scripts/mysql_fix_privilege_tables.sql b/scripts/mysql_fix_privilege_tables.sql index 292720371c8..68b31cf1519 100644 --- a/scripts/mysql_fix_privilege_tables.sql +++ b/scripts/mysql_fix_privilege_tables.sql @@ -67,6 +67,10 @@ ALTER TABLE tables_priv ALTER TABLE procs_priv ENGINE=MyISAM, CONVERT TO CHARACTER SET utf8 COLLATE utf8_bin; ALTER TABLE procs_priv modify Proc_priv set('Execute','Alter Routine','Grant') COLLATE utf8_general_ci DEFAULT '' NOT NULL; +ALTER TABLE procs_priv + add Routine_type enum('FUNCTION','PROCEDURE') COLLATE utf8_general_ci NOT NULL AFTER Routine_name; +ALTER TABLE procs_priv + modify Timestamp timestamp(14) AFTER Proc_priv; CREATE TABLE IF NOT EXISTS columns_priv ( Host char(60) DEFAULT '' NOT NULL, @@ -316,10 +320,11 @@ Host char(60) binary DEFAULT '' NOT NULL, Db char(64) binary DEFAULT '' NOT NULL, User char(16) binary DEFAULT '' NOT NULL, Routine_name char(64) binary DEFAULT '' NOT NULL, +Routine_type enum('FUNCTION','PROCEDURE') NOT NULL, Grantor char(77) DEFAULT '' NOT NULL, -Timestamp timestamp(14), Proc_priv set('Execute','Alter Routine','Grant') COLLATE utf8_general_ci DEFAULT '' NOT NULL, -PRIMARY KEY (Host,Db,User,Routine_name), +Timestamp timestamp(14), +PRIMARY KEY (Host,Db,User,Routine_name,Routine_type), KEY Grantor (Grantor) ) CHARACTER SET utf8 COLLATE utf8_bin comment='Procedure privileges'; |