summaryrefslogtreecommitdiff
path: root/source4
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2004-10-21 00:26:43 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:02:21 -0500
commit95ddbe5ad29df57b3d5ad5b9f5be95f6e194d0e0 (patch)
treef34d548f9423a753096b3f5be3c928fe794315bd /source4
parent98c8cb195aba1124bfbeb76ca09999346d77da57 (diff)
downloadsamba-95ddbe5ad29df57b3d5ad5b9f5be95f6e194d0e0.tar.gz
samba-95ddbe5ad29df57b3d5ad5b9f5be95f6e194d0e0.tar.bz2
samba-95ddbe5ad29df57b3d5ad5b9f5be95f6e194d0e0.zip
r3100: support 'bin/smbclient //w2k3-101/c$ -U \\administrator@w2k3.vmnet1.vm.base'
we need to send an empty string as userdomain in this case. fix bug #1317 in the client side metze (This used to be commit 958aa8de630b2a88f29ccdf80ac0fc44a8205401)
Diffstat (limited to 'source4')
-rw-r--r--source4/lib/cmdline/popt_common.c6
-rw-r--r--source4/lib/cmdline/popt_common.h3
2 files changed, 7 insertions, 2 deletions
diff --git a/source4/lib/cmdline/popt_common.c b/source4/lib/cmdline/popt_common.c
index 554b46a940..0cf57bb2e0 100644
--- a/source4/lib/cmdline/popt_common.c
+++ b/source4/lib/cmdline/popt_common.c
@@ -304,6 +304,7 @@ static void popt_common_credentials_callback(poptContext con,
if ((p = strchr_m(tmp,'\\'))) {
*p = 0;
pstrcpy(cmdline_auth_info.domain,tmp);
+ cmdline_auth_info.got_domain = True;
pstrcpy(cmdline_auth_info.username,p+1);
}
@@ -317,6 +318,7 @@ static void popt_common_credentials_callback(poptContext con,
if (getenv("DOMAIN")) {
pstrcpy(cmdline_auth_info.domain,getenv("DOMAIN"));
+ cmdline_auth_info.got_domain = True;
}
if (getenv("PASSWD")) {
@@ -344,6 +346,7 @@ static void popt_common_credentials_callback(poptContext con,
if ((p = strchr_m(tmp,'\\'))) {
*p = 0;
pstrcpy(cmdline_auth_info.domain,tmp);
+ cmdline_auth_info.got_domain = True;
pstrcpy(cmdline_auth_info.username,p+1);
}
@@ -431,12 +434,13 @@ const char *cmdline_get_username(void)
void cmdline_set_userdomain(const char *domain)
{
+ cmdline_auth_info.got_domain = True;
pstrcpy(cmdline_auth_info.domain, domain);
}
const char *cmdline_get_userdomain(void)
{
- if (cmdline_auth_info.domain[0]) {
+ if (cmdline_auth_info.got_domain) {
return cmdline_auth_info.domain;
}
diff --git a/source4/lib/cmdline/popt_common.h b/source4/lib/cmdline/popt_common.h
index bedf8f7f5d..06560d2be5 100644
--- a/source4/lib/cmdline/popt_common.h
+++ b/source4/lib/cmdline/popt_common.h
@@ -40,8 +40,9 @@ extern struct poptOption popt_common_credentials[];
struct cmdline_auth_info {
pstring username;
- pstring password;
pstring domain;
+ BOOL got_domain;
+ pstring password;
BOOL got_pass;
BOOL use_kerberos;
};