{"id":806708,"url":"http://patchwork.ozlabs.org/api/1.0/patches/806708/?format=json","project":{"id":26,"url":"http://patchwork.ozlabs.org/api/1.0/projects/26/?format=json","name":"Netfilter Development","link_name":"netfilter-devel","list_id":"netfilter-devel.vger.kernel.org","list_email":"netfilter-devel@vger.kernel.org","web_url":null,"scm_url":null,"webscm_url":null},"msgid":"<20170828182049.523-1-pablombg@gmail.com>","date":"2017-08-28T18:20:49","name":"[nft] tests: py: add tests for limit stateful object","commit_ref":null,"pull_url":null,"state":"accepted","archived":false,"hash":"8d1549c2129011704d44fb9b1733a934757b1386","submitter":{"id":67698,"url":"http://patchwork.ozlabs.org/api/1.0/people/67698/?format=json","name":"Pablo M. Bermudo Garay","email":"pablombg@gmail.com"},"delegate":{"id":6139,"url":"http://patchwork.ozlabs.org/api/1.0/users/6139/?format=json","username":"pablo","first_name":"Pablo","last_name":"Neira","email":"pablo@netfilter.org"},"mbox":"http://patchwork.ozlabs.org/project/netfilter-devel/patch/20170828182049.523-1-pablombg@gmail.com/mbox/","series":[{"id":233,"url":"http://patchwork.ozlabs.org/api/1.0/series/233/?format=json","date":"2017-08-28T18:20:49","name":"[nft] tests: py: add tests for limit stateful object","version":1,"mbox":"http://patchwork.ozlabs.org/series/233/mbox/"}],"check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/806708/checks/","tags":{},"headers":{"Return-Path":"<netfilter-devel-owner@vger.kernel.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@bilbo.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=netfilter-devel-owner@vger.kernel.org;\n\treceiver=<UNKNOWN>)","ozlabs.org;\n\tdkim=fail reason=\"signature verification failed\" (2048-bit key;\n\tunprotected) header.d=gmail.com header.i=@gmail.com\n\theader.b=\"JPWAM0hF\"; dkim-atps=neutral"],"Received":["from vger.kernel.org (vger.kernel.org [209.132.180.67])\n\tby ozlabs.org (Postfix) with ESMTP id 3xh0TG3Kkyz9sD9\n\tfor <incoming@patchwork.ozlabs.org>;\n\tTue, 29 Aug 2017 04:21:22 +1000 (AEST)","(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n\tid S1751966AbdH1SVU (ORCPT <rfc822;incoming@patchwork.ozlabs.org>);\n\tMon, 28 Aug 2017 14:21:20 -0400","from mail-wr0-f195.google.com ([209.85.128.195]:35903 \"EHLO\n\tmail-wr0-f195.google.com\" rhost-flags-OK-OK-OK-OK) by vger.kernel.org\n\twith ESMTP id S1751923AbdH1SVT (ORCPT\n\t<rfc822;netfilter-devel@vger.kernel.org>);\n\tMon, 28 Aug 2017 14:21:19 -0400","by mail-wr0-f195.google.com with SMTP id 40so642887wrv.3\n\tfor <netfilter-devel@vger.kernel.org>;\n\tMon, 28 Aug 2017 11:21:18 -0700 (PDT)","from localhost.localdomain\n\t(188.red-79-155-211.dynamicip.rima-tde.net. [79.155.211.188])\n\tby smtp.gmail.com with ESMTPSA id\n\te135sm777710wmg.21.2017.08.28.11.21.15\n\t(version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);\n\tMon, 28 Aug 2017 11:21:16 -0700 (PDT)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=gmail.com; s=20161025;\n\th=from:to:cc:subject:date:message-id;\n\tbh=haZWMLeY1dq5SG9+tnGJsHlSBWHDyoDfKi1V7wdRyuk=;\n\tb=JPWAM0hFpeU7GiACRUpuSO7NlDZ4FJp5Bay26RvlHv77lJJa5i101qMRiB8Mfv0kCi\n\tNCjghobDBgLiwIyBk3ar466xTnkGsima08/CyfD7Cf45RuIsjzPHkRXj6fyFqbyYDZIM\n\t/XBntbHhr0MgnA1CfVHZRSusFnM/enydY5T0vLPifjufd8uoRNzNqim75Qu3vMC3vdyH\n\tzaTAng19EjKXT4TvF/KJ57U+1l3Ed6ouC0Ow273j8h4WukIKs6OF+mwJCwtvtpym8tCj\n\tfSu32VsJBtaN0FA3EA3Up9NuAc31i30r/4DvqBS7rXQHZTGNExAzo/+ZZfuguQ3bFP5Z\n\ttppg==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:from:to:cc:subject:date:message-id;\n\tbh=haZWMLeY1dq5SG9+tnGJsHlSBWHDyoDfKi1V7wdRyuk=;\n\tb=ic34prp3ioQY/KlWMSkziifXO5JrgSKHGCrTOmAuONLOsmGYCgyS+0NvXx/kBbBPst\n\twgv/igpqKIurR+HbzAlTdeaiWe0PBiKkXabVB3QID74EFaOpFWbZpudnNAe4yFkTo/Of\n\tja/hw4vVhhMOblrDlmKmRzEf/DMYBBzsaqwVpzq7onv+a+ym+G+fYMgD993KRfJDRJri\n\tRy4yi1BRiAidXDCHZKwG6R90Iv2lPkPAOg8XVLm7GiJaEnoe3zgFrgGEgo1GWySHEdyG\n\tr+JyhX58jZO9Wm3fxg4mAbJGzy75N70fr/uEoumY2WVR7SJqDb3VDTYxPddgFQqHXdYR\n\txaOA==","X-Gm-Message-State":"AHYfb5hriMT0Q4mVwlhvChKTek0zPAe0z7GFs5aE8lZq24Of2POrlZdC\n\tf3DvZ6xwOYaCi0rG8BU=","X-Received":"by 10.223.149.97 with SMTP id 88mr944533wrs.305.1503944477689;\n\tMon, 28 Aug 2017 11:21:17 -0700 (PDT)","From":"\"Pablo M. Bermudo Garay\" <pablombg@gmail.com>","To":"netfilter-devel@vger.kernel.org","Cc":"pablo@netfilter.org, \"Pablo M. Bermudo Garay\" <pablombg@gmail.com>","Subject":"[PATCH nft] tests: py: add tests for limit stateful object","Date":"Mon, 28 Aug 2017 20:20:49 +0200","Message-Id":"<20170828182049.523-1-pablombg@gmail.com>","X-Mailer":"git-send-email 2.14.1","Sender":"netfilter-devel-owner@vger.kernel.org","Precedence":"bulk","List-ID":"<netfilter-devel.vger.kernel.org>","X-Mailing-List":"netfilter-devel@vger.kernel.org"},"content":"The patch also reorganizes ip/objects.t file.\n\nSigned-off-by: Pablo M. Bermudo Garay <pablombg@gmail.com>\n---\n tests/py/any/objects.t        |  2 ++\n tests/py/ip/objects.t         | 20 +++++++++++++++++---\n tests/py/ip/objects.t.payload | 16 ++++++++++++++++\n 3 files changed, 35 insertions(+), 3 deletions(-)","diff":"diff --git a/tests/py/any/objects.t b/tests/py/any/objects.t\nindex d44696d..89a9545 100644\n--- a/tests/py/any/objects.t\n+++ b/tests/py/any/objects.t\n@@ -11,3 +11,5 @@\n %cnt1 type counter;ok\n %qt1 type quota 25 mbytes;ok\n %qt2 type quota over 1 kbytes;ok\n+%lim0 type limit rate 400/minute;ok\n+%lim2 type limit rate over 1024 bytes/second burst 512 bytes;ok\ndiff --git a/tests/py/ip/objects.t b/tests/py/ip/objects.t\nindex 742ec6a..76b802a 100644\n--- a/tests/py/ip/objects.t\n+++ b/tests/py/ip/objects.t\n@@ -2,19 +2,33 @@\n \n *ip;test-ip4;output\n \n+# counter\n %cnt1 type counter;ok\n %cnt2 type counter;ok\n-%qt1 type quota 25 mbytes;ok\n-%qt2 type quota over 1 kbytes;ok\n-%cthelp2 type ct helper { type \\\"ftp\\\" protocol tcp\\; l3proto ip6\\; };fail\n \n ip saddr 192.168.1.3 counter name \"cnt2\";ok\n ip saddr 192.168.1.3 counter name \"cnt3\";fail\n counter name tcp dport map {443 : \"cnt1\", 80 : \"cnt2\", 22 : \"cnt1\"};ok\n+\n+# quota\n+%qt1 type quota 25 mbytes;ok\n+%qt2 type quota over 1 kbytes;ok\n+\n ip saddr 192.168.1.3 quota name \"qt1\";ok\n ip saddr 192.168.1.3 quota name \"qt3\";fail\n quota name tcp dport map {443 : \"qt1\", 80 : \"qt2\", 22 : \"qt1\"};ok\n \n+# ct helper\n %cthelp1 type ct helper { type \\\"ftp\\\" protocol tcp\\; };ok\n+%cthelp2 type ct helper { type \\\"ftp\\\" protocol tcp\\; l3proto ip6\\; };fail\n+\n ct helper set \"cthelp1\";ok\n ct helper set tcp dport map {21 : \"cthelp1\", 2121 : \"cthelp1\" };ok\n+\n+# limit\n+%lim1 type limit rate 400/minute;ok\n+%lim2 type limit rate over 1024 bytes/second burst 512 bytes;ok\n+\n+ip saddr 192.168.1.3 limit name \"lim1\";ok\n+ip saddr 192.168.1.3 limit name \"lim3\";fail\n+limit name tcp dport map {443 : \"lim1\", 80 : \"lim2\", 22 : \"lim1\"};ok\ndiff --git a/tests/py/ip/objects.t.payload b/tests/py/ip/objects.t.payload\nindex 7f16c5a..007eadd 100644\n--- a/tests/py/ip/objects.t.payload\n+++ b/tests/py/ip/objects.t.payload\n@@ -43,3 +43,19 @@ ip test-ip4 output\n   [ cmp eq reg 1 0x00000006 ]\n   [ payload load 2b @ transport header + 2 => reg 1 ]\n   [ objref sreg 1 set __objmap%d id 1 ]\n+\n+# ip saddr 192.168.1.3 limit name \"lim1\"\n+ip test-ip4 output\n+  [ payload load 4b @ network header + 12 => reg 1 ]\n+  [ cmp eq reg 1 0x0301a8c0 ]\n+  [ objref type 4 name lim1 ]\n+\n+# limit name tcp dport map {443 : \"lim1\", 80 : \"lim2\", 22 : \"lim1\"}\n+__objmap%d test-ip4 43 size 3\n+__objmap%d test-ip4 0\n+        element 0000bb01  : 0 [end]     element 00005000  : 0 [end]     element 00001600  : 0 [end]\n+ip test-ip4 output\n+  [ meta load l4proto => reg 1 ]\n+  [ cmp eq reg 1 0x00000006 ]\n+  [ payload load 2b @ transport header + 2 => reg 1 ]\n+  [ objref sreg 1 set __objmap%d id 1 ]\n","prefixes":["nft"]}