The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
* [TUHS] Re: Stdin Redirect in Cu History/Alternatives?
@ 2022-12-11  0:42 Nelson H. F. Beebe
  2022-12-11  2:16 ` Larry McVoy
  0 siblings, 1 reply; 25+ messages in thread
From: Nelson H. F. Beebe @ 2022-12-11  0:42 UTC (permalink / raw)
  To: tuhs

Clem Cole mentions kermit in connection with the question raised about
the uses of the cu utility.

As an FYI, Kermit's author, Frank da Cruz, is preparing a final
release, version 10.0, and I've been working with him on testing
builds in numerous environments.  There are frequent updates during
this work, and the latest snapshots can be found at

        https://kermitproject.org/ftp/kermit/pretest/

The x-YYYYMMDD.* bundles do not contain a leading directory, so be
careful to unpack them in an empty directory.  The build relies on a
lengthy makefile with platform-specific target names, like irix65,
linux, and solaris11: the leading comments in the makefile provide
further guidance.

-------------------------------------------------------------------------------
- Nelson H. F. Beebe                    Tel: +1 801 581 5254                  -
- University of Utah                                                          -
- Department of Mathematics, 110 LCB    Internet e-mail: beebe@math.utah.edu  -
- 155 S 1400 E RM 233                       beebe@acm.org  beebe@computer.org -
- Salt Lake City, UT 84112-0090, USA    URL: http://www.math.utah.edu/~beebe/ -
-------------------------------------------------------------------------------

^ permalink raw reply	[flat|nested] 25+ messages in thread
* [TUHS] Re: Stdin Redirect in Cu History/Alternatives?
@ 2022-12-12 17:42 Nelson H. F. Beebe
  0 siblings, 0 replies; 25+ messages in thread
From: Nelson H. F. Beebe @ 2022-12-12 17:42 UTC (permalink / raw)
  To: tuhs

After my posting on Sat, 10 Dec 2022 17:42:14 -0700 about the recent
work on kermit 10.0, some readers asked why a serial line connection
and file transfer tool was still of interest, and a few others
responded with use cases.

Modern kermit has for several years supported ssh connections, and
Unicode, as well: here is a top-level command list:

	% kermit
	(~/) C-Kermit>? Command, one of the following:
	 add          define       hangup       msleep       resend       telnet
	 answer       delete       HELP         open         return       touch
	 apc          dial         if           orientation  rlogin       trace
	 array        directory    increment    output       rmdir        translate
	 ask          disable      input        pause        run          transmit
	 askq         do           INTRO        pdial        screen       type
	 assign       echo         kcd          pipe         script       undeclare
	 associate    edit         learn        print        send         undefine
	 back         enable       LICENSE      pty          server       version
	 browse       end          lineout      purge        set          void
	 bye          evaluate     log          push         shift        wait
	 cd           exit         login        pwd          show         where
	 change       file         logout       quit         space        while
	 check        finish       lookup       read         ssh          who
	 chmod        for          mail         receive      statistics   write
	 clear        ftp          manual       redial       status       xecho
	 close        get          message      redirect     stop         xmessage
	 connect      getc         minput       redo         SUPPORT
	 convert      getok        mget         reget        suspend
	 copy         goto         mkdir        remote       switch
	 date         grep         mmove        remove       tail
	 decrement    head         msend        rename       take
	or one of the tokens: ! # ( . ; : < @ ^ { 

Here are the descriptions of connection and character set translations:

	(~/) C-Kermit>help ssh

	Syntax: SSH [ options ] <hostname> [ command ]
	  Makes an SSH connection using the external ssh program via the SET SSH
	  COMMAND string, which is "ssh -e none" by default.  Options for the
	  external ssh program may be included.  If the hostname is followed by a
	  command, the command is executed on the host instead of an interactive
	  shell.

	(~/) C-Kermit>help connect

	Syntax: CONNECT (or C, or CQ) [ switches ]
	  Connect to a remote computer via the serial communications device given in
	  the most recent SET LINE command, or to the network host named in the most
	  recent SET HOST command.  Type the escape character followed by C to get
	  back to the C-Kermit prompt, or followed by ? for a list of CONNECT-mode
	  escape commands.

	Include the /QUIETLY switch to suppress the informational message that
	tells you how to escape back, etc.  CQ is a synonym for CONNECT /QUIETLY.

	Other switches include:

	/TRIGGER:string
	  One or more strings to look for that will cause automatic return to
	  command mode.  To specify one string, just put it right after the
	  colon, e.g. "/TRIGGER:Goodbye".  If the string contains any spaces, you
	  must enclose it in braces, e.g. "/TRIGGER:{READY TO SEND...}".  To
	  specify more than one trigger, use the following format:

	    /TRIGGER:{{string1}{string2}...{stringn}}

	  Upon return from CONNECT mode, the variable \v(trigger) is set to the
	  trigger string, if any, that was actually encountered.  This value, like
	  all other CONNECT switches applies only to the CONNECT command with which
	  it is given, and overrides (temporarily) any global SET TERMINAL TRIGGER
	  string that might be in effect.

	Your escape character is Ctrl-\ (ASCII 28, FS)

	(~/) C-Kermit>help translate

	Syntax: CONVERT file1 cs1 cs2 [ file2 ]
	Synonym: TRANSLATE
	  Converts file1 from the character set cs1 into the character set cs2
	  and stores the result in file2.  The character sets can be any of
	  C-Kermit's file character sets.  If file2 is omitted, the translation
	  is displayed on the screen.  An appropriate intermediate character-set
	  is chosen automatically, if necessary.  Synonym: XLATE.  Example:

	    CONVERT lasagna.txt latin1 utf8 lasagna-utf8.txt

	  Multiple files can be translated if file2 is a directory or device name,
	  rather than a filename, or if file2 is omitted.

-------------------------------------------------------------------------------
- Nelson H. F. Beebe                    Tel: +1 801 581 5254                  -
- University of Utah                                                          -
- Department of Mathematics, 110 LCB    Internet e-mail: beebe@math.utah.edu  -
- 155 S 1400 E RM 233                       beebe@acm.org  beebe@computer.org -
- Salt Lake City, UT 84112-0090, USA    URL: http://www.math.utah.edu/~beebe/ -
-------------------------------------------------------------------------------

^ permalink raw reply	[flat|nested] 25+ messages in thread
* [TUHS] Stdin Redirect in Cu History/Alternatives?
@ 2022-12-10 19:38 segaloco via TUHS
  2022-12-11  0:22 ` [TUHS] " Clem Cole
  0 siblings, 1 reply; 25+ messages in thread
