From patchwork Thu Jun 5 14:19:15 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yuxuan Shui X-Patchwork-Id: 356433 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 70B3C1400A8 for ; Fri, 6 Jun 2014 00:20:25 +1000 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752112AbaFEOUX (ORCPT ); Thu, 5 Jun 2014 10:20:23 -0400 Received: from mail-pb0-f53.google.com ([209.85.160.53]:59829 "EHLO mail-pb0-f53.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752110AbaFEOUW (ORCPT ); Thu, 5 Jun 2014 10:20:22 -0400 Received: by mail-pb0-f53.google.com with SMTP id md12so1178533pbc.12 for ; Thu, 05 Jun 2014 07:20:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=Rl+ENAxVikZA6QIkar0ubzlS1ePBHdRDYr3AiKqC7jo=; b=hA4GiP8NJgz7gyIkXgMwRBv8sdTJVFiZsY1/9bXEcL/B4TdNeCgCYZnP/0GOLiPJ0Y +FyEmDYoy9JajrSC85XR4a5DU3p3JXvXsg0WnUKIuxZBhwInzx5iq4UTFhga1OcQ8Gtl Mk+n5bNGB1Z1df8q5VeVY7j46h4Z8QVkE7LdqHXnSLvSHEPeQ1FI3k6J1zSmX4tMC5Le wP/YvmJZ1wL4z/egiPKZarf44pvPlISGd+v2jYFJxUrFq+cGCC+xfnRJOrXd4ofrJULU k3SLbkL7l2nsgiS4EtpOoc+g7nI2UVazQq1ELmvU/rpZc1N4Vob/6vRfOLzVIB64YcWs 7P2Q== X-Received: by 10.69.20.10 with SMTP id gy10mr77955433pbd.162.1401978022245; Thu, 05 Jun 2014 07:20:22 -0700 (PDT) Received: from localhost.localdomain (nialv7.xen.prgmr.com. [71.19.156.202]) by mx.google.com with ESMTPSA id hk5sm23432832pbb.86.2014.06.05.07.20.12 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Thu, 05 Jun 2014 07:20:21 -0700 (PDT) From: Yuxuan Shui To: netfilter-devel@vger.kernel.org Cc: Yuxuan Shui Subject: [PATCH libnftnl 2/3] meta: Add support for SKPID and SKSID meta keys Date: Thu, 5 Jun 2014 22:19:15 +0800 Message-Id: <1401977956-15500-2-git-send-email-yshuiv7@gmail.com> X-Mailer: git-send-email 2.0.0 In-Reply-To: <1401977956-15500-1-git-send-email-yshuiv7@gmail.com> References: <1401977956-15500-1-git-send-email-yshuiv7@gmail.com> Sender: netfilter-devel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netfilter-devel@vger.kernel.org Add SKPID and SKSID meta keys so we can implement PID and SID matching rules in nft. Signed-off-by: Yuxuan Shui --- include/linux/netfilter/nf_tables.h | 4 ++++ src/expr/meta.c | 4 +++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/include/linux/netfilter/nf_tables.h b/include/linux/netfilter/nf_tables.h index 2a88f64..cea17d4 100644 --- a/include/linux/netfilter/nf_tables.h +++ b/include/linux/netfilter/nf_tables.h @@ -571,6 +571,8 @@ enum nft_exthdr_attributes { * @NFT_META_L4PROTO: layer 4 protocol number * @NFT_META_BRI_IIFNAME: packet input bridge interface name * @NFT_META_BRI_OIFNAME: packet output bridge interface name + * @NFT_META_SKPID: origination socket owner PID + * @NFT_META_SKSID: origination socket owner SID */ enum nft_meta_keys { NFT_META_LEN, @@ -592,6 +594,8 @@ enum nft_meta_keys { NFT_META_L4PROTO, NFT_META_BRI_IIFNAME, NFT_META_BRI_OIFNAME, + NFT_META_SKPID, + NFT_META_SKSID, }; /** diff --git a/src/expr/meta.c b/src/expr/meta.c index fb945f0..1568544 100644 --- a/src/expr/meta.c +++ b/src/expr/meta.c @@ -23,7 +23,7 @@ #include "expr_ops.h" #ifndef NFT_META_MAX -#define NFT_META_MAX (NFT_META_BRI_OIFNAME + 1) +#define NFT_META_MAX (NFT_META_SKSID + 1) #endif struct nft_expr_meta { @@ -155,6 +155,8 @@ static const char *meta_key2str_array[NFT_META_MAX] = { [NFT_META_SECMARK] = "secmark", [NFT_META_BRI_IIFNAME] = "bri_iifname", [NFT_META_BRI_OIFNAME] = "bri_oifname", + [NFT_META_SKPID] = "skpid", + [NFT_META_SKSID] = "sksid", }; static const char *meta_key2str(uint8_t key)