Subj : New Defects reported by Coverity Scan for Synchronet To : All From : scan-admin@coverity.com Date : Wed Dec 31 2025 01:45 pm ----==_mimepart_695528f458f41_188c5a2c2daae1599845314 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Hi, Please find the latest report on new defect(s) introduced to Synchronet found with Coverity Scan. 1 new defect(s) introduced to Synchronet found with Coverity Scan. 4 defect(s), reported by Coverity Scan earlier, were marked fixed in the recent build analyzed by Coverity Scan. New defect(s) Reported-by: Coverity Scan Showing 1 of 1 defect(s) ** CID 640333: (NEGATIVE_RETURNS) /writemsg.cpp: 463 in sbbs_t::writemsg(const char *, const char *, char *, int, int, const char *, const char *, const char **, const char **)() /writemsg.cpp: 428 in sbbs_t::writemsg(const char *, const char *, char *, int, int, const char *, const char *, const char **, const char **)() /writemsg.cpp: 440 in sbbs_t::writemsg(const char *, const char *, char *, int, int, const char *, const char *, const char **, const char **)() _____________________________________________________________________________________________ *** CID 640333: (NEGATIVE_RETURNS) /writemsg.cpp: 463 in sbbs_t::writemsg(const char *, const char *, char *, int, int, const char *, const char *, const char **, const char **)() 457 while (p) { 458 if (*p == ',' || *p == ' ') 459 p++; 460 i = atoi(p); 461 if (!i) 462 break; >>> CID 640333: (NEGATIVE_RETURNS) >>> "l" is passed to a parameter that cannot be negative. 463 fseek(stream, l, SEEK_SET); 464 j = 1; 465 while (!feof(stream) && !ferror(stream) && j < i) { 466 if (!fgets(tmp, sizeof(tmp), stream)) 467 break; 468 j++; /* skip beginning */ /writemsg.cpp: 428 in sbbs_t::writemsg(const char *, const char *, char *, int, int, const char *, const char *, const char **, const char **)() 422 free(buf); 423 return false; 424 } 425 if (!i && linesquoted) 426 break; 427 if (!i || quote[0] == all_key()) { /* Quote all */ >>> CID 640333: (NEGATIVE_RETURNS) >>> "l" is passed to a parameter that cannot be negative. 428 fseek(stream, l, SEEK_SET); 429 while (!feof(stream) && !ferror(stream)) { 430 if (!fgets(str, sizeof(str), stream)) 431 break; 432 quotestr(str); 433 SAFEPRINTF2(tmp, quote_fmt, term->cols - 4, str); /writemsg.cpp: 440 in sbbs_t::writemsg(const char *, const char *, char *, int, int, const char *, const char *, const char **, const char **)() 434 if (write(file, tmp, strlen(tmp)) > 0) 435 linesquoted++; 436 } 437 break; 438 } 439 if (quote[0] == list_key()) { >>> CID 640333: (NEGATIVE_RETURNS) >>> "l" is passed to a parameter that cannot be negative. 440 fseek(stream, l, SEEK_SET); 441 i = 1; 442 term->newline(); 443 attr(LIGHTGRAY); 444 while (!feof(stream) && !ferror(stream) && !msgabort()) { 445 if (!fgets(str, sizeof(str), stream)) ________________________________________________________________________________________________________ To view the defects in Coverity Scan visit, https://scan.coverity.com/projects/synchronet?tab=overview ----==_mimepart_695528f458f41_188c5a2c2daae1599845314 Content-Type: text/html; charset=us-ascii Content-Transfer-Encoding: 7bit New Defects Reported - Synchronet

Hi,

Please find the latest report on new defect(s) introduced to Synchronet found with Coverity Scan.

Defect Details

** CID 640333:         (NEGATIVE_RETURNS)
/writemsg.cpp: 463           in sbbs_t::writemsg(const char *, const char *, char *, int, int, const char *, const char *, const char **, const char **)()
/writemsg.cpp: 428           in sbbs_t::writemsg(const char *, const char *, char *, int, int, const char *, const char *, const char **, const char **)()
/writemsg.cpp: 440           in sbbs_t::writemsg(const char *, const char *, char *, int, int, const char *, const char *, const char **, const char **)()


_____________________________________________________________________________________________
*** CID 640333:           (NEGATIVE_RETURNS)
/writemsg.cpp: 463             in sbbs_t::writemsg(const char *, const char *, char *, int, int, const char *, const char *, const char **, const char **)()
457     				while (p) {
458     					if (*p == ',' || *p == ' ')
459     						p++;
460     					i = atoi(p);
461     					if (!i)
462     						break;
>>>     CID 640333:           (NEGATIVE_RETURNS)
>>>     "l" is passed to a parameter that cannot be negative.
463     					fseek(stream, l, SEEK_SET);
464     					j = 1;
465     					while (!feof(stream) && !ferror(stream) && j < i) {
466     						if (!fgets(tmp, sizeof(tmp), stream))
467     							break;
468     						j++; /* skip beginning */
/writemsg.cpp: 428             in sbbs_t::writemsg(const char *, const char *, char *, int, int, const char *, const char *, const char **, const char **)()
422     					free(buf);
423     					return false;
424     				}
425     				if (!i && linesquoted)
426     					break;
427     				if (!i || quote[0] == all_key()) {                   /* Quote all */
>>>     CID 640333:           (NEGATIVE_RETURNS)
>>>     "l" is passed to a parameter that cannot be negative.
428     					fseek(stream, l, SEEK_SET);
429     					while (!feof(stream) && !ferror(stream)) {
430     						if (!fgets(str, sizeof(str), stream))
431     							break;
432     						quotestr(str);
433     						SAFEPRINTF2(tmp, quote_fmt, term->cols - 4, str);
/writemsg.cpp: 440             in sbbs_t::writemsg(const char *, const char *, char *, int, int, const char *, const char *, const char **, const char **)()
434     						if (write(file, tmp, strlen(tmp)) > 0)
435     							linesquoted++;
436     					}
437     					break;
438     				}
439     				if (quote[0] == list_key()) {
>>>     CID 640333:           (NEGATIVE_RETURNS)
>>>     "l" is passed to a parameter that cannot be negative.
440     					fseek(stream, l, SEEK_SET);
441     					i = 1;
442     					term->newline();
443     					attr(LIGHTGRAY);
444     					while (!feof(stream) && !ferror(stream) && !msgabort()) {
445     						if (!fgets(str, sizeof(str), stream))

  

View Defects in Coverity Scan

Best regards,

The Coverity Scan Admin Team

----==_mimepart_695528f458f41_188c5a2c2daae1599845314-- .