1
0
mirror of https://github.com/samba-team/samba.git synced 2025-11-20 08:23:50 +03:00

Fix use of AuthDataWithContext capability

During my initial plans for, and the subsequent discussion of a more
significant change to the API for libsmbclient, I had removed the
AuthDataWithContext usage, in favor of a more generalized planned interface.
When the API returned to its original state, I neglected to reinsert this
code.

Use of an authentication function with the context can be tested using

  examples/libsmbclient/testbrowse -C

Derrell
This commit is contained in:
Derrell Lipman
2008-03-17 11:34:25 -04:00
parent 065938ccb7
commit 38eab68dfb
2 changed files with 20 additions and 5 deletions

View File

@@ -101,15 +101,29 @@ SMBC_call_auth_fn(TALLOC_CTX *ctx,
fstring workgroup;
fstring username;
fstring password;
smbc_get_auth_data_with_context_fn auth_with_context_fn;
strlcpy(workgroup, *pp_workgroup, sizeof(workgroup));
strlcpy(username, *pp_username, sizeof(username));
strlcpy(password, *pp_password, sizeof(password));
smbc_getFunctionAuthData(context)(server, share,
workgroup, sizeof(workgroup),
username, sizeof(username),
password, sizeof(password));
/* See if there's an authentication with context function provided */
auth_with_context_fn = smbc_getFunctionAuthDataWithContext(context);
if (auth_with_context_fn)
{
(* auth_with_context_fn)(context,
server, share,
workgroup, sizeof(workgroup),
username, sizeof(username),
password, sizeof(password));
}
else
{
smbc_getFunctionAuthData(context)(server, share,
workgroup, sizeof(workgroup),
username, sizeof(username),
password, sizeof(password));
}
TALLOC_FREE(*pp_workgroup);
TALLOC_FREE(*pp_username);