From: Antonio Quartulli <a@unstable.cc>
To: Simon Wunderlich <sw@simonwunderlich.de>
Cc: b.a.t.m.a.n@lists.open-mesh.org
Subject: Re: [B.A.T.M.A.N.] [PATCH 1/2] batman-adv: move and restructure batadv_v_ogm_forward
Date: Wed, 20 Jan 2016 22:34:25 +0800 [thread overview]
Message-ID: <569F9AF1.5080403@unstable.cc> (raw)
In-Reply-To: <1453296735-8319-1-git-send-email-sw@simonwunderlich.de>
[-- Attachment #1: Type: text/plain, Size: 1733 bytes --]
On 20/01/16 21:32, Simon Wunderlich wrote:
> static void batadv_v_ogm_forward(struct batadv_priv *bat_priv,
> const struct batadv_ogm2_packet *ogm_received,
> - u32 throughput,
> + struct batadv_neigh_node *neigh_node,
> struct batadv_hard_iface *if_incoming,
> struct batadv_hard_iface *if_outgoing)
> {
> + struct batadv_neigh_ifinfo *neigh_ifinfo = NULL;
> + struct batadv_orig_ifinfo *orig_ifinfo = NULL;
> + struct batadv_neigh_node *router = NULL;
> struct batadv_ogm2_packet *ogm_forward;
> unsigned char *skb_buff;
> struct sk_buff *skb;
> size_t packet_len;
> u16 tvlv_len;
>
> + /* only forward for specific interfaces, not for the default one. */
> + if (if_outgoing != BATADV_IF_DEFAULT)
> + goto out;
> +
personally I'd prefer the forward function to do what it says: forward
the OGM. The checks whether or not we should do this should stay in
ogm_process_per_outif().
> + orig_ifinfo = batadv_orig_ifinfo_new(orig_node, if_outgoing);
> + if (!orig_ifinfo)
> + goto out;
> + /* acquire possibly updated router */
> + router = batadv_orig_router_get(orig_node, if_outgoing);
> +
> + /* strict rule: forward packets coming from the best next hop only */
> + if (neigh_node != router)
> + goto out;
> +
this is changing the behaviour.
here now we get a router which potentially was elected during the
previous update_route() call while processing this very OGM. We are
still discussing if we want to do this or not, but this patch should be
just a style change, while this is not.
This check should be performed against the router which was selected
before performing any route update.
Cheers,
--
Antonio Quartulli
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]
next prev parent reply other threads:[~2016-01-20 14:34 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-01-20 13:32 [B.A.T.M.A.N.] [PATCH 1/2] batman-adv: move and restructure batadv_v_ogm_forward Simon Wunderlich
2016-01-20 13:32 ` [B.A.T.M.A.N.] [PATCH 2/2] batman-adv: Merge batadv_v_ogm_orig_update into batadv_v_ogm_route_update Simon Wunderlich
2016-01-20 14:34 ` Antonio Quartulli [this message]
2016-01-20 15:18 ` [B.A.T.M.A.N.] [PATCH 1/2] batman-adv: move and restructure batadv_v_ogm_forward Simon Wunderlich
2016-01-20 15:26 ` Antonio Quartulli
2016-01-20 15:29 ` Antonio Quartulli
2016-01-20 15:48 ` Simon Wunderlich
2016-01-20 15:31 ` Simon Wunderlich
2016-01-30 4:35 ` Marek Lindner
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=569F9AF1.5080403@unstable.cc \
--to=a@unstable.cc \
--cc=b.a.t.m.a.n@lists.open-mesh.org \
--cc=sw@simonwunderlich.de \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.