keepalived/keepalived-fix-track_process-with-pids-32767.patch

50 lines
1.7 KiB
Diff

From 23a5b8113bf0b8ec4718443df0406882e8e4d831 Mon Sep 17 00:00:00 2001
From: Quentin Armitage <quentin@armitage.org.uk>
Date: Sat, 9 Nov 2019 10:07:48 +0000
Subject: [PATCH] Fix track_process with PIDs > 32767
Signed-off-by: Quentin Armitage <quentin@armitage.org.uk>
---
keepalived/core/track_process.c | 4 ++--
lib/scheduler.c | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/keepalived/core/track_process.c b/keepalived/core/track_process.c
index 550254b1..76ff6009 100644
--- a/keepalived/core/track_process.c
+++ b/keepalived/core/track_process.c
@@ -341,7 +341,7 @@ check_process(pid_t pid, char *comm, tracked_process_instance_t *tpi)
* swapped in to read it. */
if (!have_comm) {
if (vrrp_data->vrrp_use_process_cmdline) {
- snprintf(cmdline, sizeof(cmdline), "/proc/%hd/cmdline", pid);
+ snprintf(cmdline, sizeof(cmdline), "/proc/%d/cmdline", pid);
if ((fd = open(cmdline, O_RDONLY)) == -1)
return;
@@ -358,7 +358,7 @@ check_process(pid_t pid, char *comm, tracked_process_instance_t *tpi)
}
if (vrrp_data->vrrp_use_process_comm) {
- snprintf(cmdline, sizeof(cmdline), "/proc/%hd/comm", pid);
+ snprintf(cmdline, sizeof(cmdline), "/proc/%d/comm", pid);
fd = open(cmdline, O_RDONLY);
if (fd == -1) {
diff --git a/lib/scheduler.c b/lib/scheduler.c
index 3cd7b65a..de92c7d4 100644
--- a/lib/scheduler.c
+++ b/lib/scheduler.c
@@ -441,7 +441,7 @@ report_child_status(int status, pid_t pid, char const *prog_name)
prog_id = child_finder_name(pid);
if (!prog_id) {
- snprintf(pid_buf, sizeof(pid_buf), "pid %hd", pid);
+ snprintf(pid_buf, sizeof(pid_buf), "pid %d", pid);
prog_id = pid_buf;
}
--
2.23.0