diff options
| author | Tobias Klauser <tklauser@distanz.ch> | 2018-06-25 09:20:14 +0200 |
|---|---|---|
| committer | Tobias Klauser <tobias.klauser@gmail.com> | 2018-08-20 08:01:43 +0000 |
| commit | 88aa208024f04845381a86f2d5679d2e520b1ff6 (patch) | |
| tree | bfd5160603ef90e923c373e93dbb86a41383d695 /src/syscall/types_linux.go | |
| parent | dc79206aec20b92388e7050d0359dccccd31ef0b (diff) | |
| download | go-88aa208024f04845381a86f2d5679d2e520b1ff6.tar.xz | |
syscall: use private copy of ustat_t on Linux
Port CL 120295 from golang.org/x/sys/unix to the syscall package.
The ustat syscall has been deprecated on Linux for a long time and the
upcoming glibc 2.28 will remove ustat.h and it can no longer be used to
to generate the Ustat_t wrapper type. Since Linux still provides the
syscall, let's not break this functionality and add a private copy of
struct ustat so Ustat_t can still be generated.
Fixes golang/go#25990
Change-Id: I0dab2ba1cc76fbd21553b499f9256fd9d59ca409
Reviewed-on: https://go-review.googlesource.com/120563
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
Diffstat (limited to 'src/syscall/types_linux.go')
| -rw-r--r-- | src/syscall/types_linux.go | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/syscall/types_linux.go b/src/syscall/types_linux.go index 3c4c2f2cfd..ccc5c54f0b 100644 --- a/src/syscall/types_linux.go +++ b/src/syscall/types_linux.go @@ -53,7 +53,6 @@ package syscall #include <termios.h> #include <time.h> #include <unistd.h> -#include <ustat.h> #include <utime.h> enum { @@ -124,6 +123,15 @@ struct my_epoll_event { int32_t pad; }; +// ustat is deprecated and glibc 2.28 removed ustat.h. Provide the type here for +// backwards compatibility. Copied from /usr/include/bits/ustat.h +struct ustat { + __daddr_t f_tfree; + __ino_t f_tinode; + char f_fname[6]; + char f_fpack[6]; +}; + */ import "C" |
