*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->FreeBSD man pages -> getifmaddrs (3)              
Title
Content
Arch
Section
 

GETIFMADDRS(3)

Contents


NAME    [Toc]    [Back]

     getifmaddrs -- get multicast group memberships

SYNOPSIS    [Toc]    [Back]

     #include <sys/types.h>
     #include <sys/socket.h>
     #include <ifaddrs.h>

     int
     getifmaddrs(struct ifmaddrs **ifmap);

     void
     freeifmaddrs(struct ifmaddrs *ifmp);

DESCRIPTION    [Toc]    [Back]

     The getifmaddrs() function stores a reference to a linked list of the
     multicast memberships on the local machine in the memory referenced by
     ifmap.  The list consists of ifmaddrs structures, as defined in the
     include file <ifaddrs.h>.	The ifmaddrs structure contains at least the
     following entries:

	 struct ifmaddrs   *ifma_next;	   /* Pointer to next struct */
	 struct sockaddr   *ifma_name;	   /* Interface name (AF_LINK) */
	 struct sockaddr   *ifma_addr;	   /* Multicast address */
	 struct sockaddr   *ifma_lladdr;   /* Link-layer translation, if any */

     The ifma_next field contains a pointer to the next structure on the list.
     This field is NULL in last structure on the list.

     The ifma_name field references an AF_LINK address structure, containing
     the name of the interface where the membership exists.

     The ifma_addr references the address that this membership is for.

     The ifma_lladdr field references a link-layer translation for the protocol-level
 address in ifma_addr, if one is set, otherwise it is NULL.

     The data returned by getifmaddrs() is dynamically allocated and should be
     freed using freeifmaddrs() when no longer needed.

RETURN VALUES    [Toc]    [Back]

     The getifmaddrs() function returns the value 0 if successful; otherwise
     the value -1 is returned and the global variable errno is set to indicate
     the error.

ERRORS    [Toc]    [Back]

     The getifmaddrs() may fail and set errno for any of the errors specified
     for the library routines malloc(3) or sysctl(3).

BUGS    [Toc]    [Back]

     If both <net/if.h> and <ifaddrs.h> are being included, <net/if.h> must be
     included before <ifaddrs.h>.

SEE ALSO    [Toc]    [Back]

      
      
     sysctl(3), networking(4), ifconfig(8)

HISTORY    [Toc]    [Back]

     The getifmaddrs implementation first appeared in FreeBSD 5.2.


FreeBSD 5.2.1		       October 12, 1995 		 FreeBSD 5.2.1
[ Back ]
 Similar pages
Name OS Title
groups HP-UX show group memberships
groups IRIX show group memberships
groups OpenBSD show group memberships
groups FreeBSD show group memberships
ifmcstat FreeBSD dump multicast group management statistics per interface
multicast FreeBSD Multicast Routing
mrouted Tru64 IP multicast routing daemon
mrouted OpenBSD IP multicast routing daemon
map-mbone Tru64 Multicast connection mapper
map-mbone FreeBSD multicast connection mapper
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service