Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 10 Sep 2023 20:26:24 +0000
From:      bugzilla-noreply@freebsd.org
To:        standards@FreeBSD.org
Subject:   [Bug 273711] off64_t abuse in <stdio.h> for native API
Message-ID:  <bug-273711-99@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D273711

            Bug ID: 273711
           Summary: off64_t abuse in <stdio.h> for native API
           Product: Base System
           Version: CURRENT
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: standards
          Assignee: standards@FreeBSD.org
          Reporter: jbeich@FreeBSD.org
                CC: cem@freebsd.org

When upstreaming BSD support I'd like to disable off64_t for compatibility =
with
DragonFly, NetBSD, OpenBSD. Unfortunately, this no longer works:

  $ cat a.c
  #include <stdio.h>
  int main() {}

  $ cc -D_OFF64_T_DECLARED a.c
  In file included from a.c:1:
  /usr/include/stdio.h:420:44: error: unknown type name 'off64_t'
  typedef int cookie_seek_function_t(void *, off64_t *, int);
                                             ^
  1 error generated.

base 6710d21d9f7fc added off64_t alias to improve portability without
supporting the whole LFS64 API i.e., stat64, fseek64, etc. are still missin=
g.
However, base 9183be81a7999 introduced dependency on off64_t for
fopencookie(3). musl (Alpine, Chimera, KISS, Void, etc.) also supports[1]
fopencookie(3) and like BSDs has 64-bit off_t[2] but LFS64 API isn't expose=
d by
default[3].

[1] https://git.musl-libc.org/cgit/musl/commit/?id=3D061843340fbf
[2] https://git.musl-libc.org/cgit/musl/commit/?id=3D2dd8d5e1b8ba
[3] https://git.musl-libc.org/cgit/musl/commit/?id=3D25e6fee27f4a

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-273711-99>