summaryrefslogtreecommitdiff
path: root/extension/safari/TabFS/TabFSService
diff options
context:
space:
mode:
authorOmar Rizwan <omar@omar.website>2021-02-08 04:02:47 -0800
committerOmar Rizwan <omar@omar.website>2021-02-08 04:02:47 -0800
commit4fdcf4be9d1e85a42ff92e7583208c0e87245124 (patch)
treec7ed72b47571b7de82bfec72295d737be14913b9 /extension/safari/TabFS/TabFSService
parent7211a5fdead06a3c1b4cb15af7ce2cf883b19346 (diff)
downloadTabFS-4fdcf4be9d1e85a42ff92e7583208c0e87245124.tar.gz
TabFS-4fdcf4be9d1e85a42ff92e7583208c0e87245124.zip
safari: successfully exchanges 1 req/resp over ws, then fails
Diffstat (limited to 'extension/safari/TabFS/TabFSService')
-rw-r--r--extension/safari/TabFS/TabFSService/TabFSService.swift7
1 files changed, 5 insertions, 2 deletions
diff --git a/extension/safari/TabFS/TabFSService/TabFSService.swift b/extension/safari/TabFS/TabFSService/TabFSService.swift
index e49d80f..87321c1 100644
--- a/extension/safari/TabFS/TabFSService/TabFSService.swift
+++ b/extension/safari/TabFS/TabFSService/TabFSService.swift
@@ -34,7 +34,6 @@ class TabFSService: NSObject, TabFSServiceProtocol {
var ws: NWListener!
func startWs() {
- // websocket server
let port = NWEndpoint.Port(rawValue: 9991)!
let parameters = NWParameters(tls: nil)
parameters.allowLocalEndpointReuse = true
@@ -56,9 +55,13 @@ class TabFSService: NSObject, TabFSServiceProtocol {
var handleRequest: ((_ req: Data) -> Void)?
ws.newConnectionHandler = { conn in
conn.start(queue: .main)
+
handleRequest = { req in
- conn.send(content: req, completion: .contentProcessed({ err in
+ let metaData = NWProtocolWebSocket.Metadata(opcode: .text)
+ let context = NWConnection.ContentContext(identifier: "context", metadata: [metaData])
+ conn.send(content: req, contentContext: context, completion: .contentProcessed({ err in
if err != nil {
+ os_log(.default, "%{public}@ error: %{public}@", String(data: req, encoding: .utf8) as! CVarArg, err!.debugDescription as CVarArg)
// FIXME: ERROR
}
}))