|
DTS Application Library
0.2.3
Application library containing referenced objects and interfaces to common libraries
|
Wrapper arround Linux libnetlink for managing network interfaces. More...
#include <netinet/in.h>#include <linux/if_vlan.h>#include <linux/if_ether.h>#include <linux/if_packet.h>#include <linux/if_tun.h>#include <linux/if_arp.h>#include <linux/sockios.h>#include <linux/if.h>#include <ifaddrs.h>#include <sys/ioctl.h>#include <netdb.h>#include <sys/time.h>#include <fcntl.h>#include <stdio.h>#include <stdint.h>#include <string.h>#include <unistd.h>#include "include/dtsapp.h"#include "libnetlink/include/libnetlink.h"#include "libnetlink/include/ll_map.h"#include "libnetlink/include/utils.h"Go to the source code of this file.
Data Structures | |
| struct | iplink_req |
| IP Netlink request. More... | |
| struct | ipaddr_req |
| IP Netlink IP addr request. More... | |
Enumerations | |
| enum | ipv4_score { IPV4_SCORE_ZEROCONF = 1 << 0, IPV4_SCORE_RESERVED = 1 << 1, IPV4_SCORE_ROUTABLE = 1 << 2 } |
| Order of precidence of ipv4. More... | |
| enum | ipv6_score { IPV6_SCORE_RESERVED = 1 << 0, IPV6_SCORE_SIXIN4 = 1 << 1, IPV6_SCORE_ROUTABLE = 1 << 2 } |
| Return best ipv6 address in order of FFC/7 2002/16 ... More... | |
Functions | |
| void | closenetlink () |
| Close netlink socket on application termination. More... | |
| int | get_iface_index (const char *ifname) |
| Get the netlink interface for a named interface. More... | |
| int | delete_kernvlan (char *ifname, int vid) |
| Delete a VLAN. More... | |
| int | create_kernvlan (char *ifname, unsigned short vid) |
| Create a VLAN on a interface. More... | |
| int | delete_kernmac (char *ifname) |
| Delete Kernel MAC VLAN. More... | |
| int | create_kernmac (char *ifname, char *macdev, unsigned char *mac) |
| Create a kernal MAC VLAN. More... | |
| int | set_interface_flags (int ifindex, int set, int clear) |
| Alter interface flags. More... | |
| int | set_interface_addr (int ifindex, const unsigned char *hwaddr) |
| Set interface MAC addr. More... | |
| int | set_interface_name (int ifindex, const char *name) |
| Rename interface. More... | |
| int | interface_bind (char *iface, int protocol) |
| Bind to device fd may be a existing socket. More... | |
| void | randhwaddr (unsigned char *addr) |
| create random MAC address More... | |
| int | create_tun (const char *ifname, const unsigned char *hwaddr, int flags) |
| Create a tunnel device. More... | |
| int | ifdown (const char *ifname, int flags) |
| Set interface down. More... | |
| int | ifup (const char *ifname, int flags) |
| Set interface up. More... | |
| int | ifrename (const char *oldname, const char *newname) |
| Rename interface helper. More... | |
| int | ifhwaddr (const char *ifname, unsigned char *hwaddr) |
| Get MAC addr for interface. More... | |
| int | set_interface_ipaddr (char *ifname, char *ipaddr) |
| Set IP addr on interface. More... | |
| void | eui48to64 (unsigned char *mac48, unsigned char *eui64) |
| Generate IPv6 address from mac address. More... | |
| int | get_ip6_addrprefix (const char *iface, unsigned char *prefix) |
| Generate Unique Local IPv6 Unicast Addresses RFC 4193. More... | |
| int | score_ipv4 (struct sockaddr_in *sa4, char *ipaddr, int iplen) |
| Return a score for a IPv4 addrress. More... | |
| int | score_ipv6 (struct sockaddr_in6 *sa6, char *ipaddr, int iplen) |
| Return a score for a IPv6 addrress. More... | |
| const char * | get_ifipaddr (const char *iface, int family) |
| Find best IP adress for a interface. More... | |
Wrapper arround Linux libnetlink for managing network interfaces.
Definition in file interface.c.