aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/src/tools/ipc.c
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/tools/ipc.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/tools/ipc.c b/src/tools/ipc.c
index ed5fbc2..48d06aa 100644
--- a/src/tools/ipc.c
+++ b/src/tools/ipc.c
@@ -314,13 +314,13 @@ static int userspace_get_device(struct wgdevice **out, const char *interface)
break;
*value++ = key[--line_len] = '\0';
- if (!strcmp(key, "private_key")) {
+ if (!peer && !strcmp(key, "private_key")) {
if (!key_from_hex(dev->private_key, value))
break;
curve25519_generate_public(dev->public_key, dev->private_key);
- } else if (!strcmp(key, "listen_port"))
+ } else if (!peer && !strcmp(key, "listen_port"))
dev->port = NUM(0xffffU);
- else if (!strcmp(key, "fwmark"))
+ else if (!peer && !strcmp(key, "fwmark"))
dev->fwmark = NUM(0xffffffffU);
else if (!strcmp(key, "public_key")) {
peer = ADD(sizeof(struct wgpeer));