]> git.ipfire.org Git - thirdparty/lxc.git/commitdiff
commands: fix integer comparisons
authorChristian Brauner <christian.brauner@ubuntu.com>
Fri, 3 Sep 2021 09:04:58 +0000 (11:04 +0200)
committerChristian Brauner <christian.brauner@ubuntu.com>
Fri, 3 Sep 2021 11:01:42 +0000 (13:01 +0200)
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
src/lxc/commands.c

index 535242f10ca97a959a30796980b6f98613cd1f0a..4c2f77adacb20ba8614011890a58f25434164713 100644 (file)
@@ -253,14 +253,14 @@ static ssize_t lxc_cmd_rsp_recv(int sock, struct lxc_cmd_rr *cmd)
        case LXC_CMD_GET_CGROUP_FD:             /* data */
                __fallthrough;
        case LXC_CMD_GET_LIMIT_CGROUP_FD:       /* data */
-               if (rsp->datalen > sizeof(struct cgroup_fd))
+               if ((size_t)rsp->datalen > sizeof(struct cgroup_fd))
                        return syserror_set(-EINVAL, "Invalid response size from server for \"%s\"", cur_cmdstr);
 
                /* Don't pointlessly allocate. */
                rsp->data = (void *)cmd->req.data;
                break;
        case LXC_CMD_GET_CGROUP_CTX:            /* data */
-               if (rsp->datalen > sizeof(struct cgroup_ctx))
+               if ((size_t)rsp->datalen > sizeof(struct cgroup_ctx))
                        return syserror_set(-EINVAL, "Invalid response size from server for \"%s\"", cur_cmdstr);
 
                /* Don't pointlessly allocate. */
@@ -1489,7 +1489,7 @@ static int lxc_cmd_console_log_callback(int fd, struct lxc_cmd_req *req,
        if (log->read)
                rsp.data = lxc_ringbuf_get_read_addr(buf);
 
-       if (log->read_max > 0 && (log->read_max <= rsp.datalen))
+       if (log->read_max > 0 && (log->read_max <= (uint64_t)rsp.datalen))
                rsp.datalen = log->read_max;
 
        /* there's nothing to read */