chore(deps): update rust crate libc to v0.2.189 #3

Open
renovate-bot wants to merge 1 commit from renovate/libc-0.x-lockfile into master
Member

This PR contains the following updates:

Package Type Update Change
libc dependencies patch 0.2.149 -> 0.2.189

Release Notes

rust-lang/libc (libc)

v0.2.189

Compare Source

Added
  • Emscripten: Add pthread_sigmask, sigwait, sigwaitinfo, sigtimedwait, faccessat, and pthread_kill (#​5270)
  • Linux SPARC: Enable the clone3 syscall (#​4980)
  • Solarish: Add CLOCK_PROCESS_CPUTIME_ID and CLOCK_THREAD_CPUTIME_ID (#​5274)
Deprecated
  • Deprecate CLONE_INTO_CGROUP and CLONE_CLEAR_SIGHAND. These overflow their types and will be changed to a larger size in the future. (8c6e6710458d)
Fixed
  • Musl riscv32: Rename padding fields to avoid a conflict and fix the build (2499ff0ad993)
  • NuttX: Fix wchar_t definition under Arm (#​5245)
  • Windows: Add back link names for time-related symbols (#​5300)

v0.2.188

Compare Source

Changed

These were removed in 0.2.187 because libc does not actually make Send and Sync
guarantees about DIR (or other extern types), but this caused some crates to break.
The traits are added back for now to allow time to migrate, but will be removed again
in the future; please make sure your crates are not relying on libc::DIR: Send or
libc::DIR: Sync.

v0.2.187

Compare Source

This release contains a number of improvements related to 64-bit time_t configuration.
Of note the existing RUST_LIBC_UNSTABLE_* environment variables have been replaced
with configuration options. The new way to use these is:

RUSTFLAGS='--cfg=libc_unstable_musl_v1_2_3' cargo ...
RUSTFLAGS='--cfg=libc_unstable_gnu_time_bits="64"' cargo ...

Being able to set this via RUSTFLAGS makes it easier to only apply configuration to
specific targets (and notably, not the host if build scripts are used).

There are two other notable changes:

  • The 32-bit windows-gnu targets now respect libc_unstable_gnu_time_bits

  • uClibc now supports a similar configuration option:

    RUSTFLAGS='--cfg=libc_unstable_uclibc_time64'
    

As a reminder, these options are under active development and may change in the future
(hence the "unstable" in the name). It likely that we will harmonize everything under a
single configuration option before considering them stable.

Support
  • Add support for aarch64-unknown-linux-pauthtest (#​5065)
  • Add support for new QNX targets (#​5241)
  • Better document breaking change policy and recommended usage (#​5179)
Added
  • Android: Add POSIX_SPAWN_* constants (#​5104)
  • Android: Add getpwent, setpwent, and endpwent (#​5160)
  • Android: Add preadv2 and pwritev2 (#​5157)
  • Android: Add seccomp_notif* structures (#​5224)
  • Android: Add timer_[create, delete, getoverrun, gettime, settime] (#​5108)
  • Apple: Add PROC_PIDT_SHORTBSDINFO and proc_bsdshortinfo (#​5110)
  • Apple: Add SIOC* constants from sockio.h (#​5263)
  • Apple: Add _IOR, _IOW, _IOWR (#​5264)
  • Apple: Add bpf_program and bpf_insn (#​5235)
  • Apple: Add additional kqueue constants (#​5077)
  • Apple: Update vm_statistics64 with recently added fields (#​5253)
  • Apple: add IN6_IFF_* and SIOCGIFAFLAG_IN6 (#​5239)
  • Dragonfly: Add O_*, POSIX_FADV_*, NI*, and a few other missing constants (#​5116)
  • Dragonfly: add fdatasync, dlvsym, reallocarray, qsort_r, pthread_*affinity_np, ftok, extattr_*, and dup3 (#​5116)
  • Emscripten: Add in6_pktinfo (#​5256)
  • FreeBSD: Add SOL_LOCAL (#​5185)
  • FreeBSD: Add DLT_* constants (#​5235)
  • FreeBSD: Add PROC_LOGSIGEXIT_* and PPROT_* (#​4657)
  • FreeBSD: Add SO_RERROR (#​5260)
  • FreeBSD: add IN6_IFF_*, in6_ifreq, and SIOCGIFAFLAG_IN6 (#​5239)
  • FreeBSD: add _IO* helpers from sys/ioccom.h (#​5239)
  • Glibc: Add PTHREAD_*_MUTEX_INITIALIZER_NP for riscv64 (#​5094)
  • Glibc: Add new fields to struct tcp_info (#​5215)
  • Linux: Add OPEN_TREE_NAMESPACE (#​5145)
  • Linux: Add SECCOMP_IOCTL_* constants (#​5224)
  • Linux: Add SO_DETACH_REUSEPORT_BPF (#​5081)
  • Linux: Add futex_waitv (#​5125)
  • Linux: Add constants for fsopen, fsconfig, fsmount, and fspick (#​5145)
  • Linux: Add fields to statx present since 6.16 (#​4621)
  • Linux: Add network entry API (#​5049)
  • Linux: add ifaddrmsg and rtattr (#​5234)
  • Linux: add sockaddr_iucv (#​5041)
  • MacOS: Add ENOTCAPABLE (#​4925)
  • Musl: Add renameat2 (#​5113)
  • NuttX: Add F_SETFD (#​5258)
  • NuttX: Add POLLRD* and POLLWR* constants (#​5258)
  • NuttX: Add SO_KEEPALIVE and TCP keepalive constants (#​5111)
  • NuttX: Add TCP_MAXSEG (#​5258)
  • NuttX: Add eventfd and EFD_* constants (#​5258)
  • NuttX: Add pipe2 (#​5258)
  • NuttX: Add strerror_r (#​5258)
  • NuttX: Add netinet structs and constants (#​5258)
  • NuttX: Add socket structs, functions and constants (#​5258)
  • QuRT: Add POSIX timer functions (#​5091)
  • QuRT: Add missing pthread functions from QuRT SDK headers (#​5091)
  • QuRT: Add missing unistd process and file functions (#​5091)
  • QuRT: Add mqueue subsystem (message queues, select/pselect) (#​5091)
  • Redox: Add *at and dirent functions (#​5117)
  • Solarish: Add IP TTL and IPv6 Hop Limit consts (#​5089)
  • Solarish: Add port_alert and PORT_ALERT* constants (#​5203)
  • Solarish: add AI_CANONNAME (#​5085)
  • aarch64: Add SYS_sendfile and SYS_fadvise64 constants (#​5133)
Deprecated
  • Dragonfly: Deprecate compatibility aliases CPUCTL_RSMSR and UTX_DB_LASTLOG (#​5116)
Fixed
  • breaking NetBSD: Correct ts from *const timespec to *mut timespec in _lwp_park` (#​5169)
  • breaking Linux GNU: Change overflowing PTRACE_*ET_SYSCALL_USER_DISPATCH_CONFIG constants from u8 to c_uint (#​4936)
  • Fix the soundness bug in the representation of extern types (#​5021)
  • Cygwin: fix cpuset_t typo in CPU_ZERO (#​5098)
  • Dragonfly: ABI fixes including regex offsets, ifaddrs, pthread barriers, process sizing fields, and mcontext alignment (#​5116)
  • Dragonfly: Correct values of CPUCTL_CPUID*, EV_HUP, and EV_SYSFLAGS (#​5116)
  • Emscripten: fix pthread type sizes for wasm64 (MEMORY64) (#​5156)
  • Horizon: Fix the value of POLLOUT (#​5090)
  • Linux: Correct the value of EPIOC[GS]PARAMS with nonstandard _IOC (#​5188)
  • Make VxWorks shims unsafe (#​3727)
  • NetBSD: Correct getmntinfo to link __getmntinfo13 (#​5251)
  • QNX: Fix the value of PTHREAD_MUTEX_INITIALIZER (#​5241)
  • QuRT: fix type and definition inaccuracies against SDK headers (#​5091)
  • Windows: Correctly link to 32-bit time routines on 32-bit platforms (#​5059)
  • uClibc: Fix constants accidentally removed (#​5141)
  • uclibc: Fix build issues (#​5046)
  • uclibc: Fix type of PRIO_PROCESS and friends (#​5046)
Changed
  • AIX, TeeOS: Drop unneeded -> c_void (#​5240)
  • Apple: Change AIO_LISTIO_MAX to account for changes in macOS 27 (#​5253)
  • Glibc: Update the value of MS_NOUSER (#​5215)
  • L4Re: Update definitions and test infra (#​5275)
  • Linux: Update the value of SW_MAX and SW_CNT (#​5215)
  • MacOS: Add swapped_count to vm_statistics64 (#​4926)
  • Windows: Windows-GNU now respects libc_unstable_gnu_time_bits for 64-bit time_t config (#​5062)
Removed
  • Dragonfly: Remove FreeBSD-only Elf32_Lword, ip_mreq_source, and IP_ constants (#​5116)
  • Dragonfly: Remove private VM type bindings (#​5116)
  • Linux: Remove KERN_REALROOTDEV and VM_LAPTOP_MODE (#​5177)
  • VxWorks: Remove non-user-facing (kernel) API (#​5129)
Other
  • Print config information if LIBC_BUILD_VERBOSE is set (#​5272)
  • Annotate *LAST constants as potentially changing (#​5120)
  • Annotate *MAX constants as potentially changing (#​5122)
  • BSD: Annotate ELAST constants as potentially changing (#​5118)
  • FreeBSD: Annotate RAND_MAX as potentially changing (#​5119)
  • Linux, L4re: Annotate *NUM constants as potentially changing (#​5123)
  • QNX: Restructure to support new platforms (#​4984)
  • Unix: Annotate *COUNT constants as potentially changing (#​5121)
  • uClibc: Add unstable support of 64-bit time_t (#​5046)
  • (internal) FreeBSD: Replace unstable env to set version with an unstable cfg (#​5201)
  • (internal) Glibc: Remove public configuration for file offset bits (#​5268)
  • (internal) Linux: Delete config via RUST_LIBC_UNSTABLE_LINUX_TIME_BITS64 (#​5197)
  • (internal) Replace RUST_LIBC_UNSTABLE env with libc_unstable* cfg (#​4977)

v0.2.186

Compare Source

Added
  • Apple: Add KEVENT_FLAG_* constants (#​5070)
  • Linux: Add PR_SET_MEMORY_MERGE and PR_GET_MEMORY_MERGE (#​5060)
Changed
  • CI: Migrate FreeBSD CI from Cirrus CI to GitHub Actions (#​5058)

v0.2.185

Compare Source

Added
  • EspIDF: Add espidf_picolibc cfg for picolibc O_* flag values (#​5035)
  • Hexagon: add missing constants and fix types for linux-musl (#​5042)
  • Redox: Add semaphore functions (#​5051)
  • Windows: Add sprintf, snprintf, and the scanf family (#​5024)
Fixed
  • Hexagon: Decouple time64 types from musl symbol redirects (#​5040)
  • Horizon: Change POLL constants from c_short to c_int (#​5045)

v0.2.184

Compare Source

MSRV

This release increases the MSRV of libc to 1.65. With this update, you can now always use the
core::ffi::c_* types with libc definitions, since libc has been changed to reexport from
core rather than redefining them. (This usually worked before but had edge cases.)
(#​4972)

Added
  • BSD: Add IP_MINTTL to bsd (#​5026)
  • Cygwin: Add TIOCM_DSR (#​5031)
  • FreeBSD: Added xfile structe and file descriptor types (#​5002)
  • Linux: Add CAN netlink bindings (#​5011)
  • Linux: Add struct ethhdr (#​4239)
  • Linux: Add struct ifinfomsg (#​5012)
  • Linux: Define max_align_t for riscv64 (#​5029)
  • NetBSD: Add missing CLOCK_ constants (#​5020)
  • NuttX: Add _SC_HOST_NAME_MAX (#​5004)
  • VxWorks: Add flock and F_*LCK constants (#​4043)
  • WASI: Add all _SC_* sysconf constants (#​5023)
Deprecated

The remaining fixed-width integer aliases, __uint128_t, __uint128, __int128_t, and __int128,
have been deprecated. Use i128 and u128 instead. (#​4343)

Fixed
  • breaking Redox: Fix signal action constant types (#​5009)
  • EspIDF: Correct the value of DT_* constants (#​5034)
  • Redox: Fix locale values and add RTLD_NOLOAD, some TCP constants (#​5025)
  • Various: Use Padding::new(<zeroed>) rather than Padding::uninit() (#​5036)
Changed
  • potentially breaking Linux: Add new fields to struct ptrace_syscall_info (#​4966)
  • Re-export core::ffi integer types rather than redefining (#​5015)
  • Redox: Update F_DUPFD, IP, and TCP constants to match relibc (#​4990)

v0.2.183

Compare Source

Added
  • ESP-IDF: Add SOMAXCONN (#​4993)
  • Linux: Add name_to_handle_at and open_by_handle_at (#​4988)
  • NetBSD: Add kinfo_file, kinfo_pcb, and related constants (#​4985)
  • OpenBSD: Add kinfo_file and related constants (#​4991)
  • VxWorks: Add additional structs and defines (#​5003)
  • Various: Implement Default for timeval and timespec (#​4976)
Fixed
  • Hexagon musl: Enable unstable 64-bit time_t support and musl_v1_2_3 (#​4992)
  • Nintendo Switch: Fix target support (#​4982)
  • OpenBSD: Wrap an unused field in Padding (#​4997)
  • Redox: Change sigaction.sa_flags to c_int (#​4986)
  • Redox: Fix blkcnt_t type (#​4994)

v0.2.182

Compare Source

Added

v0.2.181

Compare Source

Added
  • Apple: Add MADV_ZERO (#​4924)
  • Redox: Add makedev, major, and minor (#​4928)
  • GLibc: Add PTRACE_SET_SYSCALL_INFO (#​4933)
  • OpenBSD: Add more kqueue related constants for (#​4945)
  • Linux: add CAN error types (#​4944)
  • OpenBSD: Add siginfo_t::si_status (#​4946)
  • QNX NTO: Add max_align_t (#​4927)
  • Illumos: Add _CS_PATH (#​4956)
  • OpenBSD: add ppoll (#​4957)
Fixed
  • Breaking: Redox: Fix the type of dev_t (#​4928)
  • AIX: Change 'tv_nsec' of 'struct timespec' to type 'c_long' (#​4931)
  • AIX: Use 'struct st_timespec' in 'struct stat{,64}' (#​4931)
  • Glibc: Link old version of tc{g,s}etattr (#​4938)
  • Glibc: Link the correct version of cf{g,s}et{i,o}speed on mips{32,64}r6 (#​4938)
  • OpenBSD: Fix constness of tm.tm_zone (#​4948)
  • OpenBSD: Fix the definition of ptrace_thread_state (#​4947)
  • QuRT: Fix type visibility and defs (#​4932)
  • Redox: Fix values for PTHREAD_MUTEX_{NORMAL, RECURSIVE} (#​4943)
  • Various: Mark additional fields as private padding (#​4922)
Changed
  • Fuchsia: Update SO_* constants (#​4937)
  • Revert "musl: convert inline timespecs to timespec" (resolves build issues on targets only supported by Musl 1.2.3+ ) (#​4958)

v0.2.180

Compare Source

Added
  • QNX: Add missing BPF and ifreq structures (#​4769)
Fixed
  • Linux, L4Re: address soundness issues of CMSG_NXTHDR (#​4903)
  • Linux-like: Handle zero-sized payload differences in CMSG_NXTHDR (#​4903)
  • Musl: Fix incorrect definitions of struct stat on some 32-bit architectures (#​4914)
  • NetBSD: RISC-V 64: Correct mcontext type definitions (#​4886)
  • uClibc: Re-enable __SIZEOF_PTHREAD_COND_T on non-L4Re uclibc (#​4915)
  • uClibc: Restructure Linux netlink module to resolve build errors (#​4915)

v0.2.179

Compare Source

With this release, we now have unstable support for 64-bit time_t on 32-bit
platforms with both Musl and Glibc. Testing is appreciated!

For now, these can be enabled by setting environment variables during build:

RUST_LIBC_UNSTABLE_MUSL_V1_2_3=1
RUST_LIBC_UNSTABLE_GNU_TIME_BITS=64

Note that the exact configuration will change in the future. Setting the
MUSL_V1_2_3 variable also enables some newer API unrelated to time_t.

Added
  • L4Re: Add uclibc aarch64 support (#​4479)
  • Linux, Android: Add a generic definition for XCASE (#​4847)
  • Linux-like: Add NAME_MAX (#​4888)
  • Linux: Add AT_EXECVE_CHECK (#​4422)
  • Linux: Add the SUN_LEN macro (#​4269)
  • Linux: add getitimer and setitimer (#​4890)
  • Linux: add pthread_tryjoin_n and pthread_timedjoin_np (#​4887)
  • Musl: Add unstable support for 64-bit time_t on 32-bit platforms (#​4463)
  • NetBSD, OpenBSD: Add interface LINK_STATE_* definitions from sys/net/if.h (#​4751)
  • QuRT: Add support for Qualcomm QuRT (#​4845)
  • Types: Add Padding::uninit() (#​4862)
Fixed
  • Glibc: Link old version of cf{g,s}et{i,o}speed (#​4882)
  • L4Re: Fixes for pthread (#​4479)
  • L4re: Fix a wide variety of incorrect definitions (#​4479)
  • Musl: Fix the value of CPU_SETSIZE on musl 1.2+ (#​4865)
  • Musl: RISC-V: fix public padding fields in stat/stat64 (#​4463)
  • Musl: s390x: Fix definition of SIGSTKSZ/MINSIGSTKSZ (#​4884)
  • NetBSD: Arm: Fix PT_{GET,SET}FPREGS, _REG_TIPDR, and _REG_{LR,SP} (#​4899)
  • NetBSD: Fix if_msghdr alignment (#​4902)
  • NetBSD: Fix siginfo_t layout on 32-bit platforms (#​4904)
  • NetBSD: change definition of pthread_spin_t to allow arch redefinition. (#​4899)
  • Newlib: Fix ambiguous glob exports and other warnings for Vita and 3DS (#​4875)
  • QNX: Fix build error (#​4879)
Changed
  • CI: Update CI images to FreeBSD 15.0-release (#​4857)
  • L4Re: Make pthread struct fields private (#​4876)
  • Linux, Fuchsia: Mark mq_attr padding area as such (#​4858)
  • Types: Wrap a number of private fields in the Padding type (#​4862)
Removed
  • Build: Remove RUST_LIBC_UNSTABLE_LINUX_TIME_BITS64 (#​4865)
  • WASI: Remove nonexistent clocks (#​4880)

v0.2.178

Compare Source

Added
  • BSD: Add issetugid (#​4744)
  • Cygwin: Add missing utmp/x.h, grp.h, and stdio.h interfaces (#​4827)
  • Linux s390x musl: Add __psw_t/fprefset_t/*context_t (#​4726)
  • Linux, Android: Add definition for IUCLC (#​4846)
  • Linux, FreeBSD: Add AT_HWCAP{3,4} (#​4734)
  • Linux: Add definitions from linux/can/bcm.h (#​4683)
  • Linux: Add syscalls 451-469 for m68k (#​4850)
  • Linux: PowerPC: Add 'ucontext.h' definitions (#​4696)
  • NetBSD: Define eventfd (#​4830)
  • Newlib: Add missing constants from unistd.h (#​4811)
  • QNX NTO: Add cfmakeraw (#​4704)
  • QNX NTO: Add cfsetspeed (#​4704)
  • Redox: Add getresgid and getresuid (#​4752)
  • Redox: Add setresgid and setresuid (#​4752)
  • VxWorks: Add definitions from select.h, stat.h, poll.h, ttycom.h, utsname.h, resource.h, mman.h, udp.h, in.h, in6.h, if.h, fnmatch.h, and sioLibCommon.h (#​4781)
  • VxWorks: Add missing defines/functions needed by rust stdlib (#​4779)
  • WASI: Add more definitions for libstd (#​4747)
Deprecated:
  • Apple: Deprecate TIOCREMOTE (#​4764)
Fixed:

Note that there were a large number of fixes on NetBSD for this libc release, some of which include minor breakage.

  • AIX: Change errno EWOULDBLOCK to make it an alias of EAGAIN (#​4790)
  • AIX: Resolve function comparison and unnecessary_transmutes warnings (#​4780)
  • Apple: Correct the value of SF_SETTABLE (#​4764)
  • DragonflyBSD: Fix the type of mcontext_t.mc_fpregs (#)
  • EspIDF: Fix the duplicate definition of gethostname (#​4773)
  • L4Re: Update available pthread API (#​4836)
  • Linux: Correct the value of NFT_MSG_MAX (#​4761)
  • Linux: Remove incorrect repr(align(8)) for canxl_frame (#​4760)
  • Make eventfd argument names match OS docs/headers (#​4830)
  • NetBSD: Account for upstream changes to ptrace with LWP (#​4782)
  • NetBSD: Correct ipc_perm, split from OpenBSD as ipc.rs (#​4782)
  • NetBSD: Correct a number of symbol link names (#​4782)
  • NetBSD: Correct the type of kinfo_vmentry.kve_path (#)
  • NetBSD: Fix uucred.cr_ngroups from int to short (#​4782)
  • NetBSD: Fix the type of kevent.udata (#​4782)
  • NetBSD: Fix the type of mcontext_t.__fpregs (#​4782)
  • NetBSD: Fix the value of PT_SUSPEND (#​4782)
  • NetBSD: Fix the values of FNM_* constants (#​4782)
  • NetBSD: Increase the size of sockaddr_dl.sdl_data from 12 to 24 (#​4782)
  • NetBSD: Introduce if_.rs, fix the definition of ifreq (#​4782)
  • NetBSD: Introduce time.rs, fix the values of CLOCK_*_CPUTIME_ID (#​4782)
  • NetBSD: Introduce timex.rs (#​4782)
  • NetBSD: Introduce types.rs, correct the definition of lwpid_t (#​4782)
  • NetBSD: Introduce utmp_.rs, correct the definition of lastlog (#​4782)
  • NetBSD: Introduce utmpx_.rs, correct utmpx definitions (#​4782)
  • NetBSD: Make _cpuset an extern type (#​4782)
  • NetBSD: RISC-V 64: Fix the mcontext types (#​4782)
  • Nuttx: Resolve warnings (#​4773)
  • OHOS: Don't emit duplicate lfs64 definitions (#​4804)
  • Redox: Fix the type of pid_t (#​4825)
  • WASI: Gate __wasilibc_register_preopened_fd (#​4837)
  • Wali: Fix unknown config (#​4773)
Changed
  • AIX: Declare field 'tv_nsec' of structure 'timespec' as 'i32' in both 32-bit and 64-bit modes (#​4750)
  • DragonFly: Avoid usage of thread_local (#​3653)
  • Linux: Update the definition for ucontext_t and unskip its tests (#​4760)
  • MinGW: Set L_tmpnam and TMP_MAX to the UCRT value (#​4566)
  • WASI: More closely align pthread type reprs (#​4747)
  • Simplify rustc-check-cfg emission in build.rs (#​4724)
  • Transition a number of definitions to the new source structure (internal change)
Removed
  • MIPS Musl: Remove rogue definition of SIGSTKFLT (#​4749)
  • NetBSD: Make statvfs.f_spare non-public (#​4782)
  • NetBSD: Remove BPF constants (#​4782)
  • NetBSD: Remove *_MAXID constants and AT_SUN_LDPGSIZE (#​4782)
  • NetBSD: Remove IFF_NOTRAILERS (#​4782)
  • NetBSD: Remove vm_size_t (#​4782)
  • NetBSD: Replace REG_ENOSYS with REG_ILLSEQ (#​4782)

v0.2.177

Compare Source

Added
  • Apple: Add TIOCGETA, TIOCSETA, TIOCSETAW, TIOCSETAF constants (#​4736)
  • Apple: Add pthread_cond_timedwait_relative_np (#​4719)
  • BSDs: Add _CS_PATH constant (#​4738)
  • Linux-like: Add SIGEMT for mips* and sparc* architectures (#​4730)
  • OpenBSD: Add elf_aux_info (#​4729)
  • Redox: Add more sysconf constants (#​4728)
  • Windows: Add wcsnlen (#​4721)
Changed
  • WASIP2: Invert conditional to include p2 APIs (#​4733)

v0.2.176

Compare Source

Support
  • The default FreeBSD version has been raised from 11 to 12. This matches rustc since 1.78. (#​2406)
  • Debug is now always implemented, rather than being gated behind the extra_traits feature. (#​4624)
Added
  • AIX: Restore some non-POSIX functions guarded by the _KERNEL macro. (#​4607)
  • FreeBSD 14: Add st_fileref to struct stat (#​4642)
  • Haiku: Add the accept4 POSIX call (#​4586)
  • Introduce a wrapper for representing padding (#​4632)
  • Linux: Add EM_RISCV (#​4659)
  • Linux: Add MS_NOSYMFOLLOW (#​4389)
  • Linux: Add backtrace_symbols(_fd) (#​4668)
  • Linux: Add missing SOL_PACKET optnames (#​4669)
  • Musl s390x: Add SYS_mseal (#​4549)
  • NuttX: Add __errno (#​4687)
  • Redox: Add dirfd, VDISABLE, and resource consts (#​4660)
  • Redox: Add more resource.h, fcntl.h constants (#​4666)
  • Redox: Enable strftime and mkostemp[s] (#​4629)
  • Unix, Windows: Add qsort_r (Unix), and qsort(_s) (Windows) (#​4677)
  • Unix: Add dlvsym for Linux-gnu, FreeBSD, and NetBSD (#​4671)
  • Unix: Add sigqueue (#​4620)
Changed
  • FreeBSD 15: Mark kinfo_proc as non-exhaustive (#​4553)
  • FreeBSD: Set the ELF symbol version for readdir_r (#​4694)
  • Linux: Correct the config for whether or not epoll_event is packed (#​4639)
  • Tests: Replace the old ctest with the much more reliable new implementation (#​4655 and many related PRs)
Fixed
  • AIX: Fix the type of the 4th arguement of getgrnam_r ([#​4656](#​4656
  • FreeBSD: Limit P_IDLEPROC to FreeBSD 15 (#​4640)
  • FreeBSD: Limit mcontext_t::mc_tlsbase to FreeBSD 15 (#​4640)
  • FreeBSD: Update gating of mcontext_t.mc_tlsbase (#​4703)
  • Musl s390x: Correct the definition of statfs[64] (#​4549)
  • Musl s390x: Make fpreg_t a union (#​4549)
  • Redox: Fix the types of gid_t and uid_t (#​4689)
  • Redox: Fix the value of MAP_FIXED (#​4684)
Deprecated
  • Apple: Correct the deprecated attribute for iconv (a97a0b53)
  • FreeBSD: Deprecate TIOCMGDTRWAIT and TIOCMSDTRWAIT (#​4685)
Removed
  • FreeBSD: Remove JAIL_{GET,SET}_MASK, _MC_FLAG_MASK (#​4691)

v0.2.175

Compare Source

Added
  • AIX: Add getpeereid (#​4524)
  • AIX: Add struct ld_info and friends (#​4578)
  • AIX: Retore struct winsize (#​4577)
  • Android: Add UDP socket option constants (#​4619)
  • Android: Add CLONE_CLEAR_SIGHAND and CLONE_INTO_CGROUP (#​4502)
  • Android: Add more prctl constants (#​4531)
  • FreeBSD Add further TCP stack-related constants (#​4196)
  • FreeBSD x86-64: Add mcontext_t.mc_tlsbase (#​4503)
  • FreeBSD15: Add kinfo_proc.ki_uerrmsg (#​4552)
  • FreeBSD: Add in_conninfo (#​4482)
  • FreeBSD: Add xinpgen and related types (#​4482)
  • FreeBSD: Add xktls_session (#​4482)
  • Haiku: Add functionality from libbsd (#​4221)
  • Linux: Add SECBIT_* (#​4480)
  • NetBSD, OpenBSD: Export ioctl request generator macros (#​4460)
  • NetBSD: Add ptsname_r (#​4608)
  • RISCV32: Add time-related syscalls (#​4612)
  • Solarish: Add strftime* (#​4453)
  • linux: Add EXEC_RESTRICT_* and EXEC_DENY_* (#​4545)
Changed
  • AIX: Add const to signatures to be consistent with other platforms (#​4563)
Fixed
  • AIX: Fix the type of struct statvfs.f_fsid (#​4576)
  • AIX: Fix the type of constants for the ioctl request argument (#​4582)
  • AIX: Fix the types of stat{,64}.st_*tim (#​4597)
  • AIX: Use unique errno values (#​4507)
  • Build: Fix an incorrect target_os -> target_arch check (#​4550)
  • FreeBSD: Fix the type of xktls_session_onedir.ifnet (#​4552)
  • Mips64 musl: Fix the type of nlink_t (#​4509)
  • Mips64 musl: Use a special MIPS definition of stack_t (#​4528)
  • Mips64: Fix SI_TIMER, SI_MESGQ and SI_ASYNCIO definitions (#​4529)
  • Musl Mips64: Swap the order of si_errno and si_code in siginfo_t (#​4530)
  • Musl Mips64: Use a special MIPS definition of statfs (#​4527)
  • Musl: Fix the definition of fanotify_event_metadata (#​4510)
  • NetBSD: Correct enum fae_action to be #[repr(C)] (#​60a8cfd5)
  • PSP: Correct char -> c_char (eaab4fc3)
  • PowerPC musl: Fix termios definitions (#​4518)
  • PowerPC musl: Fix the definition of EDEADLK (#​4517)
  • PowerPC musl: Fix the definition of NCCS (#​4513)
  • PowerPC musl: Fix the definitions of MAP_LOCKED and MAP_NORESERVE (#​4516)
  • PowerPC64 musl: Fix the definition of shmid_ds (#​4519)
Deprecated
  • Linux: MAP_32BIT is only defined on x86 on non-x86 architectures (#​4511)
Removed
  • AIX: Remove duplicate constant definitions FIND and ENTER (#​4588)
  • s390x musl: Remove O_FSYNC (#​4515)
  • s390x musl: Remove RTLD_DEEPBIND (#​4515)

v0.2.174

Compare Source

Added
  • Linux: Make pidfd_info fields pub (#​4487)
Fixed
  • Gnu x32: Add missing timespec.tv_nsec (#​4497)
  • NuttX: Use nlink_t type for st_nlink in struct stat definition (#​4483)
Other
  • Allow new unpredictable_function_pointer_comparisons lints (#​4489)
  • OpenBSD: Fix some clippy warnings to use pointer::cast. (#​4490)
  • Remove unessecary semicolons from definitions of CMSG_NXTHDR. (#​4492)

v0.2.173

Compare Source

Added
  • AIX: Add an AIX triple to Cargo.toml for doc (#​4475)
  • FreeBSD: Add the SO_SPLICE socket option support for FreeBSD >= 14.2 (#​4451)
  • Linux GNU: Prepare for supporting _TIME_BITS=64 (#​4433)
  • Linux: Add constant PACKET_IGNORE_OUTGOING (#​4319)
  • Linux: Add constants and types for nsfs ioctls (#​4436)
  • Linux: Add constants for Memory-Deny-Write-Execute prctls (#​4400)
  • Linux: Add constants from linux/cn_proc.h and linux/connector.h (#​4434)
  • Linux: Add new flags for pwritev2 and preadv2 (#​4452)
  • Linux: Add pid_type enum values (#​4403)
  • Linux: Update pidfd constants and types (Linux 6.9-6.15) (#​4402)
  • Loongarch64 musl: Define the MADV_SOFT_OFFLINE constant (#​4448)
  • Musl: Add new fields since 1.2.0/1.2.2 to struct tcp_info (#​4443)
  • Musl: Prepare for supporting v1.2.3 (#​4443)
  • NuttX: Add arc4random and arc4random_buf (#​4464)
  • RISC-V Musl: Add MADV_SOFT_OFFLINE definition (#​4447)
  • Redox: Define SCM_RIGHTS (#​4440)
  • VxWorks: Add missing UTIME defines and TASK_RENAME_LENGTH (#​4407)
  • Windows: Add more time.h functions (#​4427)
Changed
  • Redox: Update SA_ constants. (#​4426)
  • Redox: make CMSG_ALIGN, CMSG_LEN, and CMSG_SPACE const functions (#​4441)
Fixed
  • AIX: Enable libc-test and fix definitions/declarations. (#​4450)
  • Emscripten: Fix querying emcc on windows (use emcc.bat) (#​4248)
  • Hurd: Fix build from missing fpos_t (#​4472)
  • Loongarch64 Musl: Fix the struct ipc_perm bindings (#​4384)
  • Musl: Fix the O_LARGEFILE constant value. (#​4443)

v0.2.172

Compare Source

Added
  • Android: Add getauxval for 32-bit targets (#​4338)
  • Android: Add if_tun.h ioctls (#​4379)
  • Android: Define SO_BINDTOIFINDEX (#​4391)
  • Cygwin: Add posix_spawn_file_actions_add[f]chdir[_np] (#​4387)
  • Cygwin: Add new socket options (#​4350)
  • Cygwin: Add statfs & fcntl (#​4321)
  • FreeBSD: Add filedesc and fdescenttbl (#​4327)
  • Glibc: Add unstable support for _FILE_OFFSET_BITS=64 (#​4345)
  • Hermit: Add AF_UNSPEC (#​4344)
  • Hermit: Add AF_VSOCK (#​4344)
  • Illumos, NetBSD: Add timerfd APIs (#​4333)
  • Linux: Add _IO, _IOW, _IOR, _IOWR to the exported API (#​4325)
  • Linux: Add tcp_info to uClibc bindings (#​4347)
  • Linux: Add further BPF program flags (#​4356)
  • Linux: Add missing INPUT_PROP_XXX flags from input-event-codes.h (#​4326)
  • Linux: Add missing TLS bindings (#​4296)
  • Linux: Add more constants from seccomp.h (#​4330)
  • Linux: Add more glibc ptrace_sud_config and related PTRACE_*ET_SYSCALL_USER_DISPATCH_CONFIG. (#​4386)
  • Linux: Add new netlink flags (#​4288)
  • Linux: Define ioctl codes on more architectures (#​4382)
  • Linux: Add missing pthread_attr_setstack (#​4349)
  • Musl: Add missing utmpx API (#​4332)
  • Musl: Enable getrandom on all platforms (#​4346)
  • NuttX: Add more signal constants (#​4353)
  • QNX: Add QNX 7.1-iosock and 8.0 to list of additional cfgs (#​4169)
  • QNX: Add support for alternative Neutrino network stack io-sock (#​4169)
  • Redox: Add more sys/socket.h and sys/uio.h definitions (#​4388)
  • Solaris: Temporarily define O_DIRECT and SIGINFO (#​4348)
  • Solarish: Add secure_getenv (#​4342)
  • VxWorks: Add missing d_type member to dirent (#​4352)
  • VxWorks: Add missing signal-related constsants (#​4352)
  • VxWorks: Add more error codes (#​4337)
Deprecated
  • FreeBSD: Deprecate TCP_PCAP_OUT and TCP_PCAP_IN (#​4381)
Fixed
  • Cygwin: Fix member types of statfs (#​4324)
  • Cygwin: Fix tests (#​4357)
  • Hermit: Make AF_INET = 3 (#​4344)
  • Musl: Fix the syscall table on RISC-V-32 (#​4335)
  • Musl: Fix the value of SA_ONSTACK on RISC-V-32 (#​4335)
  • VxWorks: Fix a typo in the waitpid parameter name (#​4334)
Removed
  • Musl: Remove O_FSYNC on RISC-V-32 (use O_SYNC instead) (#​4335)
  • Musl: Remove RTLD_DEEPBIND on RISC-V-32 (#​4335)
Other
  • CI: Add matrix env variables to the environment (#​4345)
  • CI: Always deny warnings (#​4363)
  • CI: Always upload successfully created artifacts (#​4345)
  • CI: Install musl from source for loongarch64 (#​4320)
  • CI: Revert "Also skip MFD_EXEC and MFD_NOEXEC_SEAL on sparc64" (#)
  • CI: Use $PWD instead of $(pwd) in run-docker (#​4345)
  • Solarish: Restrict openpty and forkpty polyfills to Illumos, replace Solaris implementation with bindings (#​4329)
  • Testing: Ensure the makedev test does not emit unused errors (#​4363)

v0.2.171

Compare Source

Added
  • Android: Add if_nameindex/if_freenameindex support (#​4247)
  • Apple: Add missing proc types and constants (#​4310)
  • BSD: Add devname (#​4285)
  • Cygwin: Add PTY and group API (#​4309)
  • Cygwin: Add support (#​4279)
  • FreeBSD: Make spawn.h interfaces available on all FreeBSD-like systems (#​4294)
  • Linux: Add AF_XDP structs for all Linux environments (#​4163)
  • Linux: Add SysV semaphore constants (#​4286)
  • Linux: Add F_SEAL_EXEC (#​4316)
  • Linux: Add SO_PREFER_BUSY_POLL and SO_BUSY_POLL_BUDGET (#​3917)
  • Linux: Add devmem structs (#​4299)
  • Linux: Add socket constants up to SO_DEVMEM_DONTNEED (#​4299)
  • NetBSD, OpenBSD, DragonflyBSD: Add closefrom (#​4290)
  • NuttX: Add pw_passwd field to passwd (#​4222)
  • Solarish: define IP_BOUND_IF and IPV6_BOUND_IF (#​4287)
  • Wali: Add bindings for wasm32-wali-linux-musl target (#​4244)
Changed
  • AIX: Use sa_sigaction instead of a union (#​4250)
  • Make msqid_ds.__msg_cbytes public (#​4301)
  • Unix: Make all major, minor, makedev into const fn (#​4208)
Deprecated
  • Linux: Deprecate obsolete packet filter interfaces (#​4267)
Fixed
  • Cygwin: Fix strerror_r (#​4308)
  • Cygwin: Fix usage of f! (#​4308)
  • Hermit: Make stat::st_size signed (#​4298)
  • Linux: Correct values for SI_TIMER, SI_MESGQ, SI_ASYNCIO (#​4292)
  • NuttX: Update tm_zone and d_name fields to use c_char type (#​4222)
  • Xous: Include the prelude to define c_int (#​4304)
Other
Removed
  • NuttX: Remove pthread_set_name_np (#​4251)

v0.2.170

Compare Source

Added
  • Android: Declare setdomainname and getdomainname #​4212
  • FreeBSD: Add evdev structures #​3756
  • FreeBSD: Add the new st_filerev field to stat32 (#​4254)
  • Linux: Add SI_*`` and TRAP_*`` signal codes #​4225
  • Linux: Add experimental configuration to enable 64-bit time in kernel APIs, set by RUST_LIBC_UNSTABLE_LINUX_TIME_BITS64. #​4148
  • Linux: Add recent socket timestamping flags #​4273
  • Linux: Added new CANFD_FDF flag for the flags field of canfd_frame #​4223
  • Musl: add CLONE_NEWTIME #​4226
  • Solarish: add the posix_spawn family of functions #​4259
Deprecated
  • Linux: deprecate kernel modules syscalls #​4228
Changed
  • Emscripten: Assume version is at least 3.1.42 #​4243
Fixed
  • BSD: Correct the definition of WEXITSTATUS #​4213
  • Hurd: Fix CMSG_DATA on 64bit systems (#​4240)
  • NetBSD: fix getmntinfo (#​4265
  • VxWorks: Fix the size of time_t #​426
Other
  • Add labels to FIXMEs #​4230, #​4229, #​4237
  • CI: Bump FreeBSD CI to 13.4 and 14.2 #​4260
  • Copy definitions from core::ffi and centralize them #​4256
  • Define c_char at top-level and remove per-target c_char definitions #​4202
  • Port style.rs to syn and add tests for the style checker #​4220

v0.2.169

Compare Source

Added
  • FreeBSD: add more socket TCP stack constants #​4193
  • Fuchsia: add a sockaddr_vm definition #​4194
Fixed

Breaking: rust-lang/rust#132975 corrected the signedness of core::ffi::c_char on various Tier 2 and Tier 3 platforms (mostly Arm and RISC-V) to match Clang. This release contains the corresponding changes to libc, including the following specific pull requests:

  • ESP-IDF: Replace arch-conditional c_char with a reexport #​4195
  • Fix c_char on various targets #​4199
  • Mirror c_char configuration from rust-lang/rust #​4198
Cleanup
  • Do not re-export c_void in target-specific code #​4200

v0.2.168

Compare Source

Added
  • Linux: Add new process flags (#​4174)
  • Linux: Make IFA_* constants available on all Linux targets #​4185
  • Linux: add MAP_DROPPABLE #​4173
  • Solaris, Illumos: add SIGRTMIN and SIGRTMAX #​4171
  • Unix, Linux: adding POSIX memccpy and mempcpy GNU extension <#​4186.
Deprecated
  • FreeBSD: Deprecate the CAP_UNUSED* and CAP_ALL* constants (#​4183)
Fixed
  • Make the Debug implementation for unions opaque (#​4176)
Other
  • Allow the unpredictable_function_pointer_comparisons lint where needed #​4177
  • CI: Upload artifacts created by libc-test #​4180
  • CI: Use workflow commands to group output by target #​4179
  • CI: add caching #​4183

v0.2.167

Compare Source

Added
  • Solarish: add st_fstype to stat #​4145
  • Trusty: Add intptr_t and uintptr_t (#​4161)
Fixed
  • Fix the build with rustc-dep-of-std #​4158
  • Wasi: Add back unsafe block for clockid_t static variables (#​4157)
Cleanup
Other
  • CI: Check various FreeBSD versions (#​4159)
  • CI: add a timeout for all jobs #​4164
  • CI: verify MSRV for wasm32-wasi #​4157
  • Migrate to the 2021 edition #​4132
Removed
  • Remove one unused import after the edition 2021 bump

v0.2.166

Compare Source

Fixed

This release resolves two cases of unintentional breakage from the previous release:

  • Revert removal of array size hacks #​4150
  • Ensure const extern functions are always enabled #​4151

v0.2.165

Compare Source

Added
  • Android: add mkostemp, mkostemps #​3601
  • Android: add a few API 30 calls #​3604
  • Android: add missing syscall constants #​3558
  • Apple: add in6_ifreq #​3617
  • Apple: add missing sysctl net types #​4022 (before release: remove if_family_id (#​4137))
  • Freebsd: add kcmp call support #​3746
  • Hurd: add MAP_32BIT and MAP_EXCL #​4127
  • Hurd: add domainname field to utsname (#​4089)
  • Linux GNU: add f_flags to struct statfs for arm, mips, powerpc and x86 #​3663
  • Linux GNU: add malloc_stats #​3596
  • Linux: add ELF relocation-related structs #​3583
  • Linux: add ptp_* structs #​4113
  • Linux: add ptp_clock_caps #​4128
  • Linux: add ptp_pin_function and most PTP_ constants #​4114
  • Linux: add missing AF_XDP structs & constants #​3956
  • Linux: add missing netfilter consts (#​3734)
  • Linux: add struct and constants for the mount_setattr syscall #​4046
  • Linux: add wireless API #​3441
  • Linux: expose the len8_dlc field of can_frame #​3357
  • Musl: add utmpx API #​3213
  • Musl: add missing syscall constants #​4028
  • NetBSD: add mcontext-related data for RISCV64 #​3468
  • Redox: add new netinet constants #​3586)
  • Solarish: add _POSIX_VDISABLE (#​4103)
  • Tests: Add a test that the const extern fn macro works #​4134
  • Tests: Add test of primitive types against std #​3616
  • Unix: Add htonl, htons, ntohl, ntohs #​3669
  • Unix: add aligned_alloc #​3843
  • Windows: add aligned_realloc #​3592
Fixed
  • breaking Hurd: fix MAP_HASSEMAPHORE name (#​4127)
  • breaking ulibc Mips: fix SA_* mismatched types (#​3211)
  • Aix: fix an enum FFI safety warning #​3644
  • Haiku: fix some typos (#​3664)
  • Tests: fix Elf{32,64}_Relr-related tests #​3647
  • Tests: fix libc-tests for loongarch64-linux-musl
  • Tests: fix some clippy warnings #​3855
  • Tests: fix tests on riscv64gc-unknown-freebsd #​4129
Deprecated
  • Apple: deprecate iconv_open 25e022a
  • Apple: deprecate mach_task_self #​4095
  • Apple: update mach deprecation notices for things that were removed in main #​4097
Cleanup
  • Adjust the f! macro to be more flexible #​4107
  • Aix: remove duplicate constants #​3643
  • CI: make scripts more uniform #​4042
  • Drop the libc_align conditional b5b553d
  • Drop the libc_cfg_target_vendor conditional #​4060
  • Drop the libc_const_size_of conditional 5a43dd2
  • Drop the libc_core_cvoid conditional #​4060
  • Drop the libc_int128 conditional #​4060
  • Drop the libc_non_exhaustive conditional #​4060
  • Drop the libc_packedN conditional #​4060
  • Drop the libc_priv_mod_use conditional 19c5937
  • Drop the libc_union conditional b9e4d80
  • Drop the long_array conditional #​4096
  • Drop the ptr_addr_of conditional #​4065
  • Drop warnings about deprecated cargo features #​4060
  • Eliminate uses of struct_formatter #​4074
  • Fix a few other array size hacks d63be8b
  • Glibc: remove redundant definitions (#​3261)
  • Musl: remove redundant definitions (#​3261)
  • Musl: unify definitions of siginfo_t (#​3261)
  • Musl: unify definitions of statfs and statfs64 (#​3261)
  • Musl: unify definitions of statvfs and statvfs64 (#​3261)
  • Musl: unify statx definitions (#​3978)
  • Remove array size hacks for Rust < 1.47 27ee6fe
  • Remove repetitive words 77de375
  • Use #[derive] for Copy/Clone in s! and friends #​4038
  • Use some tricks to format macro bodies #​4107
Other
  • Apply formatting to macro bodies #​4107
  • Bump libc-test to Rust 2021 Edition #​3905
  • CI: Add a check that semver files don't contain duplicate entries #​4087
  • CI: Add fanotify_event_info_fid to FAM-exempt types #​4038
  • CI: Allow rustfmt to organize imports (#​4136)
  • CI: Always run rustfmt #​4120
  • CI: Change 32-bit Docker images to use EOL repos #​4120
  • CI: Change 64-bit Docker images to ubuntu:24.10 #​4120
  • CI: Disable the check for >1 s! invocation #​4107
  • CI: Ensure build channels get run even if FILTER is unset #​4125
  • CI: Ensure there is a fallback for no_std #​4125
  • CI: Fix cases where unset variables cause errors #​4108
  • CI: Naming adjustments and cleanup #​4124
  • CI: Only invoke rustup if running in CI #​4107
  • CI: Remove the logic to handle old rust versions #​4068
  • CI: Set -u (error on unset) in all script files #​4108
  • CI: add support for loongarch64-unknown-linux-musl #​4092
  • CI: make aarch64-apple-darwin not a nightly-only target #​4068
  • CI: run shellcheck on all scripts #​4042
  • CI: update musl headers to Linux 6.6 #​3921
  • CI: use qemu-sparc64 to run sparc64 tests #​4133
  • Drop the libc_const_extern_fn conditional 674cc1f
  • Drop the libc_underscore_const_names conditional f0febd5
  • Explicitly set the edition to 2015 #​4058
  • Introduce a git-blame-ignore-revs file #​4107
  • Tests: Ignore fields as required on Ubuntu 24.10 #​4120
  • Tests: skip ATF_* constants for OpenBSD #​4088
  • Triagebot: Add an autolabel for CI #​4052

v0.2.164

Compare Source

MSRV

This release increases the MSRV of libc to 1.63.

Other
  • CI: remove tests with rust < 1.63 #​4051
  • MSRV: document the MSRV of the stable channel to be 1.63 #​4040
  • MacOS: move ifconf to s_no_extra_traits #​4051

v0.2.163

Compare Source

Added
Changed
  • Emscripten: upgrade emsdk to 3.1.68 #​3962
  • Hurd: use more standard types #​3733
  • Hurd: use the standard ssize_t = isize #​4029
  • Solaris: fix confstr and ucontext_t #​4035
Other
  • CI: add Solaris #​4035
  • CI: add i686-unknown-freebsd #​3997
  • CI: ensure that calls to sort do not depend on locale #​4026
  • Specify rust-version in Cargo.toml #​4041

v0.2.162

Compare Source

Added
  • Android: fix the alignment of uc_mcontext on arm64 #​3894
  • Apple: add host_cpu_load_info #​3916
  • ESP-IDF: add a time flag #​3993
  • FreeBSD: add the CLOSE_RANGE_CLOEXEC flag#​3996
  • FreeBSD: fix test errors regarding __gregset_t #​3995
  • FreeBSD: fix tests on x86 FreeBSD 15 #​3948
  • FreeBSD: make ucontext_t and mcontext_t available on all architectures #​3848
  • Haiku: add getentropy #​3991
  • Illumos: add syncfs #​3990
  • Illumos: add some recently-added constants #​3999
  • Linux: add ioctl flags #​3960
  • Linux: add epoll busy polling parameters #​3922
  • NuttX: add pthread_[get/set]name_np #​4003
  • RTEMS: add arc4random_buf #​3989
  • Trusty OS: add initial support #​3942
  • WASIp2: expand socket support #​3981
Fixed
  • Emscripten: don't pass -lc #​4002
  • Hurd: change st_fsid field to st_dev #​3785
  • Hurd: fix the definition of utsname #​3992
  • Illumos/Solaris: fix FNM_CASEFOLD definition #​4004
  • Solaris: fix all tests #​3864
Other
  • CI: Add loongarch64 #​4000
  • CI: Check that semver files are sorted #​4018
  • CI: Re-enable the FreeBSD 15 job #​3988
  • Clean up imports and extern crate usage #​3897
  • Convert mode_t constants to octal #​3634
  • Remove the wasm32-wasi target that has been deleted upstream #​4013

v0.2.161

Compare Source

Fixed
  • OpenBSD: fix FNM_PATHNAME and FNM_NOESCAPE values #​3983

v0.2.160

Compare Source

Added
  • Android: add PR_GET_NAME and PR_SET_NAME #​3941
  • Apple: add F_TRANSFEREXTENTS #​3925
  • Apple: add mach_error_string #​3913
  • Apple: add additional pthread APIs #​3846
  • Apple: add the LOCAL_PEERTOKEN socket option #​3929
  • BSD: add RTF_*, RTA_*, RTAX_*, and RTM_* definitions #​3714
  • Emscripten: add AT_EACCESS #​3911
  • Emscripten: add getgrgid, getgrnam, getgrnam_r and getgrgid_r #​3912
  • Emscripten: add getpwnam_r and getpwuid_r #​3906
  • FreeBSD: add POLLRDHUP #​3936
  • Haiku: add arc4random #​3945
  • Illumos: add ptsname_r #​3867
  • Linux: add fanotify interfaces #​3695
  • Linux: add tcp_info #​3480
  • Linux: add additional AF_PACKET options #​3540
  • Linux: make Elf constants always available #​3938
  • Musl x86: add iopl and ioperm #​3720
  • Musl: add posix_spawn chdir functions #​3949
  • Musl: add utmpx.h constants #​3908
  • NetBSD: add sysctlnametomib, CLOCK_THREAD_CPUTIME_ID and CLOCK_PROCESS_CPUTIME_ID #​3927
  • Nuttx: initial support #​3909
  • RTEMS: add getentropy #​3973
  • RTEMS: initial support #​3866
  • Solarish: add POLLRDHUP, POSIX_FADV_*, O_RSYNC, and posix_fallocate #​3936
  • Unix: add fnmatch.h #​3937
  • VxWorks: add riscv64 support #​3935
  • VxWorks: update constants related to the scheduler #​3963
Changed
  • Redox: change ino_t to be c_ulonglong #​3919
Fixed
  • ESP-IDF: fix mismatched constants and structs #​3920
  • FreeBSD: fix struct stat on FreeBSD 12+ #​3946
Other

v0.2.159

Compare Source

Added
  • Android: add more AT_* constants in #​3779
  • Apple: add missing NOTE_* constants in #​3883
  • Hermit: add missing error numbers in #​3858
  • Hurd: add __timeval for 64-bit support in #​3786
  • Linux: add epoll_pwait2 in #​3868
  • Linux: add mq_notify in #​3849
  • Linux: add missing NFT_CT_* constants in #​3844
  • Linux: add the fchmodat2 syscall in #​3588
  • Linux: add the mseal syscall in #​3798
  • OpenBSD: add sendmmsg and recvmmsg in #​3831
  • Unix: add IN6ADDR_ANY_INIT and IN6ADDR_LOOPBACK_INIT in #​3693
  • VxWorks: add S_ISVTX in #​3768
  • VxWorks: add vxCpuLib and taskLib functions #​3861
  • WASIp2: add definitions for std::net support in #​3892
Fixed
  • Correctly handle version checks when clippy-driver is used #​3893
Changed
  • EspIdf: change signal constants to c_int in #​3895
  • HorizonOS: update network definitions in #​3863
  • Linux: combine ioctl APIs in #​3722
  • WASI: enable CI testing in #​3869
  • WASIp2: enable CI testing in #​3870

v0.2.158

Compare Source

Other

v0.2.157

Compare Source

Added
  • Apple: add _NSGetArgv, _NSGetArgc and _NSGetProgname in #​3702
  • Build: add RUSTC_WRAPPER support in #​3845
  • FreeBSD: add execvpe support from 14.1 release in #​3745
  • Fuchsia: add SO_BINDTOIFINDEX
  • Linux: add klogctl in #​3777
  • MacOS: add fcntl OFD commands in #​3563
  • NetBSD: add _lwp_park in #​3721
  • Solaris: add missing networking support in #​3717
  • Unix: add pthread_equal in #​3773
  • WASI: add select, FD_SET, FD_ZERO, FD_ISSET in #​3681
Fixed
  • TEEOS: fix octal notation for O_* constants in #​3841
Changed
  • FreeBSD: always use freebsd12 when rustc_dep_of_std is set in #​3723

v0.2.156

Compare Source

Added
  • Apple: add F_ALLOCATEPERSIST in #​3712
  • Apple: add os_sync_wait_on_address and related definitions in #​3769
  • BSD: generalise IPV6_DONTFRAG to all BSD targets in #​3716
  • FreeBSD/DragonFly: add IP_RECVTTL/IPV6_RECVHOPLIMIT in #​3751
  • Hurd: add XATTR_CREATE, XATTR_REPLACE in #​3739
  • Linux GNU: confstr API and _CS_* in #​3771
  • Linux musl: add preadv2 and pwritev2 (1.2.5 min.) in #​3762
  • VxWorks: add the constant SOMAXCONN in #​3761
  • VxWorks: add a few errnoLib related constants in #​3780
Fixed
  • Solaris/illumos: Change ifa_flags type to u64 in #​3729
  • QNX 7.0: Disable libregex in #​3775
Changed
  • QNX NTO: update platform support in #​3815
  • addr_of!(EXTERN_STATIC) is now considered safe in #​3776
Removed
Other
  • Update or remove CI tests that have been failing

v0.2.155

Compare Source

What's Changed

New Contributors

Full Changelog: https://github.com/rust-lang/libc/compare/0.2.154...0.2.155

v0.2.154

Compare Source

What's Changed

New Contributors

Full Changelog: https://github.com/rust-lang/libc/compare/0.2.153...0.2.154

v0.2.153

Compare Source

What's Changed

New Contributors

Full Changelog: https://github.com/rust-lang/libc/compare/0.2.152...0.2.153

v0.2.152

Compare Source

What's Changed

New Contributors

Full Changelog: https://github.com/rust-lang/libc/compare/0.2.151...0.2.152

v0.2.151

Compare Source

What's Changed

New Contributors

Full Changelog: https://github.com/rust-lang/libc/compare/0.2.150...0.2.151

v0.2.150

Compare Source

What's Changed

New Contributors

Full Changelog: https://github.com/rust-lang/libc/compare/0.2.149...0.2.150


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [libc](https://github.com/rust-lang/libc) | dependencies | patch | `0.2.149` -> `0.2.189` | --- ### Release Notes <details> <summary>rust-lang/libc (libc)</summary> ### [`v0.2.189`](https://github.com/rust-lang/libc/releases/tag/0.2.189) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.188...0.2.189) ##### Added - Emscripten: Add `pthread_sigmask`, `sigwait`, `sigwaitinfo`, `sigtimedwait`, `faccessat`, and `pthread_kill` ([#&#8203;5270](https://github.com/rust-lang/libc/pull/5270)) - Linux SPARC: Enable the `clone3` syscall ([#&#8203;4980](https://github.com/rust-lang/libc/pull/4980)) - Solarish: Add `CLOCK_PROCESS_CPUTIME_ID` and `CLOCK_THREAD_CPUTIME_ID` ([#&#8203;5274](https://github.com/rust-lang/libc/pull/5274)) ##### Deprecated - Deprecate `CLONE_INTO_CGROUP` and `CLONE_CLEAR_SIGHAND`. These overflow their types and will be changed to a larger size in the future. ([8c6e6710458d](https://github.com/rust-lang/libc/commit/8c6e6710458db4d6aa0766f6f84bbf13f640237e)) ##### Fixed - Musl riscv32: Rename padding fields to avoid a conflict and fix the build ([2499ff0ad993](https://github.com/rust-lang/libc/commit/2499ff0ad9936a036e78a4e0991445efee383564)) - NuttX: Fix `wchar_t` definition under Arm ([#&#8203;5245](https://github.com/rust-lang/libc/pull/5245)) - Windows: Add back link names for `time`-related symbols ([#&#8203;5300](https://github.com/rust-lang/libc/pull/5300)) ### [`v0.2.188`](https://github.com/rust-lang/libc/releases/tag/0.2.188) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.187...0.2.188) ##### Changed - Restore `Send` and `Sync` for `DIR` ([35b062263401](https://github.com/rust-lang/libc/commit/35b062263401733cd89065c6a553640f2ba51ff1)) These were removed in 0.2.187 because `libc` does not actually make `Send` and `Sync` guarantees about `DIR` (or other extern types), but this caused some crates to break. The traits are added back for now to allow time to migrate, but will be removed again in the future; please make sure your crates are not relying on `libc::DIR: Send` or `libc::DIR: Sync`. ### [`v0.2.187`](https://github.com/rust-lang/libc/releases/tag/0.2.187) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.186...0.2.187) This release contains a number of improvements related to 64-bit `time_t` configuration. Of note the existing `RUST_LIBC_UNSTABLE_*` environment variables have been replaced with configuration options. The new way to use these is: ```sh RUSTFLAGS='--cfg=libc_unstable_musl_v1_2_3' cargo ... RUSTFLAGS='--cfg=libc_unstable_gnu_time_bits="64"' cargo ... ``` Being able to set this via `RUSTFLAGS` makes it easier to only apply configuration to specific targets (and notably, not the host if build scripts are used). There are two other notable changes: - The 32-bit `windows-gnu` targets now respect `libc_unstable_gnu_time_bits` - uClibc now supports a similar configuration option: ```sh RUSTFLAGS='--cfg=libc_unstable_uclibc_time64' ``` As a reminder, these options are under active development and may change in the future (hence the "unstable" in the name). It likely that we will harmonize everything under a single configuration option before considering them stable. ##### Support - Add support for `aarch64-unknown-linux-pauthtest` ([#&#8203;5065](https://github.com/rust-lang/libc/pull/5065)) - Add support for new QNX targets ([#&#8203;5241](https://github.com/rust-lang/libc/pull/5241)) - Better document breaking change policy and recommended usage ([#&#8203;5179](https://github.com/rust-lang/libc/pull/5179)) ##### Added - Android: Add `POSIX_SPAWN_*` constants ([#&#8203;5104](https://github.com/rust-lang/libc/pull/5104)) - Android: Add `getpwent`, `setpwent`, and `endpwent` ([#&#8203;5160](https://github.com/rust-lang/libc/pull/5160)) - Android: Add `preadv2` and `pwritev2` ([#&#8203;5157](https://github.com/rust-lang/libc/pull/5157)) - Android: Add `seccomp_notif*` structures ([#&#8203;5224](https://github.com/rust-lang/libc/pull/5224)) - Android: Add `timer_[create, delete, getoverrun, gettime, settime]` ([#&#8203;5108](https://github.com/rust-lang/libc/pull/5108)) - Apple: Add `PROC_PIDT_SHORTBSDINFO` and `proc_bsdshortinfo` ([#&#8203;5110](https://github.com/rust-lang/libc/pull/5110)) - Apple: Add `SIOC*` constants from `sockio.h` ([#&#8203;5263](https://github.com/rust-lang/libc/pull/5263)) - Apple: Add `_IOR`, `_IOW`, `_IOWR` ([#&#8203;5264](https://github.com/rust-lang/libc/pull/5264)) - Apple: Add `bpf_program` and `bpf_insn` ([#&#8203;5235](https://github.com/rust-lang/libc/pull/5235)) - Apple: Add additional `kqueue` constants ([#&#8203;5077](https://github.com/rust-lang/libc/pull/5077)) - Apple: Update `vm_statistics64` with recently added fields ([#&#8203;5253](https://github.com/rust-lang/libc/pull/5253)) - Apple: add `IN6_IFF_*` and `SIOCGIFAFLAG_IN6` ([#&#8203;5239](https://github.com/rust-lang/libc/pull/5239)) - Dragonfly: Add `O_*`, `POSIX_FADV_*`, `NI*`, and a few other missing constants ([#&#8203;5116](https://github.com/rust-lang/libc/pull/5116)) - Dragonfly: add `fdatasync`, `dlvsym`, `reallocarray`, `qsort_r`, `pthread_*affinity_np`, `ftok`, `extattr_*`, and `dup3` ([#&#8203;5116](https://github.com/rust-lang/libc/pull/5116)) - Emscripten: Add `in6_pktinfo` ([#&#8203;5256](https://github.com/rust-lang/libc/pull/5256)) - FreeBSD: Add SOL\_LOCAL ([#&#8203;5185](https://github.com/rust-lang/libc/pull/5185)) - FreeBSD: Add `DLT_*` constants ([#&#8203;5235](https://github.com/rust-lang/libc/pull/5235)) - FreeBSD: Add `PROC_LOGSIGEXIT_*` and `PPROT_*` ([#&#8203;4657](https://github.com/rust-lang/libc/pull/4657)) - FreeBSD: Add `SO_RERROR` ([#&#8203;5260](https://github.com/rust-lang/libc/pull/5260)) - FreeBSD: add `IN6_IFF_*`, `in6_ifreq`, and `SIOCGIFAFLAG_IN6` ([#&#8203;5239](https://github.com/rust-lang/libc/pull/5239)) - FreeBSD: add `_IO*` helpers from `sys/ioccom.h` ([#&#8203;5239](https://github.com/rust-lang/libc/pull/5239)) - Glibc: Add `PTHREAD_*_MUTEX_INITIALIZER_NP` for riscv64 ([#&#8203;5094](https://github.com/rust-lang/libc/pull/5094)) - Glibc: Add new fields to `struct tcp_info` ([#&#8203;5215](https://github.com/rust-lang/libc/pull/5215)) - Linux: Add `OPEN_TREE_NAMESPACE` ([#&#8203;5145](https://github.com/rust-lang/libc/pull/5145)) - Linux: Add `SECCOMP_IOCTL_*` constants ([#&#8203;5224](https://github.com/rust-lang/libc/pull/5224)) - Linux: Add `SO_DETACH_REUSEPORT_BPF` ([#&#8203;5081](https://github.com/rust-lang/libc/pull/5081)) - Linux: Add `futex_waitv` ([#&#8203;5125](https://github.com/rust-lang/libc/pull/5125)) - Linux: Add constants for `fsopen`, `fsconfig`, `fsmount`, and `fspick` ([#&#8203;5145](https://github.com/rust-lang/libc/pull/5145)) - Linux: Add fields to `statx` present since 6.16 ([#&#8203;4621](https://github.com/rust-lang/libc/pull/4621)) - Linux: Add network entry API ([#&#8203;5049](https://github.com/rust-lang/libc/pull/5049)) - Linux: add `ifaddrmsg` and `rtattr` ([#&#8203;5234](https://github.com/rust-lang/libc/pull/5234)) - Linux: add `sockaddr_iucv` ([#&#8203;5041](https://github.com/rust-lang/libc/pull/5041)) - MacOS: Add `ENOTCAPABLE` ([#&#8203;4925](https://github.com/rust-lang/libc/pull/4925)) - Musl: Add `renameat2` ([#&#8203;5113](https://github.com/rust-lang/libc/pull/5113)) - NuttX: Add `F_SETFD` ([#&#8203;5258](https://github.com/rust-lang/libc/pull/5258)) - NuttX: Add `POLLRD*` and `POLLWR*` constants ([#&#8203;5258](https://github.com/rust-lang/libc/pull/5258)) - NuttX: Add `SO_KEEPALIVE` and TCP keepalive constants ([#&#8203;5111](https://github.com/rust-lang/libc/pull/5111)) - NuttX: Add `TCP_MAXSEG` ([#&#8203;5258](https://github.com/rust-lang/libc/pull/5258)) - NuttX: Add `eventfd` and `EFD_*` constants ([#&#8203;5258](https://github.com/rust-lang/libc/pull/5258)) - NuttX: Add `pipe2` ([#&#8203;5258](https://github.com/rust-lang/libc/pull/5258)) - NuttX: Add `strerror_r` ([#&#8203;5258](https://github.com/rust-lang/libc/pull/5258)) - NuttX: Add `netinet` structs and constants ([#&#8203;5258](https://github.com/rust-lang/libc/pull/5258)) - NuttX: Add socket structs, functions and constants ([#&#8203;5258](https://github.com/rust-lang/libc/pull/5258)) - QuRT: Add POSIX timer functions ([#&#8203;5091](https://github.com/rust-lang/libc/pull/5091)) - QuRT: Add missing pthread functions from QuRT SDK headers ([#&#8203;5091](https://github.com/rust-lang/libc/pull/5091)) - QuRT: Add missing unistd process and file functions ([#&#8203;5091](https://github.com/rust-lang/libc/pull/5091)) - QuRT: Add mqueue subsystem (message queues, select/pselect) ([#&#8203;5091](https://github.com/rust-lang/libc/pull/5091)) - Redox: Add `*at` and `dirent` functions ([#&#8203;5117](https://github.com/rust-lang/libc/pull/5117)) - Solarish: Add IP TTL and IPv6 Hop Limit consts ([#&#8203;5089](https://github.com/rust-lang/libc/pull/5089)) - Solarish: Add `port_alert` and `PORT_ALERT*` constants ([#&#8203;5203](https://github.com/rust-lang/libc/pull/5203)) - Solarish: add AI\_CANONNAME ([#&#8203;5085](https://github.com/rust-lang/libc/pull/5085)) - aarch64: Add SYS\_sendfile and SYS\_fadvise64 constants ([#&#8203;5133](https://github.com/rust-lang/libc/pull/5133)) ##### Deprecated - Dragonfly: Deprecate compatibility aliases `CPUCTL_RSMSR` and `UTX_DB_LASTLOG` ([#&#8203;5116](https://github.com/rust-lang/libc/pull/5116)) ##### Fixed - **breaking** NetBSD: Correct `ts` from `*const timespec` to `*mut timespec` in \_lwp\_park\` ([#&#8203;5169](https://github.com/rust-lang/libc/pull/5169)) - **breaking** Linux GNU: Change overflowing `PTRACE_*ET_SYSCALL_USER_DISPATCH_CONFIG` constants from `u8` to `c_uint` ([#&#8203;4936](https://github.com/rust-lang/libc/pull/4936)) - Fix the soundness bug in the representation of extern types ([#&#8203;5021](https://github.com/rust-lang/libc/pull/5021)) - Cygwin: fix `cpuset_t` typo in `CPU_ZERO` ([#&#8203;5098](https://github.com/rust-lang/libc/pull/5098)) - Dragonfly: ABI fixes including regex offsets, `ifaddrs`, pthread barriers, process sizing fields, and `mcontext` alignment ([#&#8203;5116](https://github.com/rust-lang/libc/pull/5116)) - Dragonfly: Correct values of `CPUCTL_CPUID*`, `EV_HUP`, and `EV_SYSFLAGS` ([#&#8203;5116](https://github.com/rust-lang/libc/pull/5116)) - Emscripten: fix pthread type sizes for wasm64 (MEMORY64) ([#&#8203;5156](https://github.com/rust-lang/libc/pull/5156)) - Horizon: Fix the value of `POLLOUT` ([#&#8203;5090](https://github.com/rust-lang/libc/pull/5090)) - Linux: Correct the value of `EPIOC[GS]PARAMS` with nonstandard \_IOC ([#&#8203;5188](https://github.com/rust-lang/libc/pull/5188)) - Make VxWorks shims `unsafe` ([#&#8203;3727](https://github.com/rust-lang/libc/pull/3727)) - NetBSD: Correct getmntinfo to link `__getmntinfo13` ([#&#8203;5251](https://github.com/rust-lang/libc/pull/5251)) - QNX: Fix the value of `PTHREAD_MUTEX_INITIALIZER` ([#&#8203;5241](https://github.com/rust-lang/libc/pull/5241)) - QuRT: fix type and definition inaccuracies against SDK headers ([#&#8203;5091](https://github.com/rust-lang/libc/pull/5091)) - Windows: Correctly link to 32-bit time routines on 32-bit platforms ([#&#8203;5059](https://github.com/rust-lang/libc/pull/5059)) - uClibc: Fix constants accidentally removed ([#&#8203;5141](https://github.com/rust-lang/libc/pull/5141)) - uclibc: Fix build issues ([#&#8203;5046](https://github.com/rust-lang/libc/pull/5046)) - uclibc: Fix type of PRIO\_PROCESS and friends ([#&#8203;5046](https://github.com/rust-lang/libc/pull/5046)) ##### Changed - AIX, TeeOS: Drop unneeded `-> c_void` ([#&#8203;5240](https://github.com/rust-lang/libc/pull/5240)) - Apple: Change `AIO_LISTIO_MAX` to account for changes in macOS 27 ([#&#8203;5253](https://github.com/rust-lang/libc/pull/5253)) - Glibc: Update the value of `MS_NOUSER` ([#&#8203;5215](https://github.com/rust-lang/libc/pull/5215)) - L4Re: Update definitions and test infra ([#&#8203;5275](https://github.com/rust-lang/libc/pull/5275)) - Linux: Update the value of `SW_MAX` and `SW_CNT` ([#&#8203;5215](https://github.com/rust-lang/libc/pull/5215)) - MacOS: Add `swapped_count` to `vm_statistics64` ([#&#8203;4926](https://github.com/rust-lang/libc/pull/4926)) - Windows: Windows-GNU now respects `libc_unstable_gnu_time_bits` for 64-bit `time_t` config ([#&#8203;5062](https://github.com/rust-lang/libc/pull/5062)) ##### Removed - Dragonfly: Remove FreeBSD-only `Elf32_Lword`, `ip_mreq_source`, and `IP_` constants ([#&#8203;5116](https://github.com/rust-lang/libc/pull/5116)) - Dragonfly: Remove private VM type bindings ([#&#8203;5116](https://github.com/rust-lang/libc/pull/5116)) - Linux: Remove `KERN_REALROOTDEV` and `VM_LAPTOP_MODE` ([#&#8203;5177](https://github.com/rust-lang/libc/pull/5177)) - VxWorks: Remove non-user-facing (kernel) API ([#&#8203;5129](https://github.com/rust-lang/libc/pull/5129)) ##### Other - Print config information if `LIBC_BUILD_VERBOSE` is set ([#&#8203;5272](https://github.com/rust-lang/libc/pull/5272)) - Annotate `*LAST` constants as potentially changing ([#&#8203;5120](https://github.com/rust-lang/libc/pull/5120)) - Annotate `*MAX` constants as potentially changing ([#&#8203;5122](https://github.com/rust-lang/libc/pull/5122)) - BSD: Annotate `ELAST` constants as potentially changing ([#&#8203;5118](https://github.com/rust-lang/libc/pull/5118)) - FreeBSD: Annotate `RAND_MAX` as potentially changing ([#&#8203;5119](https://github.com/rust-lang/libc/pull/5119)) - Linux, L4re: Annotate `*NUM` constants as potentially changing ([#&#8203;5123](https://github.com/rust-lang/libc/pull/5123)) - QNX: Restructure to support new platforms ([#&#8203;4984](https://github.com/rust-lang/libc/pull/4984)) - Unix: Annotate `*COUNT` constants as potentially changing ([#&#8203;5121](https://github.com/rust-lang/libc/pull/5121)) - uClibc: Add unstable support of 64-bit `time_t` ([#&#8203;5046](https://github.com/rust-lang/libc/pull/5046)) - (internal) FreeBSD: Replace unstable env to set version with an unstable cfg ([#&#8203;5201](https://github.com/rust-lang/libc/pull/5201)) - (internal) Glibc: Remove public configuration for file offset bits ([#&#8203;5268](https://github.com/rust-lang/libc/pull/5268)) - (internal) Linux: Delete config via `RUST_LIBC_UNSTABLE_LINUX_TIME_BITS64` ([#&#8203;5197](https://github.com/rust-lang/libc/pull/5197)) - (internal) Replace `RUST_LIBC_UNSTABLE` env with `libc_unstable*` cfg ([#&#8203;4977](https://github.com/rust-lang/libc/pull/4977)) ### [`v0.2.186`](https://github.com/rust-lang/libc/releases/tag/0.2.186) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.185...0.2.186) ##### Added - Apple: Add `KEVENT_FLAG_*` constants ([#&#8203;5070](https://github.com/rust-lang/libc/pull/5070)) - Linux: Add `PR_SET_MEMORY_MERGE` and `PR_GET_MEMORY_MERGE` ([#&#8203;5060](https://github.com/rust-lang/libc/pull/5060)) ##### Changed - CI: Migrate FreeBSD CI from Cirrus CI to GitHub Actions ([#&#8203;5058](https://github.com/rust-lang/libc/pull/5058)) ### [`v0.2.185`](https://github.com/rust-lang/libc/releases/tag/0.2.185) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.184...0.2.185) ##### Added - EspIDF: Add `espidf_picolibc` cfg for picolibc `O_*` flag values ([#&#8203;5035](https://github.com/rust-lang/libc/pull/5035)) - Hexagon: add missing constants and fix types for linux-musl ([#&#8203;5042](https://github.com/rust-lang/libc/pull/5042)) - Redox: Add semaphore functions ([#&#8203;5051](https://github.com/rust-lang/libc/pull/5051)) - Windows: Add `sprintf`, `snprintf`, and the `scanf` family ([#&#8203;5024](https://github.com/rust-lang/libc/pull/5024)) ##### Fixed - Hexagon: Decouple `time64` types from musl symbol redirects ([#&#8203;5040](https://github.com/rust-lang/libc/pull/5040)) - Horizon: Change `POLL` constants from `c_short` to `c_int` ([#&#8203;5045](https://github.com/rust-lang/libc/pull/5045)) ### [`v0.2.184`](https://github.com/rust-lang/libc/releases/tag/0.2.184) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.183...0.2.184) ##### MSRV This release increases the MSRV of `libc` to 1.65. With this update, you can now always use the `core::ffi::c_*` types with `libc` definitions, since `libc` has been changed to reexport from `core` rather than redefining them. (This *usually* worked before but had edge cases.) ([#&#8203;4972](https://github.com/rust-lang/libc/pull/4972)) ##### Added - BSD: Add `IP_MINTTL` to bsd ([#&#8203;5026](https://github.com/rust-lang/libc/pull/5026)) - Cygwin: Add `TIOCM_DSR` ([#&#8203;5031](https://github.com/rust-lang/libc/pull/5031)) - FreeBSD: Added `xfile` structe and file descriptor types ([#&#8203;5002](https://github.com/rust-lang/libc/pull/5002)) - Linux: Add CAN netlink bindings ([#&#8203;5011](https://github.com/rust-lang/libc/pull/5011)) - Linux: Add `struct ethhdr` ([#&#8203;4239](https://github.com/rust-lang/libc/pull/4239)) - Linux: Add `struct ifinfomsg` ([#&#8203;5012](https://github.com/rust-lang/libc/pull/5012)) - Linux: Define `max_align_t` for riscv64 ([#&#8203;5029](https://github.com/rust-lang/libc/pull/5029)) - NetBSD: Add missing `CLOCK_` constants ([#&#8203;5020](https://github.com/rust-lang/libc/pull/5020)) - NuttX: Add `_SC_HOST_NAME_MAX` ([#&#8203;5004](https://github.com/rust-lang/libc/pull/5004)) - VxWorks: Add `flock` and `F_*LCK` constants ([#&#8203;4043](https://github.com/rust-lang/libc/pull/4043)) - WASI: Add all `_SC_*` sysconf constants ([#&#8203;5023](https://github.com/rust-lang/libc/pull/5023)) ##### Deprecated The remaining fixed-width integer aliases, `__uint128_t`, `__uint128`, `__int128_t`, and `__int128`, have been deprecated. Use `i128` and `u128` instead. ([#&#8203;4343](https://github.com/rust-lang/libc/pull/4343)) ##### Fixed - **breaking** Redox: Fix signal action constant types ([#&#8203;5009](https://github.com/rust-lang/libc/pull/5009)) - EspIDF: Correct the value of `DT_*` constants ([#&#8203;5034](https://github.com/rust-lang/libc/pull/5034)) - Redox: Fix locale values and add `RTLD_NOLOAD`, some TCP constants ([#&#8203;5025](https://github.com/rust-lang/libc/pull/5025)) - Various: Use `Padding::new(<zeroed>)` rather than `Padding::uninit()` ([#&#8203;5036](https://github.com/rust-lang/libc/pull/5036)) ##### Changed - **potentially breaking** Linux: Add new fields to `struct ptrace_syscall_info` ([#&#8203;4966](https://github.com/rust-lang/libc/pull/4966)) - Re-export `core::ffi` integer types rather than redefining ([#&#8203;5015](https://github.com/rust-lang/libc/pull/5015)) - Redox: Update `F_DUPFD`, `IP`, and `TCP` constants to match relibc ([#&#8203;4990](https://github.com/rust-lang/libc/pull/4990)) ### [`v0.2.183`](https://github.com/rust-lang/libc/releases/tag/0.2.183) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.182...0.2.183) ##### Added - ESP-IDF: Add `SOMAXCONN` ([#&#8203;4993](https://github.com/rust-lang/libc/pull/4993)) - Linux: Add `name_to_handle_at` and `open_by_handle_at` ([#&#8203;4988](https://github.com/rust-lang/libc/pull/4988)) - NetBSD: Add `kinfo_file`, `kinfo_pcb`, and related constants ([#&#8203;4985](https://github.com/rust-lang/libc/pull/4985)) - OpenBSD: Add `kinfo_file` and related constants ([#&#8203;4991](https://github.com/rust-lang/libc/pull/4991)) - VxWorks: Add additional structs and defines ([#&#8203;5003](https://github.com/rust-lang/libc/pull/5003)) - Various: Implement `Default` for `timeval` and `timespec` ([#&#8203;4976](https://github.com/rust-lang/libc/pull/4976)) ##### Fixed - Hexagon musl: Enable unstable 64-bit `time_t` support and `musl_v1_2_3` ([#&#8203;4992](https://github.com/rust-lang/libc/pull/4992)) - Nintendo Switch: Fix target support ([#&#8203;4982](https://github.com/rust-lang/libc/pull/4982)) - OpenBSD: Wrap an unused field in `Padding` ([#&#8203;4997](https://github.com/rust-lang/libc/pull/4997)) - Redox: Change `sigaction.sa_flags` to `c_int` ([#&#8203;4986](https://github.com/rust-lang/libc/pull/4986)) - Redox: Fix `blkcnt_t` type ([#&#8203;4994](https://github.com/rust-lang/libc/pull/4994)) ### [`v0.2.182`](https://github.com/rust-lang/libc/releases/tag/0.2.182) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.181...0.2.182) ##### Added - Android, Linux: Add `tgkill` ([#&#8203;4970](https://github.com/rust-lang/libc/pull/4970)) - Redox: Add `RENAME_NOREPLACE` ([#&#8203;4968](https://github.com/rust-lang/libc/pull/4968)) - Redox: Add `renameat2` ([#&#8203;4968](https://github.com/rust-lang/libc/pull/4968)) ### [`v0.2.181`](https://github.com/rust-lang/libc/releases/tag/0.2.181) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.180...0.2.181) ##### Added - Apple: Add `MADV_ZERO` ([#&#8203;4924](https://github.com/rust-lang/libc/pull/4924)) - Redox: Add `makedev`, `major`, and `minor` ([#&#8203;4928](https://github.com/rust-lang/libc/pull/4928)) - GLibc: Add `PTRACE_SET_SYSCALL_INFO` ([#&#8203;4933](https://github.com/rust-lang/libc/pull/4933)) - OpenBSD: Add more kqueue related constants for ([#&#8203;4945](https://github.com/rust-lang/libc/pull/4945)) - Linux: add CAN error types ([#&#8203;4944](https://github.com/rust-lang/libc/pull/4944)) - OpenBSD: Add siginfo\_t::si\_status ([#&#8203;4946](https://github.com/rust-lang/libc/pull/4946)) - QNX NTO: Add `max_align_t` ([#&#8203;4927](https://github.com/rust-lang/libc/pull/4927)) - Illumos: Add `_CS_PATH` ([#&#8203;4956](https://github.com/rust-lang/libc/pull/4956)) - OpenBSD: add `ppoll` ([#&#8203;4957](https://github.com/rust-lang/libc/pull/4957)) ##### Fixed - **Breaking**: Redox: Fix the type of `dev_t` ([#&#8203;4928](https://github.com/rust-lang/libc/pull/4928)) - AIX: Change 'tv\_nsec' of 'struct timespec' to type 'c\_long' ([#&#8203;4931](https://github.com/rust-lang/libc/pull/4931)) - AIX: Use 'struct st\_timespec' in 'struct stat{,64}' ([#&#8203;4931](https://github.com/rust-lang/libc/pull/4931)) - Glibc: Link old version of `tc{g,s}etattr` ([#&#8203;4938](https://github.com/rust-lang/libc/pull/4938)) - Glibc: Link the correct version of `cf{g,s}et{i,o}speed` on mips{32,64}r6 ([#&#8203;4938](https://github.com/rust-lang/libc/pull/4938)) - OpenBSD: Fix constness of tm.tm\_zone ([#&#8203;4948](https://github.com/rust-lang/libc/pull/4948)) - OpenBSD: Fix the definition of `ptrace_thread_state` ([#&#8203;4947](https://github.com/rust-lang/libc/pull/4947)) - QuRT: Fix type visibility and defs ([#&#8203;4932](https://github.com/rust-lang/libc/pull/4932)) - Redox: Fix values for `PTHREAD_MUTEX_{NORMAL, RECURSIVE}` ([#&#8203;4943](https://github.com/rust-lang/libc/pull/4943)) - Various: Mark additional fields as private padding ([#&#8203;4922](https://github.com/rust-lang/libc/pull/4922)) ##### Changed - Fuchsia: Update `SO_*` constants ([#&#8203;4937](https://github.com/rust-lang/libc/pull/4937)) - Revert "musl: convert inline timespecs to timespec" (resolves build issues on targets only supported by Musl 1.2.3+ ) ([#&#8203;4958](https://github.com/rust-lang/libc/pull/4958)) ### [`v0.2.180`](https://github.com/rust-lang/libc/releases/tag/0.2.180) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.179...0.2.180) ##### Added - QNX: Add missing BPF and ifreq structures ([#&#8203;4769](https://github.com/rust-lang/libc/pull/4769)) ##### Fixed - Linux, L4Re: address soundness issues of `CMSG_NXTHDR` ([#&#8203;4903](https://github.com/rust-lang/libc/pull/4903)) - Linux-like: Handle zero-sized payload differences in `CMSG_NXTHDR` ([#&#8203;4903](https://github.com/rust-lang/libc/pull/4903)) - Musl: Fix incorrect definitions of struct stat on some 32-bit architectures ([#&#8203;4914](https://github.com/rust-lang/libc/pull/4914)) - NetBSD: RISC-V 64: Correct `mcontext` type definitions ([#&#8203;4886](https://github.com/rust-lang/libc/pull/4886)) - uClibc: Re-enable `__SIZEOF_PTHREAD_COND_T` on non-L4Re uclibc ([#&#8203;4915](https://github.com/rust-lang/libc/pull/4915)) - uClibc: Restructure Linux `netlink` module to resolve build errors ([#&#8203;4915](https://github.com/rust-lang/libc/pull/4915)) ### [`v0.2.179`](https://github.com/rust-lang/libc/releases/tag/0.2.179) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.178...0.2.179) With this release, we now have *unstable* support for 64-bit `time_t` on 32-bit platforms with both Musl and Glibc. Testing is appreciated! For now, these can be enabled by setting environment variables during build: ```text RUST_LIBC_UNSTABLE_MUSL_V1_2_3=1 RUST_LIBC_UNSTABLE_GNU_TIME_BITS=64 ``` Note that the exact configuration will change in the future. Setting the `MUSL_V1_2_3` variable also enables some newer API unrelated to `time_t`. ##### Added - L4Re: Add uclibc aarch64 support ([#&#8203;4479](https://github.com/rust-lang/libc/pull/4479)) - Linux, Android: Add a generic definition for `XCASE` ([#&#8203;4847](https://github.com/rust-lang/libc/pull/4847)) - Linux-like: Add `NAME_MAX` ([#&#8203;4888](https://github.com/rust-lang/libc/pull/4888)) - Linux: Add `AT_EXECVE_CHECK` ([#&#8203;4422](https://github.com/rust-lang/libc/pull/4422)) - Linux: Add the `SUN_LEN` macro ([#&#8203;4269](https://github.com/rust-lang/libc/pull/4269)) - Linux: add `getitimer` and `setitimer` ([#&#8203;4890](https://github.com/rust-lang/libc/pull/4890)) - Linux: add `pthread_tryjoin_n` and `pthread_timedjoin_np` ([#&#8203;4887](https://github.com/rust-lang/libc/pull/4887)) - Musl: Add unstable support for 64-bit `time_t` on 32-bit platforms ([#&#8203;4463](https://github.com/rust-lang/libc/pull/4463)) - NetBSD, OpenBSD: Add interface `LINK_STATE_*` definitions from `sys/net/if.h` ([#&#8203;4751](https://github.com/rust-lang/libc/pull/4751)) - QuRT: Add support for Qualcomm QuRT ([#&#8203;4845](https://github.com/rust-lang/libc/pull/4845)) - Types: Add Padding<T>::uninit() ([#&#8203;4862](https://github.com/rust-lang/libc/pull/4862)) ##### Fixed - Glibc: Link old version of `cf{g,s}et{i,o}speed` ([#&#8203;4882](https://github.com/rust-lang/libc/pull/4882)) - L4Re: Fixes for `pthread` ([#&#8203;4479](https://github.com/rust-lang/libc/pull/4479)) - L4re: Fix a wide variety of incorrect definitions ([#&#8203;4479](https://github.com/rust-lang/libc/pull/4479)) - Musl: Fix the value of `CPU_SETSIZE` on musl 1.2+ ([#&#8203;4865](https://github.com/rust-lang/libc/pull/4865)) - Musl: RISC-V: fix public padding fields in `stat/stat64` ([#&#8203;4463](https://github.com/rust-lang/libc/pull/4463)) - Musl: s390x: Fix definition of `SIGSTKSZ`/`MINSIGSTKSZ` ([#&#8203;4884](https://github.com/rust-lang/libc/pull/4884)) - NetBSD: Arm: Fix `PT_{GET,SET}FPREGS`, `_REG_TIPDR`, and `_REG_{LR,SP}` ([#&#8203;4899](https://github.com/rust-lang/libc/pull/4899)) - NetBSD: Fix `if_msghdr` alignment ([#&#8203;4902](https://github.com/rust-lang/libc/pull/4902)) - NetBSD: Fix `siginfo_t` layout on 32-bit platforms ([#&#8203;4904](https://github.com/rust-lang/libc/pull/4904)) - NetBSD: change definition of `pthread_spin_t` to allow arch redefinition. ([#&#8203;4899](https://github.com/rust-lang/libc/pull/4899)) - Newlib: Fix ambiguous glob exports and other warnings for Vita and 3DS ([#&#8203;4875](https://github.com/rust-lang/libc/pull/4875)) - QNX: Fix build error ([#&#8203;4879](https://github.com/rust-lang/libc/pull/4879)) ##### Changed - CI: Update CI images to FreeBSD 15.0-release ([#&#8203;4857](https://github.com/rust-lang/libc/pull/4857)) - L4Re: Make `pthread` struct fields private ([#&#8203;4876](https://github.com/rust-lang/libc/pull/4876)) - Linux, Fuchsia: Mark mq\_attr padding area as such ([#&#8203;4858](https://github.com/rust-lang/libc/pull/4858)) - Types: Wrap a number of private fields in the `Padding` type ([#&#8203;4862](https://github.com/rust-lang/libc/pull/4862)) ##### Removed - Build: Remove `RUST_LIBC_UNSTABLE_LINUX_TIME_BITS64` ([#&#8203;4865](https://github.com/rust-lang/libc/pull/4865)) - WASI: Remove nonexistent clocks ([#&#8203;4880](https://github.com/rust-lang/libc/pull/4880)) ### [`v0.2.178`](https://github.com/rust-lang/libc/releases/tag/0.2.178) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.177...0.2.178) ##### Added - BSD: Add `issetugid` ([#&#8203;4744](https://github.com/rust-lang/libc/pull/4744)) - Cygwin: Add missing utmp/x.h, grp.h, and stdio.h interfaces ([#&#8203;4827](https://github.com/rust-lang/libc/pull/4827)) - Linux s390x musl: Add `__psw_t`/`fprefset_t`/`*context_t` ([#&#8203;4726](https://github.com/rust-lang/libc/pull/4726)) - Linux, Android: Add definition for IUCLC ([#&#8203;4846](https://github.com/rust-lang/libc/pull/4846)) - Linux, FreeBSD: Add `AT_HWCAP{3,4}` ([#&#8203;4734](https://github.com/rust-lang/libc/pull/4734)) - Linux: Add definitions from linux/can/bcm.h ([#&#8203;4683](https://github.com/rust-lang/libc/pull/4683)) - Linux: Add syscalls 451-469 for m68k ([#&#8203;4850](https://github.com/rust-lang/libc/pull/4850)) - Linux: PowerPC: Add 'ucontext.h' definitions ([#&#8203;4696](https://github.com/rust-lang/libc/pull/4696)) - NetBSD: Define `eventfd` ([#&#8203;4830](https://github.com/rust-lang/libc/pull/4830)) - Newlib: Add missing constants from `unistd.h` ([#&#8203;4811](https://github.com/rust-lang/libc/pull/4811)) - QNX NTO: Add `cfmakeraw` ([#&#8203;4704](https://github.com/rust-lang/libc/pull/4704)) - QNX NTO: Add `cfsetspeed` ([#&#8203;4704](https://github.com/rust-lang/libc/pull/4704)) - Redox: Add `getresgid` and `getresuid` ([#&#8203;4752](https://github.com/rust-lang/libc/pull/4752)) - Redox: Add `setresgid` and `setresuid` ([#&#8203;4752](https://github.com/rust-lang/libc/pull/4752)) - VxWorks: Add definitions from `select.h`, `stat.h`, `poll.h`, `ttycom.h`, `utsname.h`, `resource.h`, `mman.h`, `udp.h`, `in.h`, `in6.h`, `if.h`, `fnmatch.h`, and `sioLibCommon.h` ([#&#8203;4781](https://github.com/rust-lang/libc/pull/4781)) - VxWorks: Add missing defines/functions needed by rust stdlib ([#&#8203;4779](https://github.com/rust-lang/libc/pull/4779)) - WASI: Add more definitions for libstd ([#&#8203;4747](https://github.com/rust-lang/libc/pull/4747)) ##### Deprecated: - Apple: Deprecate `TIOCREMOTE` ([#&#8203;4764](https://github.com/rust-lang/libc/pull/4764)) ##### Fixed: Note that there were a large number of fixes on NetBSD for this `libc` release, some of which include minor breakage. - AIX: Change errno `EWOULDBLOCK` to make it an alias of `EAGAIN` ([#&#8203;4790](https://github.com/rust-lang/libc/pull/4790)) - AIX: Resolve function comparison and `unnecessary_transmutes` warnings ([#&#8203;4780](https://github.com/rust-lang/libc/pull/4780)) - Apple: Correct the value of `SF_SETTABLE` ([#&#8203;4764](https://github.com/rust-lang/libc/pull/4764)) - DragonflyBSD: Fix the type of `mcontext_t.mc_fpregs` ([#]()) - EspIDF: Fix the duplicate definition of `gethostname` ([#&#8203;4773](https://github.com/rust-lang/libc/pull/4773)) - L4Re: Update available pthread API ([#&#8203;4836](https://github.com/rust-lang/libc/pull/4836)) - Linux: Correct the value of `NFT_MSG_MAX` ([#&#8203;4761](https://github.com/rust-lang/libc/pull/4761)) - Linux: Remove incorrect `repr(align(8))` for `canxl_frame` ([#&#8203;4760](https://github.com/rust-lang/libc/pull/4760)) - Make `eventfd` argument names match OS docs/headers ([#&#8203;4830](https://github.com/rust-lang/libc/pull/4830)) - NetBSD: Account for upstream changes to ptrace with LWP ([#&#8203;4782](https://github.com/rust-lang/libc/pull/4782)) - NetBSD: Correct `ipc_perm`, split from OpenBSD as `ipc.rs` ([#&#8203;4782](https://github.com/rust-lang/libc/pull/4782)) - NetBSD: Correct a number of symbol link names ([#&#8203;4782](https://github.com/rust-lang/libc/pull/4782)) - NetBSD: Correct the type of `kinfo_vmentry.kve_path` ([#]()) - NetBSD: Fix `uucred.cr_ngroups` from `int` to `short` ([#&#8203;4782](https://github.com/rust-lang/libc/pull/4782)) - NetBSD: Fix the type of `kevent.udata` ([#&#8203;4782](https://github.com/rust-lang/libc/pull/4782)) - NetBSD: Fix the type of `mcontext_t.__fpregs` ([#&#8203;4782](https://github.com/rust-lang/libc/pull/4782)) - NetBSD: Fix the value of `PT_SUSPEND` ([#&#8203;4782](https://github.com/rust-lang/libc/pull/4782)) - NetBSD: Fix the values of FNM\_\* constants ([#&#8203;4782](https://github.com/rust-lang/libc/pull/4782)) - NetBSD: Increase the size of `sockaddr_dl.sdl_data` from 12 to 24 ([#&#8203;4782](https://github.com/rust-lang/libc/pull/4782)) - NetBSD: Introduce `if_.rs`, fix the definition of `ifreq` ([#&#8203;4782](https://github.com/rust-lang/libc/pull/4782)) - NetBSD: Introduce `time.rs`, fix the values of `CLOCK_*_CPUTIME_ID` ([#&#8203;4782](https://github.com/rust-lang/libc/pull/4782)) - NetBSD: Introduce `timex.rs` ([#&#8203;4782](https://github.com/rust-lang/libc/pull/4782)) - NetBSD: Introduce `types.rs`, correct the definition of `lwpid_t` ([#&#8203;4782](https://github.com/rust-lang/libc/pull/4782)) - NetBSD: Introduce `utmp_.rs`, correct the definition of `lastlog` ([#&#8203;4782](https://github.com/rust-lang/libc/pull/4782)) - NetBSD: Introduce `utmpx_.rs`, correct utmpx definitions ([#&#8203;4782](https://github.com/rust-lang/libc/pull/4782)) - NetBSD: Make `_cpuset` an extern type ([#&#8203;4782](https://github.com/rust-lang/libc/pull/4782)) - NetBSD: RISC-V 64: Fix the `mcontext` types ([#&#8203;4782](https://github.com/rust-lang/libc/pull/4782)) - Nuttx: Resolve warnings ([#&#8203;4773](https://github.com/rust-lang/libc/pull/4773)) - OHOS: Don't emit duplicate lfs64 definitions ([#&#8203;4804](https://github.com/rust-lang/libc/pull/4804)) - Redox: Fix the type of `pid_t` ([#&#8203;4825](https://github.com/rust-lang/libc/pull/4825)) - WASI: Gate `__wasilibc_register_preopened_fd` ([#&#8203;4837](https://github.com/rust-lang/libc/pull/4837)) - Wali: Fix unknown config ([#&#8203;4773](https://github.com/rust-lang/libc/pull/4773)) ##### Changed - AIX: Declare field 'tv\_nsec' of structure 'timespec' as 'i32' in both 32-bit and 64-bit modes ([#&#8203;4750](https://github.com/rust-lang/libc/pull/4750)) - DragonFly: Avoid usage of `thread_local` ([#&#8203;3653](https://github.com/rust-lang/libc/pull/3653)) - Linux: Update the definition for `ucontext_t` and unskip its tests ([#&#8203;4760](https://github.com/rust-lang/libc/pull/4760)) - MinGW: Set `L_tmpnam` and `TMP_MAX` to the UCRT value ([#&#8203;4566](https://github.com/rust-lang/libc/pull/4566)) - WASI: More closely align pthread type reprs ([#&#8203;4747](https://github.com/rust-lang/libc/pull/4747)) - Simplify rustc-check-cfg emission in build.rs ([#&#8203;4724](https://github.com/rust-lang/libc/pull/4724)) - Transition a number of definitions to the new source structure (internal change) ##### Removed - MIPS Musl: Remove rogue definition of `SIGSTKFLT` ([#&#8203;4749](https://github.com/rust-lang/libc/pull/4749)) - NetBSD: Make `statvfs.f_spare` non-public ([#&#8203;4782](https://github.com/rust-lang/libc/pull/4782)) - NetBSD: Remove BPF constants ([#&#8203;4782](https://github.com/rust-lang/libc/pull/4782)) - NetBSD: Remove `*_MAXID` constants and `AT_SUN_LDPGSIZE` ([#&#8203;4782](https://github.com/rust-lang/libc/pull/4782)) - NetBSD: Remove `IFF_NOTRAILERS` ([#&#8203;4782](https://github.com/rust-lang/libc/pull/4782)) - NetBSD: Remove `vm_size_t` ([#&#8203;4782](https://github.com/rust-lang/libc/pull/4782)) - NetBSD: Replace REG\_ENOSYS with REG\_ILLSEQ ([#&#8203;4782](https://github.com/rust-lang/libc/pull/4782)) ### [`v0.2.177`](https://github.com/rust-lang/libc/releases/tag/0.2.177) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.176...0.2.177) ##### Added - Apple: Add `TIOCGETA`, `TIOCSETA`, `TIOCSETAW`, `TIOCSETAF` constants ([#&#8203;4736](https://github.com/rust-lang/libc/pull/4736)) - Apple: Add `pthread_cond_timedwait_relative_np` ([#&#8203;4719](https://github.com/rust-lang/libc/pull/4719)) - BSDs: Add `_CS_PATH` constant ([#&#8203;4738](https://github.com/rust-lang/libc/pull/4738)) - Linux-like: Add `SIGEMT` for mips\* and sparc\* architectures ([#&#8203;4730](https://github.com/rust-lang/libc/pull/4730)) - OpenBSD: Add `elf_aux_info` ([#&#8203;4729](https://github.com/rust-lang/libc/pull/4729)) - Redox: Add more sysconf constants ([#&#8203;4728](https://github.com/rust-lang/libc/pull/4728)) - Windows: Add `wcsnlen` ([#&#8203;4721](https://github.com/rust-lang/libc/pull/4721)) ##### Changed - WASIP2: Invert conditional to include p2 APIs ([#&#8203;4733](https://github.com/rust-lang/libc/pull/4733)) ### [`v0.2.176`](https://github.com/rust-lang/libc/releases/tag/0.2.176) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.175...0.2.176) ##### Support - The default FreeBSD version has been raised from 11 to 12. This matches `rustc` since 1.78. ([#&#8203;2406](https://github.com/rust-lang/libc/pull/2406)) - `Debug` is now always implemented, rather than being gated behind the `extra_traits` feature. ([#&#8203;4624](https://github.com/rust-lang/libc/pull/4624)) ##### Added - AIX: Restore some non-POSIX functions guarded by the `_KERNEL` macro. ([#&#8203;4607](https://github.com/rust-lang/libc/pull/4607)) - FreeBSD 14: Add `st_fileref` to `struct stat` ([#&#8203;4642](https://github.com/rust-lang/libc/pull/4642)) - Haiku: Add the `accept4` POSIX call ([#&#8203;4586](https://github.com/rust-lang/libc/pull/4586)) - Introduce a wrapper for representing padding ([#&#8203;4632](https://github.com/rust-lang/libc/pull/4632)) - Linux: Add `EM_RISCV` ([#&#8203;4659](https://github.com/rust-lang/libc/pull/4659)) - Linux: Add `MS_NOSYMFOLLOW` ([#&#8203;4389](https://github.com/rust-lang/libc/pull/4389)) - Linux: Add `backtrace_symbols(_fd)` ([#&#8203;4668](https://github.com/rust-lang/libc/pull/4668)) - Linux: Add missing `SOL_PACKET` optnames ([#&#8203;4669](https://github.com/rust-lang/libc/pull/4669)) - Musl s390x: Add `SYS_mseal` ([#&#8203;4549](https://github.com/rust-lang/libc/pull/4549)) - NuttX: Add `__errno` ([#&#8203;4687](https://github.com/rust-lang/libc/pull/4687)) - Redox: Add `dirfd`, `VDISABLE`, and resource consts ([#&#8203;4660](https://github.com/rust-lang/libc/pull/4660)) - Redox: Add more `resource.h`, `fcntl.h` constants ([#&#8203;4666](https://github.com/rust-lang/libc/pull/4666)) - Redox: Enable `strftime` and `mkostemp[s]` ([#&#8203;4629](https://github.com/rust-lang/libc/pull/4629)) - Unix, Windows: Add `qsort_r` (Unix), and `qsort(_s)` (Windows) ([#&#8203;4677](https://github.com/rust-lang/libc/pull/4677)) - Unix: Add `dlvsym` for Linux-gnu, FreeBSD, and NetBSD ([#&#8203;4671](https://github.com/rust-lang/libc/pull/4671)) - Unix: Add `sigqueue` ([#&#8203;4620](https://github.com/rust-lang/libc/pull/4620)) ##### Changed - FreeBSD 15: Mark `kinfo_proc` as non-exhaustive ([#&#8203;4553](https://github.com/rust-lang/libc/pull/4553)) - FreeBSD: Set the ELF symbol version for `readdir_r` ([#&#8203;4694](https://github.com/rust-lang/libc/pull/4694)) - Linux: Correct the config for whether or not `epoll_event` is packed ([#&#8203;4639](https://github.com/rust-lang/libc/pull/4639)) - Tests: Replace the old `ctest` with the much more reliable new implementation ([#&#8203;4655](https://github.com/rust-lang/libc/pull/4655) and many related PRs) ##### Fixed - AIX: Fix the type of the 4th arguement of `getgrnam_r` (\[[#&#8203;4656](https://github.com/rust-lang/libc/issues/4656)]\([#&#8203;4656](https://github.com/rust-lang/libc/pull/4656) - FreeBSD: Limit `P_IDLEPROC` to FreeBSD 15 ([#&#8203;4640](https://github.com/rust-lang/libc/pull/4640)) - FreeBSD: Limit `mcontext_t::mc_tlsbase` to FreeBSD 15 ([#&#8203;4640](https://github.com/rust-lang/libc/pull/464)) - FreeBSD: Update gating of `mcontext_t.mc_tlsbase` ([#&#8203;4703](https://github.com/rust-lang/libc/pull/4703)) - Musl s390x: Correct the definition of `statfs[64]` ([#&#8203;4549](https://github.com/rust-lang/libc/pull/4549)) - Musl s390x: Make `fpreg_t` a union ([#&#8203;4549](https://github.com/rust-lang/libc/pull/4549)) - Redox: Fix the types of `gid_t` and `uid_t` ([#&#8203;4689](https://github.com/rust-lang/libc/pull/4689)) - Redox: Fix the value of `MAP_FIXED` ([#&#8203;4684](https://github.com/rust-lang/libc/pull/4684)) ##### Deprecated - Apple: Correct the `deprecated` attribute for `iconv` ([`a97a0b53`](https://github.com/rust-lang/libc/commit/a97a0b53fb7faf5f99cd720ab12b1b8a5bf9f950)) - FreeBSD: Deprecate `TIOCMGDTRWAIT` and `TIOCMSDTRWAIT` ([#&#8203;4685](https://github.com/rust-lang/libc/pull/4685)) ##### Removed - FreeBSD: Remove `JAIL_{GET,SET}_MASK`, `_MC_FLAG_MASK` ([#&#8203;4691](https://github.com/rust-lang/libc/pull/4691)) ### [`v0.2.175`](https://github.com/rust-lang/libc/releases/tag/0.2.175) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.174...0.2.175) ##### Added - AIX: Add `getpeereid` ([#&#8203;4524](https://github.com/rust-lang/libc/pull/4524)) - AIX: Add `struct ld_info` and friends ([#&#8203;4578](https://github.com/rust-lang/libc/pull/4578)) - AIX: Retore `struct winsize` ([#&#8203;4577](https://github.com/rust-lang/libc/pull/4577)) - Android: Add UDP socket option constants ([#&#8203;4619](https://github.com/rust-lang/libc/pull/4619)) - Android: Add `CLONE_CLEAR_SIGHAND` and `CLONE_INTO_CGROUP` ([#&#8203;4502](https://github.com/rust-lang/libc/pull/4502)) - Android: Add more `prctl` constants ([#&#8203;4531](https://github.com/rust-lang/libc/pull/4531)) - FreeBSD Add further TCP stack-related constants ([#&#8203;4196](https://github.com/rust-lang/libc/pull/4196)) - FreeBSD x86-64: Add `mcontext_t.mc_tlsbase ` ([#&#8203;4503](https://github.com/rust-lang/libc/pull/4503)) - FreeBSD15: Add `kinfo_proc.ki_uerrmsg` ([#&#8203;4552](https://github.com/rust-lang/libc/pull/4552)) - FreeBSD: Add `in_conninfo` ([#&#8203;4482](https://github.com/rust-lang/libc/pull/4482)) - FreeBSD: Add `xinpgen` and related types ([#&#8203;4482](https://github.com/rust-lang/libc/pull/4482)) - FreeBSD: Add `xktls_session` ([#&#8203;4482](https://github.com/rust-lang/libc/pull/4482)) - Haiku: Add functionality from `libbsd` ([#&#8203;4221](https://github.com/rust-lang/libc/pull/4221)) - Linux: Add `SECBIT_*` ([#&#8203;4480](https://github.com/rust-lang/libc/pull/4480)) - NetBSD, OpenBSD: Export `ioctl` request generator macros ([#&#8203;4460](https://github.com/rust-lang/libc/pull/4460)) - NetBSD: Add `ptsname_r` ([#&#8203;4608](https://github.com/rust-lang/libc/pull/4608)) - RISCV32: Add time-related syscalls ([#&#8203;4612](https://github.com/rust-lang/libc/pull/4612)) - Solarish: Add `strftime*` ([#&#8203;4453](https://github.com/rust-lang/libc/pull/4453)) - linux: Add `EXEC_RESTRICT_*` and `EXEC_DENY_*` ([#&#8203;4545](https://github.com/rust-lang/libc/pull/4545)) ##### Changed - AIX: Add `const` to signatures to be consistent with other platforms ([#&#8203;4563](https://github.com/rust-lang/libc/pull/4563)) ##### Fixed - AIX: Fix the type of `struct statvfs.f_fsid` ([#&#8203;4576](https://github.com/rust-lang/libc/pull/4576)) - AIX: Fix the type of constants for the `ioctl` `request` argument ([#&#8203;4582](https://github.com/rust-lang/libc/pull/4582)) - AIX: Fix the types of `stat{,64}.st_*tim` ([#&#8203;4597](https://github.com/rust-lang/libc/pull/4597)) - AIX: Use unique `errno` values ([#&#8203;4507](https://github.com/rust-lang/libc/pull/4507)) - Build: Fix an incorrect `target_os` -> `target_arch` check ([#&#8203;4550](https://github.com/rust-lang/libc/pull/4550)) - FreeBSD: Fix the type of `xktls_session_onedir.ifnet` ([#&#8203;4552](https://github.com/rust-lang/libc/pull/4552)) - Mips64 musl: Fix the type of `nlink_t` ([#&#8203;4509](https://github.com/rust-lang/libc/pull/4509)) - Mips64 musl: Use a special MIPS definition of `stack_t` ([#&#8203;4528](https://github.com/rust-lang/libc/pull/4528)) - Mips64: Fix `SI_TIMER`, `SI_MESGQ` and `SI_ASYNCIO` definitions ([#&#8203;4529](https://github.com/rust-lang/libc/pull/4529)) - Musl Mips64: Swap the order of `si_errno` and `si_code` in `siginfo_t` ([#&#8203;4530](https://github.com/rust-lang/libc/pull/4530)) - Musl Mips64: Use a special MIPS definition of `statfs` ([#&#8203;4527](https://github.com/rust-lang/libc/pull/4527)) - Musl: Fix the definition of `fanotify_event_metadata` ([#&#8203;4510](https://github.com/rust-lang/libc/pull/4510)) - NetBSD: Correct `enum fae_action` to be `#[repr(C)]` ([#&#8203;60a8cfd5](https://github.com/rust-lang/libc/commit/60a8cfd564f83164d45b9533ff7a0d7371878f2a)) - PSP: Correct `char` -> `c_char` ([eaab4fc3](https://github.com/rust-lang/libc/commit/eaab4fc3f05dc646a953d4fd5ba46dfa1f8bd6f6)) - PowerPC musl: Fix `termios` definitions ([#&#8203;4518](https://github.com/rust-lang/libc/pull/4518)) - PowerPC musl: Fix the definition of `EDEADLK` ([#&#8203;4517](https://github.com/rust-lang/libc/pull/4517)) - PowerPC musl: Fix the definition of `NCCS` ([#&#8203;4513](https://github.com/rust-lang/libc/pull/4513)) - PowerPC musl: Fix the definitions of `MAP_LOCKED` and `MAP_NORESERVE` ([#&#8203;4516](https://github.com/rust-lang/libc/pull/4516)) - PowerPC64 musl: Fix the definition of `shmid_ds` ([#&#8203;4519](https://github.com/rust-lang/libc/pull/4519)) ##### Deprecated - Linux: `MAP_32BIT` is only defined on x86 on non-x86 architectures ([#&#8203;4511](https://github.com/rust-lang/libc/pull/4511)) ##### Removed - AIX: Remove duplicate constant definitions `FIND` and `ENTER` ([#&#8203;4588](https://github.com/rust-lang/libc/pull/4588)) - s390x musl: Remove `O_FSYNC` ([#&#8203;4515](https://github.com/rust-lang/libc/pull/4515)) - s390x musl: Remove `RTLD_DEEPBIND` ([#&#8203;4515](https://github.com/rust-lang/libc/pull/4515)) ### [`v0.2.174`](https://github.com/rust-lang/libc/releases/tag/0.2.174) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.173...0.2.174) ##### Added - Linux: Make `pidfd_info` fields pub ([#&#8203;4487](https://github.com/rust-lang/libc/pull/4487)) ##### Fixed - Gnu x32: Add missing `timespec.tv_nsec` ([#&#8203;4497](https://github.com/rust-lang/libc/pull/4497)) - NuttX: Use `nlink_t` type for `st_nlink` in `struct stat` definition ([#&#8203;4483](https://github.com/rust-lang/libc/pull/4483)) ##### Other - Allow new `unpredictable_function_pointer_comparisons` lints ([#&#8203;4489](https://github.com/rust-lang/libc/pull/4489)) - OpenBSD: Fix some clippy warnings to use `pointer::cast`. ([#&#8203;4490](https://github.com/rust-lang/libc/pull/4490)) - Remove unessecary semicolons from definitions of `CMSG_NXTHDR`. ([#&#8203;4492](https://github.com/rust-lang/libc/pull/4492)) ### [`v0.2.173`](https://github.com/rust-lang/libc/releases/tag/0.2.173) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.172...0.2.173) ##### Added - AIX: Add an AIX triple to Cargo.toml for doc ([#&#8203;4475](https://github.com/rust-lang/libc/pull/4475)) - FreeBSD: Add the `SO_SPLICE` socket option support for FreeBSD >= 14.2 ([#&#8203;4451](https://github.com/rust-lang/libc/pull/4451)) - Linux GNU: Prepare for supporting `_TIME_BITS=64` ([#&#8203;4433](https://github.com/rust-lang/libc/pull/4433)) - Linux: Add constant PACKET\_IGNORE\_OUTGOING ([#&#8203;4319](https://github.com/rust-lang/libc/pull/4319)) - Linux: Add constants and types for `nsfs` ioctls ([#&#8203;4436](https://github.com/rust-lang/libc/pull/4436)) - Linux: Add constants for Memory-Deny-Write-Execute `prctls` ([#&#8203;4400](https://github.com/rust-lang/libc/pull/4400)) - Linux: Add constants from `linux/cn_proc.h` and `linux/connector.h` ([#&#8203;4434](https://github.com/rust-lang/libc/pull/4434)) - Linux: Add new flags for `pwritev2` and `preadv2` ([#&#8203;4452](https://github.com/rust-lang/libc/pull/4452)) - Linux: Add pid\_type enum values ([#&#8203;4403](https://github.com/rust-lang/libc/pull/4403)) - Linux: Update pidfd constants and types (Linux 6.9-6.15) ([#&#8203;4402](https://github.com/rust-lang/libc/pull/4402)) - Loongarch64 musl: Define the `MADV_SOFT_OFFLINE` constant ([#&#8203;4448](https://github.com/rust-lang/libc/pull/4448)) - Musl: Add new fields since 1.2.0/1.2.2 to `struct tcp_info` ([#&#8203;4443](https://github.com/rust-lang/libc/pull/4443)) - Musl: Prepare for supporting v1.2.3 ([#&#8203;4443](https://github.com/rust-lang/libc/pull/4443)) - NuttX: Add `arc4random` and `arc4random_buf` ([#&#8203;4464](https://github.com/rust-lang/libc/pull/4464)) - RISC-V Musl: Add `MADV_SOFT_OFFLINE` definition ([#&#8203;4447](https://github.com/rust-lang/libc/pull/4447)) - Redox: Define SCM\_RIGHTS ([#&#8203;4440](https://github.com/rust-lang/libc/pull/4440)) - VxWorks: Add missing UTIME defines and TASK\_RENAME\_LENGTH ([#&#8203;4407](https://github.com/rust-lang/libc/pull/4407)) - Windows: Add more `time.h` functions ([#&#8203;4427](https://github.com/rust-lang/libc/pull/4427)) ##### Changed - Redox: Update `SA_` constants. ([#&#8203;4426](https://github.com/rust-lang/libc/pull/4426)) - Redox: make `CMSG_ALIGN`, `CMSG_LEN`, and `CMSG_SPACE` const functions ([#&#8203;4441](https://github.com/rust-lang/libc/pull/4441)) ##### Fixed - AIX: Enable libc-test and fix definitions/declarations. ([#&#8203;4450](https://github.com/rust-lang/libc/pull/4450)) - Emscripten: Fix querying emcc on windows (use emcc.bat) ([#&#8203;4248](https://github.com/rust-lang/libc/pull/4248)) - Hurd: Fix build from missing `fpos_t` ([#&#8203;4472](https://github.com/rust-lang/libc/pull/4472)) - Loongarch64 Musl: Fix the `struct ipc_perm` bindings ([#&#8203;4384](https://github.com/rust-lang/libc/pull/4384)) - Musl: Fix the `O_LARGEFILE` constant value. ([#&#8203;4443](https://github.com/rust-lang/libc/pull/4443)) ### [`v0.2.172`](https://github.com/rust-lang/libc/releases/tag/0.2.172) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.171...0.2.172) ##### Added - Android: Add `getauxval` for 32-bit targets ([#&#8203;4338](https://github.com/rust-lang/libc/pull/4338)) - Android: Add `if_tun.h` ioctls ([#&#8203;4379](https://github.com/rust-lang/libc/pull/4379)) - Android: Define `SO_BINDTOIFINDEX` ([#&#8203;4391](https://github.com/rust-lang/libc/pull/4391)) - Cygwin: Add `posix_spawn_file_actions_add[f]chdir[_np]` ([#&#8203;4387](https://github.com/rust-lang/libc/pull/4387)) - Cygwin: Add new socket options ([#&#8203;4350](https://github.com/rust-lang/libc/pull/4350)) - Cygwin: Add statfs & fcntl ([#&#8203;4321](https://github.com/rust-lang/libc/pull/4321)) - FreeBSD: Add `filedesc` and `fdescenttbl` ([#&#8203;4327](https://github.com/rust-lang/libc/pull/4327)) - Glibc: Add unstable support for \_FILE\_OFFSET\_BITS=64 ([#&#8203;4345](https://github.com/rust-lang/libc/pull/4345)) - Hermit: Add `AF_UNSPEC` ([#&#8203;4344](https://github.com/rust-lang/libc/pull/4344)) - Hermit: Add `AF_VSOCK` ([#&#8203;4344](https://github.com/rust-lang/libc/pull/4344)) - Illumos, NetBSD: Add `timerfd` APIs ([#&#8203;4333](https://github.com/rust-lang/libc/pull/4333)) - Linux: Add `_IO`, `_IOW`, `_IOR`, `_IOWR` to the exported API ([#&#8203;4325](https://github.com/rust-lang/libc/pull/4325)) - Linux: Add `tcp_info` to uClibc bindings ([#&#8203;4347](https://github.com/rust-lang/libc/pull/4347)) - Linux: Add further BPF program flags ([#&#8203;4356](https://github.com/rust-lang/libc/pull/4356)) - Linux: Add missing INPUT\_PROP\_XXX flags from `input-event-codes.h` ([#&#8203;4326](https://github.com/rust-lang/libc/pull/4326)) - Linux: Add missing TLS bindings ([#&#8203;4296](https://github.com/rust-lang/libc/pull/4296)) - Linux: Add more constants from `seccomp.h` ([#&#8203;4330](https://github.com/rust-lang/libc/pull/4330)) - Linux: Add more glibc `ptrace_sud_config` and related `PTRACE_*ET_SYSCALL_USER_DISPATCH_CONFIG`. ([#&#8203;4386](https://github.com/rust-lang/libc/pull/4386)) - Linux: Add new netlink flags ([#&#8203;4288](https://github.com/rust-lang/libc/pull/4288)) - Linux: Define ioctl codes on more architectures ([#&#8203;4382](https://github.com/rust-lang/libc/pull/4382)) - Linux: Add missing `pthread_attr_setstack` ([#&#8203;4349](https://github.com/rust-lang/libc/pull/4349)) - Musl: Add missing `utmpx` API ([#&#8203;4332](https://github.com/rust-lang/libc/pull/4332)) - Musl: Enable `getrandom` on all platforms ([#&#8203;4346](https://github.com/rust-lang/libc/pull/4346)) - NuttX: Add more signal constants ([#&#8203;4353](https://github.com/rust-lang/libc/pull/4353)) - QNX: Add QNX 7.1-iosock and 8.0 to list of additional cfgs ([#&#8203;4169](https://github.com/rust-lang/libc/pull/4169)) - QNX: Add support for alternative Neutrino network stack `io-sock` ([#&#8203;4169](https://github.com/rust-lang/libc/pull/4169)) - Redox: Add more `sys/socket.h` and `sys/uio.h` definitions ([#&#8203;4388](https://github.com/rust-lang/libc/pull/4388)) - Solaris: Temporarily define `O_DIRECT` and `SIGINFO` ([#&#8203;4348](https://github.com/rust-lang/libc/pull/4348)) - Solarish: Add `secure_getenv` ([#&#8203;4342](https://github.com/rust-lang/libc/pull/4342)) - VxWorks: Add missing `d_type` member to `dirent` ([#&#8203;4352](https://github.com/rust-lang/libc/pull/4352)) - VxWorks: Add missing signal-related constsants ([#&#8203;4352](https://github.com/rust-lang/libc/pull/4352)) - VxWorks: Add more error codes ([#&#8203;4337](https://github.com/rust-lang/libc/pull/4337)) ##### Deprecated - FreeBSD: Deprecate `TCP_PCAP_OUT` and `TCP_PCAP_IN` ([#&#8203;4381](https://github.com/rust-lang/libc/pull/4381)) ##### Fixed - Cygwin: Fix member types of `statfs` ([#&#8203;4324](https://github.com/rust-lang/libc/pull/4324)) - Cygwin: Fix tests ([#&#8203;4357](https://github.com/rust-lang/libc/pull/4357)) - Hermit: Make `AF_INET = 3` ([#&#8203;4344](https://github.com/rust-lang/libc/pull/4344)) - Musl: Fix the syscall table on RISC-V-32 ([#&#8203;4335](https://github.com/rust-lang/libc/pull/4335)) - Musl: Fix the value of `SA_ONSTACK` on RISC-V-32 ([#&#8203;4335](https://github.com/rust-lang/libc/pull/4335)) - VxWorks: Fix a typo in the `waitpid` parameter name ([#&#8203;4334](https://github.com/rust-lang/libc/pull/4334)) ##### Removed - Musl: Remove `O_FSYNC` on RISC-V-32 (use `O_SYNC` instead) ([#&#8203;4335](https://github.com/rust-lang/libc/pull/4335)) - Musl: Remove `RTLD_DEEPBIND` on RISC-V-32 ([#&#8203;4335](https://github.com/rust-lang/libc/pull/4335)) ##### Other - CI: Add matrix env variables to the environment ([#&#8203;4345](https://github.com/rust-lang/libc/pull/4345)) - CI: Always deny warnings ([#&#8203;4363](https://github.com/rust-lang/libc/pull/4363)) - CI: Always upload successfully created artifacts ([#&#8203;4345](https://github.com/rust-lang/libc/pull/4345)) - CI: Install musl from source for loongarch64 ([#&#8203;4320](https://github.com/rust-lang/libc/pull/4320)) - CI: Revert "Also skip `MFD_EXEC` and `MFD_NOEXEC_SEAL` on sparc64" ([#]()) - CI: Use `$PWD` instead of `$(pwd)` in run-docker ([#&#8203;4345](https://github.com/rust-lang/libc/pull/4345)) - Solarish: Restrict `openpty` and `forkpty` polyfills to Illumos, replace Solaris implementation with bindings ([#&#8203;4329](https://github.com/rust-lang/libc/pull/4329)) - Testing: Ensure the makedev test does not emit unused errors ([#&#8203;4363](https://github.com/rust-lang/libc/pull/4363)) ### [`v0.2.171`](https://github.com/rust-lang/libc/releases/tag/0.2.171) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.170...0.2.171) ##### Added - Android: Add `if_nameindex`/`if_freenameindex` support ([#&#8203;4247](https://github.com/rust-lang/libc/pull/4247)) - Apple: Add missing proc types and constants ([#&#8203;4310](https://github.com/rust-lang/libc/pull/4310)) - BSD: Add `devname` ([#&#8203;4285](https://github.com/rust-lang/libc/pull/4285)) - Cygwin: Add PTY and group API ([#&#8203;4309](https://github.com/rust-lang/libc/pull/4309)) - Cygwin: Add support ([#&#8203;4279](https://github.com/rust-lang/libc/pull/4279)) - FreeBSD: Make `spawn.h` interfaces available on all FreeBSD-like systems ([#&#8203;4294](https://github.com/rust-lang/libc/pull/4294)) - Linux: Add `AF_XDP` structs for all Linux environments ([#&#8203;4163](https://github.com/rust-lang/libc/pull/4163)) - Linux: Add SysV semaphore constants ([#&#8203;4286](https://github.com/rust-lang/libc/pull/4286)) - Linux: Add `F_SEAL_EXEC` ([#&#8203;4316](https://github.com/rust-lang/libc/pull/4316)) - Linux: Add `SO_PREFER_BUSY_POLL` and `SO_BUSY_POLL_BUDGET` ([#&#8203;3917](https://github.com/rust-lang/libc/pull/3917)) - Linux: Add `devmem` structs ([#&#8203;4299](https://github.com/rust-lang/libc/pull/4299)) - Linux: Add socket constants up to `SO_DEVMEM_DONTNEED` ([#&#8203;4299](https://github.com/rust-lang/libc/pull/4299)) - NetBSD, OpenBSD, DragonflyBSD: Add `closefrom` ([#&#8203;4290](https://github.com/rust-lang/libc/pull/4290)) - NuttX: Add `pw_passwd` field to `passwd` ([#&#8203;4222](https://github.com/rust-lang/libc/pull/4222)) - Solarish: define `IP_BOUND_IF` and `IPV6_BOUND_IF` ([#&#8203;4287](https://github.com/rust-lang/libc/pull/4287)) - Wali: Add bindings for `wasm32-wali-linux-musl` target ([#&#8203;4244](https://github.com/rust-lang/libc/pull/4244)) ##### Changed - AIX: Use `sa_sigaction` instead of a union ([#&#8203;4250](https://github.com/rust-lang/libc/pull/4250)) - Make `msqid_ds.__msg_cbytes` public ([#&#8203;4301](https://github.com/rust-lang/libc/pull/4301)) - Unix: Make all `major`, `minor`, `makedev` into `const fn` ([#&#8203;4208](https://github.com/rust-lang/libc/pull/4208)) ##### Deprecated - Linux: Deprecate obsolete packet filter interfaces ([#&#8203;4267](https://github.com/rust-lang/libc/pull/4267)) ##### Fixed - Cygwin: Fix strerror\_r ([#&#8203;4308](https://github.com/rust-lang/libc/pull/4308)) - Cygwin: Fix usage of f! ([#&#8203;4308](https://github.com/rust-lang/libc/pull/4308)) - Hermit: Make `stat::st_size` signed ([#&#8203;4298](https://github.com/rust-lang/libc/pull/4298)) - Linux: Correct values for `SI_TIMER`, `SI_MESGQ`, `SI_ASYNCIO` ([#&#8203;4292](https://github.com/rust-lang/libc/pull/4292)) - NuttX: Update `tm_zone` and `d_name` fields to use `c_char` type ([#&#8203;4222](https://github.com/rust-lang/libc/pull/4222)) - Xous: Include the prelude to define `c_int` ([#&#8203;4304](https://github.com/rust-lang/libc/pull/4304)) ##### Other - Add labels to FIXMEs ([#&#8203;4231](https://github.com/rust-lang/libc/pull/4231), [#&#8203;4232](https://github.com/rust-lang/libc/pull/4232), [#&#8203;4234](https://github.com/rust-lang/libc/pull/4234), [#&#8203;4235](https://github.com/rust-lang/libc/pull/4235), [#&#8203;4236](https://github.com/rust-lang/libc/pull/4236)) - CI: Fix "cannot find libc" error on Sparc64 ([#&#8203;4317](https://github.com/rust-lang/libc/pull/4317)) - CI: Fix "cannot find libc" error on s390x ([#&#8203;4317](https://github.com/rust-lang/libc/pull/4317)) - CI: Pass `--no-self-update` to `rustup update` ([#&#8203;4306](https://github.com/rust-lang/libc/pull/4306)) - CI: Remove tests for the `i586-pc-windows-msvc` target ([#&#8203;4311](https://github.com/rust-lang/libc/pull/4311)) - CI: Remove the `check_cfg` job ([#&#8203;4322](https://github.com/rust-lang/libc/pull/4312)) - Change the range syntax that is giving `ctest` problems ([#&#8203;4311](https://github.com/rust-lang/libc/pull/4311)) - Linux: Split out the stat struct for gnu/b32/mips ([#&#8203;4276](https://github.com/rust-lang/libc/pull/4276)) ##### Removed - NuttX: Remove `pthread_set_name_np` ([#&#8203;4251](https://github.com/rust-lang/libc/pull/4251)) ### [`v0.2.170`](https://github.com/rust-lang/libc/releases/tag/0.2.170) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.169...0.2.170) ##### Added - Android: Declare `setdomainname` and `getdomainname` [#&#8203;4212](https://github.com/rust-lang/libc/pull/4212) - FreeBSD: Add `evdev` structures [#&#8203;3756](https://github.com/rust-lang/libc/pull/3756) - FreeBSD: Add the new `st_filerev` field to `stat32` ([#&#8203;4254](https://github.com/rust-lang/libc/pull/4254)) - Linux: Add `SI_*`` and `TRAP\_\*\`\` signal codes [#&#8203;4225](https://github.com/rust-lang/libc/pull/4225) - Linux: Add experimental configuration to enable 64-bit time in kernel APIs, set by `RUST_LIBC_UNSTABLE_LINUX_TIME_BITS64`. [#&#8203;4148](https://github.com/rust-lang/libc/pull/4148) - Linux: Add recent socket timestamping flags [#&#8203;4273](https://github.com/rust-lang/libc/pull/4273) - Linux: Added new CANFD\_FDF flag for the flags field of canfd\_frame [#&#8203;4223](https://github.com/rust-lang/libc/pull/4223) - Musl: add CLONE\_NEWTIME [#&#8203;4226](https://github.com/rust-lang/libc/pull/4226) - Solarish: add the posix\_spawn family of functions [#&#8203;4259](https://github.com/rust-lang/libc/pull/4259) ##### Deprecated - Linux: deprecate kernel modules syscalls [#&#8203;4228](https://github.com/rust-lang/libc/pull/4228) ##### Changed - Emscripten: Assume version is at least 3.1.42 [#&#8203;4243](https://github.com/rust-lang/libc/pull/4243) ##### Fixed - BSD: Correct the definition of `WEXITSTATUS` [#&#8203;4213](https://github.com/rust-lang/libc/pull/4213) - Hurd: Fix CMSG\_DATA on 64bit systems ([#&#8203;4240](https://github.com/rust-lang/libc/pull/424)) - NetBSD: fix `getmntinfo` ([#&#8203;4265](https://github.com/rust-lang/libc/pull/4265) - VxWorks: Fix the size of `time_t` [#&#8203;426](https://github.com/rust-lang/libc/pull/426) ##### Other - Add labels to FIXMEs [#&#8203;4230](https://github.com/rust-lang/libc/pull/4230), [#&#8203;4229](https://github.com/rust-lang/libc/pull/4229), [#&#8203;4237](https://github.com/rust-lang/libc/pull/4237) - CI: Bump FreeBSD CI to 13.4 and 14.2 [#&#8203;4260](https://github.com/rust-lang/libc/pull/4260) - Copy definitions from core::ffi and centralize them [#&#8203;4256](https://github.com/rust-lang/libc/pull/4256) - Define c\_char at top-level and remove per-target c\_char definitions [#&#8203;4202](https://github.com/rust-lang/libc/pull/4202) - Port style.rs to syn and add tests for the style checker [#&#8203;4220](https://github.com/rust-lang/libc/pull/4220) ### [`v0.2.169`](https://github.com/rust-lang/libc/releases/tag/0.2.169) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.168...0.2.169) ##### Added - FreeBSD: add more socket TCP stack constants [#&#8203;4193](https://github.com/rust-lang/libc/pull/4193) - Fuchsia: add a `sockaddr_vm` definition [#&#8203;4194](https://github.com/rust-lang/libc/pull/4194) ##### Fixed **Breaking**: [rust-lang/rust#132975](https://github.com/rust-lang/rust/pull/132975) corrected the signedness of `core::ffi::c_char` on various Tier 2 and Tier 3 platforms (mostly Arm and RISC-V) to match Clang. This release contains the corresponding changes to `libc`, including the following specific pull requests: - ESP-IDF: Replace arch-conditional `c_char` with a reexport [#&#8203;4195](https://github.com/rust-lang/libc/pull/4195) - Fix `c_char` on various targets [#&#8203;4199](https://github.com/rust-lang/libc/pull/4199) - Mirror `c_char` configuration from `rust-lang/rust` [#&#8203;4198](https://github.com/rust-lang/libc/pull/4198) ##### Cleanup - Do not re-export `c_void` in target-specific code [#&#8203;4200](https://github.com/rust-lang/libc/pull/4200) ### [`v0.2.168`](https://github.com/rust-lang/libc/releases/tag/0.2.168) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.167...0.2.168) ##### Added - Linux: Add new process flags ([#&#8203;4174](https://github.com/rust-lang/libc/pull/4174)) - Linux: Make `IFA_*` constants available on all Linux targets [#&#8203;4185](https://github.com/rust-lang/libc/pull/4185) - Linux: add `MAP_DROPPABLE` [#&#8203;4173](https://github.com/rust-lang/libc/pull/4173) - Solaris, Illumos: add `SIGRTMIN` and `SIGRTMAX` [#&#8203;4171](https://github.com/rust-lang/libc/pull/4171) - Unix, Linux: adding POSIX `memccpy` and `mempcpy` GNU extension <[#&#8203;4186](https://github.com/rust-lang/libc/pull/4186). ##### Deprecated - FreeBSD: Deprecate the CAP\_UNUSED\* and CAP\_ALL\* constants ([#&#8203;4183](https://github.com/rust-lang/libc/pull/4183)) ##### Fixed - Make the `Debug` implementation for unions opaque ([#&#8203;4176](https://github.com/rust-lang/libc/pull/4176)) ##### Other - Allow the `unpredictable_function_pointer_comparisons` lint where needed [#&#8203;4177](https://github.com/rust-lang/libc/pull/4177) - CI: Upload artifacts created by libc-test [#&#8203;4180](https://github.com/rust-lang/libc/pull/4180) - CI: Use workflow commands to group output by target [#&#8203;4179](https://github.com/rust-lang/libc/pull/4179) - CI: add caching [#&#8203;4183](https://github.com/rust-lang/libc/pull/4183) ### [`v0.2.167`](https://github.com/rust-lang/libc/releases/tag/0.2.167) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.166...0.2.167) ##### Added - Solarish: add `st_fstype` to `stat` [#&#8203;4145](https://github.com/rust-lang/libc/pull/4145) - Trusty: Add `intptr_t` and `uintptr_t` ([#&#8203;4161](https://github.com/rust-lang/libc/pull/4161)) ##### Fixed - Fix the build with `rustc-dep-of-std` [#&#8203;4158](https://github.com/rust-lang/libc/pull/4158) - Wasi: Add back unsafe block for `clockid_t` static variables ([#&#8203;4157](https://github.com/rust-lang/libc/pull/4157)) ##### Cleanup - Create an internal prelude [#&#8203;4161](https://github.com/rust-lang/libc/pull/4161) - Fix `unused_qualifications`[#&#8203;4132](https://github.com/rust-lang/libc/pull/4132) ##### Other - CI: Check various FreeBSD versions ([#&#8203;4159](https://github.com/rust-lang/libc/pull/4159)) - CI: add a timeout for all jobs [#&#8203;4164](https://github.com/rust-lang/libc/pull/4164) - CI: verify MSRV for `wasm32-wasi` [#&#8203;4157](https://github.com/rust-lang/libc/pull/4157) - Migrate to the 2021 edition [#&#8203;4132](https://github.com/rust-lang/libc/pull/4132) ##### Removed - Remove one unused import after the edition 2021 bump ### [`v0.2.166`](https://github.com/rust-lang/libc/releases/tag/0.2.166) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.165...0.2.166) ##### Fixed This release resolves two cases of unintentional breakage from the previous release: - Revert removal of array size hacks [#&#8203;4150](https://github.com/rust-lang/libc/pull/4150) - Ensure `const extern` functions are always enabled [#&#8203;4151](https://github.com/rust-lang/libc/pull/4151) ### [`v0.2.165`](https://github.com/rust-lang/libc/releases/tag/0.2.165) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.164...0.2.165) ##### Added - Android: add `mkostemp`, `mkostemps` [#&#8203;3601](https://github.com/rust-lang/libc/pull/3601) - Android: add a few API 30 calls [#&#8203;3604](https://github.com/rust-lang/libc/pull/3604) - Android: add missing syscall constants [#&#8203;3558](https://github.com/rust-lang/libc/pull/3558) - Apple: add `in6_ifreq` [#&#8203;3617](https://github.com/rust-lang/libc/pull/3617) - Apple: add missing `sysctl` net types [#&#8203;4022](https://github.com/rust-lang/libc/pull/4022) (before release: remove `if_family_id` ([#&#8203;4137](https://github.com/rust-lang/libc/pull/4137))) - Freebsd: add `kcmp` call support [#&#8203;3746](https://github.com/rust-lang/libc/pull/3746) - Hurd: add `MAP_32BIT` and `MAP_EXCL` [#&#8203;4127](https://github.com/rust-lang/libc/pull/4127) - Hurd: add `domainname` field to `utsname` ([#&#8203;4089](https://github.com/rust-lang/libc/pull/4089)) - Linux GNU: add `f_flags` to struct `statfs` for arm, mips, powerpc and x86 [#&#8203;3663](https://github.com/rust-lang/libc/pull/3663) - Linux GNU: add `malloc_stats` [#&#8203;3596](https://github.com/rust-lang/libc/pull/3596) - Linux: add ELF relocation-related structs [#&#8203;3583](https://github.com/rust-lang/libc/pull/3583) - Linux: add `ptp_*` structs [#&#8203;4113](https://github.com/rust-lang/libc/pull/4113) - Linux: add `ptp_clock_caps` [#&#8203;4128](https://github.com/rust-lang/libc/pull/4128) - Linux: add `ptp_pin_function` and most `PTP_` constants [#&#8203;4114](https://github.com/rust-lang/libc/pull/4114) - Linux: add missing AF\_XDP structs & constants [#&#8203;3956](https://github.com/rust-lang/libc/pull/3956) - Linux: add missing netfilter consts ([#&#8203;3734](https://github.com/rust-lang/libc/pull/3734)) - Linux: add struct and constants for the `mount_setattr` syscall [#&#8203;4046](https://github.com/rust-lang/libc/pull/4046) - Linux: add wireless API [#&#8203;3441](https://github.com/rust-lang/libc/pull/3441) - Linux: expose the `len8_dlc` field of `can_frame` [#&#8203;3357](https://github.com/rust-lang/libc/pull/3357) - Musl: add `utmpx` API [#&#8203;3213](https://github.com/rust-lang/libc/pull/3213) - Musl: add missing syscall constants [#&#8203;4028](https://github.com/rust-lang/libc/pull/4028) - NetBSD: add `mcontext`-related data for RISCV64 [#&#8203;3468](https://github.com/rust-lang/libc/pull/3468) - Redox: add new `netinet` constants [#&#8203;3586](https://github.com/rust-lang/libc/pull/3586)) - Solarish: add `_POSIX_VDISABLE` ([#&#8203;4103](https://github.com/rust-lang/libc/pull/4103)) - Tests: Add a test that the `const extern fn` macro works [#&#8203;4134](https://github.com/rust-lang/libc/pull/4134) - Tests: Add test of primitive types against `std` [#&#8203;3616](https://github.com/rust-lang/libc/pull/3616) - Unix: Add `htonl`, `htons`, `ntohl`, `ntohs` [#&#8203;3669](https://github.com/rust-lang/libc/pull/3669) - Unix: add `aligned_alloc` [#&#8203;3843](https://github.com/rust-lang/libc/pull/3843) - Windows: add `aligned_realloc` [#&#8203;3592](https://github.com/rust-lang/libc/pull/3592) ##### Fixed - **breaking** Hurd: fix `MAP_HASSEMAPHORE` name ([#&#8203;4127](https://github.com/rust-lang/libc/pull/4127)) - **breaking** ulibc Mips: fix `SA_*` mismatched types ([#&#8203;3211](https://github.com/rust-lang/libc/pull/3211)) - Aix: fix an enum FFI safety warning [#&#8203;3644](https://github.com/rust-lang/libc/pull/3644) - Haiku: fix some typos ([#&#8203;3664](https://github.com/rust-lang/libc/pull/3664)) - Tests: fix `Elf{32,64}_Relr`-related tests [#&#8203;3647](https://github.com/rust-lang/libc/pull/3647) - Tests: fix libc-tests for `loongarch64-linux-musl` - Tests: fix some clippy warnings [#&#8203;3855](https://github.com/rust-lang/libc/pull/3855) - Tests: fix tests on `riscv64gc-unknown-freebsd` [#&#8203;4129](https://github.com/rust-lang/libc/pull/4129) ##### Deprecated - Apple: deprecate `iconv_open` [`25e022a`](https://github.com/rust-lang/libc/commit/25e022a22eca3634166ef472b748c297e60fcf7f) - Apple: deprecate `mach_task_self` [#&#8203;4095](https://github.com/rust-lang/libc/pull/4095) - Apple: update `mach` deprecation notices for things that were removed in `main` [#&#8203;4097](https://github.com/rust-lang/libc/pull/4097) ##### Cleanup - Adjust the `f!` macro to be more flexible [#&#8203;4107](https://github.com/rust-lang/libc/pull/4107) - Aix: remove duplicate constants [#&#8203;3643](https://github.com/rust-lang/libc/pull/3643) - CI: make scripts more uniform [#&#8203;4042](https://github.com/rust-lang/libc/pull/4042) - Drop the `libc_align` conditional [`b5b553d`](https://github.com/rust-lang/libc/commit/b5b553d0ee7de0d4781432a9a9a0a6445dd7f34f) - Drop the `libc_cfg_target_vendor` conditional [#&#8203;4060](https://github.com/rust-lang/libc/pull/4060) - Drop the `libc_const_size_of` conditional [`5a43dd2`](https://github.com/rust-lang/libc/commit/5a43dd2754366f99b3a83881b30246ce0e51833c) - Drop the `libc_core_cvoid` conditional [#&#8203;4060](https://github.com/rust-lang/libc/pull/4060) - Drop the `libc_int128` conditional [#&#8203;4060](https://github.com/rust-lang/libc/pull/4060) - Drop the `libc_non_exhaustive` conditional [#&#8203;4060](https://github.com/rust-lang/libc/pull/4060) - Drop the `libc_packedN` conditional [#&#8203;4060](https://github.com/rust-lang/libc/pull/4060) - Drop the `libc_priv_mod_use` conditional [`19c5937`](https://github.com/rust-lang/libc/commit/19c59376d11b015009fb9b04f233a30a1bf50a91) - Drop the `libc_union` conditional [`b9e4d80`](https://github.com/rust-lang/libc/commit/b9e4d8012f612dfe24147da3e69522763f92b6e3) - Drop the `long_array` conditional [#&#8203;4096](https://github.com/rust-lang/libc/pull/4096) - Drop the `ptr_addr_of` conditional [#&#8203;4065](https://github.com/rust-lang/libc/pull/4065) - Drop warnings about deprecated cargo features [#&#8203;4060](https://github.com/rust-lang/libc/pull/4060) - Eliminate uses of `struct_formatter` [#&#8203;4074](https://github.com/rust-lang/libc/pull/4074) - Fix a few other array size hacks [`d63be8b`](https://github.com/rust-lang/libc/commit/d63be8b69b0736753213f5d933767866a5801ee7) - Glibc: remove redundant definitions ([#&#8203;3261](https://github.com/rust-lang/libc/pull/3261)) - Musl: remove redundant definitions ([#&#8203;3261](https://github.com/rust-lang/libc/pull/3261)) - Musl: unify definitions of `siginfo_t` ([#&#8203;3261](https://github.com/rust-lang/libc/pull/3261)) - Musl: unify definitions of statfs and statfs64 ([#&#8203;3261](https://github.com/rust-lang/libc/pull/3261)) - Musl: unify definitions of statvfs and statvfs64 ([#&#8203;3261](https://github.com/rust-lang/libc/pull/3261)) - Musl: unify statx definitions ([#&#8203;3978](https://github.com/rust-lang/libc/pull/3978)) - Remove array size hacks for Rust < 1.47 [`27ee6fe`](https://github.com/rust-lang/libc/commit/27ee6fe02ca0848b2af3cd747536264e4c7b697d) - Remove repetitive words [`77de375`](https://github.com/rust-lang/libc/commit/77de375891285e18a81616f7dceda6d52732eed6) - Use #\[derive] for Copy/Clone in s! and friends [#&#8203;4038](https://github.com/rust-lang/libc/pull/4038) - Use some tricks to format macro bodies [#&#8203;4107](https://github.com/rust-lang/libc/pull/4107) ##### Other - Apply formatting to macro bodies [#&#8203;4107](https://github.com/rust-lang/libc/pull/4107) - Bump libc-test to Rust 2021 Edition [#&#8203;3905](https://github.com/rust-lang/libc/pull/3905) - CI: Add a check that semver files don't contain duplicate entries [#&#8203;4087](https://github.com/rust-lang/libc/pull/4087) - CI: Add `fanotify_event_info_fid` to FAM-exempt types [#&#8203;4038](https://github.com/rust-lang/libc/pull/4038) - CI: Allow rustfmt to organize imports ([#&#8203;4136](https://github.com/rust-lang/libc/pull/4136)) - CI: Always run rustfmt [#&#8203;4120](https://github.com/rust-lang/libc/pull/4120) - CI: Change 32-bit Docker images to use EOL repos [#&#8203;4120](https://github.com/rust-lang/libc/pull/4120) - CI: Change 64-bit Docker images to ubuntu:24.10 [#&#8203;4120](https://github.com/rust-lang/libc/pull/4120) - CI: Disable the check for >1 s! invocation [#&#8203;4107](https://github.com/rust-lang/libc/pull/4107) - CI: Ensure build channels get run even if FILTER is unset [#&#8203;4125](https://github.com/rust-lang/libc/pull/4125) - CI: Ensure there is a fallback for no\_std [#&#8203;4125](https://github.com/rust-lang/libc/pull/4125) - CI: Fix cases where unset variables cause errors [#&#8203;4108](https://github.com/rust-lang/libc/pull/4108) - CI: Naming adjustments and cleanup [#&#8203;4124](https://github.com/rust-lang/libc/pull/4124) - CI: Only invoke rustup if running in CI [#&#8203;4107](https://github.com/rust-lang/libc/pull/4107) - CI: Remove the logic to handle old rust versions [#&#8203;4068](https://github.com/rust-lang/libc/pull/4068) - CI: Set -u (error on unset) in all script files [#&#8203;4108](https://github.com/rust-lang/libc/pull/4108) - CI: add support for `loongarch64-unknown-linux-musl` [#&#8203;4092](https://github.com/rust-lang/libc/pull/4092) - CI: make `aarch64-apple-darwin` not a nightly-only target [#&#8203;4068](https://github.com/rust-lang/libc/pull/4068) - CI: run shellcheck on all scripts [#&#8203;4042](https://github.com/rust-lang/libc/pull/4042) - CI: update musl headers to Linux 6.6 [#&#8203;3921](https://github.com/rust-lang/libc/pull/3921) - CI: use qemu-sparc64 to run sparc64 tests [#&#8203;4133](https://github.com/rust-lang/libc/pull/4133) - Drop the `libc_const_extern_fn` conditional [`674cc1f`](https://github.com/rust-lang/libc/commit/674cc1f47f605038ef1aa2cce8e8bc9dac128276) - Drop the `libc_underscore_const_names` conditional [`f0febd5`](https://github.com/rust-lang/libc/commit/f0febd5e2e50b38e05259d3afad3c9783711bcf0) - Explicitly set the edition to 2015 [#&#8203;4058](https://github.com/rust-lang/libc/pull/4058) - Introduce a `git-blame-ignore-revs` file [#&#8203;4107](https://github.com/rust-lang/libc/pull/4107) - Tests: Ignore fields as required on Ubuntu 24.10 [#&#8203;4120](https://github.com/rust-lang/libc/pull/4120) - Tests: skip `ATF_*` constants for OpenBSD [#&#8203;4088](https://github.com/rust-lang/libc/pull/4088) - Triagebot: Add an autolabel for CI [#&#8203;4052](https://github.com/rust-lang/libc/pull/4052) ### [`v0.2.164`](https://github.com/rust-lang/libc/blob/HEAD/CHANGELOG.md#02164---2024-11-16) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.163...0.2.164) ##### MSRV This release increases the MSRV of `libc` to 1.63. ##### Other - CI: remove tests with rust < 1.63 [#&#8203;4051](https://github.com/rust-lang/libc/pull/4051) - MSRV: document the MSRV of the stable channel to be 1.63 [#&#8203;4040](https://github.com/rust-lang/libc/pull/4040) - MacOS: move ifconf to s\_no\_extra\_traits [#&#8203;4051](https://github.com/rust-lang/libc/pull/4051) ### [`v0.2.163`](https://github.com/rust-lang/libc/blob/HEAD/CHANGELOG.md#02163---2024-11-16) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.162...0.2.163) ##### Added - Aix: add more `dlopen` flags [#&#8203;4044](https://github.com/rust-lang/libc/pull/4044) - Android: add group calls [#&#8203;3499](https://github.com/rust-lang/libc/pull/3499) - FreeBSD: add `TCP_FUNCTION_BLK` and `TCP_FUNCTION_ALIAS` [#&#8203;4047](https://github.com/rust-lang/libc/pull/4047) - Linux: add `confstr` [#&#8203;3612](https://github.com/rust-lang/libc/pull/3612) - Solarish: add `aio` [#&#8203;4033](https://github.com/rust-lang/libc/pull/4033) - Solarish: add `arc4random*` [#&#8203;3944](https://github.com/rust-lang/libc/pull/3944) ##### Changed - Emscripten: upgrade emsdk to 3.1.68 [#&#8203;3962](https://github.com/rust-lang/libc/pull/3962) - Hurd: use more standard types [#&#8203;3733](https://github.com/rust-lang/libc/pull/3733) - Hurd: use the standard `ssize_t = isize` [#&#8203;4029](https://github.com/rust-lang/libc/pull/4029) - Solaris: fix `confstr` and `ucontext_t` [#&#8203;4035](https://github.com/rust-lang/libc/pull/4035) ##### Other - CI: add Solaris [#&#8203;4035](https://github.com/rust-lang/libc/pull/4035) - CI: add `i686-unknown-freebsd` [#&#8203;3997](https://github.com/rust-lang/libc/pull/3997) - CI: ensure that calls to `sort` do not depend on locale [#&#8203;4026](https://github.com/rust-lang/libc/pull/4026) - Specify `rust-version` in `Cargo.toml` [#&#8203;4041](https://github.com/rust-lang/libc/pull/4041) ### [`v0.2.162`](https://github.com/rust-lang/libc/blob/HEAD/CHANGELOG.md#02162---2024-11-07) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.161...0.2.162) ##### Added - Android: fix the alignment of `uc_mcontext` on arm64 [#&#8203;3894](https://github.com/rust-lang/libc/pull/3894) - Apple: add `host_cpu_load_info` [#&#8203;3916](https://github.com/rust-lang/libc/pull/3916) - ESP-IDF: add a time flag [#&#8203;3993](https://github.com/rust-lang/libc/pull/3993) - FreeBSD: add the `CLOSE_RANGE_CLOEXEC` flag[#&#8203;3996](https://github.com/rust-lang/libc/pull/3996) - FreeBSD: fix test errors regarding `__gregset_t` [#&#8203;3995](https://github.com/rust-lang/libc/pull/3995) - FreeBSD: fix tests on x86 FreeBSD 15 [#&#8203;3948](https://github.com/rust-lang/libc/pull/3948) - FreeBSD: make `ucontext_t` and `mcontext_t` available on all architectures [#&#8203;3848](https://github.com/rust-lang/libc/pull/3848) - Haiku: add `getentropy` [#&#8203;3991](https://github.com/rust-lang/libc/pull/3991) - Illumos: add `syncfs` [#&#8203;3990](https://github.com/rust-lang/libc/pull/3990) - Illumos: add some recently-added constants [#&#8203;3999](https://github.com/rust-lang/libc/pull/3999) - Linux: add `ioctl` flags [#&#8203;3960](https://github.com/rust-lang/libc/pull/3960) - Linux: add epoll busy polling parameters [#&#8203;3922](https://github.com/rust-lang/libc/pull/3922) - NuttX: add `pthread_[get/set]name_np` [#&#8203;4003](https://github.com/rust-lang/libc/pull/4003) - RTEMS: add `arc4random_buf` [#&#8203;3989](https://github.com/rust-lang/libc/pull/3989) - Trusty OS: add initial support [#&#8203;3942](https://github.com/rust-lang/libc/pull/3942) - WASIp2: expand socket support [#&#8203;3981](https://github.com/rust-lang/libc/pull/3981) ##### Fixed - Emscripten: don't pass `-lc` [#&#8203;4002](https://github.com/rust-lang/libc/pull/4002) - Hurd: change `st_fsid` field to `st_dev` [#&#8203;3785](https://github.com/rust-lang/libc/pull/3785) - Hurd: fix the definition of `utsname` [#&#8203;3992](https://github.com/rust-lang/libc/pull/3992) - Illumos/Solaris: fix `FNM_CASEFOLD` definition [#&#8203;4004](https://github.com/rust-lang/libc/pull/4004) - Solaris: fix all tests [#&#8203;3864](https://github.com/rust-lang/libc/pull/3864) ##### Other - CI: Add loongarch64 [#&#8203;4000](https://github.com/rust-lang/libc/pull/4000) - CI: Check that semver files are sorted [#&#8203;4018](https://github.com/rust-lang/libc/pull/4018) - CI: Re-enable the FreeBSD 15 job [#&#8203;3988](https://github.com/rust-lang/libc/pull/3988) - Clean up imports and `extern crate` usage [#&#8203;3897](https://github.com/rust-lang/libc/pull/3897) - Convert `mode_t` constants to octal [#&#8203;3634](https://github.com/rust-lang/libc/pull/3634) - Remove the `wasm32-wasi` target that has been deleted upstream [#&#8203;4013](https://github.com/rust-lang/libc/pull/4013) ### [`v0.2.161`](https://github.com/rust-lang/libc/blob/HEAD/CHANGELOG.md#02161---2024-10-17) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.160...0.2.161) ##### Fixed - OpenBSD: fix `FNM_PATHNAME` and `FNM_NOESCAPE` values [#&#8203;3983](https://github.com/rust-lang/libc/pull/3983) ### [`v0.2.160`](https://github.com/rust-lang/libc/blob/HEAD/CHANGELOG.md#02160---2024-10-17) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.159...0.2.160) ##### Added - Android: add `PR_GET_NAME` and `PR_SET_NAME` [#&#8203;3941](https://github.com/rust-lang/libc/pull/3941) - Apple: add `F_TRANSFEREXTENTS` [#&#8203;3925](https://github.com/rust-lang/libc/pull/3925) - Apple: add `mach_error_string` [#&#8203;3913](https://github.com/rust-lang/libc/pull/3913) - Apple: add additional `pthread` APIs [#&#8203;3846](https://github.com/rust-lang/libc/pull/3846) - Apple: add the `LOCAL_PEERTOKEN` socket option [#&#8203;3929](https://github.com/rust-lang/libc/pull/3929) - BSD: add `RTF_*`, `RTA_*`, `RTAX_*`, and `RTM_*` definitions [#&#8203;3714](https://github.com/rust-lang/libc/pull/3714) - Emscripten: add `AT_EACCESS` [#&#8203;3911](https://github.com/rust-lang/libc/pull/3911) - Emscripten: add `getgrgid`, `getgrnam`, `getgrnam_r` and `getgrgid_r` [#&#8203;3912](https://github.com/rust-lang/libc/pull/3912) - Emscripten: add `getpwnam_r` and `getpwuid_r` [#&#8203;3906](https://github.com/rust-lang/libc/pull/3906) - FreeBSD: add `POLLRDHUP` [#&#8203;3936](https://github.com/rust-lang/libc/pull/3936) - Haiku: add `arc4random` [#&#8203;3945](https://github.com/rust-lang/libc/pull/3945) - Illumos: add `ptsname_r` [#&#8203;3867](https://github.com/rust-lang/libc/pull/3867) - Linux: add `fanotify` interfaces [#&#8203;3695](https://github.com/rust-lang/libc/pull/3695) - Linux: add `tcp_info` [#&#8203;3480](https://github.com/rust-lang/libc/pull/3480) - Linux: add additional AF\_PACKET options [#&#8203;3540](https://github.com/rust-lang/libc/pull/3540) - Linux: make Elf constants always available [#&#8203;3938](https://github.com/rust-lang/libc/pull/3938) - Musl x86: add `iopl` and `ioperm` [#&#8203;3720](https://github.com/rust-lang/libc/pull/3720) - Musl: add `posix_spawn` chdir functions [#&#8203;3949](https://github.com/rust-lang/libc/pull/3949) - Musl: add `utmpx.h` constants [#&#8203;3908](https://github.com/rust-lang/libc/pull/3908) - NetBSD: add `sysctlnametomib`, `CLOCK_THREAD_CPUTIME_ID` and `CLOCK_PROCESS_CPUTIME_ID` [#&#8203;3927](https://github.com/rust-lang/libc/pull/3927) - Nuttx: initial support [#&#8203;3909](https://github.com/rust-lang/libc/pull/3909) - RTEMS: add `getentropy` [#&#8203;3973](https://github.com/rust-lang/libc/pull/3973) - RTEMS: initial support [#&#8203;3866](https://github.com/rust-lang/libc/pull/3866) - Solarish: add `POLLRDHUP`, `POSIX_FADV_*`, `O_RSYNC`, and `posix_fallocate` [#&#8203;3936](https://github.com/rust-lang/libc/pull/3936) - Unix: add `fnmatch.h` [#&#8203;3937](https://github.com/rust-lang/libc/pull/3937) - VxWorks: add riscv64 support [#&#8203;3935](https://github.com/rust-lang/libc/pull/3935) - VxWorks: update constants related to the scheduler [#&#8203;3963](https://github.com/rust-lang/libc/pull/3963) ##### Changed - Redox: change `ino_t` to be `c_ulonglong` [#&#8203;3919](https://github.com/rust-lang/libc/pull/3919) ##### Fixed - ESP-IDF: fix mismatched constants and structs [#&#8203;3920](https://github.com/rust-lang/libc/pull/3920) - FreeBSD: fix `struct stat` on FreeBSD 12+ [#&#8203;3946](https://github.com/rust-lang/libc/pull/3946) ##### Other - CI: Fix CI for FreeBSD 15 [#&#8203;3950](https://github.com/rust-lang/libc/pull/3950) - Docs: link to `windows-sys` [#&#8203;3915](https://github.com/rust-lang/libc/pull/3915) ### [`v0.2.159`](https://github.com/rust-lang/libc/blob/HEAD/CHANGELOG.md#02159---2024-09-24) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.158...0.2.159) ##### Added - Android: add more `AT_*` constants in [#&#8203;3779](https://github.com/rust-lang/libc/pull/3779) - Apple: add missing `NOTE_*` constants in [#&#8203;3883](https://github.com/rust-lang/libc/pull/3883) - Hermit: add missing error numbers in [#&#8203;3858](https://github.com/rust-lang/libc/pull/3858) - Hurd: add `__timeval` for 64-bit support in [#&#8203;3786](https://github.com/rust-lang/libc/pull/3786) - Linux: add `epoll_pwait2` in [#&#8203;3868](https://github.com/rust-lang/libc/pull/3868) - Linux: add `mq_notify` in [#&#8203;3849](https://github.com/rust-lang/libc/pull/3849) - Linux: add missing `NFT_CT_*` constants in [#&#8203;3844](https://github.com/rust-lang/libc/pull/3844) - Linux: add the `fchmodat2` syscall in [#&#8203;3588](https://github.com/rust-lang/libc/pull/3588) - Linux: add the `mseal` syscall in [#&#8203;3798](https://github.com/rust-lang/libc/pull/3798) - OpenBSD: add `sendmmsg` and `recvmmsg` in [#&#8203;3831](https://github.com/rust-lang/libc/pull/3831) - Unix: add `IN6ADDR_ANY_INIT` and `IN6ADDR_LOOPBACK_INIT` in [#&#8203;3693](https://github.com/rust-lang/libc/pull/3693) - VxWorks: add `S_ISVTX` in [#&#8203;3768](https://github.com/rust-lang/libc/pull/3768) - VxWorks: add `vxCpuLib` and `taskLib` functions [#&#8203;3861](https://github.com/rust-lang/libc/pull/3861) - WASIp2: add definitions for `std::net` support in [#&#8203;3892](https://github.com/rust-lang/libc/pull/3892) ##### Fixed - Correctly handle version checks when `clippy-driver` is used [#&#8203;3893](https://github.com/rust-lang/libc/pull/3893) ##### Changed - EspIdf: change signal constants to c\_int in [#&#8203;3895](https://github.com/rust-lang/libc/pull/3895) - HorizonOS: update network definitions in [#&#8203;3863](https://github.com/rust-lang/libc/pull/3863) - Linux: combine `ioctl` APIs in [#&#8203;3722](https://github.com/rust-lang/libc/pull/3722) - WASI: enable CI testing in [#&#8203;3869](https://github.com/rust-lang/libc/pull/3869) - WASIp2: enable CI testing in [#&#8203;3870](https://github.com/rust-lang/libc/pull/3870) ### [`v0.2.158`](https://github.com/rust-lang/libc/blob/HEAD/CHANGELOG.md#02158---2024-08-19) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.157...0.2.158) ##### Other - WASI: fix missing `Iterator` with `rustc-dep-of-std` in [#&#8203;3856 (comment)](https://github.com/rust-lang/libc/pull/3856#event-13924913068) ### [`v0.2.157`](https://github.com/rust-lang/libc/blob/HEAD/CHANGELOG.md#02157---2024-08-17) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.156...0.2.157) ##### Added - Apple: add `_NSGetArgv`, `_NSGetArgc` and `_NSGetProgname` in [#&#8203;3702](https://github.com/rust-lang/libc/pull/3702) - Build: add `RUSTC_WRAPPER` support in [#&#8203;3845](https://github.com/rust-lang/libc/pull/3845) - FreeBSD: add `execvpe` support from 14.1 release in [#&#8203;3745](https://github.com/rust-lang/libc/pull/3745) - Fuchsia: add `SO_BINDTOIFINDEX` - Linux: add `klogctl` in [#&#8203;3777](https://github.com/rust-lang/libc/pull/3777) - MacOS: add `fcntl` OFD commands in [#&#8203;3563](https://github.com/rust-lang/libc/pull/3563) - NetBSD: add `_lwp_park` in [#&#8203;3721](https://github.com/rust-lang/libc/pull/3721) - Solaris: add missing networking support in [#&#8203;3717](https://github.com/rust-lang/libc/pull/3717) - Unix: add `pthread_equal` in [#&#8203;3773](https://github.com/rust-lang/libc/pull/3773) - WASI: add `select`, `FD_SET`, `FD_ZERO`, `FD_ISSET ` in [#&#8203;3681](https://github.com/rust-lang/libc/pull/3681) ##### Fixed - TEEOS: fix octal notation for `O_*` constants in [#&#8203;3841](https://github.com/rust-lang/libc/pull/3841) ##### Changed - FreeBSD: always use freebsd12 when `rustc_dep_of_std` is set in [#&#8203;3723](https://github.com/rust-lang/libc/pull/3723) ### [`v0.2.156`](https://github.com/rust-lang/libc/blob/HEAD/CHANGELOG.md#02156---2024-08-15) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.155...0.2.156) ##### Added - Apple: add `F_ALLOCATEPERSIST` in [#&#8203;3712](https://github.com/rust-lang/libc/pull/3712) - Apple: add `os_sync_wait_on_address` and related definitions in [#&#8203;3769](https://github.com/rust-lang/libc/pull/3769) - BSD: generalise `IPV6_DONTFRAG` to all BSD targets in [#&#8203;3716](https://github.com/rust-lang/libc/pull/3716) - FreeBSD/DragonFly: add `IP_RECVTTL`/`IPV6_RECVHOPLIMIT` in [#&#8203;3751](https://github.com/rust-lang/libc/pull/3751) - Hurd: add `XATTR_CREATE`, `XATTR_REPLACE` in [#&#8203;3739](https://github.com/rust-lang/libc/pull/3739) - Linux GNU: `confstr` API and `_CS_*` in [#&#8203;3771](https://github.com/rust-lang/libc/pull/3771) - Linux musl: add `preadv2` and `pwritev2` (1.2.5 min.) in [#&#8203;3762](https://github.com/rust-lang/libc/pull/3762) - VxWorks: add the constant `SOMAXCONN` in [#&#8203;3761](https://github.com/rust-lang/libc/pull/3761) - VxWorks: add a few errnoLib related constants in [#&#8203;3780](https://github.com/rust-lang/libc/pull/3780) ##### Fixed - Solaris/illumos: Change `ifa_flags` type to u64 in [#&#8203;3729](https://github.com/rust-lang/libc/pull/3729) - QNX 7.0: Disable `libregex` in [#&#8203;3775](https://github.com/rust-lang/libc/pull/3775) ##### Changed - QNX NTO: update platform support in [#&#8203;3815](https://github.com/rust-lang/libc/pull/3815) - `addr_of!(EXTERN_STATIC)` is now considered safe in [#&#8203;3776](https://github.com/rust-lang/libc/pull/3776) ##### Removed - Apple: remove `rmx_state` in [#&#8203;3776](https://github.com/rust-lang/libc/pull/3776) ##### Other - Update or remove CI tests that have been failing ### [`v0.2.155`](https://github.com/rust-lang/libc/releases/tag/0.2.155) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.154...0.2.155) #### What's Changed - Add `SYS_lseek` and `SYS_mmap` for aarch64 Android by [@&#8203;lberrymage](https://github.com/lberrymage) in [#&#8203;3632](https://github.com/rust-lang/libc/pull/3632) - Correct the value of FAN\_MARK\_IGNORE by [@&#8203;severen](https://github.com/severen) in [#&#8203;3622](https://github.com/rust-lang/libc/pull/3622) - Update FreeBSD 13 CI image by [@&#8203;JohnTitor](https://github.com/JohnTitor) in [#&#8203;3671](https://github.com/rust-lang/libc/pull/3671) - android: add FUTEX\_LOCK\_PI2 by [@&#8203;rtzoeller](https://github.com/rtzoeller) in [#&#8203;3635](https://github.com/rust-lang/libc/pull/3635) - Fix out-of-bounds pointer arithmetic in CMSG\_NXTHDR by [@&#8203;purplesyringa](https://github.com/purplesyringa) in [#&#8203;3676](https://github.com/rust-lang/libc/pull/3676) - Revert "Support posix\_spawn on Android" by [@&#8203;JohnTitor](https://github.com/JohnTitor) in [#&#8203;3678](https://github.com/rust-lang/libc/pull/3678) - Unlock ci: fix wrong cfg emscripten by [@&#8203;tesuji](https://github.com/tesuji) in [#&#8203;3684](https://github.com/rust-lang/libc/pull/3684) - redox: correct EPOLL constants by [@&#8203;jackpot51](https://github.com/jackpot51) in [#&#8203;3686](https://github.com/rust-lang/libc/pull/3686) - \[0.2] Revert "Upgrade Docker images to Ubuntu 23.10" on sparc64 by [@&#8203;cuviper](https://github.com/cuviper) in [#&#8203;3708](https://github.com/rust-lang/libc/pull/3708) - Re-add `posix_spawn{_file_actions_t,attr_t}` on Android by [@&#8203;tesuji](https://github.com/tesuji) in [#&#8203;3690](https://github.com/rust-lang/libc/pull/3690) - Update version to `0.2.155` by [@&#8203;madsmtm](https://github.com/madsmtm) in [#&#8203;3682](https://github.com/rust-lang/libc/pull/3682) #### New Contributors - [@&#8203;lberrymage](https://github.com/lberrymage) made their first contribution in [#&#8203;3632](https://github.com/rust-lang/libc/pull/3632) - [@&#8203;purplesyringa](https://github.com/purplesyringa) made their first contribution in [#&#8203;3676](https://github.com/rust-lang/libc/pull/3676) **Full Changelog**: <https://github.com/rust-lang/libc/compare/0.2.154...0.2.155> ### [`v0.2.154`](https://github.com/rust-lang/libc/releases/tag/0.2.154) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.153...0.2.154) #### What's Changed - Fix CI on v0.2 by [@&#8203;JohnTitor](https://github.com/JohnTitor) in [#&#8203;3589](https://github.com/rust-lang/libc/pull/3589) - \[Backport [#&#8203;3547](https://github.com/rust-lang/libc/issues/3547)] Add ioctl FS\_IOC\_{G,S}{ETVERSION,ETFLAGS} for CSKY by [@&#8203;Dirreke](https://github.com/Dirreke) in [#&#8203;3572](https://github.com/rust-lang/libc/pull/3572) - Add Linux riscv64 HWCAP defines (libc-0.2) by [@&#8203;Xeonacid](https://github.com/Xeonacid) in [#&#8203;3580](https://github.com/rust-lang/libc/pull/3580) - Add missing MIPS R6 FS\_IOC\_\* definitions by [@&#8203;chenx97](https://github.com/chenx97) in [#&#8203;3591](https://github.com/rust-lang/libc/pull/3591) - Support posix\_spawn on Android by [@&#8203;pcc](https://github.com/pcc) in [#&#8203;3602](https://github.com/rust-lang/libc/pull/3602) - \[0.2] Fix libc-tests for loongarch64 by [@&#8203;heiher](https://github.com/heiher) in [#&#8203;3607](https://github.com/rust-lang/libc/pull/3607) - visionOS Support by [@&#8203;agg23](https://github.com/agg23) in [#&#8203;3568](https://github.com/rust-lang/libc/pull/3568) - \[0.2] linux/musl: Add support for LoongArch64 by [@&#8203;heiher](https://github.com/heiher) in [#&#8203;3606](https://github.com/rust-lang/libc/pull/3606) - v0.2: Fix c\_char on AIX by [@&#8203;taiki-e](https://github.com/taiki-e) in [#&#8203;3662](https://github.com/rust-lang/libc/pull/3662) - solarish adding SO\_EXCLBIND constant. by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3651](https://github.com/rust-lang/libc/pull/3651) - \[0.2] Add SIG constants to espidf by [@&#8203;Tevz-Beskovnik](https://github.com/Tevz-Beskovnik) in [#&#8203;3658](https://github.com/rust-lang/libc/pull/3658) - add all android sysconf constants by [@&#8203;fkm3](https://github.com/fkm3) in [#&#8203;3656](https://github.com/rust-lang/libc/pull/3656) - feat: more \_PC\_XXX constants for apple targets by [@&#8203;SteveLauC](https://github.com/SteveLauC) in [#&#8203;3649](https://github.com/rust-lang/libc/pull/3649) - feat: O\_EXEC/O\_SEARCH for apple platforms by [@&#8203;SteveLauC](https://github.com/SteveLauC) in [#&#8203;3668](https://github.com/rust-lang/libc/pull/3668) - \[0.2] Add constant AT\_MINSIGSTKSZ by [@&#8203;ur4t](https://github.com/ur4t) in [#&#8203;3637](https://github.com/rust-lang/libc/pull/3637) - Haiku: synchronize with post R1-beta 4 changes in libc by [@&#8203;nielx](https://github.com/nielx) in [#&#8203;3638](https://github.com/rust-lang/libc/pull/3638) - adding getentropy/getrandom to dragonflybsd. by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3618](https://github.com/rust-lang/libc/pull/3618) - Move strftime, strftime\_l, strptime to linux\_like by [@&#8203;pcc](https://github.com/pcc) in [#&#8203;3600](https://github.com/rust-lang/libc/pull/3600) - update crate version to 0.2.154 by [@&#8203;Dirreke](https://github.com/Dirreke) in [#&#8203;3573](https://github.com/rust-lang/libc/pull/3573) #### New Contributors - [@&#8203;pcc](https://github.com/pcc) made their first contribution in [#&#8203;3602](https://github.com/rust-lang/libc/pull/3602) - [@&#8203;agg23](https://github.com/agg23) made their first contribution in [#&#8203;3568](https://github.com/rust-lang/libc/pull/3568) - [@&#8203;Tevz-Beskovnik](https://github.com/Tevz-Beskovnik) made their first contribution in [#&#8203;3658](https://github.com/rust-lang/libc/pull/3658) - [@&#8203;ur4t](https://github.com/ur4t) made their first contribution in [#&#8203;3637](https://github.com/rust-lang/libc/pull/3637) **Full Changelog**: <https://github.com/rust-lang/libc/compare/0.2.153...0.2.154> ### [`v0.2.153`](https://github.com/rust-lang/libc/releases/tag/0.2.153) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.152...0.2.153) #### What's Changed - Add SOMAXCONN to vita on 0.2 (to fix std) by [@&#8203;pheki](https://github.com/pheki) in [#&#8203;3552](https://github.com/rust-lang/libc/pull/3552) - Fix CI for v0.2 by [@&#8203;JohnTitor](https://github.com/JohnTitor) in [#&#8203;3557](https://github.com/rust-lang/libc/pull/3557) - \[Backport [#&#8203;3548](https://github.com/rust-lang/libc/issues/3548)] Add ioctl FS\_IOC\_{G,S}{ETVERSION,ETFLAGS} for LoongArch64 by [@&#8203;heiher](https://github.com/heiher) in [#&#8203;3570](https://github.com/rust-lang/libc/pull/3570) - Add MFD\_NOEXEC\_SEAL and MFD\_EXEC by [@&#8203;rusty-snake](https://github.com/rusty-snake) in [#&#8203;3553](https://github.com/rust-lang/libc/pull/3553) - Backport of [#&#8203;3546](https://github.com/rust-lang/libc/issues/3546) and update crate version to 0.2.153 by [@&#8203;GuillaumeGomez](https://github.com/GuillaumeGomez) in [#&#8203;3554](https://github.com/rust-lang/libc/pull/3554) #### New Contributors - [@&#8203;rusty-snake](https://github.com/rusty-snake) made their first contribution in [#&#8203;3553](https://github.com/rust-lang/libc/pull/3553) **Full Changelog**: <https://github.com/rust-lang/libc/compare/0.2.152...0.2.153> ### [`v0.2.152`](https://github.com/rust-lang/libc/releases/tag/0.2.152) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.151...0.2.152) #### What's Changed - openbsd: syscall() has been removed in upcoming OpenBSD 7.5 by [@&#8203;semarie](https://github.com/semarie) in [#&#8203;3479](https://github.com/rust-lang/libc/pull/3479) - adding tcp\_info to openbsd by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3481](https://github.com/rust-lang/libc/pull/3481) - iadding yser\_fpxregs\_struct data to linux/musl i686. by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3477](https://github.com/rust-lang/libc/pull/3477) - strftime\* api for \*BSD by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3483](https://github.com/rust-lang/libc/pull/3483) - strftime\_l for Linux glibc/musl by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3484](https://github.com/rust-lang/libc/pull/3484) - adding iocb data for io\_submit syscall for linux/glibc. by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3486](https://github.com/rust-lang/libc/pull/3486) - Re-enable `i686-pc-windows-gnu` CI by [@&#8203;JohnTitor](https://github.com/JohnTitor) in [#&#8203;3489](https://github.com/rust-lang/libc/pull/3489) - Stop testing on FreeBSD 12 by [@&#8203;asomers](https://github.com/asomers) in [#&#8203;3475](https://github.com/rust-lang/libc/pull/3475) - Add `ifreq`, `ifconf` and related constants to Android by [@&#8203;arctic-alpaca](https://github.com/arctic-alpaca) in [#&#8203;3487](https://github.com/rust-lang/libc/pull/3487) - Add waitid function for OpenBSD by [@&#8203;lcheylus](https://github.com/lcheylus) in [#&#8203;3490](https://github.com/rust-lang/libc/pull/3490) - adding SOMAXCONN to redox by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3491](https://github.com/rust-lang/libc/pull/3491) - Fix typos in comments by [@&#8203;asomers](https://github.com/asomers) in [#&#8203;3492](https://github.com/rust-lang/libc/pull/3492) - fix typos in libc by [@&#8203;Takashiidobe](https://github.com/Takashiidobe) in [#&#8203;3496](https://github.com/rust-lang/libc/pull/3496) - apple adding tcp\_connection\_info struct by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3482](https://github.com/rust-lang/libc/pull/3482) - Improve the version parser of Emscripten by [@&#8203;kleisauke](https://github.com/kleisauke) in [#&#8203;3498](https://github.com/rust-lang/libc/pull/3498) - Add constants from \<include/linux/sched.h> by [@&#8203;GuillaumeGomez](https://github.com/GuillaumeGomez) in [#&#8203;3505](https://github.com/rust-lang/libc/pull/3505) - Define `TFD_TIMER_*` constants on FreeBSD. by [@&#8203;sunfishcode](https://github.com/sunfishcode) in [#&#8203;3506](https://github.com/rust-lang/libc/pull/3506) - Add support for posix\_spawn on OpenBSD by [@&#8203;nuudlman](https://github.com/nuudlman) in [#&#8203;3502](https://github.com/rust-lang/libc/pull/3502) - clock\_nanosleep for dragonflybsd, moving constants freebsd only too. by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3509](https://github.com/rust-lang/libc/pull/3509) - solarish add fcntl's O\_DIRECT constant. by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3503](https://github.com/rust-lang/libc/pull/3503) - Unpin cc dependency version by [@&#8203;JohnTitor](https://github.com/JohnTitor) in [#&#8203;3511](https://github.com/rust-lang/libc/pull/3511) - redox: add openpty, login\_tty, TIOCSCTTY, and organize functions by [@&#8203;jackpot51](https://github.com/jackpot51) in [#&#8203;3512](https://github.com/rust-lang/libc/pull/3512) - Move all seccomp consts and structs into top-level mod by [@&#8203;boustrophedon](https://github.com/boustrophedon) in [#&#8203;3343](https://github.com/rust-lang/libc/pull/3343) - freebsd 15 support proposal. by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3508](https://github.com/rust-lang/libc/pull/3508) - Prepare workflow for merge queue by [@&#8203;JohnTitor](https://github.com/JohnTitor) in [#&#8203;3514](https://github.com/rust-lang/libc/pull/3514) - Allow dead\_code on `clockid_t` by [@&#8203;JohnTitor](https://github.com/JohnTitor) in [#&#8203;3516](https://github.com/rust-lang/libc/pull/3516) - Add more items from `include/linux/sched.h` header by [@&#8203;GuillaumeGomez](https://github.com/GuillaumeGomez) in [#&#8203;3515](https://github.com/rust-lang/libc/pull/3515) - fix typo by [@&#8203;shuoer86](https://github.com/shuoer86) in [#&#8203;3517](https://github.com/rust-lang/libc/pull/3517) - Add sigsuspend to more targets: bsd, haiku, and solarish by [@&#8203;asomers](https://github.com/asomers) in [#&#8203;3518](https://github.com/rust-lang/libc/pull/3518) - Tweak libc-0.2 CI by [@&#8203;JohnTitor](https://github.com/JohnTitor) in [#&#8203;3519](https://github.com/rust-lang/libc/pull/3519) - fuchsia adding pthread\_set/getname\_np by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3520](https://github.com/rust-lang/libc/pull/3520) - Prepare docs for libc v0.3 by [@&#8203;JohnTitor](https://github.com/JohnTitor) in [#&#8203;3510](https://github.com/rust-lang/libc/pull/3510) - Merge main into libc-0.2 by [@&#8203;JohnTitor](https://github.com/JohnTitor) in [#&#8203;3521](https://github.com/rust-lang/libc/pull/3521) - Prepare release for v0.2.152 by [@&#8203;JohnTitor](https://github.com/JohnTitor) in [#&#8203;3522](https://github.com/rust-lang/libc/pull/3522) #### New Contributors - [@&#8203;Takashiidobe](https://github.com/Takashiidobe) made their first contribution in [#&#8203;3496](https://github.com/rust-lang/libc/pull/3496) - [@&#8203;nuudlman](https://github.com/nuudlman) made their first contribution in [#&#8203;3502](https://github.com/rust-lang/libc/pull/3502) - [@&#8203;boustrophedon](https://github.com/boustrophedon) made their first contribution in [#&#8203;3343](https://github.com/rust-lang/libc/pull/3343) - [@&#8203;shuoer86](https://github.com/shuoer86) made their first contribution in [#&#8203;3517](https://github.com/rust-lang/libc/pull/3517) **Full Changelog**: <https://github.com/rust-lang/libc/compare/0.2.151...0.2.152> ### [`v0.2.151`](https://github.com/rust-lang/libc/releases/tag/0.2.151) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.150...0.2.151) #### What's Changed - Add new constants to be used in (linux) sysctl by [@&#8203;GuillaumeGomez](https://github.com/GuillaumeGomez) in [#&#8203;3423](https://github.com/rust-lang/libc/pull/3423) - openbsd ifreq implementation refinement ifru\_data member using proper… by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3390](https://github.com/rust-lang/libc/pull/3390) - adding reboot to netbsd/openbsd. by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3426](https://github.com/rust-lang/libc/pull/3426) - feat: add GSO flags for linux and android by [@&#8203;elecm](https://github.com/elecm) in [#&#8203;3420](https://github.com/rust-lang/libc/pull/3420) - Use a unique name for the Docker image used by CI. by [@&#8203;Arnavion](https://github.com/Arnavion) in [#&#8203;3427](https://github.com/rust-lang/libc/pull/3427) - Add more definitions from linux/tls.h by [@&#8203;Arnavion](https://github.com/Arnavion) in [#&#8203;3422](https://github.com/rust-lang/libc/pull/3422) - hurd: Complete C API interface by [@&#8203;sthibaul](https://github.com/sthibaul) in [#&#8203;3428](https://github.com/rust-lang/libc/pull/3428) - Fix a typo in getnameinfo() by [@&#8203;adder32](https://github.com/adder32) in [#&#8203;3431](https://github.com/rust-lang/libc/pull/3431) - hurd: Fix C API interface completion by [@&#8203;sthibaul](https://github.com/sthibaul) in [#&#8203;3430](https://github.com/rust-lang/libc/pull/3430) - Downgrade CI support for MIPS by [@&#8203;JohnTitor](https://github.com/JohnTitor) in [#&#8203;3429](https://github.com/rust-lang/libc/pull/3429) - Upgrade FreeBSD ABi used on std to 12 by [@&#8203;JohnTitor](https://github.com/JohnTitor) in [#&#8203;3434](https://github.com/rust-lang/libc/pull/3434) - Upgrade Android NDK version by [@&#8203;JohnTitor](https://github.com/JohnTitor) in [#&#8203;3435](https://github.com/rust-lang/libc/pull/3435) - feat: Added wireless.h constants by [@&#8203;Brijeshkrishna](https://github.com/Brijeshkrishna) in [#&#8203;3415](https://github.com/rust-lang/libc/pull/3415) - feat: eventfd\_read/write for Android/FreeBSD/Linux by [@&#8203;SteveLauC](https://github.com/SteveLauC) in [#&#8203;3437](https://github.com/rust-lang/libc/pull/3437) - Upgrade macOS image to 13 by [@&#8203;JohnTitor](https://github.com/JohnTitor) in [#&#8203;3442](https://github.com/rust-lang/libc/pull/3442) - Add the NI\_IDN getnameinfo() extension by [@&#8203;adder32](https://github.com/adder32) in [#&#8203;3433](https://github.com/rust-lang/libc/pull/3433) - adding getentropy for apple devices. by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3443](https://github.com/rust-lang/libc/pull/3443) - Add ioctl FS\_IOC\_\* version and flag constants by [@&#8203;fsavy-tehtris](https://github.com/fsavy-tehtris) in [#&#8203;3396](https://github.com/rust-lang/libc/pull/3396) - haiku adding subset of cpu topology api. by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3440](https://github.com/rust-lang/libc/pull/3440) - add vm\_allocate for apple by [@&#8203;hjmallon](https://github.com/hjmallon) in [#&#8203;3448](https://github.com/rust-lang/libc/pull/3448) - Remove asmjs-unknown-emscripten target by [@&#8203;JohnTitor](https://github.com/JohnTitor) in [#&#8203;3451](https://github.com/rust-lang/libc/pull/3451) - add more pthread\_attr functions and related constants: by [@&#8203;Ncerzzk](https://github.com/Ncerzzk) in [#&#8203;3447](https://github.com/rust-lang/libc/pull/3447) - Add `IP_RECVTTL` and `IPV6_RECVHOPLIMIT` for Apple platforms by [@&#8203;larseggert](https://github.com/larseggert) in [#&#8203;3450](https://github.com/rust-lang/libc/pull/3450) - Unignore `aarch64-linux-android` by [@&#8203;JohnTitor](https://github.com/JohnTitor) in [#&#8203;3438](https://github.com/rust-lang/libc/pull/3438) - Fix libc-tests for illumos/solaris target by [@&#8203;pfmooney](https://github.com/pfmooney) in [#&#8203;3455](https://github.com/rust-lang/libc/pull/3455) - expose solarish's SFV\_FD\_SELF for sendfilev purpose by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3452](https://github.com/rust-lang/libc/pull/3452) - Do not dereference uninhabited types refs in Clone implementations by [@&#8203;samueltardieu](https://github.com/samueltardieu) in [#&#8203;3456](https://github.com/rust-lang/libc/pull/3456) - Update docs for contributors by [@&#8203;JohnTitor](https://github.com/JohnTitor) in [#&#8203;3458](https://github.com/rust-lang/libc/pull/3458) - adding RFSIGSHARE flag for FreeBSD's rfork by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3457](https://github.com/rust-lang/libc/pull/3457) - MAP\_HUGE\_SHIFT & HUGETLB\_FLAG\_ENCODE\_SHIFT for Andorid/Fuchsia by [@&#8203;SteveLauC](https://github.com/SteveLauC) in [#&#8203;3444](https://github.com/rust-lang/libc/pull/3444) - netbsd arm\* registers and reorder per architecture. by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3467](https://github.com/rust-lang/libc/pull/3467) - add pthread\_cond\_timedwait for teeos by [@&#8203;Sword-Destiny](https://github.com/Sword-Destiny) in [#&#8203;3464](https://github.com/rust-lang/libc/pull/3464) - Add `if_xdp.h` structs and constants and add `SOL_XDP` to musl by [@&#8203;arctic-alpaca](https://github.com/arctic-alpaca) in [#&#8203;3453](https://github.com/rust-lang/libc/pull/3453) - Generate `aarch64-apple-darwin` docs on docs.rs by [@&#8203;JohnTitor](https://github.com/JohnTitor) in [#&#8203;3470](https://github.com/rust-lang/libc/pull/3470) - openbsd riscv64 adding sigcontext by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3469](https://github.com/rust-lang/libc/pull/3469) - openbsd/netbsd MAP\_TRYFIXED constant by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3471](https://github.com/rust-lang/libc/pull/3471) - Prepare release for v0.2.151 by [@&#8203;JohnTitor](https://github.com/JohnTitor) in [#&#8203;3472](https://github.com/rust-lang/libc/pull/3472) #### New Contributors - [@&#8203;elecm](https://github.com/elecm) made their first contribution in [#&#8203;3420](https://github.com/rust-lang/libc/pull/3420) - [@&#8203;Arnavion](https://github.com/Arnavion) made their first contribution in [#&#8203;3427](https://github.com/rust-lang/libc/pull/3427) - [@&#8203;adder32](https://github.com/adder32) made their first contribution in [#&#8203;3431](https://github.com/rust-lang/libc/pull/3431) - [@&#8203;fsavy-tehtris](https://github.com/fsavy-tehtris) made their first contribution in [#&#8203;3396](https://github.com/rust-lang/libc/pull/3396) - [@&#8203;hjmallon](https://github.com/hjmallon) made their first contribution in [#&#8203;3448](https://github.com/rust-lang/libc/pull/3448) - [@&#8203;Ncerzzk](https://github.com/Ncerzzk) made their first contribution in [#&#8203;3447](https://github.com/rust-lang/libc/pull/3447) - [@&#8203;larseggert](https://github.com/larseggert) made their first contribution in [#&#8203;3450](https://github.com/rust-lang/libc/pull/3450) - [@&#8203;samueltardieu](https://github.com/samueltardieu) made their first contribution in [#&#8203;3456](https://github.com/rust-lang/libc/pull/3456) - [@&#8203;arctic-alpaca](https://github.com/arctic-alpaca) made their first contribution in [#&#8203;3453](https://github.com/rust-lang/libc/pull/3453) **Full Changelog**: <https://github.com/rust-lang/libc/compare/0.2.150...0.2.151> ### [`v0.2.150`](https://github.com/rust-lang/libc/releases/tag/0.2.150) [Compare Source](https://github.com/rust-lang/libc/compare/0.2.149...0.2.150) #### What's Changed - feat: closefrom() and close\_range() for FreeBSD by [@&#8203;SteveLauC](https://github.com/SteveLauC) in [#&#8203;3374](https://github.com/rust-lang/libc/pull/3374) - adding apple ifreq by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3375](https://github.com/rust-lang/libc/pull/3375) - Add pthread\_once by [@&#8203;0xcaff](https://github.com/0xcaff) in [#&#8203;3376](https://github.com/rust-lang/libc/pull/3376) - netbsd: Add SO\_NOSIGPIPE by [@&#8203;taiki-e](https://github.com/taiki-e) in [#&#8203;3377](https://github.com/rust-lang/libc/pull/3377) - Say goodbye to GH Pages in favor of docs.rs by [@&#8203;JohnTitor](https://github.com/JohnTitor) in [#&#8203;3378](https://github.com/rust-lang/libc/pull/3378) - bugfix for teeos use Option by [@&#8203;Sword-Destiny](https://github.com/Sword-Destiny) in [#&#8203;3379](https://github.com/rust-lang/libc/pull/3379) - openbsd/netbsd sharing execvpe definition by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3382](https://github.com/rust-lang/libc/pull/3382) - ifreq for apple follow-up fix case when in non libc\_union case by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3385](https://github.com/rust-lang/libc/pull/3385) - NetBSD's mod.rs: fix cpuid\_t definition. by [@&#8203;he32](https://github.com/he32) in [#&#8203;3386](https://github.com/rust-lang/libc/pull/3386) - ifconf addition to apple. fixing freebsd's implementation while at it. by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3388](https://github.com/rust-lang/libc/pull/3388) - adding exect/execvP for FreeBSD/DragonflyBSD by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3381](https://github.com/rust-lang/libc/pull/3381) - adding execvP for apple by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3383](https://github.com/rust-lang/libc/pull/3383) - adding ifreq struct for openbsd by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3384](https://github.com/rust-lang/libc/pull/3384) - Add `MCL_ONFAULT` constants by [@&#8203;newpavlov](https://github.com/newpavlov) in [#&#8203;3380](https://github.com/rust-lang/libc/pull/3380) - Add time namespace constant by [@&#8203;cd-work](https://github.com/cd-work) in [#&#8203;3352](https://github.com/rust-lang/libc/pull/3352) - adding few more CLONE\_\* constant for Linux/Android. by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3034](https://github.com/rust-lang/libc/pull/3034) - android add handful lock free stdio calls by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3290](https://github.com/rust-lang/libc/pull/3290) - hurd: Fix msghdr's msg\_iov field type by [@&#8203;sthibaul](https://github.com/sthibaul) in [#&#8203;3389](https://github.com/rust-lang/libc/pull/3389) - Adding missing macros from linux/if\_tun.h by [@&#8203;BrandonMFong](https://github.com/BrandonMFong) in [#&#8203;3320](https://github.com/rust-lang/libc/pull/3320) - vxworks: Add mman.h consts and shm functions by [@&#8203;jdygert-spok](https://github.com/jdygert-spok) in [#&#8203;3406](https://github.com/rust-lang/libc/pull/3406) - Reenable FreeBSD 14 CI, and update definitions to match 14.0-RC1. by [@&#8203;asomers](https://github.com/asomers) in [#&#8203;3355](https://github.com/rust-lang/libc/pull/3355) - Use new check-cfg syntax in newer nightly by [@&#8203;Urgau](https://github.com/Urgau) in [#&#8203;3410](https://github.com/rust-lang/libc/pull/3410) - musl fixes and musl+riscv32 fixes by [@&#8203;akiernan](https://github.com/akiernan) in [#&#8203;3302](https://github.com/rust-lang/libc/pull/3302) - Add various constants from OpenBSD's sys/exec\_elf.h. by [@&#8203;ltratt](https://github.com/ltratt) in [#&#8203;3409](https://github.com/rust-lang/libc/pull/3409) - riscv64/musl: Add landlock syscalls by [@&#8203;marv](https://github.com/marv) in [#&#8203;3398](https://github.com/rust-lang/libc/pull/3398) - Add stat64at function declaration to AIX by [@&#8203;ecnelises](https://github.com/ecnelises) in [#&#8203;3324](https://github.com/rust-lang/libc/pull/3324) - adding getmntinfo/getmntvinfo for DragonFlyBSD. by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3394](https://github.com/rust-lang/libc/pull/3394) - adding MOVE\_MOUNT\* constants for linux to use with SYS\_move\_mount by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3391](https://github.com/rust-lang/libc/pull/3391) - freebsd adding PROT\_MAX|PROT\_MAX\_EXTRACT mmap flags by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3399](https://github.com/rust-lang/libc/pull/3399) - linux/android adding few if\_alg.h constants. by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3404](https://github.com/rust-lang/libc/pull/3404) - Setup Dependabot for GitHub Actions by [@&#8203;JohnTitor](https://github.com/JohnTitor) in [#&#8203;3411](https://github.com/rust-lang/libc/pull/3411) - For NetBSD: add entry for NetBSD/riscv64. by [@&#8203;he32](https://github.com/he32) in [#&#8203;3291](https://github.com/rust-lang/libc/pull/3291) - adding more recent pthread\_get/setname\_np calls to freebsd/dragonflybsd by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3412](https://github.com/rust-lang/libc/pull/3412) - NetBSD/mipsel: add support. by [@&#8203;he32](https://github.com/he32) in [#&#8203;3416](https://github.com/rust-lang/libc/pull/3416) - feat: add new constants from fanotify linux api by [@&#8203;ad0](https://github.com/ad0) in [#&#8203;3408](https://github.com/rust-lang/libc/pull/3408) - linux: add PTRACE\_GETSIGMASK and PTRACE\_SETSIGMASK by [@&#8203;mbyzhang](https://github.com/mbyzhang) in [#&#8203;3163](https://github.com/rust-lang/libc/pull/3163) - Add a few declarations for Apple systems by [@&#8203;vincentisambart](https://github.com/vincentisambart) in [#&#8203;3328](https://github.com/rust-lang/libc/pull/3328) - feat: Added ifconf struct by [@&#8203;Brijeshkrishna](https://github.com/Brijeshkrishna) in [#&#8203;3393](https://github.com/rust-lang/libc/pull/3393) - Upgrade Docker images to Ubuntu 23.10 by [@&#8203;JohnTitor](https://github.com/JohnTitor) in [#&#8203;3418](https://github.com/rust-lang/libc/pull/3418) - redox: Add remaining `grp.h` functions by [@&#8203;ids1024](https://github.com/ids1024) in [#&#8203;3421](https://github.com/rust-lang/libc/pull/3421) - netbsd/openbsd adding more accessors to siginfo\_t. by [@&#8203;devnexen](https://github.com/devnexen) in [#&#8203;3400](https://github.com/rust-lang/libc/pull/3400) - Prepare release for v0.2.150 by [@&#8203;JohnTitor](https://github.com/JohnTitor) in [#&#8203;3424](https://github.com/rust-lang/libc/pull/3424) #### New Contributors - [@&#8203;0xcaff](https://github.com/0xcaff) made their first contribution in [#&#8203;3376](https://github.com/rust-lang/libc/pull/3376) - [@&#8203;he32](https://github.com/he32) made their first contribution in [#&#8203;3386](https://github.com/rust-lang/libc/pull/3386) - [@&#8203;sthibaul](https://github.com/sthibaul) made their first contribution in [#&#8203;3389](https://github.com/rust-lang/libc/pull/3389) - [@&#8203;BrandonMFong](https://github.com/BrandonMFong) made their first contribution in [#&#8203;3320](https://github.com/rust-lang/libc/pull/3320) - [@&#8203;jdygert-spok](https://github.com/jdygert-spok) made their first contribution in [#&#8203;3406](https://github.com/rust-lang/libc/pull/3406) - [@&#8203;Urgau](https://github.com/Urgau) made their first contribution in [#&#8203;3410](https://github.com/rust-lang/libc/pull/3410) - [@&#8203;akiernan](https://github.com/akiernan) made their first contribution in [#&#8203;3302](https://github.com/rust-lang/libc/pull/3302) - [@&#8203;marv](https://github.com/marv) made their first contribution in [#&#8203;3398](https://github.com/rust-lang/libc/pull/3398) - [@&#8203;ad0](https://github.com/ad0) made their first contribution in [#&#8203;3408](https://github.com/rust-lang/libc/pull/3408) - [@&#8203;vincentisambart](https://github.com/vincentisambart) made their first contribution in [#&#8203;3328](https://github.com/rust-lang/libc/pull/3328) **Full Changelog**: <https://github.com/rust-lang/libc/compare/0.2.149...0.2.150> </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi41Mi44IiwidXBkYXRlZEluVmVyIjoiNDIuNTIuOCIsInRhcmdldEJyYW5jaCI6Im1hc3RlciIsImxhYmVscyI6WyJyZW5vdmF0ZS1ib3QiXX0=-->
chore(deps): update rust crate libc to v0.2.186
Some checks failed
Lint / fmt (pull_request) Has been cancelled
Lint / clippy (pull_request) Has been cancelled
CI (Linux) / nightly - x86_64-unknown-linux-gnu (pull_request) Has been cancelled
CI (Linux) / stable - x86_64-unknown-linux-gnu (pull_request) Has been cancelled
8d541960c0
renovate-bot force-pushed renovate/libc-0.x-lockfile from 8d541960c0
Some checks failed
Lint / fmt (pull_request) Has been cancelled
Lint / clippy (pull_request) Has been cancelled
CI (Linux) / nightly - x86_64-unknown-linux-gnu (pull_request) Has been cancelled
CI (Linux) / stable - x86_64-unknown-linux-gnu (pull_request) Has been cancelled
to b81e284f9d
Some checks failed
Lint / fmt (pull_request) Has been cancelled
Lint / clippy (pull_request) Has been cancelled
CI (Linux) / nightly - x86_64-unknown-linux-gnu (pull_request) Has been cancelled
CI (Linux) / stable - x86_64-unknown-linux-gnu (pull_request) Has been cancelled
2026-07-27 05:04:03 +05:30
Compare
renovate-bot changed title from chore(deps): update rust crate libc to v0.2.186 to chore(deps): update rust crate libc to v0.2.189 2026-07-27 05:04:08 +05:30
Some checks failed
Lint / fmt (pull_request) Has been cancelled
Lint / clippy (pull_request) Has been cancelled
CI (Linux) / nightly - x86_64-unknown-linux-gnu (pull_request) Has been cancelled
CI (Linux) / stable - x86_64-unknown-linux-gnu (pull_request) Has been cancelled
This pull request can be merged automatically.
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin renovate/libc-0.x-lockfile:renovate/libc-0.x-lockfile
git switch renovate/libc-0.x-lockfile

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch master
git merge --no-ff renovate/libc-0.x-lockfile
git switch renovate/libc-0.x-lockfile
git rebase master
git switch master
git merge --ff-only renovate/libc-0.x-lockfile
git switch renovate/libc-0.x-lockfile
git rebase master
git switch master
git merge --no-ff renovate/libc-0.x-lockfile
git switch master
git merge --squash renovate/libc-0.x-lockfile
git switch master
git merge --ff-only renovate/libc-0.x-lockfile
git switch master
git merge renovate/libc-0.x-lockfile
git push origin master
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
mCaptcha/cache!3
No description provided.