Hi Mike,

thanks for the reviews!

2016-03-17 18:23 GMT+01:00 Mike Frysinger <vap...@gentoo.org>:
> On 17 Mar 2016 15:52, Bartosz Golaszewski wrote:
>> +static void mount_procfs(const char *target)
>> +{
>> +     int status;
>> +
>> +     status = mount("none", target, NULL, MS_PRIVATE | MS_REC, NULL);
>> +     if (status < 0)
>> +             goto mount_err;
>> +
>> +     status = mount("proc", target, "proc",
>> +                    MS_NOSUID | MS_NOEXEC | MS_NODEV, NULL);
>
> each of these mount calls could do with a comment explaining what/why.
> you & i might understand how /proc needs to be made private & then
> freshly mounted in a new pid ns, but not everyone :).
>

Done in v7.

>> +     if (status < 0)
>> +             goto mount_err;
>
> general style note ... seems like this could be written:
>         status = mount(...)
>         if (status == 0)
>                 status = mount(...)
>         if (status < 0)
>                 bb_perror_msg_and_die(...)
>
> might be smaller code wise ?
>

Changed in v7.

>> +     run_shell(getenv("SHELL"), 0, NULL, NULL);
>
> if SHELL isn't set, then we just segfault ?

Nope, run_shell() checks if const char *shell is NULL or an empty
string and runs DEFAULT_SHELL in that case.

Tested on my regular Debian system:

bash$ ./busybox unshare
bash$
bash$ SHELL="" ./busybox unshare
sh-4.3$

-- 
Best regards,
Bartosz Golaszewski
_______________________________________________
busybox mailing list
busybox@busybox.net
http://lists.busybox.net/mailman/listinfo/busybox

Reply via email to