diff --git a/exec/sbbslist.js b/exec/sbbslist.js
index 01908dda37e3fe2b6da0e1f9e163ed0f95ccab3e..03c8fec37fc584f27689ab89be7413f3ea007825 100644
--- a/exec/sbbslist.js
+++ b/exec/sbbslist.js
@@ -100,7 +100,9 @@ function export_entry(bbs, msgbase)
                 break;
             case 'telnet':
                 body += "Telnet:        " + bbs.service[i].address + "\r\n";
-                body += "Port:          " + bbs.service[i].port + "\r\n";
+				if(bbs.service[i].port 
+					&& bbs.service[i].port != standard_service_port["telnet"])
+					body += "Port:          " + bbs.service[i].port + "\r\n";
                 break;
          }
     }
@@ -1325,7 +1327,7 @@ function print_additional_services(bbs, addr, start)
 		if(!bbs.service[i] || bbs.service[i].address != addr)
 			continue;
 		printf(", %s", bbs.service[i].protocol);
-		if(bbs.service[i].port != standard_service_port[bbs.service[i].protocol.toLowerCase()])
+		if(bbs.service[i].port && bbs.service[i].port != standard_service_port[bbs.service[i].protocol.toLowerCase()])
 			printf(":%u", bbs.service[i].port);
 	}
 }  
@@ -1444,7 +1446,9 @@ function view(list, current)
 			if(listed_hosts.indexOf(bbs.service[i].address) >= 0)	// Already listed
 				continue;
 			printf("\1n\1c%11s \1h%s\1n\1c", bbs.service[i].protocol, bbs.service[i].address);
-			if(bbs.service[i].protocol != 'modem' && bbs.service[i].port != standard_service_port[bbs.service[i].protocol.toLowerCase()])
+			if(bbs.service[i].protocol != 'modem' 
+				&& bbs.service[i].port
+				&& bbs.service[i].port != standard_service_port[bbs.service[i].protocol.toLowerCase()])
 				printf(":%u", bbs.service[i].port);
 			if(bbs.service[i].description)
 				printf(" %s", bbs.service[i].description);