Hello, As a followup to this, as promised I've made some tests against a few ssh servers (with diferent HW/OS specs) and it looks like there's plenty of room for environment variables.. This are my findings regarding maximun command line string which can be passed to ssh sucessfully.
- CentOS-6.x/x86-64 => 256k - CentOS-5.x/x86-64 => 128k - Debian-Wheezy/x86-64 => 128k - Old-Fedora/Sparc64 => 256k - Solaris 10/Sparc64 => 256k - Linux-dd-wrt/arm => 128k My tests where done my issuing the following command => ssh root@172.21.204.103 "DUMMY=$(perl -e 'print "a"x1024') ls", increasing the length of 'a' string until reaching the point at which the server would refuse to execute the command with: Argument list too long Nontheless, I am still keen on not exposing all proxmox's configuration settings (which looks a bit of a kludge) and only expose a selected subset as PMXVARs. Regards Pablo On Wed, Mar 19, 2014 at 10:42 AM, Pablo Ruiz <pablo.r...@gmail.com> wrote: > Hi, > > While using command line arguments may seem the obvious approach, in the > end this is a more fragile mechanism to pass data to helper script, as > backward/forward compatbility would be harder to achieve once new 'data' is > to be passed. > > Command line arguments need to respect ordering, or define strict argument > names which should be parsed by the helper by means of getopt or similar > method. However, environment is a bit more flexible, and we can add more > variables as needed, just as CGI, AGI, OCF, and other similar protocol do. > > Regarding the size limits of environment/ssh-full-command-string, I will > try to make a few test over various environments and get back to the list. > If notable restrictions are found, I can restrict the variables passed to > only those really needed.. instead of passing all config parameters. > On Mar 19, 2014 7:17 AM, "Daniel Hunsaker" <danhunsa...@gmail.com> wrote: > >> > Just curious - how long are the command lines this patch generates? >> >> Well, it looks like that depends on a number of things. The entire >> contents of %$scfg are added to the environment as PMXCFG_*, the full path >> to the ssh key is added to the environment as PMXVAR_SSHKEY (and then added >> again as an argument to ssh, if ssh is used), and depending on the command >> being issued, you either get PMXVAR_LUNDEV or PMXVAR_LUNUUID, set to the >> appropriate value. So potentially quite long - certainly longer than I >> expected on my first glance through the code. >> >
_______________________________________________ pve-devel mailing list pve-devel@pve.proxmox.com http://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel