Skip to content

amiagent 0.3.3 — the agent can no longer hang on its own logging

Choose a tag to compare

@thomas-luebker thomas-luebker released this 02 Aug 01:05
· 16 commits to master since this release

Recommended for anyone running 0.3.x.

0.3.0 stopped a hung command from blocking the agent. It left a second way to
wedge it that turned out to be much more likely: the agent's own logging.

An AmigaShell pauses its output the moment you click in the window. A process
writing to a paused console blocks. The agent printed a line for every command
and every file transfer — so a stray click on its window stopped it serving
anything at all, and the only way back was Ctrl-C at the machine.

That is not a theoretical failure. It happened on real hardware during testing.

Per-command output is now off by default. VERBOSE opts back in for
debugging. The startup banner still prints — a daemon that says nothing looks
like it failed to start. QUIET is still accepted and does nothing, so existing
command lines and S:User-Startup entries keep working unchanged.

Starting it at boot

;BEGIN amiagent
If Exists "Programs:amimcp/amiagent.020"
  Run >NIL: Programs:amimcp/amiagent.020 TOKEN=pickasecret
EndIf
;END amiagent

Place it after your TCP/IP stack in S:User-Startup. Verified across a real
reboot: the agent was answering ~6 seconds after the network came up.

Set a TOKEN. The agent runs arbitrary commands for anyone who can reach its
port, and the protocol is unencrypted. Keep it on a LAN you trust — and note the
token sits in plaintext in that boot script.

File For
amiagent 68000 baseline — runs on every Amiga
amiagent.020 68020+