Subject: Assorted NNCP questions

From: John Goerzen <[email-masked]>
Date: Sat, 26 Dec 2020 22:48:14 -0600

Hi folks,

I have a few questions!

First, is nncp-toss multithreaded?  If so, would it be possible to 
have an option forcing it to run requests sequentially?

Secondly, I would like to establish a long-running connection to a 
remote host.  I defined:

      calls: [
        {
          cron: "*/1 * * * *"
          onlinedeadline: 1800
          maxonlinetime: 1750
          addr: lan
        },
      ]

But the onlinedeadline isn't being respected in the run by 
nncp-caller; it still disconnects after 10 seconds, so this 
results in a new connection being established every minute.  I 
also tried definine onlinedeadline at the parent (neighbor) level, 
rather than within the calls structure, but that didn't help 
either.

I am considering just running nncp-call instead of nncp-caller as 
a systemd service, hoping that perhaps it would send periodic 
pings to notice if the remote end goes away (does it?)

Finally, I have questions about what happens if data for the wrong 
node is loaded.  For instance, say you have this setup:

A -> B -> C

That is, to talk to C from A, you must go via B.

Now, you use nncp-xfer or nncp-bundle to offload data for B.  But 
instead of plugging the USB stick/whatever into B, you plug it 
into C and load it in.  Now what happens?

Does C:

 - Ignore it all?
 - Consume it but send it to B?
 - Somehow realize that the packets were bound for it anyway and 
 process them?
 - Something else?

Thanks again!

- John