Commit Graph

3125 Commits

Author SHA1 Message Date
Danilo Bargen
ccdc5ebc2d fixup! Add ttyname_r
Add cfg_attr
2019-06-23 22:58:06 +02:00
Robert D. French
ba459b72a4 Obey 80 char line width 2019-06-23 00:51:36 -04:00
Robert D. French
27f9da96de Support calls to the SunOS Doors API 2019-06-22 23:37:26 -04:00
bors
a73d6bc00d Auto merge of #1402 - sikmir:haiku-add-ioctls, r=gnzlbg
haiku: add missing ioctl identifiers to control the TTY

Ref. [termios.h](37761761a0/headers/posix/termios.h (L165-L189))
2019-06-20 17:12:40 +00:00
Nikolay Korotkiy
60254f1151
haiku: add missing ioctl identifiers to control the TTY 2019-06-20 19:37:20 +03:00
bors
5bbba03eb1 Auto merge of #1399 - josephlr:getrandom, r=gnzlbg
Add getrandom() bindings on Linux

Closes #659
2019-06-17 09:30:21 +00:00
Joe Richey
14b22c15d0 Fix style lints 2019-06-14 03:41:24 -07:00
Joe Richey
457c02d7b5 Add getrandom() on non-mips musl 2019-06-14 02:21:17 -07:00
bors
0b02c4060a Auto merge of #1398 - josephlr:fuchsia, r=gnzlbg
Remove Linux constants from Fushia

PR #849 just moved all of the Linux structures into `src/fuchsia`.
While this is good for the most part, we really don't want the `SYS_*`
constants exported on Fushia, as these are not Fuchsia's syscalls.

This also removes Linux-specific `GRND_*` constants.
2019-06-14 08:22:45 +00:00
Joe Richey
3a7da471b8 Older musl doesn't have getrandom() 2019-06-13 23:49:05 -07:00
Joe Richey
45083afd9c Android doesn't have getrandom() 2019-06-13 20:38:42 -07:00
Joe Richey
851e9a1ce1 Use *mut c_void for buffer pointer. 2019-06-13 18:09:17 -07:00
Joe Richey
8bc89810c2 Add getrandom() bindings on linux and android
Closes #659
2019-06-13 15:02:07 -07:00
Joe Richey
3b27cb3a13 Remove Linux constants from Fushia
PR #849 just moved all of the Linux structures into `src/fuchsia`.
While this is good for the most part, we really don't want the `SYS_*`
constants exported on Fushia, as these are not Fuchsia's syscalls.

This also removes Linux-specific `GRND_*` constants.
2019-06-13 14:59:27 -07:00
bors
e0ff1e68b9 Auto merge of #1387 - tormol:fionclex, r=gnzlbg
Add FIONCLEX and other FIO* constants for Linux, DragonFly and OpenBSD

