Use shmid64_ds and ipc64_perm on Linux

This commit is contained in:
Dustin Spicuzza
2021-07-02 11:45:39 -04:00
parent 28eb814e39
commit 27e6ecf0b8
15 changed files with 108 additions and 99 deletions

View File

@@ -35,14 +35,12 @@ package unix
#include <sys/epoll.h>
#include <sys/inotify.h>
#include <sys/ioctl.h>
#include <sys/ipc.h>
#include <sys/mman.h>
#include <sys/mount.h>
#include <sys/param.h>
#include <sys/ptrace.h>
#include <sys/resource.h>
#include <sys/select.h>
#include <sys/shm.h>
#include <sys/signal.h>
#include <sys/signalfd.h>
#include <sys/statfs.h>
@@ -108,6 +106,7 @@ struct termios2 {
#include <linux/if_packet.h>
#include <linux/if_pppox.h>
#include <linux/if_xdp.h>
#include <linux/ipc.h>
#include <linux/keyctl.h>
#include <linux/landlock.h>
#include <linux/loop.h>
@@ -130,6 +129,7 @@ struct termios2 {
#include <linux/random.h>
#include <linux/rtc.h>
#include <linux/rtnetlink.h>
#include <linux/shm.h>
#include <linux/socket.h>
#include <linux/stat.h>
#include <linux/taskstats.h>
@@ -3840,8 +3840,8 @@ const (
// shm
type SysvIpcPerm C.struct_ipc_perm
type SysvShmDesc C.struct_shmid_ds
type SysvIpcPerm C.struct_ipc64_perm
type SysvShmDesc C.struct_shmid64_ds
const (
IPC_CREAT = C.IPC_CREAT

View File

@@ -641,29 +641,30 @@ const (
)
type SysvIpcPerm struct {
_ int32
Key int32
Uid uint32
Gid uint32
Cuid uint32
Cgid uint32
Mode uint32
_ uint16
Mode uint16
_ [2]uint8
Seq uint16
_ uint16
_ uint32
_ uint32
}
type SysvShmDesc struct {
Perm SysvIpcPerm
Segsz uint32
Atime int32
_ uint32
Dtime int32
_ uint32
Ctime int32
_ uint32
Cpid int32
Lpid int32
Nattch uint32
_ uint32
_ uint32
Perm SysvIpcPerm
Segsz uint32
Atime uint32
Atime_high uint32
Dtime uint32
Dtime_high uint32
Ctime uint32
Ctime_high uint32
Cpid int32
Lpid int32
Nattch uint32
_ uint32
_ uint32
}

View File

@@ -659,13 +659,14 @@ const (
)
type SysvIpcPerm struct {
_ int32
Key int32
Uid uint32
Gid uint32
Cuid uint32
Cgid uint32
Mode uint32
_ uint16
_ [0]uint8
Seq uint16
_ uint16
_ uint64
_ uint64

View File

@@ -636,29 +636,30 @@ const (
)
type SysvIpcPerm struct {
_ int32
Key int32
Uid uint32
Gid uint32
Cuid uint32
Cgid uint32
Mode uint32
_ uint16
Mode uint16
_ [2]uint8
Seq uint16
_ uint16
_ uint32
_ uint32
}
type SysvShmDesc struct {
Perm SysvIpcPerm
Segsz uint32
Atime int32
_ uint32
Dtime int32
_ uint32
Ctime int32
_ uint32
Cpid int32
Lpid int32
Nattch uint32
_ uint32
_ uint32
Perm SysvIpcPerm
Segsz uint32
Atime uint32
Atime_high uint32
Dtime uint32
Dtime_high uint32
Ctime uint32
Ctime_high uint32
Cpid int32
Lpid int32
Nattch uint32
_ uint32
_ uint32
}

View File

@@ -638,13 +638,14 @@ const (
)
type SysvIpcPerm struct {
_ int32
Key int32
Uid uint32
Gid uint32
Cuid uint32
Cgid uint32
Mode uint32
_ uint16
_ [0]uint8
Seq uint16
_ uint16
_ uint64
_ uint64

View File

@@ -642,28 +642,29 @@ const (
)
type SysvIpcPerm struct {
_ int32
Key int32
Uid uint32
Gid uint32
Cuid uint32
Cgid uint32
Mode uint32
_ uint16
_ [0]uint8
Seq uint16
_ uint16
_ uint32
_ uint32
}
type SysvShmDesc struct {
Perm SysvIpcPerm
Segsz uint32
Atime int32
Dtime int32
Ctime int32
Cpid int32
Lpid int32
Nattch uint32
_ uint16
_ uint16
_ uint16
_ uint16
Perm SysvIpcPerm
Segsz uint32
Atime uint32
Dtime uint32
Ctime uint32
Cpid int32
Lpid int32
Nattch uint32
Atime_high uint16
Dtime_high uint16
Ctime_high uint16
_ uint16
}

View File

@@ -641,13 +641,14 @@ const (
)
type SysvIpcPerm struct {
_ int32
Key int32
Uid uint32
Gid uint32
Cuid uint32
Cgid uint32
Mode uint32
_ uint16
_ [0]uint8
Seq uint16
_ uint16
_ uint64
_ uint64

View File

@@ -641,13 +641,14 @@ const (
)
type SysvIpcPerm struct {
_ int32
Key int32
Uid uint32
Gid uint32
Cuid uint32
Cgid uint32
Mode uint32
_ uint16
_ [0]uint8
Seq uint16
_ uint16
_ uint64
_ uint64

View File

@@ -642,28 +642,29 @@ const (
)
type SysvIpcPerm struct {
_ int32
Key int32
Uid uint32
Gid uint32
Cuid uint32
Cgid uint32
Mode uint32
_ uint16
_ [0]uint8
Seq uint16
_ uint16
_ uint32
_ uint32
}
type SysvShmDesc struct {
Perm SysvIpcPerm
Segsz uint32
Atime int32
Dtime int32
Ctime int32
Cpid int32
Lpid int32
Nattch uint32
_ uint16
_ uint16
_ uint16
_ uint16
Perm SysvIpcPerm
Segsz uint32
Atime uint32
Dtime uint32
Ctime uint32
Cpid int32
Lpid int32
Nattch uint32
Atime_high uint16
Dtime_high uint16
Ctime_high uint16
_ uint16
}

View File

@@ -648,31 +648,31 @@ const (
)
type SysvIpcPerm struct {
_ int32
Key int32
Uid uint32
Gid uint32
Cuid uint32
Cgid uint32
Mode uint32
_ uint32
Seq uint32
_ uint32
_ uint64
_ uint64
}
type SysvShmDesc struct {
Perm SysvIpcPerm
_ uint32
Atime int32
_ uint32
Dtime int32
_ uint32
Ctime int32
_ uint32
Segsz uint32
Cpid int32
Lpid int32
Nattch uint32
_ uint32
_ uint32
_ [4]byte
Perm SysvIpcPerm
Atime_high uint32
Atime uint32
Dtime_high uint32
Dtime uint32
Ctime_high uint32
Ctime uint32
_ uint32
Segsz uint32
Cpid int32
Lpid int32
Nattch uint32
_ uint32
_ uint32
_ [4]byte
}

View File

@@ -648,13 +648,13 @@ const (
)
type SysvIpcPerm struct {
_ int32
Key int32
Uid uint32
Gid uint32
Cuid uint32
Cgid uint32
Mode uint32
_ uint32
Seq uint32
_ uint32
_ uint64
_ uint64

View File

@@ -648,13 +648,13 @@ const (
)
type SysvIpcPerm struct {
_ int32
Key int32
Uid uint32
Gid uint32
Cuid uint32
Cgid uint32
Mode uint32
_ uint32
Seq uint32
_ uint32
_ uint64
_ uint64

View File

@@ -666,13 +666,14 @@ const (
)
type SysvIpcPerm struct {
_ int32
Key int32
Uid uint32
Gid uint32
Cuid uint32
Cgid uint32
Mode uint32
_ uint16
_ [0]uint8
Seq uint16
_ uint16
_ uint64
_ uint64

View File

@@ -662,14 +662,14 @@ const (
)
type SysvIpcPerm struct {
_ int32
Key int32
Uid uint32
Gid uint32
Cuid uint32
Cgid uint32
Mode uint32
_ uint16
_ uint16
Seq uint16
_ uint64
_ uint64
}

View File

@@ -643,14 +643,14 @@ const (
)
type SysvIpcPerm struct {
_ int32
Key int32
Uid uint32
Gid uint32
Cuid uint32
Cgid uint32
Mode uint32
_ uint16
_ uint16
Seq uint16
_ uint64
_ uint64
}