/*
 *  ip_utils.h
 *  ip2xxd
 *
 *  Created by Yves Arrouye on 1/31/12.
 *  Copyright (c) 2012 Yves Arrouye. All rights reserved.
 *
 */

#ifndef ip2xxd_ip_utils_h
#define ip2xxd_ip_utils_h

extern int get_first_if_up_with_mac_addr(sa_family_t sa_family, char *name, size_t *name_len);

extern int get_if_info(const char *if_name, sa_family_t sa_family, struct sockaddr *addr, struct sockaddr *netmask, struct sockaddr *dstaddr);

extern int get_if_mac_address(const char *name, unsigned char *mac, size_t *mac_len);
extern int get_addr_mac_address(struct in_addr addr, unsigned char *mac, size_t *mac_len);
extern int get_socket_mac_address(int socket, unsigned char *mac, size_t *mac_len);

#endif
