From patchwork Thu Jan 10 14:29:05 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tomasz Bursztyka X-Patchwork-Id: 211011 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 D116F2C0290 for ; Fri, 11 Jan 2013 01:29:11 +1100 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751690Ab3AJO3J (ORCPT ); Thu, 10 Jan 2013 09:29:09 -0500 Received: from mga03.intel.com ([143.182.124.21]:33322 "EHLO mga03.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751033Ab3AJO3J (ORCPT ); Thu, 10 Jan 2013 09:29:09 -0500 Received: from azsmga001.ch.intel.com ([10.2.17.19]) by azsmga101.ch.intel.com with ESMTP; 10 Jan 2013 06:29:08 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="4.84,444,1355126400"; d="scan'208";a="242303934" Received: from rd-180.fi.intel.com ([10.237.68.142]) by azsmga001.ch.intel.com with ESMTP; 10 Jan 2013 06:29:07 -0800 From: Tomasz Bursztyka To: netfilter-devel@vger.kernel.org Cc: Tomasz Bursztyka Subject: [libnftables PATCH] rule: Add a function to get rule's family Date: Thu, 10 Jan 2013 16:29:05 +0200 Message-Id: <1357828145-18588-1-git-send-email-tomasz.bursztyka@linux.intel.com> X-Mailer: git-send-email 1.8.0.2 Sender: netfilter-devel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netfilter-devel@vger.kernel.org Signed-off-by: Tomasz Bursztyka --- include/libnftables/rule.h | 2 ++ src/libnftables.map | 1 + src/rule.c | 6 ++++++ 3 files changed, 9 insertions(+) diff --git a/include/libnftables/rule.h b/include/libnftables/rule.h index a944c00..310262a 100644 --- a/include/libnftables/rule.h +++ b/include/libnftables/rule.h @@ -28,6 +28,8 @@ void *nft_rule_attr_get(struct nft_rule *r, uint16_t attr); const char *nft_rule_attr_get_str(struct nft_rule *r, uint16_t attr); uint64_t nft_rule_attr_get_u64(struct nft_rule *r, uint16_t attr); +uint8_t nft_rule_get_family(struct nft_rule *r); + void nft_rule_add_expr(struct nft_rule *r, struct nft_rule_expr *expr); void nft_rule_nlmsg_build_payload(struct nlmsghdr *nlh, struct nft_rule *t); diff --git a/src/libnftables.map b/src/libnftables.map index a62f200..3dad5fa 100644 --- a/src/libnftables.map +++ b/src/libnftables.map @@ -47,6 +47,7 @@ global: nft_rule_attr_get; nft_rule_attr_get_u64; nft_rule_attr_get_str; + nft_rule_get_family; nft_rule_snprintf; nft_rule_nlmsg_build_hdr; nft_rule_nlmsg_build_payload; diff --git a/src/rule.c b/src/rule.c index dd05412..0bbeeb2 100644 --- a/src/rule.c +++ b/src/rule.c @@ -140,6 +140,12 @@ uint64_t nft_rule_attr_get_u64(struct nft_rule *r, uint16_t attr) } EXPORT_SYMBOL(nft_rule_attr_get_u64); +uint8_t nft_rule_get_family(struct nft_rule *r) +{ + return r->family; +} +EXPORT_SYMBOL(nft_rule_get_family); + struct nlmsghdr * nft_rule_nlmsg_build_hdr(char *buf, uint16_t cmd, uint16_t family, uint16_t type, uint32_t seq)