:man| Alphabetical   Categories   About us 
 
GETIFMADDRS (3) | C library functions | Unix Manual Pages | :man

NAME

getifmaddrs - get multicast group memberships

CONTENTS

Synopsis
Description
Return Values
Errors
See Also
History
Bugs

SYNOPSIS


.In sys/types.h
.In sys/socket.h
.In ifaddrs.h int getifmaddrs "struct ifmaddrs **ifmap" void freeifmaddrs "struct ifmaddrs *ifmp"

DESCRIPTION

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
.Vt ifmaddrs structures, as defined in the include file
.In ifaddrs.h . The
.Vt 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


.Rv -std getifmaddrs

ERRORS

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

SEE ALSO

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

HISTORY

BUGS

 
Created by Blin Media, 2008-2013