aboutsummaryrefslogtreecommitdiff
path: root/net
diff options
context:
space:
mode:
authorRong-En Fan <rafan@FreeBSD.org>2007-08-09 11:00:17 +0000
committerRong-En Fan <rafan@FreeBSD.org>2007-08-09 11:00:17 +0000
commit2de1d9d6561e099d61f9b0bdb34d68fb0023f435 (patch)
treec992077ed2c22ee83f2060d63b66ad344d13e5e9 /net
parentb795ffa42319cb6cae3f411a5d7fdaf275765eb4 (diff)
downloadports-2de1d9d6561e099d61f9b0bdb34d68fb0023f435.tar.gz
ports-2de1d9d6561e099d61f9b0bdb34d68fb0023f435.zip
Notes
Diffstat (limited to 'net')
-rw-r--r--net/quagga/Makefile3
-rw-r--r--net/quagga/distinfo6
-rw-r--r--net/quagga/files/patch-configure10
-rw-r--r--net/quagga/files/patch-zebra-kernel_socket.c132
-rw-r--r--net/quagga/files/quagga.sh.in6
5 files changed, 19 insertions, 138 deletions
diff --git a/net/quagga/Makefile b/net/quagga/Makefile
index b05ca3c23187..68c365d4e556 100644
--- a/net/quagga/Makefile
+++ b/net/quagga/Makefile
@@ -6,8 +6,7 @@
#
PORTNAME= quagga
-PORTVERSION= 0.99.7
-PORTREVISION= 2
+PORTVERSION= 0.99.8
CATEGORIES= net ipv6
MASTER_SITES= http://quagga.net/download/ \
http://www.ru.quagga.net/download/ \
diff --git a/net/quagga/distinfo b/net/quagga/distinfo
index e8ae656cdae2..ed234e27e707 100644
--- a/net/quagga/distinfo
+++ b/net/quagga/distinfo
@@ -1,3 +1,3 @@
-MD5 (quagga-0.99.7.tar.gz) = f448281c50007408ce92c5d8e2107abc
-SHA256 (quagga-0.99.7.tar.gz) = fd258e4503646129ca77f6fe9c16b69f36f320256768b84dbabd2e4915ab8eb4
-SIZE (quagga-0.99.7.tar.gz) = 2350372
+MD5 (quagga-0.99.8.tar.gz) = 0a53fb579033fa57ca0e5c3ff0b52105
+SHA256 (quagga-0.99.8.tar.gz) = 7e745118921982ad7f67a6733161f74c88ba71c587158ab335f0581124be551d
+SIZE (quagga-0.99.8.tar.gz) = 2322571
diff --git a/net/quagga/files/patch-configure b/net/quagga/files/patch-configure
new file mode 100644
index 000000000000..242ec58e8ea9
--- /dev/null
+++ b/net/quagga/files/patch-configure
@@ -0,0 +1,10 @@
+--- configure.orig Fri Jul 27 22:59:02 2007
++++ configure Thu Aug 2 09:58:32 2007
+@@ -23025,6 +23025,7 @@
+ #endif
+
+
++#include <security/pam_types.h>
+ #include <security/openpam.h>
+ _ACEOF
+ rm -f conftest.$ac_objext
diff --git a/net/quagga/files/patch-zebra-kernel_socket.c b/net/quagga/files/patch-zebra-kernel_socket.c
deleted file mode 100644
index d1499d594cd9..000000000000
--- a/net/quagga/files/patch-zebra-kernel_socket.c
+++ /dev/null
@@ -1,132 +0,0 @@
---- zebra/kernel_socket.c 2007/05/10 02:38:52 1.43
-+++ zebra/kernel_socket.c 2007/05/17 15:00:41 1.44
-@@ -494,6 +494,8 @@
- short *ifnlen)
- {
- caddr_t pnt, end;
-+ union sockunion dst;
-+ union sockunion gateway;
-
- pnt = (caddr_t)(ifm + 1);
- end = ((caddr_t)ifm) + ifm->ifam_msglen;
-@@ -502,10 +504,12 @@
- memset (mask, 0, sizeof (union sockunion));
- memset (addr, 0, sizeof (union sockunion));
- memset (brd, 0, sizeof (union sockunion));
-+ memset (&dst, 0, sizeof (union sockunion));
-+ memset (&gateway, 0, sizeof (union sockunion));
-
- /* We fetch each socket variable into sockunion. */
-- RTA_ADDR_GET (NULL, RTA_DST, ifm->ifam_addrs, pnt);
-- RTA_ADDR_GET (NULL, RTA_GATEWAY, ifm->ifam_addrs, pnt);
-+ RTA_ADDR_GET (&dst, RTA_DST, ifm->ifam_addrs, pnt);
-+ RTA_ADDR_GET (&gateway, RTA_GATEWAY, ifm->ifam_addrs, pnt);
- RTA_ATTR_GET (mask, RTA_NETMASK, ifm->ifam_addrs, pnt);
- RTA_ADDR_GET (NULL, RTA_GENMASK, ifm->ifam_addrs, pnt);
- RTA_NAME_GET (ifname, RTA_IFP, ifm->ifam_addrs, pnt, *ifnlen);
-@@ -519,31 +523,43 @@
- {
- case AF_INET:
- {
-- char buf[2][INET_ADDRSTRLEN];
-+ char buf[4][INET_ADDRSTRLEN];
- zlog_debug ("%s: ifindex %d, ifname %s, ifam_addrs 0x%x, "
-- "addr %s/%d broad %s",
-- __func__, ifm->ifam_index,
-+ "ifam_flags 0x%x, addr %s/%d broad %s dst %s "
-+ "gateway %s",
-+ __func__, ifm->ifam_index,
- (ifnlen ? ifname : "(nil)"), ifm->ifam_addrs,
-+ ifm->ifam_flags,
- inet_ntop(AF_INET,&addr->sin.sin_addr,
- buf[0],sizeof(buf[0])),
- ip_masklen(mask->sin.sin_addr),
- inet_ntop(AF_INET,&brd->sin.sin_addr,
-- buf[1],sizeof(buf[1])));
-+ buf[1],sizeof(buf[1])),
-+ inet_ntop(AF_INET,&dst.sin.sin_addr,
-+ buf[2],sizeof(buf[2])),
-+ inet_ntop(AF_INET,&gateway.sin.sin_addr,
-+ buf[3],sizeof(buf[3])));
- }
- break;
- #ifdef HAVE_IPV6
- case AF_INET6:
- {
-- char buf[2][INET6_ADDRSTRLEN];
-+ char buf[4][INET6_ADDRSTRLEN];
- zlog_debug ("%s: ifindex %d, ifname %s, ifam_addrs 0x%x, "
-- "addr %s/%d broad %s",
-+ "ifam_flags 0x%x, addr %s/%d broad %s dst %s "
-+ "gateway %s",
- __func__, ifm->ifam_index,
- (ifnlen ? ifname : "(nil)"), ifm->ifam_addrs,
-+ ifm->ifam_flags,
- inet_ntop(AF_INET6,&addr->sin6.sin6_addr,
- buf[0],sizeof(buf[0])),
- ip6_masklen(mask->sin6.sin6_addr),
- inet_ntop(AF_INET6,&brd->sin6.sin6_addr,
-- buf[1],sizeof(buf[1])));
-+ buf[1],sizeof(buf[1])),
-+ inet_ntop(AF_INET6,&dst.sin6.sin6_addr,
-+ buf[2],sizeof(buf[2])),
-+ inet_ntop(AF_INET6,&gateway.sin6.sin6_addr,
-+ buf[3],sizeof(buf[3])));
- }
- break;
- #endif /* HAVE_IPV6 */
-@@ -554,7 +570,7 @@
- break;
- }
- }
--
-+
- /* Assert read up end point matches to end point */
- if (pnt != end)
- zlog_warn ("ifam_read() does't read all socket data");
-@@ -569,6 +585,7 @@
- char ifname[INTERFACE_NAMSIZ];
- short ifnlen = 0;
- char isalias = 0;
-+ int flags = 0;
-
- ifname[0] = ifname[INTERFACE_NAMSIZ - 1] = '\0';
-
-@@ -585,6 +602,12 @@
- if (ifnlen && strncmp (ifp->name, ifname, INTERFACE_NAMSIZ))
- isalias = 1;
-
-+ /* N.B. The info in ifa_msghdr does not tell us whether the RTA_BRD
-+ field contains a broadcast address or a peer address, so we are forced to
-+ rely upon the interface type. */
-+ if (if_is_pointopoint(ifp))
-+ SET_FLAG(flags, ZEBRA_IFA_PEER);
-+
- #if 0
- /* it might seem cute to grab the interface metric here, however
- * we're processing an address update message, and so some systems
-@@ -599,12 +622,12 @@
- {
- case AF_INET:
- if (ifam->ifam_type == RTM_NEWADDR)
-- connected_add_ipv4 (ifp, 0, &addr.sin.sin_addr,
-+ connected_add_ipv4 (ifp, flags, &addr.sin.sin_addr,
- ip_masklen (mask.sin.sin_addr),
- &brd.sin.sin_addr,
- (isalias ? ifname : NULL));
- else
-- connected_delete_ipv4 (ifp, 0, &addr.sin.sin_addr,
-+ connected_delete_ipv4 (ifp, flags, &addr.sin.sin_addr,
- ip_masklen (mask.sin.sin_addr),
- &brd.sin.sin_addr);
- break;
-@@ -616,8 +639,7 @@
- SET_IN6_LINKLOCAL_IFINDEX (addr.sin6.sin6_addr, 0);
-
- if (ifam->ifam_type == RTM_NEWADDR)
-- connected_add_ipv6 (ifp, 0,
-- &addr.sin6.sin6_addr,
-+ connected_add_ipv6 (ifp, flags, &addr.sin6.sin6_addr,
- ip6_masklen (mask.sin6.sin6_addr),
- &brd.sin6.sin6_addr,
- (isalias ? ifname : NULL));
diff --git a/net/quagga/files/quagga.sh.in b/net/quagga/files/quagga.sh.in
index b99665125cee..a397411cb130 100644
--- a/net/quagga/files/quagga.sh.in
+++ b/net/quagga/files/quagga.sh.in
@@ -64,7 +64,7 @@ case "${quagga_cmd}" in
/sbin/ldconfig -m ${quagga_extralibs_path}
fi
;;
- stop)
+ stop|restart)
quagga_daemons=$(reverse_list ${quagga_daemons})
;;
esac
@@ -79,8 +79,12 @@ for daemon in ${quagga_daemons}; do
if [ ${quagga_cmd} = "stop" -a -z $(check_process ${command}) ]; then
continue
fi
+ if [ ${quagga_cmd} = "restart" -a -z $(check_process ${command}) ]; then
+ continue
+ fi
eval flags=\$\{${daemon}_flags:-\"${quagga_flags}\"\}
run_rc_command "$1"
+ _rc_restart_done=false
done
if [ "${quagga_delay}" != "0" ]; then