diff options
author | Michal Schmidt <mschmidt@redhat.com> | 2015-09-16 22:55:02 +0200 |
---|---|---|
committer | Sven Eden <yamakuzure@gmx.net> | 2017-03-29 10:45:09 +0200 |
commit | 2475c001487720f09c251f2b4887849f2275e4ee (patch) | |
tree | 3ce8528b2c263bda326db53cba0d0e0756b29c4e | |
parent | f95cf7a0e475fcb8777c43081219320f7e3dc59b (diff) |
sd-bus: correct size calculation in DBus fd receive
The size of the allocated array for received file descriptors was
incorrectly calculated. This did not matter when a single file
descriptor was received, but for more descriptors the allocation was
insufficient.
-rw-r--r-- | src/libelogind/sd-bus/bus-socket.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/libelogind/sd-bus/bus-socket.c b/src/libelogind/sd-bus/bus-socket.c index 735a775cb..d0b1e3d7d 100644 --- a/src/libelogind/sd-bus/bus-socket.c +++ b/src/libelogind/sd-bus/bus-socket.c @@ -985,7 +985,7 @@ int bus_socket_read_message(sd_bus *bus) { return -EIO; } - f = realloc(bus->fds, sizeof(int) + (bus->n_fds + n)); + f = realloc(bus->fds, sizeof(int) * (bus->n_fds + n)); if (!f) { close_many((int*) CMSG_DATA(cmsg), n); return -ENOMEM; |