On Mon, Apr 30, 2001 at 07:05:43PM -0500, Brandon wrote: > Yes, but I already have such an e-mail client, which is why I'm asking how > this is useful.
firstly, your email client is just one example, not everyone might wish to use it (some might desire a think-cash based solution), and email is just one example. Another would be a client which supported submission to an in-freenet key index. Conventionally, such a client couldn't terminate before it had found the end of the stack which might take several minutes - this would be intolerable to many users and thus this kind of solution would be essential. > But the index API doesn't necessarily need to be non-blocking as the > Python e-mail daemon could be run in the background and connected to by a > short-lived client. Wouldn't it be better to have just one daemon, which runs as part of the node, rather than creating a new daemon for every service you want to offer? > In the case of an e-mail daemon, this approach doesn't make all that much > sense. If you were going to send e-mail via a short-lived program such as > a command line client then it would be good to get rid of the daemon and > just have the client and the node. However, the preferred way to send > e-mail is via an SMTP daemon so that it can integrate with current mail > readers. This must run as a daemon anyway because you don't want to have > to start it up every time you want to send e-mail. Since it's running as a > daemon you don't gain anything with this new API. Personally I think that email over Freenet without an anti-flooding mechanism such as think cash, is extremly risky. We have already seen submission mechanisms being flooded (see Snarfoo), and this situation would only get worse. As far as I can see, it would be difficult to write a think cash client which used smtp. > So basically this proposal is useful when you *don't* want to run a > daemon, and e-mail is a bad example since you do. So can you give an > example of an application for which you wouldn't run a daemon but would > use this functionality?
