Re: New Address Family: Inter Process Networking (IPN)

From: Stephen Hemminger
Date: Wed Dec 05 2007 - 16:57:04 EST


On Wed, 5 Dec 2007 17:40:55 +0100
renzo@xxxxxxxxxxx (Renzo Davoli) wrote:

>
> WHAT WE NEED FROM THE LINUX KERNEL COMMUNITY
> --------------------------------------------
> 0- (Constructive) comments.
>
> 1- The "official" assignment of an Address Family.
> (It is enough for everything but interface grabbing, see 2)
>
> in include/linux/net.h:
> - #define NPROTO 34 /* should be enough for now.. */
> + #define NPROTO 35 /* should be enough for now.. */
>
> in include/linux/socket.h
> + #define AF_IPN 34
> + #define PF_IPN AF_IPN
> - #define AF_MAX 34 /* For now.. */
> + #define AF_MAX 35 /* For now.. */
>
> This seems to be quite simple.
>
> 2- Another "grabbing hook" for interfaces (like the ones already
> existing for the kernel bridge and for the macvlan).
>
> In include/linux/netdevice.h:
> among the fields of struct net_device:
>
> /* bridge stuff */
> struct net_bridge_port *br_port;
> /* macvlan */
> struct macvlan_port *macvlan_port;
> + /* ipn */
> + struct ipn_node *ipn_port;
>
> /* class/net/name entry */
> struct device dev;
>
> In net/core/dev.c, we need another section for grabbing packets....
> like the ones defined for CONFIG_BRIDGE and CONFIG_MACVLAN.
> I can write the patch (it needs just tens of minutes of cut&paste).
> We are studying some way to register/deregister grabbing services,
> I feel this would be the cleanest way.
>
> WHERE?
> ------
> There is an experimental version in the VDE svn tree.
> http://sourceforge.net/projects/vde
>

Post complete source code for kernel part to netdev@xxxxxxxxxxxxxxxx
If you want the hooks, you need to include the full source code for inclusion
in mainline. All the Documentation/SubmittingPatches rules apply;
you can't just ask for "facilitators" and expect to keep your stuff out of tree.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/