2024-10-24 Executing commands via NNCP

In a network of connected nodes where you all exchanged public keys, it is possible to do file requests. For this to work, the node with the files needs to specify the directory with the files and the node wanting the files needs to use the nncp-freq command to do a file request.

But what file to request? One solution is for one side to create a file listing all the other files and make this filename known to friends. Then run a job to recreate the file on a regular basis.

But you know me. It sounds like CO₂ for the CO₂ god.

So here's the node that has the files, granting its neighbour melanobombus access to the files in /home/alex/alexschroeder.ch/wiki and offering to execute ls -BR for that directory and sending it back as a file called files.txt.

    melanobomus: {
      exec: {
        rsmtp:  ["/usr/sbin/sendmail", "-bS"]
        ls: ["/bin/sh", "-c", "ls --ignore-backups --recursive /home/alex/alexschroeder.ch/wiki | nncp-file - $NNCP_SENDER:files.txt"]
      }
      freq: {
        path: "/home/alex/alexschroeder.ch/wiki"
      }
      …
    }

​#NNCP

Proxy Information
Original URL
gemini://alexschroeder.ch/2024-10-24-nncp-exec
Status Code
Success (20)
Meta
text/gemini
Capsule Response Time
169.805794 milliseconds
Gemini-to-HTML Time
0.36733 milliseconds

This content has been proxied by September (3851b).