The Problem =========== I really liked the idea of sfiles, but events simply screws up all.
I mean, we don't have a way to handle events on sfiles, and all the current functionality can be represented as events... What should we do about this? Implementation ============== First, we need to define a protocol for external events. This will be the only interface available to any process outside of initng. So that means it will be used by everything, even by ngc. I think it should be really simple. So it should be defined as something like: char **extern_event; In which each item has the form "name=val". Transmission ============ The array can be passed to event subscribers as env[]. It also can be transmitted to/from initng as plain text, one item per line. So we could have something like: event=start service=daemon/agetty or event=mount device=/dev/sda3 dir=/tmp Internal/External event translation =================================== External events may produce internal events, and vice versa. Event translation will be handled by functions registered in the event_type. To avoid loops, a "origin" flag should be placed in s_event, to mark it as internal/external.
signature.asc
Description: OpenPGP digital signature
-- _______________________________________________ Initng mailing list [email protected] http://jw.dyndns.org/mailman/listinfo/initng
