Bug 314431 - keychain.sh not ksh compatible
keychain.sh not ksh compatible
Product: Fedora
Classification: Fedora
Component: keychain (Show other bugs)
All Linux
low Severity low
: ---
: ---
Assigned To: Alexander Dalloz
Fedora Extras Quality Assurance
: 485725 (view as bug list)
Depends On:
  Show dependency treegraph
Reported: 2007-10-01 14:32 EDT by Daniel Qarras
Modified: 2009-04-14 12:23 EDT (History)
2 users (show)

See Also:
Fixed In Version: 2.6.8-6
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2009-04-13 16:48:39 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
proposed patch (390 bytes, patch)
2008-12-22 10:48 EST, Watanabe, Yuki
no flags Details | Diff
Drop zsh special case (489 bytes, patch)
2009-02-16 18:45 EST, Ville Skyttä
no flags Details | Diff

  None (edit)
Description Daniel Qarras 2007-10-01 14:32:59 EDT
/etc/profile.d/*.sh init scripts are sourced for all Bourne compatible shells
including bash, zsh, and ksh. However, /etc/profile.d/keychain.sh contains a
line that causes ksh-20070111-1 from Fedora 7 to puke at line 19 when a user is
logging in:

/etc/profile[49]: .: syntax error: `=' unexpected

I think keychain.sh should be fixed to be also ksh compatible.
Comment 1 Daniel Qarras 2007-12-29 11:13:08 EST
This issue seems to present also with Fedora 8.
Comment 2 Daniel Qarras 2008-10-04 04:57:15 EDT
This issue seems to present also with Fedora 10 Beta.
Comment 3 John Poelstra 2008-10-10 18:13:34 EDT
This bug has been triaged
Comment 4 Bug Zapper 2008-11-25 21:00:13 EST
This bug appears to have been reported against 'rawhide' during the Fedora 10 development cycle.
Changing version to '10'.

More information and reason for this action is here:
Comment 5 Watanabe, Yuki 2008-12-22 10:48:59 EST
Created attachment 327665 [details]
proposed patch

The problem is that the parameter expansions ${=KCHOPTS} ${=SSHKEYS} ${=GPGKEYS}
are only executed by zsh but parsed by all shells.
I'm using the eval command to make the expansions to be parsed only when
they are executed.
Comment 6 Daniel Qarras 2008-12-22 17:16:08 EST
Thanks for the patch, I'm happy to confirm that it fixes the issue.
Comment 7 Ville Skyttä 2009-02-16 18:29:29 EST
*** Bug 485725 has been marked as a duplicate of this bug. ***
Comment 8 Ville Skyttä 2009-02-16 18:45:12 EST
Created attachment 332154 [details]
Drop zsh special case

Hmm... with zsh >= 4.3.4-7 sourcing profile.d snippets in ksh emulation mode, is the zsh special case in /etc/profile.d/keychain.sh needed any more at all?  Wouldn't this patch work for both ksh and zsh?
Comment 9 Daniel Qarras 2009-04-03 11:10:47 EDT
There has been discussion that zsh should emulate sh instead of ksh:


IMVHO it would be safer to keep keychain.sh as-is: the code may look a bit cleaner and be slightly more optimal but given the potential risk of keychain.sh breaking as a side effect of other changes it seems best to leave this intact.

Comment 10 Ville Skyttä 2009-04-13 16:48:39 EDT
The change proposed in comment 8 was already applied in keychain 2.6.8-6 (F-11+ at the moment) some 6 weeks ago.  If actual problems arise out of it, please open a new keychain/zsh specific bug for it (this one's against keychain.sh not working with ksh).
Comment 11 Daniel Qarras 2009-04-14 12:23:31 EDT
Ah, ok, I was probably asleep when I made my previous commment, the current keychain.sh from Rawhide looks perfect to me. Thanks!

Note You need to log in before you can comment on or make changes to this bug.