[...]
> > but I didn't see where it mentions adding the
> > sizes of envp and argv.
> The manpage is also in Debian, manpages-dev, and mentions it.

OK. It's good to see that the sum is mentioned
somewhere.

[...]
> $ strace -f sh ./bug.1.sh 2>&1 |grep exec |tail -1
> [pid 24558] execve("/bin/egrep", ["egrep", " is now known as | has
> joined "], [/* 26 vars */]) = -1 E2BIG (Argument list too long)

Very good.

[...]
> It doesn't make sense to fix it in bash only,
> since really every application using exec()
> would also need to be fixed (see strerror).

I agree.

[...]
> You can reassign it if you like,

OK

> but I would argue that existing documentation is
> sufficient.

This is where I must disagree.

The error message complains about "arguments", but
the problem is with the "environment". It
inevitably misleads users, especially new users.

It seems to me that 

    1.) execve() should return a more precise
    error message that mentions the "environment",
    and

    2.) "Additional error numbers may be defined
    on conforming systems; see the System
    Interfaces volume of IEEE Std 1003.1-2001."
    (See file:///usr/share/doc/susv3/susv3/basedefs/errno.h.html#tag_13_10)

Having said that, thank you for your time and
attention.

All the best,
Kingsley



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to