On Fri, Jun 22, 2012 at 2:41 AM, Paul Irofti wrote:
> Tested with the following program and everything seems to work. I've
> also sprinkled some extra printfs in the original diff and both cases
> are found and dealt with in the kernel.
Woot. In it goes!
On Wed, Jun 20, 2012 at 11:18:39PM -0700, Philip Guenther wrote:
> On Wed, Jun 20, 2012 at 4:26 AM, Paul Irofti wrote:
> > + SCARG(&bfa, cmd) = F_SETFL;
> > + SCARG(&bfa, arg) = (void *)O_NONBLOCK;
> > + error = sys_fcntl(p, &bfa, retval);
>
> That assu
On Wed, Jun 20, 2012 at 4:26 AM, Paul Irofti wrote:
> + SCARG(&bfa, cmd) = F_SETFL;
> + SCARG(&bfa, arg) = (void *)O_NONBLOCK;
> + error = sys_fcntl(p, &bfa, retval);
That assumes that a new socket can't have any of the
FCNTLFLAGS set on it, which _is_
On Tue, Jun 19, 2012 at 02:02:03PM -0700, Philip Guenther wrote:
> On Tue, Jun 19, 2012 at 1:26 AM, Paul Irofti wrote:
> > The newer glibc's, when creating a socket, add some higher bit flags to
> > the type argument that are used for debug, statistics, profiling
> > whatever. They are not useful
On Tue, Jun 19, 2012 at 1:26 AM, Paul Irofti wrote:
> The newer glibc's, when creating a socket, add some higher bit flags to
> the type argument that are used for debug, statistics, profiling
> whatever. They are not useful and implementation specific.
Aren't those SOCK_CLOEXEC and SOCK_NONBLOCK
The newer glibc's, when creating a socket, add some higher bit flags to
the type argument that are used for debug, statistics, profiling
whatever. They are not useful and implementation specific.
This is needed for DNS resolving, otherwise the nss library from glibc
will always fail to do the righ