On Thu, Mar 06, 2008 at 05:18:24PM -0500, James Carlson wrote: > I've read through this thread: > > http://opensolaris.org/jive/thread.jspa?threadID=47134&tstart=15 > > and I'm still quite confused about this issue. If there's some > consensus about which direction SMF is going, I'd like to know about > it. > > I'm currently working on an Ethernet bridging daemon for Solaris. > It's not part of NWAM, but it looks like the problems I'm facing are > somewhat similar. I'd like to try to make it conform to SMF as much > as possible. This means storing the configuration data in SMF, and > representing the instances using SMF instances. > > For symmetry with other networking tools and other administrative > interfaces, I'd like to be able to allow for "temporary" changes -- > ones that intentionally do not survive reboot. This means being able > to create bridge instances temporarily, add or remove links > temporarily, and so on. It seems like just good system administration > to be able to address the running configuration or the saved > configuration at will. > > This runs me directly into a problem: SMF doesn't allow for the > creation of temporary instances, so addressing only the running > configuration isn't possible. It looks like the acceptable solutions > are: > > - "mws mode" > > When the user specifies "-t", have the command line tool invoke > the daemon directly rather than creating a new instance and > enabling it (as we would ordinarily do). This causes a host of > design problems: > > . The user must have sufficient privilege to actually run the > daemon, where all he needed in the normal case was privilege > enough to create the instance and enable the service. We > lose the benefits of the privilege tie-in for regular SMF > services (svc.started?). > > . The code in the utility that handles "-t" will need to be at > least twice as complex. Instead of just knowing how to > manipulate the SMF bits, it'll also need to know how to > launch the daemon and feed it data that the daemon would > ordinarily get directly from libscf on its own. > > . The code in the daemon also needs to be more complex and > ad-hoc. Instead of reaching out to get the data from libscf > when needed, it has to "listen" (doors?) for someone else to > supply the data through some other channel or needs to fetch > it from stdin or command line arguments. > > I don't think I can solve those problems in any clean way. I > realize that it follows the "ifconfig versus /etc/hostname.*" > model, but it looks like a mess to me. > > ... > > I'm leaning towards the second solution (the work-around) or perhaps > the fourth (sorry, no temporaries), but I don't like either of them > much.
Is a bridge instance a separate instance of the daemon or one of a set of things that is managed by one daemon? (i.e. that could be represented by a property group rather than an instance) -Mike -- Mike Shapiro, Sun Microsystems Fishworks. blogs.sun.com/mws/