Comment 7 for bug 1652091

Revision history for this message
eviljoel (eviljoel-t) wrote :

The change that was made to address this bug does not work correctly. The version of busybox included in the Ubuntu initramfs doesn't include all the features of busybox included in the Debian initramfs. This lack of features is still causing the killing of dropbear's child processes to fail.

You can see the available options of busybox's 'ps' by executing it with an invalid option. On Ubuntu, you get the following:

(initramfs) /bin/busybox ps -h
ps: invalid option -- 'h'
BusyBox v1.27.2 (Ubuntu 1:1.27.2-2ubuntu3) multi-call binary.

Usage: ps

Show list of processes

        w Wide output
        l Long output

(initramfs)

If you run the same command on Debian, you get the following:

(initramfs) /bin/busybox ps -h
ps: invalid option -- 'h'
BusyBox v1.22.1 (Debian 1:1.22.0-19+b3) multi-call binary.

Usage: ps [-o COL1,COL2=HEADER] [-T]

Show list of processes

        -o COL1,COL2=HEADER Select columns for display
        -T Show threads

(initramfs)

It is the missing '-o' option that causes this issue.

I am reopening this bug instead of creating a new bug because scott28 previously pointed out these problems and already provided a more correct solution. I have included a patch based on his patch created against the current 'master' version of dropbear.

I don't think this can really be fixed upstream. The two versions of busybox ps are not compatable. The only reasonable fix I can see is to add Ubuntu specific code and I suspect the Debian maintainer will be unwilling to do that. Ubuntu should probably apply this patch before creating their build.