diff options
author | Karel Zak | 2014-03-11 11:22:07 +0100 |
---|---|---|
committer | Karel Zak | 2014-03-11 11:22:07 +0100 |
commit | 873e7a59d7be7db56573eef271d23867e3dfa47b (patch) | |
tree | 290719f5357edc424b93a4711b05fd65fe2193c8 /sys-utils/ipcutils.c | |
parent | lib/colors: support <name>.enable too (diff) | |
download | kernel-qcow2-util-linux-873e7a59d7be7db56573eef271d23867e3dfa47b.tar.gz kernel-qcow2-util-linux-873e7a59d7be7db56573eef271d23867e3dfa47b.tar.xz kernel-qcow2-util-linux-873e7a59d7be7db56573eef271d23867e3dfa47b.zip |
ipcs: fix size_t overflow
Addresses: https://github.com/karelzak/util-linux/issues/51
Signed-off-by: Karel Zak <kzak@redhat.com>
Diffstat (limited to 'sys-utils/ipcutils.c')
-rw-r--r-- | sys-utils/ipcutils.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/sys-utils/ipcutils.c b/sys-utils/ipcutils.c index 62d742845..9ca986e1c 100644 --- a/sys-utils/ipcutils.c +++ b/sys-utils/ipcutils.c @@ -508,10 +508,10 @@ void ipc_print_perms(FILE *f, struct ipc_stat *is) fprintf(f, " %-10u\n", is->gid); } -void ipc_print_size(int unit, char *msg, size_t size, const char *end, +void ipc_print_size(int unit, char *msg, uint64_t size, const char *end, int width) { - char format[16]; + char format[32]; if (!msg) /* NULL */ ; @@ -527,11 +527,11 @@ void ipc_print_size(int unit, char *msg, size_t size, const char *end, switch (unit) { case IPC_UNIT_DEFAULT: case IPC_UNIT_BYTES: - sprintf(format, "%%%dzu", width); + sprintf(format, "%%%dju", width); printf(format, size); break; case IPC_UNIT_KB: - sprintf(format, "%%%dzu", width); + sprintf(format, "%%%dju", width); printf(format, size / 1024); break; case IPC_UNIT_HUMAN: |