diff --git a/.build/checkouts/Embassy/Sources/KqueueSelector.swift b/.build/checkouts/Embassy/Sources/KqueueSelector.swift index e8d2817..192cc9c 100644 --- a/.build/checkouts/Embassy/Sources/KqueueSelector.swift +++ b/.build/checkouts/Embassy/Sources/KqueueSelector.swift @@ -8,7 +8,7 @@ import Foundation -#if !os(Linux) +#if !os(Linux) && !os(Android) public final class KqueueSelector: Selector { enum Error: Swift.Error { diff --git a/.build/checkouts/Embassy/Sources/SelectSelector.swift b/.build/checkouts/Embassy/Sources/SelectSelector.swift index 9351898..9a2e876 100644 --- a/.build/checkouts/Embassy/Sources/SelectSelector.swift +++ b/.build/checkouts/Embassy/Sources/SelectSelector.swift @@ -66,7 +66,7 @@ public final class SelectSelector: Selector { let microsecondsPerSecond = 1000000 if let timeout = timeout { var timeoutVal = timeval() - #if os(Linux) + #if os(Linux) || os(Android) timeoutVal.tv_sec = Int(timeout) timeoutVal.tv_usec = Int( Int(timeout * Double(microsecondsPerSecond)) - diff --git a/.build/checkouts/Embassy/Sources/SystemLibrary.swift b/.build/checkouts/Embassy/Sources/SystemLibrary.swift index d51e046..1df7898 100644 --- a/.build/checkouts/Embassy/Sources/SystemLibrary.swift +++ b/.build/checkouts/Embassy/Sources/SystemLibrary.swift @@ -8,7 +8,7 @@ import Foundation -#if os(Linux) +#if canImport(Glibc) import Glibc #else import Darwin @@ -16,7 +16,7 @@ import Darwin /// Collection of system library methods and constants struct SystemLibrary { - #if os(Linux) + #if os(Linux) || os(Android) // MARK: Linux constants static let fdSetSize = FD_SETSIZE static let nfdbits: Int32 = Int32(MemoryLayout.size) * 8 @@ -42,24 +42,24 @@ struct SystemLibrary { static func fdSet(fd: Int32, set: inout fd_set) { let intOffset = Int(fd / SystemLibrary.nfdbits) let bitOffset = Int(fd % SystemLibrary.nfdbits) - let mask = 1 << bitOffset + let mask : UInt = 1 << bitOffset switch intOffset { - case 0: set.__fds_bits.0 = set.__fds_bits.0 | mask - case 1: set.__fds_bits.1 = set.__fds_bits.1 | mask - case 2: set.__fds_bits.2 = set.__fds_bits.2 | mask - case 3: set.__fds_bits.3 = set.__fds_bits.3 | mask - case 4: set.__fds_bits.4 = set.__fds_bits.4 | mask - case 5: set.__fds_bits.5 = set.__fds_bits.5 | mask - case 6: set.__fds_bits.6 = set.__fds_bits.6 | mask - case 7: set.__fds_bits.7 = set.__fds_bits.7 | mask - case 8: set.__fds_bits.8 = set.__fds_bits.8 | mask - case 9: set.__fds_bits.9 = set.__fds_bits.9 | mask - case 10: set.__fds_bits.10 = set.__fds_bits.10 | mask - case 11: set.__fds_bits.11 = set.__fds_bits.11 | mask - case 12: set.__fds_bits.12 = set.__fds_bits.12 | mask - case 13: set.__fds_bits.13 = set.__fds_bits.13 | mask - case 14: set.__fds_bits.14 = set.__fds_bits.14 | mask - case 15: set.__fds_bits.15 = set.__fds_bits.15 | mask + case 0: set.fds_bits.0 = set.fds_bits.0 | mask + case 1: set.fds_bits.1 = set.fds_bits.1 | mask + case 2: set.fds_bits.2 = set.fds_bits.2 | mask + case 3: set.fds_bits.3 = set.fds_bits.3 | mask + case 4: set.fds_bits.4 = set.fds_bits.4 | mask + case 5: set.fds_bits.5 = set.fds_bits.5 | mask + case 6: set.fds_bits.6 = set.fds_bits.6 | mask + case 7: set.fds_bits.7 = set.fds_bits.7 | mask + case 8: set.fds_bits.8 = set.fds_bits.8 | mask + case 9: set.fds_bits.9 = set.fds_bits.9 | mask + case 10: set.fds_bits.10 = set.fds_bits.10 | mask + case 11: set.fds_bits.11 = set.fds_bits.11 | mask + case 12: set.fds_bits.12 = set.fds_bits.12 | mask + case 13: set.fds_bits.13 = set.fds_bits.13 | mask + case 14: set.fds_bits.14 = set.fds_bits.14 | mask + case 15: set.fds_bits.15 = set.fds_bits.15 | mask default: break } } @@ -67,24 +67,24 @@ struct SystemLibrary { static func fdIsSet(fd: Int32, set: inout fd_set) -> Bool { let intOffset = Int(fd / SystemLibrary.nfdbits) let bitOffset = Int(fd % SystemLibrary.nfdbits) - let mask = Int(1 << bitOffset) + let mask = UInt(1 << bitOffset) switch intOffset { - case 0: return set.__fds_bits.0 & mask != 0 - case 1: return set.__fds_bits.1 & mask != 0 - case 2: return set.__fds_bits.2 & mask != 0 - case 3: return set.__fds_bits.3 & mask != 0 - case 4: return set.__fds_bits.4 & mask != 0 - case 5: return set.__fds_bits.5 & mask != 0 - case 6: return set.__fds_bits.6 & mask != 0 - case 7: return set.__fds_bits.7 & mask != 0 - case 8: return set.__fds_bits.8 & mask != 0 - case 9: return set.__fds_bits.9 & mask != 0 - case 10: return set.__fds_bits.10 & mask != 0 - case 11: return set.__fds_bits.11 & mask != 0 - case 12: return set.__fds_bits.12 & mask != 0 - case 13: return set.__fds_bits.13 & mask != 0 - case 14: return set.__fds_bits.14 & mask != 0 - case 15: return set.__fds_bits.15 & mask != 0 + case 0: return set.fds_bits.0 & mask != 0 + case 1: return set.fds_bits.1 & mask != 0 + case 2: return set.fds_bits.2 & mask != 0 + case 3: return set.fds_bits.3 & mask != 0 + case 4: return set.fds_bits.4 & mask != 0 + case 5: return set.fds_bits.5 & mask != 0 + case 6: return set.fds_bits.6 & mask != 0 + case 7: return set.fds_bits.7 & mask != 0 + case 8: return set.fds_bits.8 & mask != 0 + case 9: return set.fds_bits.9 & mask != 0 + case 10: return set.fds_bits.10 & mask != 0 + case 11: return set.fds_bits.11 & mask != 0 + case 12: return set.fds_bits.12 & mask != 0 + case 13: return set.fds_bits.13 & mask != 0 + case 14: return set.fds_bits.14 & mask != 0 + case 15: return set.fds_bits.15 & mask != 0 default: return false } } diff --git a/.build/checkouts/Embassy/Sources/TCPSocket.swift b/.build/checkouts/Embassy/Sources/TCPSocket.swift index 17314af..0d3b802 100644 --- a/.build/checkouts/Embassy/Sources/TCPSocket.swift +++ b/.build/checkouts/Embassy/Sources/TCPSocket.swift @@ -27,7 +27,7 @@ public final class TCPSocket { /// Whether to ignore SIGPIPE signal or not var ignoreSigPipe: Bool { get { - #if os(Linux) + #if os(Linux) || os(Android) return false #else var value: Int32 = 0 @@ -41,7 +41,7 @@ public final class TCPSocket { } set { - #if os(Linux) + #if os(Linux) || os(Android) // TODO: maybe we should call signal(SIGPIPE, SIG_IGN) here? but it affects // whole process return @@ -103,7 +103,7 @@ public final class TCPSocket { } // create IPv6 socket address var address = sockaddr_in6() - #if !os(Linux) + #if !os(Linux) && !os(Android) address.sin6_len = UInt8(MemoryLayout.stride) #endif address.sin6_family = sa_family_t(AF_INET6) @@ -151,7 +151,7 @@ public final class TCPSocket { func connect(host: String, port: Int) throws { // create IPv6 socket address var address = sockaddr_in6() - #if !os(Linux) + #if !os(Linux) && !os(Android) address.sin6_len = UInt8(MemoryLayout.stride) #endif address.sin6_family = sa_family_t(AF_INET6)