summaryrefslogtreecommitdiff
path: root/extension
diff options
context:
space:
mode:
authorOmar Rizwan <omar@omar.website>2021-02-08 04:26:00 -0800
committerOmar Rizwan <omar@omar.website>2021-02-08 04:26:00 -0800
commiteae9082407a81746bb11882a76f28eeeed501ae4 (patch)
tree91f6db3cede0e5ede454807c5399a1d4ea76c3b6 /extension
parent78f67aa873b02fc95245d8f96faafe94a6735f58 (diff)
downloadTabFS-eae9082407a81746bb11882a76f28eeeed501ae4.tar.gz
TabFS-eae9082407a81746bb11882a76f28eeeed501ae4.zip
safari: loopback restrict
Diffstat (limited to 'extension')
-rw-r--r--extension/safari/TabFS/TabFS.xcodeproj/project.xcworkspace/xcuserdata/osnr.xcuserdatad/UserInterfaceState.xcuserstatebin58415 -> 60762 bytes
-rw-r--r--extension/safari/TabFS/TabFSService/TabFSService.swift5
2 files changed, 5 insertions, 0 deletions
diff --git a/extension/safari/TabFS/TabFS.xcodeproj/project.xcworkspace/xcuserdata/osnr.xcuserdatad/UserInterfaceState.xcuserstate b/extension/safari/TabFS/TabFS.xcodeproj/project.xcworkspace/xcuserdata/osnr.xcuserdatad/UserInterfaceState.xcuserstate
index 7b02891..532c8e2 100644
--- a/extension/safari/TabFS/TabFS.xcodeproj/project.xcworkspace/xcuserdata/osnr.xcuserdatad/UserInterfaceState.xcuserstate
+++ b/extension/safari/TabFS/TabFS.xcodeproj/project.xcworkspace/xcuserdata/osnr.xcuserdatad/UserInterfaceState.xcuserstate
Binary files differ
diff --git a/extension/safari/TabFS/TabFSService/TabFSService.swift b/extension/safari/TabFS/TabFSService/TabFSService.swift
index c722eac..80c6051 100644
--- a/extension/safari/TabFS/TabFSService/TabFSService.swift
+++ b/extension/safari/TabFS/TabFSService/TabFSService.swift
@@ -32,10 +32,15 @@ class TabFSService: NSObject, TabFSServiceProtocol {
var ws: NWListener!
func startWs() {
+ // TODO: randomly generate port and report back to caller?
let port = NWEndpoint.Port(rawValue: 9991)!
+
let parameters = NWParameters(tls: nil)
parameters.allowLocalEndpointReuse = true
parameters.includePeerToPeer = true
+ // for security ? so people outside your computer can't hijack TabFS at least
+ parameters.requiredInterfaceType = .loopback
+
let opts = NWProtocolWebSocket.Options()
opts.autoReplyPing = true
parameters.defaultProtocolStack.applicationProtocols.insert(opts, at: 0)