From: segaloco via TUHS @ 2022-12-10 19:38 UTC (permalink / raw)
  To: The Eunuchs Hysterical Society

Good morning all.  I've been doing some historical research on the UUCP cu utility this morning and have come across a little discrepancy between the various UNIX streams I was wondering if someone could illuminate.

So cu as of V7 supported the ~$ escape, a means of calling a local procedure and emitting stdout over the TTY line to the remote machine, all fine and good for packaging a character stream to emit.  However, what I'm not finding in that age of documentation is any means of requesting std*in* from the TTY line as input to a local procedure (in essence running a text filter or handshake-driven protocols over cu).  The context in which I'm researching this is integrating cu into my bare-metal SBC programming using XMODEM so I can rest a little easier my process is based on tools I'll probably find in most places.

So old fashioned Mike Lesk-era cu only seems to do stdout redirect, but no stdin.  I did some further digging and it looks like different UUCP implementations cracked this nut with different escapes, with BSD eventually going with ~C and Taylor UUCP opting for ~+.  Checking the current illumos manual pages (for a SVR4-ish example) doesn't turn up any command for this.  This is indicative of there never being an agreed-upon mechanism for doing this, although I could see this being a very useful mechanism.

What I'm curious about is if the lack of a bi-directional redirect in early cu is reflective of a lack of need for that sort of functionality at the time or that matters such as that were handled through a different mechanism.  One thought I did have is that there wasn't file locking at the time (right?) and so theoretically nothing would prevent one from using a cu session on one terminal to send interactive commands and then a second using fd redirects in the shell to run filters/protocols separately of the interactive stream.

- Matt G.

^ permalink raw reply	[flat|nested] 25+ messages in thread

end of thread, other threads:[~2022-12-13  1:55 UTC | newest]

Thread overview: 25+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-12-11  0:42 [TUHS] Re: Stdin Redirect in Cu History/Alternatives? Nelson H. F. Beebe
2022-12-11  2:16 ` Larry McVoy
2022-12-11  2:26   ` Warner Losh
2022-12-11  2:32     ` Larry McVoy
2022-12-11  2:33       ` Warner Losh
2022-12-11  2:39         ` Larry McVoy
2022-12-11  2:49           ` Bakul Shah
2022-12-11  3:10           ` Phil Budne
2022-12-11  4:17           ` Dan Cross
2022-12-11  4:45             ` Will Senn
2022-12-12 17:06           ` Doug McIntyre
  -- strict thread matches above, loose matches on Subject: below --
2022-12-12 17:42 Nelson H. F. Beebe
2022-12-10 19:38 [TUHS] " segaloco via TUHS
2022-12-11  0:22 ` [TUHS] " Clem Cole
2022-12-11  2:37   ` segaloco via TUHS
2022-12-11 13:59   ` Michael Kjörling
2022-12-11 14:28     ` Steve Nickolas
2022-12-11 15:04       ` Dan Cross
2022-12-13  1:54         ` Larry McVoy
2022-12-11 17:18     ` Adam Thornton
2022-12-11 18:54       ` Michael Kjörling
2022-12-11 19:55         ` Dave Horsfall
2022-12-11 20:03           ` Larry McVoy
2022-12-11 23:22             ` segaloco via TUHS
2022-12-12 21:34             ` Dave Horsfall
2022-12-12 21:46               ` Chet Ramey

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).