Synchronet now requires the libarchive development package (e.g. libarchive-dev on Debian-based Linux distros, libarchive.org for more info) to build successfully.

Commits (2)
  • Rob Swindell's avatar
    If hitting ESC at Editor Info File prompt, don't prompt for lowercase · 381c8037
    Rob Swindell authored
    Slight usability improvement.
    381c8037
  • Rob Swindell's avatar
    When writing/reading quotes.txt, ignore first 2 lines if WWIV-type · 4d018183
    Rob Swindell authored
    WWIV writes 2 lines of metadata to the beginning of its quotes.txt file created for external message editors. Its not clear yet what these lines should contain, but the first line apparently should contain a '#' character since BREdit checks for this character before deciding to throw-away/ignore these lines (don't use them for quoted text). Thanks mlong for this tip!
    
    So if the external editor is set to "WWIV CHAIN.TXT" in SCFG (even if the door doesn't need/use it), then the quotes.txt file created by Synchronet will contain the extra 2 lines. We're just writing a # to the first line and the second line is blank.
    
    This fixes reported issue #188.
    4d018183
......@@ -2006,6 +2006,8 @@ void xedit_cfg()
;
k=uifc.list(WIN_MID|WIN_SAV,0,0,0,&k,0,"Editor Information Files"
,opt);
if(k == -1)
break;
if(!k && !(cfg.xedit[i]->misc&QUICKBBS)) {
cfg.xedit[i]->misc|=QUICKBBS;
uifc.changes=TRUE;
......
......@@ -85,6 +85,9 @@ bool sbbs_t::quotemsg(smb_t* smb, smbmsg_t* msg, bool tails)
return false;
}
if(useron_xedit > 0 && cfg.xedit[useron_xedit - 1]->type == XTRN_WWIV)
fputs("#\r\n\r\n", fp); // WWIV adds 2 lines of metadata, BRedit checks for the # symbol
bool result = false;
ulong mode = GETMSGTXT_PLAIN;
if(tails) mode |= GETMSGTXT_TAILS;
......@@ -329,6 +332,10 @@ bool sbbs_t::writemsg(const char *fname, const char *top, char *subj, long mode,
free(buf);
return(false);
}
if(cfg.xedit[useron_xedit - 1]->type == XTRN_WWIV) { // 2 lines of metadata
fgets(str, sizeof(str), stream);
fgets(str, sizeof(str), stream);
}
if((file=nopen(msgtmp,O_WRONLY|O_CREAT|O_TRUNC))==-1) {
errormsg(WHERE,ERR_OPEN,msgtmp,O_WRONLY|O_CREAT|O_TRUNC);
free(buf);
......@@ -361,6 +368,11 @@ bool sbbs_t::writemsg(const char *fname, const char *top, char *subj, long mode,
return(false);
}
if(useron_xedit > 0 && cfg.xedit[useron_xedit - 1]->type == XTRN_WWIV) { // 2 lines of metadata
fgets(str, sizeof(str), stream);
fgets(str, sizeof(str), stream);
}
if((file=nopen(msgtmp,O_WRONLY|O_CREAT|O_TRUNC))==-1) {
errormsg(WHERE,ERR_OPEN,msgtmp,O_WRONLY|O_CREAT|O_TRUNC);
free(buf);
......