[Bug 2114] New: Android requires sys/socket.h to be included before sys/un.h.
bugzilla-daemon at mindrot.org
bugzilla-daemon at mindrot.org
Sun Jun 2 09:16:25 EST 2013
https://bugzilla.mindrot.org/show_bug.cgi?id=2114
Bug ID: 2114
Summary: Android requires sys/socket.h to be included before
sys/un.h.
Product: Portable OpenSSH
Version: 6.2p1
Hardware: Other
OS: Linux
Status: NEW
Severity: minor
Priority: P5
Component: Build system
Assignee: unassigned-bugs at mindrot.org
Reporter: nathan.osman at gmail.com
Created attachment 2290
--> https://bugzilla.mindrot.org/attachment.cgi?id=2290&action=edit
Performs an explicit check for sys/un.h with the appropriate #includes.
I freely confess that this is one of the most bizarre things I have
ever seen. Android's sys/un.h header uses sa_family_t in the
sockaddr_un struct but neither defines it nor includes a header that
does.
This leads to the following warning when running ./configure:
configure: WARNING: sys/un.h: present but cannot be compiled
configure: WARNING: sys/un.h: check for missing prerequisite
headers?
configure: WARNING: sys/un.h: see the Autoconf documentation
configure: WARNING: sys/un.h: section "Present But Cannot Be
Compiled"
configure: WARNING: sys/un.h: proceeding with the compiler's result
configure: WARNING: ##
------------------------------------------- ##
configure: WARNING: ## Report this to
openssh-unix-dev at mindrot.org ##
configure: WARNING: ##
------------------------------------------- ##
Thankfully this struct is defined in sys/socket.h. I have attached a
patch that explicitly runs AC_CHECK_HEADERS with the appropriate
parameters to ensure sys/un.h is detected properly. No actual source
code needed to be modified.
--
You are receiving this mail because:
You are watching the assignee of the bug.
More information about the openssh-bugs
mailing list