Tue Nov 7 12:15:10 EST 2006
so.. a console. some synchronization is necessary, if only for
displaying the readline prompt. i was thinking about ascii only,
single line protocol. it should be something that's readable by any
program, or scanf.
ok, i'm tired of this shit:
- only ascii 32 - 127
- control char = newline : send line, receive line
using 'sanitize' and read-line this can be enforced. all binary data
needs to be quoted: the daemon's console code can be instructed to
process the output resulting from the interpretation of a command
line using arbitrary commands.
the result of this is that the basic protocols for communicating with PF are:
- strict line based console message channel using only ascii : all
non-ascii characters are set to spaces. this is mainly for apps that
don't speak PF. if binary data is needed, the pf quoted strings are
- text/binary native PF atom read/write channel to connect multiple PF
instances and load/save native PF data.
- raw packet streams: connect to anything that produces chunks of raw
data in a known format, i.e. raw video pipes.
got the readline part working too now. TODO:
- fork from pf (done)
- it's possible to crash pf with ": xxx 1 2 3"
- fix backtrace (+- done)
- unix pipes: remove file on close (done)
- pf_console build (done)
- de-threadification (+- done : leaving relics behind)
- sometimes 'p' doesnt print in new console.. (fixed)
- hotkey mode?