From: Lennart Poettering Date: Mon, 1 Apr 2013 01:24:43 +0000 (+0200) Subject: bus: when the first char a server receives isn't the NUL byte immediately fail X-Git-Tag: v201~105 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=2b4ac8896bdc6cc5159088d7d208559d53caacf3 bus: when the first char a server receives isn't the NUL byte immediately fail --- diff --git a/src/libsystemd-bus/bus-socket.c b/src/libsystemd-bus/bus-socket.c index 30e594243..82e683a95 100644 --- a/src/libsystemd-bus/bus-socket.c +++ b/src/libsystemd-bus/bus-socket.c @@ -313,13 +313,16 @@ static int bus_socket_auth_verify_server(sd_bus *b) { assert(b); - if (b->rbuffer_size < 3) + if (b->rbuffer_size < 1) return 0; /* First char must be a NUL byte */ if (*(char*) b->rbuffer != 0) return -EIO; + if (b->rbuffer_size < 3) + return 0; + /* Begin with the first line */ if (b->auth_rbegin <= 0) b->auth_rbegin = 1;