forked from enlightenment/efl
freebsd: eeze support if enabled.
ifr_netmask is not available on FreeBSD. On Linux ifr_addr is same union. Peter2121 did this work.
This commit is contained in:
parent
77a3b908ed
commit
b02cef69d1
|
@ -1,3 +1,3 @@
|
||||||
#!/bin/sh -e
|
#!/bin/sh -e
|
||||||
meson -Dsystemd=false -Dv4l2=false -Deeze=false \
|
meson -Dsystemd=false -Dv4l2=false -Deeze=false -Dinput=false \
|
||||||
$@ . build
|
$@ . build
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*FIXME: change OS specific value */
|
/*FIXME: change OS specific value */
|
||||||
#ifdef __linux__
|
#if defined(__linux__) || defined(__FreeBSD__)
|
||||||
# include <linux/joystick.h>
|
# include <linux/joystick.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -5,6 +5,7 @@
|
||||||
#include <arpa/inet.h>
|
#include <arpa/inet.h>
|
||||||
#include <sys/ioctl.h>
|
#include <sys/ioctl.h>
|
||||||
#include <net/if.h>
|
#include <net/if.h>
|
||||||
|
#include <netinet/in.h>
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#include <Eeze_Net.h>
|
#include <Eeze_Net.h>
|
||||||
|
|
||||||
|
@ -203,7 +204,7 @@ eeze_net_scan(Eeze_Net *net)
|
||||||
eina_stringshare_replace_length(&net->broadip, ip, INET_ADDRSTRLEN);
|
eina_stringshare_replace_length(&net->broadip, ip, INET_ADDRSTRLEN);
|
||||||
|
|
||||||
if (ioctl(sock, *i++, &ifr) < 0) goto error;
|
if (ioctl(sock, *i++, &ifr) < 0) goto error;
|
||||||
sa = (struct sockaddr_in*) & (ifr.ifr_netmask);
|
sa = (struct sockaddr_in*) & (ifr.ifr_addr);
|
||||||
inet_ntop(AF_INET, (struct in_addr*)&sa->sin_addr, ip, INET_ADDRSTRLEN);
|
inet_ntop(AF_INET, (struct in_addr*)&sa->sin_addr, ip, INET_ADDRSTRLEN);
|
||||||
eina_stringshare_replace_length(&net->netmask, ip, INET_ADDRSTRLEN);
|
eina_stringshare_replace_length(&net->netmask, ip, INET_ADDRSTRLEN);
|
||||||
|
|
||||||
|
@ -225,7 +226,7 @@ eeze_net_scan(Eeze_Net *net)
|
||||||
eina_stringshare_replace_length(&net->broadip6, ip6, INET6_ADDRSTRLEN);
|
eina_stringshare_replace_length(&net->broadip6, ip6, INET6_ADDRSTRLEN);
|
||||||
|
|
||||||
if (ioctl(sock, *i++, &ifr) < 0) goto error;
|
if (ioctl(sock, *i++, &ifr) < 0) goto error;
|
||||||
sa6 = (struct sockaddr_in6*) & (ifr.ifr_netmask);
|
sa6 = (struct sockaddr_in6*) & (ifr.ifr_addr);
|
||||||
inet_ntop(AF_INET6, (struct in6_addr*)&sa6->sin6_addr, ip6, INET6_ADDRSTRLEN);
|
inet_ntop(AF_INET6, (struct in6_addr*)&sa6->sin6_addr, ip6, INET6_ADDRSTRLEN);
|
||||||
eina_stringshare_replace_length(&net->netmask6, ip6, INET6_ADDRSTRLEN);
|
eina_stringshare_replace_length(&net->netmask6, ip6, INET6_ADDRSTRLEN);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue