~ubuntu-branches/ubuntu/natty/mysql-5.1/natty-proposed

« back to all changes in this revision

Viewing changes to sql/sql_yacc.yy

  • Committer: Package Import Robot
  • Author(s): Marc Deslauriers
  • Date: 2012-02-22 08:30:45 UTC
  • mfrom: (1.4.1)
  • Revision ID: package-import@ubuntu.com-20120222083045-2rd53r4bnyx7qus4
Tags: 5.1.61-0ubuntu0.11.04.1
* SECURITY UPDATE: Update to 5.1.61 to fix multiple security issues
  (LP: #937869)
  - http://www.oracle.com/technetwork/topics/security/cpujan2012-366304.html
  - CVE-2011-2262
  - CVE-2012-0075
  - CVE-2012-0112
  - CVE-2012-0113
  - CVE-2012-0114
  - CVE-2012-0115
  - CVE-2012-0116
  - CVE-2012-0117
  - CVE-2012-0118
  - CVE-2012-0119
  - CVE-2012-0120
  - CVE-2012-0484
  - CVE-2012-0485
  - CVE-2012-0486
  - CVE-2012-0487
  - CVE-2012-0488
  - CVE-2012-0489
  - CVE-2012-0490
  - CVE-2012-0491
  - CVE-2012-0492
  - CVE-2012-0493
  - CVE-2012-0494
  - CVE-2012-0495
  - CVE-2012-0496

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/* Copyright (c) 2000, 2010 Oracle and/or its affiliates. All rights reserved.
 
1
/*
 
2
   Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
2
3
 
3
4
   This program is free software; you can redistribute it and/or modify
4
5
   it under the terms of the GNU General Public License as published by
11
12
 
12
13
   You should have received a copy of the GNU General Public License
13
14
   along with this program; if not, write to the Free Software
14
 
   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA */
 
15
   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
 
16
*/
15
17
 
16
18
/* sql_yacc.yy */
17
19
 
1836
1838
            lex->change=NullS;
1837
1839
            bzero((char*) &lex->create_info,sizeof(lex->create_info));
1838
1840
            lex->create_info.options=$2 | $4;
1839
 
            lex->create_info.db_type= ha_default_handlerton(thd);
1840
1841
            lex->create_info.default_table_charset= NULL;
1841
1842
            lex->name.str= 0;
1842
1843
            lex->name.length= 0;
1845
1846
          {
1846
1847
            LEX *lex= YYTHD->lex;
1847
1848
            lex->current_select= &lex->select_lex; 
1848
 
            if (!lex->create_info.db_type)
 
1849
            if ((lex->create_info.used_fields & HA_CREATE_USED_ENGINE) &&
 
1850
                !lex->create_info.db_type)
1849
1851
            {
1850
1852
              lex->create_info.db_type= ha_default_handlerton(YYTHD);
1851
1853
              push_warning_printf(YYTHD, MYSQL_ERROR::WARN_LEVEL_WARN,
2024
2026
        | ENABLE_SYM
2025
2027
          {
2026
2028
            Lex->event_parse_data->status= Event_parse_data::ENABLED;
 
2029
            Lex->event_parse_data->status_changed= true;
2027
2030
            $$= 1;
2028
2031
          }
2029
2032
        | DISABLE_SYM ON SLAVE
2030
2033
          {
2031
2034
            Lex->event_parse_data->status= Event_parse_data::SLAVESIDE_DISABLED;
 
2035
            Lex->event_parse_data->status_changed= true; 
2032
2036
            $$= 1;
2033
2037
          }
2034
2038
        | DISABLE_SYM
2035
2039
          {
2036
2040
            Lex->event_parse_data->status= Event_parse_data::DISABLED;
 
2041
            Lex->event_parse_data->status_changed= true;
2037
2042
            $$= 1;
2038
2043
          }
2039
2044
        ;
8020
8025
            Create_func *builder;
8021
8026
            Item *item= NULL;
8022
8027
 
 
8028
            if (check_routine_name(&$1))
 
8029
            {
 
8030
              MYSQL_YYABORT;
 
8031
            }
 
8032
 
8023
8033
            /*
8024
8034
              Implementation note:
8025
8035
              names are resolved with the following order:
8083
8093
              version() (a vendor can specify any schema).
8084
8094
            */
8085
8095
 
 
8096
            if (!$1.str || check_db_name(&$1))
 
8097
            {
 
8098
              my_error(ER_WRONG_DB_NAME, MYF(0), $1.str);
 
8099
              MYSQL_YYABORT;
 
8100
            }
 
8101
            if (check_routine_name(&$3))
 
8102
            {
 
8103
              MYSQL_YYABORT;
 
8104
            }
 
8105
 
8086
8106
            builder= find_qualified_function_builder(thd);
8087
8107
            DBUG_ASSERT(builder);
8088
8108
            item= builder->create(thd, $1, $3, true, $5);