Hide Forgot
+++ This bug was initially created as a clone of Bug #671003 +++ Here's the content of the csh profile /etc/profile.d/cvs.csh: # change default from rsh to ssh for cvs command setenv CVS_RSH "${CVS_RSH-ssh}" This is not valid tcsh syntax. This kind of variable substitution is only valid in POSIX shells. Right now, this bug does not result in an error when starting tcsh, but only because current tcsh versions ignore that line for the simple reason that it's missing a newline. However, the upcoming tcsh 6.18.00 will NOT ignore that last line anymore and a syntax error will occur. The correct syntax for csh and tcsh is if ( "$?CVS_RSH" == 0 ) setenv CVS_RSH ssh I hope this can be fixed soon. And, please add a newline since otherwise the line will never be executed with the current tcsh 6.17.00.
Created attachment 474480 [details] /etc/profile.d/cvs.csh Please note the command must terminate with new line, otherwise the line is not interpreted by tcsh (see bug #671003 for more details).
*** Bug 684785 has been marked as a duplicate of this bug. ***
This request was evaluated by Red Hat Product Management for inclusion in the current release of Red Hat Enterprise Linux. Because the affected component is not scheduled to be updated in the current release, Red Hat is unfortunately unable to address this request at this time. Red Hat invites you to ask your support representative to propose this request, if appropriate and relevant, in the next release of Red Hat Enterprise Linux. If you would like it considered as an exception in the current release, please ask your support representative.
This bug exhibits with current cvs-1.11.23-12.el6.x86_64 and tcsh-6.17-13.el6.x86_64.
*** Bug 757090 has been marked as a duplicate of this bug. ***
Technical note added. If any revisions are required, please edit the "Technical Notes" field accordingly. All revisions will be proofread by the Engineering Content Services team. New Contents: Cause User having tcsh login shell connects to CVS remote server. Consequence CVS client uses rsh instead of SSH to reach server becuase CVS_RSH environment is not set. If the server has disabled rsh, then the connection cannot be established. If the rsh is enabled, then sensitive data can leak because rsh is not encrypted. Fix /etc/profile.d/cvs.csh has been adjusted to use valid csh syntax to set CVS_RSH environment variable properly at log-in. Result The CVS client will use SSH transport by default even if user's login shell is tcsh.
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. http://rhn.redhat.com/errata/RHBA-2012-1302.html