Thread (10 messages) flat view 10 messages, 3 authors, 2012-02-26

Re: [PATCH 1/3] netlink: add netlink_dump_control structure for netlink_dump_start()

From: Pablo Neira Ayuso <pablo@netfilter.org>
Date: 2012-02-25 13:22:44
Also in: netfilter-devel

On Sat, Feb 25, 2012 at 02:12:22AM +0100, Jan Engelhardt wrote:
On Saturday 2012-02-25 01:30, pablo@netfilter.org wrote:
quoted
From: Pablo Neira Ayuso <pablo@netfilter.org>

Davem considers that the argument list of this interface is getting
out of control. This patch tries to address this issue following
his proposal:

struct netlink_dump_control c = { .dump = dump, .done = done, ... };

netlink_dump_start(..., &c);
What about adding skb and nlh into c as well? After all, skb
is not nearly as much {used directly} as it is in Xtables.
If you look at all netlink_dump_start invocations. Those are always
included. The idea was to add to the structure fields that may be
unset.
quoted
+		{
+			struct netlink_dump_control c = {
+				.dump = link->dump,
+				.done = link->done,
+			};
+			return netlink_dump_start(crypto_nlsk, skb, nlh, &c);
+		}
You can also use

		return netlink_dump_start(crypto_nlsk, skb,
		       &(const struct netlink_dump_control)
		       {.dump = link->dump, .done = link->done}));
Nice to know, thanks. Haven't see this in any other part of the kernel
code though and it looks a bit ugly IMO. I think I prefer the way it is
now.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help