summaryrefslogtreecommitdiff
path: root/xutils.c
diff options
context:
space:
mode:
authorDaniel Borkmann <dborkman@redhat.com>2013-06-04 10:46:38 +0200
committerDaniel Borkmann <dborkman@redhat.com>2013-06-04 10:47:28 +0200
commit23bd5ecbd11766088784507a56e32975b4c755a2 (patch)
tree86dc0078bac5d8a0d21cfd39ac72278e94e8173a /xutils.c
parentac5fd9168efaa4e149340340805b1be7425d8834 (diff)
xutils: move device management functions out of xutils
Move those functions out so that they can be more easily maintained in its separate file. Signed-off-by: Daniel Borkmann <dborkman@redhat.com>
Diffstat (limited to 'xutils.c')
-rw-r--r--xutils.c160
1 files changed, 0 insertions, 160 deletions
diff --git a/xutils.c b/xutils.c
index 991ff5b..28900cb 100644
--- a/xutils.c
+++ b/xutils.c
@@ -391,156 +391,6 @@ int ethtool_drvinf(const char *ifname, struct ethtool_drvinfo *drvinf)
return ret;
}
-u32 device_bitrate(const char *ifname)
-{
- u32 speed_c, speed_w;
-
- speed_c = ethtool_bitrate(ifname);
- speed_w = wireless_bitrate(ifname);
-
- return (speed_c == 0 ? speed_w : speed_c);
-}
-
-int device_ifindex(const char *ifname)
-{
- int ret, sock, index;
- struct ifreq ifr;
-
- if (!strncmp("any", ifname, strlen("any")))
- return 0;
-
- sock = af_socket(AF_INET);
-
- memset(&ifr, 0, sizeof(ifr));
- strlcpy(ifr.ifr_name, ifname, IFNAMSIZ);
-
- ret = ioctl(sock, SIOCGIFINDEX, &ifr);
- if (!ret)
- index = ifr.ifr_ifindex;
- else
- index = -1;
-
- close(sock);
-
- return index;
-}
-
-static int __device_address6(const char *ifname, struct sockaddr_storage *ss)
-{
- int ret, family, found = -EINVAL;
- struct ifaddrs *ifaddr, *ifa;
-
- ret = getifaddrs(&ifaddr);
- if (ret < 0)
- panic("Cannot get device addresses for IPv6!\n");
-
- for (ifa = ifaddr; ifa != NULL; ifa = ifa->ifa_next) {
- family = ifa->ifa_addr->sa_family;
- if (family != AF_INET6)
- continue;
- if (strcmp(ifa->ifa_name, ifname))
- continue;
-
- memcpy(ss, ifa->ifa_addr, sizeof(*ss));
- found = 0;
- break;
- }
-
- freeifaddrs(ifaddr);
- return found;
-}
-
-int device_address(const char *ifname, int af, struct sockaddr_storage *ss)
-{
- int ret, sock;
- struct ifreq ifr;
-
- if (!ss)
- return -EINVAL;
- if (!strncmp("any", ifname, strlen("any")))
- return -EINVAL;
- if (af == AF_INET6)
- return __device_address6(ifname, ss);
-
- sock = af_socket(af);
-
- memset(&ifr, 0, sizeof(ifr));
- strlcpy(ifr.ifr_name, ifname, IFNAMSIZ);
-
- ifr.ifr_addr.sa_family = af;
-
- ret = ioctl(sock, SIOCGIFADDR, &ifr);
- if (!ret)
- memcpy(ss, &ifr.ifr_addr, sizeof(ifr.ifr_addr));
-
- close(sock);
-
- return ret;
-}
-
-int device_mtu(const char *ifname)
-{
- int ret, sock, mtu;
- struct ifreq ifr;
-
- sock = af_socket(AF_INET);
-
- memset(&ifr, 0, sizeof(ifr));
- strlcpy(ifr.ifr_name, ifname, IFNAMSIZ);
-
- ret = ioctl(sock, SIOCGIFMTU, &ifr);
- if (!ret)
- mtu = ifr.ifr_mtu;
- else
- mtu = 0;
-
- close(sock);
-
- return mtu;
-}
-
-short device_get_flags(const char *ifname)
-{
- /* Really, it's short! Look at struct ifreq */
- short flags;
- int ret, sock;
- struct ifreq ifr;
-
- sock = af_socket(AF_INET);
-
- memset(&ifr, 0, sizeof(ifr));
- strlcpy(ifr.ifr_name, ifname, IFNAMSIZ);
-
- ret = ioctl(sock, SIOCGIFFLAGS, &ifr);
- if (!ret)
- flags = ifr.ifr_flags;
- else
- flags = 0;
-
- close(sock);
-
- return flags;
-}
-
-void device_set_flags(const char *ifname, const short flags)
-{
- int ret, sock;
- struct ifreq ifr;
-
- sock = af_socket(AF_INET);
-
- memset(&ifr, 0, sizeof(ifr));
- strlcpy(ifr.ifr_name, ifname, IFNAMSIZ);
-
- ifr.ifr_flags = flags;
-
- ret = ioctl(sock, SIOCSIFFLAGS, &ifr);
- if (ret < 0)
- panic("Cannot set NIC flags!\n");
-
- close(sock);
-}
-
void register_signal(int signal, void (*handler)(int))
{
sigset_t block_mask;
@@ -569,16 +419,6 @@ void register_signal_f(int signal, void (*handler)(int), int flags)
sigaction(signal, &saction, NULL);
}
-int device_up_and_running(char *ifname)
-{
- if (!ifname)
- return -EINVAL;
- if (!strncmp("any", ifname, strlen("any")))
- return 1;
-
- return (device_get_flags(ifname) & (IFF_UP | IFF_RUNNING)) == (IFF_UP | IFF_RUNNING);
-}
-
void cpu_affinity(int cpu)
{
int ret;