Red Hat Bugzilla – Bug 107567
rdist only passes 40 lines of environment to rsh
Last modified: 2015-03-04 20:12:54 EST
Description of problem:
rdist 6.1.5 imposes an arbitrary limit of 40 lines of environment which is
passed to rsh or its equivalent specified via -P. The URL contains a patch
(which appears to be about three years old) which fixes the problem.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. Create more than 40 lines of environment variables in a shell
2. Run "rdist -P $HOME/debug-ssh -c foobar remotehost" where "foobar" is some
file or directory and $HOME/debug-ssh is attached as a bash script.
3. Examine the log file "logfile" created by debug-ssh.
You will see that only 40 lines of environment variables are passed to the ssh
spawned by rdist.
All environment variables from the parent shell should be passed to rsh/ssh by
I spent three days tracking this one down. It prevents ssh-agent from working
properly with rdist, because if one's environment variable becomes longer than
40 values, the values created by `eval ssh-agent` may not get passed to ssh by
rdist. Thus a script which uses ssh-agent, ssh-add, and rdist will inexplicably
work sometimes and fail other times.
Created attachment 95315 [details]
Script which runs ssh
This script creates a "logfile" which contains the output of a "printenv"
command followed by the error output of "ssh -vvv".
If you would have looked at all open rdist bugs you could have saved these 3
days. ;-) Bug 85634 exactly describes the same problem and the latest rawhide
version of rdist has already a fix for it.
Read ya, Phil
An errata has been issued which should help the problem described in this bug report.
This report is therefore being closed with a resolution of ERRATA. For more information
on the solution and/or where to find the updated files, please follow the link below. You may reopen
this bug report if the solution does not work for you.