Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/1.2/patches/809811/?format=api
{ "id": 809811, "url": "http://patchwork.ozlabs.org/api/1.2/patches/809811/?format=api", "web_url": "http://patchwork.ozlabs.org/project/netdev/patch/1504555874-4168-11-git-send-email-pablo@netfilter.org/", "project": { "id": 7, "url": "http://patchwork.ozlabs.org/api/1.2/projects/7/?format=api", "name": "Linux network development", "link_name": "netdev", "list_id": "netdev.vger.kernel.org", "list_email": "netdev@vger.kernel.org", "web_url": null, "scm_url": null, "webscm_url": null, "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<1504555874-4168-11-git-send-email-pablo@netfilter.org>", "list_archive_url": null, "date": "2017-09-04T20:11:12", "name": "[10/12] netlink: add NLM_F_NONREC flag for deletion requests", "commit_ref": null, "pull_url": null, "state": "accepted", "archived": true, "hash": "08f906b9e7482f3fa48d4c3b6a339de1d475b08f", "submitter": { "id": 1315, "url": "http://patchwork.ozlabs.org/api/1.2/people/1315/?format=api", "name": "Pablo Neira Ayuso", "email": "pablo@netfilter.org" }, "delegate": { "id": 34, "url": "http://patchwork.ozlabs.org/api/1.2/users/34/?format=api", "username": "davem", "first_name": "David", "last_name": "Miller", "email": "davem@davemloft.net" }, "mbox": "http://patchwork.ozlabs.org/project/netdev/patch/1504555874-4168-11-git-send-email-pablo@netfilter.org/mbox/", "series": [ { "id": 1451, "url": "http://patchwork.ozlabs.org/api/1.2/series/1451/?format=api", "web_url": "http://patchwork.ozlabs.org/project/netdev/list/?series=1451", "date": "2017-09-04T20:11:02", "name": "[01/12] netfilter: xt_hashlimit: add rate match mode", "version": 1, "mbox": "http://patchwork.ozlabs.org/series/1451/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/809811/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/809811/checks/", "tags": {}, "related": [], "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>)", "Received": [ "from vger.kernel.org (vger.kernel.org [209.132.180.67])\n\tby ozlabs.org (Postfix) with ESMTP id 3xmLc26MZvz9t2R\n\tfor <patchwork-incoming@ozlabs.org>;\n\tTue, 5 Sep 2017 06:12:18 +1000 (AEST)", "(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n\tid S1754750AbdIDULw (ORCPT <rfc822;patchwork-incoming@ozlabs.org>);\n\tMon, 4 Sep 2017 16:11:52 -0400", "from mail.us.es ([193.147.175.20]:42152 \"EHLO mail.us.es\"\n\trhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP\n\tid S1754103AbdIDULc (ORCPT <rfc822;netdev@vger.kernel.org>);\n\tMon, 4 Sep 2017 16:11:32 -0400", "from antivirus1-rhel7.int (unknown [192.168.2.11])\n\tby mail.us.es (Postfix) with ESMTP id 2978C532F8C\n\tfor <netdev@vger.kernel.org>; Mon, 4 Sep 2017 22:11:05 +0200 (CEST)", "from antivirus1-rhel7.int (localhost [127.0.0.1])\n\tby antivirus1-rhel7.int (Postfix) with ESMTP id 1A6B9B5028\n\tfor <netdev@vger.kernel.org>; Mon, 4 Sep 2017 22:11:05 +0200 (CEST)", "by antivirus1-rhel7.int (Postfix, from userid 99)\n\tid 0FF4EB5026; Mon, 4 Sep 2017 22:11:05 +0200 (CEST)", "from antivirus1-rhel7.int (localhost [127.0.0.1])\n\tby antivirus1-rhel7.int (Postfix) with ESMTP id 03430B5028;\n\tMon, 4 Sep 2017 22:11:03 +0200 (CEST)", "from 192.168.1.97 (192.168.1.97) by antivirus1-rhel7.int\n\t(F-Secure/fsigk_smtp/550/antivirus1-rhel7.int); \n\tMon, 04 Sep 2017 22:11:03 +0200 (CEST)", "from salvia.here (129.166.216.87.static.jazztel.es\n\t[87.216.166.129]) (Authenticated sender: pneira@us.es)\n\tby entrada.int (Postfix) with ESMTPA id A973E4265A20;\n\tMon, 4 Sep 2017 22:11:02 +0200 (CEST)" ], "X-Spam-Checker-Version": "SpamAssassin 3.4.1 (2015-04-28) on\n\tantivirus1-rhel7.int", "X-Spam-Level": "", "X-Spam-Status": "No, score=-108.2 required=7.5 tests=ALL_TRUSTED,BAYES_50,\n\tSMTPAUTH_US2,USER_IN_WHITELIST autolearn=disabled version=3.4.1", "X-Virus-Status": "clean(F-Secure/fsigk_smtp/550/antivirus1-rhel7.int)", "X-SMTPAUTHUS": "auth mail.us.es", "From": "Pablo Neira Ayuso <pablo@netfilter.org>", "To": "netfilter-devel@vger.kernel.org", "Cc": "davem@davemloft.net, netdev@vger.kernel.org", "Subject": "[PATCH 10/12] netlink: add NLM_F_NONREC flag for deletion requests", "Date": "Mon, 4 Sep 2017 22:11:12 +0200", "Message-Id": "<1504555874-4168-11-git-send-email-pablo@netfilter.org>", "X-Mailer": "git-send-email 2.1.4", "In-Reply-To": "<1504555874-4168-1-git-send-email-pablo@netfilter.org>", "References": "<1504555874-4168-1-git-send-email-pablo@netfilter.org>", "X-Virus-Scanned": "ClamAV using ClamSMTP", "Sender": "netdev-owner@vger.kernel.org", "Precedence": "bulk", "List-ID": "<netdev.vger.kernel.org>", "X-Mailing-List": "netdev@vger.kernel.org" }, "content": "In the last NFWS in Faro, Portugal, we discussed that netlink is lacking\nthe semantics to request non recursive deletions, ie. do not delete an\nobject iff it has child objects that hang from this parent object that\nthe user requests to be deleted.\n\nWe need this new flag to solve a problem for the iptables-compat\nbackward compatibility utility, that runs iptables commands using the\nexisting nf_tables netlink interface. Specifically, custom chains in\niptables cannot be deleted if there are rules in it, however, nf_tables\nallows to remove any chain that is populated with content. To sort out\nthis asymmetry, iptables-compat userspace sets this new NLM_F_NONREC\nflag to obtain the same semantics that iptables provides.\n\nThis new flag should only be used for deletion requests. Note this new\nflag value overlaps with the existing:\n\n* NLM_F_ROOT for get requests.\n* NLM_F_REPLACE for new requests.\n\nHowever, those flags should not ever be used in deletion requests.\n\nSigned-off-by: Pablo Neira Ayuso <pablo@netfilter.org>\n---\n include/uapi/linux/netlink.h | 3 +++\n 1 file changed, 3 insertions(+)", "diff": "diff --git a/include/uapi/linux/netlink.h b/include/uapi/linux/netlink.h\nindex f4fc9c9e123d..e8af60a7c56d 100644\n--- a/include/uapi/linux/netlink.h\n+++ b/include/uapi/linux/netlink.h\n@@ -69,6 +69,9 @@ struct nlmsghdr {\n #define NLM_F_CREATE\t0x400\t/* Create, if it does not exist\t*/\n #define NLM_F_APPEND\t0x800\t/* Add to end of list\t\t*/\n \n+/* Modifiers to DELETE request */\n+#define NLM_F_NONREC\t0x100\t/* Do not delete recursively\t*/\n+\n /* Flags for ACK message */\n #define NLM_F_CAPPED\t0x100\t/* request was capped */\n #define NLM_F_ACK_TLVS\t0x200\t/* extended ACK TVLs were included */\n", "prefixes": [ "10/12" ] }