From 0f2bf2f0aafa661b92c752b12a87f63d1fe7ee89 Mon Sep 17 00:00:00 2001
From: rswindell <>
Date: Thu, 10 Nov 2016 10:19:22 +0000
Subject: [PATCH] SBBSecho will ignore all votes and poll messages (FTN doesn't
 support them). These messages would actually already be ignored due to the
 lack of a message body, but by checking the message attributes (and redundant
 msg 'type'), the msg headers for votes & polls aren't even loaded into
 memory. SBBSecho v2 should work just fine with msg bases that contain votes
 or polls as well.

---
 src/sbbs3/sbbsecho.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/src/sbbs3/sbbsecho.c b/src/sbbs3/sbbsecho.c
index 2f9e5fb90b..663a4cf2ca 100644
--- a/src/sbbs3/sbbsecho.c
+++ b/src/sbbs3/sbbsecho.c
@@ -939,7 +939,7 @@ enum arealist_type {
 void netmail_arealist(enum arealist_type type, fidoaddr_t addr, const char* to)
 {
 	char str[256],title[128],match,*p,*tp;
-	unsigned k,x,y;
+	unsigned k,x;
 	unsigned u;
 	str_list_t	area_list;
 
@@ -2228,6 +2228,9 @@ ulong loadmsgs(post_t** post, ulong ptr)
 		if(idx.number==0)	/* invalid message number, ignore */
 			continue;
 
+		if(idx.attr&(MSG_VOTE|MSG_POLL))
+			continue;
+
 		if(idx.number<=ptr || (idx.attr&MSG_DELETE))
 			continue;
 
@@ -3936,6 +3939,9 @@ void export_echomail(const char* sub_code, const nodecfg_t* nodecfg, bool rescan
 				continue; 
 			}
 
+			if(msg.hdr.type != SMB_MSG_TYPE_NORMAL)
+				continue;
+
 			memset(&hdr,0,sizeof(fmsghdr_t));	 /* Zero the header */
 			hdr.origzone=scfg.sub[i]->faddr.zone;
 			hdr.orignet=scfg.sub[i]->faddr.net;
-- 
GitLab