Bug 849609

Summary: perl-homedir.csh causes login error for users with CSH as default shell
Product: [Fedora] Fedora Reporter: Petr Pisar <ppisar>
Component: perl-local-libAssignee: Petr Pisar <ppisar>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: 17CC: fdanapfe, iarnell, mmaslano, perl-devel, ppisar
Target Milestone: ---Keywords: Patch
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: perl-local-lib-1.008004-10.fc19 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 849094 Environment:
Last Closed: 2012-08-28 23:26:55 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Petr Pisar 2012-08-20 10:40:31 UTC
+++ This bug was initially created as a clone of Bug #849094 +++

Description of problem:
If the package "perl-homedir" is installed users that use CSH as their default login shell get an error "if: Expression Syntax." during login. Removing /etc/profile.d/perl-homedir.csh fixes the issue.


Version-Release number of selected component (if applicable):
perl-homedir-1.008004-4

How reproducible:
always

Steps to Reproduce:
1. adduser -s /usr/bin/csh cshtest
2. yum install perl-homedir 
3. su - cshtest
  
Actual results:
[root]# su - cshtest
if: Expression Syntax.
[cshtest]$

Expected results:
The error "if: Expression Syntax." should not be displayed

--- Additional comment from ppisar on 2012-08-20 09:02:10 GMT ---

Thank you for the report. The file is not in CSH syntax.

--- Additional comment from ppisar on 2012-08-20 09:16:33 GMT ---

Even fixing the profile script does not help because CSH replaces end-of-lines in command substitution output making the eval statement not working:

# su -l -s /bin/tcsh test
setenv: Too many arguments.
$ 
$ perl -Mlocal::lib
setenv PERL_LOCAL_LIB_ROOT "/home/test/perl5"
setenv PERL_MB_OPT "--install_base /home/test/perl5"
setenv PERL_MM_OPT "INSTALL_BASE=/home/test/perl5"
setenv PERL5LIB "/home/test/perl5/lib/perl5/x86_64-linux-thread-multi:/home/test/perl5/lib/perl5"
setenv PATH "/home/test/perl5/bin:$PATH"
$ eval `perl -Mlocal::lib`
setenv: Too many arguments.

This is tracked by upstream bug <https://rt.cpan.org/Public/Bug/Display.html?id=60072>.

--- Additional comment from ppisar on 2012-08-20 10:37:29 GMT ---

Created attachment 605657 [details]
Enable eval in CSH

--- Additional comment from ppisar on 2012-08-20 10:38:05 GMT ---

Created attachment 605658 [details]
Fixed CSH profile script

Comment 1 Petr Pisar 2012-08-20 10:45:03 UTC
All Fedoras are affected.

Comment 2 Fedora Update System 2012-08-20 10:59:21 UTC
perl-local-lib-1.008004-10.fc18 has been submitted as an update for Fedora 18.
https://admin.fedoraproject.org/updates/perl-local-lib-1.008004-10.fc18

Comment 3 Fedora Update System 2012-08-20 10:59:49 UTC
perl-local-lib-1.008004-5.fc17 has been submitted as an update for Fedora 17.
https://admin.fedoraproject.org/updates/perl-local-lib-1.008004-5.fc17

Comment 4 Fedora Update System 2012-08-20 11:00:10 UTC
perl-local-lib-1.008004-5.fc16 has been submitted as an update for Fedora 16.
https://admin.fedoraproject.org/updates/perl-local-lib-1.008004-5.fc16

Comment 5 Fedora Update System 2012-08-20 19:48:57 UTC
Package perl-local-lib-1.008004-10.fc18:
* should fix your issue,
* was pushed to the Fedora 18 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing perl-local-lib-1.008004-10.fc18'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2012-12291/perl-local-lib-1.008004-10.fc18
then log in and leave karma (feedback).

Comment 6 Fedora Update System 2012-08-28 23:26:55 UTC
perl-local-lib-1.008004-5.fc17 has been pushed to the Fedora 17 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 7 Fedora Update System 2012-08-28 23:29:49 UTC
perl-local-lib-1.008004-5.fc16 has been pushed to the Fedora 16 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 8 Fedora Update System 2012-09-17 23:19:44 UTC
perl-local-lib-1.008004-10.fc18 has been pushed to the Fedora 18 stable repository.  If problems still persist, please make note of it in this bug report.