Commit Graph

71 Commits

Author SHA1 Message Date
JohnTitor e187543fdd Constify `CMSG_SPACE` for all the targets 2021-03-30 17:37:13 +09:00
Yuki Okushi d96c9a2d8e Replace `x86_64-sun-solaris` with `x86_64-pc-solaris` 2021-03-02 16:27:20 +09:00
Jason King 0f8e3d054c Add several IPsec related options 2021-02-27 06:24:22 +00:00
Jason King 5ab626984f Additional solaris fcntl values 2021-02-27 06:14:26 +00:00
Sean Klein 6873e2f930 Add O_DIRECTORY to solarish 2021-02-16 03:30:57 +00:00
bors 77180b6db8 Auto merge of #2042 - pfmooney:illumos-portnotify, r=JohnTitor
Add port_notify struct for illumos and Solaris

This adds a missing struct for configuring event ports notifications.  The `libc-test` suite passes on illumos (OmniOSCE) and is assumed to pass on Solaris, given that the interface has been present since Oracle forked from OpenSolaris.
2021-01-27 03:18:36 +00:00
Patrick Mooney 0d61dcb7f3 Add port_notify struct for illumos and Solaris 2021-01-22 16:45:39 +00:00
Patrick Mooney 5675256b80 Add timer interface for illumos and Solaris 2021-01-22 04:21:43 +00:00
Joshua M. Clulow 6b78ca9e72 add missing TCP socket options for illumos
The socket2 crate now depends on TCP_MAXSEG, and the rest of the options
may as well come along for the ride.
2020-11-25 16:34:58 -08:00
Jason King 9cd5c4be8d Add additional TCP options; fix TCP_KEEPIDLE 2020-10-30 00:42:56 +00:00
Jason King c35cc0a188 Add additional solarish TCP options 2020-10-30 00:32:04 +00:00
Patrick Mooney 8f57688dde pthread_getattr_np is not present on illumos 2020-10-04 18:47:00 +00:00
Daniil Bondarev 773f5562ba Use safe_f! consistently across platforms
The pr #1870 introduced safe_f! macro, which made some functions like
WIFEXITED and WEXITSTATUS const and safe on linux_like platform only,
which causes inconsistency when trying to use those functions in crates
compiled across multiple platforms, as using unsafe on those functions
will generate unused_unsafe warning on linux platforms and lack of
unsafe block will fail compilation on non-linux platforms.

To avoid the inconsistency, this commit applies the same macro for all
the same functions on other platforms too.
2020-09-12 23:38:06 -07:00
Petr Sumbera 9f6a7ceee8 add pthread_getattr_np() and pthread_attr_getstack() support for illumos and Solaris systems 2020-09-09 16:30:56 +02:00
Joshua M. Clulow 1f0ea0da73 add openpty and forkpty implementation for illumos systems
At time of writing, illumos systems do not provide an implementation of
the openpty() and forkpty() wrappers provided on some other UNIX
systems.  While we expect to grow an implementation, it seems prudent to
provide a compatibility routine here first to unblock illumos support in
the popular nix crate.
2020-08-05 20:39:45 -07:00
Joshua M. Clulow 1c9d5eaa41 add ucred(3C) support for illumos and Solaris systems
This series of routines allows the caller to determine the credentials
of another process by pid, or of the process on the remote end of a UNIX
domain socket.  The ucred_t is an opaque object with accessor routines,
and must be freed through ucred_free(3C) after use.
2020-08-01 21:47:13 -07:00
Patrick Mooney e1b9757128 Expose EPOLLEXCLUSIVE on illumos platform
Initially the EPOLLEXCLUSIVE definition was hidden on the illumos
platform as it lacked explicit support.  After further review, it was
concluded that EPOLLEXCLUSIVE can safely be considered a no-op, when not
fully implemented by the OS, making it safe for use on illumos.
2020-07-17 18:28:33 +00:00
Yuki Okushi b6396caf31
Merge pull request #1792 from jasonbking/cmsg 2020-06-27 19:17:32 +09:00
Jason King 40c46f4306 Add ancillary socket data accessor functions for solarish OSes 2020-06-26 20:58:43 +00:00
Patrick Mooney 714ab82741 solarish: Add missing constants 2020-06-08 17:26:40 -05:00
Joshua M. Clulow 9fdd9907ad remove SmartOS constants not applicable to illumos or Solaris
SmartOS is a downstream distribution of illumos, and carries a number of
additional patches that are not commonly available in other illumos
distributions.  They are also not found in Oracle Solaris.  With these
removed, the libc tests pass on a stock illumos system running
OpenIndiana.
2020-05-26 21:55:30 -07:00
Yuki Okushi f9f56830f8
Re-define `__priority_which`s as c_uint in linux-gnu 2020-05-21 21:57:46 +09:00
Patrick Mooney 3d65979233 Split up Solaris and illumos targets 2020-04-03 03:33:18 +00:00
Torbjørn Birch Moltu e3bbec2745 Add accept4() for NetBSD, Illumos and Solaris
References:
* NetBSD (became available with 8.0):
  http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/sys/socket.h?annotate=1.129&only_with_tag=MAIN
  http://cvsweb.netbsd.org/bsdweb.cgi/src/lib/libc/sys/accept4.c?annotate=1.2&only_with_tag=MAIN
