Add some useless checks

Signed-off-by: Adrien Gallouët <adrien@gallouet.fr>
This commit is contained in:
Adrien Gallouët
2018-01-26 14:42:48 +00:00
parent dc9e19961a
commit f843b23365
6 changed files with 84 additions and 48 deletions

View File

@@ -25,9 +25,11 @@ ctl_init(const char *dir, const char *file)
const char *path[] = {dir, "/", file};
const size_t len = sizeof(sun.sun_path) - 1;
if (str_cat(sun.sun_path, path, COUNT(path), len) > len) {
errno = EINVAL;
return -1;
if (str_cat(sun.sun_path, len, path, COUNT(path)) == len) {
if (str_cat(NULL, len + 1, path, COUNT(path)) > len) {
errno = EINVAL;
return -1;
}
}
int fd = socket(AF_UNIX, SOCK_DGRAM, 0);
@@ -62,9 +64,11 @@ ctl_connect(int fd, const char *dir, const char *file)
const char *path[] = {dir, "/", file};
const size_t len = sizeof(sun.sun_path) - 1;
if (str_cat(sun.sun_path, path, COUNT(path), len) > len) {
errno = EINVAL;
return -1;
if (str_cat(sun.sun_path, len, path, COUNT(path)) == len) {
if (str_cat(NULL, len + 1, path, COUNT(path)) > len) {
errno = EINVAL;
return -1;
}
}
return connect(fd, (struct sockaddr *)&sun, sizeof(sun));