CALL(1)

πŸ’– CALL(1) β€” the Linux Programmer's Manual page, but make it cute πŸ’–

okay bestie, welcome to call(1), straight out of the Linux Programmer's Manual. This is the glow-up era of call and she is ready to dial up some packet radio for you. ✨


🌸 NAME 🌸

call β€” make an AX.25, NET/ROM or Rose connection.

like, it calls people. over radio. iconic behavior tbh. πŸ’…


✨ SYNOPSIS ✨

okay so there's three whole vibes depending on which protocol you're on, and each one has its own little fit. pick your fighter:

For AX.25 πŸ¦‹

call [-b l|e] [-d] [-h] [-m s|e] [-p paclen] [-s mycall] [-r] [-t] [-T
timeout] [-v] [-w window] [-W] port callsign [[via] digipeaters.....]

For NET/ROM 🌈

call [-d] [-h] [-p paclen] [-r] [-t] [-T timeout] [-v] port callsign

For Rose πŸŽ€

call [-d] [-h] [-r] [-t] [-T timeout] [-v] port callsign address [[via]
digipeater]

πŸ’œ DESCRIPTION πŸ’œ

So call is the general purpose AX.25, NET/ROM and Rose connection program β€” the main character of packet radio connection tools, no cap. And like everything else in AX.25 land, it runs entirely in line mode. All that CR/LF translation? Done transparently, you don't even have to think about it. 🫢

She comes with ASCII, YAPP, YAPP-C and 7+ file transfer facilities, because we contain multitudes. Now listen β€” some of the options only work in AX.25 mode. If you hand them to NET/ROM mode or Rose mode, the program will just quietly ignore them. No drama, no error, she simply does not see them. πŸ™ˆ

This version of call has a whole bunch of changes including a much improved user interface. And here's the thing: the port name is mandatory, bestie. It's the name of the port the connection gets made on. That port name can be an AX.25 port, a NET/ROM port, or a Rose port β€” call will figure out which one automatically, she's smart like that. πŸ‘‘

When you're using NET/ROM, using digipeaters is meaningless and is not supported. Periodt. But with Rose, you can specify up to one digipeater, plus the Rose address of the distant node and the callsign of the remote station. That Rose address has to be ten digits long and it must exist in the Rose node tables β€” no fake addresses, she will know. Also, for Rose connects to work, axparms must have been used to set a callsign/uid mapping for the userid in use. That's not optional, that's the whole prerequisite. 😭


πŸ”₯ OPTIONS πŸ”₯

here's the full menu, every single one, no skipping:

  • -8 β€” UTF-8 encoding (this is the default, she's modern like that ✨)
  • -b l|e β€” Sets the method of backoff to use with AX.25 connections. The default comes from the port specification, but you can override it with this option. Valid values are l for linear backoff, and e for exponential backoff. pick your chaos. πŸ’€
  • -d β€” Turn on socket level debugging.
  • -h β€” Selects Slave mode.
  • -i β€” Use IBM850 encoding.
  • -m s|e β€” Sets the AX.25 mode to use. The default comes from the port specification, but you can override it with this option. Valid values are s for normal (modulus 8) AX.25 operation, or e for extended (modulus 128) AX.25 operation.
  • -p paclen β€” Specify a specific maximum amount of data to be sent in each AX.25 packet.
  • -r β€” Selects Raw mode.
  • -s mycall β€” Connect using the specified source call (you may need to be root for this one, so act accordingly πŸ‘‘).
  • -t β€” Selects Talk mode.
  • -v β€” Display the version.
  • -w window β€” Specify a specific AX.25 window for this connection. Only valid in AX.25 mode.
  • -S β€” Be silent. Useful for using call in shellscripts (together with option -r) in order to be really transparent. she's not ignoring you she's just quiet 🫢
  • -R β€” Disable all remote commands like autobin (#BIN#), 7plus downloads, //echo, etc. This is useful for scripting where you just don't like the remote site to trigger uncaught conditions here. protect your peace. πŸ›‘οΈ
  • -T timeout β€” Set idle timeout seconds after a connection will be closed automaticaly when there's no data being transferred (in- and outbound). If timeout is set to 3600, the connection will close after 1h inactivity. A value of 0.5 is 500ms. ⏰
  • -W β€” Wait for remote disconnect even if stdin is closed. Normaly, echo q | call ax0 db0fhn closes immediately after echo q terminates; thus we never see the greeting from db0fhn. With the -W option, call waits until the ax25-connection is disconnected (i.e. db0fhn disconnects after q command). Very useful for scripting. You might like to combine it with the -T option. the way that this one is literally a scripting cheat code. πŸ’…

🧚 The ~ Escapes 🧚

okay this is the fun part. The call program interprets lines beginning with a ~ specially. The following ~ escapes are available:

  • ~? β€” List escapes
  • ~~ β€” A ~ symbol
  • ~. β€” Close connection
  • ~! [command] β€” Run a command
  • ~0 β€” Change to Raw mode
  • ~1 β€” Change to Slave mode
  • ~2 β€” Change to Talk mode
  • ~8 β€” UTF-8 encoding
  • ~a β€” Start a file transfer (Autobin)
  • ~b β€” Start a file transfer (Binary)
  • ~c β€” Close the logfile
  • ~h β€” List escapes
  • ~i β€” IBM850 encoding
  • ~o [filename] β€” Open a logfile (default 'logfile.txt')
  • ~r β€” Reconnect to remote station
  • ~s β€” Stop an upload
  • ~u [filename] β€” Upload a file (ASCII upload)
  • ~yu [filename] β€” Upload a file (YAPP upload)
  • ~yd [filename] β€” Download a file (YAPP download)
  • ~z β€” Suspend program

πŸ¦‹ Terminal Emulation Tea πŸ¦‹

The program provides no terminal emulation features. Those are left up to the console facilities of the terminal in use. However β€” and this is the slay part β€” the program is '8 bit clean'. πŸ’…


πŸ“ FILES πŸ“

these are the files she looks at, bestie:

  • /proc/net/nr_nodes
  • /proc/net/rose_nodes
  • /etc/ax25/axports
  • /etc/ax25/nrports
  • /etc/ax25/rsports

🌈 SEE ALSO 🌈

go read these too, they're all in the group chat:

listen(1), mheard(1), ax25(4), netrom(4), rose(4), axports(5), nrports(5), rsports(5), axparms(8), nrparms(8), rsparms(8).


πŸ‘‘ AUTHORS πŸ‘‘

the literal legends who made this happen:

  • Alexander Tietzel DG6XA <TIETZE_A@etech.fh-hamburg.de>
  • Joerg Reuter DL1BKE <jreuter@poboxes.com>
  • Alan Cox GW4PTS <alan@cymru.net>
  • Jonathan Naylor G4KLX <g4klx@g4klx.demon.co.uk>
  • Steve Henson G6IXS <shenson@nyx.cs.du.edu>

okay that's the whole page bestie, tysm for reading, mwah πŸ’– this one's from the Linux manual set and the page is dated 27 August 1996 β€” yes she's an elder icon and yes she still serves. go make some connections, love u, bye! πŸŽ€βœ¨πŸ¦‹

πŸ“¦ where this page comes from