From 1eebb9a6c31cbe2aa5a074457a3f7b2be79a537e Mon Sep 17 00:00:00 2001 From: Jason Petersen Date: Wed, 23 Mar 2016 17:34:34 -0600 Subject: [PATCH] Fix strlcpy off-by-one error WORKER_LENGTH + 1 is too large. Fixing this has no impact on the string that is ultimately copied, as it's impossible for the source string to be any larger to begin with. --- src/backend/distributed/master/worker_node_manager.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/backend/distributed/master/worker_node_manager.c b/src/backend/distributed/master/worker_node_manager.c index f4c784de5..c1e4c7010 100644 --- a/src/backend/distributed/master/worker_node_manager.c +++ b/src/backend/distributed/master/worker_node_manager.c @@ -723,8 +723,8 @@ ParseWorkerNodeFile(const char *workerNodeFilename) /* allocate worker node structure and set fields */ workerNode = (WorkerNode *) palloc0(sizeof(WorkerNode)); - strlcpy(workerNode->workerName, nodeName, WORKER_LENGTH + 1); - strlcpy(workerNode->workerRack, nodeRack, WORKER_LENGTH + 1); + strlcpy(workerNode->workerName, nodeName, WORKER_LENGTH); + strlcpy(workerNode->workerRack, nodeRack, WORKER_LENGTH); workerNode->workerPort = nodePort; workerNode->inWorkerFile = true;