[{"id":1768929,"web_url":"http://patchwork.ozlabs.org/comment/1768929/","msgid":"<CAM_1_Ky97LTjdEgKUbDQxajskYe_YXqYhJyrLSomsq_uFuVdeQ@mail.gmail.com>","list_archive_url":null,"date":"2017-09-15T03:05:10","subject":"Re: [iproute PATCH v2] ipaddress: Fix segfault in 'addr showdump'","submitter":{"id":70625,"url":"http://patchwork.ozlabs.org/api/people/70625/","name":"Julien Fortin","email":"julien@cumulusnetworks.com"},"content":"v2 looks good to me, thanks for catching this segfault.\n\nOn Wed, Sep 13, 2017 at 2:20 AM, Phil Sutter <phil@nwl.cc> wrote:\n> Obviously, 'addr showdump' feature wasn't adjusted to json output\n> support. As a consequence, calls to print_string() in print_addrinfo()\n> tried to dereference a NULL FILE pointer.\n>\n> Cc: Julien Fortin <julien@cumulusnetworks.com>\n> Fixes: d0e720111aad2 (\"ip: ipaddress.c: add support for json output\")\n> Signed-off-by: Phil Sutter <phil@nwl.cc>\n\nAcked-by: Julien Fortin <julien@cumulusnetworks.com>\n\n> --\n> Changes since v1:\n> Align json output with that of 'ip -j addr show':\n> - Interface index label is 'ifindex', not 'index' and it doesn't belong\n>   to 'addr_info' array.\n> - Create one 'addr_info' array per dumped address, not one for all.\n> ---\n>  ip/ipaddress.c | 20 ++++++++++++++++++--\n>  1 file changed, 18 insertions(+), 2 deletions(-)\n>\n> diff --git a/ip/ipaddress.c b/ip/ipaddress.c\n> index 9797145023966..4c47809570410 100644\n> --- a/ip/ipaddress.c\n> +++ b/ip/ipaddress.c\n> @@ -1801,17 +1801,33 @@ static int show_handler(const struct sockaddr_nl *nl,\n>  {\n>         struct ifaddrmsg *ifa = NLMSG_DATA(n);\n>\n> -       printf(\"if%d:\\n\", ifa->ifa_index);\n> +       open_json_object(NULL);\n> +       print_int(PRINT_ANY, \"ifindex\", \"if%d:\\n\", ifa->ifa_index);\n> +\n> +       open_json_array(PRINT_JSON, \"addr_info\");\n> +       open_json_object(NULL);\n> +\n>         print_addrinfo(NULL, n, stdout);\n> +\n> +       close_json_object();\n> +       close_json_array(PRINT_JSON, NULL);\n> +\n> +       close_json_object();\n>         return 0;\n>  }\n>\n>  static int ipaddr_showdump(void)\n>  {\n> +       int err;\n> +\n>         if (ipadd_dump_check_magic())\n>                 exit(-1);\n>\n> -       exit(rtnl_from_file(stdin, &show_handler, NULL));\n> +       new_json_obj(json, stdout);\n> +       err = rtnl_from_file(stdin, &show_handler, NULL);\n> +       delete_json_obj();\n> +\n> +       exit(err);\n>  }\n>\n>  static int restore_handler(const struct sockaddr_nl *nl,\n> --\n> 2.13.1\n>","headers":{"Return-Path":"<netdev-owner@vger.kernel.org>","X-Original-To":"patchwork-incoming@ozlabs.org","Delivered-To":"patchwork-incoming@ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=vger.kernel.org\n\t(client-ip=209.132.180.67; helo=vger.kernel.org;\n\tenvelope-from=netdev-owner@vger.kernel.org;\n\treceiver=<UNKNOWN>)","ozlabs.org; dkim=pass (1024-bit key;\n\tunprotected) header.d=cumulusnetworks.com\n\theader.i=@cumulusnetworks.com header.b=\"LZ7gSMHf\"; \n\tdkim-atps=neutral"],"Received":["from vger.kernel.org (vger.kernel.org [209.132.180.67])\n\tby ozlabs.org (Postfix) with ESMTP id 3xtgJG6YKzz9sCZ\n\tfor <patchwork-incoming@ozlabs.org>;\n\tFri, 15 Sep 2017 13:05:34 +1000 (AEST)","(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n\tid S1751864AbdIODFd (ORCPT <rfc822;patchwork-incoming@ozlabs.org>);\n\tThu, 14 Sep 2017 23:05:33 -0400","from mail-io0-f174.google.com ([209.85.223.174]:47749 \"EHLO\n\tmail-io0-f174.google.com\" rhost-flags-OK-OK-OK-OK) by vger.kernel.org\n\twith ESMTP id S1751698AbdIODFc (ORCPT\n\t<rfc822;netdev@vger.kernel.org>); Thu, 14 Sep 2017 23:05:32 -0400","by mail-io0-f174.google.com with SMTP id e189so5350555ioa.4\n\tfor <netdev@vger.kernel.org>; Thu, 14 Sep 2017 20:05:31 -0700 (PDT)","by 10.157.64.136 with HTTP; Thu, 14 Sep 2017 20:05:10 -0700 (PDT)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=cumulusnetworks.com; s=google;\n\th=mime-version:in-reply-to:references:from:date:message-id:subject:to\n\t:cc; bh=zU2HBnn9TlALEm8WjTvPlkClwkitkoFBC1ZuN6+zWrQ=;\n\tb=LZ7gSMHf3re5d0b0zJw+tcCuHje4uEpxnVza5TQ44LTdQ7yQfCo2gbFewZeS9qQ+s3\n\t6dXKJi5L+C/aJm9PWh+3G1xLUwJcRsXaCiMHofZfOaErK+k5dMZlqqTaR1yt4KwsoJ0H\n\t5B3WHQFE8I7aMA/6Y3XgkVPFwaNbCHqcHow0o=","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:mime-version:in-reply-to:references:from:date\n\t:message-id:subject:to:cc;\n\tbh=zU2HBnn9TlALEm8WjTvPlkClwkitkoFBC1ZuN6+zWrQ=;\n\tb=qSy3Dilz2fEXm4kytUxrZLsO27Cju1AcnZf/GDXIHLh+PRprgQqW7Ezy34yA34b0Ra\n\tMO/W5m+YB0Xu9CsCz8CX/Y4sIqUbhx0J7bkh0OabhomhSA/INMSBZKzfT07fHYTYCxNp\n\tExFqJ5olfmB12lbcP0kkCyhpIk1glPix4ElljSR9b4k96ITDlD7DoP8jVCD7t2xdfYX1\n\tdjVtqkbG1izdZVrqt6Q35sR8EXm4NnUKyfTRaAsR/fRe+iPS/6j65kaFtJ6Z7WIBZUYX\n\tWTVGTIhsbnd1Ouzslqk+r0fQq6kaljlDGLxRl8i+Gyuq54r9yvIm1+tePIRUx78WdFrw\n\tKmhg==","X-Gm-Message-State":"AHPjjUj8+UkaNR2Pm2MHG2kAIkW07Uc36M8geLUwZoO1UyP8vB3asB01\n\tflFkILJz3bahq0gY5DAooO70sUgV39dHrnki+cK7","X-Google-Smtp-Source":"AOwi7QDT0wbUQch4o4k0hyRXP9VfYwaDPvAZy0Bes8EOon9Pu3X+y/NVKnZNfS6OIP/gQdb/8C5QiHoEYAff7N1qSuQ=","X-Received":"by 10.202.71.203 with SMTP id u194mr1461498oia.51.1505444731308; \n\tThu, 14 Sep 2017 20:05:31 -0700 (PDT)","MIME-Version":"1.0","In-Reply-To":"<20170913092034.7002-1-phil@nwl.cc>","References":"<20170913092034.7002-1-phil@nwl.cc>","From":"Julien Fortin <julien@cumulusnetworks.com>","Date":"Thu, 14 Sep 2017 20:05:10 -0700","Message-ID":"<CAM_1_Ky97LTjdEgKUbDQxajskYe_YXqYhJyrLSomsq_uFuVdeQ@mail.gmail.com>","Subject":"Re: [iproute PATCH v2] ipaddress: Fix segfault in 'addr showdump'","To":"Phil Sutter <phil@nwl.cc>","Cc":"Stephen Hemminger <stephen@networkplumber.org>,\n\tHangbin Liu <liuhangbin@gmail.com>, netdev@vger.kernel.org","Content-Type":"text/plain; charset=\"UTF-8\"","Sender":"netdev-owner@vger.kernel.org","Precedence":"bulk","List-ID":"<netdev.vger.kernel.org>","X-Mailing-List":"netdev@vger.kernel.org"}},{"id":1772339,"web_url":"http://patchwork.ozlabs.org/comment/1772339/","msgid":"<20170920175402.208117a7@xeon-e3>","list_archive_url":null,"date":"2017-09-21T00:54:02","subject":"Re: [iproute PATCH v2] ipaddress: Fix segfault in 'addr showdump'","submitter":{"id":21389,"url":"http://patchwork.ozlabs.org/api/people/21389/","name":"Stephen Hemminger","email":"stephen@networkplumber.org"},"content":"On Wed, 13 Sep 2017 11:20:34 +0200\nPhil Sutter <phil@nwl.cc> wrote:\n\n> Obviously, 'addr showdump' feature wasn't adjusted to json output\n> support. As a consequence, calls to print_string() in print_addrinfo()\n> tried to dereference a NULL FILE pointer.\n> \n> Cc: Julien Fortin <julien@cumulusnetworks.com>\n> Fixes: d0e720111aad2 (\"ip: ipaddress.c: add support for json output\")\n> Signed-off-by: Phil Sutter <phil@nwl.cc>\n> --\n> Changes since v1:\n> Align json output with that of 'ip -j addr show':\n> - Interface index label is 'ifindex', not 'index' and it doesn't belong\n>   to 'addr_info' array.\n> - Create one 'addr_info' array per dumped address, not one for all.\n> ---\n>  ip/ipaddress.c | 20 ++++++++++++++++++--\n>  1 file changed, 18 insertions(+), 2 deletions(-)\n> \n\nLooks good, applied.","headers":{"Return-Path":"<netdev-owner@vger.kernel.org>","X-Original-To":"patchwork-incoming@ozlabs.org","Delivered-To":"patchwork-incoming@ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=vger.kernel.org\n\t(client-ip=209.132.180.67; helo=vger.kernel.org;\n\tenvelope-from=netdev-owner@vger.kernel.org;\n\treceiver=<UNKNOWN>)","ozlabs.org; dkim=pass (2048-bit key;\n\tunprotected) header.d=networkplumber-org.20150623.gappssmtp.com\n\theader.i=@networkplumber-org.20150623.gappssmtp.com\n\theader.b=\"eu81+Jjo\"; dkim-atps=neutral"],"Received":["from vger.kernel.org (vger.kernel.org [209.132.180.67])\n\tby ozlabs.org (Postfix) with ESMTP id 3xyJ5s2GXYz9s0Z\n\tfor <patchwork-incoming@ozlabs.org>;\n\tThu, 21 Sep 2017 10:54:09 +1000 (AEST)","(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n\tid S1752139AbdIUAyH (ORCPT <rfc822;patchwork-incoming@ozlabs.org>);\n\tWed, 20 Sep 2017 20:54:07 -0400","from mail-pf0-f173.google.com ([209.85.192.173]:45126 \"EHLO\n\tmail-pf0-f173.google.com\" rhost-flags-OK-OK-OK-OK) by vger.kernel.org\n\twith ESMTP id S1752115AbdIUAyF (ORCPT\n\t<rfc822;netdev@vger.kernel.org>); Wed, 20 Sep 2017 20:54:05 -0400","by mail-pf0-f173.google.com with SMTP id z84so2394865pfi.2\n\tfor <netdev@vger.kernel.org>; Wed, 20 Sep 2017 17:54:05 -0700 (PDT)","from xeon-e3 (76-14-207-240.or.wavecable.com. [76.14.207.240])\n\tby smtp.gmail.com with ESMTPSA id\n\tv31sm166233pgn.43.2017.09.20.17.54.05\n\t(version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256);\n\tWed, 20 Sep 2017 17:54:05 -0700 (PDT)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=networkplumber-org.20150623.gappssmtp.com; s=20150623;\n\th=date:from:to:cc:subject:message-id:in-reply-to:references\n\t:mime-version:content-transfer-encoding;\n\tbh=XYOujEeaF3ZzDYa0L+jt7nQHYcCa/sGpqHe2vDreS08=;\n\tb=eu81+JjoZ5wSvAE9AbsblA/P6MWaPgvgiKhMF3D8iYf01Ff+Qy4zP3YHWlaQ+ysFUZ\n\t/cM7TBxjq04CNBnB7GkkIlb/y7yTOp3n4jf16T1D0reITBJ9DG1XwB/J9t2z5VIjW9st\n\t4kPSiUivIOHJfl/8d4Mm8X67r1Gu/1sgldv7jvBSjy8sfCpaMpLrdw/NDNcbvqP20QM2\n\ttmYvtoSWs2xe/slbUODPx++WAJhI/fgZ/a6GFZtDTUDwLxdNW1IXcM+S69RGgCatyr2o\n\tP+fYaQyn1Dntka6vBUUjGPhTg7IRKcF6VN8ZSGecqeCYHVw185/5iHrJF56/8rC63fpQ\n\tqySw==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:date:from:to:cc:subject:message-id:in-reply-to\n\t:references:mime-version:content-transfer-encoding;\n\tbh=XYOujEeaF3ZzDYa0L+jt7nQHYcCa/sGpqHe2vDreS08=;\n\tb=uWQs+JBn481xh8VhDVfvkl2kc8CZ8Yb5hwod12reKQF2Ssuq99JkEqUQNnbkeTJpuG\n\tY12xcd1QRnUfYLGxzcZXfS6l5WabkL//HAIfZiG5clTSexlmAhXh8gEQwDWmtNuLOF7x\n\tdNIZie9Y1Lq8ryDJP+PL6ct0WEWdwwVsR6CSFiZsWzTuXNe2EH2rAflPBVO1sm9PisS4\n\tmQjEVUpDvW/UR9juf3FJCTdtT+WFnHVIo8WdpN4jnhL0IF/XRKAhW+IJGZrKVdFbVVFK\n\tv5RhPfiP/2B8Tb43NeS5fdDudRo6sJv5QmpqqPHLuoDDG5Ih2P3Mh22RCGSdTmsDD2go\n\t7gtg==","X-Gm-Message-State":"AHPjjUiZanLYs/ynpmhHImFnuZ7JTjAhoktRBY4ixq6eycvjVBiEm8kV\n\tHGh+GxlXyP0Jz0EUurQo7fcbEQ==","X-Google-Smtp-Source":"AOwi7QDLSFIj0H8N9yCos9P2CjpwSWNRiXESqS0GMf1t5KaO4/kzC5KQO3EarfV8zo8vTbWu46w64g==","X-Received":"by 10.84.171.129 with SMTP id l1mr3789583plb.39.1505955245473;\n\tWed, 20 Sep 2017 17:54:05 -0700 (PDT)","Date":"Wed, 20 Sep 2017 17:54:02 -0700","From":"Stephen Hemminger <stephen@networkplumber.org>","To":"Phil Sutter <phil@nwl.cc>","Cc":"Hangbin Liu <liuhangbin@gmail.com>, netdev@vger.kernel.org,\n\tJulien Fortin <julien@cumulusnetworks.com>","Subject":"Re: [iproute PATCH v2] ipaddress: Fix segfault in 'addr showdump'","Message-ID":"<20170920175402.208117a7@xeon-e3>","In-Reply-To":"<20170913092034.7002-1-phil@nwl.cc>","References":"<20170913092034.7002-1-phil@nwl.cc>","MIME-Version":"1.0","Content-Type":"text/plain; charset=US-ASCII","Content-Transfer-Encoding":"7bit","Sender":"netdev-owner@vger.kernel.org","Precedence":"bulk","List-ID":"<netdev.vger.kernel.org>","X-Mailing-List":"netdev@vger.kernel.org"}}]