standard_sub_basic
Luke Kenneth Casson Leighton
lkcl at samba.org
Wed Jan 12 21:22:05 GMT 2000
andrew,
regarding "getting things right" in 3.0: another one to your list.
standard_sub_basic() is called on lp_logon_path(), lp_profile_path() etc,
to subst \\%N\%U\profiles with the right info.
we *assumed* that the only place that profile info was going to be
obtained was after an SMBsesssetupX, IPC$, in smbd/ipc.c's
api_NetUserGetInfo() function, therefore %U is based on sesssetup_user
from lib/util.c.
right?
wrong.
rpc_server/srv_netlog.c gets connected to *anonymously*. sesssetup_user
gets set to "nobody", and every single user's profile is loaded from
\\server\nobody\profiles.
so, over eighteen months ago, i hacked it. this hack ONLY applies to the
username, as it was the most critical. i set a BOOL - sam_logon_in_ssb -
use SAM LOGON name in standard_sub_basic(), and i set samlogon_user to the
name of the user that i _really_ want to go in there.
it's a bad hack, but it works.
what we _really_ need is ALL the standard_sub_basic() parameters to be
replaced with appropriate ones.
to make this easier, i suggest using a structure which is passed to
standard_sub_basic().
or, alternatively, a list or array of subst-chars and a string to replace
the subst-char with.
the correct info can then be set up that standard_sub_basic() will
properly substitute, instead of at the moment using samlogon_user but, for
example, using "nobody"'s group on %g, or something stupid.
luke
<a href="mailto:lkcl at samba.org" > Luke Kenneth Casson Leighton </a>
<a href="http://www.cb1.com/~lkcl"> Samba and Network Development </a>
<a href="http://samba.org" > Samba Web site </a>
<a href="http://www.iss.net" > Internet Security Systems, Inc. </a>
<a href="http://mcp.com" > Macmillan Technical Publishing </a>
ISBN1578701503 DCE/RPC over SMB: Samba and Windows NT Domain Internals
More information about the samba-technical
mailing list