Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.os.linux.embedded > #364

adding new address families (AF_xxx)

From "Mark" <mark_cruzNOTFORSPAM@hotmail.com>
Newsgroups comp.unix.programmer, comp.os.linux.embedded
Subject adding new address families (AF_xxx)
Date 2012-11-07 17:48 -0500
Organization Aioe.org NNTP Server
Message-ID <k7eofp$5n8$1@speranza.aioe.org> (permalink)

Cross-posted to 2 groups.

Show all headers | View raw


Hello,

I came across the kernel driver code implementing some sort of IGMP snooping
backend and as part of its functionalilty it creates a new socket address
family, AF_IGMPSNOOP, but actually implements just a few operations for this
type of socket:

static struct proto_ops igmp_snoop_ops = {
   family:       AF_IGMP_SNOOP,
   release:      _igmp_snoop_sock_release,
   bind:         sock_no_bind,
   connect:      sock_no_connect,
   socketpair:   sock_no_socketpair,
   accept:       sock_no_accept,
   getname:      sock_no_getname,
   poll:         datagram_poll,
   ioctl:        sock_no_ioctl,
   listen:       sock_no_listen,
   shutdown:     sock_no_shutdown,
   setsockopt:   _igmp_snoop_setsockopt,
   getsockopt:   sock_no_getsockopt,
   sendmsg:      _igmp_snoop_sock_sendmsg,
   recvmsg:      _igmp_snoop_sock_recvmsg,
   mmap:         sock_no_mmap,
   sendpage:     sock_no_sendpage,
}

However from a user space perspective a socket is created as:

fd = socket (AF_IGMPSNOOP, SOCK_RAW, IPPROTO_IGMP)

I'm wondering what is the rationale for adding a new family, while in fact a
raw socket is being used to access the stack for IGMP packets? Would not it
be the same to just create AF_INET raw socket and do the things?

Looking forward to hearing form you !
Thanks.

Mark 

Back to comp.os.linux.embedded | Previous | NextNext in thread | Find similar


Thread

adding new address families (AF_xxx) "Mark" <mark_cruzNOTFORSPAM@hotmail.com> - 2012-11-07 17:48 -0500
  Re: adding new address families (AF_xxx) Les Cargill <lcargill99@comcast.com> - 2012-11-07 22:49 -0600
    Re: adding new address families (AF_xxx) "Mark" <mark_cruzNOTFORSPAM@hotmail.com> - 2012-11-08 08:11 -0500
      Re: adding new address families (AF_xxx) Les Cargill <lcargill99@comcast.com> - 2012-11-08 21:03 -0600

csiph-web