• Jan Djärv's avatar
    Fix network-interface-list|info on newer BSD derived OS:es. · 377538cb
    Jan Djärv authored
    * configure.in: Add header check: sys/socket.h,
    ifaddrs.h, net/if_dl.h.  Check for getifaddrs and freeifaddrs.
    Check for sa_len in struct ifreq.ifr_addr (Bug#8477).
    
    * src/process.c: Include ifaddrs.h and net/if_dl.h if available (Bug#8477).
    (Fnetwork_interface_list): Allocate in increments of bytes instead
    of sizeof (struct ifreq).  Iterate over ifconf.ifc_req by counting
    bytes (Bug#8477).  Count bytes correctly when ifr_addr is a struct
    sockaddr.
    (struct ifflag_def): notrailers is smart on OSX.
    (Fnetwork_interface_info): Handle case when ifr_flags is negative.
    Get hardware address with getifaddrs if available.
    377538cb
process.c 213 KB