diff --git a/Makefile.am b/Makefile.am index 341413a1..af8e8651 100644 --- a/Makefile.am +++ b/Makefile.am @@ -157,6 +157,8 @@ EXTRA_DIST = \ test/conf/include1_hmac_access.conf \ test/conf/include2_hmac_access.conf \ test/conf/include3_hmac_access.conf \ + test/conf/include_r1_hmac_access.conf \ + test/conf/include_r2_hmac_access.conf \ test/conf/gpg_access.conf \ test/conf/gpg_hmac_access.conf \ test/conf/gpg_no_pw_access.conf \ diff --git a/test/conf/include_r1_hmac_access.conf b/test/conf/include_r1_hmac_access.conf new file mode 100644 index 00000000..eaa02550 --- /dev/null +++ b/test/conf/include_r1_hmac_access.conf @@ -0,0 +1,13 @@ + +%include conf/include_r2_hmac_access.conf + +SOURCE ANY +KEY_BASE64 wzNP62oPPgEc+kXDPQLHPOayQBuNbYUTPP+QrErNDmg= +HMAC_KEY_BASE64 Yh+xizBnl6FotC5ec7FanVGClRMlsOAPh2u6eovnerfBVKwaVKzjGoblFMHMc593TNyi0dWn4opLoTIV9q/ttg== +FW_ACCESS_TIMEOUT 3 + + +SOURCE 99.9.9.9 +KEY_BASE64 wzNP62oPPgEc+kXDPQLHPOayQBuNbYUTPP+QrErNDmg= +HMAC_KEY_BASE64 Yh+xizBnl6FotC5ec7FanVGClRMlsOAPh2u6eovnerfBVKwaVKzjGoblFMHMc593TNyi0dWn4opLoTIV9q/ttg== +FW_ACCESS_TIMEOUT 3 diff --git a/test/conf/include_r2_hmac_access.conf b/test/conf/include_r2_hmac_access.conf new file mode 100644 index 00000000..74a8e7a0 --- /dev/null +++ b/test/conf/include_r2_hmac_access.conf @@ -0,0 +1,13 @@ + +%include conf/include_r1_hmac_access.conf + +SOURCE ANY +KEY_BASE64 wzNP62oPPgEc+kXDPQLHPOayQBuNbYUTPP+QrErNDmg= +HMAC_KEY_BASE64 Yh+xizBnl6FotC5ec7FanVGClRMlsOAPh2u6eovnerfBVKwaVKzjGoblFMHMc593TNyi0dWn4opLoTIV9q/ttg== +FW_ACCESS_TIMEOUT 3 + + +SOURCE 55.5.5.5 +KEY_BASE64 wzNP62oPPgEc+kXDPQLHPOayQBuNbYUTPP+QrErNDmg= +HMAC_KEY_BASE64 Yh+xizBnl6FotC5ec7FanVGClRMlsOAPh2u6eovnerfBVKwaVKzjGoblFMHMc593TNyi0dWn4opLoTIV9q/ttg== +FW_ACCESS_TIMEOUT 3 diff --git a/test/test-fwknop.pl b/test/test-fwknop.pl index da2f01a3..b898c568 100755 --- a/test/test-fwknop.pl +++ b/test/test-fwknop.pl @@ -412,6 +412,8 @@ our %cf = ( 'hmac_access' => "$conf_dir/hmac_access.conf", 'include1_hmac_access' => "$conf_dir/include1_hmac_access.conf", 'include2_hmac_access' => "$conf_dir/include2_hmac_access.conf", + 'include_r1_hmac_access' => "$conf_dir/include_r1_hmac_access.conf", + 'include_r2_hmac_access' => "$conf_dir/include_r2_hmac_access.conf", 'hmac_cmd_access' => "$conf_dir/hmac_cmd_access.conf", 'hmac_cmd_setuid_access' => "$conf_dir/hmac_cmd_setuid_access.conf", 'hmac_cmd_giduid_access' => "$conf_dir/hmac_cmd_giduid_access.conf", diff --git a/test/tests/basic_operations.pl b/test/tests/basic_operations.pl index 72efe56a..a2b78b88 100644 --- a/test/tests/basic_operations.pl +++ b/test/tests/basic_operations.pl @@ -465,6 +465,16 @@ 'exec_err' => $YES, 'cmdline' => "$fwknopdCmd $default_server_conf_args --sudo-exe /etc/hosts" }, + { + 'category' => 'basic operations', + 'subcategory' => 'server', + 'detail' => 'access.conf recursion limit', + 'function' => \&generic_exec, + 'exec_err' => $YES, + 'cmdline' => "$fwknopdCmd --exit-parse-config -a $cf{'include_r1_hmac_access'} " . + "-c $cf{'def'} -d $default_digest_file -p $default_pid_file", + 'positive_output_matches' => [qr/Refusing to go deeper than/], + }, { 'category' => 'basic operations', 'subcategory' => 'server',