62 lines
2.4 KiB
Diff
62 lines
2.4 KiB
Diff
|
diff -urBbN --exclude-from=diff.excludes samba-3.0.20-orig/source/nsswitch/winbindd_dual.c samba-3.0.20-new/source/nsswitch/winbindd_dual.c
|
||
|
--- samba-3.0.20-orig/source/nsswitch/winbindd_dual.c 2005-08-19 12:16:27.000000000 -0500
|
||
|
+++ samba-3.0.20-new/source/nsswitch/winbindd_dual.c 2005-08-29 13:34:16.000000000 -0500
|
||
|
@@ -158,7 +158,6 @@
|
||
|
return;
|
||
|
}
|
||
|
|
||
|
- if (state->response->result == WINBINDD_OK)
|
||
|
SMB_ASSERT(cache_retrieve_response(child->pid,
|
||
|
state->response));
|
||
|
|
||
|
@@ -486,12 +485,11 @@
|
||
|
DEBUG(4,("child daemon request %d\n",
|
||
|
(int)state.request.cmd));
|
||
|
|
||
|
+ ZERO_STRUCT(state.response);
|
||
|
state.request.null_term = '\0';
|
||
|
child_process_request(child->domain, &state);
|
||
|
|
||
|
- if (state.response.result == WINBINDD_OK)
|
||
|
- cache_store_response(sys_getpid(),
|
||
|
- &state.response);
|
||
|
+ cache_store_response(sys_getpid(), &state.response);
|
||
|
|
||
|
SAFE_FREE(state.response.extra_data);
|
||
|
|
||
|
diff -urBbN --exclude-from=diff.excludes samba-3.0.20-orig/source/nsswitch/winbindd_user.c samba-3.0.20-new/source/nsswitch/winbindd_user.c
|
||
|
--- samba-3.0.20-orig/source/nsswitch/winbindd_user.c 2005-07-28 08:19:44.000000000 -0500
|
||
|
+++ samba-3.0.20-new/source/nsswitch/winbindd_user.c 2005-08-29 16:04:22.000000000 -0500
|
||
|
@@ -230,6 +230,7 @@
|
||
|
const char *shell,
|
||
|
uint32 group_rid)
|
||
|
{
|
||
|
+ fstring username;
|
||
|
struct getpwsid_state *s =
|
||
|
talloc_get_type_abort(private_data, struct getpwsid_state);
|
||
|
|
||
|
@@ -240,7 +241,9 @@
|
||
|
return;
|
||
|
}
|
||
|
|
||
|
- s->username = talloc_strdup(s->state->mem_ctx, acct_name);
|
||
|
+ fstrcpy( username, acct_name );
|
||
|
+ strlower_m( username );
|
||
|
+ s->username = talloc_strdup(s->state->mem_ctx, username);
|
||
|
s->fullname = talloc_strdup(s->state->mem_ctx, full_name);
|
||
|
s->homedir = talloc_strdup(s->state->mem_ctx, homedir);
|
||
|
s->shell = talloc_strdup(s->state->mem_ctx, shell);
|
||
|
diff -urBbN --exclude-from=diff.excludes samba-3.0.20-orig/source/nsswitch/winbindd_util.c samba-3.0.20-new/source/nsswitch/winbindd_util.c
|
||
|
--- samba-3.0.20-orig/source/nsswitch/winbindd_util.c 2005-07-28 08:19:44.000000000 -0500
|
||
|
+++ samba-3.0.20-new/source/nsswitch/winbindd_util.c 2005-08-29 13:34:16.000000000 -0500
|
||
|
@@ -444,7 +444,9 @@
|
||
|
state->request.data.init_conn.dcname
|
||
|
[sizeof(state->request.data.init_conn.dcname)-1]='\0';
|
||
|
|
||
|
+ if (strlen(state->request.data.init_conn.dcname) > 0) {
|
||
|
fstrcpy(domain->dcname, state->request.data.init_conn.dcname);
|
||
|
+ }
|
||
|
|
||
|
if (strlen(domain->dcname) > 0) {
|
||
|
if (!resolve_name(domain->dcname, &ipaddr, 0x20)) {
|