Skip to content
  • Georgi Kodinov's avatar
    5f007726
    WL#6587 : Protocol support for password expiration · 5f007726
    Georgi Kodinov authored
    Initial implementation.
    * added a new capabilities flag CLIENT_CAN_HANDLE_EXPIRED_PASSWORDS
    * Added a new server option (and a read only global variable)
    disconnect-on-expired-password. Defailt is on. When off it will cause
    old clients to get a connection against an expired password account and
    get an error for every query that they try to execute that's not 
    SET PASSWORD.
    * server will check for expired passwords at login and will refuse the 
    login if the client didn't set CLIENT_CAN_HANDLE_EXPIRED_PASSWORDS in 
    the client hello packet and if the disconnect_on_expired_password 
    server side option is set. A detailed error 
    (ER_MUST_CHANGE_PASSWORD) will be sent in this case.
    * server always sets CLIENT_CAN_HANDLE_EXPIRED_PASSWORDS in
    the server hello packet. libmysql never checks for it.
    * new mysql_options() option MYSQL_OPT_CAN_HANDLE_EXPIRED_PASSWORDS
    to set the CLIENT_CAN_HANDLE_EXPIRED_PASSWORDS flag.
    * mysql binary sets MYSQL_OPT_CAN_HANDLE_EXPIRED_PASSWORDS
       if run in interactive mode
    * mysqladmin sets MYSQL_OPT_CAN_HANDLE_EXPIRED_PASSWORDS
       if the first command is 'password' or 'old_password'
    * mysqltest sets MYSQL_OPT_CAN_HANDLE_EXPIRED_PASSWORDS
    * test cases added (both mtr tests and some C test code)
    * existing test case results updated to reflect the new server command
    line option.
     * fixed the linux compilation problems and test failures
    5f007726
    WL#6587 : Protocol support for password expiration
    Georgi Kodinov authored
    Initial implementation.
    * added a new capabilities flag CLIENT_CAN_HANDLE_EXPIRED_PASSWORDS
    * Added a new server option (and a read only global variable)
    disconnect-on-expired-password. Defailt is on. When off it will cause
    old clients to get a connection against an expired password account and
    get an error for every query that they try to execute that's not 
    SET PASSWORD.
    * server will check for expired passwords at login and will refuse the 
    login if the client didn't set CLIENT_CAN_HANDLE_EXPIRED_PASSWORDS in 
    the client hello packet and if the disconnect_on_expired_password 
    server side option is set. A detailed error 
    (ER_MUST_CHANGE_PASSWORD) will be sent in this case.
    * server always sets CLIENT_CAN_HANDLE_EXPIRED_PASSWORDS in
    the server hello packet. libmysql never checks for it.
    * new mysql_options() option MYSQL_OPT_CAN_HANDLE_EXPIRED_PASSWORDS
    to set the CLIENT_CAN_HANDLE_EXPIRED_PASSWORDS flag.
    * mysql binary sets MYSQL_OPT_CAN_HANDLE_EXPIRED_PASSWORDS
       if run in interactive mode
    * mysqladmin sets MYSQL_OPT_CAN_HANDLE_EXPIRED_PASSWORDS
       if the first command is 'password' or 'old_password'
    * mysqltest sets MYSQL_OPT_CAN_HANDLE_EXPIRED_PASSWORDS
    * test cases added (both mtr tests and some C test code)
    * existing test case results updated to reflect the new server command
    line option.
     * fixed the linux compilation problems and test failures
Loading