Skip to content

Commit 56c7b8d

Browse files
committed
Add missing branches to “accountLockPasswordExpireOptions”
1 parent 207078a commit 56c7b8d

File tree

5 files changed

+48
-22
lines changed

5 files changed

+48
-22
lines changed

custom-parser/grammar-factoring/MySQLParser-factored-versioned.json

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13226,6 +13226,14 @@
1322613226
[
1322713227
"PASSWORD_SYMBOL",
1322813228
"%accountLockPasswordExpireOptions11"
13229+
],
13230+
[
13231+
"PASSWORD_LOCK_TIME_SYMBOL",
13232+
"%accountLockPasswordExpireOptions21"
13233+
],
13234+
[
13235+
"FAILED_LOGIN_ATTEMPTS_SYMBOL",
13236+
"real_ulong_number"
1322913237
]
1323013238
]
1323113239
},
@@ -13366,6 +13374,17 @@
1336613374
]
1336713375
]
1336813376
},
13377+
{
13378+
"name": "%accountLockPasswordExpireOptions21",
13379+
"bnf": [
13380+
[
13381+
"real_ulong_number"
13382+
],
13383+
[
13384+
"UNBOUNDED_SYMBOL"
13385+
]
13386+
]
13387+
},
1336913388
{
1337013389
"name": "%dropUser02_zero_or_one",
1337113390
"bnf": [

custom-parser/grammar-factoring/MySQLParser.g4

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1905,6 +1905,31 @@ connectOptions:
19051905
)+
19061906
;
19071907

1908+
/*accountLockPasswordExpireOptions:
1909+
ACCOUNT_SYMBOL (LOCK_SYMBOL | UNLOCK_SYMBOL)
1910+
| PASSWORD_SYMBOL (
1911+
EXPIRE_SYMBOL (
1912+
INTERVAL_SYMBOL real_ulong_number DAY_SYMBOL
1913+
| NEVER_SYMBOL
1914+
| DEFAULT_SYMBOL
1915+
)?
1916+
| HISTORY_SYMBOL (real_ulong_number | DEFAULT_SYMBOL)
1917+
| REUSE_SYMBOL INTERVAL_SYMBOL (
1918+
real_ulong_number DAY_SYMBOL
1919+
| DEFAULT_SYMBOL
1920+
)
1921+
| {serverVersion >= 80014}? REQUIRE_SYMBOL CURRENT_SYMBOL (
1922+
DEFAULT_SYMBOL
1923+
| OPTIONAL_SYMBOL
1924+
)?
1925+
)
1926+
|
1927+
;*/
1928+
1929+
/*
1930+
* @FIX:
1931+
* Add missing "PASSWORD_LOCK_TIME_SYMBOL" and "FAILED_LOGIN_ATTEMPTS_SYMBOL".
1932+
*/
19081933
accountLockPasswordExpireOptions:
19091934
ACCOUNT_SYMBOL (LOCK_SYMBOL | UNLOCK_SYMBOL)
19101935
| PASSWORD_SYMBOL (
@@ -1923,6 +1948,8 @@ accountLockPasswordExpireOptions:
19231948
| OPTIONAL_SYMBOL
19241949
)?
19251950
)
1951+
| PASSWORD_LOCK_TIME_SYMBOL (real_ulong_number | UNBOUNDED_SYMBOL)
1952+
| FAILED_LOGIN_ATTEMPTS_SYMBOL real_ulong_number
19261953
;
19271954

19281955
dropUser:

custom-parser/parser/grammar.php

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

tests/parser/data/failures.csv

Lines changed: 0 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -916,28 +916,8 @@ UNION
916916
ORDER BY c2 DESC, c1 ASC LIMIT 1
917917
) AS res"
918918
"((SELECT SQL_CALC_FOUND_ROWS * FROM r ORDER BY a LIMIT 5) ORDER BY -a LIMIT 4) ORDER BY a LIMIT 3"
919-
"CREATE USER foo@localhost IDENTIFIED BY 'foo' FAILED_LOGIN_ATTEMPTS 4 PASSWORD_LOCK_TIME 6"
920-
"ALTER USER foo@localhost FAILED_LOGIN_ATTEMPTS 2"
921-
"ALTER USER foo@localhost PASSWORD_LOCK_TIME 3"
922-
"CREATE USER foo@localhost FAILED_LOGIN_ATTEMPTS 2 PASSWORD_LOCK_TIME 3"
923-
"CREATE USER failed_login_attempts@localhost FAILED_LOGIN_ATTEMPTS 2"
924-
"CREATE USER password_lock_time@localhost PASSWORD_LOCK_TIME 3"
925-
"CREATE USER foo@localhost IDENTIFIED BY 'foo' FAILED_LOGIN_ATTEMPTS 2 PASSWORD_LOCK_TIME 3"
926-
"ALTER USER foo@localhost FAILED_LOGIN_ATTEMPTS 0"
927-
"ALTER USER foo@localhost FAILED_LOGIN_ATTEMPTS 2 PASSWORD_LOCK_TIME 0"
928-
"CREATE USER foo@localhost IDENTIFIED BY 'foo' FAILED_LOGIN_ATTEMPTS 2 PASSWORD_LOCK_TIME 3 ACCOUNT LOCK"
929-
"CREATE USER proxied_to_user@localhost IDENTIFIED WITH 'mysql_native_password' FAILED_LOGIN_ATTEMPTS 2 PASSWORD_LOCK_TIME 3"
930-
"CREATE USER proxy_user@localhost IDENTIFIED WITH 'mysql_native_password' FAILED_LOGIN_ATTEMPTS 2 PASSWORD_LOCK_TIME 3"
931-
"CREATE USER foo@localhost IDENTIFIED BY 'foo' FAILED_LOGIN_ATTEMPTS 2 PASSWORD_LOCK_TIME 2"
932-
"ALTER USER u1 FAILED_LOGIN_ATTEMPTS 2 PASSWORD_LOCK_TIME 3"
933-
"ALTER USER u1 FAILED_LOGIN_ATTEMPTS 0 PASSWORD_LOCK_TIME 0"
934-
"CREATE USER foo@localhost FAILED_LOGIN_ATTEMPTS 32767"
935-
"CREATE USER foo@localhost PASSWORD_LOCK_TIME 32767"
936-
"CREATE USER ''@localhost IDENTIFIED BY 'pwd' FAILED_LOGIN_ATTEMPTS 2 PASSWORD_LOCK_TIME 3"
937-
"CREATE USER foo@localhost IDENTIFIED BY 'foo' PASSWORD_LOCK_TIME 3 FAILED_LOGIN_ATTEMPTS 2"
938919
"ALTER USER foo@localhost ATTRIBUTE ""{ \"test\": \"account locking\" }"""
939920
"ALTER USER foo@localhost COMMENT ""This is a test account for verifying that password locking and user attributes won't interfer with one and another."""
940-
"CREATE USER foo@localhost IDENTIFIED BY 'foo' FAILED_LOGIN_ATTEMPTS 2 PASSWORD_LOCK_TIME UNBOUNDED"
941921
"ALTER USER u1 COMMENT 'free form text'"
942922
"ALTER USER u1 COMMENT 'changed the free form text'"
943923
"ALTER USER u1 ATTRIBUTE '{""uid"" : ""34234""}'"

tests/parser/data/stats.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
Total: 69524 | Failures: 412 / 0% | Exceptions: 0 / 0%
1+
Total: 69524 | Failures: 392 / 0% | Exceptions: 0 / 0%

0 commit comments

Comments
 (0)