diff --git a/src/sbbs3/fido.cpp b/src/sbbs3/fido.cpp
index 50c04e814b1254c5b8311740a85d972c5471cb71..f58ff59ca80203ac78a9ae7a6d452031a7cfcf7f 100644
--- a/src/sbbs3/fido.cpp
+++ b/src/sbbs3/fido.cpp
@@ -379,7 +379,8 @@ bool sbbs_t::netmail(char *into, char *title, long mode)
 		cc_sent++; }
 
 	if(cfg.netmail_sem[0])		/* update semaphore file */
-		if((file=nopen(cfg.netmail_sem,O_WRONLY|O_CREAT|O_TRUNC))!=-1)
+		if((file=nopen(cmdstr(cfg.netmail_sem,nulstr,nulstr,NULL)
+				,O_WRONLY|O_CREAT|O_TRUNC))!=-1)
 			close(file);
 
 	FREE(buf);
@@ -690,7 +691,8 @@ void sbbs_t::qwktonetmail(FILE *rep, char *block, char *into, uchar fromhub)
 		else {		/* Successful */
 			if(inet) {
 				if(cfg.inetmail_sem[0]) 	 /* update semaphore file */
-					if((fido=nopen(cfg.inetmail_sem,O_WRONLY|O_CREAT|O_TRUNC))!=-1)
+					if((fido=nopen(cmdstr(cfg.inetmail_sem,nulstr,nulstr,NULL)
+						,O_WRONLY|O_CREAT|O_TRUNC))!=-1)
 						close(fido);
 				if(!(useron.exempt&FLAG('S')))
 					subtract_cdt(&cfg,&useron,cfg.inetmail_cost); }
@@ -846,7 +848,8 @@ void sbbs_t::qwktonetmail(FILE *rep, char *block, char *into, uchar fromhub)
 	close(fido);
 	FREE((char *)qwkbuf);
 	if(cfg.netmail_sem[0])		/* update semaphore file */
-		if((fido=nopen(cfg.netmail_sem,O_WRONLY|O_CREAT|O_TRUNC))!=-1)
+		if((fido=nopen(cmdstr(cfg.netmail_sem,nulstr,nulstr,NULL)
+			,O_WRONLY|O_CREAT|O_TRUNC))!=-1)
 			close(fido);
 	if(!(useron.exempt&FLAG('S')))
 		subtract_cdt(&cfg,&useron,cfg.netmail_cost);
diff --git a/src/sbbs3/netmail.cpp b/src/sbbs3/netmail.cpp
index a42a4000f8157dbaf309f691bde30c80a60b46a9..68785cfc77a23bb2a308e1d8208598d02619f165 100644
--- a/src/sbbs3/netmail.cpp
+++ b/src/sbbs3/netmail.cpp
@@ -270,7 +270,8 @@ bool sbbs_t::inetmail(char *into, char *subj, long mode)
 		autohangup();
 
 	if(cfg.inetmail_sem[0]) 	 /* update semaphore file */
-		if((file=nopen(cfg.inetmail_sem,O_WRONLY|O_CREAT|O_TRUNC))!=-1)
+		if((file=nopen(cmdstr(cfg.inetmail_sem,nulstr,nulstr,NULL)
+			,O_WRONLY|O_CREAT|O_TRUNC))!=-1)
 			close(file);
 	if(!(useron.exempt&FLAG('S')))
 		subtract_cdt(&cfg,&useron,cfg.inetmail_cost);
diff --git a/src/sbbs3/postmsg.cpp b/src/sbbs3/postmsg.cpp
index 967b77b7cc15160bfcba2462fa86b3a97410ef14..65f39657661d56a9a83ce97898d06986d0864811 100644
--- a/src/sbbs3/postmsg.cpp
+++ b/src/sbbs3/postmsg.cpp
@@ -335,7 +335,8 @@ bool sbbs_t::postmsg(uint subnum, smbmsg_t *remsg, long wm_mode)
 	sprintf(str,"Posted on %s %s",cfg.grp[cfg.sub[subnum]->grp]->sname,cfg.sub[subnum]->lname);
 	logline("P+",str);
 	if(cfg.sub[subnum]->misc&SUB_FIDO && cfg.sub[subnum]->echomail_sem[0]) /* semaphore */
-		if((file=nopen(cfg.sub[subnum]->echomail_sem,O_WRONLY|O_CREAT|O_TRUNC))!=-1)
+		if((file=nopen(cmdstr(cfg.sub[subnum]->echomail_sem,nulstr,nulstr,NULL)
+			,O_WRONLY|O_CREAT|O_TRUNC))!=-1)
 			close(file);
 	return(true);
 }
