summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source4/auth/auth.h7
-rw-r--r--source4/auth/auth_util.c12
2 files changed, 14 insertions, 5 deletions
diff --git a/source4/auth/auth.h b/source4/auth/auth.h
index 1ac0b82e17..d1f8caa2a0 100644
--- a/source4/auth/auth.h
+++ b/source4/auth/auth.h
@@ -36,11 +36,16 @@
/* version 4 - subsequent samba4 version - metze */
#define AUTH_INTERFACE_VERSION 4
+#define USER_INFO_CASE_INSENSITIVE_USERNAME 0x01 /* username may be in any case */
+#define USER_INFO_CASE_INSENSITIVE_PASSWORD 0x02 /* password may be in any case */
+#define USER_INFO_DONT_CHECK_UNIX_ACCOUNT 0x04 /* dont check unix account status */
+
struct auth_usersupplied_info
{
const char *account_name;
const char *domain_name;
const char *workstation_name;
+ const char *remote_host;
/* the values the client gives us */
struct {
@@ -55,6 +60,8 @@ struct auth_usersupplied_info
DATA_BLOB lm_interactive_password;
DATA_BLOB nt_interactive_password;
DATA_BLOB plaintext_password;
+
+ uint32_t flags;
};
struct auth_serversupplied_info
diff --git a/source4/auth/auth_util.c b/source4/auth/auth_util.c
index ebd0b74227..8d5a95cee8 100644
--- a/source4/auth/auth_util.c
+++ b/source4/auth/auth_util.c
@@ -40,15 +40,16 @@ NTSTATUS auth_get_challenge_not_implemented(struct auth_method_context *ctx, TAL
/****************************************************************************
Create an auth_usersupplied_data structure
****************************************************************************/
-static NTSTATUS make_user_info(TALLOC_CTX *mem_ctx,
+NTSTATUS make_user_info(TALLOC_CTX *mem_ctx,
const char *c_account_name,
const char *account_name,
const char *c_domain_name,
const char *domain_name,
const char *workstation_name,
+ const char *remote_host,
DATA_BLOB *lm_password, DATA_BLOB *nt_password,
DATA_BLOB *lm_interactive_password, DATA_BLOB *nt_interactive_password,
- DATA_BLOB *plaintext_password, BOOL encrypted,
+ DATA_BLOB *plaintext_password, BOOL encrypted, uint32_t flags,
struct auth_usersupplied_info **_user_info)
{
struct auth_usersupplied_info *user_info;
@@ -177,9 +178,10 @@ NTSTATUS make_user_info_map(TALLOC_CTX *mem_ctx,
c_account_name, account_name,
c_domain_name, domain,
workstation_name,
+ workstation_name,
lm_password, nt_password,
lm_interactive_password, nt_interactive_password,
- plaintext, encrypted,
+ plaintext, encrypted, 0x00,
user_info);
}
@@ -280,9 +282,9 @@ NTSTATUS make_user_info_for_reply_enc(TALLOC_CTX *mem_ctx,
NTSTATUS make_user_info_anonymous(TALLOC_CTX *mem_ctx, struct auth_usersupplied_info **user_info)
{
return make_user_info(mem_ctx,
- "", "", "", "", "",
+ "", "", "", "", "", "",
NULL, NULL, NULL, NULL,
- NULL, True,
+ NULL, True, 0x00,
user_info);
}