David Bustos wrote: > Quoth Alan Maguire on Fri, Jan 25, 2008 at 07:27:10PM +0000: > >> David Bustos wrote: >> >>> Has this been discussed elsewhere? I would like to understand what you >>> require that we don't provide. >>> >> not really. but essentially what we're trying to do >> is cope with the fact that nwamd is not >> not a delegated restarter for SMF datalink and IP >> interface instances - because it is only one possible >> network "policy engine" that carries out networking >> configuration. what we need is a way for policy >> engines (such as nwamd) to detect instance refresh >> events (so that internal state can be updated to >> reflect the latest configuration changes), enable >> and disable events (so that, as well as the basic >> setup/teardown of the abstraction represented >> by the instance carried out by the start >> and stop methods, we can do any policy-engine >> specific work that might be required, such as >> switch profile). >> > > What if the delegated restarter interface allowed the restarter to take > control of services? So NWAM would take over the instances when it > started and give them up when it exited? > > to me, this sounds like the right approach. we've gone back and forth on the idea of making nwamd a delegated restarter, and were leaning towards letting networking services be managed by startd and controlled by nwamd. the more i think about this, that arrangement seems quite problematic, and obscures the relationship between these services.
we moved away from the idea of having nwamd be a delegated restarter for a few reasons if i recall, the most prominent was the issue of switching restarters. the more i think about that, it seems like it would be pretty easy to handle - i think nwamd's start method would just have to set the service-level restarter FMRI property for network/datalink and network/ip, and refresh the associated instances under network/datalink and network/ip. one consequence of this would be that network/physical:default would have to be changed from a transient service to a delegated restarter, but that makes sense too i think, since it will also control the datalink and IP instances. (i've cc'ed nwam-discuss too as there may be differing opinions on this). >>> This would probably work, but I'm doubtful that it's the right >>> architectural direction. Let's determine what's missing in the >>> delegation model and how expensive it would be to fill it in before we >>> go too far with this. >>> >> sounds good. what about enhancing librestart's >> restart_bind_handle() function with a flag specifying >> "listen only", so that the caller doesn't have to be the >> delegated restarter to register an eventhandler? >> > > But you still intend to control, just through the administrator's > interfaces rather than the restarter interfaces, right? I'd rather > augment the restarter interfaces than have your service use the > administrator's interfaces programmatically. Do you see what I mean? > > > i think so. thanks! alan