diff options
author | monty@mashka.mysql.fi <> | 2003-01-18 19:31:38 +0200 |
---|---|---|
committer | monty@mashka.mysql.fi <> | 2003-01-18 19:31:38 +0200 |
commit | 88cd4126e40d776611c73994ea91916f10b320a7 (patch) | |
tree | 464dcaca9cc63777f76692b3635b591fac0d6d39 | |
parent | 529e4a76c5b60e41b2bf9b80d6036d92a765df13 (diff) | |
download | mariadb-git-88cd4126e40d776611c73994ea91916f10b320a7.tar.gz |
Simple code cleanups, ignore generated files
-rw-r--r-- | .bzrignore | 9 | ||||
-rw-r--r-- | mysys/queues.c | 72 | ||||
-rw-r--r-- | sql/sql_parse.cc | 77 | ||||
-rw-r--r-- | tests/grant.res | 2 |
4 files changed, 110 insertions, 50 deletions
diff --git a/.bzrignore b/.bzrignore index 7d35c950ee3..d3e2393aa8d 100644 --- a/.bzrignore +++ b/.bzrignore @@ -582,3 +582,12 @@ vio/test-ssl vio/test-sslclient vio/test-sslserver vio/viotest-ssl +comon.h +emacs.h +fcns.c +fcns.h +help.h +help.c +vi.h +include/readline/readline.h +cmd-line-utils/libedit/common.h diff --git a/mysys/queues.c b/mysys/queues.c index fe642131d74..f077b38ca0b 100644 --- a/mysys/queues.c +++ b/mysys/queues.c @@ -24,7 +24,26 @@ #include <queues.h> -/* Init queue */ +/* + Init queue + + SYNOPSIS + init_queue() + queue Queue to initialise + max_elements Max elements that will be put in queue + offset_to_key Offset to key in element stored in queue + Used when sending pointers to compare function + max_at_top Set to 1 if you want biggest element on top. + compare Compare function for elements, takes 3 arguments. + first_cmp_arg First argument to compare function + + NOTES + Will allocate max_element pointers for queue array + + RETURN + 0 ok + 1 Could not allocate memory +*/ int init_queue(QUEUE *queue, uint max_elements, uint offset_to_key, pbool max_at_top, int (*compare) (void *, byte *, byte *), @@ -43,15 +62,32 @@ int init_queue(QUEUE *queue, uint max_elements, uint offset_to_key, DBUG_RETURN(0); } + /* - Reinitialize queue for new usage; Note that you can't currently resize - the number of elements! If you need this, fix it :) + Reinitialize queue for other usage (deletes all elements) + + SYNOPSIS + reinit_queue() + queue Queue to initialise + max_elements Max elements that will be put in queue + offset_to_key Offset to key in element stored in queue + Used when sending pointers to compare function + max_at_top Set to 1 if you want biggest element on top. + compare Compare function for elements, takes 3 arguments. + first_cmp_arg First argument to compare function + + NOTES + You can't currently resize the number of elements! If you need this, + fix it :) + + RETURN + 0 ok + EE_OUTOFMEMORY Wrong max_elements */ - int reinit_queue(QUEUE *queue, uint max_elements, uint offset_to_key, - pbool max_at_top, int (*compare) (void *, byte *, byte *), - void *first_cmp_arg) + pbool max_at_top, int (*compare) (void *, byte *, byte *), + void *first_cmp_arg) { DBUG_ENTER("reinit_queue"); if (queue->max_elements < max_elements) @@ -66,6 +102,21 @@ int reinit_queue(QUEUE *queue, uint max_elements, uint offset_to_key, DBUG_RETURN(0); } + +/* + Delete queue + + SYNOPSIS + delete_queue() + queue Queue to delete + + IMPLEMENTATION + Just free allocated memory. + + NOTES + Can be called safely multiple times +*/ + void delete_queue(QUEUE *queue) { DBUG_ENTER("delete_queue"); @@ -116,7 +167,7 @@ byte *queue_remove(register QUEUE *queue, uint idx) return 0; #endif { - byte *element=queue->root[++idx]; /* Intern index starts from 1 */ + byte *element=queue->root[++idx]; /* Intern index starts from 1 */ queue->root[idx]=queue->root[queue->elements--]; _downheap(queue,idx); return element; @@ -126,8 +177,7 @@ byte *queue_remove(register QUEUE *queue, uint idx) /* Fix when element on top has been replaced */ #ifndef queue_replaced -void queue_replaced(queue) -QUEUE *queue; +void queue_replaced(QUEUE *queue) { _downheap(queue,1); } @@ -169,8 +219,8 @@ void _downheap(register QUEUE *queue, uint idx) static int queue_fix_cmp(QUEUE *queue, void **a, void **b) { return queue->compare(queue->first_cmp_arg, - (char*) (*a)+queue->offset_to_key, - (char*) (*b)+queue->offset_to_key); + (byte*) (*a)+queue->offset_to_key, + (byte*) (*b)+queue->offset_to_key); } /* diff --git a/sql/sql_parse.cc b/sql/sql_parse.cc index 8c76118a526..a09b3e9cad4 100644 --- a/sql/sql_parse.cc +++ b/sql/sql_parse.cc @@ -219,12 +219,18 @@ static int check_user(THD *thd,enum_server_command command, const char *user, had_password ? "yes": "no", thd->master_access, thd->db ? thd->db : "*none*")); - /* in case we're going to retry we should not send error message at this point */ + /* + In case we're going to retry we should not send error message at this + point + */ if (thd->master_access & NO_ACCESS) { if (do_send_error) { - /* Old client should get nicer error message if password version is not supported*/ + /* + Old client should get nicer error message if password version is + not supported + */ if (simple_connect && *hint_user && (*hint_user)->pversion) { net_printf(thd, ER_NOT_SUPPORTED_AUTH_MODE); @@ -494,7 +500,10 @@ check_connections(THD *thd) { uint connect_errors=0; NET *net= &thd->net; - char *end; + char *end, *user, *passwd, *db; + char prepared_scramble[SCRAMBLE41_LENGTH+4]; /* Buffer for scramble&hash */ + ACL_USER* cached_user=NULL; /* Initialise to NULL for first stage */ + uint cur_priv_version; DBUG_PRINT("info", (("check_connections called by thread %d"), thd->thread_id)); DBUG_PRINT("info",("New connection received on %s", @@ -632,9 +641,9 @@ check_connections(THD *thd) return(ER_HANDSHAKE_ERROR); } - char *user= end; - char *passwd= strend(user)+1; - char *db=0; + user= end; + passwd= strend(user)+1; + db=0; if (thd->client_capabilities & CLIENT_CONNECT_WITH_DB) db=strend(passwd)+1; @@ -649,11 +658,6 @@ check_connections(THD *thd) thd->net.return_status= &thd->server_status; net->read_timeout=(uint) thd->variables.net_read_timeout; - char prepared_scramble[SCRAMBLE41_LENGTH+4]; /* Buffer for scramble and hash */ - - ACL_USER* cached_user=NULL; /* Initialise to NULL as first stage indication */ - uint cur_priv_version; - /* Simple connect only for old clients. New clients always use secure auth */ bool simple_connect=(!(thd->client_capabilities & CLIENT_SECURE_CONNECTION)); @@ -664,15 +668,14 @@ check_connections(THD *thd) simple_connect, prepared_scramble, using_password, &cur_priv_version, &cached_user)<0) { - /* If The client is old we just have to return error */ - if (simple_connect) - return -1; - /* Store current used and database as they are erased with next packet */ - char tmp_user[USERNAME_LENGTH+1]; char tmp_db[NAME_LEN+1]; + /* If The client is old we just have to return error */ + if (simple_connect) + return -1; + tmp_user[0]=0; if (user) strmake(tmp_user,user,USERNAME_LENGTH); @@ -689,17 +692,17 @@ check_connections(THD *thd) return ER_HANDSHAKE_ERROR; } /* Reading packet back */ - if ((pkt_len=my_net_read(net)) == packet_error) - { - inc_host_errors(&thd->remote.sin_addr); - return ER_HANDSHAKE_ERROR; - } + if ((pkt_len= my_net_read(net)) == packet_error) + { + inc_host_errors(&thd->remote.sin_addr); + return ER_HANDSHAKE_ERROR; + } /* We have to get very specific packet size */ - if (pkt_len!=SCRAMBLE41_LENGTH) - { - inc_host_errors(&thd->remote.sin_addr); - return ER_HANDSHAKE_ERROR; - } + if (pkt_len != SCRAMBLE41_LENGTH) + { + inc_host_errors(&thd->remote.sin_addr); + return ER_HANDSHAKE_ERROR; + } /* Final attempt to check the user based on reply */ if (check_user(thd,COM_CONNECT, tmp_user, (char*)net->read_pos, tmp_db, 1, 0, 1, prepared_scramble, using_password, &cur_priv_version, @@ -1075,7 +1078,11 @@ bool dispatch_command(enum enum_server_command command, THD *thd, USER_CONN *save_uc= thd->user_connect; bool simple_connect; bool using_password; - + char prepared_scramble[SCRAMBLE41_LENGTH+4];/* Buffer for scramble,hash */ + char tmp_user[USERNAME_LENGTH+1]; + char tmp_db[NAME_LEN+1]; + ACL_USER* cached_user ; /* Cached user */ + uint cur_priv_version; /* Cached grant version */ ulong pkt_len=0; /* Length of reply packet */ /* Small check for incomming packet */ @@ -1089,10 +1096,7 @@ bool dispatch_command(enum enum_server_command command, THD *thd, if (passwd[0] && strlen(passwd)!=SCRAMBLE_LENGTH) goto restore_user_err; - char prepared_scramble[SCRAMBLE41_LENGTH+4];/* Buffer for scramble,hash */ - ACL_USER* cached_user ; /* Cached user */ cached_user= NULL; - uint cur_priv_version; /* Cached grant version */ /* Simple connect only for old clients. New clients always use sec. auth*/ simple_connect=(!(thd->client_capabilities & CLIENT_SECURE_CONNECTION)); @@ -1104,8 +1108,8 @@ bool dispatch_command(enum enum_server_command command, THD *thd, memcpy(thd->scramble,thd->old_scramble,9); /* - Check user permissions. If password failure we'll get scramble back - Do not retry if we already have sent error (result>0) + Check user permissions. If password failure we'll get scramble back + Do not retry if we already have sent error (result>0) */ if (check_user(thd,COM_CHANGE_USER, user, passwd, db, 0, simple_connect, simple_connect, prepared_scramble, using_password, &cur_priv_version, @@ -1116,10 +1120,6 @@ bool dispatch_command(enum enum_server_command command, THD *thd, goto restore_user; /* Error is already reported */ /* Store current used and database as they are erased with next packet */ - - char tmp_user[USERNAME_LENGTH+1]; - char tmp_db[NAME_LEN+1]; - tmp_user[0]=0; if (user) strmake(tmp_user,user,USERNAME_LENGTH); @@ -1143,8 +1143,9 @@ bool dispatch_command(enum enum_server_command command, THD *thd, goto restore_user; /* Final attempt to check the user based on reply */ - if (check_user(thd,COM_CHANGE_USER, tmp_user, (char*)net->read_pos, - tmp_db, 0, 0, 1, prepared_scramble, using_password, &cur_priv_version, + if (check_user(thd,COM_CHANGE_USER, tmp_user, (char*) net->read_pos, + tmp_db, 0, 0, 1, prepared_scramble, using_password, + &cur_priv_version, &cached_user)) goto restore_user; } diff --git a/tests/grant.res b/tests/grant.res index 2a5e4db3e33..15aad01c888 100644 --- a/tests/grant.res +++ b/tests/grant.res @@ -472,7 +472,7 @@ GRANT LOCK TABLES ON *.* TO 'grant_user'@'localhost' GRANT SELECT, INSERT ON grant_test.test3 TO 'grant_user'@'localhost' select * from mysql.user where user='grant_user' -127.0.0.1 grant_user 7f70e8b858ee6782 N N N N N N N N N N N N N N N N N N N N N 0 0 0 +127.0.0.1 grant_user *042a99b3d247ae587783f647f2d69496d390aa71eab3 N N N N N N N N N N N N N N N N N N N N N 0 0 0 localhost grant_user N N N N N N N N N N N N N N N N N Y N N N 0 0 0 Connecting grant_user |