From 09db5f7cb3c25ac3559a455a9fc7cbc369c94450 Mon Sep 17 00:00:00 2001 From: Mark Puha Date: Sun, 17 Aug 2025 12:10:36 +0200 Subject: [PATCH] fix: showconf --- contrib/embeddable-wg-library/wireguard.c | 4 ++-- src/config.c | 2 +- src/ipc-linux.h | 16 ++++++++-------- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/contrib/embeddable-wg-library/wireguard.c b/contrib/embeddable-wg-library/wireguard.c index 802989d..d7f40e4 100644 --- a/contrib/embeddable-wg-library/wireguard.c +++ b/contrib/embeddable-wg-library/wireguard.c @@ -53,12 +53,12 @@ enum wgdevice_attribute { WGDEVICE_A_JMAX, WGDEVICE_A_S1, WGDEVICE_A_S2, - WGDEVICE_A_S3, - WGDEVICE_A_S4, WGDEVICE_A_H1, WGDEVICE_A_H2, WGDEVICE_A_H3, WGDEVICE_A_H4, + WGDEVICE_A_S3, + WGDEVICE_A_S4, WGDEVICE_A_I1, WGDEVICE_A_I2, WGDEVICE_A_I3, diff --git a/src/config.c b/src/config.c index aa8f9f1..f61de28 100644 --- a/src/config.c +++ b/src/config.c @@ -421,7 +421,7 @@ err: static inline bool parse_awg_string(char **device_value, const char *name, const char *value) { size_t len = strlen(value); if (!len) { - *device_value = ""; + *device_value = NULL; return true; } diff --git a/src/ipc-linux.h b/src/ipc-linux.h index ea41640..84ee11f 100644 --- a/src/ipc-linux.h +++ b/src/ipc-linux.h @@ -36,14 +36,7 @@ void put_magic_header_attr(struct nlmsghdr *nlh, int attr_name, char *header_fie } #define GET_MAGIC_HEADER(attr, magic_header, attr_name)\ - if (!mnl_attr_validate(attr, MNL_TYPE_STRING)) {\ - magic_header = strdup(mnl_attr_get_str(attr));\ - if (!magic_header) {\ - perror("strdup");\ - return MNL_CB_ERROR;\ - }\ - device->flags |= attr_name;\ - } else if (!mnl_attr_validate(attr, MNL_TYPE_U32)) {\ + if (!mnl_attr_validate(attr, MNL_TYPE_U32)) {\ uint32_t numeric_value = mnl_attr_get_u32(attr);\ magic_header = malloc(12);\ if (!magic_header) {\ @@ -52,6 +45,13 @@ void put_magic_header_attr(struct nlmsghdr *nlh, int attr_name, char *header_fie }\ snprintf(magic_header, 12, "%u", numeric_value);\ device->flags |= attr_name;\ + } else if (!mnl_attr_validate(attr, MNL_TYPE_STRING)) {\ + magic_header = strdup(mnl_attr_get_str(attr));\ + if (!magic_header) {\ + perror("strdup");\ + return MNL_CB_ERROR;\ + }\ + device->flags |= attr_name;\ } #define SOCKET_BUFFER_SIZE (mnl_ideal_socket_buffer_size())