From patchwork Wed Mar 6 17:43:17 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stephen Hemminger X-Patchwork-Id: 50891 X-Patchwork-Delegate: ferruh.yigit@amd.com Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 6C0AB4C94; Wed, 6 Mar 2019 18:43:24 +0100 (CET) Received: from mail-pg1-f195.google.com (mail-pg1-f195.google.com [209.85.215.195]) by dpdk.org (Postfix) with ESMTP id 3E1D02B93 for ; Wed, 6 Mar 2019 18:43:23 +0100 (CET) Received: by mail-pg1-f195.google.com with SMTP id q206so8978841pgq.4 for ; Wed, 06 Mar 2019 09:43:23 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=networkplumber-org.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id; bh=WrCfnEMGnP0NO+SvtHEn6Ou1qihsqC5aJSN7/lYVCnc=; b=BXdo1m/mU5nfQEE6oE5dk9PmNWTbmiz5BZsOQLjKEeXPMpa7sNqdLeG2CBhu/DEuF3 32+/R3SPseqA6Yd/UIDxqLHo3kyCCmozN/Dshnn7JILuwTtKG9RCek8M221jUIvmz8n/ 1jb6ZlbJGOabFTbg9/1o5KrWyMd9hURimIfnK/38PsCLGB1a3IDLOnSCcqWy8JxtK1HO OUoQrNGMBLt/FLslgi9IovF3/+2oYk/xlxaqfNyGPNJsUVFOGrNCqRxWjuQHJUTILCnR alJFSaZcUy8qZnUozzlZ5SyD52krwk5ipqj9RxOteFn1Mj/8IsZ5mrtIvb4pzJxH27Qf 1t3w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=WrCfnEMGnP0NO+SvtHEn6Ou1qihsqC5aJSN7/lYVCnc=; b=mh89iTzwjZegK816wPo3dpZjgfFx5lFwSBveR0d6ljxooiEtE+S3hIinIdyTtCdC4G 2az7ThjyLNRSlIZYqP/YAiFygREG4NG2+7n1N0LGAVjV6nKA7B5wYkyj/BKYSNq/ICFk cDlXjv3/YUgHCvJPSOsKNjO4oDEf5ryuisArxlHY5mZMuBJzVo6dOpbn9ljfgRrCwOVQ ZgDrg90pSCjEiq5ESVaEWyDguo/UQFaUO2C+cSPzNInB2UoQk3knSm7U9cekx393561k QEBV7Tau+doPGy23kJ6ETQQ2UoD2JgCUMm9FyLQYrnrPvA+X7gO9s5wqFu9IKSWkNGwV G9MA== X-Gm-Message-State: APjAAAW2flqH7znO/PsvtgSvvQdRUXZCGW3sbpS9joK9r3Mxpd7yWLb+ YjKbWQtqLdQ6CjNASQz0Hxd2fZGLjQ8= X-Google-Smtp-Source: APXvYqx655Dl8yYZyUsZEqm3uIIuB1csFWNUCJsrEw7iR6bhfCFbuKFHjWY0hUZ0/CqDR8Lutv3DsA== X-Received: by 2002:aa7:9289:: with SMTP id j9mr8486689pfa.130.1551894201342; Wed, 06 Mar 2019 09:43:21 -0800 (PST) Received: from localhost.localdomain ([167.220.104.121]) by smtp.gmail.com with ESMTPSA id d6sm3866677pfg.47.2019.03.06.09.43.20 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 06 Mar 2019 09:43:20 -0800 (PST) From: Stephen Hemminger To: dev@dpdk.org Cc: Stephen Hemminger Date: Wed, 6 Mar 2019 09:43:17 -0800 Message-Id: <20190306174317.14164-1-stephen@networkplumber.org> X-Mailer: git-send-email 2.17.1 Subject: [dpdk-dev] [RFC] ethdev: check for invalid device name X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Do not allow creating a ethernet device with a name over the allowed maximum (or 0 length). Signed-off-by: Stephen Hemminger Acked-by: Andrew Rybchenko --- lib/librte_ethdev/rte_ethdev.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/lib/librte_ethdev/rte_ethdev.c b/lib/librte_ethdev/rte_ethdev.c index 85c1794968dd..0b81980ff71c 100644 --- a/lib/librte_ethdev/rte_ethdev.c +++ b/lib/librte_ethdev/rte_ethdev.c @@ -439,6 +439,16 @@ rte_eth_dev_allocate(const char *name) uint16_t port_id; struct rte_eth_dev *eth_dev = NULL; + if (*name) { + RTE_ETHDEV_LOG(ERR, "Zero length Ethernet device name\n"); + return NULL; + } + + if (strnlen(name, RTE_ETH_NAME_MAX_LEN) >= RTE_ETH_NAME_MAX_LEN) { + RTE_ETHDEV_LOG(ERR, "Ethernet device name is too long\n"); + return NULL; + } + rte_eth_dev_shared_data_prepare(); /* Synchronize port creation between primary and secondary threads. */