diff --git a/src/sbbs3/sexyz.c b/src/sbbs3/sexyz.c index 53a63b28e2dbff235c1882364f9288e34f3f3bfb..de6ec9fadcdbeba4f44fb126f6cc9c9ae37298d7 100644 --- a/src/sbbs3/sexyz.c +++ b/src/sbbs3/sexyz.c @@ -159,6 +159,11 @@ static int lputs(void* unused, int level, const char* str) { FILE* fp=statfp; +#if defined(_WIN32) && defined(_DEBUG) + if(log_level==LOG_DEBUG || level==LOG_DEBUG) + OutputDebugString(str); +#endif + if(level>log_level) return 0; @@ -231,11 +236,6 @@ static char *chr(uchar ch) case ZBIN: return("ZBIN"); case ZHEX: return("ZHEX"); case ZBIN32: return("ZBIN32"); - case ZBINR32: return("ZBINR32"); - case ZVBIN: return("ZVBIN"); - case ZVHEX: return("ZVHEX"); - case ZVBIN32: return("ZVBIN32"); - case ZVBINR32: return("ZVBINR32"); case ZRESC: return("ZRESC"); case ZCRCE: return("ZCRCE"); case ZCRCG: return("ZCRCG"); @@ -358,6 +358,8 @@ int recv_byte(void* unused, unsigned timeout) } if(telnet_cmdlen==1) { telnet_cmdlen=0; + if(debug_rx) + lprintf(LOG_DEBUG,"RX: %s",chr(TELNET_IAC)); return(TELNET_IAC); } } @@ -926,7 +928,7 @@ static int receive_files(char** fname_list, int fnames) else { if(mode&YMODEM) { lprintf(LOG_INFO,"Fetching Ymodem header block"); - for(errors=0;errors<xm.max_errors;errors++) { + for(errors=0;errors<xm.max_errors && !xm.cancelled;errors++) { if(errors>(xm.max_errors/2) && mode&CRC && !(mode&GMODE)) mode&=~CRC; xmodem_put_nak(&xm, /* expected_block: */ 0); @@ -935,7 +937,7 @@ static int receive_files(char** fname_list, int fnames) break; } } - if(errors>=xm.max_errors) { + if(errors>=xm.max_errors || xm.cancelled) { lprintf(LOG_ERR,"Error fetching Ymodem header block"); xmodem_cancel(&xm); return(1); @@ -986,7 +988,7 @@ static int receive_files(char** fname_list, int fnames) case ZSINIT: lprintf(LOG_WARNING,"Remote attempted ZSINIT (not supported)"); zmodem_send_nak(&zm); - break; + continue; case ZFIN: zmodem_send_zfin(&zm); /* ACK */ /* fall-through */ @@ -1035,8 +1037,8 @@ static int receive_files(char** fname_list, int fnames) } } fprintf(statfp,"File size: %lu bytes\n", file_bytes); - fprintf(statfp,"Remaining: %lu bytes in %u files\n", total_bytes, total_files); -// getchar(); + if(total_files>1) + fprintf(statfp,"Remaining: %lu bytes in %u files\n", total_bytes, total_files); } lprintf(LOG_DEBUG,"Receiving: %.64s ",str); @@ -1437,9 +1439,6 @@ int main(int argc, char **argv) case '!': pause_on_abend=TRUE; break; - case 'D': - mode|=DEBUG; - break; } } } @@ -1550,13 +1549,13 @@ int main(int argc, char **argv) #endif if(!socket_check(sock, NULL, NULL, 0)) { - fprintf(statfp,"!No socket connection\n"); + lprintf(LOG_WARNING,"No socket connection"); return(-1); } if((dszlog=getenv("DSZLOG"))!=NULL) { if((logfp=fopen(dszlog,"w"))==NULL) { - fprintf(statfp,"!Error opening DSZLOG file: %s\n",dszlog); + lprintf(LOG_WARNING,"Error %d opening DSZLOG file: %s",errno,dszlog); return(-1); } } diff --git a/src/sbbs3/sexyz.h b/src/sbbs3/sexyz.h index e3157fe97fb0f1975ef9d21e33f8542f89cdcd30..30f671301b26ef0bf269744e07cb7f46fa76562d 100644 --- a/src/sbbs3/sexyz.h +++ b/src/sbbs3/sexyz.h @@ -48,7 +48,6 @@ #define CRC (1<<5) /* Use CRC error correction */ #define GMODE (1<<6) /* For Qmodem-G and Ymodem-G */ #define RECVDIR (1<<7) /* Directory specified to download to */ -#define DEBUG (1<<8) /* Debug output */ #define OVERWRITE (1<<9) /* Overwrite receiving files */ /* Zmodem mode bits */