Skip to content

Commit

Permalink
bring in freeifaddrs.
Browse files Browse the repository at this point in the history
from: dab@bsdi.com
  • Loading branch information
itojun committed Feb 23, 2000
1 parent f666dee commit 3c79bf9
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 5 deletions.
3 changes: 2 additions & 1 deletion kame/include/ifaddrs.h
Expand Up @@ -20,7 +20,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* BSDI ifaddrs.h,v 2.4 1999/03/15 20:59:28 jch Exp
* BSDI ifaddrs.h,v 2.5 2000/02/23 14:51:59 dab Exp
*/

#ifndef _IFADDRS_H_
Expand Down Expand Up @@ -48,6 +48,7 @@ struct ifaddrs {

__BEGIN_DECLS
extern int getifaddrs __P((struct ifaddrs **));
extern void freeifaddrs __P((struct ifaddrs *));
__END_DECLS

#endif
7 changes: 4 additions & 3 deletions kame/kame/libinet6/getifaddrs.3
@@ -1,4 +1,4 @@
.\" BSDI getifaddrs.3,v 2.4 1999/03/15 20:57:20 jch Exp
.\" BSDI getifaddrs.3,v 2.5 2000/02/23 14:51:59 dab Exp
.\"
.\" Copyright (c) 1995, 1999
.\" Berkeley Software Design, Inc. All rights reserved.
Expand Down Expand Up @@ -31,6 +31,8 @@
.Fd #include <ifaddrs.h>
.Ft int
.Fn getifaddrs "struct ifaddrs **ifap"
.Ft void
.Fn freeifaddrs "struct ifaddrs *ifp"
.Sh DESCRIPTION
The
.Fn getifaddrs
Expand Down Expand Up @@ -119,8 +121,7 @@ which contains per-address interface statistics.
The data returned by
.Fn getifaddrs
is dynamically allocated and should be freed using
.Fn free
.Pq see Xr free 3
.Fn freeifaddrs
when no longer needed.
.Sh RETURN VALUES
Upon successful completion, a value of 0 is returned.
Expand Down
8 changes: 7 additions & 1 deletion kame/kame/libinet6/getifaddrs.c
Expand Up @@ -20,7 +20,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* BSDI getifaddrs.c,v 2.11 1999/03/15 20:57:20 jch Exp
* BSDI getifaddrs.c,v 2.12 2000/02/23 14:51:59 dab Exp
*/
/*
* NOTE: SIOCGIFCONF case is not LP64 friendly. it also does not perform
Expand Down Expand Up @@ -364,6 +364,12 @@ getifaddrs(struct ifaddrs **pif)
ift->ifa_next = NULL;
*pif = ifa;
} else {
}

void
freeifaddrs(struct ifaddrs *ifp)
{
free(ifp);
*pif = NULL;
free(ifa);
}
Expand Down

0 comments on commit 3c79bf9

Please sign in to comment.