diff --git a/exec/load/fidocfg.js b/exec/load/fidocfg.js
index e5f791c0864097551a303e99f5f622a7ad77f85d..079627eed35a01784e54cbcb635db51d295e0017 100644
--- a/exec/load/fidocfg.js
+++ b/exec/load/fidocfg.js
@@ -23,6 +23,18 @@ function TickITCfg() {
 	var sects;
 	var i;
 
+	function get_bool(val) {
+		if (val === undefined)
+			return false;
+		switch(val.toUpperCase()) {
+		case 'YES':
+		case 'TRUE':
+		case 'ON':
+			return true;
+		}
+		return false;
+	}
+
 	function lcprops(obj)
 	{
 		var i;
@@ -49,6 +61,8 @@ function TickITCfg() {
 		lcprops(this.acfg[sects[i].toLowerCase()]);
 	}
 	tcfg.close();
+	this.gcfg.ignorepassword = get_bool(this.ignorepassword);
+	this.gcfg.secureonly = get_bool(this.secureonly);
 }
 TickITCfg.prototype.cset = '0123456789abcdefghijklmnopqrstuvwxyz-_';
 TickITCfg.prototype.basefn_to_num = function(num)
diff --git a/exec/tickit.js b/exec/tickit.js
index 15f57fc4b1a5eea3ead858671dc43571a4e97d77..8592abe0d95fc6572c6969e9eaa916ea2537e5f5 100644
--- a/exec/tickit.js
+++ b/exec/tickit.js
@@ -504,10 +504,7 @@ function parse_ticfile(fname)
 		}
 	}
 
-	if (tickit.gcfg.ignorepassword === undefined ||
-	    tickit.gcfg.ignorepassword.toLowerCase() == 'no' ||
-	    tickit.gcfg.ignorepassword.toLowerCase() == 'off' ||
-	    tickit.gcfg.ignorepassword.toLowerCase() == 'false')
+	if (!tickit.gcfg.ignorepassword) {
 		if (!sbbsecho.match_pw(tic.from, tic.pw))
 			return false;
 	}
@@ -549,6 +546,10 @@ function main() {
 	var processed = 0;
 
 	for (i=0; i<sbbsecho.inb.length; i++) {
+		if (tickit.gcfg.secureonly) {
+			if (sbbsecho.inb[i] != sbbsecho.secure_inbound)
+				continue;
+		}
 		if (system.platform === 'Win32')
 			ticfiles = directory(sbbsecho.inb[i]+'/*.tic');
 		else