Bug 229102

Summary: /etc/profile.d/lang.* override pre-existing LANG settings
Product: [Fedora] Fedora Reporter: Chris Adams <linux>
Component: initscriptsAssignee: Bill Nottingham <notting>
Status: CLOSED RAWHIDE QA Contact: Brock Organ <borgan>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: rvokal
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: 8.50-1 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 692893 (view as bug list) Environment:
Last Closed: 2007-02-19 22:23:39 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 692893    

Description Chris Adams 2007-02-17 02:26:17 UTC
For a while now, the RHEL/FC OpenSSH packages have modified config settings to
pass locale variables between systems.  However, the unconditional sourcing of
/etc/sysconfig/i18n overrides this!  If a LANG is already set, it can be debated
if the user's ~/.i18n should be sourced, but the system file should not.

One reason that LANG from a remote system should not be changed is that LANG
encodes both a language and a character set.  I use en_US, but I am sometimes
logged in from a non-Linux system (Tru64 Unix) that doesn't support UTF-8, so I
use en_US.ISO8859-1.  There is no way for me to properly pass this right now
(having language and character set packed into one variable was probably not a
good idea to begin with; some things like man page caching don't really handle
it anyway, but oh well).

Comment 1 Bill Nottingham 2007-02-19 21:15:12 UTC
Do we send *all* LC_* variables?

Comment 2 Chris Adams 2007-02-19 21:19:28 UTC
/etc/ssh/ssh_config has:

SendEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES
SendEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT
SendEnv LC_IDENTIFICATION LC_ALL

/etc/ssh/sshd_config has:

AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES
AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT
AcceptEnv LC_IDENTIFICATION LC_ALL

Obviously, if they aren't set, they aren't sent, but I think that covers them
all (if not I guess it would be a bug in the RHEL/FC OpenSSH config).


Comment 3 Chris Adams 2007-02-19 21:21:07 UTC
Checking the OpenSSH RPM changelog, this was added about a year ago in bugzilla
179851.

Comment 4 Bill Nottingham 2007-02-19 22:23:39 UTC
Added in CVS, will be in 8.50-1. I suspect *something* will break.