@@ -38,6 +38,7 @@ const (
38
38
39
39
// bit masks for different directive locations.
40
40
ngxDirectConf = 0x00010000 // main file (not used)
41
+ ngxMgmtMainConf = 0x00020000 // mgmt // unique bitmask that may not match NGINX source
41
42
ngxMainConf = 0x00040000 // main context
42
43
ngxEventConf = 0x00080000 // events
43
44
ngxMailMainConf = 0x00100000 // mail
@@ -55,6 +56,7 @@ const (
55
56
)
56
57
57
58
// helpful directive location alias describing "any" context
59
+ // doesn't include ngxHTTPSifConf, ngxHTTPLifConf, ngxHTTPLmtConf, or ngxMgmtMainConf.
58
60
const ngxAnyConf = ngxMainConf | ngxEventConf | ngxMailMainConf | ngxMailSrvConf |
59
61
ngxStreamMainConf | ngxStreamSrvConf | ngxStreamUpsConf |
60
62
ngxHTTPMainConf | ngxHTTPSrvConf | ngxHTTPLocConf | ngxHTTPUpsConf |
@@ -78,6 +80,7 @@ var contexts = map[string]uint{
78
80
blockCtx {"http" , "server" , "if" }.key (): ngxHTTPSifConf ,
79
81
blockCtx {"http" , "location" , "if" }.key (): ngxHTTPLifConf ,
80
82
blockCtx {"http" , "location" , "limit_except" }.key (): ngxHTTPLmtConf ,
83
+ blockCtx {"mgmt" }.key (): ngxMgmtMainConf ,
81
84
}
82
85
83
86
func enterBlockCtx (stmt * Directive , ctx blockCtx ) blockCtx {
@@ -339,6 +342,9 @@ var directives = map[string][]uint{
339
342
"client_max_body_size" : {
340
343
ngxHTTPMainConf | ngxHTTPSrvConf | ngxHTTPLocConf | ngxConfTake1 ,
341
344
},
345
+ "connect_timeout" : {
346
+ ngxMgmtMainConf | ngxConfTake1 ,
347
+ },
342
348
"connection_pool_size" : {
343
349
ngxHTTPMainConf | ngxHTTPSrvConf | ngxConfTake1 ,
344
350
},
@@ -972,6 +978,9 @@ var directives = map[string][]uint{
972
978
"merge_slashes" : {
973
979
ngxHTTPMainConf | ngxHTTPSrvConf | ngxConfFlag ,
974
980
},
981
+ "mgmt" : {
982
+ ngxMainConf | ngxConfBlock | ngxConfNoArgs ,
983
+ },
975
984
"min_delete_depth" : {
976
985
ngxHTTPMainConf | ngxHTTPSrvConf | ngxHTTPLocConf | ngxConfTake1 ,
977
986
},
@@ -1372,6 +1381,9 @@ var directives = map[string][]uint{
1372
1381
"read_ahead" : {
1373
1382
ngxHTTPMainConf | ngxHTTPSrvConf | ngxHTTPLocConf | ngxConfTake1 ,
1374
1383
},
1384
+ "read_timeout" : {
1385
+ ngxMgmtMainConf | ngxConfTake1 ,
1386
+ },
1375
1387
"real_ip_header" : {
1376
1388
ngxHTTPMainConf | ngxHTTPSrvConf | ngxHTTPLocConf | ngxConfTake1 ,
1377
1389
},
@@ -1398,11 +1410,13 @@ var directives = map[string][]uint{
1398
1410
ngxMailMainConf | ngxMailSrvConf | ngxConf1More ,
1399
1411
ngxStreamMainConf | ngxStreamUpsConf | ngxStreamSrvConf | ngxConf1More ,
1400
1412
ngxHTTPUpsConf | ngxConf1More ,
1413
+ ngxMgmtMainConf | ngxConf1More ,
1401
1414
},
1402
1415
"resolver_timeout" : {
1403
1416
ngxHTTPMainConf | ngxHTTPSrvConf | ngxHTTPLocConf | ngxHTTPUpsConf | ngxConfTake1 ,
1404
1417
ngxMailMainConf | ngxMailSrvConf | ngxConfTake1 ,
1405
1418
ngxStreamMainConf | ngxStreamUpsConf | ngxStreamSrvConf | ngxConfTake1 ,
1419
+ ngxMgmtMainConf | ngxConfTake1 ,
1406
1420
},
1407
1421
"return" : {
1408
1422
ngxHTTPSrvConf | ngxHTTPSifConf | ngxHTTPLocConf | ngxHTTPLifConf | ngxConfTake12 ,
@@ -1566,6 +1580,7 @@ var directives = map[string][]uint{
1566
1580
},
1567
1581
"send_timeout" : {
1568
1582
ngxHTTPMainConf | ngxHTTPSrvConf | ngxHTTPLocConf | ngxConfTake1 ,
1583
+ ngxMgmtMainConf | ngxConfTake1 ,
1569
1584
},
1570
1585
"sendfile" : {
1571
1586
ngxHTTPMainConf | ngxHTTPSrvConf | ngxHTTPLocConf | ngxHTTPLifConf | ngxConfFlag ,
@@ -1654,6 +1669,7 @@ var directives = map[string][]uint{
1654
1669
"ssl" : {
1655
1670
ngxHTTPMainConf | ngxHTTPSrvConf | ngxConfFlag ,
1656
1671
ngxMailMainConf | ngxMailSrvConf | ngxConfFlag ,
1672
+ ngxMgmtMainConf | ngxConfFlag ,
1657
1673
},
1658
1674
"ssl_alpn" : {
1659
1675
ngxStreamMainConf | ngxStreamSrvConf | ngxConf1More ,
@@ -1665,16 +1681,19 @@ var directives = map[string][]uint{
1665
1681
ngxHTTPMainConf | ngxHTTPSrvConf | ngxConfTake1 ,
1666
1682
ngxMailMainConf | ngxMailSrvConf | ngxConfTake1 ,
1667
1683
ngxStreamMainConf | ngxStreamSrvConf | ngxConfTake1 ,
1684
+ ngxMgmtMainConf | ngxConfTake1 ,
1668
1685
},
1669
1686
"ssl_certificate_key" : {
1670
1687
ngxHTTPMainConf | ngxHTTPSrvConf | ngxConfTake1 ,
1671
1688
ngxMailMainConf | ngxMailSrvConf | ngxConfTake1 ,
1672
1689
ngxStreamMainConf | ngxStreamSrvConf | ngxConfTake1 ,
1690
+ ngxMgmtMainConf | ngxConfTake1 ,
1673
1691
},
1674
1692
"ssl_ciphers" : {
1675
1693
ngxHTTPMainConf | ngxHTTPSrvConf | ngxConfTake1 ,
1676
1694
ngxMailMainConf | ngxMailSrvConf | ngxConfTake1 ,
1677
1695
ngxStreamMainConf | ngxStreamSrvConf | ngxConfTake1 ,
1696
+ ngxMgmtMainConf | ngxConfTake1 ,
1678
1697
},
1679
1698
"ssl_client_certificate" : {
1680
1699
ngxHTTPMainConf | ngxHTTPSrvConf | ngxConfTake1 ,
@@ -1690,6 +1709,7 @@ var directives = map[string][]uint{
1690
1709
ngxHTTPMainConf | ngxHTTPSrvConf | ngxConfTake1 ,
1691
1710
ngxMailMainConf | ngxMailSrvConf | ngxConfTake1 ,
1692
1711
ngxStreamMainConf | ngxStreamSrvConf | ngxConfTake1 ,
1712
+ ngxMgmtMainConf | ngxConfTake1 ,
1693
1713
},
1694
1714
"ssl_dhparam" : {
1695
1715
ngxHTTPMainConf | ngxHTTPSrvConf | ngxConfTake1 ,
@@ -1710,6 +1730,9 @@ var directives = map[string][]uint{
1710
1730
"ssl_handshake_timeout" : {
1711
1731
ngxStreamMainConf | ngxStreamSrvConf | ngxConfTake1 ,
1712
1732
},
1733
+ "ssl_name" : {
1734
+ ngxMgmtMainConf | ngxConfTake1 ,
1735
+ },
1713
1736
"ssl_ocsp" : {
1714
1737
ngxHTTPMainConf | ngxHTTPSrvConf | ngxConfTake1 ,
1715
1738
},
@@ -1723,6 +1746,7 @@ var directives = map[string][]uint{
1723
1746
ngxHTTPMainConf | ngxHTTPSrvConf | ngxConfTake1 ,
1724
1747
ngxMailMainConf | ngxMailSrvConf | ngxConfTake1 ,
1725
1748
ngxStreamMainConf | ngxStreamSrvConf | ngxConfTake1 ,
1749
+ ngxMgmtMainConf | ngxConfTake1 ,
1726
1750
},
1727
1751
"ssl_prefer_server_ciphers" : {
1728
1752
ngxHTTPMainConf | ngxHTTPSrvConf | ngxConfFlag ,
@@ -1736,10 +1760,14 @@ var directives = map[string][]uint{
1736
1760
ngxHTTPMainConf | ngxHTTPSrvConf | ngxConf1More ,
1737
1761
ngxMailMainConf | ngxMailSrvConf | ngxConf1More ,
1738
1762
ngxStreamMainConf | ngxStreamSrvConf | ngxConf1More ,
1763
+ ngxMgmtMainConf | ngxConf1More ,
1739
1764
},
1740
1765
"ssl_reject_handshake" : {
1741
1766
ngxHTTPMainConf | ngxHTTPSrvConf | ngxConfFlag ,
1742
1767
},
1768
+ "ssl_server_name" : {
1769
+ ngxMgmtMainConf | ngxConfFlag ,
1770
+ },
1743
1771
"ssl_session_cache" : {
1744
1772
ngxHTTPMainConf | ngxHTTPSrvConf | ngxConfTake12 ,
1745
1773
ngxMailMainConf | ngxMailSrvConf | ngxConfTake12 ,
@@ -1776,6 +1804,10 @@ var directives = map[string][]uint{
1776
1804
ngxHTTPMainConf | ngxHTTPSrvConf | ngxConfTake1 ,
1777
1805
ngxMailMainConf | ngxMailSrvConf | ngxConfTake1 ,
1778
1806
ngxStreamMainConf | ngxStreamSrvConf | ngxConfTake1 ,
1807
+ ngxMgmtMainConf | ngxConfTake1 ,
1808
+ },
1809
+ "ssl_verify" : {
1810
+ ngxMgmtMainConf | ngxConfFlag ,
1779
1811
},
1780
1812
"ssl_verify_client" : {
1781
1813
ngxHTTPMainConf | ngxHTTPSrvConf | ngxConfTake1 ,
@@ -1786,6 +1818,7 @@ var directives = map[string][]uint{
1786
1818
ngxHTTPMainConf | ngxHTTPSrvConf | ngxConfTake1 ,
1787
1819
ngxMailMainConf | ngxMailSrvConf | ngxConfTake1 ,
1788
1820
ngxStreamMainConf | ngxStreamSrvConf | ngxConfTake1 ,
1821
+ ngxMgmtMainConf | ngxConfTake1 ,
1789
1822
},
1790
1823
"starttls" : {
1791
1824
ngxMailMainConf | ngxMailSrvConf | ngxConfTake1 ,
@@ -1852,6 +1885,9 @@ var directives = map[string][]uint{
1852
1885
"upstream_conf" : {
1853
1886
ngxHTTPLocConf | ngxConfNoArgs ,
1854
1887
},
1888
+ "usage_report" : {
1889
+ ngxMgmtMainConf | ngxConfNoArgs | ngxConfTake1 | ngxConfTake2 ,
1890
+ },
1855
1891
"use" : {
1856
1892
ngxEventConf | ngxConfTake1 ,
1857
1893
},
@@ -1885,6 +1921,9 @@ var directives = map[string][]uint{
1885
1921
"userid_service" : {
1886
1922
ngxHTTPMainConf | ngxHTTPSrvConf | ngxHTTPLocConf | ngxConfTake1 ,
1887
1923
},
1924
+ "uuid_file" : {
1925
+ ngxMgmtMainConf | ngxConfTake1 ,
1926
+ },
1888
1927
"uwsgi_bind" : {
1889
1928
ngxHTTPMainConf | ngxHTTPSrvConf | ngxHTTPLocConf | ngxConfTake12 ,
1890
1929
},
0 commit comments