From patchwork Tue Mar 2 20:23:14 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Samir Bellabes X-Patchwork-Id: 46708 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 20F78B7D57 for ; Wed, 3 Mar 2010 07:32:17 +1100 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757301Ab0CBUb2 (ORCPT ); Tue, 2 Mar 2010 15:31:28 -0500 Received: from bob75-7-88-160-5-175.fbx.proxad.net ([88.160.5.175]:47393 "EHLO cerbere.dyndns.info" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754155Ab0CBUa3 (ORCPT ); Tue, 2 Mar 2010 15:30:29 -0500 Received: from localhost.localdomain (unknown [192.168.4.14]) by cerbere.dyndns.info (Postfix) with ESMTP id 923F583F7; Tue, 2 Mar 2010 21:23:22 +0100 (CET) From: Samir Bellabes To: linux-security-module@vger.kernel.org Cc: linux-kernel@vger.kernel.org, netdev@vger.kernel.org, netfilter-devel@vger.kernel.org, jamal , Patrick McHardy , Evgeniy Polyakov , Neil Horman , Grzegorz Nosek , Samir Bellabes Subject: [RFC v2 10/10] snet: introduce snet_utils Date: Tue, 2 Mar 2010 21:23:14 +0100 Message-Id: <1267561394-13626-11-git-send-email-sam@synack.fr> X-Mailer: git-send-email 1.6.3.3 In-Reply-To: <1267561394-13626-1-git-send-email-sam@synack.fr> References: <1267561394-13626-1-git-send-email-sam@synack.fr> Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org This patch provides helper functions for other subsystems Signed-off-by: Samir Bellabes --- security/snet/snet_utils.c | 38 ++++++++++++++++++++++++++++++++++++++ security/snet/snet_utils.h | 10 ++++++++++ 2 files changed, 48 insertions(+), 0 deletions(-) create mode 100644 security/snet/snet_utils.c create mode 100644 security/snet/snet_utils.h diff --git a/security/snet/snet_utils.c b/security/snet/snet_utils.c new file mode 100644 index 0000000..e9178d7 --- /dev/null +++ b/security/snet/snet_utils.c @@ -0,0 +1,38 @@ +#include +#include + +const char *snet_verdict_name(const enum snet_verdict cmd) +{ + static const char *const verdict_name[] = { + [SNET_VERDICT_GRANT] = "Grant", + [SNET_VERDICT_DENY] = "Deny", + [SNET_VERDICT_PENDING] = "Pending", + [SNET_VERDICT_NONE] = "None", + }; + + if (cmd >= SNET_NR_VERDICT_TYPES) + return "INVALID"; + else + return verdict_name[cmd]; +} + +const char *snet_syscall_name(const enum snet_syscall sys) +{ + static const char *const syscall_name[] = { + [SNET_SOCKET_CREATE] = "Create", + [SNET_SOCKET_BIND] = "Bind", + [SNET_SOCKET_CONNECT] = "Connect", + [SNET_SOCKET_LISTEN] = "Listen", + [SNET_SOCKET_ACCEPT] = "Accept", + [SNET_SOCKET_POST_ACCEPT] = "Post Accept", + [SNET_SOCKET_SENDMSG] = "Sendmsg", + [SNET_SOCKET_RECVMSG] = "Recvmsg", + [SNET_SOCKET_SOCK_RCV_SKB] = "Sock Rcv Skb", + [SNET_SOCKET_CLOSE] = "Close", + }; + + if (sys >= SNET_NR_SOCKET_TYPES) + return "INVALID"; + else + return syscall_name[sys]; +} diff --git a/security/snet/snet_utils.h b/security/snet/snet_utils.h new file mode 100644 index 0000000..4dad18b --- /dev/null +++ b/security/snet/snet_utils.h @@ -0,0 +1,10 @@ +#ifndef _SNET_UTILS_H +#define _SNET_UTILS_H + +#include + +int snet_data_fill(struct sk_buff *skb_rsp, struct snet_info *info); +const char *snet_verdict_name(const enum snet_verdict cmd); +const char *snet_syscall_name(const enum snet_syscall sys); + +#endif /* _SNET_UTILS_H */