summaryrefslogtreecommitdiff
path: root/ek17.diff
diff options
context:
space:
mode:
Diffstat (limited to 'ek17.diff')
-rw-r--r--ek17.diff232
1 files changed, 0 insertions, 232 deletions
diff --git a/ek17.diff b/ek17.diff
deleted file mode 100644
index 6853edf..0000000
--- a/ek17.diff
+++ /dev/null
@@ -1,232 +0,0 @@
-*** ../../ek16/kermit.c 2011-03-30 12:40:09.705176000 -0400
---- kermit.c 2011-06-06 16:24:13.034202000 -0400
-***************
-*** 1,8 ****
- #define KERMIT_C
- /*
- Embedded Kermit protocol module
-! Version: 1.6
-! Most Recent Update: Wed Mar 30 12:39:11 2011
-
- No stdio or other runtime library calls, no system calls, no system
- includes, no static data, and no global variables in this module.
---- 1,8 ----
- #define KERMIT_C
- /*
- Embedded Kermit protocol module
-! Version: 1.7
-! Most Recent Update: Mon Jun 6 15:36:26 2011
-
- No stdio or other runtime library calls, no system calls, no system
- includes, no static data, and no global variables in this module.
-***************
-*** 98,104 ****
-
- int i, j, rc; /* Workers */
- int datalen; /* Length of packet data field */
-- int bctu; /* Block check type for this packet */
- UCHAR *p; /* Pointer to packet data field */
- UCHAR *q; /* Pointer to data to be checked */
- UCHAR *s; /* Worker string pointer */
---- 98,103 ----
-***************
-*** 313,319 ****
- }
- debug(DB_MSG,"HDR CHKSUM OK",0,0);
- p[2] = c; /* Put checksum back */
-! datalen = xunchar(p[0])*95 + xunchar(p[1]) - k->bct; /* Data length */
- p += 3; /* Fix data pointer */
- k->ipktinfo[r_slot].dat = p; /* Permanent record of data pointer */
- } else { /* Regular packet */
---- 312,319 ----
- }
- debug(DB_MSG,"HDR CHKSUM OK",0,0);
- p[2] = c; /* Put checksum back */
-! /* Data length */
-! datalen = xunchar(p[0])*95 + xunchar(p[1]) - ((k->bctf) ? 3 : k->bct);
- p += 3; /* Fix data pointer */
- k->ipktinfo[r_slot].dat = p; /* Permanent record of data pointer */
- } else { /* Regular packet */
-***************
-*** 323,334 ****
---- 323,342 ----
- }
- #endif /* F_LP */
- #ifdef F_CRC
-+ if (k->bctf) { /* FORCE 3 */
-+ chklen = 3;
-+ } else {
- if (t == 'S' || k->state == S_INIT) { /* S-packet was retransmitted? */
-+ if (q[10] == '5') { /* Block check type requested is 5 */
-+ k->bctf = 1; /* FORCE 3 */
-+ chklen = 3;
-+ }
- chklen = 1; /* Block check is always type 1 */
- datalen = k->ipktinfo[r_slot].len - 3; /* Data length */
- } else {
- chklen = k->bct;
- }
-+ }
- #else
- chklen = 1; /* Block check is always type 1 */
- datalen = k->ipktinfo[r_slot].len - 3; /* Data length */
-***************
-*** 1031,1036 ****
---- 1039,1045 ----
- if ((k->bct < 1) || (k->bct > 3))
- #endif /* F_CRC */
- k->bct = 1;
-+ if (k->bctf) k->bct = 3;
- }
- if (datalen >= 9) { /* Repeat counts */
- if ((s[9] > 32 && s[9] < 63) || (s[9] > 95 && s[9] < 127)) {
-***************
-*** 1120,1126 ****
- d[ 6] = k->ebq = '&'; /* I need to request it */
- else /* else just agree with other Kermit */
- d[ 6] = k->ebq;
-! d[ 7] = k->bct + '0'; /* Block check type */
- d[ 8] = k->rptq; /* Repeat prefix */
- d[ 9] = tochar(k->capas); /* Capability bits */
- d[10] = tochar(k->window); /* Window size */
---- 1129,1138 ----
- d[ 6] = k->ebq = '&'; /* I need to request it */
- else /* else just agree with other Kermit */
- d[ 6] = k->ebq;
-! if (k->bctf) /* Block check type */
-! d[7] = '5'; /* FORCE 3 */
-! else
-! d[7] = k->bct + '0'; /* Normal */
- d[ 8] = k->rptq; /* Repeat prefix */
- d[ 9] = tochar(k->capas); /* Capability bits */
- d[10] = tochar(k->window); /* Window size */
-***************
-*** 1136,1143 ****
---- 1148,1157 ----
- #endif /* F_LP */
-
- #ifdef F_CRC
-+ if (!(k->bctf)) { /* Unless FORCE 3 */
- b = k->bct;
- k->bct = 1; /* Always use block check type 1 */
-+ }
- #endif /* F_CRC */
- switch (type) {
- case 'Y': /* This is an ACK for packet 0 */
-***************
-*** 1150,1156 ****
---- 1164,1172 ----
- rc = -1;
- }
- #ifdef F_CRC
-+ if (!(k->bctf)) { /* Unless FORCE 3 */
- k->bct = b;
-+ }
- #endif /* F_CRC */
- return(rc); /* Pass along return code. */
- }
-***************
-*** 1510,1516 ****
---- 1526,1534 ----
-
- STATIC void
- epkt(char * msg, struct k_data * k) {
-+ if (!(k->bctf)) { /* Unless FORCE 3 */
- k->bct = 1;
-+ }
- (void) spkt('E', 0, -1, (UCHAR *) msg, k);
- }
-
-*** ../../ek16/kermit.h 2011-03-30 13:13:04.814335000 -0400
---- kermit.h 2011-06-06 15:36:54.700435000 -0400
-***************
-*** 1,7 ****
- #ifndef __KERMIT_H__
- #define __KERMIT_H__
-
-! #define VERSION "1.6" /* Kermit module version number */
-
- /*
- kermit.h -- Symbol and struct definitions for embedded Kermit.
---- 1,7 ----
- #ifndef __KERMIT_H__
- #define __KERMIT_H__
-
-! #define VERSION "1.7" /* Kermit module version number */
-
- /*
- kermit.h -- Symbol and struct definitions for embedded Kermit.
-***************
-*** 388,393 ****
---- 388,394 ----
- int zincnt; /* Input buffer position */
- int zinlen; /* Length of input file buffer */
- UCHAR * zinptr; /* Pointer to input file buffer */
-+ int bctf; /* Flag to force type 3 block check */
- int dummy;
- };
-
-*** ../../ek16/main.c 2011-03-30 12:40:53.830806000 -0400
---- main.c 2011-06-06 15:33:45.997789000 -0400
-***************
-*** 124,130 ****
- #endif /* RECVONLY */
- fprintf(stderr," -p [neoms] Parity: none, even, odd, mark, space\n");
- #ifdef F_CRC
-! fprintf(stderr," -b [123] Block check type: 1, 2, or 3\n");
- #endif /* F_CRC */
- fprintf(stderr," -k Keep incompletely received files\n");
- fprintf(stderr," -B Force binary mode\n");
---- 124,130 ----
- #endif /* RECVONLY */
- fprintf(stderr," -p [neoms] Parity: none, even, odd, mark, space\n");
- #ifdef F_CRC
-! fprintf(stderr," -b [1235] Block check type: 1, 2, 3, or 5\n");
- #endif /* F_CRC */
- fprintf(stderr," -k Keep incompletely received files\n");
- fprintf(stderr," -B Force binary mode\n");
-***************
-*** 219,225 ****
- }
- if (c == 'b') {
- check = atoi(*xargv);
-! if (check < 1 || check > 3)
- fatal("Invalid block check",(char *)0,(char *)0);
- #ifdef DEBUG
- } else if (c == 'E') {
---- 219,225 ----
- }
- if (c == 'b') {
- check = atoi(*xargv);
-! if (check < 1 || check > 5 || check == 4)
- fatal("Invalid block check",(char *)0,(char *)0);
- #ifdef DEBUG
- } else if (c == 'E') {
-***************
-*** 338,344 ****
- k.remote = remote; /* Remote vs local */
- k.binary = ftype; /* 0 = text, 1 = binary */
- k.parity = parity; /* Communications parity */
-! k.bct = check; /* Block check type */
- k.ikeep = keep; /* Keep incompletely received files */
- k.filelist = cmlist; /* List of files to send (if any) */
- k.cancel = 0; /* Not canceled yet */
---- 338,344 ----
- k.remote = remote; /* Remote vs local */
- k.binary = ftype; /* 0 = text, 1 = binary */
- k.parity = parity; /* Communications parity */
-! k.bct = (check == 5) ? 3 : check; /* Block check type */
- k.ikeep = keep; /* Keep incompletely received files */
- k.filelist = cmlist; /* List of files to send (if any) */
- k.cancel = 0; /* Not canceled yet */
-***************
-*** 367,372 ****
---- 367,374 ----
- #else
- k.dbf = 0;
- #endif /* DEBUG */
-+ /* Force Type 3 Block Check (16-bit CRC) on all packets, or not */
-+ k.bctf = (check == 5) ? 1 : 0;
-
- /* Initialize Kermit protocol */
-