diff --git a/src/sbbs3/un_qwk.cpp b/src/sbbs3/un_qwk.cpp
index fac926b2d76ff85f62ef0b8559ebb74db98ff262..56bdaedc01681d2fa24caf2100b066acc8703d6e 100644
--- a/src/sbbs3/un_qwk.cpp
+++ b/src/sbbs3/un_qwk.cpp
@@ -232,7 +232,8 @@ bool sbbs_t::unpack_qwk(char *packet,uint hubnum)
 		}
 
 		if(cfg.sub[j]->misc&SUB_FIDO && cfg.sub[j]->echomail_sem[0]) /* update semaphore */
-			if((file=nopen(cfg.sub[j]->echomail_sem,O_WRONLY|O_CREAT|O_TRUNC))!=-1)
+			if((file=nopen(cmdstr(cfg.sub[j]->echomail_sem,nulstr,nulstr,NULL)
+				,O_WRONLY|O_CREAT|O_TRUNC))!=-1)
 				close(file);
 		lprintf("Message from %s Posted on %s %s"
 			,cfg.qhub[hubnum]->id,cfg.grp[cfg.sub[j]->grp]->sname,cfg.sub[j]->lname); 
diff --git a/src/sbbs3/un_rep.cpp b/src/sbbs3/un_rep.cpp
index d918b126fb8724d78d42aafe8ff3bd60fc8a50df..55357fd8db279cc31412915e36cd9b494190ad90 100644
--- a/src/sbbs3/un_rep.cpp
+++ b/src/sbbs3/un_rep.cpp
@@ -396,7 +396,8 @@ bool sbbs_t::unpack_rep(char* repfile)
 			sprintf(str,"Posted on %s/%s",cfg.grp[cfg.sub[n]->grp]->sname
 				,cfg.sub[n]->lname);
 			if(cfg.sub[n]->misc&SUB_FIDO && cfg.sub[n]->echomail_sem[0])  /* semaphore */
-				if((file=nopen(cfg.sub[n]->echomail_sem,O_WRONLY|O_CREAT|O_TRUNC))!=-1)
+				if((file=nopen(cmdstr(cfg.sub[n]->echomail_sem,nulstr,nulstr,NULL)
+					,O_WRONLY|O_CREAT|O_TRUNC))!=-1)
 					close(file);
 			logline("P+",str); } }         /* end of public message */
 
diff --git a/src/sbbs3/upload.cpp b/src/sbbs3/upload.cpp
index 7cf8ab0b03be577e740959ddef3de6fab5fb2c85..9ea26379a9b777b8aaf2b97fe92f39ced097929d 100644
--- a/src/sbbs3/upload.cpp
+++ b/src/sbbs3/upload.cpp
@@ -177,7 +177,8 @@ bool sbbs_t::uploadfile(file_t *f)
 	sprintf(str,"Uploaded %s to %s %s",f->name,cfg.lib[cfg.dir[f->dir]->lib]->sname
 		,cfg.dir[f->dir]->sname);
 	if(cfg.dir[f->dir]->upload_sem[0])
-		if((file=nopen(cfg.dir[f->dir]->upload_sem,O_WRONLY|O_CREAT|O_TRUNC))!=-1)
+		if((file=nopen(cmdstr(cfg.dir[f->dir]->upload_sem,nulstr,nulstr,NULL)
+			,O_WRONLY|O_CREAT|O_TRUNC))!=-1)
 			close(file);
 	logline("U+",str);
 	/**************************/
diff --git a/src/sbbs3/writemsg.cpp b/src/sbbs3/writemsg.cpp
index 0184fc92df3835a6c1c41017cc1accdc0935f15b..f24103626591a8f779d42341cb26be41100533be 100644
--- a/src/sbbs3/writemsg.cpp
+++ b/src/sbbs3/writemsg.cpp
@@ -1187,7 +1187,7 @@ bool sbbs_t::movemsg(smbmsg_t* msg, uint subnum)
 		,cfg.grp[cfg.sub[subnum]->grp]->sname,cfg.sub[subnum]->sname);
 	logline("M+",str);
 	if(cfg.sub[newsub]->misc&SUB_FIDO && cfg.sub[newsub]->echomail_sem[0])
-		if((file=nopen(cfg.sub[newsub]->echomail_sem
+		if((file=nopen(cmdstr(cfg.sub[newsub]->echomail_sem,nulstr,nulstr,NULL)
 			,O_WRONLY|O_CREAT|O_TRUNC))!=-1)
 			close(file);
 	return(true);