Patch #1 to Pcomm v1.2
egray at fthood.UUCP
egray at fthood.UUCP
Sat Feb 18 00:25:00 AEST 1989
This is patch #1 to the Pcomm v1.2 distribution package. After this
patch is installed, the version number will change from 1.2.0 to 1.2.1.
This patch will fix a problem with ymodem transfers on 16 bit systems,
and will fix a bug in the redial function.
Many thanks to Larry Clark (...killer!larryd1) for pointing these bugs
out to me.
Emmet P. Gray US Army, HQ III Corps & Fort Hood
...!uunet!uiucuxc!fthood!egray Attn: AFZF-DE-ENV
Directorate of Engineering & Housing
Environmental Management Office
Fort Hood, TX 76544-5057
-----------------------------------------------------------------------------
Prereq: "1.2.0"
*** old/info.c Fri Feb 10 11:33:36 1989
--- info.c Sun Feb 12 10:07:13 1989
***************
*** 4,9
*/
! #define VERSION "1.2.0"
! #define DATE "4 Feb 89"
#include <stdio.h>
--- 4,9 -----
*/
! #define VERSION "1.2.1"
! #define DATE "18 Feb 89"
#include <stdio.h>
*** old/main.c Fri Feb 10 11:33:37 1989
--- main.c Sun Feb 12 10:07:07 1989
***************
*** 13,16
* Release v1.1 21 Aug 88
* Release v1.2.0 4 Feb 89
*/
--- 13,17 -----
* Release v1.1 21 Aug 88
* Release v1.2.0 4 Feb 89
+ * Patch #1 18 Feb 89
*/
*** old/redial.c Fri Feb 10 11:28:38 1989
--- redial.c Fri Feb 10 07:22:18 1989
***************
*** 52,56
entry = strtok(ans, " \t");
for (i=0; i<NUM_QUEUE; i++) {
! if (*entry == '\0') {
dir->q_num[i] = -1;
continue;
--- 52,56 -----
entry = strtok(ans, " \t");
for (i=0; i<NUM_QUEUE; i++) {
! if (entry == NULL) {
dir->q_num[i] = -1;
continue;
*** old/script.c Fri Feb 10 11:28:38 1989
--- script.c Tue Feb 7 10:26:44 1989
***************
*** 41,45
char buf[80], *ttyname(), *strcpy(), *path, *findfile();
void _exit(), error_win(), input_off(), do_input();
- unsigned int sleep();
/* if empty */
--- 41,44 -----
char buf[80], *ttyname(), *strcpy(), *path, *findfile();
void _exit(), error_win(), input_off(), do_input();
/* if empty */
***************
*** 153,157
close(dup_pipe[0]);
close(dup_pipe[1]);
- sleep(1);
beep();
return;
--- 152,155 -----
close(dup_pipe[0]);
close(dup_pipe[1]);
beep();
return;
*** old/terminal.c Mon Feb 13 08:05:19 1989
--- terminal.c Mon Feb 13 08:11:33 1989
***************
*** 15,18
#include "xmodem.h"
#ifdef UNIXPC
#include <sys/phone.h>
--- 15,24 -----
#include "xmodem.h"
+ #ifdef BSD
+ #include <sys/file.h>
+ #else /* BSD */
+ #include <fcntl.h>
+ #endif /* BSD */
+
#ifdef UNIXPC
#include <sys/phone.h>
***************
*** 17,21
#ifdef UNIXPC
#include <sys/phone.h>
- #include <fcntl.h>
#endif /* UNIXPC */
--- 23,26 -----
#ifdef UNIXPC
#include <sys/phone.h>
#endif /* UNIXPC */
***************
*** 408,411
void send_str(), st_line(), line_set();
char buf[80], *strcpy(), *ttyname();
/* sanity checking */
if (modem == NULL)
--- 413,417 -----
void send_str(), st_line(), line_set();
char buf[80], *strcpy(), *ttyname();
+ unsigned int sleep();
/* sanity checking */
if (modem == NULL)
***************
*** 436,439
#endif /* UNIXPC */
send_str(modem->hang_up[modem->m_cur], SLOW);
if (verbose)
--- 442,453 -----
#endif /* UNIXPC */
send_str(modem->hang_up[modem->m_cur], SLOW);
+
+ /*
+ * Some modems do "damage" to the tty driver when they hang up by
+ * flashing the modem control lines on the port. The following is
+ * some witchcraft designed to put the driver back the way it was.
+ */
+ sleep(1);
+ close(open(ttyname(fd), O_RDWR));
if (verbose)
*** old/x_rcv.c Fri Feb 10 11:28:38 1989
--- x_rcv.c Fri Feb 10 07:19:12 1989
***************
*** 29,33
int i, default_err, is_batch, max_block, code, file_count, got_hdr;
int hours, mins, secs, len;
! long block, recv;
float percent, performance;
unsigned char blk;
--- 29,33 -----
int i, default_err, is_batch, max_block, code, file_count, got_hdr;
int hours, mins, secs, len;
! long block, recv, partial;
float percent, performance;
unsigned char blk;
***************
*** 194,199
if (!code) {
if (file_length != 0L) {
! len = file_length - recv;
! if (len > block_size)
len = block_size;
}
--- 194,199 -----
if (!code) {
if (file_length != 0L) {
! partial = file_length - recv;
! if (partial > (long) block_size)
len = block_size;
else
***************
*** 197,200
if (len > block_size)
len = block_size;
}
else
--- 197,202 -----
if (partial > (long) block_size)
len = block_size;
+ else
+ len = partial;
}
else
***************
*** 252,257
wattrstr(win, A_BOLD, "TRUNCATE ERROR");
wrefresh(win);
! /* fatal */
! return(1);
}
}
--- 254,258 -----
wattrstr(win, A_BOLD, "TRUNCATE ERROR");
wrefresh(win);
! sleep(1);
}
}
*** old/Release.notes Fri Feb 10 11:28:37 1989
--- Release.notes Fri Feb 10 07:42:26 1989
***************
*** 38,42
definitions for zmodem).
! The pcomm.input program has been changed to use multiple
character buffered writes to the screen. Both the input and
output buffer sizes are tunable parameters in config.h
--- 38,42 -----
definitions for zmodem).
! The pcomm_input program has been changed to use multiple
character buffered writes to the screen. Both the input and
output buffer sizes are tunable parameters in config.h
More information about the Unix-pc.sources
mailing list