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
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
nexedi
MariaDB
Commits
99b58a5a
Commit
99b58a5a
authored
Sep 27, 2001
by
monty@tik.mysql.fi
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Cleaned up udf_example.cc and mysql_fix_privilege_tables
parent
df1045ee
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
22 additions
and
18 deletions
+22
-18
acinclude.m4
acinclude.m4
+1
-1
scripts/mysql_fix_privilege_tables.sh
scripts/mysql_fix_privilege_tables.sh
+6
-7
sql/udf_example.cc
sql/udf_example.cc
+15
-10
No files found.
acinclude.m4
View file @
99b58a5a
...
...
@@ -1106,7 +1106,7 @@ changequote([, ])dnl
AC_DEFUN(AC_SYS_LARGEFILE,
[AC_REQUIRE([AC_CANONICAL_HOST])
AC_ARG_ENABLE(largefile,
[ --disable-large
-files
Omit support for large files])
[ --disable-large
file
Omit support for large files])
if test "$enable_largefile" != no; then
AC_CHECK_TOOL(GETCONF, getconf)
AC_SYS_LARGEFILE_FLAGS(CFLAGS)
...
...
scripts/mysql_fix_privilege_tables.sh
View file @
99b58a5a
...
...
@@ -3,8 +3,8 @@
echo
"This scripts updates the mysql.user, mysql.db, mysql.host and the"
echo
"mysql.func table to MySQL 3.22.14 and above."
echo
""
echo
"This is needed if you want to use the new GRANT functions
or
"
echo
"
want to use the more secure passwords.
"
echo
"This is needed if you want to use the new GRANT functions
,
"
echo
"
CREATE AGGREAGATE FUNCTION or want to use the more secure passwords in 3.23
"
echo
""
echo
"If you get Access denied errors, you should run this script again"
echo
"and give the MySQL root user password as a argument!"
...
...
@@ -15,13 +15,12 @@ host="localhost"
# Fix old password format, add File_priv and func table
echo
""
echo
"If your tables are already up to date or partially up to date you will"
echo
"get some warnings about 'Duplicated column name' or"
echo
"'Table 'func' already exists'. You can safely ignore these!"
echo
"get some warnings about 'Duplicated column name'. You can safely ignore these!"
@bindir@/mysql
-f
--user
=
root
--password
=
"
$root_password
"
--host
=
"
$host
"
mysql
<<
END_OF_DATA
alter table user change password password char(16) NOT NULL;
alter table user add File_priv enum('N','Y') NOT NULL;
CREATE TABLE func (
CREATE TABLE
if not exists
func (
name char(64) DEFAULT '' NOT NULL,
ret tinyint(1) DEFAULT '0' NOT NULL,
dl char(128) DEFAULT '' NOT NULL,
...
...
@@ -64,7 +63,7 @@ fi
echo
"Creating the new table and column privilege tables"
@bindir@/mysql
-f
--user
=
root
--password
=
"
$root_password
"
--host
=
"
$host
"
mysql
<<
END_OF_DATA
CREATE TABLE tables_priv (
CREATE TABLE
IF NOT EXISTS
tables_priv (
Host char(60) DEFAULT '' NOT NULL,
Db char(60) DEFAULT '' NOT NULL,
User char(16) DEFAULT '' NOT NULL,
...
...
@@ -75,7 +74,7 @@ CREATE TABLE tables_priv (
Column_priv set('Select','Insert','Update','References') DEFAULT '' NOT NULL,
PRIMARY KEY (Host,Db,User,Table_name)
);
CREATE TABLE columns_priv (
CREATE TABLE
IF NOT EXISTS
columns_priv (
Host char(60) DEFAULT '' NOT NULL,
Db char(60) DEFAULT '' NOT NULL,
User char(16) DEFAULT '' NOT NULL,
...
...
sql/udf_example.cc
View file @
99b58a5a
...
...
@@ -66,7 +66,7 @@
** You can easily get all switches right by doing:
** cd sql ; make udf_example.o
** Take the compile line that make writes, remove the '-c' near the end of
** the line and add -o udf_example.so to the end of the compile line.
** the line and add -
shared -
o udf_example.so to the end of the compile line.
** The resulting library (udf_example.so) should be copied to some dir
** searched by ld. (/usr/lib ?)
**
...
...
@@ -97,6 +97,13 @@
** Active function will be reloaded on every restart of server
** (if --skip-grant-tables is not given)
**
** If you ge problems with undefined symbols when loading the shared
** library, you should verify that mysqld is compiled with the -rdynamic
** option.
**
** If you can't get AGGREGATES to work, check that you have the column
** 'type' in the mysql.func table. If not, run 'mysql_fix_privilege_tables'.
**
*/
#ifdef STANDARD
...
...
@@ -128,6 +135,11 @@ my_bool sequence_init(UDF_INIT *initid, UDF_ARGS *args, char *message);
void
sequence_deinit
(
UDF_INIT
*
initid
);
long
long
sequence
(
UDF_INIT
*
initid
,
UDF_ARGS
*
args
,
char
*
is_null
,
char
*
error
);
my_bool
avgcost_init
(
UDF_INIT
*
initid
,
UDF_ARGS
*
args
,
char
*
message
);
void
avgcost_deinit
(
UDF_INIT
*
initid
);
void
avgcost_reset
(
UDF_INIT
*
initid
,
UDF_ARGS
*
args
,
char
*
is_null
,
char
*
error
);
void
avgcost_add
(
UDF_INIT
*
initid
,
UDF_ARGS
*
args
,
char
*
is_null
,
char
*
error
);
double
avgcost
(
UDF_INIT
*
initid
,
UDF_ARGS
*
args
,
char
*
is_null
,
char
*
error
);
}
...
...
@@ -766,6 +778,7 @@ char *reverse_lookup(UDF_INIT *initid, UDF_ARGS *args, char *result,
*
res_length
=
(
ulong
)
(
strmov
(
result
,
hp
->
h_name
)
-
result
);
return
result
;
}
#endif // defined(HAVE_GETHOSTBYADDR_R) && defined(HAVE_SOLARIS_STYLE_GETHOST)
/*
** Syntax for the new aggregate commands are:
...
...
@@ -777,13 +790,6 @@ char *reverse_lookup(UDF_INIT *initid, UDF_ARGS *args, char *result,
** (this example is provided by Andreas F. Bobak <bobak@relog.ch>)
*/
extern
"C"
{
my_bool
avgcost_init
(
UDF_INIT
*
initid
,
UDF_ARGS
*
args
,
char
*
message
);
void
avgcost_deinit
(
UDF_INIT
*
initid
);
void
avgcost_reset
(
UDF_INIT
*
initid
,
UDF_ARGS
*
args
,
char
*
is_null
,
char
*
error
);
void
avgcost_add
(
UDF_INIT
*
initid
,
UDF_ARGS
*
args
,
char
*
is_null
,
char
*
error
);
double
avgcost
(
UDF_INIT
*
initid
,
UDF_ARGS
*
args
,
char
*
is_null
,
char
*
error
);
}
struct
avgcost_data
{
...
...
@@ -810,7 +816,7 @@ avgcost_init( UDF_INIT* initid, UDF_ARGS* args, char* message )
return
1
;
}
if
((
args
->
arg_type
[
0
]
!=
INT_RESULT
)
&&
(
args
->
arg_type
[
1
]
!=
REAL_RESULT
)
)
if
((
args
->
arg_type
[
0
]
!=
INT_RESULT
)
||
(
args
->
arg_type
[
1
]
!=
REAL_RESULT
)
)
{
strcpy
(
message
,
...
...
@@ -917,5 +923,4 @@ avgcost( UDF_INIT* initid, UDF_ARGS* args, char* is_null, char* error )
return
data
->
totalprice
/
double
(
data
->
totalquantity
);
}
#endif // defined(HAVE_GETHOSTBYADDR_R) && defined(HAVE_SOLARIS_STYLE_GETHOST)
#endif
/* HAVE_DLOPEN */
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