• unknown's avatar
    Fix for BUG#16899: Possible buffer overflow in handling of DEFINER-clause · f96ee72f
    unknown authored
      
    User name (host name) has limit on length. The server code relies on these
    limits when storing the names. The problem was that sometimes these limits
    were not checked properly, so that could lead to buffer overflow.
    
    The fix is to check length of user/host name in parser and if string is too
    long, throw an error.
    
    
    mysql-test/r/grant.result:
      Updated result file.
    mysql-test/r/sp.result:
      Updated result file.
    mysql-test/r/trigger.result:
      Updated result file.
    mysql-test/r/view.result:
      Updated result file.
    mysql-test/t/grant.test:
      Added test for BUG#16899.
    mysql-test/t/sp.test:
      Added test for BUG#16899.
    mysql-test/t/trigger.test:
      Added test for BUG#16899.
    mysql-test/t/view.test:
      Added test for BUG#16899.
    sql/mysql_priv.h:
      Added prototype for new function.
    sql/share/errmsg.txt:
      Added new resources.
    sql/sql_acl.cc:
      Remove outdated checks.
    sql/sql_parse.cc:
      Add a new function for checking string length.
    sql/sql_yacc.yy:
      Check length of user/host name.
    f96ee72f
view.result 84 KB