PATCH rpc server

Gerald Carter jerry at
Mon Jan 21 20:17:01 GMT 2002

On Tue, 22 Jan 2002, Martin Pool wrote:

> On 22 Jan 2002, Tim Potter <tpot at> wrote:
> > When the structure is unmarshalled and the pointer is zero, set the
> > struct foo *bar to NULL.  When marshalling, if struct foo *bar is NULL
> > then write out a zero pointer, else write out a one (or 0xdeadbeef
> > (-:).
> I agree with Tim about removing the ptr_ members, but not about
> marshalling them as 0xfeedb0b0.
> I wouldn't be surprised the NT unmarshalling code does actually
> implement the NDR spec for nonunique pointers: if the same opaque
> value is passed for two different pointers then they're meant to be
> combined into a pointer to the same object on the server, and the
> referent of the pointer is only marshalled once.

I don't think so.  See JF' useless_ptr in the SPOOLSS notify code

> So I think it would be equally easy and more reliable for us to send
> the bottom 32 bits of the local pointer value.
> If it's already been discovered not to do that then I will just blush
> and crawl back into my cube. ;-)

No discussion as far as I can remember.  Generally 0x0 or 0x1
works fine.  I've not run across a scenario where this does not work.
But then there are a lot of scenarios....

chau, jerry
 SAMBA Team                             
 "Sam's Teach Yourself Samba in 24 Hours" 2ed.      ISBN 0-672-32269-2
 --"I never saved anything for the swim back." Ethan Hawk in Gattaca--

More information about the samba-technical mailing list