From f57f475efee3b62a8cbe9f653d78e6b4a681fa33 Mon Sep 17 00:00:00 2001
From: "Rob Swindell (on Windows 11)" <rob@synchro.net>
Date: Mon, 4 Mar 2024 20:36:31 -0800
Subject: [PATCH] Add the SSH "ANYAUTH" toggle option

If the sysop wants their login module to always execute for SSH connections,
set to this "Any" rather than the default ("Valid Key or Username").
---
 src/sbbs3/scfg/scfgsrvr.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/src/sbbs3/scfg/scfgsrvr.c b/src/sbbs3/scfg/scfgsrvr.c
index 7bf526ec24..cb870e4979 100644
--- a/src/sbbs3/scfg/scfgsrvr.c
+++ b/src/sbbs3/scfg/scfgsrvr.c
@@ -401,6 +401,8 @@ static void ssh_srvr_cfg(bbs_startup_t* startup)
 			,startup->options & BBS_OPT_ALLOW_SSH ? iniLogLevelStringList()[startup->ssh_error_level] : "N/A");
 		snprintf(opt[i++], MAX_OPLN, "%-30s%s", "File Transfer (SFTP) Support"
 			,startup->options & BBS_OPT_ALLOW_SSH ? (startup->options & BBS_OPT_ALLOW_SFTP ? "Yes" : "No") : "N/A");
+		snprintf(opt[i++], MAX_OPLN, "%-30s%s", "User Authentication Type"
+			,startup->options & BBS_OPT_ALLOW_SSH ? (startup->options & BBS_OPT_SSH_ANYAUTH ? "Any" : "Valid Key or Username") : "N/A");
 		snprintf(opt[i++], MAX_OPLN, "%-30s%s", "Max SFTP Inactivity"
 			,(startup->options & BBS_OPT_ALLOW_SSH) && (startup->options & BBS_OPT_ALLOW_SFTP) ? vduration(startup->max_sftp_inactivity) : "N/A");
 
@@ -446,6 +448,11 @@ static void ssh_srvr_cfg(bbs_startup_t* startup)
 				startup->options ^= BBS_OPT_ALLOW_SFTP;
 				break;
 			case 6:
+				if(!(startup->options & BBS_OPT_ALLOW_SSH))
+					break;
+				startup->options ^= BBS_OPT_SSH_ANYAUTH;
+				break;
+			case 7:
 				if(!(startup->options & BBS_OPT_ALLOW_SSH))
 					break;
 				if(!(startup->options & BBS_OPT_ALLOW_SFTP))
-- 
GitLab