home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #27 / NN_1992_27.iso / spool / comp / sources / misc / 4084 next >
Encoding:
Text File  |  1992-11-16  |  36.3 KB  |  1,216 lines

  1. Newsgroups: comp.sources.misc
  2. Path: sparky!kent
  3. From: wht@n4hgf.Mt-Park.GA.US (Warren Tucker)
  4. Subject:  v33i079:  ecu - ECU Asynchronous Communications v3.20, Patch04
  5. Message-ID: <1992Nov16.190024.10643@sparky.imd.sterling.com>
  6. Followup-To: comp.sources.d
  7. X-Md4-Signature: d9e4ae5a423b31099bfcd12be36a8e10
  8. Sender: kent@sparky.imd.sterling.com (Kent Landfield)
  9. Organization: Sterling Software
  10. Date: Mon, 16 Nov 1992 19:00:24 GMT
  11. Approved: kent@sparky.imd.sterling.com
  12. Lines: 1202
  13.  
  14. Submitted-by: wht@n4hgf.Mt-Park.GA.US (Warren Tucker)
  15. Posting-number: Volume 33, Issue 79
  16. Archive-name: ecu/patch04
  17. Environment: SCO,XENIX,ISC,SUNOS,SYSVR4,HDB,Curses
  18. Patch-To: ecu: Volume 32, Issue 36-75
  19.  
  20. This is patch 4 to ECU 3.20.
  21.  
  22. To apply this patch, extract the shell archive below in the ECU
  23. distribution directory, creating one new file (PATCH04).
  24. Then patch by
  25.  
  26.     patch -p0 < PATCH04
  27.  
  28. Then, make depend, make, su root, make install.
  29. Configure is not necessary for this patch.
  30.  
  31. ==> Patch 4 (from CHANGES)
  32.  
  33. 13. jeff@samantha.chi.il.us (Jeff Johnson) suggested a change
  34. in the SVR4 LCK.. logic, stating that the use of <sys/sysmacros.h>
  35. is deprecated.
  36.  
  37. 14. On some systems, the video attributes were not reverted to
  38. "normal" after some reverse video or underlined strings (e.g,
  39. "[interactive mode]").
  40.  
  41. 15. I removed the Metro Link pts support.  This was quite obsolete
  42. since only very early Metro Link software used pts'.
  43.  
  44. 16.  FAS 2.10 users are getting SIGUSR1 sent to the transmitter.
  45. I suspect this is a bug in FAS evoked by the kill(getty,SIGUSR1)
  46. performed by ecuungetty, but I am have no real clue.  This needs
  47. resolving, but I have little time right now.  This patch adds
  48. signal(SIGUSR1,SIG_IGN) to eliminate the problem.
  49.  
  50. 17. Console xon/xoff support has been added.  EMACS users
  51. lament the loss of ^S/^Q.  (I personally consider it evolution
  52. in action :->).  A new inetractive and a new procedure
  53. command have been added  Also, the status is reported by
  54. the interactive stat command.
  55.  
  56.    conxon on  - honor xon/xoff locally
  57.    conxon off - pass ^S/^U to remote
  58.  
  59. If you turn conxon off, there will be no local software flow control
  60. so you probably need hardware flow control for proper operation.
  61. Refer to the rtscts command descriptions for more information
  62. (I pray you are using a tty driver that supports the kind
  63. of hardware flow control your modem requires).
  64.  
  65. 18.  The procedure file transfer commands did not get
  66. rearranged to look for the file transfer programs in the
  67. ecu library directory.
  68.  
  69. 19. Chains of else statements may fail to operate properly
  70. in certain arrangements.  The known failure was fixed.
  71.  
  72. #!/bin/sh
  73. # This is a shell archive (shar 3.461)
  74. # made 11/16/1992 17:53 UTC by wht@n4hgf
  75. # Source directory /u1/src/ecu-shars
  76. #
  77. # existing files WILL be overwritten
  78. #
  79. # This shar contains:
  80. # length  mode       name
  81. # ------ ---------- ------------------------------------------
  82. #  32607 -rw-r--r-- PATCH04
  83. #
  84. # ============= PATCH04 ==============
  85. echo 'x - extracting PATCH04 (Text)'
  86. sed 's/^X//' << 'SHAR_EOF' > 'PATCH04' &&
  87. X:
  88. X#-------------------------------------------------------
  89. X# PATCH04.01
  90. X# created by gendiff x1.30 on 16 Nov 1992 02:05 UTC
  91. X#-------------------------------------------------------
  92. XPrereq: 23
  93. X*** ../ecu-3.23/patchlevel.h    Sun Nov 15 20:39:21 1992
  94. X--- patchlevel.h    Mon Oct  5 13:59:40 1992
  95. X***************
  96. X*** 1 ****
  97. X! #define PATCHLEVEL 23
  98. X--- 1 ----
  99. X! #define PATCHLEVEL 24
  100. X*** ../ecu-3.23/CHANGES    Sun Nov 15 20:38:30 1992
  101. X--- CHANGES    Sat Nov 14 22:39:50 1992
  102. X***************
  103. X*** 39,41 ****
  104. X--- 39,145 ----
  105. X  1992-09-15-18:52-ecutty.c-wht@n4hgf-left some debug code in patch01 dammit 
  106. X  
  107. X  6. Remove debug code from _setcolor().
  108. X+ 
  109. X+ ==> Patch 3
  110. X+ 
  111. X+ 1992-09-17-06:27-ecuicmd.c-wht@n4hgf-add <7-bit kbd> to stat 
  112. X+ 1992-09-17-05:33-mapkey/README-wht@n4hgf-0xE0 should read 0xE1
  113. X+ 1992-09-17-05:16-ecuxkey.h-wht@n4hgf-finally, 0xE1-0xFA as promised in 3.10  
  114. X+ 1992-09-16-14:13-ecunumrev.c-wht@n4hgf-add M and F version qualifiers 
  115. X+ 1992-09-16-13:54-ecuusage.c-wht@n4hgf-add fkmap usage 
  116. X+ 1992-09-16-13:33-funckeymap.c-wht@n4hgf-add fkmap -l name 
  117. X+ 1992-09-16-13:29-termecu.h-wht@n4hgf-add TERMECU_UNRECOVERABLE 
  118. X+ 1992-09-16-13:29-ecusighdl.c-wht@n4hgf-add TERMECU_UNRECOVERABLE text 
  119. X+ 1992-09-15-18:52-ecutty.c-wht@n4hgf-left some debug code in patch01 dammit 
  120. X+ 
  121. X+ 7.  Information on tty "Device busy" errors and color support
  122. X+ have been added to README.Q-and-A.  Obsolete information was
  123. X+ removed.
  124. X+ 
  125. X+ 8. The -l switch was added to the fkmap commands:
  126. X+        fkmap -l <name>
  127. X+ The -l form reads an entire funckeymap definition matching <name>
  128. X+ from ~/.ecu/funckeymap (if not found there, in a file by the same
  129. X+ name in the library directory).  This form behaves exactly
  130. X+ in the same manner as the command line switch -F.
  131. X+ Due to the drastic nature of this command, if it fails to
  132. X+ execute properly, ECU terminates itself.  Note that
  133. X+ improper use of this form of the command can still render
  134. X+ ECU an albatross (with Home unrecognizable).
  135. X+ 
  136. X+ 9.  The original high-bit character space assignments for Alt-A
  137. X+ through Alt-Z that I chose for ECU made good sense ...  to a
  138. X+ parochial American.  Michael Traub <emory!btcs.bt.co.uk!traub>
  139. X+ sets me straight, but mapkey/README was incorrect.  Each hex
  140. X+ value was off by one.
  141. X+ 
  142. X+ 10.  If the console has parity enabled, the interactive stat
  143. X+ command now reports <7-bit kbd>.  Knowing this can be important
  144. X+ if you are using Alt-[A-Z].  Or if you are trying for some kind
  145. X+ of unlikely tandem 8-bit transparent path (telnet to a box, run
  146. X+ ecu to call home, login, use ECU there to talk to your amateur
  147. X+ radio PK-232/MBX TNC over 14 MHz AMTOR to the UK to a Kantronics
  148. X+ TNC hooked to an SCO box, login, make an ECU call to a certain
  149. X+ Universal Import-Export ...  uh, hi -- I seem to have dozed off).
  150. X+ 
  151. X+ 11.  At least one ISC SVR3 user had a Devices entry with the
  152. X+ modem control ",M" suffix I thought was only used in SVR4 UUCP.
  153. X+ The suffix presence is now detected on all platforms.
  154. X+ 
  155. X+ 12. ecusea.c had two fcntl.h inclusions.  XENIX could not
  156. X+ handle this.
  157. X+ 
  158. X+ ==> Patch 4
  159. X+ 
  160. X+ 13. jeff@samantha.chi.il.us (Jeff Johnson) suggested a change
  161. X+ in the SVR4 LCK.. logic, stating that the use of <sys/sysmacros.h>
  162. X+ is deprecated.
  163. X+ 
  164. X+ > Here is an excerpt from my <sys/sysmacros.h>:
  165. X+ > 
  166. X+ >    WARNING: The device number macros defined here should not be
  167. X+ >    used by device drivers or user software.  Device drivers
  168. X+ >    should use the device functions defined in the DDI/DKI
  169. X+ >    interface (see also ddi.h).  Application software should make
  170. X+ >    use of the library routines available in makedev(3).  A set of
  171. X+ >    new device macros are provided to operate on the expanded
  172. X+ >    device number format supported in SVR4.  Macro versions of the
  173. X+ >    DDI device functions are provided for use by kernel proper
  174. X+ >    routines only.  Macro routines bmajor(), major(), minor(),
  175. X+ >    emajor(), eminor(), and makedev() will be removed or their
  176. X+ >    definitions changed at the next major release following SVR4.
  177. X+ 
  178. X+ 14. On some systems, the video attributes were not reverted to
  179. X+ "normal" after some reverse video or underlined strings (e.g,
  180. X+ "[interactive mode]").
  181. X+ 
  182. X+ 15. I removed the Metro Link pts support.  This was quite obsolete
  183. X+ since only very early Metro Link software used pts'.
  184. X+ 
  185. X+ 16.  FAS 2.10 users are getting SIGUSR1 sent to the transmitter.
  186. X+ I suspect this is a bug in FAS evoked by the kill(getty,SIGUSR1)
  187. X+ performed by ecuungetty, but I am have no real clue.  This needs
  188. X+ resolving, but I have little time right now.  This patch adds
  189. X+ signal(SIGUSR1,SIG_IGN) to eliminate the problem.
  190. X+ 
  191. X+ 17. Console xon/xoff support has been added.  EMACS users
  192. X+ lament the loss of ^S/^Q.  (I personally consider it evolution
  193. X+ in action :->).  A new inetractive and a new procedure
  194. X+ command have been added  Also, the status is reported by
  195. X+ the interactive stat command.
  196. X+ 
  197. X+    conxon on  - honor xon/xoff locally
  198. X+    conxon off - pass ^S/^U to remote
  199. X+ 
  200. X+ If you turn conxon off, there will be no local software flow control
  201. X+ so you probably need hardware flow control for proper operation.
  202. X+ Refer to the rtscts command descriptions for more information
  203. X+ (I pray you are using a tty driver that supports the kind
  204. X+ of hardware flow control your modem requires).
  205. X+ 
  206. X+ 18.  The procedure file transfer commands did not get
  207. X+ rearranged to look for the file transfer programs in the
  208. X+ ecu library directory.
  209. X+ 
  210. X+ 19. Chains of else statements may fail to operate properly
  211. X+ in certain arrangements.  The known failure was fixed.
  212. X*** ../ecu-3.23/doc/_icmd.txt    Sun Nov 15 20:39:23 1992
  213. X--- doc/_icmd.txt    Sun Oct 18 16:02:32 1992
  214. X***************
  215. X*** 116,121 ****
  216. X--- 116,136 ----
  217. X  interactive command to return to the previous directory.
  218. X  
  219. X  Other %options have usage information by entering them with no arguments.
  220. X+ 
  221. X+ .*s 2 "CONXon : console xon/xoff flow control"
  222. X+ .DS L
  223. X+ usage: conxon [<arg>]
  224. X+ where <arg> is on    honor ^S/^Q local flow control (DEFAULT)
  225. X+                off   pass ^S/^Q to remote
  226. X+ .DE
  227. X+ 
  228. X+ This command enables or disables console xon/xoff flow control.
  229. X+ If the argument is omitted, the current flow control state is displayed.
  230. X+ 
  231. X+ If on, typing ^S/^Q stops or restarts the local console driver
  232. X+ output.  If off, ^S and ^Q are passed to the remote (for EMACS,
  233. X+ of course -- who else?).
  234. X+ 
  235. X  .*s 2 "DA : decimal to ascii char"
  236. X  .DS L
  237. X  usage: da [<decimal-val>]
  238. X***************
  239. X*** 1156,1162 ****
  240. X  and two-character control character identifier.
  241. X  
  242. X  
  243. X! .*s 2 "XON : xon/xoff flow control"
  244. X  .DS L
  245. X  usage: xon [<arg>]
  246. X  where <arg> is on    input and output flow control
  247. X--- 1171,1177 ----
  248. X  and two-character control character identifier.
  249. X  
  250. X  
  251. X! .*s 2 "XON : line xon/xoff flow control"
  252. X  .DS L
  253. X  usage: xon [<arg>]
  254. X  where <arg> is on    input and output flow control
  255. X*** ../ecu-3.23/doc/_p_cmd.txt    Sun Nov 15 20:39:24 1992
  256. X--- doc/_p_cmd.txt    Sun Oct 18 16:02:41 1992
  257. X***************
  258. X*** 179,184 ****
  259. X--- 179,198 ----
  260. X  .B else
  261. X  command.
  262. X  
  263. X+ .*s 2 "conxon"
  264. X+ .DS L
  265. X+ usage: conxon [<arg>]
  266. X+ where <arg> is on    honor ^S/^Q local flow control (DEFAULT)
  267. X+                off   pass ^S/^Q to remote
  268. X+ .DE
  269. X+ 
  270. X+ This command enables or disables console xon/xoff flow control.
  271. X+ If the argument is omitted, the current flow control state is displayed.
  272. X+ 
  273. X+ If on, typing ^S/^Q stops or restarts the local console driver
  274. X+ output.  If off, ^S and ^Q are passed to the remote (for EMACS,
  275. X+ of course -- who else?).
  276. X+ 
  277. X  .*s 2 "cursor"
  278. X  
  279. X  usage: cursor <row> [<col>]
  280. X*** ../ecu-3.23/doc/_p_ifunc.txt    Sun Nov 15 16:43:02 1992
  281. X--- doc/_p_ifunc.txt    Mon Oct 26 13:15:19 1992
  282. X***************
  283. X*** 432,438 ****
  284. X  .*s 2 "%rchr"
  285. X  
  286. X  This function returns the number of characters
  287. X! received by ECU since the program starrted.
  288. X  
  289. X  .*s 2 "%rchrc"
  290. X  
  291. X--- 432,438 ----
  292. X  .*s 2 "%rchr"
  293. X  
  294. X  This function returns the number of characters
  295. X! received by ECU since the program started.
  296. X  
  297. X  .*s 2 "%rchrc"
  298. X  
  299. X*** ../ecu-3.23/doc/_top.txt    Sun Nov 15 16:43:09 1992
  300. X--- doc/_top.txt    Sun Oct 18 16:19:55 1992
  301. X***************
  302. X*** 31,37 ****
  303. X  .sp .5i
  304. X  .ce 100
  305. X  Technical Description
  306. X! Revision 3.20
  307. X  \n(mo/\n(dy/\n(yr
  308. X  .ce 0
  309. X  .sp 1i
  310. X--- 31,37 ----
  311. X  .sp .5i
  312. X  .ce 100
  313. X  Technical Description
  314. X! Revision 3.24
  315. X  \n(mo/\n(dy/\n(yr
  316. X  .ce 0
  317. X  .sp 1i
  318. X*** ../ecu-3.23/doc/proc.txt    Sun Nov 15 16:43:12 1992
  319. X--- doc/proc.txt    Sun Oct 18 16:20:02 1992
  320. X***************
  321. X*** 32,38 ****
  322. X  .sp 1i
  323. X  .ce 100
  324. X  Procedure Language
  325. X! Revision 3.20
  326. X  \n(mo/\n(dy/\n(yr
  327. X  .ce 0
  328. X  .sp 1i
  329. X--- 32,38 ----
  330. X  .sp 1i
  331. X  .ce 100
  332. X  Procedure Language
  333. X! Revision 3.24
  334. X  \n(mo/\n(dy/\n(yr
  335. X  .ce 0
  336. X  .sp 1i
  337. X*** ../ecu-3.23/ecuLCK.c    Sun Nov 15 16:37:26 1992
  338. X--- ecuLCK.c    Wed Oct  7 21:19:40 1992
  339. X***************
  340. X*** 1,7 ****
  341. X--- 1,9 ----
  342. X  #define HONEYDANBER /* means use ASCII pids in lock files */
  343. X+ #define USE_SVR4_MKDEV_H /* jeff@samantha.chi.il.us SVR4 lock file correction */
  344. X  #if defined(SHARE_DEBUG)
  345. X  #define LOG_LOCKS
  346. X  #endif
  347. X+ 
  348. X  /*+-----------------------------------------------------------------------
  349. X      ecuLCK.c -- ECU lock file management
  350. X      wht@n4hgf.Mt-Park.GA.US
  351. X***************
  352. X*** 16,21 ****
  353. X--- 18,24 ----
  354. X  check for both.
  355. X  ------------------------------------------------------------------------*/
  356. X  /*+:EDITS:*/
  357. X+ /*:10-07-1992-21:09-jeff@samantha.chi.il.us-SVR4 lock file correction */
  358. X  /*:09-10-1992-13:58-wht@n4hgf-ECU release 3.20 */
  359. X  /*:08-22-1992-15:38-wht@n4hgf-ECU release 3.20 BETA */
  360. X  /*:08-21-1992-13:39-wht@n4hgf-rewire direct/modem device use */
  361. X***************
  362. X*** 34,40 ****
  363. X--- 37,47 ----
  364. X  #include "ecu.h"
  365. X  #include "utmpstatus.h"
  366. X  #if defined(SVR4)
  367. X+ #ifndef USE_SVR4_MKDEV_H
  368. X  # include <sys/sysmacros.h>
  369. X+ #else
  370. X+ # include <sys/mkdev.h>
  371. X+ #endif /* USE_SVR4_MKDEV_H */
  372. X  #endif
  373. X  
  374. X  extern int errno;
  375. X***************
  376. X*** 63,69 ****
  377. X      }
  378. X      sprintf(lock_file_name,"%s/LK.%03u.%03u.%03u",
  379. X          lock_dir_name,major(tbuf.st_dev),
  380. X!         tbuf.st_rdev >> 18, minor(tbuf.st_rdev));
  381. X  #else
  382. X  
  383. X      /*
  384. X--- 70,81 ----
  385. X      }
  386. X      sprintf(lock_file_name,"%s/LK.%03u.%03u.%03u",
  387. X          lock_dir_name,major(tbuf.st_dev),
  388. X! #ifndef USE_SVR4_MKDEV_H
  389. X!         tbuf.st_rdev >> 18,
  390. X! #else
  391. X!         major(tbuf.st_rdev),
  392. X! #endif /* USE_SVR4_MKDEV_H */
  393. X!          minor(tbuf.st_rdev));
  394. X  #else
  395. X  
  396. X      /*
  397. X*** ../ecu-3.23/ecucmd.h    Sun Nov 15 16:37:32 1992
  398. X--- ecucmd.h    Sun Oct 18 15:09:37 1992
  399. X***************
  400. X*** 3,8 ****
  401. X--- 3,9 ----
  402. X      wht@n4hgf.Mt-Park.GA.US
  403. X  --------------------------------------------------------------------------*/
  404. X  /*+:EDITS:*/
  405. X+ /*:10-18-1992-14:26-wht@n4hgf-add conxon */
  406. X  /*:09-10-1992-13:58-wht@n4hgf-ECU release 3.20 */
  407. X  /*:08-30-1992-23:06-wht@n4hgf-add fkmap */
  408. X  /*:08-22-1992-15:38-wht@n4hgf-ECU release 3.20 BETA */
  409. X***************
  410. X*** 37,42 ****
  411. X--- 38,44 ----
  412. X      CTbreak,
  413. X      CTcd,
  414. X      CTclrx,
  415. X+     CTconxon,
  416. X      CTda,
  417. X      CTdcdwatch,
  418. X      CTdial,
  419. X***************
  420. X*** 123,128 ****
  421. X--- 125,131 ----
  422. X  S int pcmd_cls() BODY
  423. X  S int pcmd_color() BODY
  424. X  S int pcmd_continue() BODY
  425. X+ S int pcmd_conxon() BODY
  426. X  S int pcmd_cursor() BODY
  427. X  S int pcmd_dcdwatch() BODY
  428. X  S int pcmd_delline() BODY
  429. X***************
  430. X*** 247,252 ****
  431. X--- 250,256 ----
  432. X      { "cls",    0,0,        "",                                pcmd_cls,    0  },
  433. X      { "color",    0,0,        "",                                pcmd_color,    0  },
  434. X      { "continue",0,0,        "",                                pcmd_continue,0},
  435. X+     { "conxon",    4,CTconxon,    "console software flow control",pcmd_conxon,  0},
  436. X      { "cursor",    0,0,        "",                                pcmd_cursor,0  },
  437. X      { "da",        2,CTda,        "decimal to ascii char",        0,          ccG},
  438. X      { "dcdwatch",3,CTdcdwatch,"control DCD disconnect",        pcmd_dcdwatch,ccC},
  439. X***************
  440. X*** 364,370 ****
  441. X      { "whiles",    0,0,        "",                                pcmd_whiles,0  },
  442. X      { "xa",        2,CTxa,        "hex to ascii char",            0,         ccG },
  443. X      { "xlog",    2,CTxlog,    "protocol packet logging",        0,         ccT },
  444. X!     { "xon",    2,CTxon,    "xon/xoff flow control",        pcmd_xon,  ccC },
  445. X  /* these cmds are interecepted by special code in ecucmd.h and appear
  446. X   * here only so they will be picked up by the help system.
  447. X   */
  448. X--- 368,374 ----
  449. X      { "whiles",    0,0,        "",                                pcmd_whiles,0  },
  450. X      { "xa",        2,CTxa,        "hex to ascii char",            0,         ccG },
  451. X      { "xlog",    2,CTxlog,    "protocol packet logging",        0,         ccT },
  452. X!     { "xon",    2,CTxon,    "line xon/xoff flow control",    pcmd_xon,  ccC },
  453. X  /* these cmds are interecepted by special code in ecucmd.h and appear
  454. X   * here only so they will be picked up by the help system.
  455. X   */
  456. X*** ../ecu-3.23/ecuicmd.c    Sun Nov 15 20:39:26 1992
  457. X--- ecuicmd.c    Fri Oct 30 11:49:05 1992
  458. X***************
  459. X*** 9,14 ****
  460. X--- 9,16 ----
  461. X  
  462. X  ------------------------------------------------------------------------*/
  463. X  /*+:EDITS:*/
  464. X+ /*:10-18-1992-14:26-wht@n4hgf-add conxon */
  465. X+ /*:10-08-1992-01:12-wht@n4hgf-no more obsolete Metro Link PTS */
  466. X  /*:09-17-1992-06:27-wht@n4hgf-add <7-bit kbd> to stat */
  467. X  /*:09-13-1992-12:52-wht@n4hgf-show tty_is_scoterm during stat */
  468. X  /*:09-10-1992-13:58-wht@n4hgf-ECU release 3.20 */
  469. X***************
  470. X*** 61,69 ****
  471. X  extern long tty_escape_timeout;        /* timeout on waiting for char after ESC */
  472. X  extern int tcap_COLS;
  473. X  extern int tcap_LINES;
  474. X- #if defined(METROLINK_X11R4_PTS)
  475. X- extern int tty_is_pts;
  476. X- #endif /* METROLINK_X11R4_PTS */
  477. X  extern int errno;
  478. X  extern int proc_interrupt;
  479. X  extern int proctrace;
  480. X--- 63,68 ----
  481. X***************
  482. X*** 143,148 ****
  483. X--- 142,148 ----
  484. X      long atol();
  485. X      char *find_procedure();
  486. X      char *xon_status();
  487. X+     char *console_xon_status();
  488. X  #ifdef sun
  489. X      int modem_lines;
  490. X  #endif
  491. X***************
  492. X*** 632,638 ****
  493. X          ff(se,"Hardware flow control configuration: ");
  494. X          display_hw_flow_config();
  495. X  #else
  496. X!         ff(se,"no hardware flow control available\n");
  497. X  #endif
  498. X  
  499. X          if(!shm->Lconnected)
  500. X--- 632,638 ----
  501. X          ff(se,"Hardware flow control configuration: ");
  502. X          display_hw_flow_config();
  503. X  #else
  504. X!         ff(se,"no hardware flow control available\r\n");
  505. X  #endif
  506. X  
  507. X          if(!shm->Lconnected)
  508. X***************
  509. X*** 663,674 ****
  510. X              ff(se,"<scoterm> ");
  511. X          if(tty_is_pty)
  512. X              ff(se,"<pty> ");
  513. X- #if defined(METROLINK_X11R4_PTS)
  514. X-         if(tty_is_pts)
  515. X-             ff(se,"<pts> ");
  516. X- #endif /* METROLINK_X11R4_PTS */
  517. X          if(kbd_is_7bit)
  518. X              ff(se,"<7-bit kbd> ");
  519. X          ff(se,"\r\n");
  520. X  
  521. X  #if defined(USE_ECUUNGETTY)
  522. X--- 663,671 ----
  523. X              ff(se,"<scoterm> ");
  524. X          if(tty_is_pty)
  525. X              ff(se,"<pty> ");
  526. X          if(kbd_is_7bit)
  527. X              ff(se,"<7-bit kbd> ");
  528. X+         fputs(console_xon_status(),se);
  529. X          ff(se,"\r\n");
  530. X  
  531. X  #if defined(USE_ECUUNGETTY)
  532. X***************
  533. X*** 728,733 ****
  534. X--- 725,742 ----
  535. X              break;
  536. X          }
  537. X          ff(se,"  xon/xoff flow control: %s\r\n",xon_status());
  538. X+         break;
  539. X+ 
  540. X+         case CTconxon:
  541. X+         if(narg > 1)
  542. X+         {
  543. X+             if(set_console_xon_xoff_by_arg(arg[1]))
  544. X+                 ff(se,"  argument error\r\n");
  545. X+             else
  546. X+                 ff(se,"\r\n");
  547. X+             break;
  548. X+         }
  549. X+         ff(se,"\r\nconsole xon/xoff flow control: %s\r\n",console_xon_status());
  550. X          break;
  551. X  
  552. X          case CTsgr:
  553. X*** ../ecu-3.23/ecusighdl.c    Sun Nov 15 20:39:28 1992
  554. X--- ecusighdl.c    Sun Oct 18 14:11:12 1992
  555. X***************
  556. X*** 29,34 ****
  557. X--- 29,35 ----
  558. X  
  559. X  ------------------------------------------------------------------------*/
  560. X  /*+:EDITS:*/
  561. X+ /*:10-18-1992-14:11-wht@n4hgf-FAS 2.10 users getting SIGUSR1 on xmtr */
  562. X  /*:09-16-1992-13:29-wht@n4hgf-add TERMECU_UNRECOVERABLE text */
  563. X  /*:09-10-1992-13:59-wht@n4hgf-ECU release 3.20 */
  564. X  /*:08-22-1992-15:38-wht@n4hgf-ECU release 3.20 BETA */
  565. X***************
  566. X*** 586,596 ****
  567. X--- 587,601 ----
  568. X              case SIGCLD:
  569. X                  signal(sig,xmtr_SIGCLD_handler);
  570. X                  break;
  571. X+             case SIGUSR1:
  572. X+                 signal(sig,SIG_IGN);
  573. X+                 break;
  574. X              case SIGUSR2:
  575. X                  signal(sig,xmtr_SIGUSR2_handler);
  576. X                  break;
  577. X              default:
  578. X                  signal(sig,xmtr_death_handler);
  579. X+                 break;
  580. X          }
  581. X      }
  582. X  
  583. X*** ../ecu-3.23/ecutty.c    Sun Nov 15 20:39:29 1992
  584. X--- ecutty.c    Sun Oct 18 16:02:05 1992
  585. X***************
  586. X*** 83,88 ****
  587. X--- 83,91 ----
  588. X  
  589. X  --------------------------------------------------------------------------*/
  590. X  /*+:EDITS:*/
  591. X+ /*:10-18-1992-14:26-wht@n4hgf-add console xon/xoff control */
  592. X+ /*:10-08-1992-01:12-wht@n4hgf-no more obsolete Metro Link PTS */
  593. X+ /*:10-08-1992-01:06-wht@n4hgf-SVR4 color work + !use_color normal fix */
  594. X  /*:09-15-1992-18:52-wht@n4hgf-left some debug code in patch01 dammit */
  595. X  /*:09-13-1992-12:52-wht@n4hgf-add tty_is_scoterm */
  596. X  /*:09-10-1992-13:59-wht@n4hgf-ECU release 3.20 */
  597. X***************
  598. X*** 158,170 ****
  599. X  uint LINESxCOLS;
  600. X  int current_ttymode = 0;
  601. X  int ttymode_termecu_on_sigint = 0;
  602. X- #if defined(METROLINK_X11R4_PTS)
  603. X- int tty_is_pts;
  604. X- #endif
  605. X  int tty_is_pty;
  606. X  int tty_is_multiscreen;
  607. X  int tty_is_scoterm;
  608. X  int tty_not_char_special;
  609. X  int use_colors = 0;        /* set by ttyinit, but default no */
  610. X  char *ttype;            /* getenv("TERM") */
  611. X  
  612. X--- 161,171 ----
  613. X  uint LINESxCOLS;
  614. X  int current_ttymode = 0;
  615. X  int ttymode_termecu_on_sigint = 0;
  616. X  int tty_is_pty;
  617. X  int tty_is_multiscreen;
  618. X  int tty_is_scoterm;
  619. X  int tty_not_char_special;
  620. X+ int tty_use_kbd_sw_flow_control = 1;
  621. X  int use_colors = 0;        /* set by ttyinit, but default no */
  622. X  char *ttype;            /* getenv("TERM") */
  623. X  
  624. X***************
  625. X*** 178,186 ****
  626. X  struct stat dn;
  627. X  struct stat tty01;
  628. X  struct stat ttyp0;
  629. X- #if defined(METROLINK_X11R4_PTS)
  630. X- struct stat pts000;
  631. X- #endif /* METROLINK_X11R4_PTS */
  632. X  struct stat console;
  633. X  
  634. X  uchar kbdeof;            /* current input EOF */
  635. X--- 179,184 ----
  636. X***************
  637. X*** 208,242 ****
  638. X   *
  639. X   */
  640. X  #ifdef M_SYSV /* SCO */
  641. X- ulong colors_current = 0x04070A00L;
  642. X- ulong colors_normal = 0x04070A00L;    /* default lt_green/black red/white */
  643. X  ulong colors_initial = 0x04070A00L;    /* default initial colors */
  644. X  ulong colors_success = 0x07000A00L;    /* lt_green/black red/white */
  645. X! ulong colors_alert = 0x0E000E00L;    /* yellow */
  646. X! ulong colors_error = 0x04000400L;    /* red */
  647. X! ulong colors_notify = 0x08000800L;    /* gray */
  648. X  #define COLORS_DEFINED
  649. X  #endif /* M_SYSV */
  650. X  
  651. X  #if defined(ISCSVR4)
  652. X  ulong colors_current = 0x00003740L;
  653. X! ulong colors_normal = 0x00003740L;    /* */
  654. X! ulong colors_initial = 0x00003740L;    /* */
  655. X! ulong colors_success = 0x00003740L;    /* */
  656. X! ulong colors_alert = 0x00003740L;    /* */
  657. X! ulong colors_error = 0x00003140L;    /* */
  658. X! ulong colors_notify = 0x00003340L;    /* */
  659. X  #define COLORS_DEFINED
  660. X  #endif /* ISCSVR4 */
  661. X  
  662. X  #if defined(ESIXSVR4)
  663. X  ulong colors_current = 0x00003740L;
  664. X! ulong colors_normal = 0x00003740L;    /* not correct - THESE NEED FIXING */
  665. X! ulong colors_initial = 0x00003740L;    /* not correct - THESE NEED FIXING */
  666. X! ulong colors_success = 0x00003740L;    /* not correct - THESE NEED FIXING */
  667. X! ulong colors_alert = 0x00003740LL;    /* not correct - THESE NEED FIXING */
  668. X! ulong colors_error = 0x00003140L;    /* not correct - THESE NEED FIXING */
  669. X! ulong colors_notify = 0x00003340L;    /* not correct - THESE NEED FIXING */
  670. X  #define COLORS_DEFINED
  671. X  
  672. X  static struct color_remapping {
  673. X--- 206,240 ----
  674. X   *
  675. X   */
  676. X  #ifdef M_SYSV /* SCO */
  677. X  ulong colors_initial = 0x04070A00L;    /* default initial colors */
  678. X+ ulong colors_current = 0x04070A00L; /* colors set during execution */
  679. X+ ulong colors_normal  = 0x04070A00L;    /* default lt_green/black red/white */
  680. X  ulong colors_success = 0x07000A00L;    /* lt_green/black red/white */
  681. X! ulong colors_alert   = 0x0E000E00L;    /* yellow */
  682. X! ulong colors_error   = 0x04000400L;    /* red */
  683. X! ulong colors_notify  = 0x08000800L;    /* gray */
  684. X  #define COLORS_DEFINED
  685. X  #endif /* M_SYSV */
  686. X  
  687. X  #if defined(ISCSVR4)
  688. X+ ulong colors_initial = 0x00003740L;
  689. X  ulong colors_current = 0x00003740L;
  690. X! ulong colors_normal  = 0x00003740L;    /* white */
  691. X! ulong colors_success = 0x00003240L;    /* green */
  692. X! ulong colors_alert   = 0x00003340L;    /* yellow */
  693. X! ulong colors_error   = 0x00003140L;    /* red  */
  694. X! ulong colors_notify  = 0x00003640L;    /* cyan */
  695. X  #define COLORS_DEFINED
  696. X  #endif /* ISCSVR4 */
  697. X  
  698. X  #if defined(ESIXSVR4)
  699. X+ ulong colors_initial = 0x00003740L;
  700. X  ulong colors_current = 0x00003740L;
  701. X! ulong colors_normal  = 0x00003740L;    /* ? */
  702. X! ulong colors_success = 0x00003240L;    /* ? */
  703. X! ulong colors_alert   = 0x00003340L;    /* ? */
  704. X! ulong colors_error   = 0x00003140L;    /* ? */
  705. X! ulong colors_notify  = 0x00003640L;    /* ? */
  706. X  #define COLORS_DEFINED
  707. X  
  708. X  static struct color_remapping {
  709. X***************
  710. X*** 287,298 ****
  711. X  {
  712. X      long ms = 300L;
  713. X  
  714. X-     /* make pts sweat, but don't make as many mistakes */
  715. X- #if defined(METROLINK_X11R4_PTS)
  716. X-     if(tty_is_pts)
  717. X-         return(ms);
  718. X- #endif /* METROLINK_X11R4_PTS */
  719. X- 
  720. X      /* make network/xterm/pty sweat, but don't make as many mistakes */
  721. X      if(tty_is_pty)
  722. X          return(ms);
  723. X--- 285,290 ----
  724. X***************
  725. X*** 437,444 ****
  726. X              tcap_stand_out();
  727. X          else
  728. X          {
  729. X!             tcap_underscore_on();
  730. X!             tcap_bold_on();
  731. X              tcap_stand_end();
  732. X          }
  733. X          return;
  734. X--- 429,436 ----
  735. X              tcap_stand_out();
  736. X          else
  737. X          {
  738. X!             tcap_underscore_off();
  739. X!             tcap_bold_off();
  740. X              tcap_stand_end();
  741. X          }
  742. X          return;
  743. X***************
  744. X*** 738,753 ****
  745. X          tty_is_pty = 1;
  746. X  
  747. X      /*
  748. X-      * if pts
  749. X-      */
  750. X- #if defined(METROLINK_X11R4_PTS)
  751. X-     memset((char *)&pts000,0xFF,sizeof(struct stat));
  752. X-     stat("/dev/pts000",&pts000);
  753. X-     if((tty_stat.st_rdev & 0xFF00) == (pts000.st_rdev & 0xFF00))
  754. X-         tty_is_pts = 1;
  755. X- #endif /* METROLINK_X11R4_PTS */
  756. X- 
  757. X-     /*
  758. X       * use color if we are on a display that supports it and we know how :-|
  759. X       */
  760. X      use_colors = 0;
  761. X--- 730,735 ----
  762. X***************
  763. X*** 885,891 ****
  764. X          /* don't want to honor tty xon/xoff, but pass to other end */
  765. X          tty_termio_current.c_iflag &=
  766. X              ~(INLCR | ICRNL | IGNCR | IUCLC | ISTRIP);
  767. X!         tty_termio_current.c_iflag |= IXON | IXOFF;    /* both ends xon/xoff */
  768. X  
  769. X          tty_termio_current.c_oflag |= OPOST;
  770. X          tty_termio_current.c_oflag &= ~(OLCUC | ONLCR | OCRNL | ONOCR | ONLRET);
  771. X--- 867,876 ----
  772. X          /* don't want to honor tty xon/xoff, but pass to other end */
  773. X          tty_termio_current.c_iflag &=
  774. X              ~(INLCR | ICRNL | IGNCR | IUCLC | ISTRIP);
  775. X!         if(tty_use_kbd_sw_flow_control)
  776. X!             tty_termio_current.c_iflag |= IXON | IXOFF;
  777. X!         else
  778. X!             tty_termio_current.c_iflag &= ~(IXON | IXOFF);
  779. X  
  780. X          tty_termio_current.c_oflag |= OPOST;
  781. X          tty_termio_current.c_oflag &= ~(OLCUC | ONLCR | OCRNL | ONOCR | ONLRET);
  782. X***************
  783. X*** 1447,1452 ****
  784. X--- 1432,1478 ----
  785. X      return(ttname);
  786. X  #endif
  787. X  }    /* end of get_ttyname */
  788. X+ 
  789. X+ /*+-------------------------------------------------------------------------
  790. X+     set_console_xon_xoff_by_arg(arg)
  791. X+ --------------------------------------------------------------------------*/
  792. X+ int
  793. X+ set_console_xon_xoff_by_arg(arg)
  794. X+ char *arg;
  795. X+ {
  796. X+     int new_xon_xoff = 0;
  797. X+ 
  798. X+     if(ulcmpb(arg,"on") < 0)
  799. X+     {
  800. X+         new_xon_xoff = IXON | IXOFF;
  801. X+         tty_use_kbd_sw_flow_control = 1;
  802. X+     }
  803. X+     else if(ulcmpb(arg,"off") < 0)
  804. X+     {
  805. X+         new_xon_xoff = 0;
  806. X+         tty_use_kbd_sw_flow_control = 0;
  807. X+     }
  808. X+     else
  809. X+         return(-1);
  810. X+ 
  811. X+     tty_termio_current.c_iflag &= ~(IXON|IXOFF);
  812. X+     tty_termio_current.c_iflag |= new_xon_xoff;
  813. X+     ioctl(TTYIN,TCSETA,(char *)&tty_termio_current);
  814. X+     return(0);
  815. X+ 
  816. X+ }    /* end of set_console_xon_xoff_by_arg */
  817. X+ 
  818. X+ /*+-------------------------------------------------------------------------
  819. X+     console_xon_status()
  820. X+ --------------------------------------------------------------------------*/
  821. X+ char *
  822. X+ console_xon_status()
  823. X+ {
  824. X+     if(tty_use_kbd_sw_flow_control)
  825. X+         return("HONOR ^S/^Q locally");
  826. X+     else
  827. X+         return("PASS ^S/^Q to remote");
  828. X+ }    /* end of console_xon_status */
  829. X  
  830. X  /* end of ecutty.c */
  831. X  /* vi: set tabstop=4 shiftwidth=4: */
  832. X*** ../ecu-3.23/ecuutil.c    Sun Nov 15 16:38:34 1992
  833. X--- ecuutil.c    Wed Nov 11 14:47:13 1992
  834. X***************
  835. X*** 261,266 ****
  836. X--- 261,270 ----
  837. X      }
  838. X  
  839. X      token = parseptr;
  840. X+ 
  841. X+     /*
  842. X+      * tokens beginning with apostrophe or quotes kept together
  843. X+      */
  844. X      if(*token == '\'')
  845. X      {
  846. X          token++;
  847. X***************
  848. X*** 278,283 ****
  849. X--- 282,305 ----
  850. X          str_token_static = (char *)0;
  851. X          return(token);
  852. X      }
  853. X+     else if(*token == '"')
  854. X+     {
  855. X+         token++;
  856. X+         parseptr++;
  857. X+         while(*parseptr)
  858. X+         {
  859. X+             if(*parseptr == '"')
  860. X+             {
  861. X+                 str_token_static = parseptr + 1;
  862. X+                 *parseptr = 0;
  863. X+                 return(token);
  864. X+             }
  865. X+             parseptr++;
  866. X+         }
  867. X+         str_token_static = (char *)0;
  868. X+         return(token);
  869. X+     }
  870. X+ 
  871. X      while(*parseptr)
  872. X      {
  873. X          if(strchr(termchars,*parseptr))
  874. X*** ../ecu-3.23/help/ecuhelp.src    Sun Nov 15 20:39:35 1992
  875. X--- help/ecuhelp.src    Sun Oct 18 16:02:52 1992
  876. X***************
  877. X*** 1,5 ****
  878. X  # ecu help source file
  879. X! #+:EDITS:*/
  880. X  #:09-10-1992-13:59-wht@n4hgf-ECU release 3.20
  881. X  #:08-22-1992-15:39-wht@n4hgf-ECU release 3.20 BETA
  882. X  #:04-19-1992-20:41-wht@n4hgf-upgrade kbdtest entry
  883. X--- 1,6 ----
  884. X  # ecu help source file
  885. X! #+:EDITS:
  886. X! #:10-18-1992-15:16-wht@n4hgf-add conxon
  887. X  #:09-10-1992-13:59-wht@n4hgf-ECU release 3.20
  888. X  #:08-22-1992-15:39-wht@n4hgf-ECU release 3.20 BETA
  889. X  #:04-19-1992-20:41-wht@n4hgf-upgrade kbdtest entry
  890. X***************
  891. X*** 97,102 ****
  892. X--- 98,114 ----
  893. X  from the list or saving the list to file ~/.ecu/dir.  This file is
  894. X  automatically read at ecu startup, providing a convenient list of
  895. X  directories available for quick selection.
  896. X+ #--------------------------------------------------------------------
  897. X+ %conxon
  898. X+ Usage: conxon [<arg>]
  899. X+ where <arg> is on    honor ^S/^Q local flow control (DEFAULT)
  900. X+                off   pass ^S/^Q to remote
  901. X+ 
  902. X+ This command enables or disables console xon/xoff flow control.
  903. X+ If the argument is omitted, the current flow control state is
  904. X+ displayed.  If on, typing ^S/^Q stops or restarts the local
  905. X+ console driver output.  If off, ^S and ^Q are passed to the
  906. X+ remote (for EMACS, of course -- who else?).
  907. X  #--------------------------------------------------------------------
  908. X  %dcdwatch
  909. X  Usage: dcdwatch [<dcdwatch-param>]
  910. X*** ../ecu-3.23/models/if_test.ep    Sun Nov 15 16:43:28 1992
  911. X--- models/if_test.ep    Sat Nov 14 23:02:36 1992
  912. X***************
  913. X*** 31,34 ****
  914. X      else ifle 5
  915. X          echo 'bad news 5'
  916. X      else
  917. X!         echo 'compound if works'
  918. X--- 31,56 ----
  919. X      else ifle 5
  920. X          echo 'bad news 5'
  921. X      else
  922. X!         echo 'compound if 1 works'
  923. X! 
  924. X!     $s0 = '123'
  925. X!     ifi %len($s0) == 0
  926. X!         echo 'bad news 20'
  927. X!     else
  928. X!     {
  929. X!         ifs $s0 == '123'
  930. X!             echo 'compound if 2 works'
  931. X!         else ifs $s0 == 'def'
  932. X!             echo 'bad news 21'
  933. X!         else
  934. X!             echo 'bad news 22'
  935. X!     }
  936. X! 
  937. X!     $s0 = '123'
  938. X!     ifs $s0 == 'def'
  939. X!         echo 'bad news 31'
  940. X!     else ifs $s0 == '123'
  941. X!         echo 'compound if 3 works'
  942. X!     else
  943. X!         echo 'bad news 32'
  944. X! 
  945. X*** ../ecu-3.23/pcmdif.c    Sun Nov 15 16:40:10 1992
  946. X--- pcmdif.c    Sat Nov 14 23:15:53 1992
  947. X***************
  948. X*** 28,33 ****
  949. X--- 28,34 ----
  950. X  
  951. X  --------------------------------------------------------------------------*/
  952. X  /*+:EDITS:*/
  953. X+ /*:11-14-1992-22:37-wht@n4hgf-multiple else loses track of truth */
  954. X  /*:09-10-1992-14:00-wht@n4hgf-ECU release 3.20 */
  955. X  /*:08-22-1992-15:39-wht@n4hgf-ECU release 3.20 BETA */
  956. X  /*:07-25-1991-12:59-wht@n4hgf-ECU release 3.10 */
  957. X***************
  958. X*** 253,258 ****
  959. X--- 254,261 ----
  960. X  
  961. X      if(!(tesd1 = esdalloc(256)) || !(tesd2 = esdalloc(256)))
  962. X      {
  963. X+         if(tesd1)
  964. X+             esdfree(tesd1);
  965. X          erc = eNoMemory;
  966. X          goto RETURN;
  967. X      }    
  968. X***************
  969. X*** 345,351 ****
  970. X          }
  971. X      }
  972. X  
  973. X!     truth_already[if_level] = truth;
  974. X  
  975. X  /* if end of command, execute frame else conditionally execute rest of esd */
  976. X      s80[0] = 0;
  977. X--- 348,354 ----
  978. X          }
  979. X      }
  980. X  
  981. X!     truth_already[if_level] |= truth;
  982. X  
  983. X  /* if end of command, execute frame else conditionally execute rest of esd */
  984. X      s80[0] = 0;
  985. X***************
  986. X*** 383,395 ****
  987. X      }
  988. X  
  989. X  /* we have an "else" condition */
  990. X-     truth = !truth;
  991. X      pcb->current = pcb->current->next;
  992. X  
  993. X      trace_proc_cmd(pcb);
  994. X  
  995. X      if(end_of_cmd(else_line))
  996. X          erc = execute_frame(truth);
  997. X      else
  998. X      {
  999. X          save_index = else_line->old_index = else_line->index;
  1000. X--- 386,400 ----
  1001. X      }
  1002. X  
  1003. X  /* we have an "else" condition */
  1004. X      pcb->current = pcb->current->next;
  1005. X  
  1006. X      trace_proc_cmd(pcb);
  1007. X  
  1008. X      if(end_of_cmd(else_line))
  1009. X+     {
  1010. X+         truth = !truth_already[if_level];
  1011. X          erc = execute_frame(truth);
  1012. X+     }
  1013. X      else
  1014. X      {
  1015. X          save_index = else_line->old_index = else_line->index;
  1016. X***************
  1017. X*** 465,470 ****
  1018. X--- 470,476 ----
  1019. X          else if(!strncmp(s80,"while",5))
  1020. X          {
  1021. X              pputs("'while' command not allowed as 'else' conditional\n");
  1022. X+             pputs("put the statement inside braces\n");
  1023. X              return(eFATAL_ALREADY);
  1024. X          }
  1025. X          else
  1026. X*** ../ecu-3.23/pcmdtty.c    Sun Nov 15 16:40:14 1992
  1027. X--- pcmdtty.c    Sun Oct 18 14:32:21 1992
  1028. X***************
  1029. X*** 21,26 ****
  1030. X--- 21,27 ----
  1031. X  
  1032. X  --------------------------------------------------------------------------*/
  1033. X  /*+:EDITS:*/
  1034. X+ /*:10-18-1992-14:26-wht@n4hgf-add conxon */
  1035. X  /*:09-10-1992-14:00-wht@n4hgf-ECU release 3.20 */
  1036. X  /*:08-30-1992-23:15-wht@n4hgf-add fkmap */
  1037. X  /*:08-22-1992-15:39-wht@n4hgf-ECU release 3.20 BETA */
  1038. X***************
  1039. X*** 424,429 ****
  1040. X--- 425,460 ----
  1041. X      tcap_delete_lines(1);
  1042. X      return(0);
  1043. X  }    /* end of pcmd_delline */
  1044. X+ 
  1045. X+ /*+-------------------------------------------------------------------------
  1046. X+     pcmd_conxon(param)
  1047. X+ --------------------------------------------------------------------------*/
  1048. X+ int
  1049. X+ pcmd_conxon(param)
  1050. X+ ESD *param;
  1051. X+ {
  1052. X+     int erc;
  1053. X+     char new_xonxoff[8];
  1054. X+     char *conxon_status();
  1055. X+ 
  1056. X+     if(shm->Liofd < 0)
  1057. X+         return(eNoLineAttached);
  1058. X+ 
  1059. X+     if(erc = get_alpha_zstr(param,new_xonxoff,sizeof(new_xonxoff)))
  1060. X+         return(erc);
  1061. X+ 
  1062. X+     if(set_console_xon_xoff_by_arg(new_xonxoff))
  1063. X+         return(eBadParameter);
  1064. X+ 
  1065. X+     if(proctrace)
  1066. X+     {
  1067. X+         pprintf("console xon/xoff flow control set to %s\n",
  1068. X+             console_xon_status());
  1069. X+     }
  1070. X+ 
  1071. X+     return(erc);
  1072. X+ 
  1073. X+ }    /* end of pcmd_conxon */
  1074. X  
  1075. X  /* vi: set tabstop=4 shiftwidth=4: */
  1076. X  /* end of pcmdtty.c */
  1077. X*** ../ecu-3.23/pcmdxfer.c    Sun Nov 15 16:40:16 1992
  1078. X--- pcmdxfer.c    Wed Oct 21 19:19:49 1992
  1079. X***************
  1080. X*** 20,25 ****
  1081. X--- 20,26 ----
  1082. X  
  1083. X  --------------------------------------------------------------------------*/
  1084. X  /*+:EDITS:*/
  1085. X+ /*:10-21-1992-19:15-wht@n4hgf-proc file xfer didnt learn about eculibdir */
  1086. X  /*:09-10-1992-14:00-wht@n4hgf-ECU release 3.20 */
  1087. X  /*:09-05-1992-15:35-wht@n4hgf-add -r to sz */
  1088. X  /*:08-22-1992-15:39-wht@n4hgf-ECU release 3.20 BETA */
  1089. X***************
  1090. X*** 247,253 ****
  1091. X      /*
  1092. X       * build command at beginning of 'cmdesd' ESD
  1093. X       */
  1094. X!     sprintf(cmdesd->pb,"ecusz -X -. %d ",shm->Liofd);
  1095. X      strcat(cmdesd->pb,bottom_label);
  1096. X  
  1097. X  #if defined(WHT)    /* for testing */
  1098. X--- 248,254 ----
  1099. X      /*
  1100. X       * build command at beginning of 'cmdesd' ESD
  1101. X       */
  1102. X!     sprintf(cmdesd->pb,"%s/ecusz -X -. %d ",eculibdir,shm->Liofd);
  1103. X      strcat(cmdesd->pb,bottom_label);
  1104. X  
  1105. X  #if defined(WHT)    /* for testing */
  1106. X***************
  1107. X*** 320,326 ****
  1108. X      /*
  1109. X       * build command at beginning of 'cmdesd' ESD
  1110. X       */
  1111. X!     sprintf(cmdesd->pb,"ecusz -Y -. %d -k ",shm->Liofd);
  1112. X      strcat(cmdesd->pb,bottom_label);
  1113. X      if(strchr(switches,'a'))
  1114. X          strcat(cmdesd->pb,"-a ");
  1115. X--- 321,327 ----
  1116. X      /*
  1117. X       * build command at beginning of 'cmdesd' ESD
  1118. X       */
  1119. X!     sprintf(cmdesd->pb,"%s/ecusz -Y -. %d ",eculibdir,shm->Liofd);
  1120. X      strcat(cmdesd->pb,bottom_label);
  1121. X      if(strchr(switches,'a'))
  1122. X          strcat(cmdesd->pb,"-a ");
  1123. X***************
  1124. X*** 397,403 ****
  1125. X      /*
  1126. X       * build command at beginning of 'cmdesd' ESD
  1127. X       */
  1128. X!     sprintf(cmdesd->pb,"ecusz -Z -. %d -y ",shm->Liofd);
  1129. X      strcat(cmdesd->pb,bottom_label);
  1130. X  
  1131. X      if(strchr(switches,'N'))        /* force "no curses" */
  1132. X--- 398,404 ----
  1133. X      /*
  1134. X       * build command at beginning of 'cmdesd' ESD
  1135. X       */
  1136. X!     sprintf(cmdesd->pb,"%s/ecusz -Z -. %d ",eculibdir,shm->Liofd);
  1137. X      strcat(cmdesd->pb,bottom_label);
  1138. X  
  1139. X      if(strchr(switches,'N'))        /* force "no curses" */
  1140. X***************
  1141. X*** 631,637 ****
  1142. X      /*
  1143. X       * build command in 'cmdstr' string
  1144. X       */
  1145. X!     sprintf(cmdstr,"ecurz -X -. %d -c ",shm->Liofd);
  1146. X      strcat(cmdstr,bottom_label);
  1147. X      if(!strchr(switches,'b'))
  1148. X          strcat(cmdstr,"-b ");
  1149. X--- 632,638 ----
  1150. X      /*
  1151. X       * build command in 'cmdstr' string
  1152. X       */
  1153. X!     sprintf(cmdstr,"%s/ecurz -X -. %d ",eculibdir,shm->Liofd);
  1154. X      strcat(cmdstr,bottom_label);
  1155. X      if(!strchr(switches,'b'))
  1156. X          strcat(cmdstr,"-b ");
  1157. X***************
  1158. X*** 677,683 ****
  1159. X      /*
  1160. X       * build command in 'cmdstr' string
  1161. X       */
  1162. X!     sprintf(cmdstr,"ecurz -Y -. %d -y ",shm->Liofd);
  1163. X      strcat(cmdstr,bottom_label);
  1164. X      file_xfer_start();
  1165. X      if(exec_cmd(cmdstr))
  1166. X--- 678,684 ----
  1167. X      /*
  1168. X       * build command in 'cmdstr' string
  1169. X       */
  1170. X!     sprintf(cmdstr,"%s/ecurz -Y -. %d ",eculibdir,shm->Liofd);
  1171. X      strcat(cmdstr,bottom_label);
  1172. X      file_xfer_start();
  1173. X      if(exec_cmd(cmdstr))
  1174. X***************
  1175. X*** 712,718 ****
  1176. X      /*
  1177. X       * build command in 'cmdstr' string
  1178. X       */
  1179. X!     sprintf(cmdstr,"ecurz -Z -. %d ",shm->Liofd);
  1180. X      strcat(cmdstr,bottom_label);
  1181. X  
  1182. X      if(strchr(switches,'N'))        /* force "no curses" */
  1183. X--- 713,719 ----
  1184. X      /*
  1185. X       * build command in 'cmdstr' string
  1186. X       */
  1187. X!     sprintf(cmdstr,"%s/ecurz -Z -. %d ",eculibdir,shm->Liofd);
  1188. X      strcat(cmdstr,bottom_label);
  1189. X  
  1190. X      if(strchr(switches,'N'))        /* force "no curses" */
  1191. X*** ../ecu-3.23/sea/ecusea.c    Sun Nov 15 16:41:17 1992
  1192. X--- sea/ecusea.c    Sun Oct  4 21:59:05 1992
  1193. X***************
  1194. X*** 81,87 ****
  1195. X  #include <signal.h>
  1196. X  #include <setjmp.h>
  1197. X  #include <fcntl.h>
  1198. X- #include <fcntl.h>
  1199. X  #include <errno.h>
  1200. X  #if defined(sun)
  1201. X  #include <termios.h>
  1202. X--- 81,86 ----
  1203. SHAR_EOF
  1204. chmod 0644 PATCH04 ||
  1205. echo 'restore of PATCH04 failed'
  1206. Wc_c="`wc -c < 'PATCH04'`"
  1207. test 32607 -eq "$Wc_c" ||
  1208.     echo 'PATCH04: original size 32607, current size' "$Wc_c"
  1209. exit 0
  1210.  
  1211. --------------------------------------------------------------------
  1212. Warren Tucker, TuckerWare       n4hgf!wht or wht@n4hgf.Mt-Park.GA.US
  1213. Hacker Extraordinaire  d' async PADs,  pods,  proteins and protocols
  1214.  
  1215. exit 0 # Just in case...
  1216.