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.


Attachment: signature.asc
Description: OpenPGP digital signature

-- 
_______________________________________________
Initng mailing list
[email protected]
http://jw.dyndns.org/mailman/listinfo/initng

Reply via email to