nix v0.14.0 Release Notes
Release Date: 2019-05-22 // almost 5 years ago-
➕ Added
- Add IP_RECVIF & IP_RECVDSTADDR. Enable IP_PKTINFO and IP6_PKTINFO on netbsd/openbsd. (#1002)
- Added
inotify_init1
,inotify_add_watch
andinotify_rm_watch
wrappers for Android and Linux. (#1016) - Add
ALG_SET_IV
,ALG_SET_OP
andALG_SET_AEAD_ASSOCLEN
control messages andAF_ALG
socket types on Linux and Android (#1031) - ➕ Add killpg (#1034)
- ➕ Added ENOTSUP errno support for Linux and Android. (#969)
- ➕ Add several errno constants from OpenBSD 6.2 (#1036)
- Added
from_std
andto_std
methods forsys::socket::IpAddr
(#1043) - ➕ Added
nix::unistd:seteuid
andnix::unistd::setegid
for those platforms that do not supportsetresuid
norsetresgid
respectively. (#1044) - ➕ Added a
access
wrapper (#1045) - ➕ Add
forkpty
(#1042) - ➕ Add
sched_yield
(#1050)
🔄 Changed
PollFd
event flags renamed toPollFlags
(#1024)recvmsg
now returns an Iterator overControlMessageOwned
objects rather thanControlMessage
objects. This is sadly not backwards-compatible. Fix code like this:rust if let ControlMessage::ScmRights(&fds) = cmsg {
By replacing it with code like this:
if let ControlMessageOwned::ScmRights(fds) = cmsg {
(#1020)
- Replaced
CmsgSpace
with thecmsg_space
macro. (#1020)
🛠 Fixed
- 🛠 Fixed multiple bugs when using
sendmsg
andrecvmsg
with ancillary control messages (#1020) - Macros exported by
nix
may now be imported viause
on the Rust 2018 edition without importing helper macros for BSD targets. (#1041)
For example, in Rust 2018, the
ioctl_read_bad!
macro can now be imported without importing theconvert_ioctl_res!
macro.use nix::ioctl_read_bad; ioctl_read_bad!(tcgets, libc::TCGETS, libc::termios);
✂ Removed