PERFORCE change 146255 for review
Ed Schouten
ed at FreeBSD.org
Wed Jul 30 19:02:51 UTC 2008
http://perforce.freebsd.org/chv.cgi?CH=146255
Change 146255 by ed at ed_dull on 2008/07/30 19:02:00
IFC my clist changes.
Affected files ...
.. //depot/projects/mpsafetty/contrib/cvs/doc/HACKING.DOCS#3 integrate
.. //depot/projects/mpsafetty/crypto/openssh/monitor_fdpass.c#2 integrate
.. //depot/projects/mpsafetty/lib/libthread_db/libpthread_db.c#2 integrate
.. //depot/projects/mpsafetty/lib/libthread_db/libthr_db.c#2 integrate
.. //depot/projects/mpsafetty/lib/libthread_db/thread_db.c#2 integrate
.. //depot/projects/mpsafetty/lib/libthread_db/thread_db.h#2 integrate
.. //depot/projects/mpsafetty/lib/libthread_db/thread_db_int.h#2 integrate
.. //depot/projects/mpsafetty/sbin/ifconfig/ifconfig.8#2 integrate
.. //depot/projects/mpsafetty/sbin/routed/defs.h#2 integrate
.. //depot/projects/mpsafetty/sbin/routed/if.c#2 integrate
.. //depot/projects/mpsafetty/sbin/routed/main.c#2 integrate
.. //depot/projects/mpsafetty/sbin/routed/output.c#2 integrate
.. //depot/projects/mpsafetty/sbin/routed/rdisc.c#2 integrate
.. //depot/projects/mpsafetty/share/colldef/no_NO.ISO8859-1.src#2 integrate
.. //depot/projects/mpsafetty/share/colldef/no_NO.ISO8859-15.src#2 integrate
.. //depot/projects/mpsafetty/share/misc/committers-ports.dot#3 integrate
.. //depot/projects/mpsafetty/sys/amd64/amd64/cpu_switch.S#2 integrate
.. //depot/projects/mpsafetty/sys/amd64/amd64/genassym.c#2 integrate
.. //depot/projects/mpsafetty/sys/amd64/ia32/ia32_signal.c#2 integrate
.. //depot/projects/mpsafetty/sys/amd64/include/pcb.h#2 integrate
.. //depot/projects/mpsafetty/sys/amd64/linux32/linux32_machdep.c#2 integrate
.. //depot/projects/mpsafetty/sys/dev/ixgbe/ixgbe.c#2 integrate
.. //depot/projects/mpsafetty/sys/dev/ixgbe/ixgbe.h#2 integrate
.. //depot/projects/mpsafetty/sys/dev/ixgbe/ixgbe_82598.c#2 integrate
.. //depot/projects/mpsafetty/sys/dev/ixgbe/ixgbe_api.c#2 integrate
.. //depot/projects/mpsafetty/sys/dev/ixgbe/ixgbe_api.h#2 integrate
.. //depot/projects/mpsafetty/sys/dev/ixgbe/ixgbe_common.c#2 integrate
.. //depot/projects/mpsafetty/sys/dev/ixgbe/ixgbe_common.h#2 integrate
.. //depot/projects/mpsafetty/sys/dev/ixgbe/ixgbe_phy.c#2 integrate
.. //depot/projects/mpsafetty/sys/dev/ixgbe/ixgbe_phy.h#2 integrate
.. //depot/projects/mpsafetty/sys/dev/ixgbe/ixgbe_type.h#2 integrate
.. //depot/projects/mpsafetty/sys/kern/subr_clist.c#2 integrate
.. //depot/projects/mpsafetty/sys/kern/vfs_subr.c#4 integrate
.. //depot/projects/mpsafetty/sys/netinet6/raw_ip6.c#5 integrate
.. //depot/projects/mpsafetty/sys/pci/if_sis.c#2 integrate
.. //depot/projects/mpsafetty/sys/sys/procfs.h#2 integrate
.. //depot/projects/mpsafetty/sys/vm/vnode_pager.c#2 integrate
.. //depot/projects/mpsafetty/tools/tools/editing/freebsd.vim#2 integrate
.. //depot/projects/mpsafetty/usr.bin/cpio/cpio.c#3 integrate
Differences ...
==== //depot/projects/mpsafetty/contrib/cvs/doc/HACKING.DOCS#3 (text+ko) ====
@@ -12,7 +12,11 @@
@emph{ ... } emphasis - warnings, stress, etc. This will be
bracketed by underline characters in info files
(_ ... _) and in italics in PDF & probably in
- postscript & HTML.
+ postscript & HTML.
+ at strong{ ... } Similar to @emph{}, but the effect is to
+ bracket with asterisks in info files (* ... *)
+ and in bold in PDF & probably in postscript &
+ HTML.
@noindent Suppresses indentation of the following
paragraph. This can ocassionally be useful
after examples and the like.
@@ -22,7 +26,7 @@
Preformatted text should be marked as such (use @example... there may be other
ways) since many of the final output formats can use relational fonts otherwise
-and marking it as formatted should restrict it to a fixed wiidth font. Keep
+and marking it as formatted should restrict it to a fixed width font. Keep
this sort of text to 80 characters or less per line since larger may not be
properly viewable for some info users.
@@ -33,5 +37,10 @@
Use lots of index markers. Scan the index for the current style. Try to reuse
an existing entry if the meaning is similar.
+`makeinfo' 3.11 or greater is required for output generation since earlier
+versions do not support the @ifnottex & @ifnothtml commands. There may be
+other commands used in `cvs.texinfo' that are unsupported by earlier versions
+of `makeinfo' by the time you read this.
+
For more on using texinfo docs, see the `info texinfo' documentation or
http://www.gnu.org/manual/texinfo/texinfo.html .
==== //depot/projects/mpsafetty/crypto/openssh/monitor_fdpass.c#2 (text+ko) ====
@@ -49,7 +49,10 @@
char ch = '\0';
ssize_t n;
#ifndef HAVE_ACCRIGHTS_IN_MSGHDR
- char tmp[CMSG_SPACE(sizeof(int))];
+ union {
+ struct cmsghdr hdr;
+ char buf[CMSG_SPACE(sizeof(int))];
+ } cmsgbuf;
struct cmsghdr *cmsg;
#endif
@@ -58,8 +61,8 @@
msg.msg_accrights = (caddr_t)&fd;
msg.msg_accrightslen = sizeof(fd);
#else
- msg.msg_control = (caddr_t)tmp;
- msg.msg_controllen = CMSG_LEN(sizeof(int));
+ msg.msg_control = (caddr_t)&cmsgbuf.buf;
+ msg.msg_controllen = sizeof(cmsgbuf.buf);
cmsg = CMSG_FIRSTHDR(&msg);
cmsg->cmsg_len = CMSG_LEN(sizeof(int));
cmsg->cmsg_level = SOL_SOCKET;
@@ -94,7 +97,10 @@
char ch;
int fd;
#ifndef HAVE_ACCRIGHTS_IN_MSGHDR
- char tmp[CMSG_SPACE(sizeof(int))];
+ union {
+ struct cmsghdr hdr;
+ char buf[CMSG_SPACE(sizeof(int))];
+ } cmsgbuf;
struct cmsghdr *cmsg;
#endif
@@ -107,8 +113,8 @@
msg.msg_accrights = (caddr_t)&fd;
msg.msg_accrightslen = sizeof(fd);
#else
- msg.msg_control = tmp;
- msg.msg_controllen = sizeof(tmp);
+ msg.msg_control = &cmsgbuf.buf;
+ msg.msg_controllen = sizeof(cmsgbuf.buf);
#endif
if ((n = recvmsg(sock, &msg, 0)) == -1)
==== //depot/projects/mpsafetty/lib/libthread_db/libpthread_db.c#2 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libthread_db/libpthread_db.c,v 1.16 2008/03/23 09:38:11 jeff Exp $");
+__FBSDID("$FreeBSD: src/lib/libthread_db/libpthread_db.c,v 1.17 2008/07/30 00:59:19 marcel Exp $");
#include <stddef.h>
#include <stdlib.h>
@@ -240,8 +240,7 @@
* mapped to user thread.
*/
while (pt != 0) {
- ret = ps_pread(ta->ph,
- pt + ta->thread_off_tcb,
+ ret = ps_pread(ta->ph, pt + ta->thread_off_tcb,
&tcb_addr, sizeof(tcb_addr));
if (ret != 0)
return (P2T(ret));
@@ -1075,16 +1074,15 @@
}
td_err_e
-pt_thr_tls_get_addr(const td_thrhandle_t *th, void *_linkmap, size_t offset,
- void **address)
+pt_thr_tls_get_addr(const td_thrhandle_t *th, psaddr_t _linkmap, size_t offset,
+ psaddr_t *address)
{
- char *obj_entry;
const td_thragent_t *ta = th->th_ta;
- psaddr_t tcb_addr, *dtv_addr;
+ psaddr_t dtv_addr, obj_entry, tcb_addr;
int tls_index, ret;
/* linkmap is a member of Obj_Entry */
- obj_entry = (char *)_linkmap - ta->thread_off_linkmap;
+ obj_entry = _linkmap - ta->thread_off_linkmap;
/* get tlsindex of the object file */
ret = ps_pread(ta->ph,
@@ -1106,8 +1104,8 @@
if (ret != 0)
return (P2T(ret));
/* now get the object's tls block base address */
- ret = ps_pread(ta->ph, &dtv_addr[tls_index+1], address,
- sizeof(*address));
+ ret = ps_pread(ta->ph, dtv_addr + sizeof(void *) * (tls_index + 1),
+ address, sizeof(*address));
if (ret != 0)
return (P2T(ret));
==== //depot/projects/mpsafetty/lib/libthread_db/libthr_db.c#2 (text+ko) ====
@@ -26,7 +26,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libthread_db/libthr_db.c,v 1.13 2008/03/22 05:40:44 davidxu Exp $");
+__FBSDID("$FreeBSD: src/lib/libthread_db/libthr_db.c,v 1.14 2008/07/30 00:59:19 marcel Exp $");
#include <proc_service.h>
#include <stddef.h>
@@ -216,7 +216,7 @@
return (P2T(ret));
/* Iterate through thread list to find pthread */
pt = (psaddr_t)thread_list.tqh_first;
- while (pt != NULL) {
+ while (pt != 0) {
ret = ps_pread(ta->ph, pt + ta->thread_off_tid,
&lwp, sizeof(lwp));
if (ret != 0)
@@ -230,7 +230,7 @@
if (ret != 0)
return (P2T(ret));
}
- if (pt == NULL)
+ if (pt == 0)
return (TD_NOTHR);
th->th_ta = ta;
th->th_tid = id;
@@ -389,13 +389,13 @@
ret = ps_pread(ta->ph, ta->thread_last_event_addr, &pt, sizeof(pt));
if (ret != 0)
return (P2T(ret));
- if (pt == NULL)
+ if (pt == 0)
return (TD_NOMSG);
/*
* Take the event pointer, at the time, libthr only reports event
* once a time, so it is not a link list.
*/
- pt_temp = NULL;
+ pt_temp = 0;
ps_pwrite(ta->ph, ta->thread_last_event_addr, &pt_temp, sizeof(pt_temp));
/* Read event info */
@@ -684,7 +684,7 @@
* once a time, so it is not a link list.
*/
if (pt == pt_temp) {
- pt_temp = NULL;
+ pt_temp = 0;
ps_pwrite(ta->ph, ta->thread_last_event_addr, &pt_temp, sizeof(pt_temp));
}
/* Clear event */
@@ -714,22 +714,21 @@
pt_validate(const td_thrhandle_t *th)
{
- if (th->th_tid == 0 || th->th_thread == NULL)
+ if (th->th_tid == 0 || th->th_thread == 0)
return (TD_ERR);
return (TD_OK);
}
static td_err_e
-pt_thr_tls_get_addr(const td_thrhandle_t *th, void *_linkmap, size_t offset,
- void **address)
+pt_thr_tls_get_addr(const td_thrhandle_t *th, psaddr_t _linkmap, size_t offset,
+ psaddr_t *address)
{
- char *obj_entry;
const td_thragent_t *ta = th->th_ta;
- psaddr_t tcb_addr, *dtv_addr;
+ psaddr_t dtv_addr, obj_entry, tcb_addr;
int tls_index, ret;
/* linkmap is a member of Obj_Entry */
- obj_entry = (char *)_linkmap - ta->thread_off_linkmap;
+ obj_entry = _linkmap - ta->thread_off_linkmap;
/* get tlsindex of the object file */
ret = ps_pread(ta->ph,
@@ -750,8 +749,8 @@
if (ret != 0)
return (P2T(ret));
/* now get the object's tls block base address */
- ret = ps_pread(ta->ph, &dtv_addr[tls_index+1], address,
- sizeof(*address));
+ ret = ps_pread(ta->ph, dtv_addr + sizeof(void *) * (tls_index+1),
+ address, sizeof(*address));
if (ret != 0)
return (P2T(ret));
==== //depot/projects/mpsafetty/lib/libthread_db/thread_db.c#2 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libthread_db/thread_db.c,v 1.5 2008/03/22 05:40:44 davidxu Exp $");
+__FBSDID("$FreeBSD: src/lib/libthread_db/thread_db.c,v 1.6 2008/07/30 00:59:19 marcel Exp $");
#include <proc_service.h>
#include <stddef.h>
@@ -244,8 +244,8 @@
}
td_err_e
-td_thr_tls_get_addr(const td_thrhandle_t *th, void *linkmap, size_t offset,
- void **address)
+td_thr_tls_get_addr(const td_thrhandle_t *th, psaddr_t linkmap, size_t offset,
+ psaddr_t *address)
{
const td_thragent_t *ta = th->th_ta;
return (ta->ta_ops->to_thr_tls_get_addr(th, linkmap, offset, address));
==== //depot/projects/mpsafetty/lib/libthread_db/thread_db.h#2 (text+ko) ====
@@ -24,7 +24,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
- * $FreeBSD: src/lib/libthread_db/thread_db.h,v 1.6 2005/05/31 09:43:03 dfr Exp $
+ * $FreeBSD: src/lib/libthread_db/thread_db.h,v 1.7 2008/07/30 00:59:19 marcel Exp $
*/
#ifndef _THREAD_DB_H_
@@ -239,7 +239,8 @@
td_err_e td_thr_setfpregs(const td_thrhandle_t *, const prfpregset_t *);
td_err_e td_thr_setgregs(const td_thrhandle_t *, const prgregset_t);
td_err_e td_thr_validate(const td_thrhandle_t *);
-td_err_e td_thr_tls_get_addr(const td_thrhandle_t *, void *, size_t, void **);
+td_err_e td_thr_tls_get_addr(const td_thrhandle_t *, psaddr_t, size_t,
+ psaddr_t *);
/* FreeBSD specific extensions. */
td_err_e td_thr_sstep(const td_thrhandle_t *, int);
==== //depot/projects/mpsafetty/lib/libthread_db/thread_db_int.h#2 (text+ko) ====
@@ -23,7 +23,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/lib/libthread_db/thread_db_int.h,v 1.3 2005/05/31 09:43:03 dfr Exp $
+ * $FreeBSD: src/lib/libthread_db/thread_db_int.h,v 1.4 2008/07/30 00:59:19 marcel Exp $
*/
#ifndef _THREAD_DB_INT_H_
@@ -74,8 +74,8 @@
const prfpregset_t *);
td_err_e (*to_thr_setgregs)(const td_thrhandle_t *, const prgregset_t);
td_err_e (*to_thr_validate)(const td_thrhandle_t *);
- td_err_e (*to_thr_tls_get_addr)(const td_thrhandle_t *,
- void *, size_t, void **);
+ td_err_e (*to_thr_tls_get_addr)(const td_thrhandle_t *, psaddr_t,
+ size_t, psaddr_t *);
/* FreeBSD specific extensions. */
td_err_e (*to_thr_sstep)(const td_thrhandle_t *, int);
==== //depot/projects/mpsafetty/sbin/ifconfig/ifconfig.8#2 (text+ko) ====
@@ -26,9 +26,9 @@
.\" SUCH DAMAGE.
.\"
.\" From: @(#)ifconfig.8 8.3 (Berkeley) 1/5/94
-.\" $FreeBSD: src/sbin/ifconfig/ifconfig.8,v 1.148 2008/06/20 17:26:34 thompsa Exp $
+.\" $FreeBSD: src/sbin/ifconfig/ifconfig.8,v 1.149 2008/07/30 16:22:52 sam Exp $
.\"
-.Dd June 20, 2008
+.Dd July 30, 2008
.Dt IFCONFIG 8
.Os
.Sh NAME
@@ -848,13 +848,11 @@
depends on the region your adaptor was manufactured for.
Setting
the channel to
-.Li 0 ,
-.Cm any ,
+.Li any ,
or
.Cm -
-will give you the default for your adaptor.
-Some
-adapters ignore this setting unless you are in ad-hoc mode.
+will clear any desired channel and, if the device is marked up,
+force a scan for a channel to operate on.
Alternatively the frequency, in megahertz, may be specified
instead of the channel number.
.Pp
==== //depot/projects/mpsafetty/sbin/routed/defs.h#2 (text+ko) ====
@@ -28,11 +28,11 @@
*
* @(#)defs.h 8.1 (Berkeley) 6/5/93
*
- * $FreeBSD: src/sbin/routed/defs.h,v 1.18 2004/06/16 05:08:57 bms Exp $
+ * $FreeBSD: src/sbin/routed/defs.h,v 1.19 2008/07/30 11:56:15 phk Exp $
*/
#ifdef sgi
-#ident "$FreeBSD: src/sbin/routed/defs.h,v 1.18 2004/06/16 05:08:57 bms Exp $"
+#ident "$FreeBSD: src/sbin/routed/defs.h,v 1.19 2008/07/30 11:56:15 phk Exp $"
#endif
/* Definitions for RIPv2 routing process.
@@ -121,21 +121,6 @@
#define _HAVE_SIN_LEN
#endif
-/* Turn on if IP_{ADD,DROP}_MEMBERSHIP and IP_MULTICAST_IF considers address
- * within 0.0.0.0/8 as interface index.
- */
-#ifdef __FreeBSD__
-#define MCAST_IFINDEX
-#endif
-
-/* Turn on if IP_DROP_MEMBERSHIP and IP_ADD_MEMBERSHIP do not look at
- * the dstaddr of point-to-point interfaces.
- * #define MCAST_PPP_BUG
- */
-#ifdef MCAST_IFINDEX
-#undef MCAST_PPP_BUG
-#endif
-
#define DAY (24*60*60)
#define NEVER DAY /* a long time */
#define EPOCH NEVER /* bias time by this to avoid <0 */
==== //depot/projects/mpsafetty/sbin/routed/if.c#2 (text+ko) ====
@@ -26,7 +26,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/sbin/routed/if.c,v 1.16 2005/12/20 18:18:37 maxim Exp $
+ * $FreeBSD: src/sbin/routed/if.c,v 1.17 2008/07/30 11:56:15 phk Exp $
*/
#include "defs.h"
@@ -35,7 +35,7 @@
#ifdef __NetBSD__
__RCSID("$NetBSD$");
#elif defined(__FreeBSD__)
-__RCSID("$FreeBSD: src/sbin/routed/if.c,v 1.16 2005/12/20 18:18:37 maxim Exp $");
+__RCSID("$FreeBSD: src/sbin/routed/if.c,v 1.17 2008/07/30 11:56:15 phk Exp $");
#else
__RCSID("$Revision: 2.27 $");
#ident "$Revision: 2.27 $"
@@ -452,7 +452,6 @@
static void
ifdel(struct interface *ifp)
{
- struct ip_mreq m;
struct interface *ifp1;
@@ -491,25 +490,23 @@
ifdel(ifp1);
}
- if ((ifp->int_if_flags & IFF_MULTICAST)
-#ifdef MCAST_PPP_BUG
- && !(ifp->int_if_flags & IFF_POINTOPOINT)
+ if ((ifp->int_if_flags & IFF_MULTICAST) && rip_sock >= 0) {
+ struct group_req gr;
+ struct sockaddr_in *sin;
+
+ memset(&gr, 0, sizeof(gr));
+ gr.gr_interface = ifp->int_index;
+ sin = (struct sockaddr_in *)&gr.gr_group;
+ sin->sin_family = AF_INET;
+#ifdef _HAVE_SIN_LEN
+ sin->sin_len = sizeof(struct sockaddr_in);
#endif
- && rip_sock >= 0) {
- m.imr_multiaddr.s_addr = htonl(INADDR_RIP_GROUP);
-#ifdef MCAST_IFINDEX
- m.imr_interface.s_addr = htonl(ifp->int_index);
-#else
- m.imr_interface.s_addr = ((ifp->int_if_flags
- & IFF_POINTOPOINT)
- ? ifp->int_dstaddr
- : ifp->int_addr);
-#endif
- if (setsockopt(rip_sock,IPPROTO_IP,IP_DROP_MEMBERSHIP,
- &m, sizeof(m)) < 0
+ sin->sin_addr.s_addr = htonl(INADDR_RIP_GROUP);
+ if (setsockopt(rip_sock, IPPROTO_IP, MCAST_LEAVE_GROUP,
+ &gr, sizeof(gr)) < 0
&& errno != EADDRNOTAVAIL
&& !TRACEACTIONS)
- LOGERR("setsockopt(IP_DROP_MEMBERSHIP RIP)");
+ LOGERR("setsockopt(MCAST_LEAVE_GROUP RIP)");
if (rip_sock_mcast == ifp)
rip_sock_mcast = 0;
}
==== //depot/projects/mpsafetty/sbin/routed/main.c#2 (text+ko) ====
@@ -26,7 +26,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/sbin/routed/main.c,v 1.19 2006/11/05 14:49:47 trhodes Exp $
+ * $FreeBSD: src/sbin/routed/main.c,v 1.20 2008/07/30 11:56:15 phk Exp $
*/
#include "defs.h"
@@ -45,7 +45,7 @@
__RCSID("$NetBSD$");
#include <util.h>
#elif defined(__FreeBSD__)
-__RCSID("$FreeBSD: src/sbin/routed/main.c,v 1.19 2006/11/05 14:49:47 trhodes Exp $");
+__RCSID("$FreeBSD: src/sbin/routed/main.c,v 1.20 2008/07/30 11:56:15 phk Exp $");
#else
__RCSID("$Revision: 2.31 $");
#ident "$Revision: 2.31 $"
@@ -713,25 +713,23 @@
static void
rip_mcast_on(struct interface *ifp)
{
- struct ip_mreq m;
+ struct group_req gr;
+ struct sockaddr_in *sin;
if (!IS_RIP_IN_OFF(ifp->int_state)
&& (ifp->int_if_flags & IFF_MULTICAST)
-#ifdef MCAST_PPP_BUG
- && !(ifp->int_if_flags & IFF_POINTOPOINT)
-#endif
&& !(ifp->int_state & IS_ALIAS)) {
- m.imr_multiaddr.s_addr = htonl(INADDR_RIP_GROUP);
-#ifdef MCAST_IFINDEX
- m.imr_interface.s_addr = htonl(ifp->int_index);
-#else
- m.imr_interface.s_addr = ((ifp->int_if_flags & IFF_POINTOPOINT)
- ? ifp->int_dstaddr
- : ifp->int_addr);
+ memset(&gr, 0, sizeof(gr));
+ gr.gr_interface = ifp->int_index;
+ sin = (struct sockaddr_in *)&gr.gr_group;
+ sin->sin_family = AF_INET;
+#ifdef _HAVE_SIN_LEN
+ sin->sin_len = sizeof(struct sockaddr_in);
#endif
- if (setsockopt(rip_sock,IPPROTO_IP, IP_ADD_MEMBERSHIP,
- &m, sizeof(m)) < 0)
- LOGERR("setsockopt(IP_ADD_MEMBERSHIP RIP)");
+ sin->sin_addr.s_addr = htonl(INADDR_RIP_GROUP);
+ if (setsockopt(rip_sock, IPPROTO_IP, MCAST_JOIN_GROUP,
+ &gr, sizeof(gr)) < 0)
+ LOGERR("setsockopt(MCAST_JOIN_GROUP RIP)");
}
}
==== //depot/projects/mpsafetty/sbin/routed/output.c#2 (text+ko) ====
@@ -26,7 +26,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/sbin/routed/output.c,v 1.12 2005/05/31 20:28:48 stefanf Exp $
+ * $FreeBSD: src/sbin/routed/output.c,v 1.13 2008/07/30 11:56:15 phk Exp $
*/
#include "defs.h"
@@ -34,7 +34,7 @@
#ifdef __NetBSD__
__RCSID("$NetBSD$");
#elif defined(__FreeBSD__)
-__RCSID("$FreeBSD: src/sbin/routed/output.c,v 1.12 2005/05/31 20:28:48 stefanf Exp $");
+__RCSID("$FreeBSD: src/sbin/routed/output.c,v 1.13 2008/07/30 11:56:15 phk Exp $");
#else
__RCSID("$Revision: 2.27 $");
#ident "$Revision: 2.27 $"
@@ -104,7 +104,6 @@
int flags;
const char *msg;
int res;
- naddr tgt_mcast;
int soc;
int serrno;
@@ -150,31 +149,17 @@
} else {
msg = "Send mcast";
if (rip_sock_mcast != ifp) {
-#ifdef MCAST_IFINDEX
- /* specify ifindex */
- tgt_mcast = htonl(ifp->int_index);
-#else
-#ifdef MCAST_PPP_BUG
- /* Do not specify the primary interface
- * explicitly if we have the multicast
- * point-to-point kernel bug, since the
- * kernel will do the wrong thing if the
- * local address of a point-to-point link
- * is the same as the address of an ordinary
- * interface.
- */
- if (ifp->int_addr == myaddr) {
- tgt_mcast = 0;
- } else
-#endif
- tgt_mcast = ifp->int_addr;
-#endif
+ struct ip_mreqn mreqn;
+
+ memset(&mreqn, 0, sizeof(struct ip_mreqn));
+ mreqn.imr_ifindex = ifp->int_index;
if (0 > setsockopt(rip_sock,
- IPPROTO_IP, IP_MULTICAST_IF,
- &tgt_mcast,
- sizeof(tgt_mcast))) {
+ IPPROTO_IP,
+ IP_MULTICAST_IF,
+ &mreqn,
+ sizeof(mreqn))) {
serrno = errno;
- LOGERR("setsockopt(rip_sock,"
+ LOGERR("setsockopt(rip_sock, "
"IP_MULTICAST_IF)");
errno = serrno;
ifp = 0;
==== //depot/projects/mpsafetty/sbin/routed/rdisc.c#2 (text+ko) ====
@@ -26,7 +26,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/sbin/routed/rdisc.c,v 1.11 2005/05/31 20:28:49 stefanf Exp $
+ * $FreeBSD: src/sbin/routed/rdisc.c,v 1.12 2008/07/30 11:56:15 phk Exp $
*/
#include "defs.h"
@@ -37,7 +37,7 @@
#ifdef __NetBSD__
__RCSID("$NetBSD$");
#elif defined(__FreeBSD__)
-__RCSID("$FreeBSD: src/sbin/routed/rdisc.c,v 1.11 2005/05/31 20:28:49 stefanf Exp $");
+__RCSID("$FreeBSD: src/sbin/routed/rdisc.c,v 1.12 2008/07/30 11:56:15 phk Exp $");
#else
__RCSID("$Revision: 2.27 $");
#ident "$Revision: 2.27 $"
@@ -168,7 +168,8 @@
set_rdisc_mg(struct interface *ifp,
int on) /* 0=turn it off */
{
- struct ip_mreq m;
+ struct group_req gr;
+ struct sockaddr_in *sin;
if (rdisc_sock < 0) {
/* Create the raw socket so that we can hear at least
@@ -185,39 +186,35 @@
return;
}
-#ifdef MCAST_PPP_BUG
- if (ifp->int_if_flags & IFF_POINTOPOINT)
- return;
+ memset(&gr, 0, sizeof(gr));
+ gr.gr_interface = ifp->int_index;
+ sin = (struct sockaddr_in *)&gr.gr_group;
+ sin->sin_family = AF_INET;
+#ifdef _HAVE_SIN_LEN
+ sin->sin_len = sizeof(struct sockaddr_in);
#endif
- memset(&m, 0, sizeof(m));
-#ifdef MCAST_IFINDEX
- m.imr_interface.s_addr = htonl(ifp->int_index);
-#else
- m.imr_interface.s_addr = ((ifp->int_if_flags & IFF_POINTOPOINT)
- ? ifp->int_dstaddr
- : ifp->int_addr);
-#endif
+
if (supplier
|| (ifp->int_state & IS_NO_ADV_IN)
|| !on) {
/* stop listening to advertisements
*/
if (ifp->int_state & IS_ALL_HOSTS) {
- m.imr_multiaddr.s_addr = htonl(INADDR_ALLHOSTS_GROUP);
+ sin->sin_addr.s_addr = htonl(INADDR_ALLHOSTS_GROUP);
if (setsockopt(rdisc_sock, IPPROTO_IP,
- IP_DROP_MEMBERSHIP,
- &m, sizeof(m)) < 0)
- LOGERR("IP_DROP_MEMBERSHIP ALLHOSTS");
+ MCAST_LEAVE_GROUP,
+ &gr, sizeof(gr)) < 0)
+ LOGERR("MCAST_LEAVE_GROUP ALLHOSTS");
ifp->int_state &= ~IS_ALL_HOSTS;
}
} else if (!(ifp->int_state & IS_ALL_HOSTS)) {
/* start listening to advertisements
*/
- m.imr_multiaddr.s_addr = htonl(INADDR_ALLHOSTS_GROUP);
- if (setsockopt(rdisc_sock, IPPROTO_IP, IP_ADD_MEMBERSHIP,
- &m, sizeof(m)) < 0) {
- LOGERR("IP_ADD_MEMBERSHIP ALLHOSTS");
+ sin->sin_addr.s_addr = htonl(INADDR_ALLHOSTS_GROUP);
+ if (setsockopt(rdisc_sock, IPPROTO_IP, MCAST_JOIN_GROUP,
+ &gr, sizeof(gr)) < 0) {
+ LOGERR("MCAST_JOIN_GROUP ALLHOSTS");
} else {
ifp->int_state |= IS_ALL_HOSTS;
}
@@ -229,21 +226,21 @@
/* stop listening to solicitations
*/
if (ifp->int_state & IS_ALL_ROUTERS) {
- m.imr_multiaddr.s_addr=htonl(INADDR_ALLROUTERS_GROUP);
+ sin->sin_addr.s_addr = htonl(INADDR_ALLROUTERS_GROUP);
if (setsockopt(rdisc_sock, IPPROTO_IP,
- IP_DROP_MEMBERSHIP,
- &m, sizeof(m)) < 0)
- LOGERR("IP_DROP_MEMBERSHIP ALLROUTERS");
+ MCAST_LEAVE_GROUP,
+ &gr, sizeof(gr)) < 0)
+ LOGERR("MCAST_LEAVE_GROUP ALLROUTERS");
ifp->int_state &= ~IS_ALL_ROUTERS;
}
} else if (!(ifp->int_state & IS_ALL_ROUTERS)) {
/* start hearing solicitations
*/
- m.imr_multiaddr.s_addr=htonl(INADDR_ALLROUTERS_GROUP);
- if (setsockopt(rdisc_sock, IPPROTO_IP, IP_ADD_MEMBERSHIP,
- &m, sizeof(m)) < 0) {
- LOGERR("IP_ADD_MEMBERSHIP ALLROUTERS");
+ sin->sin_addr.s_addr = htonl(INADDR_ALLROUTERS_GROUP);
+ if (setsockopt(rdisc_sock, IPPROTO_IP, MCAST_JOIN_GROUP,
+ &gr, sizeof(gr)) < 0) {
+ LOGERR("MCAST_JOIN_GROUP ALLROUTERS");
} else {
ifp->int_state |= IS_ALL_ROUTERS;
}
@@ -699,7 +696,6 @@
struct sockaddr_in rsin;
int flags;
const char *msg;
- naddr tgt_mcast;
memset(&rsin, 0, sizeof(rsin));
@@ -736,27 +732,14 @@
}
if (rdisc_sock_mcast != ifp) {
/* select the right interface. */
-#ifdef MCAST_IFINDEX
- /* specify ifindex */
- tgt_mcast = htonl(ifp->int_index);
-#else
-#ifdef MCAST_PPP_BUG
- /* Do not specify the primary interface explicitly
- * if we have the multicast point-to-point kernel
- * bug, since the kernel will do the wrong thing
- * if the local address of a point-to-point link
- * is the same as the address of an ordinary
- * interface.
- */
- if (ifp->int_addr == myaddr) {
- tgt_mcast = 0;
- } else
-#endif
- tgt_mcast = ifp->int_addr;
-#endif
+ struct ip_mreqn mreqn;
+
+ memset(&mreqn, 0, sizeof(struct ip_mreqn));
+ mreqn.imr_ifindex = ifp->int_index;
if (0 > setsockopt(rdisc_sock,
IPPROTO_IP, IP_MULTICAST_IF,
- &tgt_mcast, sizeof(tgt_mcast))) {
+ &mreqn,
+ sizeof(mreqn))) {
LOGERR("setsockopt(rdisc_sock,"
"IP_MULTICAST_IF)");
rdisc_sock_mcast = 0;
==== //depot/projects/mpsafetty/share/colldef/no_NO.ISO8859-1.src#2 (text+ko) ====
@@ -2,7 +2,7 @@
#
# (Based on the Swedish sv_SE.ISO_8859-1)
#
-# $FreeBSD: src/share/colldef/no_NO.ISO8859-1.src,v 1.1 2008/07/28 21:33:34 des Exp $
+# $FreeBSD: src/share/colldef/no_NO.ISO8859-1.src,v 1.2 2008/07/30 15:37:13 des Exp $
#
charmap map.ISO8859-1
order \
@@ -21,9 +21,10 @@
B;(C,<C,>);(D,<D->);(E,<E'>,<E!>,<E/>>,<E:>);\
F;G;H;(I,<I'>,<I!>,<I/>>,<I:>);\
J;...;M;(N,<N?>);(O,<O'>,<O!>,<O?>,<O/>>);\
- P;...;T;(U,<U'>,<U!>,<U/>>,<U:>);\
- V;W;X;(Y,<Y'>);Z;(<AE>,<A:>);(<O//>,<O:>);<AA>;\
+ P;...;T;(U,<U'>,<U!>,<U/>>);\
+ V;W;X;(Y,<Y'>,<U:>);Z;\
<TH>;\
+ (<AE>,<A:>);(<O//>,<O:>);<AA>;\
#
[;\\;];^;<':>;_;<'m>;<''>;`;\
# small
@@ -31,9 +32,10 @@
b;(c,<c,>);(d,<d->);(e,<e'>,<e!>,<e/>>,<e:>);\
f;g;h;(i,<i'>,<i!>,<i/>>,<i:>);\
j;...;m;(n,<n?>);(o,<o'>,<o!>,<o?>,<o/>>);\
- p;...;t;(u,<u'>,<u!>,<u/>>,<u:>);\
- v;w;x;(y,<y'>,<y:>);z;(<ae>,<a:>);(<o//>,<o:>);<aa>;\
+ p;...;t;(u,<u'>,<u!>,<u/>>);\
+ v;w;x;(y,<y'>,<y:>,<u:>);z;\
<th>;\
+ (<ae>,<a:>);(<o//>,<o:>);<aa>;\
#
\{;<NO>;|;<BB>;\};~;<.M>;<DG>;<My>;<DT>;\
# remains
==== //depot/projects/mpsafetty/share/colldef/no_NO.ISO8859-15.src#2 (text+ko) ====
@@ -2,7 +2,7 @@
#
# (Based on the Swedish sv_SE.ISO_8859-15)
#
-# $FreeBSD: src/share/colldef/no_NO.ISO8859-15.src,v 1.1 2008/07/28 21:33:34 des Exp $
+# $FreeBSD: src/share/colldef/no_NO.ISO8859-15.src,v 1.2 2008/07/30 15:37:13 des Exp $
#
charmap map.ISO8859-15
order \
@@ -21,9 +21,10 @@
B;(C,<C,>);(D,<D->);(E,<E'>,<E!>,<E/>>,<E:>);\
F;G;H;(I,<I'>,<I!>,<I/>>,<I:>);\
J;...;M;(N,<N?>);(O,<O'>,<O!>,<O?>,<O/>>,<OE>);\
- P;Q;R;(S,<S<>);T;(U,<U'>,<U!>,<U/>>,<U:>);\
- V;W;X;(Y,<Y'>,<Y:>);(Z,<Z<>);(<AE>,<A:>);(<O//>,<O:>);<AA>;\
+ P;Q;R;(S,<S<>);T;(U,<U'>,<U!>,<U/>>);\
+ V;W;X;(Y,<Y'>,<Y:>,<U:>);(Z,<Z<>);\
<TH>;\
+ (<AE>,<A:>);(<O//>,<O:>);<AA>;\
#
[;\\;];^;_;<'m>;`;\
# small
@@ -31,9 +32,10 @@
b;(c,<c,>);(d,<d->);(e,<e'>,<e!>,<e/>>,<e:>);\
f;g;h;(i,<i'>,<i!>,<i/>>,<i:>);\
j;...;m;(n,<n?>);(o,<o'>,<o!>,<o?>,<o/>>,<oe>);\
- p;q;r;(s,<s<>,<ss>);t;(u,<u'>,<u!>,<u/>>,<u:>);\
- v;w;x;(y,<y'>,<y:>);(z,<z<>);(<ae>,<a:>);(<o//>,<o:>);<aa>;\
+ p;q;r;(s,<s<>,<ss>);t;(u,<u'>,<u!>,<u/>>);\
+ v;w;x;(y,<y'>,<y:>,<u:>);(z,<z<>);\
<th>;\
+ (<ae>,<a:>);(<o//>,<o:>);<aa>;\
#
\{;<NO>;|;\};~;<.M>;<DG>;<My>;<DT>;\
# remains
==== //depot/projects/mpsafetty/share/misc/committers-ports.dot#3 (text+ko) ====
@@ -1,4 +1,4 @@
-# $FreeBSD: src/share/misc/committers-ports.dot,v 1.72 2008/07/23 01:37:04 pgollucci Exp $
+# $FreeBSD: src/share/misc/committers-ports.dot,v 1.73 2008/07/30 01:05:13 rnoland Exp $
# This file is meant to list all FreeBSD ports committers and describe the
# mentor-mentee relationships between them.
@@ -127,6 +127,7 @@
philip [label="Philip Paeps\nphilip at FreeBSD.org\n2005/10/19"]
pgollucci [label="Philip M. Gollucci\npgollucci at FreeBSD.org\n2008/07/21"]
rafan [label="Rong-En Fan\nrafan at FreeBSD.org\n2006/06/23"]
+rnoland [label="Robert Noland\nrnoland at FreeBSD.org\n2008/07/21"]
sat [label="Andrew Pantyukhin\nsat at FreeBSD.org\n2006/05/06"]
sem [label="Sergey Matveychuk\nsem at FreeBSD.org\n2004/07/07"]
sergei [label="Sergei Kolobov\nsergei at FreeBSD.org\n2003/10/21"]
@@ -211,6 +212,7 @@
garga -> acm
garga -> alepulver
garga -> mm
+garga -> rnoland
garga -> vd
garga -> wxs
garga -> xride
==== //depot/projects/mpsafetty/sys/amd64/amd64/cpu_switch.S#2 (text+ko) ====
@@ -30,7 +30,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/sys/amd64/amd64/cpu_switch.S,v 1.161 2008/03/23 23:09:06 peter Exp $
+ * $FreeBSD: src/sys/amd64/amd64/cpu_switch.S,v 1.162 2008/07/30 11:30:55 kib Exp $
*/
#include <machine/asmacros.h>
@@ -113,8 +113,8 @@
movq PCB_GSBASE(%r8),%r10
testl $PCB_32BIT,PCB_FLAGS(%r8)
- jnz store_gs /* static predict not taken */
-done_store_gs:
+ jnz store_seg
+done_store_seg:
testl $PCB_DBREGS,PCB_FLAGS(%r8)
jnz store_dr /* static predict not taken */
@@ -176,6 +176,10 @@
testl $TDP_KTHREAD,TD_PFLAGS(%rsi)
jnz do_kthread
+ testl $PCB_32BIT,PCB_FLAGS(%r8)
+ jnz load_seg
+done_load_seg:
+
cmpq PCB_FSBASE(%r8),%r9
jz 1f
/* Restore userland %fs */
@@ -184,7 +188,6 @@
movl PCB_FSBASE+4(%r8),%edx
wrmsr
1:
-
cmpq PCB_GSBASE(%r8),%r10
jz 2f
/* Restore userland %gs */
@@ -193,8 +196,8 @@
movl PCB_GSBASE+4(%r8),%edx
wrmsr
2:
+
do_tss:
-
/* Update the TSS_RSP0 pointer for the next interrupt */
movq PCPU(TSSP), %rax
movq %r8, PCPU(RSP0)
@@ -208,10 +211,6 @@
jnz load_dr /* static predict not taken */
done_load_dr:
- testl $PCB_32BIT,PCB_FLAGS(%r8)
- jnz load_gs /* static predict not taken */
-done_load_gs:
-
/* Restore context. */
movq PCB_R15(%r8),%r15
movq PCB_R14(%r8),%r14
@@ -243,23 +242,35 @@
movq %r10,PCB_GSBASE(%r8)
jmp do_tss
-store_gs:
+store_seg:
movl %gs,PCB_GS(%r8)
- movq PCB_GS32P(%r8),%rax
+ testl $PCB_GS32BIT,PCB_FLAGS(%r8)
+ jnz 2f
+1: movl %ds,PCB_DS(%r8)
+ movl %es,PCB_ES(%r8)
+ movl %fs,PCB_FS(%r8)
+ jmp done_store_seg
+2: movq PCB_GS32P(%r8),%rax
movq (%rax),%rax
movq %rax,PCB_GS32SD(%r8)
- jmp done_store_gs
+ jmp 1b
-load_gs:
+load_seg:
+ testl $PCB_GS32BIT,PCB_FLAGS(%r8)
+ jnz 2f
+1: movl $MSR_GSBASE,%ecx
+ rdmsr
+ movl PCB_GS(%r8),%gs
+ wrmsr
+ movl PCB_DS(%r8),%ds
+ movl PCB_ES(%r8),%es
+ movl PCB_FS(%r8),%fs
+ jmp done_load_seg
/* Restore userland %gs while preserving kernel gsbase */
- movq PCB_GS32P(%r8),%rax
+2: movq PCB_GS32P(%r8),%rax
movq PCB_GS32SD(%r8),%rcx
movq %rcx,(%rax)
- movl $MSR_GSBASE,%ecx
- rdmsr
- movl PCB_GS(%r8),%gs
- wrmsr
- jmp done_load_gs
+ jmp 1b
store_dr:
movq %dr7,%rax /* yes, do the save */
==== //depot/projects/mpsafetty/sys/amd64/amd64/genassym.c#2 (text+ko) ====
@@ -33,7 +33,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/genassym.c,v 1.168 2008/05/16 13:23:47 attilio Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/genassym.c,v 1.169 2008/07/30 11:30:55 kib Exp $");
#include "opt_compat.h"
#include "opt_kstack_pages.h"
@@ -140,6 +140,7 @@
ASSYM(PCB_DR7, offsetof(struct pcb, pcb_dr7));
ASSYM(PCB_DBREGS, PCB_DBREGS);
>>> TRUNCATED FOR MAIL (1000 lines) <<<
More information about the p4-projects
mailing list