@@ -24,11 +24,12 @@ This project adheres to [Semantic Versioning](http://semver.org/).
24
24
and nix::Error::UnsupportedOperation}`
25
25
([ #614 ] ( https://github.com/nix-rust/nix/pull/614 ) )
26
26
- Added ` cfmakeraw ` , ` cfsetspeed ` , and ` tcgetsid ` . ([ #527 ] ( https://github.com/nix-rust/nix/pull/527 ) )
27
+ - Added "bad none", "bad write_ptr", "bad write_int", and "bad readwrite" variants to the ` ioctl! `
28
+ macro. ([ #670 ] ( https://github.com/nix-rust/nix/pull/670 ) )
27
29
28
30
### Changed
29
- - Changed ` ioctl!(write ...) ` to take argument by value instead as pointer.
30
- If you need a pointer as argument, use ` ioctl!(write buf ...) ` .
31
- ([ #626 ] ( https://github.com/nix-rust/nix/pull/626 ) )
31
+ - Changed ` ioctl!(write ...) ` into ` ioctl!(write_ptr ...) ` and ` ioctl!(write_int ..) ` variants
32
+ to more clearly separate those use cases. ([ #670 ] ( https://github.com/nix-rust/nix/pull/670 ) )
32
33
- Marked ` sys::mman::{ mmap, munmap, madvise, munlock, msync } ` as unsafe.
33
34
([ #559 ] ( https://github.com/nix-rust/nix/pull/559 ) )
34
35
- Minimum supported Rust version is now 1.13.
@@ -48,13 +49,21 @@ This project adheres to [Semantic Versioning](http://semver.org/).
48
49
- Revised the termios API including additional tests and documentation and exposed it on iOS. ([ #527 ] ( https://github.com/nix-rust/nix/pull/527 ) )
49
50
- ` eventfd ` , ` signalfd ` , and ` pwritev ` /` preadv ` functionality is now included by default for all
50
51
supported platforms. ([ #681 ] ( https://github.com/nix-rust/nix/pull/561 ) )
52
+ - The ` ioctl! ` macro's plain variants has been replaced with "bad read" to be consistent with
53
+ other variants. The generated functions also have more strict types for their arguments. The
54
+ "* _ buf" variants also now calculate total array size and take slice references for improved type
55
+ safety. The documentation has also been dramatically improved.
56
+ ([ #670 ] ( https://github.com/nix-rust/nix/pull/670 ) )
51
57
52
58
### Removed
53
59
- Removed ` io::Error ` from ` nix::Error ` and the conversion from ` nix::Error ` to ` Errno `
54
60
([ #614 ] ( https://github.com/nix-rust/nix/pull/614 ) )
55
61
- All feature flags have been removed in favor of conditional compilation on supported platforms.
56
62
` execvpe ` is no longer supported, but this was already broken and will be added back in the next
57
63
release. ([ #681 ] ( https://github.com/nix-rust/nix/pull/561 ) )
64
+ - Removed ` ioc_* ` functions and many helper constants and macros within the ` ioctl ` module. These
65
+ should always have been private and only the ` ioctl! ` should be used in public code.
66
+ ([ #670 ] ( https://github.com/nix-rust/nix/pull/670 ) )
58
67
59
68
### Fixed
60
69
- Fixed multiple issues compiling under different archetectures and OSes.
@@ -73,6 +82,8 @@ This project adheres to [Semantic Versioning](http://semver.org/).
73
82
([ #623 ] ( https://github.com/nix-rust/nix/pull/623 ) )
74
83
- Multiple constants related to the termios API have now been properly defined for
75
84
all supported platforms. ([ #527 ] ( https://github.com/nix-rust/nix/pull/527 ) )
85
+ - ` ioctl! ` macro now supports working with non-int datatypes and properly supports all platforms.
86
+ ([ #670 ] ( https://github.com/nix-rust/nix/pull/670 ) )
76
87
77
88
## [ 0.8.1] 2017-04-16
78
89
0 commit comments