aboutsummaryrefslogtreecommitdiff
path: root/desktop/package/macos/Entitlements.plist
blob: 8c5c4268d1fcf38eb537527aae36f82fcce7e777 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<!-- Disable app sandbox :( -->
	<key>com.apple.security.app-sandbox</key>
	<false/>

	<!-- Required for running PyInstaller python code with hardened runtime -->
    <key>com.apple.security.cs.allow-unsigned-executable-memory</key>
    <true/>

	<!-- Both OnionShare and Tor need network server and client -->
	<key>com.apple.security.network.server</key>
	<true/>
	<key>com.apple.security.network.client</key>
	<true/>

	<!-- In share mode, users need to be able to select files, and in receive mode,
       users need to be able to choose a folder to save files to -->
	<key>com.apple.security.files.user-selected.read-write</key>
	<true/>

	<!-- Flask needs to read this mime.types file when starting an HTTP server -->
	<key>com.apple.security.temporary-exception.files.absolute-path.read-only</key>
	<array>
		<string>/private/etc/apache2/mime.types</string>
	</array>

	<!-- For OnionShare to be able to connect to Tor Browser's tor control port,
	     it needs to read it's control_auth_cookie file -->
	<key>com.apple.security.temporary-exception.files.home-relative-path.read-only</key>
	<array>
		<string>/Library/Application Support/TorBrowser-Data/Tor/control_auth_cookie</string>
	</array>

	<!-- In receive mode, OnionShare needs to be able to write to ~/OnionShare -->
	<key>com.apple.security.temporary-exception.files.home-relative-path.read-write</key>
	<array>
		<string>/OnionShare/</string>
	</array>
</dict>
</plist>