update to docker tests
This commit is contained in:
@@ -760,7 +760,7 @@
|
||||
</connections>
|
||||
</buttonCell>
|
||||
</button>
|
||||
<textField verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="anE-Lb-OeR">
|
||||
<textField verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="anE-Lb-OeR" userLabel="txtAddr">
|
||||
<rect key="frame" x="11" y="44" width="160" height="22"/>
|
||||
<textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" selectable="YES" editable="YES" sendsActionOnEndEditing="YES" state="on" borderStyle="bezel" drawsBackground="YES" id="Owi-AX-slB">
|
||||
<font key="font" metaFont="system"/>
|
||||
@@ -771,7 +771,7 @@
|
||||
<action selector="txtAddrChanged:" target="XfG-lQ-9wD" id="vpp-Wo-rj8"/>
|
||||
</connections>
|
||||
</textField>
|
||||
<textField verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="imQ-Xu-9iD">
|
||||
<textField verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="imQ-Xu-9iD" userLabel="txtPort">
|
||||
<rect key="frame" x="175" y="44" width="50" height="22"/>
|
||||
<textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" selectable="YES" editable="YES" sendsActionOnEndEditing="YES" state="on" borderStyle="bezel" drawsBackground="YES" id="idL-Hj-Jfk">
|
||||
<font key="font" metaFont="system"/>
|
||||
@@ -877,7 +877,7 @@
|
||||
<color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
|
||||
</textFieldCell>
|
||||
</textField>
|
||||
<scrollView fixedFrame="YES" horizontalLineScroll="10" horizontalPageScroll="10" verticalLineScroll="10" verticalPageScroll="10" hasHorizontalScroller="NO" usesPredominantAxisScrolling="NO" translatesAutoresizingMaskIntoConstraints="NO" id="f93-eE-nJ9">
|
||||
<scrollView fixedFrame="YES" horizontalLineScroll="10" horizontalPageScroll="10" verticalLineScroll="10" verticalPageScroll="10" hasHorizontalScroller="NO" usesPredominantAxisScrolling="NO" translatesAutoresizingMaskIntoConstraints="NO" id="f93-eE-nJ9" userLabel="TxtRX">
|
||||
<rect key="frame" x="271" y="49" width="240" height="135"/>
|
||||
<clipView key="contentView" ambiguous="YES" id="yrD-Hg-n1d">
|
||||
<rect key="frame" x="1" y="1" width="223" height="133"/>
|
||||
@@ -953,14 +953,14 @@
|
||||
<outlet property="btnSend" destination="kBj-wv-ccA" id="Bg5-qM-tLw"/>
|
||||
<outlet property="segmentAPISelector" destination="zJe-Qg-KiM" id="B1u-ja-2o3"/>
|
||||
<outlet property="segmentProtocolSelector" destination="TgD-cF-oG9" id="Lbo-Pn-lgi"/>
|
||||
<outlet property="txtAddr" destination="imQ-Xu-9iD" id="FQu-fG-Pg2"/>
|
||||
<outlet property="txtAddr" destination="anE-Lb-OeR" id="9cH-6T-dE3"/>
|
||||
<outlet property="txtNWID" destination="7LM-Q0-D7l" id="3QF-tw-Hws"/>
|
||||
<outlet property="txtPort" destination="imQ-Xu-9iD" id="UrQ-84-slh"/>
|
||||
<outlet property="txtPort" destination="imQ-Xu-9iD" id="gxQ-sZ-nio"/>
|
||||
<outlet property="txtPortChanged" destination="imQ-Xu-9iD" id="NqB-2s-Og3"/>
|
||||
<outlet property="txtR" destination="f93-eE-nJ9" id="Sbh-vb-Ycb"/>
|
||||
<outlet property="txtRX" destination="f93-eE-nJ9" id="aTL-JM-evI"/>
|
||||
<outlet property="txtRX" destination="f93-eE-nJ9" id="Gyx-ss-gDU"/>
|
||||
<outlet property="txtRx" destination="f93-eE-nJ9" id="yPZ-sv-Ctq"/>
|
||||
<outlet property="txtTX" destination="qu5-Bf-5GJ" id="AZG-jC-vS5"/>
|
||||
<outlet property="txtTX" destination="qu5-Bf-5GJ" id="a8Y-u3-u1A"/>
|
||||
</connections>
|
||||
</viewController>
|
||||
<customObject id="rPt-NT-nkU" userLabel="First Responder" customClass="NSResponder" sceneMemberID="firstResponder"/>
|
||||
|
||||
@@ -19,21 +19,25 @@ class ViewController: NSViewController {
|
||||
@IBOutlet weak var txtPort: NSTextField!
|
||||
@IBOutlet weak var btnConnect: NSButton!
|
||||
@IBOutlet weak var btnBind: NSButton!
|
||||
|
||||
@IBOutlet weak var txtTX: NSScrollView!
|
||||
@IBOutlet weak var txtRX: NSScrollView!
|
||||
|
||||
@IBOutlet weak var btnSend: NSButton!
|
||||
|
||||
var serverPort:Int32 = 4545
|
||||
var serverPort:Int32 = 8080
|
||||
var serverAddr:String = "10.147.18.5"
|
||||
|
||||
var sock:Int32 = -1
|
||||
|
||||
@IBAction func txtAddrChanged(sender: AnyObject) {
|
||||
if(sender.value != nil) {
|
||||
serverAddr = sender.value
|
||||
if(sender.stringValue != nil) {
|
||||
serverAddr = sender.stringValue
|
||||
}
|
||||
}
|
||||
|
||||
@IBAction func txtPortChanged(sender: AnyObject) {
|
||||
serverPort = sender.intValue!
|
||||
serverPort = sender.intValue
|
||||
}
|
||||
|
||||
// Join a ZeroTier network
|
||||
@@ -52,6 +56,7 @@ class ViewController: NSViewController {
|
||||
selectedShim = sender.intValue // 0 = BSD-style, 1 = SOCKS5 Proxy, etc
|
||||
}
|
||||
|
||||
|
||||
// Select a protocol
|
||||
// Protocol { TCP / UDP }
|
||||
var selectedProtocol:Int32 = 0
|
||||
@@ -59,21 +64,21 @@ class ViewController: NSViewController {
|
||||
switch sender.intValue
|
||||
{
|
||||
case 0:
|
||||
print("Selected TCP (SOCK_STREAM)\n");
|
||||
selectedProtocol = SOCK_STREAM
|
||||
case 1:
|
||||
print("Selected UDP (SOCK_DGRAM)\n");
|
||||
selectedProtocol = SOCK_DGRAM
|
||||
default:
|
||||
break;
|
||||
} }
|
||||
}
|
||||
}
|
||||
|
||||
// Connect to remote host on ZeroTier virtual network
|
||||
@IBAction func UI_Connect(sender: AnyObject) {
|
||||
|
||||
// TCP
|
||||
if(selectedProtocol == SOCK_STREAM)
|
||||
{
|
||||
let sd = zts_socket(AF_INET, SOCK_STREAM, 0)
|
||||
sock = zts_socket(AF_INET, SOCK_STREAM, 0)
|
||||
var addr = sockaddr_in(sin_len: UInt8(sizeof(sockaddr_in)),
|
||||
sin_family: UInt8(AF_INET),
|
||||
sin_port: UInt16(serverPort).bigEndian,
|
||||
@@ -82,10 +87,10 @@ class ViewController: NSViewController {
|
||||
|
||||
inet_pton(AF_INET, serverAddr, &(addr.sin_addr));
|
||||
|
||||
let connect_fd = zts_connect(sd, UnsafePointer<sockaddr>([addr]), UInt32(addr.sin_len))
|
||||
print("connect_fd = \(connect_fd),\(errno)")
|
||||
let connect_err = zts_connect(sock, UnsafePointer<sockaddr>([addr]), UInt32(addr.sin_len))
|
||||
print("connect_err = \(connect_err),\(errno)")
|
||||
|
||||
if connect_fd < 0 {
|
||||
if connect_err < 0 {
|
||||
let err = errno
|
||||
print("Error connecting IPv4 socket \(err)")
|
||||
return
|
||||
@@ -99,32 +104,52 @@ class ViewController: NSViewController {
|
||||
}
|
||||
}
|
||||
|
||||
// Bind a ZeroTier socket
|
||||
@IBAction func UI_Bind(sender: AnyObject) {
|
||||
}
|
||||
|
||||
@IBAction func UI_SendData(sender: AnyObject) {
|
||||
|
||||
}
|
||||
|
||||
/*
|
||||
// Mode { Client / Server }
|
||||
@IBOutlet weak var ModeControl: UISegmentedControl!
|
||||
var selectedMode:UInt16 = 0
|
||||
@IBAction func ModeControlSelected(sender: AnyObject) {
|
||||
switch sender.selectedSegmentIndex
|
||||
// TCP
|
||||
if(selectedProtocol == SOCK_STREAM)
|
||||
{
|
||||
case 0:
|
||||
print("Selected client\n");
|
||||
selectedMode = 0
|
||||
case 1:
|
||||
print("Selected server\n");
|
||||
selectedMode = 1
|
||||
default:
|
||||
break;
|
||||
sock = zts_socket(AF_INET, SOCK_STREAM, 0)
|
||||
var addr = sockaddr_in(sin_len: UInt8(sizeof(sockaddr_in)),
|
||||
sin_family: UInt8(AF_INET),
|
||||
sin_port: UInt16(serverPort).bigEndian,
|
||||
sin_addr: in_addr(s_addr: 0),
|
||||
sin_zero: (0,0,0,0,0,0,0,0))
|
||||
|
||||
inet_pton(AF_INET, serverAddr, &(addr.sin_addr));
|
||||
|
||||
let bind_err = zts_bind(sock, UnsafePointer<sockaddr>([addr]), UInt32(addr.sin_len))
|
||||
print("bind_err = \(bind_err),\(errno)")
|
||||
|
||||
if bind_err < 0 {
|
||||
let err = errno
|
||||
print("Error binding IPv4 socket \(err)")
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
// UDP
|
||||
if(selectedProtocol == SOCK_DGRAM)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
// Send data to a remote host
|
||||
@IBAction func UI_SendData(sender: AnyObject) {
|
||||
// Use ordinary read/write calls on ZeroTier socket
|
||||
|
||||
// TCP
|
||||
if(selectedProtocol == SOCK_STREAM)
|
||||
{
|
||||
write(sock, "test", 4);
|
||||
}
|
||||
// UDP
|
||||
if(selectedProtocol == SOCK_DGRAM)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
*/
|
||||
|
||||
|
||||
var service_thread : NSThread!
|
||||
@@ -140,6 +165,10 @@ class ViewController: NSViewController {
|
||||
override func viewDidLoad() {
|
||||
super.viewDidLoad()
|
||||
|
||||
// Set initial UI values for demo
|
||||
txtAddr.stringValue = serverAddr
|
||||
txtPort.intValue = serverPort
|
||||
|
||||
// ZeroTier Service thread
|
||||
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), {
|
||||
self.service_thread = NSThread(target:self, selector:"ztnc_start_service", object:nil)
|
||||
@@ -155,7 +184,5 @@ class ViewController: NSViewController {
|
||||
// Update the view, if already loaded.
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user