remove redundant ifdef's.

some part is specified by: phantom
This commit is contained in:
Yoshinobu Inoue 2000-01-07 10:02:43 +00:00
parent 2a6830d22e
commit 04e8772051
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=55543
9 changed files with 45 additions and 333 deletions

View File

@ -57,9 +57,7 @@
#include <sys/sysctl.h>
#include <net/if.h>
#if defined(__FreeBSD__) && __FreeBSD__ >= 3
#include <net/if_var.h>
#endif /* __FreeBSD__ >= 3 */
#include <net/if_dl.h>
#include <net/if_types.h>
#include <net/route.h>

View File

@ -40,23 +40,13 @@
#include <sys/types.h>
#include <sys/socket.h>
#include <net/if.h>
#if defined(__FreeBSD__) && __FreeBSD__ >= 3
# include <net/if_var.h>
#endif
#include <net/if_var.h>
#include <net/if_types.h>
#include <net/if_dl.h>
#include <netinet/in.h>
#ifndef __NetBSD__
# ifdef __FreeBSD__
# define _KERNEL
# endif
# include <netinet/if_ether.h>
# ifdef __FreeBSD__
# undef _KERNEL
# endif
#else
# include <net/if_ether.h>
#endif
#define _KERNEL
#include <netinet/if_ether.h>
#undef _KERNEL
#include <netinet/in_var.h>
#include <arpa/inet.h>
@ -72,21 +62,9 @@ const char *inet6_n2a __P((struct in6_addr *));
int main __P((void));
char *ifname __P((struct ifnet *));
void kread __P((u_long, void *, int));
#if !(defined(__FreeBSD__) && __FreeBSD__ >= 3)
void acmc __P((struct ether_multi *));
#endif
void if6_addrlist __P((struct ifaddr *));
void in6_multilist __P((struct in6_multi *));
struct in6_multi * in6_multientry __P((struct in6_multi *));
#if !defined(__NetBSD__) && !(defined(__FreeBSD__) && __FreeBSD__ >= 3) && !defined(__OpenBSD__)
#ifdef __bsdi__
struct ether_addr {
u_int8_t ether_addr_octet[6];
};
#endif
static char *ether_ntoa __P((struct ether_addr *));
#endif
void in6_multientry __P((struct in6_multi *));
#define KREAD(addr, buf, type) \
kread((u_long)addr, (void *)buf, sizeof(type))
@ -105,12 +83,7 @@ int main()
{
char buf[_POSIX2_LINE_MAX], ifname[IFNAMSIZ];
struct ifnet *ifp, *nifp, ifnet;
#ifndef __NetBSD__
struct arpcom arpcom;
#else
struct ethercom ec;
struct sockaddr_dl sdl;
#endif
if ((kvmd = kvm_openfiles(NULL, NULL, NULL, O_RDONLY, buf)) == NULL) {
perror("kvm_openfiles");
@ -128,47 +101,8 @@ int main()
while (ifp) {
KREAD(ifp, &ifnet, struct ifnet);
printf("%s:\n", if_indextoname(ifnet.if_index, ifname));
#if defined(__NetBSD__) || defined(__OpenBSD__)
if6_addrlist(ifnet.if_addrlist.tqh_first);
nifp = ifnet.if_list.tqe_next;
#elif defined(__FreeBSD__) && __FreeBSD__ >= 3
if6_addrlist(TAILQ_FIRST(&ifnet.if_addrhead));
nifp = ifnet.if_link.tqe_next;
#else
if6_addrlist(ifnet.if_addrlist);
nifp = ifnet.if_next;
#endif
#ifdef __NetBSD__
KREAD(ifnet.if_sadl, &sdl, struct sockaddr_dl);
if (sdl.sdl_type == IFT_ETHER) {
printf("\tenaddr %s",
ether_ntoa((struct ether_addr *)LLADDR(&sdl)));
KREAD(ifp, &ec, struct ethercom);
printf(" multicnt %d", ec.ec_multicnt);
acmc(ec.ec_multiaddrs.lh_first);
printf("\n");
}
#elif defined(__FreeBSD__) && __FreeBSD__ >= 3
/* not supported */
#else
if (ifnet.if_type == IFT_ETHER) {
KREAD(ifp, &arpcom, struct arpcom);
printf("\tenaddr %s",
ether_ntoa((struct ether_addr *)arpcom.ac_enaddr));
KREAD(ifp, &arpcom, struct arpcom);
printf(" multicnt %d", arpcom.ac_multicnt);
#ifdef __OpenBSD__
acmc(arpcom.ac_multiaddrs.lh_first);
#else
acmc(arpcom.ac_multiaddrs);
#endif
printf("\n");
}
#endif
ifp = nifp;
ifp = TAILQ_NEXT(&ifnet, if_link);
}
exit(0);
@ -180,11 +114,7 @@ char *ifname(ifp)
{
static char buf[BUFSIZ];
#if defined(__NetBSD__) || defined(__OpenBSD__)
KREAD(ifp->if_xname, buf, IFNAMSIZ);
#else
KREAD(ifp->if_name, buf, IFNAMSIZ);
#endif
return buf;
}
@ -199,107 +129,64 @@ void kread(addr, buf, len)
}
}
#if !(defined(__FreeBSD__) && __FreeBSD__ >= 3)
void acmc(am)
struct ether_multi *am;
{
struct ether_multi em;
while (am) {
KREAD(am, &em, struct ether_multi);
printf("\n\t\t");
printf("%s -- ", ether_ntoa((struct ether_addr *)em.enm_addrlo));
printf("%s ", ether_ntoa((struct ether_addr *)&em.enm_addrhi));
printf("%d", em.enm_refcount);
#if !defined(__NetBSD__) && !defined(__OpenBSD__)
am = em.enm_next;
#else
am = em.enm_list.le_next;
#endif
}
}
#endif
void
if6_addrlist(ifap)
struct ifaddr *ifap;
{
static char in6buf[BUFSIZ];
struct ifnet ifnet;
struct ifaddr ifa;
struct sockaddr sa;
struct in6_ifaddr if6a;
struct in6_multi *mc = 0;
#if defined(__FreeBSD__) && __FreeBSD__ >= 3
struct ifaddr *ifap0;
#endif /* __FreeBSD__ >= 3 */
struct ifmultiaddr ifm, *ifmp = 0;
struct in6_ifaddr if6a;
struct in6_multi *mc = 0, in6m;
int in6_multilist_done = 0;
struct sockaddr sa;
struct sockaddr_in6 sin6;
struct sockaddr_dl sdl;
#if defined(__FreeBSD__) && __FreeBSD__ >= 3
if (ifap == NULL)
return;
ifap0 = ifap;
#endif /* __FreeBSD__ >= 3 */
while (ifap) {
do {
KREAD(ifap, &ifa, struct ifaddr);
if (ifa.ifa_addr == NULL)
goto nextifap;
continue;
KREAD(ifa.ifa_addr, &sa, struct sockaddr);
if (sa.sa_family != PF_INET6)
goto nextifap;
continue;
KREAD(ifap, &if6a, struct in6_ifaddr);
printf("\tinet6 %s\n",
inet_ntop(AF_INET6,
(const void *)&if6a.ia_addr.sin6_addr,
in6buf, sizeof(in6buf)));
#if !(defined(__FreeBSD__) && __FreeBSD__ >= 3)
mc = mc ? mc : if6a.ia6_multiaddrs.lh_first;
#endif
nextifap:
#if defined(__NetBSD__) || defined(__OpenBSD__)
ifap = ifa.ifa_list.tqe_next;
#elif defined(__FreeBSD__) && __FreeBSD__ >= 3
ifap = ifa.ifa_link.tqe_next;
#else
ifap = ifa.ifa_next;
#endif /* __FreeBSD__ >= 3 */
}
#if defined(__FreeBSD__) && __FreeBSD__ >= 3
if (ifap0) {
struct ifnet ifnet;
struct ifmultiaddr ifm, *ifmp = 0;
struct sockaddr_in6 sin6;
struct in6_multi in6m;
struct sockaddr_dl sdl;
int in6_multilist_done = 0;
} while ((ifap = TAILQ_NEXT(&ifa, ifa_link)) != NULL);
KREAD(ifap0, &ifa, struct ifaddr);
KREAD(ifa.ifa_ifp, &ifnet, struct ifnet);
if (ifnet.if_multiaddrs.lh_first)
ifmp = ifnet.if_multiaddrs.lh_first;
while (ifmp) {
KREAD(ifmp, &ifm, struct ifmultiaddr);
if (ifm.ifma_addr == NULL)
goto nextmulti;
KREAD(ifm.ifma_addr, &sa, struct sockaddr);
if (sa.sa_family != AF_INET6)
goto nextmulti;
(void)in6_multientry((struct in6_multi *)
ifm.ifma_protospec);
if (ifm.ifma_lladdr == 0)
goto nextmulti;
KREAD(ifm.ifma_lladdr, &sdl, struct sockaddr_dl);
printf("\t\t\tmcast-macaddr %s multicnt %d\n",
ether_ntoa((struct ether_addr *)LLADDR(&sdl)),
ifm.ifma_refcount);
nextmulti:
ifmp = ifm.ifma_link.le_next;
}
}
#else
if (mc)
in6_multilist(mc);
#endif
KREAD(ifap0, &ifa, struct ifaddr);
KREAD(ifa.ifa_ifp, &ifnet, struct ifnet);
if (ifnet.if_multiaddrs.lh_first)
ifmp = ifnet.if_multiaddrs.lh_first;
if (ifmp == NULL)
return;
do {
KREAD(ifmp, &ifm, struct ifmultiaddr);
if (ifm.ifma_addr == NULL)
continue;
KREAD(ifm.ifma_addr, &sa, struct sockaddr);
if (sa.sa_family != AF_INET6)
continue;
in6_multientry((struct in6_multi *)ifm.ifma_protospec);
if (ifm.ifma_lladdr == 0)
continue;
KREAD(ifm.ifma_lladdr, &sdl, struct sockaddr_dl);
printf("\t\t\tmcast-macaddr %s multicnt %d\n",
ether_ntoa((struct ether_addr *)LLADDR(&sdl)),
ifm.ifma_refcount);
} while ((ifmp = LIST_NEXT(&ifm, ifma_link)) != NULL);
}
struct in6_multi *
void
in6_multientry(mc)
struct in6_multi *mc;
{
@ -310,29 +197,4 @@ in6_multientry(mc)
printf("\t\tgroup %s\n", inet_ntop(AF_INET6,
(const void *)&multi.in6m_addr,
mcbuf, sizeof(mcbuf)));
return(multi.in6m_entry.le_next);
}
void
in6_multilist(mc)
struct in6_multi *mc;
{
while (mc)
mc = in6_multientry(mc);
}
#if !defined(__NetBSD__) && !(defined(__FreeBSD__) && __FreeBSD__ >= 3) && !defined(__OpenBSD__)
static char *
ether_ntoa(e)
struct ether_addr *e;
{
static char buf[20];
u_char *p;
p = (u_char *)e;
snprintf(buf, sizeof(buf), "%02x:%02x:%02x:%02x:%02x:%02x",
p[0], p[1], p[2], p[3], p[4], p[5]);
return buf;
}
#endif

