The Samba-Bugzilla – Attachment 63 Details for
Bug 269
winbindd crashes on challenge/response password authentication for user with umlaut character(s)
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
fix character set conversion for winbindd_pam_auth_crap()
winbindd_pam.c-patch (text/plain), 2.79 KB, created by
Tim Potter
on 2003-08-05 18:04:42 UTC
(
hide
)
Description:
fix character set conversion for winbindd_pam_auth_crap()
Filename:
MIME Type:
Creator:
Tim Potter
Created:
2003-08-05 18:04:42 UTC
Size:
2.79 KB
patch
obsolete
>Index: nsswitch/winbindd_pam.c >=================================================================== >RCS file: /data/cvs/samba/source/nsswitch/winbindd_pam.c,v >retrieving revision 1.44.2.23 >diff -u -r1.44.2.23 winbindd_pam.c >--- nsswitch/winbindd_pam.c 31 Jul 2003 05:43:47 -0000 1.44.2.23 >+++ nsswitch/winbindd_pam.c 6 Aug 2003 00:59:28 -0000 >@@ -208,9 +208,7 @@ > NET_USER_INFO_3 info3; > struct cli_state *cli = NULL; > TALLOC_CTX *mem_ctx = NULL; >- char *user = NULL; >- const char *domain = NULL; >- const char *workstation; >+ const char *user, *domain, *workstation; > const char *contact_domain; > DOM_CRED ret_creds; > int attempts = 0; >@@ -226,27 +224,19 @@ > } > > /* Ensure null termination */ >- state->request.data.auth_crap.user[sizeof(state->request.data.auth_crap.user)-1]='\0'; >+ state->request.data.auth_crap.user[sizeof(state->request.data.auth_crap.user)-1] = 0; >+ state->request.data.auth_crap.domain[sizeof(state->request.data.auth_crap.domain)-1] = 0; > >- /* Ensure null termination */ >- state->request.data.auth_crap.domain[sizeof(state->request.data.auth_crap.domain)-1]='\0'; >+ if (!(mem_ctx = talloc_init("winbind pam auth crap for %s", state->request.data.auth_crap.user))) { >+ DEBUG(0, ("winbindd_pam_auth_crap: could not talloc_init()!\n")); >+ result = NT_STATUS_NO_MEMORY; >+ goto done; >+ } > >- if (!(mem_ctx = talloc_init("winbind pam auth crap for (utf8) %s", state->request.data.auth_crap.user))) { >- DEBUG(0, ("winbindd_pam_auth_crap: could not talloc_init()!\n")); >- result = NT_STATUS_NO_MEMORY; >- goto done; >- } >- >- if (pull_utf8_talloc(mem_ctx, &user, state->request.data.auth_crap.user) == (size_t)-1) { >- DEBUG(0, ("winbindd_pam_auth_crap: pull_utf8_talloc failed!\n")); >- } >+ user = state->request.data.auth_crap.user; > > if (*state->request.data.auth_crap.domain) { >- char *dom = NULL; >- if (pull_utf8_talloc(mem_ctx, &dom, state->request.data.auth_crap.domain) == (size_t)-1) { >- DEBUG(0, ("winbindd_pam_auth_crap: pull_utf8_talloc failed!\n")); >- } >- domain = dom; >+ domain = state->request.data.auth_crap.domain; > } else if (lp_winbind_use_default_domain()) { > domain = lp_workgroup(); > } else { >@@ -264,15 +254,10 @@ > goto done; > } > >- if (*state->request.data.auth_crap.workstation) { >- char *wrk = NULL; >- if (pull_utf8_talloc(mem_ctx, &wrk, state->request.data.auth_crap.workstation) == (size_t)-1) { >- DEBUG(0, ("winbindd_pam_auth_crap: pull_utf8_talloc failed!\n")); >- } >- workstation = wrk; >- } else { >+ if (*state->request.data.auth_crap.workstation) >+ workstation = state->request.data.auth_crap.workstation; >+ else > workstation = global_myname(); >- } > > if (state->request.data.auth_crap.lm_resp_len > sizeof(state->request.data.auth_crap.lm_resp) > || state->request.data.auth_crap.nt_resp_len > sizeof(state->request.data.auth_crap.nt_resp)) {
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 269
: 63