From 850964a7e7523705c04d974075169a0a2670e763 Mon Sep 17 00:00:00 2001 From: Mauri de Souza Meneguzzo Date: Thu, 24 Apr 2025 11:30:13 -0300 Subject: [PATCH 1/3] x/sys/unix: update darwin syscalls with mkall.sh --- unix/darwin_arm64_test.go | 1 + unix/syscall_darwin.go | 6 +- unix/zerrors_darwin_amd64.go | 141 ++++++++++++++++++++++++++++++++-- unix/zerrors_darwin_arm64.go | 141 ++++++++++++++++++++++++++++++++-- unix/zsyscall_darwin_amd64.go | 40 +++++----- unix/zsyscall_darwin_amd64.s | 10 +-- unix/zsyscall_darwin_arm64.go | 40 +++++----- unix/zsyscall_darwin_arm64.s | 10 +-- unix/ztypes_darwin_amd64.go | 9 +-- unix/ztypes_darwin_arm64.go | 9 +-- 10 files changed, 332 insertions(+), 75 deletions(-) diff --git a/unix/darwin_arm64_test.go b/unix/darwin_arm64_test.go index 740d6f7d1e..45248d47e6 100644 --- a/unix/darwin_arm64_test.go +++ b/unix/darwin_arm64_test.go @@ -107,6 +107,7 @@ var darwinTests = [...]darwinTest{ {"pthread_fchdir_np", libc_pthread_fchdir_np_trampoline_addr}, {"ptrace", libc_ptrace_trampoline_addr}, {"pwrite", libc_pwrite_trampoline_addr}, + {"pwritev", libc_pwritev_trampoline_addr}, {"read", libc_read_trampoline_addr}, {"readdir_r", libc_readdir_r_trampoline_addr}, {"readlink", libc_readlink_trampoline_addr}, diff --git a/unix/syscall_darwin.go b/unix/syscall_darwin.go index 798f61ad3b..6ec61a5698 100644 --- a/unix/syscall_darwin.go +++ b/unix/syscall_darwin.go @@ -576,6 +576,10 @@ func PthreadFchdir(fd int) (err error) { // // On success, Connectx returns the number of bytes enqueued for transmission. func Connectx(fd int, srcIf uint32, srcAddr, dstAddr Sockaddr, associd SaeAssocID, flags uint32, iov []Iovec, connid *SaeConnID) (n uintptr, err error) { + if !darwinKernelVersionMin(15, 0, 0) { + return 0, ENOSYS + } + endpoints := SaEndpoints{ Srcif: srcIf, } @@ -602,7 +606,6 @@ func Connectx(fd int, srcIf uint32, srcAddr, dstAddr Sockaddr, associd SaeAssocI return } -// sys connectx(fd int, endpoints *SaEndpoints, associd SaeAssocID, flags uint32, iov []Iovec, n *uintptr, connid *SaeConnID) (err error) const minIovec = 8 func Readv(fd int, iovs [][]byte) (n int, err error) { @@ -852,3 +855,4 @@ func darwinKernelVersionMin(maj, min, patch int) bool { //sys preadv(fd int, iovecs []Iovec, offset int64) (n int, err error) //sys writev(fd int, iovecs []Iovec) (n int, err error) //sys pwritev(fd int, iovecs []Iovec, offset int64) (n int, err error) +//sys connectx(fd int, endpoints *SaEndpoints, associd SaeAssocID, flags uint32, iov []Iovec, n *uintptr, connid *SaeConnID) (err error) diff --git a/unix/zerrors_darwin_amd64.go b/unix/zerrors_darwin_amd64.go index d73c4652e6..28fc0239e8 100644 --- a/unix/zerrors_darwin_amd64.go +++ b/unix/zerrors_darwin_amd64.go @@ -112,16 +112,20 @@ const ( ATTR_VOL_DIRCOUNT = 0x400 ATTR_VOL_ENCODINGSUSED = 0x10000 ATTR_VOL_FILECOUNT = 0x200 + ATTR_VOL_FSSUBTYPE = 0x200000 ATTR_VOL_FSTYPE = 0x1 + ATTR_VOL_FSTYPENAME = 0x100000 ATTR_VOL_INFO = 0x80000000 ATTR_VOL_IOBLOCKSIZE = 0x80 ATTR_VOL_MAXOBJCOUNT = 0x800 ATTR_VOL_MINALLOCATION = 0x20 ATTR_VOL_MOUNTEDDEVICE = 0x8000 + ATTR_VOL_MOUNTEXTFLAGS = 0x80000 ATTR_VOL_MOUNTFLAGS = 0x4000 ATTR_VOL_MOUNTPOINT = 0x1000 ATTR_VOL_NAME = 0x2000 ATTR_VOL_OBJCOUNT = 0x100 + ATTR_VOL_OWNER = 0x400000 ATTR_VOL_QUOTA_SIZE = 0x10000000 ATTR_VOL_RESERVED_SIZE = 0x20000000 ATTR_VOL_SETMASK = 0x80002000 @@ -131,7 +135,38 @@ const ( ATTR_VOL_SPACEFREE = 0x8 ATTR_VOL_SPACEUSED = 0x800000 ATTR_VOL_UUID = 0x40000 - ATTR_VOL_VALIDMASK = 0xf087ffff + ATTR_VOL_VALIDMASK = 0xf0ffffff + AUDIT_AHLT = 0x2 + AUDIT_ARGE = 0x8 + AUDIT_ARGV = 0x4 + AUDIT_CNT = 0x1 + AUDIT_CTLMODE_EXTERNAL = 0x2 + AUDIT_CTLMODE_NORMAL = 0x1 + AUDIT_EXPIRE_OP_AND = 0x0 + AUDIT_EXPIRE_OP_OR = 0x1 + AUDIT_GROUP = 0x80 + AUDIT_HARD_LIMIT_FREE_BLOCKS = 0x4 + AUDIT_PATH = 0x200 + AUDIT_PERZONE = 0x2000 + AUDIT_PUBLIC = 0x800 + AUDIT_RECORD_MAGIC = 0x828a0f1b + AUDIT_SCNT = 0x400 + AUDIT_SEQ = 0x10 + AUDIT_TRAIL = 0x100 + AUDIT_TRIGGER_CLOSE_AND_DIE = 0x4 + AUDIT_TRIGGER_EXPIRE_TRAILS = 0x8 + AUDIT_TRIGGER_FILE = "/dev/audit" + AUDIT_TRIGGER_INITIALIZE = 0x7 + AUDIT_TRIGGER_LOW_SPACE = 0x1 + AUDIT_TRIGGER_MAX = 0x8 + AUDIT_TRIGGER_MIN = 0x1 + AUDIT_TRIGGER_NO_SPACE = 0x5 + AUDIT_TRIGGER_READ_FILE = 0x3 + AUDIT_TRIGGER_ROTATE_KERNEL = 0x2 + AUDIT_TRIGGER_ROTATE_USER = 0x6 + AUDIT_USER = 0x40 + AUDIT_WINDATA = 0x20 + AUDIT_ZONENAME = 0x1000 B0 = 0x0 B110 = 0x6e B115200 = 0x1c200 @@ -235,7 +270,9 @@ const ( CLOCK_THREAD_CPUTIME_ID = 0x10 CLOCK_UPTIME_RAW = 0x8 CLOCK_UPTIME_RAW_APPROX = 0x9 + CLONE_ACL = 0x4 CLONE_NOFOLLOW = 0x1 + CLONE_NOFOLLOW_ANY = 0x8 CLONE_NOOWNERCOPY = 0x2 CONNECT_DATA_AUTHENTICATED = 0x4 CONNECT_DATA_IDEMPOTENT = 0x2 @@ -441,6 +478,13 @@ const ( ECHOKE = 0x1 ECHONL = 0x10 ECHOPRT = 0x20 + EF_IS_PURGEABLE = 0x8 + EF_IS_SPARSE = 0x10 + EF_IS_SYNC_ROOT = 0x4 + EF_IS_SYNTHETIC = 0x20 + EF_MAY_SHARE_BLOCKS = 0x1 + EF_NO_XATTRS = 0x2 + EF_SHARES_ALL_BLOCKS = 0x40 EVFILT_AIO = -0x3 EVFILT_EXCEPT = -0xf EVFILT_FS = -0x9 @@ -448,8 +492,8 @@ const ( EVFILT_PROC = -0x5 EVFILT_READ = -0x1 EVFILT_SIGNAL = -0x6 - EVFILT_SYSCOUNT = 0x11 - EVFILT_THREADMARKER = 0x11 + EVFILT_SYSCOUNT = 0x12 + EVFILT_THREADMARKER = 0x12 EVFILT_TIMER = -0x7 EVFILT_USER = -0xa EVFILT_VM = -0xc @@ -484,6 +528,7 @@ const ( FLUSHO = 0x800000 FSOPT_ATTR_CMN_EXTENDED = 0x20 FSOPT_NOFOLLOW = 0x1 + FSOPT_NOFOLLOW_ANY = 0x800 FSOPT_NOINMEMUPDATE = 0x2 FSOPT_PACK_INVAL_ATTRS = 0x8 FSOPT_REPORT_FULLSIZE = 0x4 @@ -494,11 +539,16 @@ const ( F_ADDFILESIGS_RETURN = 0x61 F_ADDFILESUPPL = 0x68 F_ADDSIGS = 0x3b + F_ADDSIGS_MAIN_BINARY = 0x71 F_ALLOCATEALL = 0x4 F_ALLOCATECONTIG = 0x2 + F_ALLOCATEPERSIST = 0x8 + F_ATTRIBUTION_TAG = 0x6f F_BARRIERFSYNC = 0x55 F_CHECK_LV = 0x62 F_CHKCLEAN = 0x29 + F_CREATE_TAG = 0x1 + F_DELETE_TAG = 0x2 F_DUPFD = 0x0 F_DUPFD_CLOEXEC = 0x43 F_FINDSIGS = 0x4e @@ -508,6 +558,7 @@ const ( F_GETCODEDIR = 0x48 F_GETFD = 0x1 F_GETFL = 0x3 + F_GETLEASE = 0x6b F_GETLK = 0x7 F_GETLKPID = 0x42 F_GETNOSIGPIPE = 0x4a @@ -523,17 +574,23 @@ const ( F_LOG2PHYS_EXT = 0x41 F_NOCACHE = 0x30 F_NODIRECT = 0x3e + F_OFD_GETLK = 0x5c + F_OFD_SETLK = 0x5a + F_OFD_SETLKW = 0x5b + F_OFD_SETLKWTIMEOUT = 0x5d F_OK = 0x0 F_PATHPKG_CHECK = 0x34 F_PEOFPOSMODE = 0x3 F_PREALLOCATE = 0x2a F_PUNCHHOLE = 0x63 + F_QUERY_TAG = 0x4 F_RDADVISE = 0x2c F_RDAHEAD = 0x2d F_RDLCK = 0x1 F_SETBACKINGSTORE = 0x46 F_SETFD = 0x2 F_SETFL = 0x4 + F_SETLEASE = 0x6a F_SETLK = 0x8 F_SETLKW = 0x9 F_SETLKWTIMEOUT = 0xa @@ -545,6 +602,7 @@ const ( F_SPECULATIVE_READ = 0x65 F_THAW_FS = 0x36 F_TRANSCODEKEY = 0x4b + F_TRANSFEREXTENTS = 0x6e F_TRIM_ACTIVE_FILE = 0x64 F_UNLCK = 0x2 F_VOLPOSMODE = 0x4 @@ -924,6 +982,9 @@ const ( IP_UNBLOCK_SOURCE = 0x49 ISIG = 0x80 ISTRIP = 0x20 + ITIMER_PROF = 0x2 + ITIMER_REAL = 0x0 + ITIMER_VIRTUAL = 0x1 IUTF8 = 0x4000 IXANY = 0x800 IXOFF = 0x400 @@ -952,6 +1013,7 @@ const ( MADV_RANDOM = 0x1 MADV_SEQUENTIAL = 0x2 MADV_WILLNEED = 0x3 + MADV_ZERO = 0xb MADV_ZERO_WIRED_PAGES = 0x6 MAP_32BIT = 0x8000 MAP_ANON = 0x1000 @@ -970,6 +1032,7 @@ const ( MAP_RESILIENT_CODESIGN = 0x2000 MAP_RESILIENT_MEDIA = 0x4000 MAP_SHARED = 0x1 + MAP_TPRO = 0x80000 MAP_TRANSLATED_ALLOW_EXECUTE = 0x20000 MAP_UNIX03 = 0x40000 MCAST_BLOCK_SOURCE = 0x54 @@ -992,6 +1055,7 @@ const ( MNT_DOVOLFS = 0x8000 MNT_DWAIT = 0x4 MNT_EXPORTED = 0x100 + MNT_EXT_FSKIT = 0x2 MNT_EXT_ROOT_DATA_VOL = 0x1 MNT_FORCE = 0x80000 MNT_IGNORE_OWNERSHIP = 0x200000 @@ -1002,6 +1066,7 @@ const ( MNT_NOBLOCK = 0x20000 MNT_NODEV = 0x10 MNT_NOEXEC = 0x4 + MNT_NOFOLLOW = 0x8000000 MNT_NOSUID = 0x8 MNT_NOUSERXATTR = 0x1000000 MNT_NOWAIT = 0x2 @@ -1017,7 +1082,7 @@ const ( MNT_UNION = 0x20 MNT_UNKNOWNPERMISSIONS = 0x200000 MNT_UPDATE = 0x10000 - MNT_VISFLAGMASK = 0xd7f0f7ff + MNT_VISFLAGMASK = 0xdff0f7ff MNT_WAIT = 0x1 MSG_CTRUNC = 0x20 MSG_DONTROUTE = 0x4 @@ -1083,6 +1148,8 @@ const ( NOTE_FFOR = 0x80000000 NOTE_FORK = 0x40000000 NOTE_FUNLOCK = 0x100 + NOTE_LEASE_DOWNGRADE = 0x200 + NOTE_LEASE_RELEASE = 0x400 NOTE_LEEWAY = 0x10 NOTE_LINK = 0x10 NOTE_LOWAT = 0x1 @@ -1123,11 +1190,13 @@ const ( O_CLOEXEC = 0x1000000 O_CREAT = 0x200 O_DIRECTORY = 0x100000 + O_DP_AUTHENTICATE = 0x4 O_DP_GETRAWENCRYPTED = 0x1 O_DP_GETRAWUNENCRYPTED = 0x2 O_DSYNC = 0x400000 O_EVTONLY = 0x8000 O_EXCL = 0x800 + O_EXEC = 0x40000000 O_EXLOCK = 0x20 O_FSYNC = 0x80 O_NDELAY = 0x4 @@ -1138,6 +1207,8 @@ const ( O_POPUP = 0x80000000 O_RDONLY = 0x0 O_RDWR = 0x2 + O_RESOLVE_BENEATH = 0x1000 + O_SEARCH = 0x40100000 O_SHLOCK = 0x10 O_SYMLINK = 0x200000 O_SYNC = 0x80 @@ -1172,6 +1243,57 @@ const ( PT_WRITE_D = 0x5 PT_WRITE_I = 0x4 PT_WRITE_U = 0x6 + P_ADOPTPERSONA = 0x4000000 + P_ADVLOCK = 0x1 + P_AFFINITY = 0x10000 + P_CHECKOPENEVT = 0x80000 + P_CLASSIC = 0x20000 + P_CONTINUED = 0x80 + P_CONTROLT = 0x2 + P_DELAYIDLESLEEP = 0x40000 + P_DEPENDENCY_CAPABLE = 0x100000 + P_DIRTY = 0x8 + P_DIRTY_AGING_IN_PROGRESS = 0x100 + P_DIRTY_ALLOW_IDLE_EXIT = 0x2 + P_DIRTY_BUSY = 0x40 + P_DIRTY_DEFER = 0x4 + P_DIRTY_DEFER_ALWAYS = 0x400 + P_DIRTY_IDLE_EXIT_ENABLED = 0x3 + P_DIRTY_IS_DIRTY = 0x18 + P_DIRTY_LAUNCH_IN_PROGRESS = 0x200 + P_DIRTY_MARKED = 0x80 + P_DIRTY_SHUTDOWN = 0x10 + P_DIRTY_TERMINATED = 0x20 + P_DIRTY_TRACK = 0x1 + P_DISABLE_ASLR = 0x1000 + P_EXEC = 0x4000 + P_FORCEQUOTA = 0x20000000 + P_FSTRACE = 0x0 + P_INMEM = 0x0 + P_LP64 = 0x4 + P_NOCLDSTOP = 0x8 + P_NOCLDWAIT = 0x40000000 + P_NOREMOTEHANG = 0x80000000 + P_NOSHLIB = 0x10000000 + P_NOSWAP = 0x0 + P_OWEUPC = 0x8000 + P_PHYSIO = 0x0 + P_PPWAIT = 0x10 + P_PROFIL = 0x20 + P_REBOOT = 0x200000 + P_RESV11 = 0x8000000 + P_RESV6 = 0x400000 + P_RESV7 = 0x800000 + P_RESV9 = 0x2000000 + P_SELECT = 0x40 + P_SSTEP = 0x0 + P_SUGID = 0x100 + P_SYSTEM = 0x200 + P_THCWD = 0x1000000 + P_TIMEOUT = 0x400 + P_TRACED = 0x800 + P_TRANSLATED = 0x20000 + P_WEXIT = 0x2000 RENAME_EXCL = 0x4 RENAME_NOFOLLOW_ANY = 0x10 RENAME_RESERVED1 = 0x8 @@ -1219,7 +1341,6 @@ const ( RTF_HOST = 0x4 RTF_IFREF = 0x4000000 RTF_IFSCOPE = 0x1000000 - RTF_LLDATA = 0x400 RTF_LLINFO = 0x400 RTF_LOCAL = 0x200000 RTF_MODIFIED = 0x20 @@ -1315,6 +1436,7 @@ const ( SIOCGIFCAP = 0xc020695b SIOCGIFCONF = 0xc00c6924 SIOCGIFDEVMTU = 0xc0206944 + SIOCGIFDIRECTLINK = 0xc02069de SIOCGIFDSTADDR = 0xc0206922 SIOCGIFFLAGS = 0xc0206911 SIOCGIFFUNCTIONALTYPE = 0xc02069ad @@ -1355,6 +1477,7 @@ const ( SIOCSIFKPI = 0x80206986 SIOCSIFLLADDR = 0x8020693c SIOCSIFMAC = 0x80206983 + SIOCSIFMANAGEMENT = 0xc020695c SIOCSIFMEDIA = 0xc0206937 SIOCSIFMETRIC = 0x80206918 SIOCSIFMTU = 0x80206934 @@ -1374,6 +1497,7 @@ const ( SOL_SOCKET = 0xffff SOMAXCONN = 0x80 SO_ACCEPTCONN = 0x2 + SO_BINDTODEVICE = 0x1134 SO_BROADCAST = 0x20 SO_DEBUG = 0x1 SO_DONTROUTE = 0x10 @@ -1399,6 +1523,7 @@ const ( SO_RCVBUF = 0x1002 SO_RCVLOWAT = 0x1004 SO_RCVTIMEO = 0x1006 + SO_RESOLVER_SIGNATURE = 0x1131 SO_REUSEADDR = 0x4 SO_REUSEPORT = 0x200 SO_REUSESHAREUID = 0x1025 @@ -1416,6 +1541,7 @@ const ( SO_USELOOPBACK = 0x40 SO_WANTMORE = 0x4000 SO_WANTOOBFLAG = 0x8000 + S_BLKSIZE = 0x200 S_IEXEC = 0x40 S_IFBLK = 0x6000 S_IFCHR = 0x2000 @@ -1456,6 +1582,8 @@ const ( TCOFLUSH = 0x2 TCOOFF = 0x1 TCOON = 0x2 + TCPOPT_ACCECN0 = 0xac + TCPOPT_ACCECN1 = 0xae TCPOPT_CC = 0xb TCPOPT_CCECHO = 0xd TCPOPT_CCNEW = 0xc @@ -1573,6 +1701,8 @@ const ( UF_OPAQUE = 0x8 UF_SETTABLE = 0xffff UF_TRACKED = 0x40 + UTIME_NOW = -0x1 + UTIME_OMIT = -0x2 VDISCARD = 0xf VDSUSP = 0xb VEOF = 0x0 @@ -1615,6 +1745,7 @@ const ( XATTR_CREATE = 0x2 XATTR_NODEFAULT = 0x10 XATTR_NOFOLLOW = 0x1 + XATTR_NOFOLLOW_ANY = 0x40 XATTR_NOSECURITY = 0x8 XATTR_REPLACE = 0x4 XATTR_SHOWCOMPRESSION = 0x20 diff --git a/unix/zerrors_darwin_arm64.go b/unix/zerrors_darwin_arm64.go index 4a55a40058..9a5250376c 100644 --- a/unix/zerrors_darwin_arm64.go +++ b/unix/zerrors_darwin_arm64.go @@ -112,16 +112,20 @@ const ( ATTR_VOL_DIRCOUNT = 0x400 ATTR_VOL_ENCODINGSUSED = 0x10000 ATTR_VOL_FILECOUNT = 0x200 + ATTR_VOL_FSSUBTYPE = 0x200000 ATTR_VOL_FSTYPE = 0x1 + ATTR_VOL_FSTYPENAME = 0x100000 ATTR_VOL_INFO = 0x80000000 ATTR_VOL_IOBLOCKSIZE = 0x80 ATTR_VOL_MAXOBJCOUNT = 0x800 ATTR_VOL_MINALLOCATION = 0x20 ATTR_VOL_MOUNTEDDEVICE = 0x8000 + ATTR_VOL_MOUNTEXTFLAGS = 0x80000 ATTR_VOL_MOUNTFLAGS = 0x4000 ATTR_VOL_MOUNTPOINT = 0x1000 ATTR_VOL_NAME = 0x2000 ATTR_VOL_OBJCOUNT = 0x100 + ATTR_VOL_OWNER = 0x400000 ATTR_VOL_QUOTA_SIZE = 0x10000000 ATTR_VOL_RESERVED_SIZE = 0x20000000 ATTR_VOL_SETMASK = 0x80002000 @@ -131,7 +135,38 @@ const ( ATTR_VOL_SPACEFREE = 0x8 ATTR_VOL_SPACEUSED = 0x800000 ATTR_VOL_UUID = 0x40000 - ATTR_VOL_VALIDMASK = 0xf087ffff + ATTR_VOL_VALIDMASK = 0xf0ffffff + AUDIT_AHLT = 0x2 + AUDIT_ARGE = 0x8 + AUDIT_ARGV = 0x4 + AUDIT_CNT = 0x1 + AUDIT_CTLMODE_EXTERNAL = 0x2 + AUDIT_CTLMODE_NORMAL = 0x1 + AUDIT_EXPIRE_OP_AND = 0x0 + AUDIT_EXPIRE_OP_OR = 0x1 + AUDIT_GROUP = 0x80 + AUDIT_HARD_LIMIT_FREE_BLOCKS = 0x4 + AUDIT_PATH = 0x200 + AUDIT_PERZONE = 0x2000 + AUDIT_PUBLIC = 0x800 + AUDIT_RECORD_MAGIC = 0x828a0f1b + AUDIT_SCNT = 0x400 + AUDIT_SEQ = 0x10 + AUDIT_TRAIL = 0x100 + AUDIT_TRIGGER_CLOSE_AND_DIE = 0x4 + AUDIT_TRIGGER_EXPIRE_TRAILS = 0x8 + AUDIT_TRIGGER_FILE = "/dev/audit" + AUDIT_TRIGGER_INITIALIZE = 0x7 + AUDIT_TRIGGER_LOW_SPACE = 0x1 + AUDIT_TRIGGER_MAX = 0x8 + AUDIT_TRIGGER_MIN = 0x1 + AUDIT_TRIGGER_NO_SPACE = 0x5 + AUDIT_TRIGGER_READ_FILE = 0x3 + AUDIT_TRIGGER_ROTATE_KERNEL = 0x2 + AUDIT_TRIGGER_ROTATE_USER = 0x6 + AUDIT_USER = 0x40 + AUDIT_WINDATA = 0x20 + AUDIT_ZONENAME = 0x1000 B0 = 0x0 B110 = 0x6e B115200 = 0x1c200 @@ -235,7 +270,9 @@ const ( CLOCK_THREAD_CPUTIME_ID = 0x10 CLOCK_UPTIME_RAW = 0x8 CLOCK_UPTIME_RAW_APPROX = 0x9 + CLONE_ACL = 0x4 CLONE_NOFOLLOW = 0x1 + CLONE_NOFOLLOW_ANY = 0x8 CLONE_NOOWNERCOPY = 0x2 CONNECT_DATA_AUTHENTICATED = 0x4 CONNECT_DATA_IDEMPOTENT = 0x2 @@ -441,6 +478,13 @@ const ( ECHOKE = 0x1 ECHONL = 0x10 ECHOPRT = 0x20 + EF_IS_PURGEABLE = 0x8 + EF_IS_SPARSE = 0x10 + EF_IS_SYNC_ROOT = 0x4 + EF_IS_SYNTHETIC = 0x20 + EF_MAY_SHARE_BLOCKS = 0x1 + EF_NO_XATTRS = 0x2 + EF_SHARES_ALL_BLOCKS = 0x40 EVFILT_AIO = -0x3 EVFILT_EXCEPT = -0xf EVFILT_FS = -0x9 @@ -448,8 +492,8 @@ const ( EVFILT_PROC = -0x5 EVFILT_READ = -0x1 EVFILT_SIGNAL = -0x6 - EVFILT_SYSCOUNT = 0x11 - EVFILT_THREADMARKER = 0x11 + EVFILT_SYSCOUNT = 0x12 + EVFILT_THREADMARKER = 0x12 EVFILT_TIMER = -0x7 EVFILT_USER = -0xa EVFILT_VM = -0xc @@ -484,6 +528,7 @@ const ( FLUSHO = 0x800000 FSOPT_ATTR_CMN_EXTENDED = 0x20 FSOPT_NOFOLLOW = 0x1 + FSOPT_NOFOLLOW_ANY = 0x800 FSOPT_NOINMEMUPDATE = 0x2 FSOPT_PACK_INVAL_ATTRS = 0x8 FSOPT_REPORT_FULLSIZE = 0x4 @@ -494,11 +539,16 @@ const ( F_ADDFILESIGS_RETURN = 0x61 F_ADDFILESUPPL = 0x68 F_ADDSIGS = 0x3b + F_ADDSIGS_MAIN_BINARY = 0x71 F_ALLOCATEALL = 0x4 F_ALLOCATECONTIG = 0x2 + F_ALLOCATEPERSIST = 0x8 + F_ATTRIBUTION_TAG = 0x6f F_BARRIERFSYNC = 0x55 F_CHECK_LV = 0x62 F_CHKCLEAN = 0x29 + F_CREATE_TAG = 0x1 + F_DELETE_TAG = 0x2 F_DUPFD = 0x0 F_DUPFD_CLOEXEC = 0x43 F_FINDSIGS = 0x4e @@ -508,6 +558,7 @@ const ( F_GETCODEDIR = 0x48 F_GETFD = 0x1 F_GETFL = 0x3 + F_GETLEASE = 0x6b F_GETLK = 0x7 F_GETLKPID = 0x42 F_GETNOSIGPIPE = 0x4a @@ -523,17 +574,23 @@ const ( F_LOG2PHYS_EXT = 0x41 F_NOCACHE = 0x30 F_NODIRECT = 0x3e + F_OFD_GETLK = 0x5c + F_OFD_SETLK = 0x5a + F_OFD_SETLKW = 0x5b + F_OFD_SETLKWTIMEOUT = 0x5d F_OK = 0x0 F_PATHPKG_CHECK = 0x34 F_PEOFPOSMODE = 0x3 F_PREALLOCATE = 0x2a F_PUNCHHOLE = 0x63 + F_QUERY_TAG = 0x4 F_RDADVISE = 0x2c F_RDAHEAD = 0x2d F_RDLCK = 0x1 F_SETBACKINGSTORE = 0x46 F_SETFD = 0x2 F_SETFL = 0x4 + F_SETLEASE = 0x6a F_SETLK = 0x8 F_SETLKW = 0x9 F_SETLKWTIMEOUT = 0xa @@ -545,6 +602,7 @@ const ( F_SPECULATIVE_READ = 0x65 F_THAW_FS = 0x36 F_TRANSCODEKEY = 0x4b + F_TRANSFEREXTENTS = 0x6e F_TRIM_ACTIVE_FILE = 0x64 F_UNLCK = 0x2 F_VOLPOSMODE = 0x4 @@ -924,6 +982,9 @@ const ( IP_UNBLOCK_SOURCE = 0x49 ISIG = 0x80 ISTRIP = 0x20 + ITIMER_PROF = 0x2 + ITIMER_REAL = 0x0 + ITIMER_VIRTUAL = 0x1 IUTF8 = 0x4000 IXANY = 0x800 IXOFF = 0x400 @@ -952,6 +1013,7 @@ const ( MADV_RANDOM = 0x1 MADV_SEQUENTIAL = 0x2 MADV_WILLNEED = 0x3 + MADV_ZERO = 0xb MADV_ZERO_WIRED_PAGES = 0x6 MAP_32BIT = 0x8000 MAP_ANON = 0x1000 @@ -970,6 +1032,7 @@ const ( MAP_RESILIENT_CODESIGN = 0x2000 MAP_RESILIENT_MEDIA = 0x4000 MAP_SHARED = 0x1 + MAP_TPRO = 0x80000 MAP_TRANSLATED_ALLOW_EXECUTE = 0x20000 MAP_UNIX03 = 0x40000 MCAST_BLOCK_SOURCE = 0x54 @@ -992,6 +1055,7 @@ const ( MNT_DOVOLFS = 0x8000 MNT_DWAIT = 0x4 MNT_EXPORTED = 0x100 + MNT_EXT_FSKIT = 0x2 MNT_EXT_ROOT_DATA_VOL = 0x1 MNT_FORCE = 0x80000 MNT_IGNORE_OWNERSHIP = 0x200000 @@ -1002,6 +1066,7 @@ const ( MNT_NOBLOCK = 0x20000 MNT_NODEV = 0x10 MNT_NOEXEC = 0x4 + MNT_NOFOLLOW = 0x8000000 MNT_NOSUID = 0x8 MNT_NOUSERXATTR = 0x1000000 MNT_NOWAIT = 0x2 @@ -1017,7 +1082,7 @@ const ( MNT_UNION = 0x20 MNT_UNKNOWNPERMISSIONS = 0x200000 MNT_UPDATE = 0x10000 - MNT_VISFLAGMASK = 0xd7f0f7ff + MNT_VISFLAGMASK = 0xdff0f7ff MNT_WAIT = 0x1 MSG_CTRUNC = 0x20 MSG_DONTROUTE = 0x4 @@ -1083,6 +1148,8 @@ const ( NOTE_FFOR = 0x80000000 NOTE_FORK = 0x40000000 NOTE_FUNLOCK = 0x100 + NOTE_LEASE_DOWNGRADE = 0x200 + NOTE_LEASE_RELEASE = 0x400 NOTE_LEEWAY = 0x10 NOTE_LINK = 0x10 NOTE_LOWAT = 0x1 @@ -1123,11 +1190,13 @@ const ( O_CLOEXEC = 0x1000000 O_CREAT = 0x200 O_DIRECTORY = 0x100000 + O_DP_AUTHENTICATE = 0x4 O_DP_GETRAWENCRYPTED = 0x1 O_DP_GETRAWUNENCRYPTED = 0x2 O_DSYNC = 0x400000 O_EVTONLY = 0x8000 O_EXCL = 0x800 + O_EXEC = 0x40000000 O_EXLOCK = 0x20 O_FSYNC = 0x80 O_NDELAY = 0x4 @@ -1138,6 +1207,8 @@ const ( O_POPUP = 0x80000000 O_RDONLY = 0x0 O_RDWR = 0x2 + O_RESOLVE_BENEATH = 0x1000 + O_SEARCH = 0x40100000 O_SHLOCK = 0x10 O_SYMLINK = 0x200000 O_SYNC = 0x80 @@ -1172,6 +1243,57 @@ const ( PT_WRITE_D = 0x5 PT_WRITE_I = 0x4 PT_WRITE_U = 0x6 + P_ADOPTPERSONA = 0x4000000 + P_ADVLOCK = 0x1 + P_AFFINITY = 0x10000 + P_CHECKOPENEVT = 0x80000 + P_CLASSIC = 0x20000 + P_CONTINUED = 0x80 + P_CONTROLT = 0x2 + P_DELAYIDLESLEEP = 0x40000 + P_DEPENDENCY_CAPABLE = 0x100000 + P_DIRTY = 0x8 + P_DIRTY_AGING_IN_PROGRESS = 0x100 + P_DIRTY_ALLOW_IDLE_EXIT = 0x2 + P_DIRTY_BUSY = 0x40 + P_DIRTY_DEFER = 0x4 + P_DIRTY_DEFER_ALWAYS = 0x400 + P_DIRTY_IDLE_EXIT_ENABLED = 0x3 + P_DIRTY_IS_DIRTY = 0x18 + P_DIRTY_LAUNCH_IN_PROGRESS = 0x200 + P_DIRTY_MARKED = 0x80 + P_DIRTY_SHUTDOWN = 0x10 + P_DIRTY_TERMINATED = 0x20 + P_DIRTY_TRACK = 0x1 + P_DISABLE_ASLR = 0x1000 + P_EXEC = 0x4000 + P_FORCEQUOTA = 0x20000000 + P_FSTRACE = 0x0 + P_INMEM = 0x0 + P_LP64 = 0x4 + P_NOCLDSTOP = 0x8 + P_NOCLDWAIT = 0x40000000 + P_NOREMOTEHANG = 0x80000000 + P_NOSHLIB = 0x10000000 + P_NOSWAP = 0x0 + P_OWEUPC = 0x8000 + P_PHYSIO = 0x0 + P_PPWAIT = 0x10 + P_PROFIL = 0x20 + P_REBOOT = 0x200000 + P_RESV11 = 0x8000000 + P_RESV6 = 0x400000 + P_RESV7 = 0x800000 + P_RESV9 = 0x2000000 + P_SELECT = 0x40 + P_SSTEP = 0x0 + P_SUGID = 0x100 + P_SYSTEM = 0x200 + P_THCWD = 0x1000000 + P_TIMEOUT = 0x400 + P_TRACED = 0x800 + P_TRANSLATED = 0x20000 + P_WEXIT = 0x2000 RENAME_EXCL = 0x4 RENAME_NOFOLLOW_ANY = 0x10 RENAME_RESERVED1 = 0x8 @@ -1219,7 +1341,6 @@ const ( RTF_HOST = 0x4 RTF_IFREF = 0x4000000 RTF_IFSCOPE = 0x1000000 - RTF_LLDATA = 0x400 RTF_LLINFO = 0x400 RTF_LOCAL = 0x200000 RTF_MODIFIED = 0x20 @@ -1315,6 +1436,7 @@ const ( SIOCGIFCAP = 0xc020695b SIOCGIFCONF = 0xc00c6924 SIOCGIFDEVMTU = 0xc0206944 + SIOCGIFDIRECTLINK = 0xc02069de SIOCGIFDSTADDR = 0xc0206922 SIOCGIFFLAGS = 0xc0206911 SIOCGIFFUNCTIONALTYPE = 0xc02069ad @@ -1355,6 +1477,7 @@ const ( SIOCSIFKPI = 0x80206986 SIOCSIFLLADDR = 0x8020693c SIOCSIFMAC = 0x80206983 + SIOCSIFMANAGEMENT = 0xc020695c SIOCSIFMEDIA = 0xc0206937 SIOCSIFMETRIC = 0x80206918 SIOCSIFMTU = 0x80206934 @@ -1374,6 +1497,7 @@ const ( SOL_SOCKET = 0xffff SOMAXCONN = 0x80 SO_ACCEPTCONN = 0x2 + SO_BINDTODEVICE = 0x1134 SO_BROADCAST = 0x20 SO_DEBUG = 0x1 SO_DONTROUTE = 0x10 @@ -1399,6 +1523,7 @@ const ( SO_RCVBUF = 0x1002 SO_RCVLOWAT = 0x1004 SO_RCVTIMEO = 0x1006 + SO_RESOLVER_SIGNATURE = 0x1131 SO_REUSEADDR = 0x4 SO_REUSEPORT = 0x200 SO_REUSESHAREUID = 0x1025 @@ -1416,6 +1541,7 @@ const ( SO_USELOOPBACK = 0x40 SO_WANTMORE = 0x4000 SO_WANTOOBFLAG = 0x8000 + S_BLKSIZE = 0x200 S_IEXEC = 0x40 S_IFBLK = 0x6000 S_IFCHR = 0x2000 @@ -1456,6 +1582,8 @@ const ( TCOFLUSH = 0x2 TCOOFF = 0x1 TCOON = 0x2 + TCPOPT_ACCECN0 = 0xac + TCPOPT_ACCECN1 = 0xae TCPOPT_CC = 0xb TCPOPT_CCECHO = 0xd TCPOPT_CCNEW = 0xc @@ -1573,6 +1701,8 @@ const ( UF_OPAQUE = 0x8 UF_SETTABLE = 0xffff UF_TRACKED = 0x40 + UTIME_NOW = -0x1 + UTIME_OMIT = -0x2 VDISCARD = 0xf VDSUSP = 0xb VEOF = 0x0 @@ -1615,6 +1745,7 @@ const ( XATTR_CREATE = 0x2 XATTR_NODEFAULT = 0x10 XATTR_NOFOLLOW = 0x1 + XATTR_NOFOLLOW_ANY = 0x40 XATTR_NOSECURITY = 0x8 XATTR_REPLACE = 0x4 XATTR_SHOWCOMPRESSION = 0x20 diff --git a/unix/zsyscall_darwin_amd64.go b/unix/zsyscall_darwin_amd64.go index 813c05b664..b19ffcaee5 100644 --- a/unix/zsyscall_darwin_amd64.go +++ b/unix/zsyscall_darwin_amd64.go @@ -841,26 +841,6 @@ var libc_pthread_fchdir_np_trampoline_addr uintptr // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -func connectx(fd int, endpoints *SaEndpoints, associd SaeAssocID, flags uint32, iov []Iovec, n *uintptr, connid *SaeConnID) (err error) { - var _p0 unsafe.Pointer - if len(iov) > 0 { - _p0 = unsafe.Pointer(&iov[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } - _, _, e1 := syscall_syscall9(libc_connectx_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(endpoints)), uintptr(associd), uintptr(flags), uintptr(_p0), uintptr(len(iov)), uintptr(unsafe.Pointer(n)), uintptr(unsafe.Pointer(connid)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -var libc_connectx_trampoline_addr uintptr - -//go:cgo_import_dynamic libc_connectx connectx "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error) { _, _, e1 := syscall_syscall6(libc_sendfile_trampoline_addr, uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags)) if e1 != 0 { @@ -2596,6 +2576,26 @@ var libc_pwritev_trampoline_addr uintptr // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT +func connectx(fd int, endpoints *SaEndpoints, associd SaeAssocID, flags uint32, iov []Iovec, n *uintptr, connid *SaeConnID) (err error) { + var _p0 unsafe.Pointer + if len(iov) > 0 { + _p0 = unsafe.Pointer(&iov[0]) + } else { + _p0 = unsafe.Pointer(&_zero) + } + _, _, e1 := syscall_syscall9(libc_connectx_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(endpoints)), uintptr(associd), uintptr(flags), uintptr(_p0), uintptr(len(iov)), uintptr(unsafe.Pointer(n)), uintptr(unsafe.Pointer(connid)), 0) + if e1 != 0 { + err = errnoErr(e1) + } + return +} + +var libc_connectx_trampoline_addr uintptr + +//go:cgo_import_dynamic libc_connectx connectx "/usr/lib/libSystem.B.dylib" + +// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT + func Fstat(fd int, stat *Stat_t) (err error) { _, _, e1 := syscall_syscall(libc_fstat64_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) if e1 != 0 { diff --git a/unix/zsyscall_darwin_amd64.s b/unix/zsyscall_darwin_amd64.s index fda328582b..961165bc8a 100644 --- a/unix/zsyscall_darwin_amd64.s +++ b/unix/zsyscall_darwin_amd64.s @@ -248,11 +248,6 @@ TEXT libc_pthread_fchdir_np_trampoline<>(SB),NOSPLIT,$0-0 GLOBL ·libc_pthread_fchdir_np_trampoline_addr(SB), RODATA, $8 DATA ·libc_pthread_fchdir_np_trampoline_addr(SB)/8, $libc_pthread_fchdir_np_trampoline<>(SB) -TEXT libc_connectx_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_connectx(SB) -GLOBL ·libc_connectx_trampoline_addr(SB), RODATA, $8 -DATA ·libc_connectx_trampoline_addr(SB)/8, $libc_connectx_trampoline<>(SB) - TEXT libc_sendfile_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_sendfile(SB) GLOBL ·libc_sendfile_trampoline_addr(SB), RODATA, $8 @@ -758,6 +753,11 @@ TEXT libc_pwritev_trampoline<>(SB),NOSPLIT,$0-0 GLOBL ·libc_pwritev_trampoline_addr(SB), RODATA, $8 DATA ·libc_pwritev_trampoline_addr(SB)/8, $libc_pwritev_trampoline<>(SB) +TEXT libc_connectx_trampoline<>(SB),NOSPLIT,$0-0 + JMP libc_connectx(SB) +GLOBL ·libc_connectx_trampoline_addr(SB), RODATA, $8 +DATA ·libc_connectx_trampoline_addr(SB)/8, $libc_connectx_trampoline<>(SB) + TEXT libc_fstat64_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fstat64(SB) GLOBL ·libc_fstat64_trampoline_addr(SB), RODATA, $8 diff --git a/unix/zsyscall_darwin_arm64.go b/unix/zsyscall_darwin_arm64.go index e6f58f3c6f..0e22381dcd 100644 --- a/unix/zsyscall_darwin_arm64.go +++ b/unix/zsyscall_darwin_arm64.go @@ -841,26 +841,6 @@ var libc_pthread_fchdir_np_trampoline_addr uintptr // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -func connectx(fd int, endpoints *SaEndpoints, associd SaeAssocID, flags uint32, iov []Iovec, n *uintptr, connid *SaeConnID) (err error) { - var _p0 unsafe.Pointer - if len(iov) > 0 { - _p0 = unsafe.Pointer(&iov[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } - _, _, e1 := syscall_syscall9(libc_connectx_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(endpoints)), uintptr(associd), uintptr(flags), uintptr(_p0), uintptr(len(iov)), uintptr(unsafe.Pointer(n)), uintptr(unsafe.Pointer(connid)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -var libc_connectx_trampoline_addr uintptr - -//go:cgo_import_dynamic libc_connectx connectx "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error) { _, _, e1 := syscall_syscall6(libc_sendfile_trampoline_addr, uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags)) if e1 != 0 { @@ -2596,6 +2576,26 @@ var libc_pwritev_trampoline_addr uintptr // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT +func connectx(fd int, endpoints *SaEndpoints, associd SaeAssocID, flags uint32, iov []Iovec, n *uintptr, connid *SaeConnID) (err error) { + var _p0 unsafe.Pointer + if len(iov) > 0 { + _p0 = unsafe.Pointer(&iov[0]) + } else { + _p0 = unsafe.Pointer(&_zero) + } + _, _, e1 := syscall_syscall9(libc_connectx_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(endpoints)), uintptr(associd), uintptr(flags), uintptr(_p0), uintptr(len(iov)), uintptr(unsafe.Pointer(n)), uintptr(unsafe.Pointer(connid)), 0) + if e1 != 0 { + err = errnoErr(e1) + } + return +} + +var libc_connectx_trampoline_addr uintptr + +//go:cgo_import_dynamic libc_connectx connectx "/usr/lib/libSystem.B.dylib" + +// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT + func Fstat(fd int, stat *Stat_t) (err error) { _, _, e1 := syscall_syscall(libc_fstat_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) if e1 != 0 { diff --git a/unix/zsyscall_darwin_arm64.s b/unix/zsyscall_darwin_arm64.s index 7f8998b905..c055b005e1 100644 --- a/unix/zsyscall_darwin_arm64.s +++ b/unix/zsyscall_darwin_arm64.s @@ -248,11 +248,6 @@ TEXT libc_pthread_fchdir_np_trampoline<>(SB),NOSPLIT,$0-0 GLOBL ·libc_pthread_fchdir_np_trampoline_addr(SB), RODATA, $8 DATA ·libc_pthread_fchdir_np_trampoline_addr(SB)/8, $libc_pthread_fchdir_np_trampoline<>(SB) -TEXT libc_connectx_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_connectx(SB) -GLOBL ·libc_connectx_trampoline_addr(SB), RODATA, $8 -DATA ·libc_connectx_trampoline_addr(SB)/8, $libc_connectx_trampoline<>(SB) - TEXT libc_sendfile_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_sendfile(SB) GLOBL ·libc_sendfile_trampoline_addr(SB), RODATA, $8 @@ -758,6 +753,11 @@ TEXT libc_pwritev_trampoline<>(SB),NOSPLIT,$0-0 GLOBL ·libc_pwritev_trampoline_addr(SB), RODATA, $8 DATA ·libc_pwritev_trampoline_addr(SB)/8, $libc_pwritev_trampoline<>(SB) +TEXT libc_connectx_trampoline<>(SB),NOSPLIT,$0-0 + JMP libc_connectx(SB) +GLOBL ·libc_connectx_trampoline_addr(SB), RODATA, $8 +DATA ·libc_connectx_trampoline_addr(SB)/8, $libc_connectx_trampoline<>(SB) + TEXT libc_fstat_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fstat(SB) GLOBL ·libc_fstat_trampoline_addr(SB), RODATA, $8 diff --git a/unix/ztypes_darwin_amd64.go b/unix/ztypes_darwin_amd64.go index 17c53bd9b3..9a8384a1c4 100644 --- a/unix/ztypes_darwin_amd64.go +++ b/unix/ztypes_darwin_amd64.go @@ -125,11 +125,7 @@ type Radvisory_t struct { _ [4]byte } -type Fbootstraptransfer_t struct { - Offset int64 - Length uint64 - Buffer *byte -} +type Fbootstraptransfer_t _cgopackage.Incomplete type Log2phys_t struct { Flags uint32 @@ -628,8 +624,7 @@ type RtMetrics struct { Rtt uint32 Rttvar uint32 Pksent uint32 - State uint32 - Filler [3]uint32 + Filler [4]uint32 } const ( diff --git a/unix/ztypes_darwin_arm64.go b/unix/ztypes_darwin_arm64.go index 2392226a74..dddcbef329 100644 --- a/unix/ztypes_darwin_arm64.go +++ b/unix/ztypes_darwin_arm64.go @@ -125,11 +125,7 @@ type Radvisory_t struct { _ [4]byte } -type Fbootstraptransfer_t struct { - Offset int64 - Length uint64 - Buffer *byte -} +type Fbootstraptransfer_t _cgopackage.Incomplete type Log2phys_t struct { Flags uint32 @@ -628,8 +624,7 @@ type RtMetrics struct { Rtt uint32 Rttvar uint32 Pksent uint32 - State uint32 - Filler [3]uint32 + Filler [4]uint32 } const ( From ad975428d0bf95ab5bae010e559722231be73c16 Mon Sep 17 00:00:00 2001 From: Mauri de Souza Meneguzzo Date: Fri, 25 Apr 2025 18:04:48 -0300 Subject: [PATCH 2/3] add missing RTF_LLDATA and bootstraptransfer_t --- unix/types_darwin.go | 10 ++++++++++ unix/ztypes_darwin_amd64.go | 8 ++++++++ unix/ztypes_darwin_arm64.go | 8 ++++++++ 3 files changed, 26 insertions(+) diff --git a/unix/types_darwin.go b/unix/types_darwin.go index 0dd00770b3..067c87cb0a 100644 --- a/unix/types_darwin.go +++ b/unix/types_darwin.go @@ -394,3 +394,13 @@ const ( SHM_RDONLY = C.SHM_RDONLY SHM_RND = C.SHM_RND ) + +// Removed in xnu-10002.41.9 +const RTF_LLDATA = 0x400 + +// Removed in xnu-8792.41.9 +type Fbootstraptransfer_t struct { + Offset int64 + Length uint64 + Buffer *byte +} diff --git a/unix/ztypes_darwin_amd64.go b/unix/ztypes_darwin_amd64.go index 9a8384a1c4..97a619d444 100644 --- a/unix/ztypes_darwin_amd64.go +++ b/unix/ztypes_darwin_amd64.go @@ -871,3 +871,11 @@ const ( SHM_RDONLY = 0x1000 SHM_RND = 0x2000 ) + +const RTF_LLDATA = 0x400 + +type Fbootstraptransfer_t struct { + Offset int64 + Length uint64 + Buffer *byte +} diff --git a/unix/ztypes_darwin_arm64.go b/unix/ztypes_darwin_arm64.go index dddcbef329..d7923d5d84 100644 --- a/unix/ztypes_darwin_arm64.go +++ b/unix/ztypes_darwin_arm64.go @@ -871,3 +871,11 @@ const ( SHM_RDONLY = 0x1000 SHM_RND = 0x2000 ) + +const RTF_LLDATA = 0x400 + +type Fbootstraptransfer_t struct { + Offset int64 + Length uint64 + Buffer *byte +} From 2725ce5f7c38c509307557eca2d58e93a88424a0 Mon Sep 17 00:00:00 2001 From: Mauri de Souza Meneguzzo Date: Fri, 25 Apr 2025 21:51:56 -0300 Subject: [PATCH 3/3] remove previous definition of fbootstraptransfer --- unix/types_darwin.go | 2 -- unix/ztypes_darwin_amd64.go | 2 -- unix/ztypes_darwin_arm64.go | 2 -- 3 files changed, 6 deletions(-) diff --git a/unix/types_darwin.go b/unix/types_darwin.go index 067c87cb0a..9fbe1b214a 100644 --- a/unix/types_darwin.go +++ b/unix/types_darwin.go @@ -131,8 +131,6 @@ type Fstore_t C.struct_fstore type Radvisory_t C.struct_radvisory -type Fbootstraptransfer_t C.struct_fbootstraptransfer - type Log2phys_t C.struct_log2phys type Fsid C.struct_fsid diff --git a/unix/ztypes_darwin_amd64.go b/unix/ztypes_darwin_amd64.go index 97a619d444..59fbfb4b86 100644 --- a/unix/ztypes_darwin_amd64.go +++ b/unix/ztypes_darwin_amd64.go @@ -125,8 +125,6 @@ type Radvisory_t struct { _ [4]byte } -type Fbootstraptransfer_t _cgopackage.Incomplete - type Log2phys_t struct { Flags uint32 _ [16]byte diff --git a/unix/ztypes_darwin_arm64.go b/unix/ztypes_darwin_arm64.go index d7923d5d84..81a9902ad5 100644 --- a/unix/ztypes_darwin_arm64.go +++ b/unix/ztypes_darwin_arm64.go @@ -125,8 +125,6 @@ type Radvisory_t struct { _ [4]byte } -type Fbootstraptransfer_t _cgopackage.Incomplete - type Log2phys_t struct { Flags uint32 _ [16]byte