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

Fixes for non-linux platforms #95

Open
wants to merge 6 commits into
base: master
Choose a base branch
from
Open

Conversation

apoikos
Copy link
Contributor

@apoikos apoikos commented Jan 3, 2017

Hi,

These changes make redsocks 0.5 build on non-linux platforms (tested on Debian GNU/KFreeBSD) again. The most important change is making splice(2) support optional at build- and run-time, as well as using the TCP_KEEPIDLE socket options et. al only when available.

Regards,
Apollon

As splice(2) is Linux-specific, mark it as unsupported on non-linux
systems.

Furthermore, if splice is requested in the config but unsupported by the
platform, report a warning to the user and ignore the config setting.
Check that splice(2) is available through the SPLICE_F_MOVE flag. If
it is not, do not build anything splice-related and fall back to the
buffer pump.
ipf is not available, at least on Debian GNU/kFreeBSD.
TCP_KEEPIDLE and friends are not portable.
LIST_HEAD is also defined in sys/queue.h on kFreeBSD. Rename our
implementation to RED_LIST_HEAD to avoid clashes. Note that LIST_HEAD is
currently unused.
@darkk darkk force-pushed the master branch 6 times, most recently from 7fa694d to 5df6a30 Compare February 1, 2018 20:41
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.

1 participant