Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Wed, 25 Jan 2017 20:40:23 +0100
From: Szabolcs Nagy <nsz@...t70.net>
To: musl@...ts.openwall.com, Andrei Vagin <avagin@...il.com>
Subject: Re: Re: Need to zero pads in msghdr

* Andrei Vagin <avagin@...il.com> [2017-01-25 10:56:22 -0800]:
> On Wed, Jan 25, 2017 at 8:42 AM, Andrei Vagin <avagin@...il.com> wrote:
> > In this patch
> > http://git.musl-libc.org/cgit/musl/commit/arch/x86_64/bits/socket.h?id=7168790763cdeb794df52be6e3b39fbb021c5a64
> > you suppose that the kernel ignores the upper 32 bits of msg_iovlen,
> > but it doesn't, so pads in msghdr structures have to be zeroed before
> > calling sendmsg and recvmsg syscalls.
> 
> Actually the problem is a bit different. In CRIU we use the msghdr
> structure from musl-libc, but in some cases we have to call raw system
> calls. We don't expect to have pads in structures and so we don't zero
> them.

why do you need a raw syscall?

(i think if you do raw syscalls you should use
your own linux syscall wrappers including typedefs
and macro defines, not libc ones, because the libc
can and does do all sorts of remapping of things to
workaround various mismatches between the posix
library api it provides and the linux syscall abi)

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.