Changing the passdb interface for allocated strings and unicode

Andrew Bartlett abartlet at
Tue Jan 1 15:53:02 GMT 2002

I'm looking into some changes to the passdb interface - I want firstly
to ditch the crazy pstrings we are carting around, and then I would like
to add a dual multibyte/ucs2 interface.

Basically my proposal is to make all the 'pdb_set_xyz()' functions
allocate their strings.  We know that the strings's are not illegally
modified because the pdb_get_xyz() functions all return a 'const'.

Once I get that bedded down I would like to change all the
'pdb_set_xyz()' functions to allocate both a multibyte string and a
unicode string.  This should allow us to more easily introduce unicode
to the rest of Samba - because it will be available at all places we use
the passdb interface.  I would add a matching 'pdb_get_xyz_w()'

I realise that _w interfaces (that is, having a dual mulitbyte and ucs2
interface) isn't highly desirable, I believe that this case is

Finally, and slightly unrelated, I hope to remove the PASSDB_OBJ
dependency from RPC_PARSE by reworking the arguments to
init_user_info_info3 and to remove the dependency of PASSDB_OBJ on the
RPC code by moving the copy_id21_to_sam_passwd() and
copy_id23_to_sam_passwd() code elsewhere (probably into the SAMR code
where its called).  

JF:  Have you had a chance to find me that bitfield definition for the
id21/id23 stuff?

In any case, I'll start looking at this stuff in the next few days but
any comments are most welcome.

Andrew Bartlett
Andrew Bartlett                                 abartlet at
Manager, Authentication Subsystems, Samba Team  abartlet at
Student Network Administrator, Hawker College   abartlet at

More information about the samba-technical mailing list