From e4b6f641e8590b385672e12f4a2829c69e2d33aa Mon Sep 17 00:00:00 2001 From: Andrew Bartlett Date: Tue, 10 Jul 2001 17:02:02 +0000 Subject: This fixes security=domain, which has been broke since the big charset changeover. For my own sainity I have created a new function to fill out both the header and buffer for a string in an RPC struct. This DOES NOT take a length argument, only the actual string to be placed. The RPC code is currently littered with code that does init_uni_hdr() followed immidiatly by init_unistr2(), and often the length argument is wrong. (It was for the code I changed, even before the charset stuff). Another bug where we made strings AT LEAST MAX_UNICODE_LEN long hid this bug. This works for loopback connections to Samba, and can't be any more broke than it was before :-). (We had double and revese conversions, fun...). In particular this makes us multibyte complient. In any case, if there are no objections I will slowly convert other bits of code to the same system. (This used to be commit cf1d1cd9d6362f6e32ed9c2f6d2f6f25c47705ad) --- source3/rpc_client/cli_login.c | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) (limited to 'source3/rpc_client') diff --git a/source3/rpc_client/cli_login.c b/source3/rpc_client/cli_login.c index f46aa7b08f..3ac4762628 100644 --- a/source3/rpc_client/cli_login.c +++ b/source3/rpc_client/cli_login.c @@ -160,20 +160,13 @@ BOOL cli_nt_login_network(struct cli_state *cli, char *domain, char *username, char *lm_chal_resp, char *nt_chal_resp, NET_ID_INFO_CTR *ctr, NET_USER_INFO_3 *user_info3) { - fstring dos_wksta_name, dos_username, dos_domain; DEBUG(5,("cli_nt_login_network: %d\n", __LINE__)); /* indicate a "network" login */ ctr->switch_value = NET_LOGON_TYPE; - clistr_pull(cli, dos_wksta_name, cli->clnt_name_slash, sizeof(dos_wksta_name), 0, STR_TERMINATE); - - clistr_pull(cli, dos_username, username, sizeof(dos_username), 0, STR_TERMINATE); - - clistr_pull(cli, dos_domain, username, sizeof(dos_domain), 0, STR_TERMINATE); - /* Create the structure needed for SAM logon. */ - init_id_info2(&ctr->auth.id2, dos_domain, 0, smb_userid_low, 0, - dos_username, dos_wksta_name, + init_id_info2(&ctr->auth.id2, domain, 0, smb_userid_low, 0, + username, cli->clnt_name_slash, (uchar *)lm_chal, (uchar *)lm_chal_resp, (uchar *)nt_chal_resp); -- cgit