From 5e527d4e6d9282cc6aba6dde86f8a3fd05f13626 Mon Sep 17 00:00:00 2001 From: Yossi Itigin Date: Thu, 29 Jun 2017 11:54:07 +0300 Subject: [PATCH] UCT/IB: Fix buffer overflow with strncat(). (cherry picked from commit 7fd9e4d3f0a0c36eedd73cb669f36251cf958b38) --- src/uct/ib/base/ib_md.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/uct/ib/base/ib_md.c b/src/uct/ib/base/ib_md.c index b65a145b708..9c9c26aaaa8 100644 --- a/src/uct/ib/base/ib_md.c +++ b/src/uct/ib/base/ib_md.c @@ -958,7 +958,7 @@ static ucs_rcache_ops_t uct_ib_rcache_ops = { static void uct_ib_make_md_name(char md_name[UCT_MD_NAME_MAX], struct ibv_device *device) { snprintf(md_name, UCT_MD_NAME_MAX, "%s/", UCT_IB_MD_PREFIX); - strncat(md_name, device->name, UCT_MD_NAME_MAX); + strncat(md_name, device->name, UCT_MD_NAME_MAX - strlen(device->name) - 1); } static ucs_status_t uct_ib_query_md_resources(uct_md_resource_desc_t **resources_p,