summaryrefslogtreecommitdiffhomepage
path: root/device
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2019-03-03 05:20:13 +0100
committerJason A. Donenfeld <Jason@zx2c4.com>2019-03-04 16:37:11 +0100
commit68f0721c6a1aea6bb97320ec0cf6b8f7f723603d (patch)
tree615ff2a882d73f9f8febe94aaaf22cf54c229621 /device
parentb8e85267cf22528a96cefba5f86bac5958ce0c58 (diff)
tun: import mobile particularities
Diffstat (limited to 'device')
-rw-r--r--device/queueconstants_android.go16
-rw-r--r--device/queueconstants_default.go (renamed from device/queueconstants.go)4
-rw-r--r--device/queueconstants_ios.go18
3 files changed, 36 insertions, 2 deletions
diff --git a/device/queueconstants_android.go b/device/queueconstants_android.go
new file mode 100644
index 0000000..8d051ad
--- /dev/null
+++ b/device/queueconstants_android.go
@@ -0,0 +1,16 @@
+/* SPDX-License-Identifier: MIT
+ *
+ * Copyright (C) 2017-2019 WireGuard LLC. All Rights Reserved.
+ */
+
+package device
+
+/* Reduce memory consumption for Android */
+
+const (
+ QueueOutboundSize = 1024
+ QueueInboundSize = 1024
+ QueueHandshakeSize = 1024
+ MaxSegmentSize = 2200
+ PreallocatedBuffersPerPool = 4096
+) \ No newline at end of file
diff --git a/device/queueconstants.go b/device/queueconstants_default.go
index 3e94b7f..cf86ba1 100644
--- a/device/queueconstants.go
+++ b/device/queueconstants_default.go
@@ -1,3 +1,5 @@
+// +build !android,!ios
+
/* SPDX-License-Identifier: MIT
*
* Copyright (C) 2017-2019 WireGuard LLC. All Rights Reserved.
@@ -5,8 +7,6 @@
package device
-/* Implementation specific constants */
-
const (
QueueOutboundSize = 1024
QueueInboundSize = 1024
diff --git a/device/queueconstants_ios.go b/device/queueconstants_ios.go
new file mode 100644
index 0000000..589b0aa
--- /dev/null
+++ b/device/queueconstants_ios.go
@@ -0,0 +1,18 @@
+// +build ios
+
+/* SPDX-License-Identifier: MIT
+ *
+ * Copyright (C) 2017-2019 WireGuard LLC. All Rights Reserved.
+ */
+
+package device
+
+/* Fit within memory limits for iOS's Network Extension API, which has stricter requirements */
+
+const (
+ QueueOutboundSize = 1024
+ QueueInboundSize = 1024
+ QueueHandshakeSize = 1024
+ MaxSegmentSize = 1700
+ PreallocatedBuffersPerPool = 1024
+)