From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-10.1 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id A05D5C7618F for ; Wed, 17 Jul 2019 14:32:26 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 75A722182B for ; Wed, 17 Jul 2019 14:32:26 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1563373946; bh=JkZplVn3xt35Y2dfqpZF1VmyrYiv+s/b60YHeHwbZsk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:List-ID:From; b=VJ92QsSFuwEaRZTBMCeAmrw37xR5v97TW1180097BKGNJdCbo4zSNL34b5xOUetiY oYTLqdyyaFrrjxk6uUjP8BuwcTyVEGQzgmNErj0UEaY6YCy808d/Fw15lTWjKRK9em x+mtmXIpT3uVLnU6mkx761u0F8OGd3xoHm2ccFWk= Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727908AbfGQOcZ (ORCPT ); Wed, 17 Jul 2019 10:32:25 -0400 Received: from mail.kernel.org ([198.145.29.99]:53702 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727423AbfGQOcZ (ORCPT ); Wed, 17 Jul 2019 10:32:25 -0400 Received: from localhost (unknown [37.142.3.125]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 8677A21743; Wed, 17 Jul 2019 14:32:23 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1563373944; bh=JkZplVn3xt35Y2dfqpZF1VmyrYiv+s/b60YHeHwbZsk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=pK8gvZIWZ9fOyRD68PDaGSSSfUk7jddszf23Q+l0ZYb0FY+NE0LK1/b7vytUMA8Ic DpgQUl/eLdP1v8iZAhGw0/DriO1AYvDhn8ITQL6GLm1wMRB7Q3Er/3aWUdS+Ya4OWo ybzTjZrt4SDX85dQ5udRtuz0H4pmZE8+vimIfPLw= From: Leon Romanovsky To: Stephen Hemminger Cc: Leon Romanovsky , netdev , David Ahern , Mark Zhang , RDMA mailing list Subject: [PATCH iproute2-rc v1 4/7] rdma: Make get_port_from_argv() returns valid port in strict port mode Date: Wed, 17 Jul 2019 17:31:53 +0300 Message-Id: <20190717143157.27205-5-leon@kernel.org> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20190717143157.27205-1-leon@kernel.org> References: <20190717143157.27205-1-leon@kernel.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org From: Mark Zhang When strict_port is set, make get_port_from_argv() returns failure if no valid port is specified. Signed-off-by: Mark Zhang Signed-off-by: Leon Romanovsky --- rdma/utils.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/rdma/utils.c b/rdma/utils.c index aed1a3d0..95b669f3 100644 --- a/rdma/utils.c +++ b/rdma/utils.c @@ -56,7 +56,7 @@ bool rd_no_arg(struct rd *rd) * mlx5_1/1 | 1 | false * mlx5_1/- | 0 | false * - * In strict mode, /- will return error. + * In strict port mode, a non-0 port must be provided */ static int get_port_from_argv(struct rd *rd, uint32_t *port, bool *is_dump_all, bool strict_port) @@ -64,7 +64,7 @@ static int get_port_from_argv(struct rd *rd, uint32_t *port, char *slash; *port = 0; - *is_dump_all = true; + *is_dump_all = strict_port ? false : true; slash = strchr(rd_argv(rd), '/'); /* if no port found, return 0 */ @@ -83,6 +83,9 @@ static int get_port_from_argv(struct rd *rd, uint32_t *port, if (!*port && strlen(slash)) return -EINVAL; } + if (strict_port && (*port == 0)) + return -EINVAL; + return 0; } -- 2.20.1