pdsh mishandles command argument quoting

Bug #501427 reported by Mike Coleman
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
pdsh (Ubuntu)
New
Undecided
Unassigned

Bug Description

Binary package hint: pdsh

Description: Ubuntu 9.10
Release: 9.10

pdsh:
  Installed: 2.18-1
  Candidate: 2.18-1
  Version table:
 *** 2.18-1 0
        500 http://us.archive.ubuntu.com karmic/universe Packages
        100 /var/lib/dpkg/status

A command like

    $ pdsh -w myhost echo "1 2 3 |" "hostname"

should output something like

    myhost: 1 2 3 | hostname

In fact I get

    myhost: myhost

That is, 'hostname' is actually being invoked somehow. I'm not sure exactly what's going wrong, but basically it looks like pdsh is parsing and munging command arguments very strangely. Under some circumstances, this might end up doing something really horrible.

In general, I would have expected the output of "pdsh <pdsh-args> <command> <arg>..." to be about the same as "ssh <host> <command> <arg>...".

(A workaround of sorts is to place two layers of quotes around the command and its arguments.)

Revision history for this message
Mike Coleman (tutufan) wrote :

I looked a little at fixing this, but ended up deciding that it'd be better to just re-implement the parts of pdsh that I need as a bash script. I've just released this as 'ssssh', available here:

    http://code.google.com/p/ssssh/

I'd love it if someone would like to package this...

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.