1 ! Copyright (C) 2016 John Benediktsson
2 ! See http://factorcode.org/license.txt for BSD license
3 USING: accessors alien.c-types alien.data alien.destructors
4 alien.syntax classes.struct destructors libc sequences sets
11 { sa_data char[14] } ;
17 { ifa_addr sockaddr* }
18 { ifa_netmask sockaddr* }
19 { ifa_dstaddr sockaddr* }
22 FUNCTION: int getifaddrs ( ifaddrs** ifap )
24 FUNCTION: void freeifaddrs ( ifaddrs* ifp )
26 DESTRUCTOR: freeifaddrs
28 : interface-names ( -- ifaddrs )
30 { void* } [ getifaddrs io-error ] with-out-parameters
31 &freeifaddrs ifaddrs deref
33 [ ifa_name>> ] map members natural-sort