Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Solaris: fixes build and tests, adds CI #2544

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

psumbera
Copy link

Disables some tests for Solaris.

test/test_sendfile.rs:

Solaris, sendfilev() doesn't support AF_UNIX sockets. Instead, it expects an AF_INET or AF_INET6 sockets.

@SteveLauC SteveLauC self-requested a review November 20, 2024 01:11
@SteveLauC SteveLauC linked an issue Nov 20, 2024 that may be closed by this pull request
Copy link
Member

@SteveLauC SteveLauC left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the PR! Sorry for a bunch of comments 🫣

.github/workflows/ci.yml Outdated Show resolved Hide resolved
src/dir.rs Show resolved Hide resolved
src/fcntl.rs Outdated Show resolved Hide resolved
src/sys/signal.rs Outdated Show resolved Hide resolved
/// let fds = [r.as_raw_fd()];
/// let cmsg = ControlMessage::ScmRights(&fds);
/// sendmsg(fd.as_raw_fd(), &iov, &[cmsg], MsgFlags::empty(), Some(&localhost)).unwrap();
/// sendmsg(fd.as_raw_fd(), &iov, &[], MsgFlags::empty(), Some(&localhost)).unwrap();
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are there any control messages we can use on Solaris?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So there is no control message we can use? 👀

Update: I just checked enum ControlMessage, looks like this ScmRights is available on Solaris, any reason to remove it?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@psumbera What about this one? 👀

src/sys/termios.rs Outdated Show resolved Hide resolved
src/sys/termios.rs Outdated Show resolved Hide resolved
src/sys/termios.rs Outdated Show resolved Hide resolved
src/syslog.rs Outdated Show resolved Hide resolved
test/sys/test_timer.rs Outdated Show resolved Hide resolved
@SteveLauC
Copy link
Member

BTW, looks like x86_64-sun-solaris was renamed to x86_64-pc-solaris, so this PR can close #935?

@SteveLauC SteveLauC linked an issue Nov 20, 2024 that may be closed by this pull request
@psumbera psumbera force-pushed the solaris-fixes branch 2 times, most recently from 0aaaff7 to 429af01 Compare November 21, 2024 08:39
@psumbera psumbera force-pushed the solaris-fixes branch 2 times, most recently from 28fe095 to 884888f Compare November 26, 2024 14:53
@psumbera
Copy link
Author

Hurd CI failure seems to be related to rust-lang/libc#3785.

@SteveLauC
Copy link
Member

SteveLauC commented Nov 27, 2024

Hurd CI failure seems to be related to rust-lang/libc#3785.

Right, std is broken due to that PR

I just sent a patch to the std: rust-lang/rust#133515

@SteveLauC
Copy link
Member

I just disabled the Hurd CI, you can rebase your branch to fix the issue:)

@psumbera psumbera force-pushed the solaris-fixes branch 2 times, most recently from ae38724 to 96856f1 Compare November 27, 2024 11:54
Disables some tests for Solaris.

test/test_sendfile.rs:

Solaris, sendfilev() doesn't support AF_UNIX sockets.
Instead, it expects an AF_INET or AF_INET6 sockets.

test/sys/test_timer.rs:

Note that sys::test_timer::alarm_fires can fail as timer_create(3C) function
requires the PRIV_PROC_CLOCK_HIGHRES. But since tests are supposed to run
with sudo it should be ok.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

fails cross check --target x86_64-pc-solaris on 1.72.1 Add support for x86_64-sun-solaris target
2 participants