wg: fixup errno handling
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
This commit is contained in:
parent
ca5d2708e0
commit
d29e0bad7d
2 changed files with 8 additions and 8 deletions
|
@ -78,7 +78,6 @@ struct wgdevice {
|
|||
|
||||
#define for_each_wgpeer(__dev, __peer) for ((__peer) = (__dev)->first_peer; (__peer); (__peer) = (__peer)->next_peer)
|
||||
#define for_each_wgallowedip(__peer, __allowedip) for ((__allowedip) = (__peer)->first_allowedip; (__allowedip); (__allowedip) = (__allowedip)->next_allowedip)
|
||||
#define max(a, b) ((a) > (b) ? (a) : (b))
|
||||
|
||||
static inline void free_wgdevice(struct wgdevice *dev)
|
||||
{
|
||||
|
|
15
src/ipc.c
15
src/ipc.c
|
@ -48,7 +48,6 @@
|
|||
#define SOCKET_BUFFER_SIZE 8192
|
||||
#endif
|
||||
|
||||
|
||||
struct inflatable_buffer {
|
||||
char *buffer;
|
||||
char *next;
|
||||
|
@ -57,6 +56,7 @@ struct inflatable_buffer {
|
|||
size_t pos;
|
||||
};
|
||||
|
||||
#define max(a, b) ((a) > (b) ? (a) : (b))
|
||||
static int add_next_to_inflatable_buffer(struct inflatable_buffer *buffer)
|
||||
{
|
||||
size_t len, expand_to;
|
||||
|
@ -111,7 +111,7 @@ static FILE *userspace_interface_file(const char *interface)
|
|||
int fd = -1, ret;
|
||||
FILE *f = NULL;
|
||||
|
||||
ret = -EINVAL;
|
||||
errno = EINVAL;
|
||||
if (strchr(interface, '/'))
|
||||
goto out;
|
||||
ret = snprintf(addr.sun_path, sizeof(addr.sun_path), SOCK_PATH "%s" SOCK_SUFFIX, interface);
|
||||
|
@ -120,7 +120,7 @@ static FILE *userspace_interface_file(const char *interface)
|
|||
ret = stat(addr.sun_path, &sbuf);
|
||||
if (ret < 0)
|
||||
goto out;
|
||||
ret = -EBADF;
|
||||
errno = EBADF;
|
||||
if (!S_ISSOCK(sbuf.st_mode))
|
||||
goto out;
|
||||
|
||||
|
@ -135,12 +135,13 @@ static FILE *userspace_interface_file(const char *interface)
|
|||
goto out;
|
||||
}
|
||||
f = fdopen(fd, "r+");
|
||||
if (!f)
|
||||
ret = -errno;
|
||||
if (f)
|
||||
errno = 0;
|
||||
out:
|
||||
if (ret && fd >= 0)
|
||||
close(fd);
|
||||
ret = -errno;
|
||||
if (ret) {
|
||||
if (fd >= 0)
|
||||
close(fd);
|
||||
errno = -ret;
|
||||
return NULL;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue