Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20160401131712.GV9862@port70.net>
Date: Fri, 1 Apr 2016 15:17:12 +0200
From: Szabolcs Nagy <nsz@...t70.net>
To: musl@...ts.openwall.com
Subject: Re: recvmsg/sendmsg broken on mips64

* Sebastian Gottschall <s.gottschall@...wrt.com> [2016-04-01 14:42:36 +0200]:
> it only affects mips64 so far. not x64. i checked both using dd-wrt

the types *must* be the same on the source level
on *all* targets as specified by posix, the linux
syscall abi is irrelevant, that is not visible
to userspace code which is written for the c
language level api, if you change the types
it is not possible to write portable c code.

> >(well, of course it may fail if the test code declares the structs
> >independently, but then the test *is* broken whether the definition is
> >standard-conformant or not.)
> with mips64 (octeon) the whole netlink code in iproute2 doesnt work. it
> simly fails since recvmsg returns no data. sendmsg is likelly broken in the

your fix does not explain that unless there is
a >4G message somewhere which i think is not
supported on the kernel side either.

please send a proper bug report about what
breaks, it sounds like the padding is at
the wrong place. changing int,int to size_t
should make no difference for iproute2.

> same way since it uses the same struct
> my dirty musl hack again fixed it by using the same datatypes used in the
> kernel. so this might be mips specific.
> currently musl does convert the non conform kernel structures to posix
> specified structures, but this doesnt seem to work for mips64
> >
we should figure out why it does not work
instead of breaking portability.

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.