Skip to content

Commit 2999f02

Browse files
committed
isolate swift 5 workaround
1 parent 061c8cc commit 2999f02

File tree

1 file changed

+49
-1
lines changed

1 file changed

+49
-1
lines changed

FlyingFox/XCTests/SocketAddress+Glibc.swift

Lines changed: 0 additions & 1 deletion
This file was deleted.
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
//
2+
// SocketAddress+Glibc.swift
3+
// FlyingFox
4+
//
5+
// Created by Simon Whitty on 15/03/2022.
6+
// Copyright © 2022 Simon Whitty. All rights reserved.
7+
//
8+
// Distributed under the permissive MIT license
9+
// Get the latest version from here:
10+
//
11+
// https://github.com/swhitty/FlyingFox
12+
//
13+
// Permission is hereby granted, free of charge, to any person obtaining a copy
14+
// of this software and associated documentation files (the "Software"), to deal
15+
// in the Software without restriction, including without limitation the rights
16+
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
17+
// copies of the Software, and to permit persons to whom the Software is
18+
// furnished to do so, subject to the following conditions:
19+
//
20+
// The above copyright notice and this permission notice shall be included in all
21+
// copies or substantial portions of the Software.
22+
//
23+
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
24+
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
25+
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
26+
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
27+
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
28+
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
29+
// SOFTWARE.
30+
//
31+
32+
#if canImport(Glibc)
33+
// swift 5 on linux fails to import comformance for these Glibc types 🤷🏻‍♂️:
34+
import Glibc
35+
import FlyingSocks
36+
37+
extension sockaddr_in: SocketAddress {
38+
public static let family = sa_family_t(AF_INET)
39+
}
40+
41+
extension sockaddr_in6: SocketAddress {
42+
public static let family = sa_family_t(AF_INET6)
43+
}
44+
45+
extension sockaddr_un: SocketAddress {
46+
public static let family = sa_family_t(AF_UNIX)
47+
}
48+
49+
#endif

0 commit comments

Comments
 (0)