wg: only error on wg show if all interfaces fail
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
This commit is contained in:
parent
4367cd0d3d
commit
4502f4f2b7
|
@ -14,6 +14,7 @@
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
#include <errno.h>
|
||||||
#include <time.h>
|
#include <time.h>
|
||||||
#include <netdb.h>
|
#include <netdb.h>
|
||||||
|
|
||||||
|
@ -394,12 +395,13 @@ int show_main(int argc, char *argv[])
|
||||||
perror("Unable to list interfaces");
|
perror("Unable to list interfaces");
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
ret = !!*interfaces;
|
||||||
interface = interfaces;
|
interface = interfaces;
|
||||||
for (size_t len = 0; (len = strlen(interface)); interface += len + 1) {
|
for (size_t len = 0; (len = strlen(interface)); interface += len + 1) {
|
||||||
struct wgdevice *device = NULL;
|
struct wgdevice *device = NULL;
|
||||||
|
|
||||||
if (ipc_get_device(&device, interface) < 0) {
|
if (ipc_get_device(&device, interface) < 0) {
|
||||||
perror("Unable to access interface");
|
fprintf(stderr, "Unable to access interface %s: %s\n", interface, strerror(errno));
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if (argc == 3) {
|
if (argc == 3) {
|
||||||
|
@ -414,6 +416,7 @@ int show_main(int argc, char *argv[])
|
||||||
printf("\n");
|
printf("\n");
|
||||||
}
|
}
|
||||||
free_wgdevice(device);
|
free_wgdevice(device);
|
||||||
|
ret = 0;
|
||||||
}
|
}
|
||||||
free(interfaces);
|
free(interfaces);
|
||||||
} else if (!strcmp(argv[1], "interfaces")) {
|
} else if (!strcmp(argv[1], "interfaces")) {
|
||||||
|
|
Reference in New Issue