[DGD]Default Wiztool not loaded ?

Erwin Harte harte at xs4all.nl
Fri Feb 16 19:11:59 CET 2001


On Fri, Feb 16, 2001 at 12:55:52PM -0500, Michel Racicot wrote:
> Hi there!
> 
>   I got this error when loging in from my new telnet manager :
> 
> (I use a copy of the default user.c)
> 
> Feb 16 12:36:58 ** Access denied
> 
> Here is the call stack :
> 
>   46 receive_message   /kernel/obj/telnet (#23)
>  224 receive_message   /kernel/lib/connection (/kernel/obj/telnet#23)
>   91 login             /usr/System/obj/user (#24)
>  384 clone_object      /kernel/lib/auto (/usr/System/obj/user#24)
> 
>   The clone_object has as parameter DEFAULT_WIZTOOL ... and Access denied is
> supposed to be returned from clone_object when the parameter doesn't
> exist...

No, it triggers this error because you're trying to clone a /kernel/
object, only code in /kernel/ itself can do that.  This has nothing to
do with the master-object not existing yet.

Relevant bit of code from /kernel/lib/auto.c:

    if ((sscanf(path, "/kernel/%*s") != 0 && !KERNEL()) ||
        (creator != "System" &&
         !::find_object(ACCESSD)->access(oname, path, READ_ACCESS))) {
        /*
         * kernel objects can only be cloned by kernel objects, and cloning
         * in general requires read access
         */
>>>     error("Access denied");
    }

If you had looked at  the actual code in /kernel/lib/auto.c and read
the comment that is there, surely you wouldn't come to the same
conclusion as I just did.  Yes, that's a hint.

What you need to do is make your own wiztool, a good start is probably
to copy /kernel/obj/wiztool.c to ~System/obj/wiztool.c and make sure
your user.c clones that instead.

Regards,

Erwin.
-- 
Erwin Harte         :    `Don't mind Erwin, he gets crabby. :)'
harte at xs4all.nl     :       -- Par Winzell <zell at skotos.net>

List config page:  http://list.imaginary.com/mailman/listinfo/dgd



More information about the DGD mailing list