diff --git a/src/sbbs3/chksmb.c b/src/sbbs3/chksmb.c index 13d3774eb2afbb552ff412dccf825fafad99eebb..d2f310678103e3fcd211c887326428dd38045cd0 100644 --- a/src/sbbs3/chksmb.c +++ b/src/sbbs3/chksmb.c @@ -344,10 +344,10 @@ int main(int argc, char **argv) if(!(smb.status.attr&SMB_EMAIL) && chkhash) { /* Look-up the message hashes */ - hashes=smb_msghashes(&msg,body,SMB_HASH_SOURCE_ALL); + hashes=smb_msghashes(&msg,body,SMB_HASH_SOURCE_DUPE); if(hashes!=NULL && hashes[0]!=NULL - && (i=smb_findhash(&smb,hashes,NULL,SMB_HASH_SOURCE_ALL,/* mark */TRUE )) + && (i=smb_findhash(&smb,hashes,NULL,SMB_HASH_SOURCE_DUPE,/* mark */TRUE )) !=SMB_SUCCESS) { for(h=0;hashes[h]!=NULL;h++) { if(hashes[h]->flags&SMB_HASH_MARKED) diff --git a/src/sbbs3/postmsg.cpp b/src/sbbs3/postmsg.cpp index 17687dd6238328d4f6c4471571affef2dac3286a..d758ee258c7c9a03b61772ceba7b0747dcc7c42b 100644 --- a/src/sbbs3/postmsg.cpp +++ b/src/sbbs3/postmsg.cpp @@ -425,7 +425,7 @@ extern "C" int DLLCALL savemsg(scfg_t* cfg, smb_t* smb, smbmsg_t* msg, client_t* ushort xlat=XLAT_NONE; int i; int storage=SMB_SELFPACK; - long dupechk_hashes=SMB_HASH_SOURCE_ALL; + long dupechk_hashes=SMB_HASH_SOURCE_DUPE; if(msg==NULL) return(SMB_FAILURE); diff --git a/src/sbbs3/qwktomsg.cpp b/src/sbbs3/qwktomsg.cpp index ff6b8089cba215d1c4cabac975b285acd332263d..1cc4df9404db9149841cb08842341de610b181b6 100644 --- a/src/sbbs3/qwktomsg.cpp +++ b/src/sbbs3/qwktomsg.cpp @@ -221,7 +221,7 @@ bool sbbs_t::qwk_import_msg(FILE *qwk_fp, char *hdrblk, ulong blocks uint16_t net_type; ushort xlat=XLAT_NONE; int storage=SMB_SELFPACK; - long dupechk_hashes=SMB_HASH_SOURCE_ALL; + long dupechk_hashes=SMB_HASH_SOURCE_DUPE; if(subnum!=INVALID_SUB && (hdrblk[0]=='*' || hdrblk[0]=='+' || cfg.sub[subnum]->misc&SUB_PONLY)) diff --git a/src/sbbs3/sbbsecho.c b/src/sbbs3/sbbsecho.c index 3582106fe69943f199755f8abcad0aee66d73089..0e3ea2ecf9f194fd65a2ce10c7deae0fce448336 100644 --- a/src/sbbs3/sbbsecho.c +++ b/src/sbbs3/sbbsecho.c @@ -2236,7 +2236,7 @@ int fmsgtosmsg(uchar* fbuf, fmsghdr_t fmsghdr, uint user, uint subnum) ushort xlat=XLAT_NONE,net; ulong l,m,length,bodylen,taillen,crc; ulong save; - long dupechk_hashes=SMB_HASH_SOURCE_ALL; + long dupechk_hashes=SMB_HASH_SOURCE_DUPE; faddr_t faddr,origaddr,destaddr; smb_t* smbfile; char fname[MAX_PATH+1]; diff --git a/src/sbbs3/smbutil.c b/src/sbbs3/smbutil.c index 484b95cef23378f77622441cdd99e0c7c723bced..e3b349cdb09fd09905d0ac9555ced963b7b0b8cd 100644 --- a/src/sbbs3/smbutil.c +++ b/src/sbbs3/smbutil.c @@ -183,7 +183,7 @@ void postmsg(char type, char* to, char* to_number, char* to_address, int i; ushort agent=AGENT_SMBUTIL; smbmsg_t msg; - long dupechk_hashes=SMB_HASH_SOURCE_ALL; + long dupechk_hashes=SMB_HASH_SOURCE_DUPE; /* Read message text from stream (file or stdin) */ msgtxtlen=0; diff --git a/src/smblib/smbadd.c b/src/smblib/smbadd.c index c336419492d2ebd02f573e9fcbfe63f0e1f73525..93bc61d34e374ae17a85772efe583d9ef1ee0699 100644 --- a/src/smblib/smbadd.c +++ b/src/smblib/smbadd.c @@ -85,7 +85,7 @@ int SMBCALL smb_addmsg(smb_t* smb, smbmsg_t* msg, int storage, long dupechk_hash msg->hdr.number=smb->status.last_msg+1; if(!(smb->status.attr&(SMB_EMAIL|SMB_NOHASH))) { - hashes=smb_msghashes(msg,body,SMB_HASH_SOURCE_ALL); + hashes=smb_msghashes(msg,body,SMB_HASH_SOURCE_DUPE); if(smb_findhash(smb, hashes, &found, dupechk_hashes, /* mark? */FALSE)==SMB_SUCCESS) { safe_snprintf(smb->last_error,sizeof(smb->last_error) diff --git a/src/smblib/smbdefs.h b/src/smblib/smbdefs.h index 633be8e44a271197c0a613c21f298f1629279c76..6ee40f7dcda8450c81b5d65319a644868cfa0760 100644 --- a/src/smblib/smbdefs.h +++ b/src/smblib/smbdefs.h @@ -469,6 +469,7 @@ enum { #define SMB_HASH_SOURCE_MASK 0x1f #define SMB_HASH_SOURCE_NONE 0 #define SMB_HASH_SOURCE_ALL 0xff +#define SMB_HASH_SOURCE_DUPE ((1<<SMB_HASH_SOURCE_BODY)|(1<<SMB_HASH_SOURCE_MSG_ID)|(1<<SMB_HASH_SOURCE_FTN_ID)) typedef struct _PACK { diff --git a/src/smblib/smbhash.c b/src/smblib/smbhash.c index 2a87ff6157d0c4489f1b22f5803e614d9f0f8e24..d75fde471c370741a253094e325773ba378ad95c 100644 --- a/src/smblib/smbhash.c +++ b/src/smblib/smbhash.c @@ -289,9 +289,9 @@ int SMBCALL smb_hashmsg(smb_t* smb, smbmsg_t* msg, const uchar* text, BOOL updat if(smb->status.attr&(SMB_EMAIL|SMB_NOHASH)) return(SMB_SUCCESS); - hashes=smb_msghashes(msg,text,SMB_HASH_SOURCE_ALL); + hashes=smb_msghashes(msg,text,SMB_HASH_SOURCE_DUPE); - if(smb_findhash(smb, hashes, &found, SMB_HASH_SOURCE_ALL, update)==SMB_SUCCESS && !update) { + if(smb_findhash(smb, hashes, &found, SMB_HASH_SOURCE_DUPE, update)==SMB_SUCCESS && !update) { retval=SMB_DUPE_MSG; safe_snprintf(smb->last_error,sizeof(smb->last_error) ,"duplicate %s: %s found in message #%lu"