@@ -118,17 +118,38 @@ def test_perm(perm: Optional[str]):
118
118
actual_perms = file_stat .st_mode & PERM_BITS_UMASK
119
119
expected_perms = p [perm ]
120
120
assert_equal (expected_perms , actual_perms )
121
+ return actual_perms
121
122
122
123
# Remove any leftover rpc{user|password} config options from previous tests
123
124
self .nodes [1 ].replace_in_config ([("rpcuser" , "#rpcuser" ), ("rpcpassword" , "#rpcpassword" )])
124
125
125
126
self .log .info ('Check default cookie permission' )
126
- test_perm (None )
127
+ default_perms = test_perm (None )
127
128
128
129
self .log .info ('Check custom cookie permissions' )
129
130
for perm in p .keys ():
130
131
test_perm (perm )
131
132
133
+ self .log .info ('Check leaving cookie permissions alone' )
134
+ unassigned_perms = os .stat (self .nodes [1 ].chain_path / 'debug.log' ).st_mode & PERM_BITS_UMASK
135
+ self .restart_node (1 , extra_args = ["-rpccookieperms=0" ])
136
+ actual_perms = os .stat (cookie_file_path ).st_mode & PERM_BITS_UMASK
137
+ assert_equal (unassigned_perms , actual_perms )
138
+ self .restart_node (1 , extra_args = ["-norpccookieperms" ])
139
+ actual_perms = os .stat (cookie_file_path ).st_mode & PERM_BITS_UMASK
140
+ assert_equal (unassigned_perms , actual_perms )
141
+
142
+ self .log .info ('Check -norpccookieperms -rpccookieperms' )
143
+ self .restart_node (1 , extra_args = ["-rpccookieperms=0" , "-rpccookieperms=1" ])
144
+ actual_perms = os .stat (cookie_file_path ).st_mode & PERM_BITS_UMASK
145
+ assert_equal (default_perms , actual_perms )
146
+ self .restart_node (1 , extra_args = ["-norpccookieperms" , "-rpccookieperms" ])
147
+ actual_perms = os .stat (cookie_file_path ).st_mode & PERM_BITS_UMASK
148
+ assert_equal (default_perms , actual_perms )
149
+ self .restart_node (1 , extra_args = ["-rpccookieperms=1660" , "-norpccookieperms" , "-rpccookieperms" ])
150
+ actual_perms = os .stat (cookie_file_path ).st_mode & PERM_BITS_UMASK
151
+ assert_equal (default_perms , actual_perms )
152
+
132
153
def test_norpccookiefile (self , node0_cookie_path ):
133
154
assert self .nodes [0 ].is_node_stopped (), "We expect previous test to stopped the node"
134
155
assert not node0_cookie_path .exists ()
0 commit comments