diff options
author | unknown <bell@sanja.is.com.ua> | 2005-09-15 22:29:07 +0300 |
---|---|---|
committer | unknown <bell@sanja.is.com.ua> | 2005-09-15 22:29:07 +0300 |
commit | 84f029a448fc822f2fa150ab13e61b233b1e4027 (patch) | |
tree | fc6da649fdbafccdf434cac04cebe418f638185d /sql/sp_head.h | |
parent | fbe338f4b009c8f0057645bdfae9b981a346dbc3 (diff) | |
download | mariadb-git-84f029a448fc822f2fa150ab13e61b233b1e4027.tar.gz |
WL#2787 (part 2, ver 3 (merged)) changed securety context switching
libmysqld/lib_sql.cc:
changed securety context switching
mysql-test/r/rpl_sp.result:
now it show real information from changed security context of SP (checked)
sql/ha_innodb.cc:
changed securety context switching
sql/item.cc:
changed securety context switching
sql/item_func.cc:
changed securety context switching
sql/item_strfunc.cc:
changed securety context switching
sql/log.cc:
changed securety context switching
sql/mysql_priv.h:
changed securety context switching
sql/mysqld.cc:
changed securety context switching
sql/repl_failsafe.cc:
changed securety context switching
sql/set_var.cc:
changed securety context switching
sql/slave.cc:
changed securety context switching
sql/sp.cc:
changed securety context switching
sql/sp_head.cc:
changed securety context switching
in case of inability to switch context we return error now
sql/sp_head.h:
changed securety context switching
sql/sql_acl.cc:
changed securety context switching
sql/sql_acl.h:
changed securety context switching
sql/sql_base.cc:
changed securety context switching
sql/sql_class.cc:
changed securety context switching
sql/sql_class.h:
changed securety context switching
sql/sql_db.cc:
changed securety context switching
sql/sql_insert.cc:
changed securety context switching
sql/sql_parse.cc:
changed securety context switching
sql/sql_show.cc:
changed securety context switching
sql/sql_trigger.cc:
changed securety context switching
sql/sql_view.cc:
changed securety context switching
sql/sql_yacc.yy:
changed securety context switching
Diffstat (limited to 'sql/sp_head.h')
-rw-r--r-- | sql/sp_head.h | 22 |
1 files changed, 7 insertions, 15 deletions
diff --git a/sql/sp_head.h b/sql/sp_head.h index 9888fe74149..ccf8c48a5eb 100644 --- a/sql/sp_head.h +++ b/sql/sp_head.h @@ -151,6 +151,9 @@ public: // Pointers set during parsing uchar *m_param_begin, *m_param_end, *m_body_begin; + /* security context for SP procedure/function in case we switch it*/ + st_security_context m_security_ctx; + static void * operator new(size_t size); @@ -1017,23 +1020,12 @@ private: }; // class sp_instr_error : public sp_instr -struct st_sp_security_context -{ - bool changed; - uint master_access; - uint db_access; - char *priv_user; - char priv_host[MAX_HOSTNAME]; - char *user; - char *host; - char *ip; -}; - #ifndef NO_EMBEDDED_ACCESS_CHECKS +bool +sp_change_security_context(THD *thd, sp_head *sp, + st_security_context **backup); void -sp_change_security_context(THD *thd, sp_head *sp, st_sp_security_context *ctxp); -void -sp_restore_security_context(THD *thd, sp_head *sp,st_sp_security_context *ctxp); +sp_restore_security_context(THD *thd, st_security_context *backup); #endif /* NO_EMBEDDED_ACCESS_CHECKS */ TABLE_LIST * |