mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-14 21:39:38 +00:00
build: remove AIX, NEC EWS and IRIX
Valar morghulis. Signed-off-by: David Lamparter <equinox@opensourcerouting.org> Acked-by: Greg Troxel <gdt@ir.bbn.com> Acked-by: Feng Lu <lu.feng@6wind.com> Acked-by: Paul Jakma <paul@jakma.org>
This commit is contained in:
parent
35c4bf71e5
commit
a4247f4b69
29
configure.ac
29
configure.ac
@ -653,23 +653,10 @@ case "$host" in
|
||||
opsys=gnu-linux
|
||||
AC_DEFINE(GNU_LINUX,,GNU Linux)
|
||||
;;
|
||||
*-nec-sysv4*)
|
||||
AC_CHECK_LIB(nsl, gethostbyname)
|
||||
AC_CHECK_LIB(socket, socket)
|
||||
;;
|
||||
*-openbsd*)
|
||||
opsys=openbsd
|
||||
AC_DEFINE(OPEN_BSD,,OpenBSD)
|
||||
;;
|
||||
*-bsdi*)
|
||||
opsys=bsdi
|
||||
OTHER_METHOD="mtu_kvm.o"
|
||||
AC_CHECK_LIB(kvm, main)
|
||||
;;
|
||||
*-irix6.5)
|
||||
opsys=irix
|
||||
AC_DEFINE(IRIX_65,,IRIX 6.5)
|
||||
;;
|
||||
esac
|
||||
|
||||
AC_SYS_LARGEFILE
|
||||
@ -853,10 +840,6 @@ elif test x"$opsys" = x"sol8";then
|
||||
AC_MSG_RESULT(Route socket)
|
||||
KERNEL_METHOD="kernel_socket.o"
|
||||
RT_METHOD="rt_socket.o"
|
||||
elif test "$opsys" = "irix" ; then
|
||||
AC_MSG_RESULT(Route socket)
|
||||
KERNEL_METHOD="kernel_socket.o"
|
||||
RT_METHOD="rt_socket.o"
|
||||
else
|
||||
AC_TRY_RUN([#include <errno.h>
|
||||
#include <sys/types.h>
|
||||
@ -882,7 +865,6 @@ main ()
|
||||
fi
|
||||
AC_SUBST(RT_METHOD)
|
||||
AC_SUBST(KERNEL_METHOD)
|
||||
AC_SUBST(OTHER_METHOD)
|
||||
AM_CONDITIONAL([HAVE_NETLINK], [test "x$netlink" = "xyes"])
|
||||
|
||||
dnl --------------------------
|
||||
@ -989,9 +971,6 @@ elif test "$opsys" = "sol8";then
|
||||
AC_MSG_RESULT(Solaris GLIF)
|
||||
IF_METHOD=if_ioctl_solaris.o
|
||||
IOCTL_METHOD=ioctl_solaris.o
|
||||
elif test "$opsys" = "irix" ; then
|
||||
AC_MSG_RESULT(IRIX)
|
||||
IF_METHOD=if_ioctl.o
|
||||
elif test "$opsys" = "openbsd";then
|
||||
AC_MSG_RESULT(openbsd)
|
||||
IF_METHOD=if_ioctl.o
|
||||
@ -1103,7 +1082,6 @@ case $quagga_cv_ipforward_method in
|
||||
"/proc/net/snmp") quagga_cv_ipforward_method="proc";;
|
||||
"/dev/ip")
|
||||
case "$host" in
|
||||
*-nec-sysv4*) quagga_cv_ipforward_method="ews";;
|
||||
*-freebsd*) quagga_cv_ipforward_method="sysctl";;
|
||||
*) quagga_cv_ipforward_method="solaris";;
|
||||
esac;;
|
||||
@ -1170,12 +1148,7 @@ dnl ---------
|
||||
AC_DEFINE(NRL,1,NRL)
|
||||
RIPNGD="ripngd"
|
||||
OSPF6D="ospf6d"
|
||||
if test x"$opsys" = x"bsdi";then
|
||||
AC_DEFINE(BSDI_NRL,,BSDI)
|
||||
AC_MSG_RESULT(BSDI_NRL)
|
||||
else
|
||||
AC_MSG_RESULT(NRL)
|
||||
fi
|
||||
AC_MSG_RESULT(NRL)
|
||||
dnl ------------------------------------
|
||||
dnl Solaris 9, 10 and potentially higher
|
||||
dnl ------------------------------------
|
||||
|
14
lib/zebra.h
14
lib/zebra.h
@ -246,20 +246,6 @@ typedef int socklen_t;
|
||||
#include <execinfo.h>
|
||||
#endif /* HAVE_GLIBC_BACKTRACE */
|
||||
|
||||
#ifdef BSDI_NRL
|
||||
|
||||
#ifdef HAVE_NETINET6_IN6_H
|
||||
#include <netinet6/in6.h>
|
||||
#endif /* HAVE_NETINET6_IN6_H */
|
||||
|
||||
#ifdef NRL
|
||||
#include <netinet6/in6.h>
|
||||
#endif /* NRL */
|
||||
|
||||
#define IN6_ARE_ADDR_EQUAL IN6_IS_ADDR_EQUAL
|
||||
|
||||
#endif /* BSDI_NRL */
|
||||
|
||||
/* Local includes: */
|
||||
#if !(defined(__GNUC__) || defined(VTYSH_EXTRACT_PL))
|
||||
#define __attribute__(x)
|
||||
|
@ -12,11 +12,10 @@ if_method = @IF_METHOD@
|
||||
rt_method = @RT_METHOD@
|
||||
rtread_method = @RTREAD_METHOD@
|
||||
kernel_method = @KERNEL_METHOD@
|
||||
other_method = @OTHER_METHOD@
|
||||
ioctl_method = @IOCTL_METHOD@
|
||||
|
||||
otherobj = $(ioctl_method) $(ipforward) $(if_method) \
|
||||
$(rt_method) $(rtread_method) $(kernel_method) $(other_method)
|
||||
$(rt_method) $(rtread_method) $(kernel_method)
|
||||
|
||||
if HAVE_NETLINK
|
||||
othersrc = zebra_fpm_netlink.c
|
||||
@ -54,10 +53,10 @@ testzebra_LDADD = ../lib/libzebra.la $(LIBCAP) $(LIB_IPV6)
|
||||
zebra_DEPENDENCIES = $(otherobj)
|
||||
|
||||
EXTRA_DIST = if_ioctl.c if_ioctl_solaris.c if_netlink.c \
|
||||
if_sysctl.c ipforward_aix.c ipforward_ews.c ipforward_proc.c \
|
||||
if_sysctl.c ipforward_proc.c \
|
||||
ipforward_solaris.c ipforward_sysctl.c rt_ioctl.c rt_netlink.c \
|
||||
rt_socket.c rtread_netlink.c rtread_sysctl.c \
|
||||
rtread_getmsg.c kernel_socket.c kernel_netlink.c mtu_kvm.c \
|
||||
rtread_getmsg.c kernel_socket.c kernel_netlink.c \
|
||||
ioctl.c ioctl_solaris.c \
|
||||
GNOME-SMI GNOME-PRODUCT-ZEBRA-MIB
|
||||
|
||||
|
@ -259,8 +259,4 @@ extern int interface_list_proc (void);
|
||||
extern int ifaddr_proc_ipv6 (void);
|
||||
#endif /* HAVE_PROC_NET_IF_INET6 */
|
||||
|
||||
#ifdef BSDI
|
||||
extern int if_kvm_get_mtu (struct interface *);
|
||||
#endif /* BSDI */
|
||||
|
||||
#endif /* _ZEBRA_INTERFACE_H */
|
||||
|
@ -1,64 +0,0 @@
|
||||
/*
|
||||
* ipforward value get function for aix.
|
||||
* Copyright (C) 1997 Kunihiro Ishiguro
|
||||
*
|
||||
* This file is part of GNU Zebra.
|
||||
*
|
||||
* GNU Zebra is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License as published by the
|
||||
* Free Software Foundation; either version 2, or (at your option) any
|
||||
* later version.
|
||||
*
|
||||
* GNU Zebra is distributed in the hope that it will be useful, but
|
||||
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with GNU Zebra; see the file COPYING. If not, write to the Free
|
||||
* Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||
* 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include <zebra.h>
|
||||
|
||||
int
|
||||
ipforward ()
|
||||
{
|
||||
int fd, ret;
|
||||
int af = AF_INET;
|
||||
char netopt[] = "ipforwarding";
|
||||
struct optreq oq;
|
||||
|
||||
fd = socket(af, SOCK_DGRAM, 0);
|
||||
if (fd < 0) {
|
||||
/* need logging here */
|
||||
return -1;
|
||||
}
|
||||
|
||||
strcpy (oq.name, netopt);
|
||||
oq.getnext = 0;
|
||||
|
||||
ret = ioctl (fd, SIOCGNETOPT, (caddr_t)&oq);
|
||||
close(fd);
|
||||
|
||||
if (ret < 0) {
|
||||
/* need logging here */
|
||||
return -1;
|
||||
}
|
||||
|
||||
ret = atoi (oq.data);
|
||||
return ret;
|
||||
}
|
||||
|
||||
int
|
||||
ipforward_on ()
|
||||
{
|
||||
;
|
||||
}
|
||||
|
||||
int
|
||||
ipforward_off ()
|
||||
{
|
||||
;
|
||||
}
|
@ -1,60 +0,0 @@
|
||||
/*
|
||||
* Ipforward value get function for NEC EWS.
|
||||
* Copyright (C) 1997 Kunihiro Ishiguro
|
||||
*
|
||||
* This file is part of GNU Zebra.
|
||||
*
|
||||
* GNU Zebra is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License as published by the
|
||||
* Free Software Foundation; either version 2, or (at your option) any
|
||||
* later version.
|
||||
*
|
||||
* GNU Zebra is distributed in the hope that it will be useful, but
|
||||
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with GNU Zebra; see the file COPYING. If not, write to the Free
|
||||
* Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||
* 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include <zebra.h>
|
||||
|
||||
int
|
||||
ipforward ()
|
||||
{
|
||||
int fd;
|
||||
char buf[BUFSIZ];
|
||||
struct mioc_rksym rks;
|
||||
|
||||
fd = open ("/dev/kmem", O_RDWR);
|
||||
if (fd < 0) {
|
||||
/* need logging here */
|
||||
return -1;
|
||||
}
|
||||
|
||||
rks.mirk_symname = "ipforwarding";
|
||||
rks.mirk_buf = buf;
|
||||
rks.mirk_buflen = sizeof (int);
|
||||
|
||||
if (ioctl (fd, MIOC_READKSYM, &rks) < 0) {
|
||||
/* need logging here */
|
||||
return -1;
|
||||
}
|
||||
close (fd);
|
||||
return *(int *)buf;
|
||||
}
|
||||
|
||||
int
|
||||
ipforward_on ()
|
||||
{
|
||||
;
|
||||
}
|
||||
|
||||
int
|
||||
ipforward_off ()
|
||||
{
|
||||
;
|
||||
}
|
@ -106,7 +106,7 @@ int mib_ipv6[MIB_SIZ] =
|
||||
{
|
||||
CTL_NET,
|
||||
PF_INET6,
|
||||
#if defined(KAME) || (defined(__bsdi__) && _BSDI_VERSION >= 199802 ) || defined(NRL)
|
||||
#if defined(KAME) || defined(NRL)
|
||||
IPPROTO_IPV6,
|
||||
IPV6CTL_FORWARDING
|
||||
#else /* NOT KAME */
|
||||
|
@ -1,97 +0,0 @@
|
||||
/* MTU get using kvm_read.
|
||||
* Copyright (C) 1999 Kunihiro Ishiguro
|
||||
*
|
||||
* This file is part of GNU Zebra.
|
||||
*
|
||||
* GNU Zebra is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License as published by the
|
||||
* Free Software Foundation; either version 2, or (at your option) any
|
||||
* later version.
|
||||
*
|
||||
* GNU Zebra is distributed in the hope that it will be useful, but
|
||||
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with GNU Zebra; see the file COPYING. If not, write to the Free
|
||||
* Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||
* 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#include <zebra.h>
|
||||
|
||||
#include <kvm.h>
|
||||
#include <limits.h>
|
||||
#include <fcntl.h>
|
||||
|
||||
#include "if.h"
|
||||
|
||||
/* get interface MTU to use kvm_read */
|
||||
void
|
||||
if_kvm_get_mtu (struct interface *ifp)
|
||||
{
|
||||
kvm_t *kvmd;
|
||||
struct ifnet ifnet;
|
||||
unsigned long ifnetaddr;
|
||||
int len;
|
||||
|
||||
char ifname[IFNAMSIZ];
|
||||
char tname[INTERFACE_NAMSIZ + 1];
|
||||
char buf[_POSIX2_LINE_MAX];
|
||||
|
||||
struct nlist nl[] =
|
||||
{
|
||||
{"_ifnet"},
|
||||
{""}
|
||||
};
|
||||
|
||||
ifp->mtu6 = ifp->mtu = -1;
|
||||
|
||||
kvmd = kvm_openfiles (NULL, NULL, NULL, O_RDONLY, buf);
|
||||
|
||||
if (kvmd == NULL)
|
||||
return ;
|
||||
|
||||
kvm_nlist(kvmd, nl);
|
||||
|
||||
ifnetaddr = nl[0].n_value;
|
||||
|
||||
if (kvm_read(kvmd, ifnetaddr, (char *)&ifnetaddr, sizeof ifnetaddr) < 0)
|
||||
{
|
||||
kvm_close (kvmd);
|
||||
return ;
|
||||
}
|
||||
|
||||
while(ifnetaddr != 0)
|
||||
{
|
||||
if (kvm_read (kvmd, ifnetaddr, (char *)&ifnet, sizeof ifnet) < 0)
|
||||
{
|
||||
kvm_close (kvmd);
|
||||
return ;
|
||||
}
|
||||
|
||||
if (kvm_read (kvmd, (u_long)ifnet.if_name, ifname, IFNAMSIZ) < 0)
|
||||
{
|
||||
kvm_close (kvmd);
|
||||
return ;
|
||||
}
|
||||
|
||||
len = snprintf (tname, INTERFACE_NAMSIZ + 1,
|
||||
"%s%d", ifname, ifnet.if_unit);
|
||||
|
||||
if (strncmp (tname, ifp->name, len) == 0)
|
||||
break;
|
||||
|
||||
ifnetaddr = (u_long)ifnet.if_next;
|
||||
}
|
||||
|
||||
kvm_close (kvmd);
|
||||
|
||||
if (ifnetaddr == 0)
|
||||
{
|
||||
return ;
|
||||
}
|
||||
|
||||
ifp->mtu6 = ifp->mtu = ifnet.if_mtu;
|
||||
}
|
Loading…
Reference in New Issue
Block a user