Re: [B.A.T.M.A.N.] [RFC 3/6] batman-adv: Adds IPv6 to DAT and generic struct in distributed-arp-table.c

Antonio Quartulli
2013-08-10T11:14:35Z

[-- Attachment #1: Type: text/plain, Size: 3377 bytes --]

On Mon, Jul 08, 2013 at 03:12:42AM +0300, mihail.costea2005@gmail.com wrote:
> From: Mihail Costea <mihail.costea90@gmail.com>
>
> Adds IPv6 functionality to the generic struct.

You can be a bit more verbose here :)
Not everybody will understand what this patch is meant for.

>
> Signed-off-by: Mihail Costea <mihail.costea90@gmail.com>
> Signed-off-by: Stefan Popa <Stefan.A.Popa@intel.com>
> Reviewed-by: Stefan Popa <Stefan.A.Popa@intel.com>
>
> ---
> distributed-arp-table.c | 12 +++++++++---
> distributed-arp-table.h | 2 +-
> types.h | 6 +++++-
> 3 files changed, 15 insertions(+), 5 deletions(-)
>
> diff --git a/distributed-arp-table.c b/distributed-arp-table.c
> index b2a4fe5..f941913 100644
> --- a/distributed-arp-table.c
> +++ b/distributed-arp-table.c
> @@ -36,6 +36,12 @@ static struct batadv_dat_type_info batadv_dat_types_info[] = {
> .size = sizeof(__be32),
> .str_fmt = "%pI4",
> },
> +#if IS_ENABLED(CONFIG_IPV6)
> + {
> + .size = sizeof(struct in6_addr),
> + .str_fmt = "%pI6c",
> + },
> +#endif
> };
>
> static void batadv_dat_purge(struct work_struct *work);
> @@ -845,8 +851,8 @@ int batadv_dat_cache_seq_print_text(struct seq_file *seq, void *offset)
> goto out;
>
> seq_printf(seq, "Distributed ARP Table (%s):\n", net_dev->name);
> - seq_printf(seq, " %-7s %-13s %5s\n", "IPv4", "MAC",
> - "last-seen");
> + seq_printf(seq, " %-26s %-15s %5s\n",
> + "IPv4/IPv6", "MAC", "last-seen");
>

At this point I'd suggest to switch from "IPv4/IPv6" to "Key".

> for (i = 0; i < hash->size; i++) {
> head = &hash->table[i];
> @@ -859,7 +865,7 @@ int batadv_dat_cache_seq_print_text(struct seq_file *seq, void *offset)
> last_seen_msecs = last_seen_msecs % 60000;
> last_seen_secs = last_seen_msecs / 1000;
>
> - seq_printf(seq, " * %15s %14pM %6i:%02i\n",
> + seq_printf(seq, " * %40s %15pM %6i:%02i\n",
> batadv_dat_data_to_str(dat_entry->data,
> dat_entry->type,
> dbg_data,
> diff --git a/distributed-arp-table.h b/distributed-arp-table.h
> index 21d7b24..d029b4b 100644
> --- a/distributed-arp-table.h
> +++ b/distributed-arp-table.h
> @@ -28,7 +28,7 @@
> #include <linux/if_arp.h>
>
> #define BATADV_DAT_ADDR_MAX ((batadv_dat_addr_t)~(batadv_dat_addr_t)0)
> -#define BATADV_DAT_DATA_MAX_LEN 16
> +#define BATADV_DAT_DATA_MAX_LEN 40
>
> void batadv_dat_status_update(struct net_device *net_dev);
> bool batadv_dat_snoop_outgoing_pkt_request(struct batadv_priv *bat_priv,
> diff --git a/types.h b/types.h
> index 69c187e..60d2d64 100644
> --- a/types.h
> +++ b/types.h
> @@ -953,10 +953,14 @@ struct batadv_dat_entry {
>
> /**
> * batadv_dat_types - types used in batadv_dat_entry for IP
> - * @BATADV_DAT_IPv4: IPv4 address type
> + * @BATADV_DAT_IPV4: IPv4 address type

You should use the correct string in the previous patch already (I think you
overlooked the comment while fixing the var names).

> + * @BATADV_DAT_IPV6: IPv6 address type
> */
> enum batadv_dat_types {
> BATADV_DAT_IPV4 = 0,
> +#if IS_ENABLED(CONFIG_IPV6)
> + BATADV_DAT_IPV6 = 1,
> +#endif
> };
>
> /**
> --
> 1.7.10.4

--
Antonio Quartulli

..each of us alone is worth nothing..
Ernesto "Che" Guevara

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 836 bytes --]