conf: fix integer comparisons

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
This commit is contained in:
Christian Brauner 2021-09-03 10:14:44 +02:00
parent 961878dac1
commit 02d477ccc6
No known key found for this signature in database
GPG Key ID: 8EB056D53EECB12D

View File

@ -2803,7 +2803,7 @@ FILE *make_anonymous_mount_file(const struct list_head *mount_entries,
len = strlen(entry->val); len = strlen(entry->val);
ret = lxc_write_nointr(fd, entry->val, len); ret = lxc_write_nointr(fd, entry->val, len);
if (ret != len) if (ret < 0 || (size_t)ret != len)
return NULL; return NULL;
ret = lxc_write_nointr(fd, "\n", 1); ret = lxc_write_nointr(fd, "\n", 1);
@ -3438,7 +3438,7 @@ int write_id_mapping(enum idtype idtype, pid_t pid, const char *buf,
return log_error_errno(-1, errno, "Failed to open \"%s\"", path); return log_error_errno(-1, errno, "Failed to open \"%s\"", path);
ret = lxc_write_nointr(fd, buf, buf_size); ret = lxc_write_nointr(fd, buf, buf_size);
if (ret != buf_size) if (ret < 0 || (size_t)ret != buf_size)
return log_error_errno(-1, errno, "Failed to write %cid mapping to \"%s\"", return log_error_errno(-1, errno, "Failed to write %cid mapping to \"%s\"",
idtype == ID_TYPE_UID ? 'u' : 'g', path); idtype == ID_TYPE_UID ? 'u' : 'g', path);
@ -3509,7 +3509,9 @@ static struct id_map *find_mapped_hostid_entry(const struct list_head *idmap,
int lxc_map_ids(struct list_head *idmap, pid_t pid) int lxc_map_ids(struct list_head *idmap, pid_t pid)
{ {
int hostuid, hostgid, fill, left; int fill, left;
uid_t hostuid;
gid_t hostgid;
char u_or_g; char u_or_g;
char *pos; char *pos;
char cmd_output[PATH_MAX]; char cmd_output[PATH_MAX];
@ -3718,7 +3720,7 @@ static int lxc_transient_proc(struct lxc_rootfs *rootfs)
return log_error_errno(-errno, errno, "Failed to create %d(proc)", rootfs->dfd_mnt); return log_error_errno(-errno, errno, "Failed to create %d(proc)", rootfs->dfd_mnt);
goto domount; goto domount;
} else if (link_len >= sizeof(link)) { } else if ((size_t)link_len >= sizeof(link)) {
return log_error_errno(-EIO, EIO, "Truncated link target"); return log_error_errno(-EIO, EIO, "Truncated link target");
} }
link[link_len] = '\0'; link[link_len] = '\0';
@ -4116,14 +4118,14 @@ static int lxc_recv_ttys_from_child(struct lxc_handler *handler)
if (!info_new->tty) if (!info_new->tty)
return ret_errno(ENOMEM); return ret_errno(ENOMEM);
for (int i = 0; i < ttys_max; i++) { for (size_t i = 0; i < ttys_max; i++) {
terminal_info = &info_new->tty[i]; terminal_info = &info_new->tty[i];
terminal_info->busy = -1; terminal_info->busy = -1;
terminal_info->ptx = -EBADF; terminal_info->ptx = -EBADF;
terminal_info->pty = -EBADF; terminal_info->pty = -EBADF;
} }
for (int i = 0; i < ttys_max; i++) { for (size_t i = 0; i < ttys_max; i++) {
int ptx = -EBADF, pty = -EBADF; int ptx = -EBADF, pty = -EBADF;
ret = lxc_abstract_unix_recv_two_fds(sock, &ptx, &pty); ret = lxc_abstract_unix_recv_two_fds(sock, &ptx, &pty);
@ -5521,11 +5523,11 @@ static char *getuname(void)
__do_free char *buf = NULL; __do_free char *buf = NULL;
struct passwd pwent; struct passwd pwent;
struct passwd *pwentp = NULL; struct passwd *pwentp = NULL;
size_t bufsize; ssize_t bufsize;
int ret; int ret;
bufsize = sysconf(_SC_GETPW_R_SIZE_MAX); bufsize = sysconf(_SC_GETPW_R_SIZE_MAX);
if (bufsize == -1) if (bufsize < 0)
bufsize = 1024; bufsize = 1024;
buf = zalloc(bufsize); buf = zalloc(bufsize);
@ -5549,11 +5551,11 @@ static char *getgname(void)
__do_free char *buf = NULL; __do_free char *buf = NULL;
struct group grent; struct group grent;
struct group *grentp = NULL; struct group *grentp = NULL;
size_t bufsize; ssize_t bufsize;
int ret; int ret;
bufsize = sysconf(_SC_GETGR_R_SIZE_MAX); bufsize = sysconf(_SC_GETGR_R_SIZE_MAX);
if (bufsize == -1) if (bufsize < 0)
bufsize = 1024; bufsize = 1024;
buf = zalloc(bufsize); buf = zalloc(bufsize);