From: Jan Engelhardt <jengelh@medozas.de>
To: Luciano Coelho <luciano.coelho@nokia.com>
Cc: netdev@vger.kernel.org, netfilter-devel@vger.kernel.org,
kaber@trash.net, Timo Teras <timo.teras@iki.fi>
Subject: Re: [PATCH] netfilter: Xtables: idletimer target implementation
Date: Wed, 2 Jun 2010 14:54:30 +0200 (CEST) [thread overview]
Message-ID: <alpine.LSU.2.01.1006021444480.14585@obet.zrqbmnf.qr> (raw)
In-Reply-To: <1275479897-16779-1-git-send-email-luciano.coelho@nokia.com>
On Wednesday 2010-06-02 13:58, Luciano Coelho wrote:
>+
>+#ifndef _XT_IDLETIMER_H
>+#define _XT_IDLETIMER_H
>+
>+#define MAX_LABEL_SIZE 32
>+
>+struct idletimer_tg_info {
>+ unsigned int timeout;
>+
>+ char label[MAX_LABEL_SIZE];
>+};
As per "Writing Netfilter Modules" e-book, using "int" is a no-no.
>
>+config NETFILTER_XT_TARGET_IDLETIMER
>+ tristate "IDLETIMER target support"
depends on NETFILTER_ADVANCED
>xt_IDLETIMER.c
>+struct idletimer_tg_attr {
>+ struct attribute attr;
>+ ssize_t (*show)(struct kobject *kobj,
>+ struct attribute *attr, char *buf);
>+};
Some indent seems to have gone wrong.
>+ attr->attr.name = kstrdup(info->label, GFP_KERNEL);
Need to check return value!
>+ attr->attr.mode = 0444;
attr->attr.mode = S_IRUGO;
>+static struct xt_target idletimer_tg __read_mostly = {
>+ .name = "IDLETIMER",
>+ .family = NFPROTO_IPV4,
NFPROTO_UNSPEC
>+ .target = idletimer_tg_target,
>+ .targetsize = sizeof(struct idletimer_tg_info),
>+ .checkentry = idletimer_tg_checkentry,
>+ .destroy = idletimer_tg_destroy,
>+ .me = THIS_MODULE,
>+};
>+
>+static int __init idletimer_tg_init(void)
>+{
>+ int ret;
>+
>+ idletimer_tg_kobj = kobject_create_and_add("idletimer",
>+ &THIS_MODULE->mkobj.kobj);
>+ if (!idletimer_tg_kobj)
>+ return -ENOMEM;
>+
>+ /* FIXME: do we want to keep it in the module or in the net class? */
I have only ever seen interfaces in /sys/class/net, so it might be
wise to keep it that way in light of scripts doing
echo /sys/class/net/* to get a list of interfaces.
Looks quite ok.
next prev parent reply other threads:[~2010-06-02 12:54 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-06-02 11:58 [PATCH] netfilter: Xtables: idletimer target implementation Luciano Coelho
2010-06-02 12:54 ` Jan Engelhardt [this message]
2010-06-02 13:37 ` Luciano Coelho
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=alpine.LSU.2.01.1006021444480.14585@obet.zrqbmnf.qr \
--to=jengelh@medozas.de \
--cc=kaber@trash.net \
--cc=luciano.coelho@nokia.com \
--cc=netdev@vger.kernel.org \
--cc=netfilter-devel@vger.kernel.org \
--cc=timo.teras@iki.fi \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox