Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20191027042645.GX16318@brightrain.aerifal.cx>
Date: Sun, 27 Oct 2019 00:26:45 -0400
From: Rich Felker <dalias@...c.org>
To: musl@...ts.openwall.com
Subject: Re: [PATCH] remaining steps for time64 switchover

On Sun, Oct 20, 2019 at 10:46:43PM -0400, Rich Felker wrote:
> demonstrably working). The one omission I'm aware of is what to do
> with struct utmpx, which is not actually used at present in any libc
> interfaces and thus not part of the ABI surface of libc. That will be
> addressed in a separate thread.

Or here. So, the story on utmpx: we can either

1. match the current size on 32-bit archs, but move the timeval to
   unused space at the end where a time64 version fits, or

2. match the current size and layout of the 64-bit struct, making it
   possible to share records between 32- and 64-bit processes on the
   same machine.

Keep in mind that this struct is not used anywhere in libc presently,
but normally it's used as a format for on-disk records.

I'm kinda leaning towards option 2, but being that I don't use (and
hate) utmp, I'd rather hear opinions from people who do use it. Either
way time fields in existing data will break, so it's a question of
whether that one-time breakage is already sufficient to go a bit
further and get 32/64 compat afterwards.

Rich

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.