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

  man pages->OpenBSD man pages -> if_freenameindex (3)              
Title
Content
Arch
Section
 

IF_NAMETOINDEX(3)

Contents


NAME    [Toc]    [Back]

     if_nametoindex,        if_indextoname,         if_nameindex,
if_freenameindex - convert
     interface index to name, and vice versa

SYNOPSIS    [Toc]    [Back]

     #include <net/if.h>

     unsigned int
     if_nametoindex(const char *ifname);

     char *
     if_indextoname(unsigned int ifindex, char *ifname);

     struct if_nameindex *
     if_nameindex(void);

     void
     if_freenameindex(struct if_nameindex *ptr);

DESCRIPTION    [Toc]    [Back]

     These  functions  map  interface  indexes to interface names
(such as
     ``lo0''), and vice versa.

     The if_nametoindex() function  converts  an  interface  name
specified by the
     ifname argument to an interface index (positive integer value).  If the
     specified interface does not exist, 0 will be returned.

     if_indextoname() converts an interface  index  specified  by
the ifindex argument
 to an interface name.  The ifname argument must point
to a buffer
     of at least IF_NAMESIZE bytes into which the interface  name
corresponding
     to  the  specified  index is returned.  (IF_NAMESIZE is also
defined in
     <net/if.h> and its value includes a terminating null byte at
the end of
     the  interface name.)  This pointer is also the return value
of the function.
  If there is no interface corresponding to the  specified index,
     NULL is returned.

     if_nameindex()  returns an array of if_nameindex structures.
     if_nametoindex is also defined in <net/if.h>, and is as follows:

     struct if_nameindex {
         unsigned int   if_index;  /* 1, 2, ... */
         char            *if_name;    /*  null  terminated  name:
"le0", ... */
     };

     The end of the array of structures is indicated by a  structure with an
     if_index  of 0 and an if_name of NULL.  The function returns
a null pointer
 on error.  The memory used for this array  of  structures
along with the
     interface  names  pointed  to  by the if_name members is obtained dynamically.
  This memory is freed by  the  if_freenameindex()  function.

     if_freenameindex()  takes  a  pointer  that  was returned by
if_nameindex() as
     argument (ptr), and it reclaims the region allocated.

DIAGNOSTICS    [Toc]    [Back]

     if_nametoindex() returns 0 on  error,  positive  integer  on
success.
     if_indextoname() and if_nameindex() return NULL on errors.

SEE ALSO    [Toc]    [Back]

      
      
     getifaddrs(3), networking(4)

     R.  Gilligan, S.  Thomson, J. Bound, and W. Stevens, ``Basic
Socket Interface
 Extensions for IPv6,'' RFC 2553, March 1999.

STANDARDS    [Toc]    [Back]

     These functions are defined in ``Basic Socket Interface  Extensions for
     IPv6'' (RFC 2533).

OpenBSD      3.6                           May      21,      1998
[ Back ]
 Similar pages
Name OS Title
extattr_namespace_to_string FreeBSD convert an extended attribute namespace identifier to a string and vice versa
extattr_string_to_namespace FreeBSD convert an extended attribute namespace identifier to a string and vice versa
extattr_string_to_namespace OpenBSD convert an extended attribute namespace identifier to a string and vice versa
extattr_namespace_to_string OpenBSD convert an extended attribute namespace identifier to a string and vice versa
extattr OpenBSD convert an extended attribute namespace identifier to a string and vice versa
extattr FreeBSD convert an extended attribute namespace identifier to a string and vice versa
expand HP-UX expand tabs to spaces, and vice versa
unexpand OpenBSD expand tabs to spaces, and vice versa
unexpand HP-UX expand tabs to spaces, and vice versa
expand FreeBSD expand tabs to spaces, and vice versa
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service