[DGD] Re: yet another object manager question.. or two
Erwin Harte
harte at is-here.com
Sat Apr 10 00:33:30 CEST 2004
On Fri, Apr 09, 2004 at 05:56:10PM -0400, Michael McKiel wrote:
[...]
> I think it would be fairly easy to 'hardcode' the defaults safely, if such
> was needed, but there are no dependancies, the files compiled pre-objectd
> are:
> FILE Dependancy/Inherits
> auto none
> driver none
> objregd none
> rsrcd none
> initd none
> objectd none
You seem to be overlooking the indirect dependencies. This is the
list I use for my object-db:
DRIVER, AUTO,
OBJREGD, RSRCD, RSRCOBJ, ACCESSD, USERD, SYS_INITD, LIB_USER,
API_ACCESS, API_USER, API_RSRC, API_OBJREG, SYS_OBJECT, LIB_CONN,
LIB_WIZTOOL,
DEFAULT_WIZTOOL,
TELNET_CONN, BINARY_CONN,
DEFAULT_USER,
SYS_OBJECTD
All #defines taken from the relevant /include/kernel/*.h files.
And this is the inherit information I'd use if I ever have to
cold-start again:
private string *
preloaded_inherits(string str)
{
switch (str) {
case DRIVER:
case AUTO:
return ({ });
case OBJREGD:
case RSRCD:
case RSRCOBJ:
case ACCESSD:
case USERD:
case SYS_INITD:
case LIB_USER:
case API_ACCESS:
case API_USER:
case API_RSRC:
case API_OBJREG:
case SYS_OBJECT:
case LIB_CONN:
return ({ AUTO });
case LIB_WIZTOOL:
return ({ API_ACCESS, API_USER, API_RSRC });
case DEFAULT_WIZTOOL:
return ({ LIB_WIZTOOL });
case TELNET_CONN:
case BINARY_CONN:
return ({ LIB_CONN });
case DEFAULT_USER:
return ({ API_ACCESS, API_USER, LIB_USER });
case SYS_OBJECTD:
return ({ API_RSRC, API_OBJREG });
default:
error("Internal error, missing preloaded_inherits() entry");
}
}
It's not difficult, but you don't want to miss any files, no. :-)
Cheers,
Erwin.
--
Erwin Harte <harte at is-here.com>
_________________________________________________________________
List config page: http://list.imaginary.com/mailman/listinfo/dgd
More information about the DGD
mailing list