[OpenBSD header](https://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sys/sys/filio.h?annotate=1.5) | [DragonFly header](http://gitweb.dragonflybsd.org/dragonfly.git/blame/refs/heads/master:/sys/sys/filio.h) | [Linux search](https://github.com/torvalds/linux/search?q=FIONCLEX+FIOQSIZE&unscoped_q=FIONCLEX+FIOQSIZE&type=Code)
For Linux I've used [godbolt compiler explorer](https://godbolt.org/z/h-C7qM) to get final values where possible.

Wile this crate has FIOCLEX for Fuchsia, Emscripten and Redox, I've not added FIONCLEX for them because those targets appear to support neither.
I started adding FIOASYNC, FIOSETOWN and FIOGETOWN for all the Linux architectures, but gave up when I realized FIOASYNC is kind of deprecated and the other two useless without more symbols. If anybody is interested I have a [branch with how far I got](https://github.com/tormol/rust-libc/tree/sigio).
2019-06-11 18:05:33 +00:00
bors
11c762c535 Auto merge of #1394 - Susurrus:sigevent_extra_traits, r=gnzlbg
Switch to manual trait impls for sigevent

`sigevent` on most platforms have padding or unused fields. Rather
than display those in the `Debug` impl by deriving it, manually implement
all `extra_traits` instead ignoring those fields.

I do worry that my `PartialEq` implementations for this for some platforms (like Linux) is not correct due to ignoring bytes that shouldn't be ignored because these structs don't have a proper union set up.

cc @asomers
Part of nix-rust/nix#1035
2019-06-11 07:36:31 +00:00
Bryant Mairs
7c265919ec Switch to manual trait impls for sigevent
sigevent structs on most platforms have padding or unused fields. Rather
than display those in the Debug impl by deriving it, manually implement
all extra_traits instead ignoring those fields.
2019-06-09 19:28:32 -07:00
bors
6985986c3b Auto merge of #1386 - red75prime:arm-linux-uclibcgnueabi, r=gnzlbg
Fix libstd compilation for arm-uclibc target
2019-06-08 11:49:49 +00:00
bors
2026c86667 Auto merge of #1392 - stefano-garzarella:vsock, r=gnzlbg
linux: add VSOCK struct and constants

Add struct sockaddr_vm and VMADDR_ constants to use VSOCK on Linux.
VSOCK is present since Linux 3.9
2019-06-08 10:23:52 +00:00
Torbjørn Birch Moltu
2c10c4c887 Add FIONCLEX for Linux 2019-06-07 20:00:55 +02:00
Torbjørn Birch Moltu
2293748dfe Add FIODTYPE, FIGETLBA and FIODGNAME for DragonFly 2019-06-07 20:00:55 +02:00
Torbjørn Birch Moltu
a319b62fbd Generalize some FIO* constants to all BSDs
* Change the type of FIONCLEX on apple platforms from c_uint to c_ulong
* Add FIONCLEX, FIONREAD, FIOASYNC, FIOSETOWN and FIOGETOWN
  for DragonFly and OpenBSD
2019-06-07 20:00:55 +02:00
bors
d5a599ece7 Auto merge of #1393 - Susurrus:ptrace_detach, r=gnzlbg
Re-add PTRACE_DETACH for mips64 GNU targets

During the refactor in 4bd419eb, `PTRACE_DETACH` was accidentally removed on
these targets. This re-adds it.

Fixes brokenness encountered during nix-rust/nix#1035

CC @asomers
2019-06-07 12:48:46 +00:00
Bryant Mairs
1f27f5d247 Re-add PTRACE_DETACH for mips64 GNU targets
During the refactor in 4bd419eb, PTRACE_DETACH was accidentally removed on
these targets. This re-adds it.
2019-06-07 05:25:22 -07:00
bors
635ced10d3 Auto merge of #1388 - tormol:mq_time, r=gnzlbg
Add more posix message queue functions for Linux and all for solarish

I'm not able to run the tests locally (likely due to too old headers on Ubuntu 18.04), but I've tested my [posixmq crate](0decb7c82d) with these functions on Linux and OmniOS.
2019-06-07 11:14:25 +00:00
bors
9aa66dc0af Auto merge of #1390 - gnzlbg:ref_gnu, r=gnzlbg
Refactor the GNU module
2019-06-06 19:20:29 +00:00
gnzlbg
fbe38dd0ab Fix builds 2019-06-06 16:47:09 +02:00
gnzlbg
46dbf2d2e3 Fix siginfo_t in s390x 2019-06-06 16:29:44 +02:00
gnzlbg
090f873e2a Fix utmpx on s390x 2019-06-06 16:29:44 +02:00
gnzlbg
5e37553c4f Fix statfs 2019-06-06 16:29:44 +02:00
gnzlbg
f21d91fb38 Fix value of RLIM_INFINITY on mips32 2019-06-06 16:29:44 +02:00
gnzlbg
fc7c408bbe Fix formatting 2019-06-06 16:29:44 +02:00
gnzlbg
1c97b77cb3 Correct bugs in mips, mips64 and s390x 2019-06-06 14:35:44 +02:00
gnzlbg
4f78d5d420 Fix style 2019-06-05 11:51:24 +02:00
Stefano Garzarella
4825678dee libc-test: include "linux/vm_sockets.h" to test VSOCK
Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
2019-06-05 11:44:42 +02:00
gnzlbg
b988e27498 Refactor linux x86_64 module 2019-06-05 11:35:00 +02:00
gnzlbg
60571f9143 Remove duplicated constants from x86_64 2019-06-05 11:32:56 +02:00
gnzlbg
d36963a0b8 Remove duplicated constants from s390x 2019-06-05 11:30:10 +02:00
gnzlbg
35ff8c2dbe Remove duplicated constnats from mips32 2019-06-05 10:28:11 +02:00
Stefano Garzarella
0546d427b4 linux: add VSOCK struct and constants
Add struct sockaddr_vm and VMADDR_ constants to use
VSOCK on Linux. VSOCK is present since Linux 3.9

Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
2019-06-05 10:12:58 +02:00
gnzlbg
4c3bc0dd62 Fix duplicated constants in x32 and not_x32 modules 2019-06-05 08:41:21 +02:00
Torbjørn Birch Moltu
bbcfd3cce2 Add posix message queue types and functions for solarish 2019-06-04 19:26:46 +02:00
Torbjørn Birch Moltu
25846bccc1 Add mq_timedsend() and mq_timedreceive() for Linux 2019-06-04 19:26:45 +02:00
gnzlbg
bf92b760cf Remove duplicated flock type in s390x 2019-06-04 18:35:07 +02:00
gnzlbg
4bd419ebec Move the mips module into the gnu module 2019-06-04 18:17:19 +02:00
gnzlbg
65f23e6aca Move s390x into the gnu module 2019-06-04 16:23:47 +02:00
bors
ce7e3a7e86 Auto merge of #1389 - gnzlbg:ref_linux2, r=gnzlbg
Rename the notbsd module to linux_like
2019-06-04 11:36:18 +00:00
gnzlbg
8f098a3e3a Rename the notbsd module to linux_like 2019-06-03 21:46:43 +02:00
red75prime
a85e001b93 Fix libstd compilation for arm-uclibc target 2019-06-02 20:36:20 +05:00
bors
0e25493877 Auto merge of #1384 - gnzlbg:upgrade_rlimit_consts, r=gnzlbg
Upgrade rlimit consts

cc @aidanhs - this should fix the error you are seeing.
2019-06-02 09:14:49 +00:00