TNG 0.7 - can't join domain

Patrick J. LoPresti patl at
Tue Feb 29 20:15:42 GMT 2000

"Sander Striker" <s.striker at> writes:

> For now, and for me personally, this is a good fix. Make sure to
> keep it all symmetric though. It's very easy to forget an
> unbecome_root() :-)

How about making an "AS_ROOT" macro which you could use like this:

    stuff ();

I am envisioning something like this:

  #define AS_ROOT  for (int _i = 1 ; become_root(_i) ; _i = 0)

(Where become_root() takes an argument for whether to "become" or
"unbecome", and it returns its argument.)

The only problem with this macro is that it uses a C++-ism.  If you
need straight C, you could define two macros which you would use like


  #define BECOME_ROOT  { become_root();
  #define UNBECOME_ROOT  unbecome_root(); }

This is no easier to use than the current scheme, but it will give a
compile-time error (unbalanced curlies) if you screw up.

Just a thought.

 - Pat

More information about the samba-technical mailing list