View File

@ -36,9 +36,7 @@
#include <sys/time.h>
#include <net/if.h>
#if defined(__FreeBSD__) && __FreeBSD__ >= 3
#include <net/if_var.h>
#endif /* __FreeBSD__ >= 3 */
#include <net/if_dl.h>
#include <net/if_types.h>
#include <net/route.h>

View File

@ -41,9 +41,7 @@
#include <sys/types.h>
#include <sys/socket.h>
#include <net/if.h>
#if defined(__FreeBSD__) && __FreeBSD__ >= 3
#include <net/if_var.h>
#endif /* __FreeBSD__ >= 3 */
#include <netinet/in.h>
#include <netinet/in_var.h>
#include <arpa/inet.h>

View File

@ -4,6 +4,6 @@
PROG= route6d
MAN8= route6d.8
CFLAGS+= -Dss_len=__ss_len -Dss_family=__ss_family -DADVAPI -DINET6
CFLAGS+= -Dss_len=__ss_len -Dss_family=__ss_family -DINET6
.include <bsd.prog.mk>

View File

@ -60,16 +60,10 @@ static char _rcsid[] = "$Id: route6d.c,v 1.6 1999/09/10 08:20:59 itojun Exp $";
#include <sys/ioctl.h>
#include <sys/sysctl.h>
#include <sys/errno.h>
#ifdef ADVAPI
#include <sys/uio.h>
#endif
#include <net/if.h>
#if defined(__FreeBSD__) && __FreeBSD__ >= 3
#include <net/if_var.h>
#endif /* __FreeBSD__ >= 3 */
#define KERNEL 1
#include <net/route.h>
#undef KERNEL
#include <netinet/in.h>
#include <netinet/in_var.h>
#include <netinet/ip6.h>
@ -357,15 +351,8 @@ main(argc, argv)
ifrtdump(0);
if (dflag == 0) {
#if 1
if (daemon(0, 0) < 0)
fatal("daemon");
#else
if (fork())
exit(0);
if (setsid() < 0)
fatal("setid");
#endif
}
pid = getpid();
if ((pidfile = fopen(ROUTE6D_PID, "w")) != NULL) {
@ -509,9 +496,7 @@ ripalarm(sig)
void
init()
{
#ifdef ADVAPI
int i;
#endif
int int0, int255, error;
struct addrinfo hints, *res;
char port[10];
@ -544,11 +529,9 @@ init()
if (setsockopt(ripsock, IPPROTO_IPV6, IPV6_MULTICAST_LOOP,
&int0, sizeof(int0)) < 0)
fatal("rip IPV6_MULTICAST_LOOP");
#ifdef ADVAPI
i = 1;
if (setsockopt(ripsock, IPPROTO_IPV6, IPV6_PKTINFO, &i, sizeof(i)) < 0)
fatal("rip IPV6_PKTINFO");
#endif /*ADVAPI*/
memset(&hints, 0, sizeof(hints));
hints.ai_family = PF_INET6;
@ -811,7 +794,6 @@ sendpacket(sin, len)
* RIP6_REQUEST message. SO_DONTROUTE has been specified to
* other sockets.
*/
#ifdef ADVAPI
struct msghdr m;
struct cmsghdr *cm;
struct iovec iov[2];
@ -858,13 +840,6 @@ sendpacket(sin, len)
trace(1, "sendmsg: %s\n", strerror(errno));
return errno;
}
#else
if (sendto(ripsock, ripbuf, len, 0 /*MSG_DONTROUTE*/,
(struct sockaddr *)sin, sizeof(struct sockaddr_in6)) < 0) {
trace(1, "sendto: %s\n", strerror(errno));
return errno;
}
#endif
return 0;
}
@ -882,24 +857,18 @@ riprecv()
struct netinfo6 *np, *nq;
struct riprt *rrt;
int len, nn, need_trigger, index;
#ifndef ADVAPI
int flen;
#endif
char buf[4 * RIP6_MAXMTU];
time_t t;
#ifdef ADVAPI
struct msghdr m;
struct cmsghdr *cm;
struct iovec iov[2];
u_char cmsgbuf[256];
struct in6_pktinfo *pi;
#endif /*ADVAPI*/
struct iff *iffp;
struct in6_addr ia;
int ok;
need_trigger = 0;
#ifdef ADVAPI
m.msg_name = (caddr_t)&fsock;
m.msg_namelen = sizeof(fsock);
iov[0].iov_base = (caddr_t)buf;
@ -924,16 +893,6 @@ riprecv()
}
if (index && IN6_IS_ADDR_LINKLOCAL(&fsock.sin6_addr))
SET_IN6_LINKLOCAL_IFINDEX(fsock.sin6_addr, index);
#else
flen = sizeof(struct sockaddr_in6);
if ((len = recvfrom(ripsock, buf, sizeof(buf), 0,
(struct sockaddr *)&fsock, &flen)) < 0)
fatal("recvfrom");
if (IN6_IS_ADDR_LINKLOCAL(&fsock.sin6_addr))
index = IN6_LINKLOCAL_IFINDEX(fsock.sin6_addr);
else
index = 0;
#endif /*ADVAPI*/
nh = fsock.sin6_addr;
nn = (len - sizeof(struct rip6) + sizeof(struct netinfo6)) /

View File

@ -35,23 +35,12 @@
#include <sys/ioctl.h>
#include <net/if.h>
#if defined(__FreeBSD__) && __FreeBSD__ >= 3
#include <net/if_var.h>
#endif /* __FreeBSD__ >= 3 */
#include <net/if_types.h>
#include <net/route.h>
#include <net/if_dl.h>
#include <net/if_media.h>
#ifdef __FreeBSD__
# include <net/ethernet.h>
#endif
#ifdef __NetBSD__
#include <net/if_ether.h>
#endif
#if defined(__bsdi__) || defined(__OpenBSD__)
# include <netinet/in.h>
# include <netinet/if_ether.h>
#endif
#include <net/ethernet.h>
#include <netinet/in.h>
#include <netinet/icmp6.h>
@ -359,13 +348,7 @@ getifa(char *name, struct in6_ifaddr *ifap)
KREAD(ifp, &ifnet, struct ifnet);
if (ifnet.if_index == index)
break;
#if defined(__NetBSD__) || defined(__OpenBSD__)
ifp = TAILQ_NEXT(&ifnet, if_list);
#elif defined(__FreeBSD__) && __FreeBSD__ >= 3
ifp = TAILQ_NEXT(&ifnet, if_link);
#else
ifp = ifnet.if_next;
#endif
}
if (!ifp) {
warnmsg(LOG_ERR, __FUNCTION__, "interface \"%s\" not found",
@ -373,13 +356,7 @@ getifa(char *name, struct in6_ifaddr *ifap)
goto bad;
}
#if defined(__NetBSD__) || defined(__OpenBSD__)
ifa = (struct in6_ifaddr *)TAILQ_FIRST(&ifnet.if_addrlist);
#elif defined(__FreeBSD__) && __FreeBSD__ >= 3
ifa = (struct in6_ifaddr *)TAILQ_FIRST(&ifnet.if_addrhead);
#else
ifa = (struct in6_ifaddr *)ifnet.if_addrlist;
#endif
while (ifa) {
KREAD(ifa, ifap, *ifap);
if (ifap->ia_addr.sin6_family == AF_INET6
@ -388,15 +365,8 @@ getifa(char *name, struct in6_ifaddr *ifap)
return 0;
}
#if defined(__NetBSD__) || defined(__OpenBSD__)
ifa = (struct in6_ifaddr *)
TAILQ_NEXT((struct ifaddr *)ifap, ifa_list);
#elif defined(__FreeBSD__) && __FreeBSD__ >= 3
ifa = (struct in6_ifaddr *)
TAILQ_NEXT((struct ifaddr *)ifap, ifa_link);
#else
ifa = (struct in6_ifaddr *)(((struct ifaddr *)ifap)->ifa_next);
#endif
}
warnmsg(LOG_ERR, __FUNCTION__, "no IPv6 link-local address for %s",
name);

View File

@ -36,9 +36,7 @@
#include <sys/uio.h>
#include <net/if.h>
#if defined(__FreeBSD__) && __FreeBSD__ >= 3
#include <net/if_var.h>
#endif /* __FreeBSD__ >= 3 */
#include <netinet/in.h>
#include <netinet6/in6_var.h>

View File

@ -442,11 +442,7 @@ main(argc, argv)
if (argc < 1)
usage();
#if 1
setvbuf(stdout, NULL, _IOLBF, BUFSIZ);
#else
setlinebuf (stdout);
#endif
(void) bzero((char *)dst, sizeof(Dst));
Dst.sin6_family = AF_INET6;
@ -524,26 +520,6 @@ main(argc, argv)
errx(1, ipsec_strerror());
if (setpolicy(rcvsock, "out bypass") < 0)
errx(1, ipsec_strerror());
#else
{
int level = IPSEC_LEVEL_NONE;
(void)setsockopt(rcvsock, IPPROTO_IPV6, IPV6_ESP_TRANS_LEVEL, &level,
sizeof(level));
(void)setsockopt(rcvsock, IPPROTO_IPV6, IPV6_ESP_NETWORK_LEVEL, &level,
sizeof(level));
#ifdef IP_AUTH_TRANS_LEVEL
(void)setsockopt(rcvsock, IPPROTO_IPV6, IPV6_AUTH_TRANS_LEVEL, &level,
sizeof(level));
#else
(void)setsockopt(rcvsock, IPPROTO_IPV6, IPV6_AUTH_LEVEL, &level,
sizeof(level));
#endif
#ifdef IP_AUTH_NETWORK_LEVEL
(void)setsockopt(rcvsock, IPPROTO_IPV6, IPV6_AUTH_NETWORK_LEVEL, &level,
sizeof(level));
#endif
}
#endif /*IPSEC_POLICY_IPSEC*/
#endif /*IPSEC*/
@ -554,13 +530,11 @@ main(argc, argv)
perror("traceroute6: udp socket");
exit(5);
}
#ifdef SO_SNDBUF
if (setsockopt(sndsock, SOL_SOCKET, SO_SNDBUF, (char *)&datalen,
sizeof(datalen)) < 0) {
perror("traceroute6: SO_SNDBUF");
exit(6);
}
#endif /* SO_SNDBUF */
if (options & SO_DEBUG)
(void) setsockopt(sndsock, SOL_SOCKET, SO_DEBUG,
(char *)&on, sizeof(on));
@ -582,26 +556,6 @@ main(argc, argv)
errx(1, ipsec_strerror());
if (setpolicy(sndsock, "out bypass") < 0)
errx(1, ipsec_strerror());
#else
{
int level = IPSEC_LEVEL_BYPASS;
(void)setsockopt(sndsock, IPPROTO_IPV6, IPV6_ESP_TRANS_LEVEL, &level,
sizeof(level));
(void)setsockopt(sndsock, IPPROTO_IPV6, IPV6_ESP_NETWORK_LEVEL, &level,
sizeof(level));
#ifdef IP_AUTH_TRANS_LEVEL
(void)setsockopt(sndsock, IPPROTO_IPV6, IPV6_AUTH_TRANS_LEVEL, &level,
sizeof(level));
#else
(void)setsockopt(sndsock, IPPROTO_IPV6, IPV6_AUTH_LEVEL, &level,
sizeof(level));
#endif
#ifdef IP_AUTH_NETWORK_LEVEL
(void)setsockopt(sndsock, IPPROTO_IPV6, IPV6_AUTH_NETWORK_LEVEL, &level,
sizeof(level));
#endif
}
#endif /*IPSEC_POLICY_IPSEC*/
#endif /*IPSEC*/
@ -896,24 +850,6 @@ packet_ok(mhdr, cc, seq)
struct cmsghdr *cm;
int *hlimp;
#ifdef OLDRAWSOCKET
int hlen;
struct ip6_hdr *ip;
#endif
#ifdef OLDRAWSOCKET
ip = (struct ip6_hdr *) buf;
hlen = sizeof(struct ip6_hdr);
if (cc < hlen + sizeof(struct icmp6_hdr)) {
if (verbose)
Printf("packet too short (%d bytes) from %s\n", cc,
inet_ntop(AF_INET6, &from->sin6_addr,
ntop_buf, sizeof(ntop_buf)));
return (0);
}
cc -= hlen;
icp = (struct icmp6_hdr *)(buf + hlen);
#else
if (cc < sizeof(struct icmp6_hdr)) {
if (verbose)
Printf("data too short (%d bytes) from %s\n", cc,
@ -922,7 +858,6 @@ packet_ok(mhdr, cc, seq)
return(0);
}
icp = (struct icmp6_hdr *)buf;
#endif
/* get optional information via advanced API */
rcvpktinfo = NULL;
hlimp = NULL;
@ -1046,15 +981,9 @@ print(mhdr, cc)
}
if (verbose) {
#ifdef OLDRAWSOCKET
Printf(" %d bytes to %s", cc,
inet_ntop(AF_INET6, &rcvpktinfo->ipi6_addr,
ntop_buf, sizeof(ntop_buf)));
#else
Printf(" %d bytes of data to %s", cc,
inet_ntop(AF_INET6, &rcvpktinfo->ipi6_addr,
ntop_buf, sizeof(ntop_buf)));
#endif
}
}