Hello Rafael, or anyone else affected,

Accepted iproute2 into disco-proposed. The package will build now and be
available at
https://launchpad.net/ubuntu/+source/iproute2/4.18.0-1ubuntu2.1 in a few
hours, and then in the -proposed repository.

Please help us by testing this new package.  See
https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how
to enable and use -proposed.  Your feedback will aid us getting this
update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug,
mentioning the version of the package you tested and change the tag from
verification-needed-disco to verification-done-disco. If it does not fix
the bug for you, please add a comment stating that, and change the tag
to verification-failed-disco. In either case, without details of your
testing we will not be able to proceed.

Further information regarding the verification process can be found at
https://wiki.ubuntu.com/QATeam/PerformingSRUVerification .  Thank you in
advance for helping!

N.B. The updated package will be released to -updates after the bug(s)
fixed by this package have been verified and the package has been in
-proposed for a minimum of 7 days.

** Changed in: iproute2 (Ubuntu Disco)
       Status: In Progress => Fix Committed

** Tags added: verification-needed verification-needed-disco

-- 
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to iproute2 in Ubuntu.
Matching subscriptions: iproute2
https://bugs.launchpad.net/bugs/1831775

Title:
  ss seems broken when using multiple filters in the same cmdline

Status in iproute2 package in Ubuntu:
  Fix Released
Status in iproute2 source package in Cosmic:
  Won't Fix
Status in iproute2 source package in Disco:
  Fix Committed
Status in iproute2 source package in Eoan:
  Fix Released

Bug description:
  [Impact]

   * ss won't be able to run commands with single filters inside
  parentheses, like: "( sport == :X )", for example.

   * A workaround is to remove "( )" from single filters, since it looks
  the issue does not affect 2 filters being put together in the same
  parentheses, like: " ( X and Y ) and Y " instead of ( X and Y ) and (
  Y )".

   * CTDB is unable to use ss filter to obtain nodes public IP addresses
  in order to fail over services (LP: #722201).

  [Test Case]

   * Having an Ubuntu Cosmic, Disco or Eoan, try to execute the
  following command:

  $ ss -tn state established "( src [172.16.17.2] || src [172.16.17.3]
  )" "( sport == :2049 )"

     Independent of the IPs or ports being used. Copying and pasting the
  command should be enough for you to know if you are affected.

  Bad Result:

  ss: bison bellows (while parsing filter): "syntax error!" Sorry.
  Usage: ss [ OPTIONS ]
         ss [ OPTIONS ] [ FILTER ]
     -h, --help          this message
  ...

  Expected Result:

  Recv-Q            Send-Q                         Local Address:Port           
              Peer Address:Port
  ...

   * test case was discovered during CTDB scripts execution

  [Regression Potential]

   * biggest risk would be to affect ss interpreter (worst case scenario).
   * the proposed patch is based in upstream fix and was tested against the 
same issue reported as the reproducer (above) and some other generic ss 
commands.
   * any problem here is unlikely to change iproute2 most important command 
interpreter, "ip", since the patch is applied against ss code.

  [Other Info]

  ORIGINAL DESCRIPTION:

  Investigating an issue for CTDB (LP: #722201), after suggesting a fix
  on ss syntax to CTDB upstream project, we discovered that "ss" seems
  to be broken in Ubuntu since Ubuntu Cosmic:

  ----

  # Debian Sid

  inaddy@workstation:~$ ss -tn state established "( src [172.16.17.2] || src 
[172.16.17.3] )" "( sport == :2049 )"
  Recv-Q            Send-Q                         Local Address:Port           
              Peer Address:Port

  # Ubuntu Ubuntu 16.04 LTS (Xenial Xerus)

  (c)inaddy@xenial:~$ ss -tn state established "( src [172.16.17.2] || src 
[172.16.17.3] )" "( sport == :2049 )"
  Recv-Q Send-Q                    Local Address:Port                           
        Peer Address:Port

  # Ubuntu 18.04 LTS (Bionic Beaver)

  (c)inaddy@bionic:~$ ss -tn state established "( src [172.16.17.2] || src 
[172.16.17.3] )" "( sport == :2049 )"
  Recv-Q           Send-Q                          Local Address:Port           
              Peer Address:Port

  # Ubuntu 18.10 (Cosmic Cuttlefish)

  (c)inaddy@cosmic:~$ ss -tn state established "( src [172.16.17.2] || src 
[172.16.17.3] )" "( sport == :2049 )"
  ss: bison bellows (while parsing filter): "syntax error!" Sorry.
  Usage: ss [ OPTIONS ]
         ss [ OPTIONS ] [ FILTER ]
     -h, --help          this message

  # Ubuntu 19.04 (Disco Dingo)

  (c)inaddy@disco:~$ ss -tn state established "( src [172.16.17.2] || src 
[172.16.17.3] )" "( sport == :2049 )"
  ss: bison bellows (while parsing filter): "syntax error!" Sorry.
  Usage: ss [ OPTIONS ]
         ss [ OPTIONS ] [ FILTER ]

  # Ubuntu 19.10 (Eoan Ermine)

  (c)inaddy@eoan:~$ ss -tn state established "( src [172.16.17.2] || src 
[172.16.17.3] )" "( sport == :2049 )"
  ss: bison bellows (while parsing filter): "syntax error!" Sorry.
  Usage: ss [ OPTIONS ]
         ss [ OPTIONS ] [ FILTER ]

  ----

  I have generated a pkg using upstream iproute2 source code and it does
  not suffer the issue. I have generated a package using Ubuntu cosmic
  source package, without debian/patches/*, and verified the issue still
  persists (not being introduced by any of our packages, and being
  present if vanilla upstream version used in Cosmic).

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/iproute2/+bug/1831775/+subscriptions

-- 
Mailing list: https://launchpad.net/~kernel-packages
Post to     : kernel-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~kernel-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to