[Pkg-samba-maint] Bug#593059: The locale setting affects Samba daemons.
Steve Langasek
vorlon at debian.org
Sun Aug 15 08:55:58 UTC 2010
tags 593059 moreinfo unreproducible
thanks
On Sun, Aug 15, 2010 at 05:42:21PM +0900, TAKAHASHI Motonobu wrote:
> Package: samba
> Version: 2:3.2.5-4lenny12
> Severity: minor
> If smbd starts under ja_JP.eucJP or such locales where PAM messages are i18n'ed,
> "pam password change =yes" will not work because it expects English
> PAM messages
> but i18n'ed PAM messages are replied.
Why are localized messages being sent when there is this code in
smbd/chgpasswd.c?:
#ifdef WITH_PAM
if (lp_pam_password_change()) {
bool ret;
#ifdef HAVE_SETLOCALE
const char *prevlocale = setlocale(LC_ALL, "C");
#endif
if (as_root)
become_root();
if (pass) {
ret = smb_pam_passchange(pass->pw_name, oldpass,
newpass);
} else {
ret = smb_pam_passchange(name, oldpass, newpass);
}
if (as_root)
unbecome_root();
#ifdef HAVE_SETLOCALE
setlocale(LC_ALL, prevlocale);
#endif
return ret;
}
#endif
Samba already includes code specifically to set the locale to C before
invoking PAM in order to avoid this issue. So where are these localized
messages coming from?
--
Steve Langasek Give me a lever long enough and a Free OS
Debian Developer to set it on, and I can move the world.
Ubuntu Developer http://www.debian.org/
slangasek at ubuntu.com vorlon at debian.org
More information about the Pkg-samba-maint
mailing list