* Illumos:
  https://illumos.org/man/3socket/accept
  https://github.com/illumos/illumos-gate/blob/master/usr/src/uts/common/sys/socket.h
  https://github.com/illumos/illumos-gate/blob/master/usr/src/lib/libsocket/socket/weaks.c
* Solaris:
  https://docs.oracle.com/cd/E88353_01/html/E37843/accept-3c.html
2020-03-21 13:16:31 +01:00
Thomas Hurst 5d8dccc7b7 Add missing AT_ constants
Add AT_EACCESS to Linux, Solaris, and Fuchsia.

Add AT_SYMLINK_FOLLOW, AT_REMOVEDIR, and  _AT_TRIGGER to Solaris.
2020-03-14 17:13:04 +00:00
Vita Batrla 3a90b74fc8 Solarish: missing declaration of port_send and port_sendn 2020-03-09 10:15:40 +01:00
Daniel Fox Franke 51f1aa42c0 Add <sys/timex.h> declarations for Solaris/IllumOS 2020-03-01 14:23:07 -05:00
Vickenty Fesunov 9358be36d6 Remove unnecessary parenthesis
This triggers a warning on a recent nightly, which in turn breaks CI due to
`#![deny(warnings)]` in libc-test/build.rs
2020-02-12 10:09:22 +01:00
GrayJack b135afcc22 Allow missing debug instead of impl Debug for union in this case 2019-12-11 09:35:03 -03:00
GrayJack 128c36d67a Formatting 2019-12-08 06:09:50 -03:00
GrayJack d6517796ec Fix missing finish() in Debug impl of door_desc_t__d_data 2019-12-08 06:03:11 -03:00
GrayJack 9298405584 Implement debug for door_desc_t__d_data 2019-12-08 04:01:47 -03:00
GrayJack e551eca809 Fix debug of utmp.host like reviewer suggestion 2019-12-08 03:38:47 -03:00
GrayJack 6a11b2b473 Fix debug as we cannot print host as of today 2019-11-30 06:07:27 -03:00
bors 096d868a2f Auto merge of #1584 - psumbera:master, r=gnzlbg
Add support for shared memory operations for solaris/illumos

This is needed because Firefox now uses slice-deque rust crate.
2019-11-28 12:09:01 +00:00
Joshua M. Clulow 223e7d340a expose futimens() for illumos systems (fix style) 2019-11-27 22:13:28 +00:00
Joshua M. Clulow ca3eb035f6 expose futimens() for illumos systems 2019-11-27 05:12:42 +00:00
Petr Sumbera 412dd4e1b0 Fixes fmt issues. 2019-11-25 15:17:42 +01:00
Petr Sumbera 3c1b0eee2e distinguish between solaris and illumos for shmid_ds 2019-11-22 09:28:47 +01:00
GrayJack 54283f9e98 Implement utmp for solarish targets 2019-11-21 21:18:19 -03:00
bors bd48043eec Auto merge of #1579 - GrayJack:utmpx_solaris, r=gnzlbg
Implement utmpx to solaris/illumos

Closes #1535
I followed these references:

https://docs.oracle.com/cd/E23823_01/html/816-5168/getutxent-3c.html#REFMAN3Agetutxent-3c
4e0c5eff9a/usr/src/head/utmpx.h
4e0c5eff9a/usr/src/head/utmp.h
2019-11-20 12:09:48 +00:00
GrayJack 9f1cbfa88a Run rustfmt 2019-11-19 00:28:16 -03:00
Mike Zeller e6a7fb6637 Add illumos 3socket flags 2019-11-14 20:47:07 +00:00
Petr Sumbera a7c0dcf5da Add missing MAP_ANONYMOUS for Solaris 2019-11-06 11:25:58 +01:00
Petr Sumbera 53ce57eae7 Add support for shared memory operations for solaris/illumos
This is needed because Firefox now uses slice-deque rust crate.
2019-11-06 10:42:51 +01:00
GrayJack 98fd3188e7 Implement utmpx to solaris/illumos 2019-11-01 08:05:13 -03:00
GrayJack fb06358b5f Add settimeofday for solaris/illumos 2019-10-13 15:25:25 -03:00
Philipp Gesang 165161bec3
fix argument names in the mq_* family of functions
It's *msg_prio* in both manpages and posix.
2019-09-18 23:29:34 +02:00
gnzlbg 423300242a Fix formatting 2019-09-13 00:00:04 +02:00
gnzlbg 9258ea17ec Fix line length 2019-09-12 23:49:55 +02:00