Age | Commit message (Collapse) | Author |
|
Move kqueue-related definitions from nix to libc
|
|
|
|
|
|
|
|
Don't use it for FilterFlag, because it triggers recursion limit reached error
|
|
Add Mkstemp (fixed for rust 1.2)
I fixed @antifuchs addition of `mkstmp` in https://github.com/nix-rust/nix/pull/365 by making it compile in Rust 1.2 and adding documentation.
A few remarks:
- made it working with Rust 1.2 which needed `to_bytes_with_nul()`. I think the implementation is memory safe but would like to have a pair of eyes checking that
- replaced Path by PathBuf so it's more in line with getcwd
- I didn't move it into another module. If this still the consensus then I would like to do that but in a separate PR (probably moving all stdio methods out)
- it's true that unistd doesn't need mkstmp since there is the crate tempdir and tempfile, but I'd love to see this here for completeness
|
|
its documentation\!), checking the failure of a directory now
|
|
|
|
OsString::from_vec on existing path var rather than construct string from pointer
|
|
|
|
readability
|
|
|
|
Removes SIGSTKFLT when cross-compiling to MIPS.
This is the only failing error when cross compiling to Tessel, which is a MIPS-based architecture.
Apparently libc does not have SIGSTKFLT (Term Stack fault on coprocessor) on this system, and indeed it does not have a coprocessor.
This commit should preserve the semantics for all other architectures. Potentially this can be inverted in the future if more platforms are added to only *whitelist* ARM, x86, x86_64, but I thought this conditional would suffice.
|
|
|
|
Fixed a bug where UnixAddr::new_abstract forgot to count the null-byte.
|
|
call pipe2 directly on Linux
A first shot at fixing https://github.com/nix-rust/nix/issues/414. This approach keeps the old implementation for platforms other than `notbsd`, because `libc` only exposes `pipe2` in the `notbsd` module.
I've tested this by hand on my Linux machine in a couple ways:
- Create a toy program that opens a pipe and passes it to `cat`, which hags if `O_CLOEXEC` doesn't get set properly. Confirm that it doesn't hang, but that it does if I pass `0` as the flags to `libc::pipe2`.
- Delete the new implementation entirely, and delete the `cfg` guards on the old implementation, and confirm that above is still true.
I haven't actually tested a cross compilation build though. Is there a standard way to do that?
|
|
|
|
Add epoll_create1
In order to get @kubo39's PR #384 forward, I cleaned up the commit history a bit and added `EpollEvent` back.
Since this module is used by mio, maybe @carllerche could comment on these changes.
|
|
*mut u8 whereas x86_64 and i686 expect it to be *mut i8)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Small fixes to RELEASE_PROCEDURE.md
I decided against adding a line for a local test of the commit, because we have the full build in the CI and you might miss something locally anyway.
|
|
Bump to 0.7.1-pre
|
|
|
|
|
|
Release v0.7.0
|
|
|
|
|
|
Add MSG_CMSG_CLOEXEC to MsgFlags on Linux
Fixes #421.
|
|
Fixes #421.
|
|
Update CHANGELOG for pull request 416
As [requested by @fiveop](https://github.com/nix-rust/nix/pull/416#issuecomment-245709257)
|
|
|
|
|
|
|
|
The final version of libc's PR #379 removed a few definitions, and fixed
OpenBSD's definition of fn kevent.
|
|
Mention the libc version changes in RELEASE_PROCEDURE.md
r? @nix-rust/nix-maintainers
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Expand on release procedure
|
|
|
|
add unistd::getcwd and unistd::mkdir
As a (late) followup of [this withdrawn PR](https://github.com/rust-lang/libc/pull/326) I have added getcwd (wrapper around `libc::getcwd`) and mkdir (wrapper around `libc::mkdir`) and added testing.
A few notes:
- I'm new to rust so I would appreciate some pair of eyes testing the code, plus I'm open for revision of code or general remarks about my coding style
- I have run the tests both on OSX as on Linux (Ubuntu)
- I've run `clippy` to see if my code is well formatted, however clippy issues many warnings about the project. I think I didn't add any more warnings
- the methods in unistd are not documented so I also left out the documentation of `getcwd` and `mkdir`, although I think it'd probably be good to add some documentation, especially some example code how to use the methods
- the base idea of `getcwd` is [taken from std](https://github.com/rust-lang/rust/blob/1.9.0/src/libstd/sys/unix/os.rs#L95-L119), should I mention that somewhere?
|