From owner-p4-projects@FreeBSD.ORG Sun May 22 03:45:01 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7503E16A420; Sun, 22 May 2005 03:45:00 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2DD8316A41C for ; Sun, 22 May 2005 03:45:00 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E528A43D49 for ; Sun, 22 May 2005 03:44:59 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4M3ixAF007105 for ; Sun, 22 May 2005 03:44:59 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4M3ixbe007102 for perforce@freebsd.org; Sun, 22 May 2005 03:44:59 GMT (envelope-from sam@freebsd.org) Date: Sun, 22 May 2005 03:44:59 GMT Message-Id: <200505220344.j4M3ixbe007102@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 77271 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 22 May 2005 03:45:01 -0000 http://perforce.freebsd.org/chv.cgi?CH=77271 Change 77271 by sam@sam_ebb on 2005/05/22 03:44:37 ieee80211_start_scan no longer returns an error code Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_ioctl.c#12 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_ioctl.c#12 (text+ko) ==== @@ -1722,7 +1722,7 @@ case IEEE80211_IOC_SCAN_REQ: IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN, "%s: active scan request\n", __func__); - error = ieee80211_start_scan(vap, + ieee80211_start_scan(vap, IEEE80211_SCAN_ACTIVE | IEEE80211_SCAN_NOPICK | IEEE80211_SCAN_ONCE, IEEE80211_SCAN_FOREVER); From owner-p4-projects@FreeBSD.ORG Sun May 22 03:49:06 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 27D5816A420; Sun, 22 May 2005 03:49:06 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 02A8816A41C for ; Sun, 22 May 2005 03:49:06 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C281843D4C for ; Sun, 22 May 2005 03:49:05 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4M3n5Kp007281 for ; Sun, 22 May 2005 03:49:05 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4M3n5eN007277 for perforce@freebsd.org; Sun, 22 May 2005 03:49:05 GMT (envelope-from sam@freebsd.org) Date: Sun, 22 May 2005 03:49:05 GMT Message-Id: <200505220349.j4M3n5eN007277@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 77273 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 22 May 2005 03:49:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=77273 Change 77273 by sam@sam_ebb on 2005/05/22 03:48:56 Fillin simple sta-side ps operation: o process tim ie and drop out of ps when we see frame(s) pending (need to optimize, e.g. just stay awake for mcast traffic) o do sta beacon processing when scanning too o flush ps queue when leaving sta ps state; we don't need to wait for an ack of the null data frame since we're guaranteed frame ordering (though bad things will happen if the ap doesn't hear the null data frame) Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_input.c#14 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_input.c#14 (text+ko) ==== @@ -2109,6 +2109,7 @@ u_int8_t *frm, *efrm; u_int8_t *ssid, *rates, *xrates, *wpa, *wme, *ath; int reassoc, resp, allocbs; + struct ieee80211_tim_ie *tim; wh = mtod(m0, struct ieee80211_frame *); frm = (u_int8_t *)&wh[1]; @@ -2154,6 +2155,7 @@ scan.capinfo = le16toh(*(u_int16_t *)frm); frm += 2; scan.bchan = ieee80211_chan2ieee(ic, ic->ic_curchan); scan.chan = scan.bchan; + tim = NULL; while (frm < efrm) { switch (*frm) { @@ -2184,6 +2186,7 @@ case IEEE80211_ELEMID_TIM: /* XXX ATIM? */ scan.timoff = frm - mtod(m0, u_int8_t *); + tim = (struct ieee80211_tim_ie *) frm; break; case IEEE80211_ELEMID_IBSSPARMS: break; @@ -2247,6 +2250,7 @@ * But we should take it for FH phy because * the rssi value should be correct even for * different hop pattern in FH. + * XXX detect associated ap changing channels */ IEEE80211_DISCARD(vap, IEEE80211_MSG_ELEMID, wh, ieee80211_mgt_subtype_name[subtype >> @@ -2271,8 +2275,7 @@ */ if (vap->iv_opmode == IEEE80211_M_STA && ni->ni_associd != 0 && - ((ic->ic_flags & IEEE80211_F_SCAN) == 0 || - IEEE80211_ADDR_EQ(wh->i_addr2, ni->ni_bssid))) { + IEEE80211_ADDR_EQ(wh->i_addr2, ni->ni_bssid)) { if (ni->ni_erp != scan.erp) { IEEE80211_NOTE(vap, IEEE80211_MSG_ASSOC, ni, "erp change: was 0x%x, now 0x%x", @@ -2322,28 +2325,45 @@ } if (scan.doth != NULL) ieee80211_parse_dothparams(vap, scan.doth, wh); - if ((ic->ic_flags & IEEE80211_F_SCAN) == 0) { + if (tim != NULL) { /* - * Check if it's the right time to do a - * background scan. Background scanning must - * be enabled and we must not be operating in - * turbo phase of dynamic turbo mode. Then, - * it's been a while since the last background - * scan and if no data frames have come through - * recently, kick off a scan. Note that this - * is the mechanism by which a background scan - * is started _and_ continued each time we - * return on-channel to receive a beacon from - * our ap. + * Check the TIM. For now we drop out of + * power save mode for any reason. */ - if ((vap->iv_flags & IEEE80211_F_BGSCAN) && - !IEEE80211_IS_CHAN_DTURBO(ic->ic_curchan) && - ticks - ic->ic_lastscan >= vap->iv_bgscanintvl && - ticks - ic->ic_lastdata >= vap->iv_bgscanidle) - ieee80211_bg_scan(vap); - /* NB: don't need the rest of this */ - return; + int aid = IEEE80211_AID(ni->ni_associd); + int ix = aid / NBBY; + int min = tim->tim_bitctl &~ 1; + int max = tim->tim_len + min - 4; + if ((tim->tim_bitctl&1) || + (min <= ix && ix <= max && + isset(tim->tim_bitmap - min, aid))) + ieee80211_sta_pwrsave(vap, 0); } + /* + * If scanning, pass the info to the scan module. + * Otherwise, check if it's the right time to do + * a background scan. Background scanning must + * be enabled and we must not be operating in the + * turbo phase of dynamic turbo mode. Then, + * it's been a while since the last background + * scan and if no data frames have come through + * recently, kick off a scan. Note that this + * is the mechanism by which a background scan + * is started _and_ continued each time we + * return on-channel to receive a beacon from + * our ap. + */ + if (ic->ic_flags & IEEE80211_F_SCAN) + ieee80211_add_scan(vap, &scan, wh, + subtype, rssi, rstamp); + else if ((vap->iv_flags & IEEE80211_F_BGSCAN) && + !IEEE80211_IS_CHAN_DTURBO(ic->ic_curchan) && + time_after(ticks, + ic->ic_lastscan + vap->iv_bgscanintvl) && + time_after(ticks, + ic->ic_lastdata + vap->iv_bgscanidle)) + ieee80211_bg_scan(vap); + return; } /* * If scanning, just pass information to the scan module. @@ -2985,20 +3005,54 @@ ieee80211_sta_pwrsave(struct ieee80211vap *vap, int enable) { struct ieee80211_node *ni = vap->iv_bss; + int qlen; IEEE80211_NOTE(vap, IEEE80211_MSG_POWER, ni, "sta power save mode %s", enable ? "on" : "off"); - if (enable) { - if ((ni->ni_flags & IEEE80211_NODE_PWR_MGT) == 0) { - ni->ni_flags |= IEEE80211_NODE_PWR_MGT; + if (!enable) { + if (ni->ni_flags & IEEE80211_NODE_PWR_MGT) { + ni->ni_flags &= ~IEEE80211_NODE_PWR_MGT; ieee80211_send_nulldata(ieee80211_ref_node(ni)); + /* + * Flush any queued frames; we can do this immediately + * because we know they'll be queued behind the null + * data frame we send the ap. + * XXX can we use a data frame to take us out of ps? + */ + qlen = IEEE80211_NODE_SAVEQ_QLEN(ni); + if (qlen != 0) { + struct ifnet *ifp = &vap->iv_arp.ac_if; + struct ifaltq *ifq = &ifp->if_snd; + struct ifqueue *psq = &ni->ni_savedq; + int active; + + IEEE80211_NOTE(vap, IEEE80211_MSG_POWER, ni, + "flush ps queue, %u packets queued", qlen); + active = 1; + IF_LOCK(ifq); + IF_LOCK(psq); + for (;;) { + struct mbuf *m; + + if (_IF_QLEN(psq) == 0) + break; + if (_IF_QFULL(ifq)) + break; + _IF_DEQUEUE(psq, m); + /* NB: no accounting, already done */ + _IF_ENQUEUE(ifq, m); + active = ifp->if_flags & IFF_OACTIVE; + } + IF_UNLOCK(psq); + IF_UNLOCK(ifq); + if (!active) + if_start(ifp); + } } } else { - if (ni->ni_flags & IEEE80211_NODE_PWR_MGT) { - ni->ni_flags &= ~IEEE80211_NODE_PWR_MGT; + if ((ni->ni_flags & IEEE80211_NODE_PWR_MGT) == 0) { + ni->ni_flags |= IEEE80211_NODE_PWR_MGT; ieee80211_send_nulldata(ieee80211_ref_node(ni)); - /* NB: cannot flush ps queue until ack received */ - /* XXX no mechanism for this... */ } } } From owner-p4-projects@FreeBSD.ORG Sun May 22 03:51:10 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id ABDAA16A421; Sun, 22 May 2005 03:51:09 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3FAFC16A420 for ; Sun, 22 May 2005 03:51:09 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1798143D1D for ; Sun, 22 May 2005 03:51:09 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4M3p8o1007448 for ; Sun, 22 May 2005 03:51:08 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4M3p8Ns007445 for perforce@freebsd.org; Sun, 22 May 2005 03:51:08 GMT (envelope-from sam@freebsd.org) Date: Sun, 22 May 2005 03:51:08 GMT Message-Id: <200505220351.j4M3p8Ns007445@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 77275 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 22 May 2005 03:51:10 -0000 http://perforce.freebsd.org/chv.cgi?CH=77275 Change 77275 by sam@sam_ebb on 2005/05/22 03:50:33 fix two more cases where we need to honor manual roaming: RUN -> AUTH and RUN -> ASSOC Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_proto.c#10 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_proto.c#10 (text+ko) ==== @@ -1145,8 +1145,9 @@ enum ieee80211_state ostate; ostate = vap->iv_state; - IEEE80211_DPRINTF(vap, IEEE80211_MSG_STATE, "%s: %s -> %s\n", __func__, - ieee80211_state_name[ostate], ieee80211_state_name[nstate]); + IEEE80211_DPRINTF(vap, IEEE80211_MSG_STATE, "%s: %s -> %s (arg 0x%x)\n", + __func__, ieee80211_state_name[ostate], + ieee80211_state_name[nstate], arg); vap->iv_state = nstate; /* state transition */ callout_stop(&vap->iv_mgtsend); if (ostate != IEEE80211_S_SCAN) @@ -1272,7 +1273,6 @@ case IEEE80211_S_ASSOC: switch (arg) { case IEEE80211_FC0_SUBTYPE_AUTH: - /* ??? */ IEEE80211_SEND_MGMT(ni, IEEE80211_FC0_SUBTYPE_AUTH, 2); break; @@ -1290,10 +1290,12 @@ vap->iv_state = ostate; /* stay RUN */ break; case IEEE80211_FC0_SUBTYPE_DEAUTH: - /* try to reauth */ - IEEE80211_SEND_MGMT(ni, - IEEE80211_FC0_SUBTYPE_AUTH, 1); ieee80211_sta_leave(ni); + if (ic->ic_roaming == IEEE80211_ROAMING_AUTO) { + /* try to reauth */ + IEEE80211_SEND_MGMT(ni, + IEEE80211_FC0_SUBTYPE_AUTH, 1); + } break; } break; @@ -1315,11 +1317,13 @@ IEEE80211_FC0_SUBTYPE_ASSOC_REQ, 0); break; case IEEE80211_S_RUN: - /* NB: caller specifies ASSOC/REASSOC with arg */ - IEEE80211_SEND_MGMT(ni, arg ? - IEEE80211_FC0_SUBTYPE_REASSOC_REQ : - IEEE80211_FC0_SUBTYPE_ASSOC_REQ, 0); ieee80211_sta_leave(ni); + if (ic->ic_roaming == IEEE80211_ROAMING_AUTO) { + /* NB: caller specifies ASSOC/REASSOC by arg */ + IEEE80211_SEND_MGMT(ni, arg ? + IEEE80211_FC0_SUBTYPE_REASSOC_REQ : + IEEE80211_FC0_SUBTYPE_ASSOC_REQ, 0); + } break; } break; From owner-p4-projects@FreeBSD.ORG Sun May 22 04:02:24 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 91EDD16A421; Sun, 22 May 2005 04:02:23 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4A08D16A41F for ; Sun, 22 May 2005 04:02:23 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0D9F043D1F for ; Sun, 22 May 2005 04:02:23 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4M42NN8007856 for ; Sun, 22 May 2005 04:02:23 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4M42Ml4007853 for perforce@freebsd.org; Sun, 22 May 2005 04:02:22 GMT (envelope-from sam@freebsd.org) Date: Sun, 22 May 2005 04:02:22 GMT Message-Id: <200505220402.j4M42Ml4007853@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 77276 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 22 May 2005 04:02:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=77276 Change 77276 by sam@sam_ebb on 2005/05/22 04:01:39 Working sta mode bg scanning (mostly): o hide scan implementation details from scan policy modules by making ic_scan a pointer to a struct that has public+private sections o move power save work out of policy code and into the core o change policy scan_restart callback to be invoked when a bg scan is restarted with the first entry in the channel list o change scan canceling to mark a flag, reset the time to fire immediately, and let the work be done in the timer context o eliminate IEEE80211_SCAN_PWRSAV, check the actual node state to see if we're in power save mode to avoid inconsistent state now that other code is futzing with ps state o clear IEEE80211_F_SCAN before dropping out of power save mode so any null data frame passing through ieee80211_start doesn't cause us to try and cancel a bg scan o change sta policy code to purge cache entries when there's been no traffic from the sta for 2 complete scans Still need to tweak the bg scan scheduling to leave more room to return on-channel for beacons. Also need to improve behaviour when traffic preempts a bg scan. Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_scan.c#5 edit .. //depot/projects/vap/sys/net80211/ieee80211_scan.h#3 edit .. //depot/projects/vap/sys/net80211/ieee80211_scan_ap.c#4 edit .. //depot/projects/vap/sys/net80211/ieee80211_scan_sta.c#6 edit .. //depot/projects/vap/sys/net80211/ieee80211_var.h#14 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_scan.c#5 (text+ko) ==== @@ -50,29 +50,49 @@ #include -static void ieee80211_next_scan(void *arg); +struct scan_state { + struct ieee80211_scan_state base; /* public state */ + + struct ieee80211_channel *ss_savchan; /* saved channel setting */ + unsigned long ss_scanend; /* time scan must stop */ + unsigned long ss_chanmindwell; /* " " " on curchan */ + struct callout ss_scan_timer; /* scan timer */ +}; +#define SCAN_PRIVATE(ss) ((struct scan_state *) ss) + +static void scan_next(void *arg); MALLOC_DEFINE(M_80211_SCAN, "80211scan", "802.11 scan state"); void ieee80211_scan_attach(struct ieee80211com *ic) { - struct ieee80211_scan_state *ss = &ic->ic_scan; + struct scan_state *ss; - callout_init(&ss->ss_scan_timer, CALLOUT_MPSAFE); + MALLOC(ss, struct scan_state *, sizeof(struct scan_state), + M_80211_SCAN, M_NOWAIT | M_ZERO); + if (ss != NULL) { + callout_init(&ss->ss_scan_timer, CALLOUT_MPSAFE); + ic->ic_scan = &ss->base; + } else + ic->ic_scan = NULL; } void ieee80211_scan_detach(struct ieee80211com *ic) { - struct ieee80211_scan_state *ss = &ic->ic_scan; + struct ieee80211_scan_state *ss = ic->ic_scan; - callout_drain(&ss->ss_scan_timer); - if (ss->ss_ops != NULL) { - ss->ss_ops->scan_detach(ss); - ss->ss_ops = NULL; + if (ss != NULL) { + callout_drain(&SCAN_PRIVATE(ss)->ss_scan_timer); + if (ss->ss_ops != NULL) { + ss->ss_ops->scan_detach(ss); + ss->ss_ops = NULL; + } + ic->ic_flags &= ~IEEE80211_F_SCAN; + ic->ic_scan = NULL; + FREE(SCAN_PRIVATE(ss), M_80211_SCAN); } - ic->ic_flags &= ~IEEE80211_F_SCAN; } void @@ -86,12 +106,12 @@ ieee80211_scan_vdetach(struct ieee80211vap *vap) { struct ieee80211com *ic = vap->iv_ic; - struct ieee80211_scan_state *ss = &ic->ic_scan; + struct ieee80211_scan_state *ss = ic->ic_scan; IEEE80211_LOCK(ic); if (ss->ss_vap == vap) { if (ic->ic_flags & IEEE80211_F_SCAN) { - callout_drain(&ss->ss_scan_timer); + callout_drain(&SCAN_PRIVATE(ss)->ss_scan_timer); ic->ic_flags &= ~IEEE80211_F_SCAN; } if (ss->ss_ops != NULL) { @@ -203,27 +223,37 @@ } /* - * Kick off the scanning thread. + * Start/restart scanning. If we're operating in station mode + * and associated notify the ap we're going into power save mode. + * Otherwise, start the scan directly. */ static void -start_timer(struct ieee80211_scan_state *ss, u_int duration) +scan_restart(struct scan_state *ss, u_int duration) { - int delay; + struct ieee80211vap *vap = ss->base.ss_vap; + struct ieee80211com *ic = vap->iv_ic; + int delay = 0; + + if (vap->iv_opmode == IEEE80211_M_STA && + vap->iv_state == IEEE80211_S_RUN) { + if ((vap->iv_bss->ni_flags & IEEE80211_NODE_PWR_MGT) == 0) { + /* + * Initiate power save before going off-channel. + * Use an initial 1ms delay to insure the null + * data frame has a chance to go out. + * XXX bogus, need to trigger on on tx complete. + */ + ieee80211_sta_pwrsave(vap, 1); + delay = hz/1000; + if (delay < 1) + delay = 1; + } + } - if (ss->ss_flags & IEEE80211_SCAN_PWRSAV) { - /* - * Use an initial 1ms delay to insure any - * power save frame has a chance to go out. - * XXX 1ms is a lot, better to trigger scan - * on tx complete. - */ - delay = hz/1000; - if (delay < 1) - delay = 1; - } else - delay = 1; + ss->ss_savchan = ic->ic_curchan; + ic->ic_scan_start(ic); /* notify driver */ ss->ss_scanend = ticks + delay + duration; - callout_reset(&ss->ss_scan_timer, delay, ieee80211_next_scan, ss); + callout_reset(&ss->ss_scan_timer, delay, scan_next, &ss->base); } /* @@ -234,7 +264,7 @@ { struct ieee80211com *ic = vap->iv_ic; const struct ieee80211_scanner *scan; - struct ieee80211_scan_state *ss = &ic->ic_scan; + struct ieee80211_scan_state *ss = ic->ic_scan; scan = ieee80211_scanner_get(vap->iv_opmode); if (scan == NULL) { @@ -277,14 +307,14 @@ vap->iv_stats.is_scan_active++; else vap->iv_stats.is_scan_passive++; - ss->ss_savchan = ic->ic_curchan; + SCAN_PRIVATE(ss)->ss_savchan = ic->ic_curchan; if (flags & IEEE80211_SCAN_FLUSH) ss->ss_ops->scan_flush(ss); /* NB: flush frames rx'd before 1st channel change */ ss->ss_flags |= IEEE80211_SCAN_DISCARD; ss->ss_ops->scan_start(ss, vap); - start_timer(ss, duration); + scan_restart(SCAN_PRIVATE(ss), duration); ic->ic_flags |= IEEE80211_F_SCAN; } } else { @@ -306,7 +336,7 @@ ieee80211_check_scan(struct ieee80211vap *vap, int flags, u_int duration) { struct ieee80211com *ic = vap->iv_ic; - struct ieee80211_scan_state *ss = &ic->ic_scan; + struct ieee80211_scan_state *ss = ic->ic_scan; int checkscanlist = 0; /* @@ -352,7 +382,7 @@ ieee80211_bg_scan(struct ieee80211vap *vap) { struct ieee80211com *ic = vap->iv_ic; - struct ieee80211_scan_state *ss = &ic->ic_scan; + struct ieee80211_scan_state *ss = ic->ic_scan; IEEE80211_LOCK(ic); if ((ic->ic_flags & IEEE80211_F_SCAN) == 0) { @@ -378,7 +408,7 @@ IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN, "%s: %s scan, duration %lu\n", __func__, - ic->ic_flags & IEEE80211_F_SCAN ? "active" : "passive", + ss->ss_flags & IEEE80211_SCAN_ACTIVE ? "active" : "passive", duration); if (ss->ss_ops != NULL) { @@ -406,11 +436,11 @@ vap->iv_stats.is_scan_active++; else vap->iv_stats.is_scan_passive++; + ss->ss_ops->scan_restart(ss, vap); } /* NB: flush frames rx'd before 1st channel change */ ss->ss_flags |= IEEE80211_SCAN_DISCARD; - ss->ss_ops->scan_restart(ss, vap); - start_timer(ss, duration); + scan_restart(SCAN_PRIVATE(ss), duration); ic->ic_flags |= IEEE80211_F_SCAN; } else { /* XXX msg+stat */ @@ -433,30 +463,21 @@ ieee80211_cancel_scan(struct ieee80211vap *vap) { struct ieee80211com *ic = vap->iv_ic; - struct ieee80211_scan_state *ss = &ic->ic_scan; + struct ieee80211_scan_state *ss = ic->ic_scan; IEEE80211_LOCK(ic); if (ic->ic_flags & IEEE80211_F_SCAN) { IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN, "%s: cancel %s scan\n", __func__, - ss->ss_flags&IEEE80211_SCAN_ACTIVE ? "active" : "passive"); + ss->ss_flags & IEEE80211_SCAN_ACTIVE ? + "active" : "passive"); - callout_drain(&ss->ss_scan_timer); - /* XXX maybe this should be handled in the timer routine? */ - ic->ic_flags &= ~IEEE80211_F_SCAN; - ss->ss_ops->scan_cancel(ss, vap); - /* return to previous channel if needed */ - if (ss->ss_savchan != ic->ic_curchan) - change_channel(ic, ss->ss_savchan); - ic->ic_scan_end(ic); /* notify driver */ - /* XXX ieee80211_end_scan or otherwise notify? */ - if (ss->ss_flags & IEEE80211_SCAN_PWRSAV) { - ieee80211_sta_pwrsave(vap, 0); - ss->ss_flags &= ~IEEE80211_SCAN_PWRSAV; - } - /* clear ephemeral state bits */ - ss->ss_flags &= ~(IEEE80211_SCAN_MINDWELL | - IEEE80211_SCAN_BGSCAN | IEEE80211_SCAN_ONCE); + /* clear bg scan NOPICK and mark cancel request */ + ss->ss_flags &= ~IEEE80211_SCAN_NOPICK; + ss->ss_flags |= IEEE80211_SCAN_CANCEL; + /* NB: trigger at next clock tick */ + callout_reset(&SCAN_PRIVATE(ss)->ss_scan_timer, 1, + scan_next, ss); } IEEE80211_UNLOCK(ic); } @@ -465,13 +486,13 @@ * Switch to the next channel marked for scanning. */ static void -ieee80211_next_scan(void *arg) +scan_next(void *arg) { struct ieee80211_scan_state *ss = arg; struct ieee80211vap *vap = ss->ss_vap; struct ieee80211com *ic = vap->iv_ic; struct ieee80211_channel *chan; - unsigned long maxdwell; + unsigned long maxdwell, scanend; int scanning, scandone, i; IEEE80211_LOCK(ic); @@ -482,15 +503,17 @@ /* XXX if taking first candidate check for a valid result */ again: - scandone = (ss->ss_next >= ss->ss_last); - if (!scandone && time_before(ticks + ss->ss_mindwell, ss->ss_scanend)) { + scandone = (ss->ss_next >= ss->ss_last) || + (ss->ss_flags & IEEE80211_SCAN_CANCEL) != 0; + scanend = SCAN_PRIVATE(ss)->ss_scanend; + if (!scandone && time_before(ticks + ss->ss_mindwell, scanend)) { chan = ss->ss_chans[ss->ss_next++]; /* * Watch for truncation due to the scan end time. */ - if (time_after(ticks + ss->ss_maxdwell, ss->ss_scanend)) - maxdwell = ss->ss_scanend - ticks; + if (time_after(ticks + ss->ss_maxdwell, scanend)) + maxdwell = scanend - ticks; else maxdwell = ss->ss_maxdwell; @@ -538,39 +561,44 @@ ss->ss_probe_ssid[i].len, vap->iv_opt_ie, vap->iv_opt_ie_len); } - ss->ss_chanmindwell = ticks + ss->ss_mindwell; - callout_reset(&ss->ss_scan_timer, maxdwell, - ieee80211_next_scan, ss); + SCAN_PRIVATE(ss)->ss_chanmindwell = ticks + ss->ss_mindwell; + callout_reset(&SCAN_PRIVATE(ss)->ss_scan_timer, maxdwell, + scan_next, ss); /* clear mindwell lock and initial channel change flush */ ss->ss_flags &= ~(IEEE80211_SCAN_MINDWELL | IEEE80211_SCAN_DISCARD); } else { + ic->ic_scan_end(ic); /* notify driver */ /* - * Scan completed, do post-processing. If the callback - * function returns 0, then it wants to continue/restart - * scanning. Unfortunately we need to notify the driver - * to end the scan before we invoke the callback method - * to avoid having rx frames alter the scan candidate - * list (maybe we could use a flag to have them discarded?). + * Record scan complete time. Note that we also do + * this when canceled so any background scan will + * not be restarted for a while. */ - ic->ic_scan_end(ic); /* notify driver */ - if (scandone) /* record scan complete time */ + if (scandone) ic->ic_lastscan = ticks; /* return to the original channel */ - if (ss->ss_savchan != ic->ic_curchan) - change_channel(ic, ss->ss_savchan); + if (SCAN_PRIVATE(ss)->ss_savchan != ic->ic_curchan) + change_channel(ic, SCAN_PRIVATE(ss)->ss_savchan); /* clear mindwell lock and initial channel change flush */ ss->ss_flags &= ~(IEEE80211_SCAN_MINDWELL | IEEE80211_SCAN_DISCARD); - if (!ss->ss_ops->scan_end(ss, vap) && + /* + * If not canceled and scan completed, do post-processing. + * If the callback function returns 0, then it wants to + * continue/restart scanning. Unfortunately we needed to + * notify the driver to end the scan above to avoid having + * rx frames alter the scan candidate list. + */ + if ((ss->ss_flags & IEEE80211_SCAN_CANCEL) == 0 && + !ss->ss_ops->scan_end(ss, vap) && (ss->ss_flags & IEEE80211_SCAN_ONCE) == 0 && - time_before(ticks + ss->ss_mindwell, ss->ss_scanend)) { + time_before(ticks + ss->ss_mindwell, scanend)) { IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN, "%s: done, restart " "[ticks %lu, dwell min %lu scanend %lu]\n", __func__, - ticks, ss->ss_mindwell, ss->ss_scanend); + ticks, ss->ss_mindwell, scanend); ss->ss_next = 0; /* reset to begining */ if (ss->ss_flags & IEEE80211_SCAN_ACTIVE) vap->iv_stats.is_scan_active++; @@ -583,14 +611,20 @@ /* past here, scandone is ``true'' if not in bg mode */ if ((ss->ss_flags & IEEE80211_SCAN_BGSCAN) == 0) scandone = 1; - ss->ss_flags &= ~IEEE80211_SCAN_ONCE; IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN, "%s: %s, [ticks %lu, dwell min %lu scanend %lu]\n", __func__, scandone ? "done" : "stopped", - ticks, ss->ss_mindwell, ss->ss_scanend); + ticks, ss->ss_mindwell, scanend); /* + * Clear the SCAN bit first in case frames are + * pending on the station power save queue. If + * we defer this then the dispatch of the frames + * may generate a request to cancel scanning. + */ + ic->ic_flags &= ~IEEE80211_F_SCAN; + /* * Drop out of power save mode when a scan has * completed. If this scan was prematurely terminated * because it is a background scan then don't notify @@ -599,15 +633,13 @@ * save mode because the beacon indicates we have frames * waiting for us. */ - if (scandone && - (ss->ss_flags & IEEE80211_SCAN_PWRSAV)) { + if (scandone) { ieee80211_sta_pwrsave(vap, 0); - ss->ss_flags &= ~IEEE80211_SCAN_PWRSAV; + if (ss->ss_next >= ss->ss_last) + ieee80211_notify_scan_done(vap); } - ic->ic_flags &= ~IEEE80211_F_SCAN; - /* NB: suppress notification during bg scan */ - if (scandone) - ieee80211_notify_scan_done(vap); + ss->ss_flags &= + ~(IEEE80211_SCAN_CANCEL | IEEE80211_SCAN_ONCE); } } } @@ -720,7 +752,7 @@ int subtype, int rssi, int rstamp) { struct ieee80211com *ic = vap->iv_ic; - struct ieee80211_scan_state *ss = &ic->ic_scan; + struct ieee80211_scan_state *ss = ic->ic_scan; /* * Frames received during startup are discarded to avoid @@ -743,13 +775,13 @@ * the timer so we'll switch to the next channel. */ if ((ss->ss_flags & IEEE80211_SCAN_MINDWELL) == 0 && - time_after_eq(ticks, ss->ss_chanmindwell)) { + time_after_eq(ticks, SCAN_PRIVATE(ss)->ss_chanmindwell)) { IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN, "%s: chan %3d%c min dwell met (%lu > %lu)\n", __func__, ieee80211_chan2ieee(ic, ic->ic_curchan), channel_type(ic->ic_curchan), - ticks, ss->ss_chanmindwell); + ticks, SCAN_PRIVATE(ss)->ss_chanmindwell); /* * XXX * We want to just kick the timer and still @@ -762,8 +794,8 @@ ss->ss_flags |= IEEE80211_SCAN_DISCARD; #endif /* NB: trigger at next clock tick */ - callout_reset(&ss->ss_scan_timer, 1, - ieee80211_next_scan, ss); + callout_reset(&SCAN_PRIVATE(ss)->ss_scan_timer, 1, + scan_next, ss); } } } @@ -775,7 +807,7 @@ void ieee80211_scan_timeout(struct ieee80211com *ic) { - struct ieee80211_scan_state *ss = &ic->ic_scan; + struct ieee80211_scan_state *ss = ic->ic_scan; if (ss->ss_ops != NULL) ss->ss_ops->scan_age(ss); @@ -787,7 +819,7 @@ void ieee80211_scan_assocfail(struct ieee80211com *ic, const u_int8_t mac[]) { - struct ieee80211_scan_state *ss = &ic->ic_scan; + struct ieee80211_scan_state *ss = ic->ic_scan; if (ss->ss_ops != NULL) ss->ss_ops->scan_assocfail(ss, mac); @@ -800,7 +832,7 @@ ieee80211_scan_iterate(struct ieee80211com *ic, ieee80211_scan_iter_func *f, void *arg) { - struct ieee80211_scan_state *ss = &ic->ic_scan; + struct ieee80211_scan_state *ss = ic->ic_scan; if (ss->ss_ops != NULL) ss->ss_ops->scan_iterate(ss, f, arg); ==== //depot/projects/vap/sys/net80211/ieee80211_scan.h#3 (text+ko) ==== @@ -40,15 +40,16 @@ struct ieee80211_scan_state { struct ieee80211vap *ss_vap; const struct ieee80211_scanner *ss_ops; /* policy hookup, see below */ + void *ss_priv; /* scanner private state */ u_int16_t ss_flags; #define IEEE80211_SCAN_NOPICK 0x0001 /* scan only, no selection */ #define IEEE80211_SCAN_ACTIVE 0x0002 /* active scan (probe req) */ #define IEEE80211_SCAN_PICK1ST 0x0004 /* ``hey sailor'' mode */ #define IEEE80211_SCAN_BGSCAN 0x0008 /* bg scan, exit ps at end */ #define IEEE80211_SCAN_ONCE 0x0010 /* do one complete pass */ -#define IEEE80211_SCAN_PWRSAV 0x1000 /* exit power save mode */ -#define IEEE80211_SCAN_MINDWELL 0x2000 /* min dwell time reached */ -#define IEEE80211_SCAN_DISCARD 0x4000 /* discard rx'd frames */ +#define IEEE80211_SCAN_MINDWELL 0x1000 /* min dwell time reached */ +#define IEEE80211_SCAN_DISCARD 0x2000 /* discard rx'd frames */ +#define IEEE80211_SCAN_CANCEL 0x4000 /* cancel current scan */ u_int8_t ss_pad; u_int8_t ss_nprobe_ssid; /* # ssid's to probe */ struct { @@ -60,12 +61,8 @@ struct ieee80211_channel *ss_chans[IEEE80211_SCAN_MAX]; u_int16_t ss_next; /* ix of next chan to scan */ u_int16_t ss_last; /* ix+1 of last chan to scan */ - unsigned long ss_scanend; /* time scan must stop */ unsigned long ss_mindwell; /* min dwell on channel */ - unsigned long ss_chanmindwell; /* " " " on curchan */ unsigned long ss_maxdwell; /* max dwell on channel */ - struct callout ss_scan_timer; /* scan timer */ - void *ss_priv; /* scanner private state */ }; /* ==== //depot/projects/vap/sys/net80211/ieee80211_scan_ap.c#4 (text+ko) ==== @@ -97,21 +97,6 @@ return 0; } -/* - * Restart a previous scan. - */ -static int -ap_restart(struct ieee80211_scan_state *ss, struct ieee80211vap *vap) -{ - struct ieee80211com *ic = vap->iv_ic; - - ss->ss_flags &= ~IEEE80211_SCAN_PWRSAV; - ss->ss_savchan = ic->ic_curchan; - ic->ic_scan_start(ic); /* notify driver */ - - return 0; -} - static struct ieee80211_channel * find11gchannel(struct ieee80211com *ic, int i, int freq) { @@ -304,11 +289,20 @@ } #endif /* IEEE80211_DEBUG */ - return ap_restart(ss, vap); + return 0; #undef N } /* + * Restart a previous scan. + */ +static int +ap_restart(struct ieee80211_scan_state *ss, struct ieee80211vap *vap) +{ + return 0; +} + +/* * Cancel an ongoing scan. */ static int ==== //depot/projects/vap/sys/net80211/ieee80211_scan_sta.c#6 (text+ko) ==== @@ -60,7 +60,7 @@ * (background) scans is discarded * o after STA_FAILS_AGE seconds we clear the failure count */ -#define STA_FAILS_MAX 2 /* assoc failures before purge */ +#define STA_FAILS_MAX 2 /* assoc failures before ignored */ #define STA_FAILS_AGE (2*60) /* time before clearing fails (secs) */ #define STA_PURGE_SCANS 2 /* age for purging entries (scans) */ @@ -81,6 +81,8 @@ TAILQ_ENTRY(sta_entry) se_list; LIST_ENTRY(sta_entry) se_hash; u_int8_t se_fails; /* failure to associate count */ + u_int8_t se_seen; /* seen during current scan */ + u_int8_t se_notseen; /* not seen in previous scans */ u_int32_t se_avgrssi; /* LPF rssi state */ u_int32_t se_lastupdate; /* time of last update */ u_int32_t se_lastfail; /* time of last failure */ @@ -98,6 +100,7 @@ LIST_HEAD(, sta_entry) st_hash[STA_HASHSIZE]; struct mtx st_scanlock; /* on st_scangen */ u_int st_scangen; /* gen# for iterator */ + int st_newscan; }; static void sta_flush_table(struct sta_table *); @@ -254,6 +257,7 @@ se->se_fails = 0; se->se_lastupdate = ticks; /* update time */ + se->se_seen = 1; mtx_unlock(&st->st_lock); #if 0 @@ -271,28 +275,27 @@ #undef ISPROBE } -/* - * Restart a previous scan. - */ -static int -sta_restart(struct ieee80211_scan_state *ss, struct ieee80211vap *vap) +static void +sta_clearseen(struct sta_table *st) { - struct ieee80211com *ic = vap->iv_ic; + struct sta_entry *se; - if (vap->iv_opmode == IEEE80211_M_STA && - vap->iv_state == IEEE80211_S_RUN) { - if ((ss->ss_flags & IEEE80211_SCAN_PWRSAV) == 0) { - /* initiate power save before going off-channel */ - ieee80211_sta_pwrsave(vap, 1); - ss->ss_flags |= IEEE80211_SCAN_PWRSAV; - } - } else - ss->ss_flags &= ~IEEE80211_SCAN_PWRSAV; + mtx_lock(&st->st_lock); + TAILQ_FOREACH(se, &st->st_entry, se_list) + se->se_seen = 0; + mtx_unlock(&st->st_lock); +} - ss->ss_savchan = ic->ic_curchan; - ic->ic_scan_start(ic); /* notify driver */ +static void +sta_updateseen(struct sta_table *st) +{ + struct sta_entry *se; - return 0; + mtx_lock(&st->st_lock); + TAILQ_FOREACH(se, &st->st_entry, se_list) + if (!se->se_seen) + se->se_notseen++; + mtx_unlock(&st->st_lock); } static struct ieee80211_channel * @@ -423,6 +426,7 @@ { #define N(a) (sizeof(a)/sizeof(a[0])) struct ieee80211com *ic = vap->iv_ic; + struct sta_table *st = ss->ss_priv; enum ieee80211_phymode mode; int i; @@ -487,11 +491,27 @@ } #endif /* IEEE80211_DEBUG */ - return sta_restart(ss, vap); + sta_clearseen(st); + st->st_newscan = 1; + + return 0; #undef N } /* + * Restart a bg scan. + */ +static int +sta_restart(struct ieee80211_scan_state *ss, struct ieee80211vap *vap) +{ + struct sta_table *st = ss->ss_priv; + + sta_clearseen(st); + st->st_newscan = 1; + return 0; +} + +/* * Cancel an ongoing scan. */ static int @@ -655,6 +675,8 @@ fail |= 0x20; if (se0->se_fails >= STA_FAILS_MAX) fail |= 0x40; + if (se0->se_notseen >= STA_PURGE_SCANS) + fail |= 0x80; #ifdef IEEE80211_DEBUG if (ieee80211_msg_scan(vap)) { /* XXX se_fails */ @@ -696,6 +718,10 @@ KASSERT(vap->iv_opmode != IEEE80211_M_HOSTAP, ("wrong opmode %u", vap->iv_opmode)); + if (st->st_newscan) { + sta_updateseen(st); + st->st_newscan = 0; + } if (ss->ss_flags & IEEE80211_SCAN_NOPICK) { /* * Manual/background scan, don't select+join the @@ -755,13 +781,10 @@ { struct sta_table *st = ss->ss_priv; struct sta_entry *se, *next; - u_int32_t droptime; - droptime = ticks - (STA_PURGE_SCANS * ss->ss_vap->iv_bgscanintvl); - mtx_lock(&st->st_lock); TAILQ_FOREACH_SAFE(se, &st->st_entry, se_list, next) { - if (time_before(se->se_lastupdate, droptime)) { + if (se->se_notseen > STA_PURGE_SCANS) { TAILQ_REMOVE(&st->st_entry, se, se_list); LIST_REMOVE(se, se_hash); FREE(se, M_80211_SCAN); ==== //depot/projects/vap/sys/net80211/ieee80211_var.h#14 (text+ko) ==== @@ -156,7 +156,7 @@ struct ieee80211_channel *ic_prevchan; /* previous channel */ /* scan-related state */ - struct ieee80211_scan_state ic_scan; /* scan state */ + struct ieee80211_scan_state *ic_scan; /* scan state */ enum ieee80211_roamingmode ic_roaming; /* roaming mode */ int ic_lastdata; /* time of last data frame */ int ic_lastscan; /* time last scan completed */ From owner-p4-projects@FreeBSD.ORG Sun May 22 16:25:03 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8B56316A420; Sun, 22 May 2005 16:25:02 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5D94616A41C for ; Sun, 22 May 2005 16:25:02 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1AF8A43D4C for ; Sun, 22 May 2005 16:25:02 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4MGP2gC059987 for ; Sun, 22 May 2005 16:25:02 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4MGP1Pt059984 for perforce@freebsd.org; Sun, 22 May 2005 16:25:01 GMT (envelope-from peter@freebsd.org) Date: Sun, 22 May 2005 16:25:01 GMT Message-Id: <200505221625.j4MGP1Pt059984@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Cc: Subject: PERFORCE change 77308 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 22 May 2005 16:25:03 -0000 http://perforce.freebsd.org/chv.cgi?CH=77308 Change 77308 by peter@peter_overcee on 2005/05/22 16:24:18 IFC @77306 Affected files ... .. //depot/projects/hammer/contrib/telnet/telnetd/telnetd.c#4 integrate .. //depot/projects/hammer/lib/libarchive/Makefile#22 integrate .. //depot/projects/hammer/lib/libarchive/archive_platform.h#9 integrate .. //depot/projects/hammer/lib/libarchive/archive_read.3#15 integrate .. //depot/projects/hammer/lib/libarchive/archive_read_extract.c#22 integrate .. //depot/projects/hammer/lib/libarchive/configure.ac.in#4 integrate .. //depot/projects/hammer/sbin/ipfw/ipfw2.c#42 integrate .. //depot/projects/hammer/sbin/kldstat/kldstat.c#7 integrate .. //depot/projects/hammer/share/man/man4/bge.4#14 integrate .. //depot/projects/hammer/share/man/man4/mac_bsdextended.4#10 integrate .. //depot/projects/hammer/share/man/man4/pcm.4#12 integrate .. //depot/projects/hammer/sys/amd64/amd64/exception.S#35 integrate .. //depot/projects/hammer/sys/conf/files.sparc64#30 integrate .. //depot/projects/hammer/sys/conf/options.sparc64#9 integrate .. //depot/projects/hammer/sys/dev/bge/if_bge.c#45 integrate .. //depot/projects/hammer/sys/dev/bge/if_bgereg.h#24 integrate .. //depot/projects/hammer/sys/dev/fb/boot_font.c#3 integrate .. //depot/projects/hammer/sys/dev/fb/creator.c#6 integrate .. //depot/projects/hammer/sys/dev/fb/gfb.c#4 integrate .. //depot/projects/hammer/sys/dev/fb/machfb.c#1 branch .. //depot/projects/hammer/sys/dev/fb/machfbreg.h#1 branch .. //depot/projects/hammer/sys/dev/fb/tga.c#4 integrate .. //depot/projects/hammer/sys/dev/syscons/scgfbrndr.c#4 integrate .. //depot/projects/hammer/sys/dev/syscons/scvtb.c#5 integrate .. //depot/projects/hammer/sys/dev/syscons/syscons.c#30 integrate .. //depot/projects/hammer/sys/dev/syscons/syscons.h#7 integrate .. //depot/projects/hammer/sys/dev/uart/uart_kbd_sun.c#4 integrate .. //depot/projects/hammer/sys/dev/vkbd/vkbd.c#7 integrate .. //depot/projects/hammer/sys/netinet/tcp_output.c#31 integrate .. //depot/projects/hammer/sys/netinet/tcp_timer.c#16 integrate .. //depot/projects/hammer/sys/netinet/tcp_usrreq.c#30 integrate .. //depot/projects/hammer/sys/netinet/tcp_var.h#29 integrate .. //depot/projects/hammer/sys/powerpc/ofw/ofw_syscons.c#7 integrate .. //depot/projects/hammer/sys/sparc64/conf/GENERIC#38 integrate .. //depot/projects/hammer/sys/sparc64/conf/NOTES#15 integrate .. //depot/projects/hammer/sys/sparc64/creator/creator.h#3 integrate .. //depot/projects/hammer/sys/sparc64/creator/creator_upa.c#7 integrate .. //depot/projects/hammer/sys/sparc64/sparc64/nexus.c#11 integrate .. //depot/projects/hammer/sys/sparc64/sparc64/ofw_machdep.c#11 integrate .. //depot/projects/hammer/sys/sparc64/sparc64/sc_machdep.c#2 integrate .. //depot/projects/hammer/sys/sys/fbio.h#5 integrate .. //depot/projects/hammer/sys/vm/swap_pager.c#40 integrate .. //depot/projects/hammer/sys/vm/vm_glue.c#40 integrate .. //depot/projects/hammer/usr.bin/asa/asa.c#2 integrate .. //depot/projects/hammer/usr.bin/brandelf/brandelf.c#3 integrate .. //depot/projects/hammer/usr.bin/c89/c89.1#3 integrate .. //depot/projects/hammer/usr.bin/c89/c89.c#2 integrate .. //depot/projects/hammer/usr.bin/c99/c99.1#4 integrate .. //depot/projects/hammer/usr.bin/c99/c99.c#3 integrate .. //depot/projects/hammer/usr.bin/catman/catman.c#9 integrate .. //depot/projects/hammer/usr.bin/colldef/parse.y#5 integrate .. //depot/projects/hammer/usr.bin/dirname/dirname.c#2 integrate .. //depot/projects/hammer/usr.bin/du/du.1#6 integrate .. //depot/projects/hammer/usr.bin/finger/finger.c#6 integrate .. //depot/projects/hammer/usr.bin/from/from.1#2 integrate .. //depot/projects/hammer/usr.bin/fstat/fstat.c#15 integrate .. //depot/projects/hammer/usr.bin/ktrdump/ktrdump.c#7 integrate .. //depot/projects/hammer/usr.bin/lastcomm/lastcomm.c#5 integrate .. //depot/projects/hammer/usr.bin/mesg/mesg.c#3 integrate .. //depot/projects/hammer/usr.bin/newkey/newkey.c#3 integrate .. //depot/projects/hammer/usr.bin/nice/nice.c#3 integrate .. //depot/projects/hammer/usr.bin/pathchk/pathchk.c#3 integrate .. //depot/projects/hammer/usr.bin/printf/printf.c#8 integrate .. //depot/projects/hammer/usr.bin/renice/renice.c#3 integrate .. //depot/projects/hammer/usr.bin/rsh/rsh.c#7 integrate .. //depot/projects/hammer/usr.bin/rup/rup.c#3 integrate .. //depot/projects/hammer/usr.bin/ruptime/ruptime.c#3 integrate .. //depot/projects/hammer/usr.bin/rusers/rusers.c#4 integrate .. //depot/projects/hammer/usr.bin/rwall/rwall.c#4 integrate .. //depot/projects/hammer/usr.bin/showmount/showmount.c#5 integrate .. //depot/projects/hammer/usr.bin/time/time.c#5 integrate .. //depot/projects/hammer/usr.bin/truncate/truncate.c#3 integrate .. //depot/projects/hammer/usr.bin/ul/ul.1#7 integrate .. //depot/projects/hammer/usr.bin/ul/ul.c#4 integrate .. //depot/projects/hammer/usr.bin/unifdef/unifdef.1#6 integrate .. //depot/projects/hammer/usr.bin/unifdef/unifdef.c#8 integrate .. //depot/projects/hammer/usr.bin/vmstat/vmstat.c#17 integrate .. //depot/projects/hammer/usr.bin/write/write.1#5 integrate .. //depot/projects/hammer/usr.bin/xargs/xargs.1#8 integrate .. //depot/projects/hammer/usr.bin/xstr/xstr.1#5 integrate .. //depot/projects/hammer/usr.bin/xstr/xstr.c#5 integrate .. //depot/projects/hammer/usr.bin/ypcat/ypcat.c#3 integrate .. //depot/projects/hammer/usr.bin/ypmatch/ypmatch.c#3 integrate Differences ... ==== //depot/projects/hammer/contrib/telnet/telnetd/telnetd.c#4 (text+ko) ==== @@ -37,7 +37,7 @@ #endif #endif #include -__FBSDID("$FreeBSD: src/contrib/telnet/telnetd/telnetd.c,v 1.27 2005/01/09 10:24:46 maxim Exp $"); +__FBSDID("$FreeBSD: src/contrib/telnet/telnetd/telnetd.c,v 1.28 2005/05/21 15:28:42 ume Exp $"); #include "telnetd.h" #include "pathnames.h" @@ -695,7 +695,7 @@ if (!isdigit(remote_hostname[0]) && strlen(remote_hostname) > utmp_len) err_ = getnameinfo(who, who->sa_len, remote_hostname, sizeof(remote_hostname), NULL, 0, - NI_NUMERICHOST|NI_WITHSCOPEID); + NI_NUMERICHOST); /* XXX: do 'err_' check */ (void) gethostname(host_name, sizeof(host_name) - 1); ==== //depot/projects/hammer/lib/libarchive/Makefile#22 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/lib/libarchive/Makefile,v 1.34 2005/04/23 17:56:34 kientzle Exp $ +# $FreeBSD: src/lib/libarchive/Makefile,v 1.35 2005/05/21 19:45:56 kientzle Exp $ # # Use "make distfile" to build a conventional tar.gz archive @@ -7,7 +7,7 @@ LIB= archive -VERSION= 1.02.019 +VERSION= 1.02.023 ARCHIVE_API_FEATURE= 2 ARCHIVE_API_VERSION= 1 SHLIB_MAJOR= ${ARCHIVE_API_VERSION} ==== //depot/projects/hammer/lib/libarchive/archive_platform.h#9 (text+ko) ==== @@ -23,7 +23,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/libarchive/archive_platform.h,v 1.14 2005/04/23 17:56:34 kientzle Exp $ + * $FreeBSD: src/lib/libarchive/archive_platform.h,v 1.15 2005/05/21 19:45:56 kientzle Exp $ */ /* @@ -46,6 +46,8 @@ #if __FreeBSD__ > 4 #define HAVE_ACL_CREATE_ENTRY 1 #define HAVE_ACL_INIT 1 +#define HAVE_ACL_SET_FD 1 +#define HAVE_ACL_SET_FD_NP 1 #define HAVE_ACL_SET_FILE 1 #endif #define HAVE_BZLIB_H 1 @@ -55,7 +57,10 @@ #define HAVE_EILSEQ 1 #define HAVE_ERRNO_H 1 #define HAVE_FCHDIR 1 +#define HAVE_FCHMOD 1 +#define HAVE_FCHOWN 1 #define HAVE_FCNTL_H 1 +#define HAVE_FUTIMES 1 #define HAVE_INTTYPES_H 1 #define HAVE_LCHMOD 1 #define HAVE_LCHOWN 1 @@ -123,6 +128,14 @@ #define HAVE_POSIX_ACL 1 #endif +/* + * If we can't restore metadata using a file descriptor, then + * for compatibility's sake, close files before trying to restore metadata. + */ +#if defined(HAVE_FCHMOD) || defined(HAVE_FUTIMES) || defined(HAVE_ACL_SET_FD) || defined(HAVE_ACL_SET_FD_NP) || defined(HAVE_FCHOWN) +#define CAN_RESTORE_METADATA_FD +#endif + /* Set up defaults for internal error codes. */ #ifndef ARCHIVE_ERRNO_FILE_FORMAT #if HAVE_EFTYPE ==== //depot/projects/hammer/lib/libarchive/archive_read.3#15 (text+ko) ==== @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/lib/libarchive/archive_read.3,v 1.19 2005/02/13 22:25:11 ru Exp $ +.\" $FreeBSD: src/lib/libarchive/archive_read.3,v 1.20 2005/05/21 19:38:19 kientzle Exp $ .\" .Dd January 8, 2005 .Dt archive_read 3 @@ -389,7 +389,7 @@ struct mydata *mydata = client_data; mydata->fd = open(mydata->name, O_RDONLY); - return (mydata->fd >= 0); + return (mydata->fd >= 0 ? ARCHIVE_OK : ARCHIVE_FATAL); } int @@ -399,7 +399,7 @@ if (mydata->fd > 0) close(mydata->fd); - return (0); + return (ARCHIVE_OK); } .Ed .Sh RETURN VALUES ==== //depot/projects/hammer/lib/libarchive/archive_read_extract.c#22 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Copyright (c) 2003-2004 Tim Kientzle + * Copyright (c) 2003-2005 Tim Kientzle * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -25,7 +25,7 @@ */ #include "archive_platform.h" -__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_extract.c,v 1.39 2005/04/17 22:49:00 kientzle Exp $"); +__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_extract.c,v 1.40 2005/05/21 19:45:56 kientzle Exp $"); #include #ifdef HAVE_SYS_ACL_H @@ -94,9 +94,6 @@ * Cached stat data from disk for the current entry. * If this is valid, pst points to st. Otherwise, * pst is null. - * - * TODO: Have all of the stat calls use this cached data - * if possible. */ struct stat st; struct stat *pst; @@ -130,19 +127,20 @@ static int create_dir_recursive(struct archive *, char *, int flags); static int create_parent_dir(struct archive *, const char *, int flags); static int create_parent_dir_mutable(struct archive *, char *, int flags); -static int restore_metadata(struct archive *, struct archive_entry *, - int flags); +static int restore_metadata(struct archive *, int fd, + struct archive_entry *, int flags); #ifdef HAVE_POSIX_ACL -static int set_acl(struct archive *, struct archive_entry *, +static int set_acl(struct archive *, int fd, struct archive_entry *, acl_type_t, int archive_entry_acl_type, const char *tn); #endif -static int set_acls(struct archive *, struct archive_entry *); -static int set_fflags(struct archive *, const char *name, mode_t mode, +static int set_acls(struct archive *, int fd, struct archive_entry *); +static int set_fflags(struct archive *, int fd, const char *name, mode_t, unsigned long fflags_set, unsigned long fflags_clear); -static int set_ownership(struct archive *, struct archive_entry *, int); -static int set_perm(struct archive *, struct archive_entry *, int mode, +static int set_ownership(struct archive *, int fd, struct archive_entry *, int flags); -static int set_time(struct archive *, struct archive_entry *, int); +static int set_perm(struct archive *, int fd, struct archive_entry *, + int mode, int flags); +static int set_time(struct archive *, int fd, struct archive_entry *, int); static struct fixup_entry *sort_dir_list(struct fixup_entry *p); @@ -183,6 +181,8 @@ restore_pwd = -1; original_filename = NULL; + /* The following is not possible without fchdir. */ +#ifdef HAVE_FCHDIR /* * If pathname is longer than PATH_MAX, record starting directory * and chdir to a suitable intermediate dir. @@ -190,13 +190,19 @@ if (strlen(archive_entry_pathname(entry)) > PATH_MAX) { char *intdir, *tail; + restore_pwd = open(".", O_RDONLY); + if (restore_pwd < 0) { + archive_set_error(a, errno, + "Unable to restore long pathname"); + return (ARCHIVE_WARN); + } + /* * Yes, the copy here is necessary because we edit * the pathname in-place to create intermediate dirnames. */ original_filename = strdup(archive_entry_pathname(entry)); - restore_pwd = open(".", O_RDONLY); /* * "intdir" points to the initial dir section we're going * to remove, "tail" points to the remainder of the path. @@ -230,6 +236,7 @@ } archive_entry_set_pathname(entry, tail); } +#endif if (stat(archive_entry_pathname(entry), &extract->st) == 0) extract->pst = &extract->st; @@ -269,6 +276,7 @@ cleanup: +#ifdef HAVE_FCHDIR /* If we changed directory above, restore it here. */ if (restore_pwd >= 0 && original_filename != NULL) { fchdir(restore_pwd); @@ -276,6 +284,7 @@ archive_entry_copy_pathname(entry, original_filename); free(original_filename); } +#endif return (ret); } @@ -287,7 +296,7 @@ * dir, so we restore the dir 0700 first, then correct the * mode at the end. * * Similarly, the act of restoring a file touches the directory - * and changes the timestamp on the dir, so we have to touch-up the + * and changes the timestamp on the dir, so we have to touch-up dir * timestamps at the end as well. * * Some file flags can interfere with the restore by, for example, * preventing the creation of hardlinks to those files. @@ -316,7 +325,7 @@ p = sort_dir_list(extract->fixup_list); while (p != NULL) { - extract->pst = NULL; /* Mark stat buff as out-of-date. */ + extract->pst = NULL; /* Mark stat cache as out-of-date. */ if (p->fixup & FIXUP_TIMES) { struct timeval times[2]; times[1].tv_sec = p->mtime; @@ -329,7 +338,7 @@ chmod(p->name, p->mode); if (p->fixup & FIXUP_FFLAGS) - set_fflags(a, p->name, p->mode, p->fflags_set, 0); + set_fflags(a, -1, p->name, p->mode, p->fflags_set, 0); next = p->next; free(p->name); @@ -482,9 +491,9 @@ return (ARCHIVE_WARN); } r = archive_read_data_into_fd(a, fd); + extract->pst = NULL; /* Cached stat data no longer valid. */ + r2 = restore_metadata(a, fd, entry, flags); close(fd); - extract->pst = NULL; /* Cached stat data no longer valid. */ - r2 = restore_metadata(a, entry, flags); return (err_combine(r, r2)); } @@ -503,28 +512,40 @@ archive_entry_pathname(entry)); path = extract->create_parent_dir.s; + if (*path == '\0') { + archive_set_error(a, ARCHIVE_ERRNO_MISC, + "Invalid empty pathname"); + return (ARCHIVE_WARN); + } + /* Deal with any troublesome trailing path elements. */ + /* TODO: Someday, generalize this to remove '//' or '/./' from + * the middle of paths. But, it should not compress '..' from + * the middle of paths. It's a feature that restoring + * "a/../b" creates both 'a' and 'b' directories. */ for (;;) { - if (*path == '\0') - return (ARCHIVE_OK); - /* Locate last element; trim trailing '/'. */ + /* Locate last element. */ p = strrchr(path, '/'); - if (p != NULL) { - if (p[1] == '\0') { - *p = '\0'; - continue; - } + if (p != NULL) p++; - } else + else p = path; - /* Trim trailing '.'. */ - if (p[0] == '.' && p[1] == '\0') { + /* Trim trailing '/' unless that's the entire path. */ + if (p[0] == '\0' && p - 1 > path) { + p[-1] = '\0'; + continue; + } + /* Trim trailing '.' unless that's the entire path. */ + if (p > path && p[0] == '.' && p[1] == '\0') { p[0] = '\0'; continue; } /* Just exit on trailing '..'. */ - if (p[0] == '.' && p[1] == '.' && p[2] == '\0') - return (ARCHIVE_OK); + if (p[0] == '.' && p[1] == '.' && p[2] == '\0') { + archive_set_error(a, ARCHIVE_ERRNO_MISC, + "Can't restore directory '..'"); + return (ARCHIVE_WARN); + } break; } @@ -570,7 +591,7 @@ } /* For now, set the mode to SECURE_DIR_MODE. */ archive_entry_set_mode(entry, SECURE_DIR_MODE); - return (restore_metadata(a, entry, flags)); + return (restore_metadata(a, -1, entry, flags)); } @@ -762,7 +783,7 @@ } /* Set ownership, time, permission information. */ - r = restore_metadata(a, entry, flags); + r = restore_metadata(a, -1, entry, flags); return (r); } @@ -798,7 +819,7 @@ return (ARCHIVE_WARN); } - r = restore_metadata(a, entry, flags); + r = restore_metadata(a, -1, entry, flags); return (r); } @@ -830,7 +851,7 @@ return (ARCHIVE_WARN); } - r = restore_metadata(a, entry, flags); + r = restore_metadata(a, -1, entry, flags); return (r); } @@ -879,24 +900,25 @@ return (ARCHIVE_WARN); } - r = restore_metadata(a, entry, flags); + r = restore_metadata(a, -1, entry, flags); return (r); } static int -restore_metadata(struct archive *a, struct archive_entry *entry, int flags) +restore_metadata(struct archive *a, int fd, struct archive_entry *entry, int flags) { int r, r2; - r = set_ownership(a, entry, flags); - r2 = set_time(a, entry, flags); + r = set_ownership(a, fd, entry, flags); + r2 = set_time(a, fd, entry, flags); r = err_combine(r, r2); - r2 = set_perm(a, entry, archive_entry_mode(entry), flags); + r2 = set_perm(a, fd, entry, archive_entry_mode(entry), flags); return (err_combine(r, r2)); } static int -set_ownership(struct archive *a, struct archive_entry *entry, int flags) +set_ownership(struct archive *a, int fd, + struct archive_entry *entry, int flags) { uid_t uid; gid_t gid; @@ -914,6 +936,11 @@ if (a->user_uid != 0 && a->user_uid != uid) return (ARCHIVE_OK); +#ifdef HAVE_FCHOWN + if (fd >= 0 && fchown(fd, uid, gid) == 0) + return (ARCHIVE_OK); +#endif + #ifdef HAVE_LCHOWN if (lchown(archive_entry_pathname(entry), uid, gid)) #else @@ -930,7 +957,7 @@ } static int -set_time(struct archive *a, struct archive_entry *entry, int flags) +set_time(struct archive *a, int fd, struct archive_entry *entry, int flags) { const struct stat *st; struct timeval times[2]; @@ -950,6 +977,11 @@ times[0].tv_sec = st->st_atime; times[0].tv_usec = ARCHIVE_STAT_ATIME_NANOS(st) / 1000; +#ifdef HAVE_FUTIMES + if (fd >= 0 && futimes(fd, times) == 0) + return (ARCHIVE_OK); +#endif + #ifdef HAVE_LUTIMES if (lutimes(archive_entry_pathname(entry), times) != 0) { #else @@ -973,7 +1005,8 @@ } static int -set_perm(struct archive *a, struct archive_entry *entry, int mode, int flags) +set_perm(struct archive *a, int fd, struct archive_entry *entry, + int mode, int flags) { struct extract *extract; struct fixup_entry *le; @@ -990,11 +1023,20 @@ name = archive_entry_pathname(entry); if (mode & (S_ISUID | S_ISGID)) { - if (extract->pst == NULL && stat(name, &extract->st) != 0) { - archive_set_error(a, errno, "Can't check ownership"); + if (extract->pst != NULL) { + /* Already have stat() data available. */ +#ifdef HAVE_FSTAT + } else if (fd >= 0 && fstat(fd, &extract->st) == 0) { + extract->pst = &extract->st; +#endif + } else if (stat(name, &extract->st) == 0) { + extract->pst = &extract->st; + } else { + archive_set_error(a, errno, + "Couldn't stat file"); return (ARCHIVE_WARN); } - extract->pst = &extract->st; + /* * TODO: Use the uid/gid looked up in set_ownership * above rather than the uid/gid stored in the entry. @@ -1011,6 +1053,10 @@ * the way. */ if (!S_ISLNK(archive_entry_mode(entry))) { +#ifdef HAVE_FCHMOD + if (fd >= 0 && fchmod(fd, mode) == 0) + return (ARCHIVE_OK); +#endif if (chmod(name, mode) != 0) { archive_set_error(a, errno, "Can't set permissions"); return (ARCHIVE_WARN); @@ -1030,7 +1076,7 @@ } if (flags & ARCHIVE_EXTRACT_ACL) { - r = set_acls(a, entry); + r = set_acls(a, fd, entry); if (r != ARCHIVE_OK) return (r); } @@ -1086,7 +1132,7 @@ if ((le->fixup & FIXUP_MODE) == 0) le->mode = mode; } else { - r = set_fflags(a, archive_entry_pathname(entry), + r = set_fflags(a, fd, archive_entry_pathname(entry), mode, set, clear); if (r != ARCHIVE_OK) return (r); @@ -1095,24 +1141,18 @@ return (ARCHIVE_OK); } + +#if defined(HAVE_CHFLAGS) && !defined(__linux) static int -set_fflags(struct archive *a, const char *name, mode_t mode, +set_fflags(struct archive *a, int fd, const char *name, mode_t mode, unsigned long set, unsigned long clear) { struct extract *extract; - int ret; -#ifdef linux - int fd; - int err; - unsigned long newflags, oldflags; -#endif extract = a->extract; - ret = ARCHIVE_OK; if (set == 0 && clear == 0) - return (ret); + return (ARCHIVE_OK); -#ifdef HAVE_CHFLAGS (void)mode; /* UNUSED */ /* * XXX Is the stat here really necessary? Or can I just use @@ -1120,65 +1160,99 @@ * about the correct approach if we're overwriting an existing * file that already has flags on it. XXX */ - if (stat(name, &extract->st) == 0) { - extract->st.st_flags &= ~clear; - extract->st.st_flags |= set; - if (chflags(name, extract->st.st_flags) != 0) { - archive_set_error(a, errno, - "Failed to set file flags"); - ret = ARCHIVE_WARN; - } + if (extract->pst != NULL) { + /* Already have stat() data available. */ + } else if (fd >= 0 && fstat(fd, &extract->st) == 0) + extract->pst = &extract->st; + else if (stat(name, &extract->st) == 0) extract->pst = &extract->st; + else { + archive_set_error(a, errno, + "Couldn't stat file"); + return (ARCHIVE_WARN); } -#else -#ifdef linux - /* Linux has flags too, but no chflags syscall */ + + extract->st.st_flags &= ~clear; + extract->st.st_flags |= set; + if (chflags(name, extract->st.st_flags) == 0) + return (ARCHIVE_OK); + + archive_set_error(a, errno, + "Failed to set file flags"); + return (ARCHIVE_WARN); +} +#endif /* HAVE_CHFLAGS */ + +#ifdef __linux +/* Linux has flags too, but uses ioctl() instead of chflags(). */ +static int +set_fflags(struct archive *a, int fd, const char *name, mode_t mode, + unsigned long set, unsigned long clear) +{ + struct extract *extract; + int ret; + int myfd = fd; + int err; + unsigned long newflags, oldflags; + + extract = a->extract; + ret = ARCHIVE_OK; + if (set == 0 && clear == 0) + return (ret); + /* Only regular files and dirs can have flags. */ + if (!S_ISREG(mode) && !S_ISDIR(mode)) + return (ret); + + /* If we weren't given an fd, open it ourselves. */ + if (myfd < 0) + myfd = open(name, O_RDONLY|O_NONBLOCK); + if (myfd < 0) + return (ret); + /* * Linux has no define for the flags that are only settable * by the root user... */ #define SF_MASK (EXT2_IMMUTABLE_FL|EXT2_APPEND_FL) - /* * XXX As above, this would be way simpler if we didn't have * to read the current flags from disk. XXX */ - if ((S_ISREG(mode) || S_ISDIR(mode)) && - ((fd = open(name, O_RDONLY|O_NONBLOCK)) >= 0)) { - err = 1; - if (fd >= 0 && (ioctl(fd, EXT2_IOC_GETFLAGS, &oldflags) >= 0)) { - newflags = (oldflags & ~clear) | set; - if (ioctl(fd, EXT2_IOC_SETFLAGS, &newflags) >= 0) { - err = 0; - } else if (errno == EPERM) { - if (ioctl(fd, EXT2_IOC_GETFLAGS, &oldflags) >= 0) { - newflags &= ~SF_MASK; - oldflags &= SF_MASK; - newflags |= oldflags; - if (ioctl(fd, EXT2_IOC_SETFLAGS, &newflags) >= 0) - err = 0; - } - } - } - close(fd); - if (err) { - archive_set_error(a, errno, - "Failed to set file flags"); - ret = ARCHIVE_WARN; - } + /* Try setting the flags as given. */ + if (ioctl(myfd, EXT2_IOC_GETFLAGS, &oldflags) >= 0) { + newflags = (oldflags & ~clear) | set; + if (ioctl(myfd, EXT2_IOC_SETFLAGS, &newflags) >= 0) + goto cleanup; + if (errno != EPERM) + goto fail; + } + /* If we couldn't set all the flags, try again with a subset. */ + if (ioctl(myfd, EXT2_IOC_GETFLAGS, &oldflags) >= 0) { + newflags &= ~SF_MASK; + oldflags &= SF_MASK; + newflags |= oldflags; + if (ioctl(myfd, EXT2_IOC_SETFLAGS, &newflags) >= 0) + goto cleanup; } -#endif /* linux */ -#endif /* HAVE_CHFLAGS */ - + /* We couldn't set the flags, so report the failure. */ +fail: + archive_set_error(a, errno, + "Failed to set file flags"); + ret = ARCHIVE_WARN; +cleanup: + if (fd < 0) + close(myfd); return (ret); } +#endif /* __linux */ #ifndef HAVE_POSIX_ACL /* Default empty function body to satisfy mainline code. */ static int -set_acls(struct archive *a, struct archive_entry *entry) +set_acls(struct archive *a, int fd, struct archive_entry *entry) { (void)a; + (void)fd; (void)entry; return (ARCHIVE_OK); @@ -1190,23 +1264,23 @@ * XXX TODO: What about ACL types other than ACCESS and DEFAULT? */ static int -set_acls(struct archive *a, struct archive_entry *entry) +set_acls(struct archive *a, int fd, struct archive_entry *entry) { int ret; - ret = set_acl(a, entry, ACL_TYPE_ACCESS, + ret = set_acl(a, fd, entry, ACL_TYPE_ACCESS, ARCHIVE_ENTRY_ACL_TYPE_ACCESS, "access"); if (ret != ARCHIVE_OK) return (ret); - ret = set_acl(a, entry, ACL_TYPE_DEFAULT, + ret = set_acl(a, fd, entry, ACL_TYPE_DEFAULT, ARCHIVE_ENTRY_ACL_TYPE_DEFAULT, "default"); return (ret); } static int -set_acl(struct archive *a, struct archive_entry *entry, acl_type_t acl_type, - int ae_requested_type, const char *typename) +set_acl(struct archive *a, int fd, struct archive_entry *entry, + acl_type_t acl_type, int ae_requested_type, const char *typename) { acl_t acl; acl_entry_t acl_entry; @@ -1268,6 +1342,17 @@ name = archive_entry_pathname(entry); + /* Try restoring the ACL through 'fd' if we can. */ +#if HAVE_ACL_SET_FD + if (fd >= 0 && acl_type == ACL_TYPE_ACCESS && acl_set_fd(fd, acl) == 0) + ret = ARCHIVE_OK; + else +#endif +#if HAVE_ACL_SET_FD_NP + if (fd >= 0 && acl_set_fd_np(fd, acl, acl_type) == 0) + ret = ARCHIVE_OK; + else +#endif if (acl_set_file(name, acl_type, acl) != 0) { archive_set_error(a, errno, "Failed to set %s acl", typename); ret = ARCHIVE_WARN; ==== //depot/projects/hammer/lib/libarchive/configure.ac.in#4 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/lib/libarchive/configure.ac.in,v 1.4 2005/04/23 17:56:34 kientzle Exp $ +# $FreeBSD: src/lib/libarchive/configure.ac.in,v 1.5 2005/05/21 19:45:56 kientzle Exp $ #Process this file with autoconf to produce a configure script. AC_INIT(libarchive, @VERSION@, kientzle@freebsd.org) @@ -72,8 +72,9 @@ AC_FUNC_MEMCMP AC_FUNC_STAT AC_FUNC_STRERROR_R -AC_CHECK_FUNCS([acl_create_entry acl_init acl_set_file]) -AC_CHECK_FUNCS([chflags fchdir lchmod lchown lutimes memmove]) +AC_CHECK_FUNCS([acl_create_entry acl_init acl_set_fd acl_set_fd_np acl_set_file]) +AC_CHECK_FUNCS([chflags fchdir fchmod fchown futimes]) +AC_CHECK_FUNCS([lchmod lchown lutimes memmove]) AC_CHECK_FUNCS([memset mkdir mkfifo strchr strdup strerror strrchr]) # Additional requirements ==== //depot/projects/hammer/sbin/ipfw/ipfw2.c#42 (text+ko) ==== @@ -17,7 +17,7 @@ * * NEW command line interface for IP firewall facility * - * $FreeBSD: src/sbin/ipfw/ipfw2.c,v 1.73 2005/04/26 20:22:31 brooks Exp $ + * $FreeBSD: src/sbin/ipfw/ipfw2.c,v 1.74 2005/05/21 03:27:33 mlaier Exp $ */ #include @@ -3511,7 +3511,7 @@ ; /* all done! */ else if ((pe = getprotobyname(av)) != NULL) *proto = pe->p_proto; - else if (strcmp(av, "ipv6") == 0 || strcmp(av, "ip6")) + else if (strcmp(av, "ipv6") == 0 || strcmp(av, "ip6") == 0) *proto = IPPROTO_IPV6; else return NULL; @@ -4433,7 +4433,6 @@ case TOK_IPV6: fill_cmd(cmd, O_IP6, 0, 0); - ac--; av++; break; case TOK_EXT6HDR: ==== //depot/projects/hammer/sbin/kldstat/kldstat.c#7 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sbin/kldstat/kldstat.c,v 1.16 2005/05/04 12:46:43 fjoe Exp $"); +__FBSDID("$FreeBSD: src/sbin/kldstat/kldstat.c,v 1.17 2005/05/21 07:08:32 ru Exp $"); #include #include @@ -76,7 +76,8 @@ static void usage(void) { - fprintf(stderr, "usage: kldstat [-v] [-i id] [-n name] [-m name]\n"); + fprintf(stderr, "usage: kldstat [-v] [-i id] [-n filename]\n"); + fprintf(stderr, " kldstat [-m modname]\n"); exit(1); } ==== //depot/projects/hammer/share/man/man4/bge.4#14 (text+ko) ==== @@ -29,14 +29,14 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF .\" THE POSSIBILITY OF SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man4/bge.4,v 1.17 2005/05/20 01:20:23 brueffer Exp $ +.\" $FreeBSD: src/share/man/man4/bge.4,v 1.18 2005/05/22 10:27:51 brueffer Exp $ .\" -.Dd May 20, 2005 +.Dd May 22, 2005 .Dt BGE 4 .Os .Sh NAME .Nm bge -.Nd "Broadcom BCM570x/5714/5721/5750/5751 PCI Gigabit Ethernet adapter driver" +.Nd "Broadcom BCM570x/5714/5721/5750/5751/5789 PCI Gigabit Ethernet adapter driver" .Sh SYNOPSIS .Cd "device miibus" .Cd "device bge" @@ -44,7 +44,7 @@ The .Nm driver provides support for various NICs based on the Broadcom BCM570x, -5714, 5721, 5750 and 5751 families of Gigabit Ethernet controller chips. +5714, 5721, 5750, 5751 and 5789 families of Gigabit Ethernet controller chips. .Pp All of these NICs are capable of 10, 100 and 1000Mbps speeds over CAT5 copper cable, except for the SysKonnect SK-9D41 which supports only ==== //depot/projects/hammer/share/man/man4/mac_bsdextended.4#10 (text+ko) ==== @@ -28,9 +28,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man4/mac_bsdextended.4,v 1.15 2005/04/11 16:53:40 trhodes Exp $ +.\" $FreeBSD: src/share/man/man4/mac_bsdextended.4,v 1.16 2005/05/21 17:22:12 trhodes Exp $ .\" -.Dd September 10, 2004 +.Dd May 21, 2005 .Os .Dt MAC_BSDEXTENDED 4 .Sh NAME @@ -95,7 +95,7 @@ .Nm : .Bl -tag -width indent .It Va security.mac.bsdextended.enabled -Set to zero or one to toggle the policy on or off. +Set to zero or one to toggle the policy off or on. .It Va security.mac.bsdextended.rule_count List the number of defined rules, the maximum rule count is current set at 256. ==== //depot/projects/hammer/share/man/man4/pcm.4#12 (text+ko) ==== @@ -23,9 +23,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man4/pcm.4,v 1.38 2005/01/21 08:36:37 ru Exp $ +.\" $FreeBSD: src/share/man/man4/pcm.4,v 1.39 2005/05/22 15:25:14 brueffer Exp $ .\" -.Dd August 28, 2004 +.Dd May 22, 2005 .Dt SOUND 4 .Os .Sh NAME @@ -266,37 +266,32 @@ for a complete list of the supported .Fn ioctl functions. -.Ss Supported Cards -Below we include a list of supported codecs/cards. -If your sound card -is not listed here, it may be supported by a bridge driver. -.Bl -tag -width 2m -.It CS4237, CS4236, CS4232, CS4231 (ISA) -All these cards work perfectly in full duplex using the MSS mode. -This chipset is used, among others, on the A/Open AW35 and AW32, on -some Intel motherboards, and (the CS4231) on some non-PnP cards. +.Sh HARDWARE +The +.Nm +driver supports the following sound cards: .Pp -The CS4232 is reported as buggy in the Voxware documentation but -I am not sure if this is true. -On one of my Intel motherboards, -capture does not work simply because the capture DMA channel is -not wired to the ISA DMA controller. -.It Yamaha OPL-SAx (ISA) -Works perfectly in all modes. -This chip is used in several PnP cards, -but also (in non-PnP mode) on motherboards and laptops (e.g., the -Toshiba Libretto). -.It OPTi931 (ISA) -The chip is buggy, but the driver has many workarounds to make it work -in full duplex because for some time these were the only full duplex -cards I could find. -U-law format uses U8 format internally because of -a bug in the chip. -.It Trident 4DWave DX/NX (PCI) -.It ENSONIQ AudioPCI ES1370/1371 (PCI) -Creative Labs SoundBlaster PCI is supported as well. -.It ESS Solo-1/1E (PCI) -.It NeoMagic 256AV/ZX (PCI) +.Bl -bullet -compact +.It +CS4231, CS4232, CS4236, CS4237 (ISA) +.It +Creative Labs SoundBlaster PCI +.It +ENSONIQ AudioPCI ES1370/1371 +.It +ESS Solo-1/1E (PCI) +.It +Intel 443MX, 810, 815, and 815E integrated sound devices +.It +MSS/WSS Compatible DSPs +.It +NeoMagic 256AV/ZK (PCI) +.It +OPTi931/82C931 (ISA) +.It +Trident 4DWave DX/NX (PCI) +.It +Yamaha OPL-SAx (ISA) .El .Sh FILES The @@ -342,9 +337,28 @@ A device node is not created properly. .El .Sh SEE ALSO +.Xr snd_ad1816 4 , >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sun May 22 19:28:47 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0D96816A439; Sun, 22 May 2005 19:28:47 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D64C416A435 for ; Sun, 22 May 2005 19:28:46 +0000 (GMT) (envelope-from trhodes@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9236643D5C for ; Sun, 22 May 2005 19:28:46 +0000 (GMT) (envelope-from trhodes@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4MJSkHl074603 for ; Sun, 22 May 2005 19:28:46 GMT (envelope-from trhodes@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4MJSktN074600 for perforce@freebsd.org; Sun, 22 May 2005 19:28:46 GMT (envelope-from trhodes@freebsd.org) Date: Sun, 22 May 2005 19:28:46 GMT Message-Id: <200505221928.j4MJSktN074600@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to trhodes@freebsd.org using -f From: Tom Rhodes To: Perforce Change Reviews Cc: Subject: PERFORCE change 77316 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 22 May 2005 19:28:48 -0000 http://perforce.freebsd.org/chv.cgi?CH=77316 Change 77316 by trhodes@trhodes_local on 2005/05/22 19:28:41 Mark up fixes, kill hard sentence breaks. Affected files ... .. //depot/projects/trustedbsd/mac/share/man/man4/mac_chkexec.4#3 edit Differences ... ==== //depot/projects/trustedbsd/mac/share/man/man4/mac_chkexec.4#3 (text+ko) ==== @@ -86,10 +86,13 @@ .It Va security.mac.chkexec.enable Set to zero or one to toggle the policy off or on. .It Va security.mac.chkexec.enforce -Toggle the enforcement of the security policy. While the policy is loaded but -not enforced, the system is in learning mode. This means that each time an -objected is executed, the system calculates and stores the checksums for the -object. This allows system administrators to create their "baseline database" +Toggle the enforcement of the security policy. +While the policy is loaded but +not enforced, the system is in learning mode. +This means that each time an object is executed, +the system calculates and stores the checksums for that object. +This allows system administrators to create their +.Dq baseline database of trusted binaries simply by letting the system run in regular operation. .It Va security.mac.chkexec.cache.objmax Adjust the cache size. @@ -98,18 +101,22 @@ Note that this value should be similar to .Dq 1024 during the -.Dx +.Fx buildworld process. .It Va security.mac.chkexec.algo -Specify which hashing algorithm to use. Currently md5 and sha1 are -supported. By default sha1 is used. +Specify which hashing algorithm to use. +Currently MD5 and SHA1 are supported. +By default SHA1 is used. .It Va security.mac.chkexec.cache.enable -Enable or disable the use of the object cache. Disabling the cache results +Enable or disable the use of the object cache. +Disabling the cache results in system execution and run-time linking performance being degraded. .It Va security.mac.chkexec.ignore_untagged -Specify whether or not un-registered binaries should be exempt. This allows users -to execute newly created binaries. It is highly recommended that this option -NOT be enabled. +Specify whether or not un-registered binaries should be exempt. +This allows users to execute newly created binaries. +It is highly recommended that this option +.Em not +be enabled. .El .Sh SEE ALSO .Xr mac 4 , From owner-p4-projects@FreeBSD.ORG Mon May 23 17:07:11 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9243816A420; Mon, 23 May 2005 17:07:10 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 52E4216A41C for ; Mon, 23 May 2005 17:07:10 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2143443D1D for ; Mon, 23 May 2005 17:07:10 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4NH7Ahp077221 for ; Mon, 23 May 2005 17:07:10 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4NH79kn077218 for perforce@freebsd.org; Mon, 23 May 2005 17:07:09 GMT (envelope-from sam@freebsd.org) Date: Mon, 23 May 2005 17:07:09 GMT Message-Id: <200505231707.j4NH79kn077218@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 77351 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 23 May 2005 17:07:11 -0000 http://perforce.freebsd.org/chv.cgi?CH=77351 Change 77351 by sam@sam_ebb on 2005/05/23 17:06:17 o split out power save code into it's own file/module (will grow soon) o move ieee80211_match_bss from scan code to ibss merge which is the only user now that the scan cache is a private data structure o shuffle vap sysctl attach/detach so modules can craft sysctls that reference private data o expose net.wlan sysctl node so modules can add sysctls that reference private data o make bgscan delay for pwr sav frame xmit tunable for testing o make beacon switch time for returning on-channel tunable for testing Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211.c#12 edit .. //depot/projects/vap/sys/net80211/ieee80211_freebsd.c#9 edit .. //depot/projects/vap/sys/net80211/ieee80211_freebsd.h#7 edit .. //depot/projects/vap/sys/net80211/ieee80211_input.c#15 edit .. //depot/projects/vap/sys/net80211/ieee80211_node.c#10 edit .. //depot/projects/vap/sys/net80211/ieee80211_output.c#14 edit .. //depot/projects/vap/sys/net80211/ieee80211_power.c#1 add .. //depot/projects/vap/sys/net80211/ieee80211_power.h#1 add .. //depot/projects/vap/sys/net80211/ieee80211_proto.h#6 edit .. //depot/projects/vap/sys/net80211/ieee80211_scan.c#6 edit .. //depot/projects/vap/sys/net80211/ieee80211_scan.h#4 edit .. //depot/projects/vap/sys/net80211/ieee80211_var.h#15 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211.c#12 (text+ko) ==== @@ -164,6 +164,7 @@ ieee80211_crypto_attach(ic); ieee80211_node_attach(ic); + ieee80211_power_attach(ic); ieee80211_proto_attach(ic); ieee80211_scan_attach(ic); ieee80211_regdomain_attach(ic); @@ -213,6 +214,7 @@ ieee80211_scan_detach(ic); ieee80211_proto_detach(ic); ieee80211_crypto_detach(ic); + ieee80211_power_detach(ic); ieee80211_node_detach(ic); ifmedia_removeall(&ic->ic_media); @@ -291,8 +293,10 @@ IEEE80211_ADDR_COPY(vap->iv_myaddr, ic->ic_myaddr); + ieee80211_sysctl_vattach(vap); ieee80211_crypto_vattach(vap); ieee80211_node_vattach(vap); + ieee80211_power_vattach(vap); ieee80211_proto_vattach(vap); ieee80211_scan_vattach(vap); ieee80211_regdomain_vattach(vap); @@ -300,7 +304,6 @@ ieee80211_vlan_vattach(vap); ieee80211_ioctl_vattach(vap); #endif - ieee80211_sysctl_vattach(vap); return 1; #undef IEEE80211_C_OPMODE @@ -316,6 +319,7 @@ int maxrate; ieee80211_node_latevattach(vap); /* XXX move into vattach */ + ieee80211_power_latevattach(vap); /* XXX move into vattach */ ether_ifattach(ifp, vap->iv_myaddr); bpfattach2(ifp, DLT_IEEE802_11, ifp->if_hdrlen, &vap->iv_rawbpf); @@ -359,7 +363,6 @@ ifmedia_removeall(&vap->iv_media); - ieee80211_sysctl_vdetach(vap); #if 0 ieee80211_ioctl_vdetach(vap); ieee80211_vlan_vdetach(vap); @@ -368,7 +371,9 @@ ieee80211_scan_vdetach(vap); ieee80211_proto_vdetach(vap); ieee80211_crypto_vdetach(vap); + ieee80211_power_vdetach(vap); ieee80211_node_vdetach(vap); + ieee80211_sysctl_vdetach(vap); } void ==== //depot/projects/vap/sys/net80211/ieee80211_freebsd.c#9 (text+ko) ==== @@ -38,7 +38,6 @@ #include #include #include -#include #include @@ -118,7 +117,6 @@ "debug", CTLFLAG_RW, &vap->iv_debug, 0, "control debugging printfs"); #endif - /* XXX inherit from tunables */ SYSCTL_ADD_PROC(ctx, SYSCTL_CHILDREN(oid), OID_AUTO, "inact_run", CTLTYPE_INT | CTLFLAG_RW, &vap->iv_inact_run, 0, ieee80211_sysctl_inact, "I", ==== //depot/projects/vap/sys/net80211/ieee80211_freebsd.h#7 (text+ko) ==== @@ -179,6 +179,8 @@ struct ieee80211com; struct ieee80211vap; +#include +SYSCTL_DECL(_net_wlan); void ieee80211_sysctl_attach(struct ieee80211com *); void ieee80211_sysctl_detach(struct ieee80211com *); void ieee80211_sysctl_vattach(struct ieee80211vap *); ==== //depot/projects/vap/sys/net80211/ieee80211_input.c#15 (text+ko) ==== @@ -115,8 +115,7 @@ struct mbuf *); static void ieee80211_send_error(struct ieee80211_node *, const u_int8_t *, int subtype, int arg); -static void ieee80211_node_pwrsave(struct ieee80211_node *, int enable); -static void ieee80211_recv_pspoll(struct ieee80211_node *, struct mbuf *); +static void ieee80211_recv_pspoll(struct ieee80211_node *, struct mbuf *);; /* * Process a received frame. The node associated with the sender @@ -2942,125 +2941,9 @@ #undef IEEE80211_VERIFY_ELEMENT /* - * Handle station power-save state change. + * Process a received ps-poll frame. */ -static void -ieee80211_node_pwrsave(struct ieee80211_node *ni, int enable) -{ - struct ieee80211vap *vap = ni->ni_vap; - struct mbuf *m; - - if (enable) { - if ((ni->ni_flags & IEEE80211_NODE_PWR_MGT) == 0) - vap->iv_ps_sta++; - ni->ni_flags |= IEEE80211_NODE_PWR_MGT; - IEEE80211_NOTE(vap, IEEE80211_MSG_POWER, ni, - "power save mode on, %u sta's in ps mode", vap->iv_ps_sta); - return; - } - - if ((ni->ni_flags & IEEE80211_NODE_PWR_MGT)) - vap->iv_ps_sta--; - ni->ni_flags &= ~IEEE80211_NODE_PWR_MGT; - IEEE80211_NOTE(vap, IEEE80211_MSG_POWER, ni, - "power save mode off, %u sta's in ps mode", vap->iv_ps_sta); - /* XXX if no stations in ps mode, flush mc frames */ - - /* - * Flush queued unicast frames. - */ - if (IEEE80211_NODE_SAVEQ_QLEN(ni) == 0) { - if (vap->iv_set_tim != NULL) - vap->iv_set_tim(ni, 0); /* just in case */ - return; - } - IEEE80211_NOTE(vap, IEEE80211_MSG_POWER, ni, - "flush ps queue, %u packets queued", IEEE80211_NODE_SAVEQ_QLEN(ni)); - for (;;) { - int qlen; - - IEEE80211_NODE_SAVEQ_DEQUEUE(ni, m, qlen); - if (m == NULL) - break; - /* - * If this is the last packet, turn off the TIM bit. - * If there are more packets, set the more packets bit - * in the packet dispatched to the station. - */ - if (qlen != 0) { - struct ieee80211_frame_min *wh = - mtod(m, struct ieee80211_frame_min *); - wh->i_fc[1] |= IEEE80211_FC1_MORE_DATA; - } - /* XXX need different driver interface */ - /* XXX bypasses q max */ - IF_ENQUEUE(&vap->iv_arp.ac_if.if_snd, m); - } -} - -/* - * Handle power-save state change in station mode. - */ void -ieee80211_sta_pwrsave(struct ieee80211vap *vap, int enable) -{ - struct ieee80211_node *ni = vap->iv_bss; - int qlen; - - IEEE80211_NOTE(vap, IEEE80211_MSG_POWER, ni, - "sta power save mode %s", enable ? "on" : "off"); - if (!enable) { - if (ni->ni_flags & IEEE80211_NODE_PWR_MGT) { - ni->ni_flags &= ~IEEE80211_NODE_PWR_MGT; - ieee80211_send_nulldata(ieee80211_ref_node(ni)); - /* - * Flush any queued frames; we can do this immediately - * because we know they'll be queued behind the null - * data frame we send the ap. - * XXX can we use a data frame to take us out of ps? - */ - qlen = IEEE80211_NODE_SAVEQ_QLEN(ni); - if (qlen != 0) { - struct ifnet *ifp = &vap->iv_arp.ac_if; - struct ifaltq *ifq = &ifp->if_snd; - struct ifqueue *psq = &ni->ni_savedq; - int active; - - IEEE80211_NOTE(vap, IEEE80211_MSG_POWER, ni, - "flush ps queue, %u packets queued", qlen); - active = 1; - IF_LOCK(ifq); - IF_LOCK(psq); - for (;;) { - struct mbuf *m; - - if (_IF_QLEN(psq) == 0) - break; - if (_IF_QFULL(ifq)) - break; - _IF_DEQUEUE(psq, m); - /* NB: no accounting, already done */ - _IF_ENQUEUE(ifq, m); - active = ifp->if_flags & IFF_OACTIVE; - } - IF_UNLOCK(psq); - IF_UNLOCK(ifq); - if (!active) - if_start(ifp); - } - } - } else { - if ((ni->ni_flags & IEEE80211_NODE_PWR_MGT) == 0) { - ni->ni_flags |= IEEE80211_NODE_PWR_MGT; - ieee80211_send_nulldata(ieee80211_ref_node(ni)); - } - } -} - -/* - * Process a received ps-poll frame. - */ -static void ieee80211_recv_pspoll(struct ieee80211_node *ni, struct mbuf *m0) { struct ieee80211vap *vap = ni->ni_vap; ==== //depot/projects/vap/sys/net80211/ieee80211_node.c#10 (text+ko) ==== @@ -66,16 +66,12 @@ static void node_cleanup(struct ieee80211_node *); static void node_free(struct ieee80211_node *); static u_int8_t node_getrssi(const struct ieee80211_node *); -static int node_saveq_drain(struct ieee80211_node *); -static int node_saveq_age(struct ieee80211_node *); static void _ieee80211_free_node(struct ieee80211_node *); static void ieee80211_timeout_stations(struct ieee80211_node_table *); static void ieee80211_node_timeout(void *); -static void ieee80211_set_tim(struct ieee80211_node *, int set); - static void ieee80211_node_table_init(struct ieee80211com *ic, struct ieee80211_node_table *nt, const char *name, int inact); static void ieee80211_node_table_reset(struct ieee80211_node_table *, @@ -117,12 +113,6 @@ vap->iv_inact_auth = IEEE80211_INACT_AUTH; vap->iv_inact_run = IEEE80211_INACT_RUN; vap->iv_inact_probe = IEEE80211_INACT_PROBE; - - if (vap->iv_opmode == IEEE80211_M_HOSTAP || - vap->iv_opmode == IEEE80211_M_IBSS) { - /* NB: driver should override */ - vap->iv_set_tim = ieee80211_set_tim; - } } void @@ -148,15 +138,6 @@ printf("%s: no memory for AID bitmap!\n", __func__); vap->iv_max_aid = 0; } - - vap->iv_tim_len = howmany(vap->iv_max_aid,8) * sizeof(u_int8_t); - MALLOC(vap->iv_tim_bitmap, u_int8_t *, vap->iv_tim_len, - M_DEVBUF, M_NOWAIT | M_ZERO); - if (vap->iv_tim_bitmap == NULL) { - printf("%s: no memory for TIM bitmap!\n", __func__); - /* XXX good enough to keep from crashing? */ - vap->iv_tim_len = 0; - } } ieee80211_reset_bss(vap); @@ -335,6 +316,105 @@ ieee80211_free_node(obss); } } + +/* + * Test a node for suitability/compatibility. + */ +static int +check_bss(struct ieee80211vap *vap, struct ieee80211_node *ni) +{ + struct ieee80211com *ic = ni->ni_ic; + u_int8_t rate; + + if (isclr(ic->ic_chan_active, ieee80211_chan2ieee(ic, ni->ni_chan))) + return 0; + if (vap->iv_opmode == IEEE80211_M_IBSS) { + if ((ni->ni_capinfo & IEEE80211_CAPINFO_IBSS) == 0) + return 0; + } else { + if ((ni->ni_capinfo & IEEE80211_CAPINFO_ESS) == 0) + return 0; + } + if (vap->iv_flags & IEEE80211_F_PRIVACY) { + if ((ni->ni_capinfo & IEEE80211_CAPINFO_PRIVACY) == 0) + return 0; + } else { + /* XXX does this mean privacy is supported or required? */ + if (ni->ni_capinfo & IEEE80211_CAPINFO_PRIVACY) + return 0; + } + rate = ieee80211_fix_rate(ni, IEEE80211_F_DONEGO | IEEE80211_F_DOFRATE); + if (rate & IEEE80211_RATE_BASIC) + return 0; + if (vap->iv_des_esslen != 0 && + (ni->ni_esslen != vap->iv_des_esslen || + memcmp(ni->ni_essid, vap->iv_des_essid, vap->iv_des_esslen) != 0)) + return 0; + if ((vap->iv_flags & IEEE80211_F_DESBSSID) && + !IEEE80211_ADDR_EQ(vap->iv_des_bssid, ni->ni_bssid)) + return 0; + return 1; +} + +#ifdef IEEE80211_DEBUG +/* + * Display node suitability/compatibility. + */ +static void +check_bss_debug(struct ieee80211vap *vap, struct ieee80211_node *ni) +{ + struct ieee80211com *ic = ni->ni_ic; + u_int8_t rate; + int fail; + + fail = 0; + if (isclr(ic->ic_chan_active, ieee80211_chan2ieee(ic, ni->ni_chan))) + fail |= 0x01; + if (vap->iv_opmode == IEEE80211_M_IBSS) { + if ((ni->ni_capinfo & IEEE80211_CAPINFO_IBSS) == 0) + fail |= 0x02; + } else { + if ((ni->ni_capinfo & IEEE80211_CAPINFO_ESS) == 0) + fail |= 0x02; + } + if (vap->iv_flags & IEEE80211_F_PRIVACY) { + if ((ni->ni_capinfo & IEEE80211_CAPINFO_PRIVACY) == 0) + fail |= 0x04; + } else { + /* XXX does this mean privacy is supported or required? */ + if (ni->ni_capinfo & IEEE80211_CAPINFO_PRIVACY) + fail |= 0x04; + } + rate = ieee80211_fix_rate(ni, IEEE80211_F_DONEGO | IEEE80211_F_DOFRATE); + if (rate & IEEE80211_RATE_BASIC) + fail |= 0x08; + if (vap->iv_des_esslen != 0 && + (ni->ni_esslen != vap->iv_des_esslen || + memcmp(ni->ni_essid, vap->iv_des_essid, vap->iv_des_esslen) != 0)) + fail |= 0x10; + if ((vap->iv_flags & IEEE80211_F_DESBSSID) && + !IEEE80211_ADDR_EQ(vap->iv_des_bssid, ni->ni_bssid)) + fail |= 0x20; + + printf(" %c %s", fail ? '-' : '+', ether_sprintf(ni->ni_macaddr)); + printf(" %s%c", ether_sprintf(ni->ni_bssid), fail & 0x20 ? '!' : ' '); + printf(" %3d%c", + ieee80211_chan2ieee(ic, ni->ni_chan), fail & 0x01 ? '!' : ' '); + printf(" %+4d", ni->ni_rssi); + printf(" %2dM%c", (rate & IEEE80211_RATE_VAL) / 2, + fail & 0x08 ? '!' : ' '); + printf(" %4s%c", + (ni->ni_capinfo & IEEE80211_CAPINFO_ESS) ? "ess" : + (ni->ni_capinfo & IEEE80211_CAPINFO_IBSS) ? "ibss" : + "????", + fail & 0x02 ? '!' : ' '); + printf(" %3s%c ", + (ni->ni_capinfo & IEEE80211_CAPINFO_PRIVACY) ? "wep" : "no", + fail & 0x04 ? '!' : ' '); + ieee80211_print_essid(ni->ni_essid, ni->ni_esslen); + printf("%s\n", fail & 0x10 ? "!" : ""); +} +#endif /* IEEE80211_DEBUG */ /* * Handle 802.11 ad hoc network merge. The @@ -359,10 +439,14 @@ /* unchanged, nothing to do */ return 0; } - if (ieee80211_match_bss(vap, ni) != 0) { + if (!check_bss(vap, ni)) { /* capabilities mismatch */ IEEE80211_DPRINTF(vap, IEEE80211_MSG_ASSOC, "%s: merge failed, capabilities mismatch\n", __func__); +#ifdef IEEE80211_DEBUG + if (ieee80211_msg_assoc(vap)) + check_bss_debug(vap, ni); +#endif vap->iv_stats.is_ibss_capmismatch++; return 0; } @@ -545,7 +629,7 @@ /* * Drain power save queue and, if needed, clear TIM. */ - if (node_saveq_drain(ni) != 0 && vap->iv_set_tim != NULL) + if (ieee80211_node_saveq_drain(ni) != 0 && vap->iv_set_tim != NULL) vap->iv_set_tim(ni, 0); ni->ni_associd = 0; @@ -597,73 +681,6 @@ } /* - * Clear any frames queued on a node's power save queue. - * The number of frames that were present is returned. - */ -static int -node_saveq_drain(struct ieee80211_node *ni) -{ - struct mbuf *m; - int qlen; - - IEEE80211_NODE_SAVEQ_LOCK(ni); - qlen = IEEE80211_NODE_SAVEQ_QLEN(ni); - for (;;) { - _IF_DEQUEUE(&ni->ni_savedq, m); - if (m == NULL) - break; - m_freem(m); - } - IEEE80211_NODE_SAVEQ_UNLOCK(ni); - - return qlen; -} - -/* - * Age frames on the power save queue. The aging interval is - * 4 times the listen interval specified by the station. This - * number is factored into the age calculations when the frame - * is placed on the queue. We store ages as time differences - * so we can check and/or adjust only the head of the list. - * If a frame's age exceeds the threshold then discard it. - * The number of frames discarded is returned so the caller - * can check if it needs to adjust the tim. - */ -static int -node_saveq_age(struct ieee80211_node *ni) -{ - int discard = 0; - - /* XXX racey but good 'nuf? */ - if (IEEE80211_NODE_SAVEQ_QLEN(ni) != 0) { -#ifdef IEEE80211_DEBUG - struct ieee80211vap *vap = ni->ni_vap; -#endif - struct mbuf *m; - - IEEE80211_NODE_SAVEQ_LOCK(ni); - while (IF_POLL(&ni->ni_savedq, m) != NULL && - M_AGE_GET(m) < IEEE80211_INACT_WAIT) { - IEEE80211_NOTE(vap, IEEE80211_MSG_POWER, ni, - "discard frame, age %u", M_AGE_GET(m)); - - /* XXX could be optimized */ - _IF_DEQUEUE(&ni->ni_savedq, m); - m_freem(m); - discard++; - } - if (m != NULL) - M_AGE_SUB(m, IEEE80211_INACT_WAIT); - IEEE80211_NODE_SAVEQ_UNLOCK(ni); - - IEEE80211_NOTE(vap, IEEE80211_MSG_POWER, ni, - "discard %u frames for age", discard); - IEEE80211_NODE_STAT_ADD(ni, ps_discard, discard); - } - return discard; -} - -/* * Create an entry in the specified node table. The node * is setup with the mac address, an initial reference count, * and some basic parameters obtained from global state. @@ -1210,7 +1227,7 @@ /* * Age frames on the power save queue. */ - if (node_saveq_age(ni) != 0 && + if (ieee80211_node_saveq_age(ni) != 0 && IEEE80211_NODE_SAVEQ_QLEN(ni) == 0 && vap->iv_set_tim != NULL) vap->iv_set_tim(ni, 0); @@ -1652,34 +1669,3 @@ return rssi_total / NZ(rssi_samples); #undef NZ } - -/* - * Indicate whether there are frames queued for a station in power-save mode. - */ -static void -ieee80211_set_tim(struct ieee80211_node *ni, int set) -{ - struct ieee80211vap *vap = ni->ni_vap; - u_int16_t aid; - - KASSERT(vap->iv_opmode == IEEE80211_M_HOSTAP || - vap->iv_opmode == IEEE80211_M_IBSS, - ("operating mode %u", vap->iv_opmode)); - - aid = IEEE80211_AID(ni->ni_associd); - KASSERT(aid < vap->iv_max_aid, - ("bogus aid %u, max %u", aid, vap->iv_max_aid)); - - IEEE80211_BEACON_LOCK(ni->ni_ic); - if (set != (isset(vap->iv_tim_bitmap, aid) != 0)) { - if (set) { - setbit(vap->iv_tim_bitmap, aid); - vap->iv_ps_pending++; - } else { - clrbit(vap->iv_tim_bitmap, aid); - vap->iv_ps_pending--; - } - vap->iv_flags |= IEEE80211_F_TIMUPDATE; - } - IEEE80211_BEACON_UNLOCK(ni->ni_ic); -} ==== //depot/projects/vap/sys/net80211/ieee80211_output.c#14 (text+ko) ==== @@ -2231,49 +2231,3 @@ return len_changed; } - -/* - * Save an outbound packet for a node in power-save sleep state. - * The new packet is placed on the node's saved queue, and the TIM - * is changed, if necessary. - */ -void -ieee80211_pwrsave(struct ieee80211_node *ni, struct mbuf *m) -{ - struct ieee80211vap *vap = ni->ni_vap; - struct ieee80211com *ic = ni->ni_ic; - int qlen, age; - - IEEE80211_NODE_SAVEQ_LOCK(ni); - if (_IF_QFULL(&ni->ni_savedq)) { - _IF_DROP(&ni->ni_savedq); - IEEE80211_NODE_SAVEQ_UNLOCK(ni); - IEEE80211_NOTE(vap, IEEE80211_MSG_ANY, ni, - "pwr save q overflow, drops %d (size %d)", - ni->ni_savedq.ifq_drops, IEEE80211_PS_MAX_QUEUE); -#ifdef IEEE80211_DEBUG - if (ieee80211_msg_dumppkts(vap)) - ieee80211_dump_pkt(ni->ni_ic, mtod(m, caddr_t), m->m_len, -1, -1); -#endif - m_freem(m); - return; - } - /* - * Tag the frame with it's expiry time and insert - * it in the queue. The aging interval is 4 times - * the listen interval specified by the station. - * Frames that sit around too long are reclaimed - * using this information. - */ - /* XXX handle overflow? */ - /* XXX per/vap beacon interval? */ - age = ((ni->ni_intval * ic->ic_lintval) << 2) / 1024; /* TU -> secs */ - _IEEE80211_NODE_SAVEQ_ENQUEUE(ni, m, qlen, age); - IEEE80211_NODE_SAVEQ_UNLOCK(ni); - - IEEE80211_NOTE(vap, IEEE80211_MSG_POWER, ni, - "save frame, %u now queued", qlen); - - if (qlen == 1 && vap->iv_set_tim != NULL) - vap->iv_set_tim(ni, 1); -} ==== //depot/projects/vap/sys/net80211/ieee80211_proto.h#6 (text+ko) ==== @@ -71,7 +71,6 @@ void ieee80211_saveath(struct ieee80211_node *, u_int8_t *); void ieee80211_recv_mgmt(struct ieee80211_node *, struct mbuf *, int, int, u_int32_t); -void ieee80211_sta_pwrsave(struct ieee80211vap *, int enable); void ieee80211_start(struct ifnet *); int ieee80211_send_nulldata(struct ieee80211_node *); int ieee80211_send_probereq(struct ieee80211_node *, @@ -82,7 +81,6 @@ const void *optie, size_t optielen); int ieee80211_send_mgmt(struct ieee80211_node *, int, int); struct mbuf *ieee80211_encap(struct ieee80211_node *, struct mbuf *); -void ieee80211_pwrsave(struct ieee80211_node *, struct mbuf *); void ieee80211_reset_erp(struct ieee80211com *, enum ieee80211_phymode); void ieee80211_set_shortslottime(struct ieee80211com *, int onoff); ==== //depot/projects/vap/sys/net80211/ieee80211_scan.c#6 (text+ko) ==== @@ -62,6 +62,14 @@ static void scan_next(void *arg); +#include +static int bgscandelay = 1; /* default 1ms */ +SYSCTL_INT(_net_wlan, OID_AUTO, bgscandelay, CTLFLAG_RW, &bgscandelay, + 0, "bg scan pwr sav delay (ms)"); +static int beaconswitch = 10; /* default 10ms */ +SYSCTL_INT(_net_wlan, OID_AUTO, beaconswitch, CTLFLAG_RW, &beaconswitch, + 0, "beacon switch time (ms)"); + MALLOC_DEFINE(M_80211_SCAN, "80211scan", "802.11 scan state"); void @@ -239,12 +247,12 @@ if ((vap->iv_bss->ni_flags & IEEE80211_NODE_PWR_MGT) == 0) { /* * Initiate power save before going off-channel. - * Use an initial 1ms delay to insure the null + * Use an initial tunable delay to insure the null * data frame has a chance to go out. * XXX bogus, need to trigger on on tx complete. */ ieee80211_sta_pwrsave(vap, 1); - delay = hz/1000; + delay = bgscandelay*hz/1000; if (delay < 1) delay = 1; } @@ -399,8 +407,8 @@ * or (more likely) arrange to start at the next beacon. */ duration = IEEE80211_TU_TO_TICKS(vap->iv_bss->ni_intval); - fudge = hz/1000; - if (fudge == 0) + fudge = beaconswitch*hz/1000; + if (fudge < 1) fudge = 1; if (duration > fudge) duration -= fudge; @@ -644,71 +652,6 @@ } } -/* - * Test a scan candidate for suitability/compatibility. - */ -int -ieee80211_match_bss(struct ieee80211vap *vap, struct ieee80211_node *ni) -{ - struct ieee80211com *ic = ni->ni_ic; - u_int8_t rate; - int fail; - - fail = 0; - if (isclr(ic->ic_chan_active, ieee80211_chan2ieee(ic, ni->ni_chan))) - fail |= 0x01; - if (vap->iv_opmode == IEEE80211_M_IBSS) { - if ((ni->ni_capinfo & IEEE80211_CAPINFO_IBSS) == 0) - fail |= 0x02; - } else { - if ((ni->ni_capinfo & IEEE80211_CAPINFO_ESS) == 0) - fail |= 0x02; - } - if (vap->iv_flags & IEEE80211_F_PRIVACY) { - if ((ni->ni_capinfo & IEEE80211_CAPINFO_PRIVACY) == 0) - fail |= 0x04; - } else { - /* XXX does this mean privacy is supported or required? */ - if (ni->ni_capinfo & IEEE80211_CAPINFO_PRIVACY) - fail |= 0x04; - } - rate = ieee80211_fix_rate(ni, IEEE80211_F_DONEGO | IEEE80211_F_DOFRATE); - if (rate & IEEE80211_RATE_BASIC) - fail |= 0x08; - if (vap->iv_des_esslen != 0 && - (ni->ni_esslen != vap->iv_des_esslen || - memcmp(ni->ni_essid, vap->iv_des_essid, vap->iv_des_esslen) != 0)) - fail |= 0x10; - if ((vap->iv_flags & IEEE80211_F_DESBSSID) && - !IEEE80211_ADDR_EQ(vap->iv_des_bssid, ni->ni_bssid)) - fail |= 0x20; -#ifdef IEEE80211_DEBUG - if (ieee80211_msg_scan(vap)) { - printf(" %c %s", fail ? '-' : '+', - ether_sprintf(ni->ni_macaddr)); - printf(" %s%c", ether_sprintf(ni->ni_bssid), - fail & 0x20 ? '!' : ' '); - printf(" %3d%c", ieee80211_chan2ieee(ic, ni->ni_chan), - fail & 0x01 ? '!' : ' '); - printf(" %+4d", ni->ni_rssi); - printf(" %2dM%c", (rate & IEEE80211_RATE_VAL) / 2, - fail & 0x08 ? '!' : ' '); - printf(" %4s%c", - (ni->ni_capinfo & IEEE80211_CAPINFO_ESS) ? "ess" : - (ni->ni_capinfo & IEEE80211_CAPINFO_IBSS) ? "ibss" : - "????", - fail & 0x02 ? '!' : ' '); - printf(" %3s%c ", - (ni->ni_capinfo & IEEE80211_CAPINFO_PRIVACY) ? - "wep" : "no", - fail & 0x04 ? '!' : ' '); - ieee80211_print_essid(ni->ni_essid, ni->ni_esslen); - printf("%s\n", fail & 0x10 ? "!" : ""); - } -#endif - return fail; -} - #ifdef IEEE80211_DEBUG static void dump_probe_beacon(u_int8_t subtype, int isnew, ==== //depot/projects/vap/sys/net80211/ieee80211_scan.h#4 (text+ko) ==== @@ -87,8 +87,6 @@ int ieee80211_check_scan(struct ieee80211vap *, int flags, u_int duration); void ieee80211_cancel_scan(struct ieee80211vap *); -int ieee80211_match_bss(struct ieee80211vap *, struct ieee80211_node *); - struct ieee80211_scanparams; void ieee80211_add_scan(struct ieee80211vap *, const struct ieee80211_scanparams *, ==== //depot/projects/vap/sys/net80211/ieee80211_var.h#15 (text+ko) ==== @@ -56,6 +56,7 @@ #include #include /* for ieee80211_stats */ #include +#include #include #include @@ -502,6 +503,8 @@ ((_vap)->iv_debug & IEEE80211_MSG_RADKEYS) #define ieee80211_msg_scan(_vap) \ ((_vap)->iv_debug & IEEE80211_MSG_SCAN) +#define ieee80211_msg_assoc(_vap) \ + ((_vap)->iv_debug & IEEE80211_MSG_ASSOC) #else #define IEEE80211_DPRINTF(_vap, _m, _fmt, ...) #define IEEE80211_NOTE_FRAME(_vap, _m, _wh, _fmt, ...) From owner-p4-projects@FreeBSD.ORG Mon May 23 19:11:42 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8C90316A420; Mon, 23 May 2005 19:11:41 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 604FE16A41C for ; Mon, 23 May 2005 19:11:41 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3C61C43D1D for ; Mon, 23 May 2005 19:11:41 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4NJBf0Y082002 for ; Mon, 23 May 2005 19:11:41 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4NJBe74081999 for perforce@freebsd.org; Mon, 23 May 2005 19:11:40 GMT (envelope-from sam@freebsd.org) Date: Mon, 23 May 2005 19:11:40 GMT Message-Id: <200505231911.j4NJBe74081999@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 77355 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 23 May 2005 19:11:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=77355 Change 77355 by sam@sam_ebb on 2005/05/23 19:11:35 o savchan should always be ic_bsschan so just eliminate it (from andy) o don't print beacon frames when !scanning so it's safe to turn on scan debug again Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_scan.c#7 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_scan.c#7 (text+ko) ==== @@ -53,7 +53,6 @@ struct scan_state { struct ieee80211_scan_state base; /* public state */ - struct ieee80211_channel *ss_savchan; /* saved channel setting */ unsigned long ss_scanend; /* time scan must stop */ unsigned long ss_chanmindwell; /* " " " on curchan */ struct callout ss_scan_timer; /* scan timer */ @@ -258,7 +257,6 @@ } } - ss->ss_savchan = ic->ic_curchan; ic->ic_scan_start(ic); /* notify driver */ ss->ss_scanend = ticks + delay + duration; callout_reset(&ss->ss_scan_timer, delay, scan_next, &ss->base); @@ -315,7 +313,6 @@ vap->iv_stats.is_scan_active++; else vap->iv_stats.is_scan_passive++; - SCAN_PRIVATE(ss)->ss_savchan = ic->ic_curchan; if (flags & IEEE80211_SCAN_FLUSH) ss->ss_ops->scan_flush(ss); @@ -584,9 +581,11 @@ */ if (scandone) ic->ic_lastscan = ticks; - /* return to the original channel */ - if (SCAN_PRIVATE(ss)->ss_savchan != ic->ic_curchan) - change_channel(ic, SCAN_PRIVATE(ss)->ss_savchan); + /* return to the bss channel */ + /* XXX resync beacon timers? */ + if (ic->ic_bsschan != IEEE80211_CHAN_ANYC && + ic->ic_curchan != ic->ic_bsschan) + change_channel(ic, ic->ic_bsschan); /* clear mindwell lock and initial channel change flush */ ss->ss_flags &= ~(IEEE80211_SCAN_MINDWELL | IEEE80211_SCAN_DISCARD); @@ -708,7 +707,7 @@ if (ss->ss_flags & IEEE80211_SCAN_DISCARD) return; #ifdef IEEE80211_DEBUG - if (ieee80211_msg_scan(vap)) + if (ieee80211_msg_scan(vap) && (ic->ic_flags & IEEE80211_F_SCAN)) dump_probe_beacon(subtype, 1, wh->i_addr2, sp); #endif if (ss->ss_ops != NULL && From owner-p4-projects@FreeBSD.ORG Mon May 23 21:21:19 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 992AF16A420; Mon, 23 May 2005 21:21:18 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5D91816A41C for ; Mon, 23 May 2005 21:21:18 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 38C1A43D1D for ; Mon, 23 May 2005 21:21:18 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4NLLIVo093709 for ; Mon, 23 May 2005 21:21:18 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4NLLH9P093705 for perforce@freebsd.org; Mon, 23 May 2005 21:21:17 GMT (envelope-from sam@freebsd.org) Date: Mon, 23 May 2005 21:21:17 GMT Message-Id: <200505232121.j4NLLH9P093705@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 77359 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 23 May 2005 21:21:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=77359 Change 77359 by sam@sam_ebb on 2005/05/23 21:20:26 lower min bgscan params for testing Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_var.h#16 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_var.h#16 (text+ko) ==== @@ -71,10 +71,10 @@ #define IEEE80211_BINTVAL_MIN 25 /* min beacon interval (TU's) */ #define IEEE80211_BINTVAL_DEFAULT 100 /* default beacon interval (TU's) */ -#define IEEE80211_BGSCAN_INTVAL_MIN (1*60) /* min bg scan intvl (secs) */ +#define IEEE80211_BGSCAN_INTVAL_MIN 15 /* min bg scan intvl (secs) */ #define IEEE80211_BGSCAN_INTVAL_DEFAULT (5*60) /* default bg scan intvl */ -#define IEEE80211_BGSCAN_IDLE_MIN 250 /* min idle time (ms) */ +#define IEEE80211_BGSCAN_IDLE_MIN 100 /* min idle time (ms) */ #define IEEE80211_BGSCAN_IDLE_DEFAULT 500 /* default idle time (ms) */ #define IEEE80211_PS_SLEEP 0x1 /* STA is in power saving mode */ @@ -302,7 +302,7 @@ #define IEEE80211_ADDR_COPY(dst,src) memcpy(dst,src,IEEE80211_ADDR_LEN) /* ic_flags */ -/* NB: bits 0x00004003 available */ +/* NB: bits 0x00000003 available */ #define IEEE80211_F_PROMISC 0x00000004 /* STATUS: promiscuous mode */ #define IEEE80211_F_ALLMULTI 0x00000008 /* STATUS: all multicast mode */ /* NB: this is intentionally setup to be IEEE80211_CAPINFO_PRIVACY */ From owner-p4-projects@FreeBSD.ORG Mon May 23 21:22:21 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 816AC16A420; Mon, 23 May 2005 21:22:20 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 58BCA16A41C for ; Mon, 23 May 2005 21:22:20 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0A0D143D1F for ; Mon, 23 May 2005 21:22:19 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4NLMJm7093764 for ; Mon, 23 May 2005 21:22:19 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4NLMJx8093756 for perforce@freebsd.org; Mon, 23 May 2005 21:22:19 GMT (envelope-from sam@freebsd.org) Date: Mon, 23 May 2005 21:22:19 GMT Message-Id: <200505232122.j4NLMJx8093756@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 77360 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 23 May 2005 21:22:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=77360 Change 77360 by sam@sam_ebb on 2005/05/23 21:21:54 code shuffle Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_power.c#2 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_power.c#2 (text+ko) ==== @@ -314,52 +314,51 @@ struct ieee80211_node *ni = vap->iv_bss; int qlen; + if (!((enable != 0) ^ ((ni->ni_flags & IEEE80211_NODE_PWR_MGT) != 0))) + return; + IEEE80211_NOTE(vap, IEEE80211_MSG_POWER, ni, "sta power save mode %s", enable ? "on" : "off"); if (!enable) { - if (ni->ni_flags & IEEE80211_NODE_PWR_MGT) { - ni->ni_flags &= ~IEEE80211_NODE_PWR_MGT; - ieee80211_send_nulldata(ieee80211_ref_node(ni)); - /* - * Flush any queued frames; we can do this immediately - * because we know they'll be queued behind the null - * data frame we send the ap. - * XXX can we use a data frame to take us out of ps? - */ - qlen = IEEE80211_NODE_SAVEQ_QLEN(ni); - if (qlen != 0) { - struct ifnet *ifp = &vap->iv_arp.ac_if; - struct ifaltq *ifq = &ifp->if_snd; - struct ifqueue *psq = &ni->ni_savedq; - int active; + ni->ni_flags &= ~IEEE80211_NODE_PWR_MGT; + ieee80211_send_nulldata(ieee80211_ref_node(ni)); + /* + * Flush any queued frames; we can do this immediately + * because we know they'll be queued behind the null + * data frame we send the ap. + * XXX can we use a data frame to take us out of ps? + */ + qlen = IEEE80211_NODE_SAVEQ_QLEN(ni); + if (qlen != 0) { + struct ifnet *ifp = &vap->iv_arp.ac_if; + struct ifaltq *ifq = &ifp->if_snd; + struct ifqueue *psq = &ni->ni_savedq; + int active; - IEEE80211_NOTE(vap, IEEE80211_MSG_POWER, ni, - "flush ps queue, %u packets queued", qlen); - active = 1; - IF_LOCK(ifq); - IF_LOCK(psq); - for (;;) { - struct mbuf *m; + IEEE80211_NOTE(vap, IEEE80211_MSG_POWER, ni, + "flush ps queue, %u packets queued", qlen); + active = 1; + IF_LOCK(ifq); + IF_LOCK(psq); + for (;;) { + struct mbuf *m; - if (_IF_QLEN(psq) == 0) - break; - if (_IF_QFULL(ifq)) - break; - _IF_DEQUEUE(psq, m); - /* NB: no accounting, already done */ - _IF_ENQUEUE(ifq, m); - active = ifp->if_flags & IFF_OACTIVE; - } - IF_UNLOCK(psq); - IF_UNLOCK(ifq); - if (!active) - if_start(ifp); + if (_IF_QLEN(psq) == 0) + break; + if (_IF_QFULL(ifq)) + break; + _IF_DEQUEUE(psq, m); + /* NB: no accounting, already done */ + _IF_ENQUEUE(ifq, m); + active = ifp->if_flags & IFF_OACTIVE; } + IF_UNLOCK(psq); + IF_UNLOCK(ifq); + if (!active) + if_start(ifp); } } else { - if ((ni->ni_flags & IEEE80211_NODE_PWR_MGT) == 0) { - ni->ni_flags |= IEEE80211_NODE_PWR_MGT; - ieee80211_send_nulldata(ieee80211_ref_node(ni)); - } + ni->ni_flags |= IEEE80211_NODE_PWR_MGT; + ieee80211_send_nulldata(ieee80211_ref_node(ni)); } } From owner-p4-projects@FreeBSD.ORG Mon May 23 21:23:22 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 010AE16A420; Mon, 23 May 2005 21:23:21 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id CE94416A41C for ; Mon, 23 May 2005 21:23:21 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AB88043D1F for ; Mon, 23 May 2005 21:23:21 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4NLNLLd093788 for ; Mon, 23 May 2005 21:23:21 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4NLNLmN093785 for perforce@freebsd.org; Mon, 23 May 2005 21:23:21 GMT (envelope-from sam@freebsd.org) Date: Mon, 23 May 2005 21:23:21 GMT Message-Id: <200505232123.j4NLNLmN093785@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 77361 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 23 May 2005 21:23:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=77361 Change 77361 by sam@sam_ebb on 2005/05/23 21:22:28 track beacon tsf Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_input.c#16 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_input.c#16 (text+ko) ==== @@ -2275,6 +2275,9 @@ if (vap->iv_opmode == IEEE80211_M_STA && ni->ni_associd != 0 && IEEE80211_ADDR_EQ(wh->i_addr2, ni->ni_bssid)) { + /* record tsf of last beacon */ + memcpy(ni->ni_tstamp.data, scan.tstamp, + sizeof(ni->ni_tstamp)); if (ni->ni_erp != scan.erp) { IEEE80211_NOTE(vap, IEEE80211_MSG_ASSOC, ni, "erp change: was 0x%x, now 0x%x", @@ -2372,17 +2375,19 @@ subtype, rssi, rstamp); return; } - /* - * Adhoc mode, do neighbor discovery. - * NB: only record ibss stations - */ - if ((scan.capinfo & IEEE80211_CAPINFO_IBSS) && - (ni == vap->iv_bss && - !IEEE80211_ADDR_EQ(ni->ni_macaddr, wh->i_addr2))) { - /* - * Create a new entry in the neighbor table. - */ - ni = ieee80211_add_neighbor(vap, wh, &scan); + if (scan.capinfo & IEEE80211_CAPINFO_IBSS) { + if (!IEEE80211_ADDR_EQ(wh->i_addr2, ni->ni_macaddr)) { + /* + * Create a new entry in the neighbor table. + */ + ni = ieee80211_add_neighbor(vap, wh, &scan); + } else { + /* + * Record tsf for potential resync. + */ + memcpy(ni->ni_tstamp.data, scan.tstamp, + sizeof(ni->ni_tstamp)); + } if (ni != NULL) { ni->ni_rssi = rssi; ni->ni_rstamp = rstamp; From owner-p4-projects@FreeBSD.ORG Mon May 23 22:38:54 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 170D516A420; Mon, 23 May 2005 22:38:53 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C202A16A41C for ; Mon, 23 May 2005 22:38:52 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 835FF43D48 for ; Mon, 23 May 2005 22:38:52 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4NMcqMR096561 for ; Mon, 23 May 2005 22:38:52 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4NMcqV0096558 for perforce@freebsd.org; Mon, 23 May 2005 22:38:52 GMT (envelope-from sam@freebsd.org) Date: Mon, 23 May 2005 22:38:52 GMT Message-Id: <200505232238.j4NMcqV0096558@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 77362 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 23 May 2005 22:38:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=77362 Change 77362 by sam@sam_ebb on 2005/05/23 22:38:47 Revamp algorithm for noting when a station was last "seen" so that the currently associated ap gets credit for frames received while !scanning. Instead of clearing se_seen at the start of each scan reset it on scan complete; this way frames received while !scanning cause se_seen to be marked so even if the sta isn't found during the scan previous state will keep it from being marked "not seen". Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_scan_sta.c#7 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_scan_sta.c#7 (text+ko) ==== @@ -275,29 +275,6 @@ #undef ISPROBE } -static void -sta_clearseen(struct sta_table *st) -{ - struct sta_entry *se; - - mtx_lock(&st->st_lock); - TAILQ_FOREACH(se, &st->st_entry, se_list) - se->se_seen = 0; - mtx_unlock(&st->st_lock); -} - -static void -sta_updateseen(struct sta_table *st) -{ - struct sta_entry *se; - - mtx_lock(&st->st_lock); - TAILQ_FOREACH(se, &st->st_entry, se_list) - if (!se->se_seen) - se->se_notseen++; - mtx_unlock(&st->st_lock); -} - static struct ieee80211_channel * find11gchannel(struct ieee80211com *ic, int i, int freq) { @@ -491,7 +468,6 @@ } #endif /* IEEE80211_DEBUG */ - sta_clearseen(st); st->st_newscan = 1; return 0; @@ -506,7 +482,6 @@ { struct sta_table *st = ss->ss_priv; - sta_clearseen(st); st->st_newscan = 1; return 0; } @@ -705,6 +680,28 @@ return fail; } +static void +sta_update_notseen(struct sta_table *st) +{ + struct sta_entry *se; + + mtx_lock(&st->st_lock); + TAILQ_FOREACH(se, &st->st_entry, se_list) { + /* + * If seen the reset and don't bump the count; + * otherwise bump the ``not seen'' count. Note + * that this insures that stations for which we + * see frames while not scanning but not during + * this scan will not be penalized. + */ + if (se->se_seen) + se->se_seen = 0; + else + se->se_notseen++; + } + mtx_unlock(&st->st_lock); +} + /* * Pick an ap or ibss network to join or find a channel * to use to start an ibss network. @@ -719,7 +716,7 @@ ("wrong opmode %u", vap->iv_opmode)); if (st->st_newscan) { - sta_updateseen(st); + sta_update_notseen(st); st->st_newscan = 0; } if (ss->ss_flags & IEEE80211_SCAN_NOPICK) { From owner-p4-projects@FreeBSD.ORG Mon May 23 23:37:04 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D655F16A420; Mon, 23 May 2005 23:37:03 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9AAB716A41C for ; Mon, 23 May 2005 23:37:03 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5A9A443D49 for ; Mon, 23 May 2005 23:37:03 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4NNb3WB099144 for ; Mon, 23 May 2005 23:37:03 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4NNb3Tr099141 for perforce@freebsd.org; Mon, 23 May 2005 23:37:03 GMT (envelope-from sam@freebsd.org) Date: Mon, 23 May 2005 23:37:03 GMT Message-Id: <200505232337.j4NNb3Tr099141@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 77364 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 23 May 2005 23:37:04 -0000 http://perforce.freebsd.org/chv.cgi?CH=77364 Change 77364 by sam@sam_ebb on 2005/05/23 23:36:26 Sync beacon timers on return to the bss channel since the channel change destroys the timer register contents. Will also (eventually) use this to deal with timer drift in adhoc mode. Affected files ... .. //depot/projects/vap/sys/dev/ath/if_ath.c#15 edit .. //depot/projects/vap/sys/dev/ath/if_athvar.h#7 edit Differences ... ==== //depot/projects/vap/sys/dev/ath/if_ath.c#15 (text+ko) ==== @@ -3011,6 +3011,7 @@ if (vap->iv_opmode == IEEE80211_M_IBSS && sc->sc_hasveol) ath_beacon_proc(sc, 0); } + sc->sc_syncbeacon = 0; } static void @@ -3355,7 +3356,7 @@ int subtype, int rssi, u_int32_t rstamp) { struct ath_softc *sc = ni->ni_ic->ic_ifp->if_softc; - struct ieee80211vap *vap; + struct ieee80211vap *vap = ni->ni_vap; /* * Call up first so subsequent work can use information @@ -3366,9 +3367,16 @@ case IEEE80211_FC0_SUBTYPE_BEACON: /* update rssi statistics for use by the hal */ ATH_RSSI_LPF(ATH_NODE(ni)->an_halstats.ns_avgbrssi, rssi); + if (sc->sc_syncbeacon && + ni == vap->iv_bss && vap->iv_state == IEEE80211_S_RUN) { + /* + * Resync beacon timers using the tsf of the + * beacon frame we just received. + */ + ath_beacon_config(sc); + } /* fall thru... */ case IEEE80211_FC0_SUBTYPE_PROBE_RESP: - vap = ni->ni_vap; if (vap->iv_opmode == IEEE80211_M_IBSS && vap->iv_state == IEEE80211_S_RUN) { u_int64_t tsf = ath_extend_tsf(sc->sc_ah, rstamp); @@ -4956,6 +4964,7 @@ /* XXX calibration timer? */ sc->sc_scanning = 1; + sc->sc_syncbeacon = 0; rfilt = ath_calcrxfilter(sc); ath_hal_setrxfilter(ah, rfilt); ath_hal_setassocid(ah, ifp->if_broadcastaddr, 0); @@ -4989,6 +4998,14 @@ struct ath_softc *sc = ifp->if_softc; (void) ath_chan_set(sc, ic->ic_curchan); + /* + * If we are returning to our bss channel then mark state + * so the next recv'd beacon's tsf will be used to sync the + * beacon timers. Note that since we only hear beacons in + * sta/ibss mode this has no effect in other operating modes. + */ + if (!sc->sc_scanning && ic->ic_curchan == ic->ic_bsschan) + sc->sc_syncbeacon = 1; } static int ==== //depot/projects/vap/sys/dev/ath/if_athvar.h#7 (text+ko) ==== @@ -251,7 +251,8 @@ sc_beacons : 1, /* beacons running */ sc_hasbmask: 1, /* bssid mask support */ sc_hastsfadd:1, /* tsf adjust support */ - sc_scanning: 1; /* scanning active */ + sc_scanning: 1, /* scanning active */ + sc_syncbeacon:1;/* sync/resync beacon timers */ /* rate tables */ const HAL_RATE_TABLE *sc_rates[IEEE80211_MODE_MAX]; const HAL_RATE_TABLE *sc_currates; /* current rate table */ From owner-p4-projects@FreeBSD.ORG Tue May 24 17:26:47 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9AA2716A421; Tue, 24 May 2005 17:26:46 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6E3BE16A41C for ; Tue, 24 May 2005 17:26:46 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 38ABA43D49 for ; Tue, 24 May 2005 17:26:46 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4OHQk5Q078553 for ; Tue, 24 May 2005 17:26:46 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4OHQjwh078550 for perforce@freebsd.org; Tue, 24 May 2005 17:26:45 GMT (envelope-from sam@freebsd.org) Date: Tue, 24 May 2005 17:26:45 GMT Message-Id: <200505241726.j4OHQjwh078550@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 77395 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 24 May 2005 17:26:47 -0000 http://perforce.freebsd.org/chv.cgi?CH=77395 Change 77395 by sam@sam_ebb on 2005/05/24 17:25:45 purge dead variable Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_scan.h#5 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_scan.h#5 (text+ko) ==== @@ -56,7 +56,6 @@ int len; u_int8_t ssid[IEEE80211_NWID_LEN]; } ss_probe_ssid[3]; /* ssid's to probe */ - struct ieee80211_channel *ss_savchan; /* saved channel setting */ /* ordered channel set */ struct ieee80211_channel *ss_chans[IEEE80211_SCAN_MAX]; u_int16_t ss_next; /* ix of next chan to scan */ From owner-p4-projects@FreeBSD.ORG Tue May 24 18:14:23 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C3E4016A420; Tue, 24 May 2005 18:14:22 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9691216A41C for ; Tue, 24 May 2005 18:14:22 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 60EBE43D48 for ; Tue, 24 May 2005 18:14:22 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4OIEMwD080440 for ; Tue, 24 May 2005 18:14:22 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4OIEMqq080437 for perforce@freebsd.org; Tue, 24 May 2005 18:14:22 GMT (envelope-from sam@freebsd.org) Date: Tue, 24 May 2005 18:14:22 GMT Message-Id: <200505241814.j4OIEMqq080437@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 77398 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 24 May 2005 18:14:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=77398 Change 77398 by sam@sam_ebb on 2005/05/24 18:13:21 purge stale comment Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_scan.c#8 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_scan.c#8 (text+ko) ==== @@ -582,7 +582,6 @@ if (scandone) ic->ic_lastscan = ticks; /* return to the bss channel */ - /* XXX resync beacon timers? */ if (ic->ic_bsschan != IEEE80211_CHAN_ANYC && ic->ic_curchan != ic->ic_bsschan) change_channel(ic, ic->ic_bsschan); From owner-p4-projects@FreeBSD.ORG Tue May 24 19:18:46 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CE45816A421; Tue, 24 May 2005 19:18:45 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9E18416A41C for ; Tue, 24 May 2005 19:18:45 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 63A0643D1F for ; Tue, 24 May 2005 19:18:45 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4OJIjOq083087 for ; Tue, 24 May 2005 19:18:45 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4OJIfoq083084 for perforce@freebsd.org; Tue, 24 May 2005 19:18:41 GMT (envelope-from peter@freebsd.org) Date: Tue, 24 May 2005 19:18:41 GMT Message-Id: <200505241918.j4OJIfoq083084@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Cc: Subject: PERFORCE change 77402 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 24 May 2005 19:18:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=77402 Change 77402 by peter@peter_daintree on 2005/05/24 19:18:34 IFC @77401 Affected files ... .. //depot/projects/hammer/MAINTAINERS#32 integrate .. //depot/projects/hammer/Makefile.inc1#92 integrate .. //depot/projects/hammer/contrib/bsnmp/NEWS#7 integrate .. //depot/projects/hammer/contrib/bsnmp/VERSION#7 integrate .. //depot/projects/hammer/contrib/bsnmp/lib/bsnmpclient.3#6 integrate .. //depot/projects/hammer/contrib/bsnmp/lib/snmpclient.c#4 integrate .. //depot/projects/hammer/contrib/bsnmp/lib/snmpclient.h#4 integrate .. //depot/projects/hammer/contrib/bsnmp/oid-list#3 integrate .. //depot/projects/hammer/contrib/bsnmp/snmp_mibII/mibII.c#6 integrate .. //depot/projects/hammer/contrib/bsnmp/snmp_mibII/mibII.h#4 integrate .. //depot/projects/hammer/contrib/bsnmp/snmp_mibII/mibII_interfaces.c#6 integrate .. //depot/projects/hammer/contrib/bsnmp/snmp_mibII/mibII_ip.c#4 integrate .. //depot/projects/hammer/contrib/bsnmp/snmp_mibII/mibII_route.c#4 integrate .. //depot/projects/hammer/contrib/bsnmp/snmp_mibII/mibII_tcp.c#4 integrate .. //depot/projects/hammer/contrib/bsnmp/snmp_mibII/mibII_udp.c#4 integrate .. //depot/projects/hammer/contrib/bsnmp/snmp_mibII/snmp_mibII.3#6 integrate .. //depot/projects/hammer/contrib/bsnmp/snmp_mibII/snmp_mibII.h#5 integrate .. //depot/projects/hammer/contrib/bsnmp/snmp_ntp/snmp_ntp.c#2 integrate .. //depot/projects/hammer/contrib/bsnmp/snmpd/main.c#7 integrate .. //depot/projects/hammer/contrib/bsnmp/snmpd/snmpmod.3#6 integrate .. //depot/projects/hammer/contrib/bsnmp/snmpd/snmpmod.h#4 integrate .. //depot/projects/hammer/contrib/ngatm/man/libngatm.3#3 integrate .. //depot/projects/hammer/contrib/ngatm/man/uniaddr.3#3 integrate .. //depot/projects/hammer/contrib/ngatm/man/unifunc.3#3 integrate .. //depot/projects/hammer/contrib/ngatm/man/unimsg.3#2 integrate .. //depot/projects/hammer/contrib/ngatm/man/unisap.3#2 integrate .. //depot/projects/hammer/contrib/ngatm/man/unistruct.3#3 integrate .. //depot/projects/hammer/contrib/ngatm/snmp_atm/atm.h#2 integrate .. //depot/projects/hammer/contrib/ngatm/snmp_atm/snmp_atm.3#2 integrate .. //depot/projects/hammer/contrib/ngatm/snmp_atm/snmp_atm.c#2 integrate .. //depot/projects/hammer/contrib/ngatm/sscop/common.c#5 integrate .. //depot/projects/hammer/contrib/ngatm/sscop/common.h#5 integrate .. //depot/projects/hammer/contrib/ngatm/sscop/sscop_main.c#5 integrate .. //depot/projects/hammer/contrib/texinfo/AUTHORS#4 integrate .. //depot/projects/hammer/contrib/texinfo/ChangeLog#4 integrate .. //depot/projects/hammer/contrib/texinfo/ChangeLog.46#1 branch .. //depot/projects/hammer/contrib/texinfo/FREEBSD-Xlist#4 integrate .. //depot/projects/hammer/contrib/texinfo/FREEBSD-upgrade#4 integrate .. //depot/projects/hammer/contrib/texinfo/INSTALL#3 integrate .. //depot/projects/hammer/contrib/texinfo/INTRODUCTION#3 integrate .. //depot/projects/hammer/contrib/texinfo/NEWS#4 integrate .. //depot/projects/hammer/contrib/texinfo/README#3 integrate .. //depot/projects/hammer/contrib/texinfo/README.dev#1 branch .. //depot/projects/hammer/contrib/texinfo/TODO#4 integrate .. //depot/projects/hammer/contrib/texinfo/config.h#4 integrate .. //depot/projects/hammer/contrib/texinfo/config.h.in#4 integrate .. //depot/projects/hammer/contrib/texinfo/doc/README#3 integrate .. //depot/projects/hammer/contrib/texinfo/doc/help2man#3 delete .. //depot/projects/hammer/contrib/texinfo/doc/info-stnd.texi#4 integrate .. //depot/projects/hammer/contrib/texinfo/doc/info.1#4 integrate .. //depot/projects/hammer/contrib/texinfo/doc/info.5#3 integrate .. //depot/projects/hammer/contrib/texinfo/doc/info.texi#3 integrate .. //depot/projects/hammer/contrib/texinfo/doc/infokey.1#1 branch .. //depot/projects/hammer/contrib/texinfo/doc/install-info.1#4 integrate .. //depot/projects/hammer/contrib/texinfo/doc/makeinfo.1#4 integrate .. //depot/projects/hammer/contrib/texinfo/doc/texindex.1#4 integrate .. //depot/projects/hammer/contrib/texinfo/doc/texinfo.5#3 integrate .. //depot/projects/hammer/contrib/texinfo/doc/texinfo.txi#4 integrate .. //depot/projects/hammer/contrib/texinfo/doc/version-stnd.texi#4 integrate .. //depot/projects/hammer/contrib/texinfo/doc/version.texi#4 integrate .. //depot/projects/hammer/contrib/texinfo/info/README#3 integrate .. //depot/projects/hammer/contrib/texinfo/info/dir.c#3 integrate .. //depot/projects/hammer/contrib/texinfo/info/display.c#4 integrate .. //depot/projects/hammer/contrib/texinfo/info/display.h#3 integrate .. //depot/projects/hammer/contrib/texinfo/info/doc.c#3 integrate .. //depot/projects/hammer/contrib/texinfo/info/doc.h#3 integrate .. //depot/projects/hammer/contrib/texinfo/info/dribble.c#2 integrate .. //depot/projects/hammer/contrib/texinfo/info/dribble.h#2 integrate .. //depot/projects/hammer/contrib/texinfo/info/echo-area.c#3 integrate .. //depot/projects/hammer/contrib/texinfo/info/echo-area.h#3 integrate .. //depot/projects/hammer/contrib/texinfo/info/filesys.c#3 integrate .. //depot/projects/hammer/contrib/texinfo/info/filesys.h#3 integrate .. //depot/projects/hammer/contrib/texinfo/info/footnotes.c#3 integrate .. //depot/projects/hammer/contrib/texinfo/info/footnotes.h#3 integrate .. //depot/projects/hammer/contrib/texinfo/info/funs.h#3 integrate .. //depot/projects/hammer/contrib/texinfo/info/gc.c#2 integrate .. //depot/projects/hammer/contrib/texinfo/info/gc.h#3 integrate .. //depot/projects/hammer/contrib/texinfo/info/indices.c#4 integrate .. //depot/projects/hammer/contrib/texinfo/info/indices.h#3 integrate .. //depot/projects/hammer/contrib/texinfo/info/info-utils.c#4 integrate .. //depot/projects/hammer/contrib/texinfo/info/info-utils.h#4 integrate .. //depot/projects/hammer/contrib/texinfo/info/info.c#4 integrate .. //depot/projects/hammer/contrib/texinfo/info/info.h#4 integrate .. //depot/projects/hammer/contrib/texinfo/info/infodoc.c#4 integrate .. //depot/projects/hammer/contrib/texinfo/info/infokey.c#4 integrate .. //depot/projects/hammer/contrib/texinfo/info/infokey.h#3 integrate .. //depot/projects/hammer/contrib/texinfo/info/infomap.c#4 integrate .. //depot/projects/hammer/contrib/texinfo/info/infomap.h#3 integrate .. //depot/projects/hammer/contrib/texinfo/info/key.c#2 integrate .. //depot/projects/hammer/contrib/texinfo/info/m-x.c#3 integrate .. //depot/projects/hammer/contrib/texinfo/info/man.c#4 integrate .. //depot/projects/hammer/contrib/texinfo/info/man.h#3 integrate .. //depot/projects/hammer/contrib/texinfo/info/nodemenu.c#4 integrate .. //depot/projects/hammer/contrib/texinfo/info/nodes.c#4 integrate .. //depot/projects/hammer/contrib/texinfo/info/nodes.h#3 integrate .. //depot/projects/hammer/contrib/texinfo/info/search.c#3 integrate .. //depot/projects/hammer/contrib/texinfo/info/search.h#3 integrate .. //depot/projects/hammer/contrib/texinfo/info/session.c#4 integrate .. //depot/projects/hammer/contrib/texinfo/info/session.h#3 integrate .. //depot/projects/hammer/contrib/texinfo/info/signals.c#4 integrate .. //depot/projects/hammer/contrib/texinfo/info/signals.h#3 integrate .. //depot/projects/hammer/contrib/texinfo/info/termdep.h#3 integrate .. //depot/projects/hammer/contrib/texinfo/info/terminal.c#3 integrate .. //depot/projects/hammer/contrib/texinfo/info/terminal.h#3 integrate .. //depot/projects/hammer/contrib/texinfo/info/tilde.c#3 integrate .. //depot/projects/hammer/contrib/texinfo/info/tilde.h#2 integrate .. //depot/projects/hammer/contrib/texinfo/info/variables.c#3 integrate .. //depot/projects/hammer/contrib/texinfo/info/variables.h#3 integrate .. //depot/projects/hammer/contrib/texinfo/info/window.c#4 integrate .. //depot/projects/hammer/contrib/texinfo/info/window.h#3 integrate .. //depot/projects/hammer/contrib/texinfo/lib/README#3 integrate .. //depot/projects/hammer/contrib/texinfo/lib/gettext.h#3 integrate .. //depot/projects/hammer/contrib/texinfo/lib/substring.c#3 integrate .. //depot/projects/hammer/contrib/texinfo/lib/system.h#4 integrate .. //depot/projects/hammer/contrib/texinfo/lib/xalloc.h#3 integrate .. //depot/projects/hammer/contrib/texinfo/lib/xexit.c#4 integrate .. //depot/projects/hammer/contrib/texinfo/lib/xmalloc.c#2 integrate .. //depot/projects/hammer/contrib/texinfo/lib/xstrdup.c#3 integrate .. //depot/projects/hammer/contrib/texinfo/makeinfo/README#3 integrate .. //depot/projects/hammer/contrib/texinfo/makeinfo/cmds.c#4 integrate .. //depot/projects/hammer/contrib/texinfo/makeinfo/cmds.h#3 integrate .. //depot/projects/hammer/contrib/texinfo/makeinfo/defun.c#4 integrate .. //depot/projects/hammer/contrib/texinfo/makeinfo/defun.h#3 integrate .. //depot/projects/hammer/contrib/texinfo/makeinfo/files.c#4 integrate .. //depot/projects/hammer/contrib/texinfo/makeinfo/files.h#4 integrate .. //depot/projects/hammer/contrib/texinfo/makeinfo/float.c#1 branch .. //depot/projects/hammer/contrib/texinfo/makeinfo/float.h#1 branch .. //depot/projects/hammer/contrib/texinfo/makeinfo/footnote.c#3 integrate .. //depot/projects/hammer/contrib/texinfo/makeinfo/footnote.h#3 integrate .. //depot/projects/hammer/contrib/texinfo/makeinfo/html.c#4 integrate .. //depot/projects/hammer/contrib/texinfo/makeinfo/html.h#3 integrate .. //depot/projects/hammer/contrib/texinfo/makeinfo/index.c#4 integrate .. //depot/projects/hammer/contrib/texinfo/makeinfo/index.h#3 integrate .. //depot/projects/hammer/contrib/texinfo/makeinfo/insertion.c#4 integrate .. //depot/projects/hammer/contrib/texinfo/makeinfo/insertion.h#3 integrate .. //depot/projects/hammer/contrib/texinfo/makeinfo/lang.c#4 integrate .. //depot/projects/hammer/contrib/texinfo/makeinfo/lang.h#4 integrate .. //depot/projects/hammer/contrib/texinfo/makeinfo/macro.c#4 integrate .. //depot/projects/hammer/contrib/texinfo/makeinfo/macro.h#3 integrate .. //depot/projects/hammer/contrib/texinfo/makeinfo/makeinfo.c#4 integrate .. //depot/projects/hammer/contrib/texinfo/makeinfo/makeinfo.h#4 integrate .. //depot/projects/hammer/contrib/texinfo/makeinfo/multi.c#3 integrate .. //depot/projects/hammer/contrib/texinfo/makeinfo/multi.h#1 branch .. //depot/projects/hammer/contrib/texinfo/makeinfo/node.c#4 integrate .. //depot/projects/hammer/contrib/texinfo/makeinfo/node.h#3 integrate .. //depot/projects/hammer/contrib/texinfo/makeinfo/sectioning.c#4 integrate .. //depot/projects/hammer/contrib/texinfo/makeinfo/sectioning.h#3 integrate .. //depot/projects/hammer/contrib/texinfo/makeinfo/texinfo.dtd#3 delete .. //depot/projects/hammer/contrib/texinfo/makeinfo/texinfo.xsl#3 delete .. //depot/projects/hammer/contrib/texinfo/makeinfo/toc.c#3 integrate .. //depot/projects/hammer/contrib/texinfo/makeinfo/toc.h#3 integrate .. //depot/projects/hammer/contrib/texinfo/makeinfo/xml.c#4 integrate .. //depot/projects/hammer/contrib/texinfo/makeinfo/xml.h#3 integrate .. //depot/projects/hammer/contrib/texinfo/makeinfo/xref.c#1 branch .. //depot/projects/hammer/contrib/texinfo/makeinfo/xref.h#1 branch .. //depot/projects/hammer/contrib/texinfo/util/README#3 integrate .. //depot/projects/hammer/contrib/texinfo/util/install-info.c#4 integrate .. //depot/projects/hammer/contrib/texinfo/util/texindex.c#4 integrate .. //depot/projects/hammer/etc/devd.conf#20 integrate .. //depot/projects/hammer/etc/rc.d/named#13 integrate .. //depot/projects/hammer/etc/rc.subr#22 integrate .. //depot/projects/hammer/gnu/usr.bin/texinfo/infokey/Makefile#4 integrate .. //depot/projects/hammer/gnu/usr.bin/texinfo/makeinfo/Makefile#3 integrate .. //depot/projects/hammer/lib/libgeom/geom_xml2tree.c#4 integrate .. //depot/projects/hammer/release/Makefile#72 integrate .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#77 integrate .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#96 integrate .. //depot/projects/hammer/release/doc/share/misc/dev.archlist.txt#28 integrate .. //depot/projects/hammer/sbin/Makefile#34 integrate .. //depot/projects/hammer/sbin/mount_reiserfs/Makefile#1 branch .. //depot/projects/hammer/sbin/mount_reiserfs/mount_reiserfs.8#1 branch .. //depot/projects/hammer/sbin/mount_reiserfs/mount_reiserfs.c#1 branch .. //depot/projects/hammer/sbin/route/route.c#10 integrate .. //depot/projects/hammer/share/man/man4/sk.4#9 integrate .. //depot/projects/hammer/share/man/man4/snd_ad1816.4#4 integrate .. //depot/projects/hammer/share/man/man4/snd_als4000.4#4 integrate .. //depot/projects/hammer/share/man/man4/snd_cmi.4#4 integrate .. //depot/projects/hammer/share/man/man4/snd_cs4281.4#4 integrate .. //depot/projects/hammer/share/man/man4/snd_csa.4#3 integrate .. //depot/projects/hammer/share/man/man4/snd_ds1.4#4 integrate .. //depot/projects/hammer/share/man/man4/snd_emu10k1.4#4 integrate .. //depot/projects/hammer/share/man/man4/snd_es137x.4#4 integrate .. //depot/projects/hammer/share/man/man4/snd_ess.4#3 integrate .. //depot/projects/hammer/share/man/man4/snd_gusc.4#3 integrate .. //depot/projects/hammer/share/man/man4/snd_sbc.4#4 integrate .. //depot/projects/hammer/share/man/man4/snd_solo.4#4 integrate .. //depot/projects/hammer/share/man/man9/VOP_IOCTL.9#6 integrate .. //depot/projects/hammer/sys/alpha/osf1/osf1_mount.c#10 integrate .. //depot/projects/hammer/sys/amd64/amd64/exception.S#36 integrate .. //depot/projects/hammer/sys/amd64/amd64/local_apic.c#50 integrate .. //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#95 integrate .. //depot/projects/hammer/sys/amd64/amd64/trap.c#60 integrate .. //depot/projects/hammer/sys/amd64/conf/GENERIC#72 integrate .. //depot/projects/hammer/sys/amd64/include/bus.h#12 integrate .. //depot/projects/hammer/sys/compat/freebsd32/freebsd32_misc.c#24 integrate .. //depot/projects/hammer/sys/compat/linux/linux_stats.c#19 integrate .. //depot/projects/hammer/sys/conf/NOTES#90 integrate .. //depot/projects/hammer/sys/conf/files.i386#58 integrate .. //depot/projects/hammer/sys/conf/options.i386#35 integrate .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/api/ccpriv.h#2 integrate .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/api/unisap.h#2 integrate .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/msg/uni_ie.c#4 integrate .. //depot/projects/hammer/sys/dev/hme/if_hme.c#18 integrate .. //depot/projects/hammer/sys/dev/ipw/if_ipw.c#2 integrate .. //depot/projects/hammer/sys/dev/iwi/if_iwi.c#3 integrate .. //depot/projects/hammer/sys/dev/iwi/if_iwireg.h#2 integrate .. //depot/projects/hammer/sys/dev/iwi/if_iwivar.h#3 integrate .. //depot/projects/hammer/sys/dev/ral/if_ral.c#2 integrate .. //depot/projects/hammer/sys/dev/sound/pci/maestro3.c#11 integrate .. //depot/projects/hammer/sys/dev/usb/if_ural.c#2 integrate .. //depot/projects/hammer/sys/geom/mirror/g_mirror.c#23 integrate .. //depot/projects/hammer/sys/gnu/reiserfs/README#1 branch .. //depot/projects/hammer/sys/gnu/reiserfs/reiserfs_fs.h#1 branch .. //depot/projects/hammer/sys/gnu/reiserfs/reiserfs_fs_i.h#1 branch .. //depot/projects/hammer/sys/gnu/reiserfs/reiserfs_fs_sb.h#1 branch .. //depot/projects/hammer/sys/gnu/reiserfs/reiserfs_hashes.c#1 branch .. //depot/projects/hammer/sys/gnu/reiserfs/reiserfs_inode.c#1 branch .. //depot/projects/hammer/sys/gnu/reiserfs/reiserfs_item_ops.c#1 branch .. //depot/projects/hammer/sys/gnu/reiserfs/reiserfs_mount.h#1 branch .. //depot/projects/hammer/sys/gnu/reiserfs/reiserfs_namei.c#1 branch .. //depot/projects/hammer/sys/gnu/reiserfs/reiserfs_prints.c#1 branch .. //depot/projects/hammer/sys/gnu/reiserfs/reiserfs_stree.c#1 branch .. //depot/projects/hammer/sys/gnu/reiserfs/reiserfs_vfsops.c#1 branch .. //depot/projects/hammer/sys/gnu/reiserfs/reiserfs_vnops.c#1 branch .. //depot/projects/hammer/sys/i386/conf/GENERIC#37 integrate .. //depot/projects/hammer/sys/i386/conf/NOTES#69 integrate .. //depot/projects/hammer/sys/i386/i386/mp_machdep.c#44 integrate .. //depot/projects/hammer/sys/kern/kern_exit.c#46 integrate .. //depot/projects/hammer/sys/kern/kern_switch.c#43 integrate .. //depot/projects/hammer/sys/kern/kern_synch.c#50 integrate .. //depot/projects/hammer/sys/kern/vfs_syscalls.c#46 integrate .. //depot/projects/hammer/sys/libkern/iconv_xlat16.c#3 integrate .. //depot/projects/hammer/sys/modules/Makefile#77 integrate .. //depot/projects/hammer/sys/modules/reiserfs/Makefile#1 branch .. //depot/projects/hammer/sys/net/pfil.c#8 integrate .. //depot/projects/hammer/sys/netgraph/ng_socket.c#15 integrate .. //depot/projects/hammer/sys/netgraph/ng_split.c#4 integrate .. //depot/projects/hammer/sys/netinet/tcp.h#12 integrate .. //depot/projects/hammer/sys/netinet/tcp_sack.c#16 integrate .. //depot/projects/hammer/sys/pc98/conf/GENERIC#32 integrate .. //depot/projects/hammer/sys/sys/iconv.h#6 integrate .. //depot/projects/hammer/sys/sys/proc.h#81 integrate .. //depot/projects/hammer/sys/vm/vm_glue.c#41 integrate .. //depot/projects/hammer/usr.bin/make/Makefile#19 integrate .. //depot/projects/hammer/usr.bin/make/Makefile.dist#3 integrate .. //depot/projects/hammer/usr.bin/make/arch.c#19 integrate .. //depot/projects/hammer/usr.bin/make/cond.c#21 integrate .. //depot/projects/hammer/usr.bin/make/job.c#27 integrate .. //depot/projects/hammer/usr.bin/make/job.h#15 integrate .. //depot/projects/hammer/usr.bin/make/main.c#35 integrate .. //depot/projects/hammer/usr.bin/make/make.1#21 integrate .. //depot/projects/hammer/usr.bin/make/make.c#15 integrate .. //depot/projects/hammer/usr.bin/make/parse.c#31 integrate .. //depot/projects/hammer/usr.bin/make/proc.c#1 branch .. //depot/projects/hammer/usr.bin/make/proc.h#1 branch .. //depot/projects/hammer/usr.bin/make/shell.c#1 branch .. //depot/projects/hammer/usr.bin/make/shell.h#1 branch .. //depot/projects/hammer/usr.bin/make/str.c#15 integrate .. //depot/projects/hammer/usr.bin/make/str.h#4 integrate .. //depot/projects/hammer/usr.bin/make/suff.c#19 integrate .. //depot/projects/hammer/usr.bin/make/var.c#29 integrate .. //depot/projects/hammer/usr.bin/make/var.h#10 integrate .. //depot/projects/hammer/usr.sbin/adduser/rmuser.sh#4 integrate .. //depot/projects/hammer/usr.sbin/bsnmpd/modules/Makefile.inc#2 integrate .. //depot/projects/hammer/usr.sbin/bsnmpd/modules/snmp_atm/Makefile#2 integrate .. //depot/projects/hammer/usr.sbin/bsnmpd/modules/snmp_netgraph/snmp_netgraph.c#2 integrate .. //depot/projects/hammer/usr.sbin/bsnmpd/modules/snmp_pf/pf_snmp.c#3 integrate .. //depot/projects/hammer/usr.sbin/pkg_install/version/main.c#5 integrate .. //depot/projects/hammer/usr.sbin/pkg_install/version/perform.c#7 integrate .. //depot/projects/hammer/usr.sbin/pkg_install/version/pkg_version.1#9 integrate .. //depot/projects/hammer/usr.sbin/pkg_install/version/version.h#4 integrate Differences ... ==== //depot/projects/hammer/MAINTAINERS#32 (text+ko) ==== @@ -1,4 +1,4 @@ -$FreeBSD: src/MAINTAINERS,v 1.103 2005/03/13 15:30:01 pjd Exp $ +$FreeBSD: src/MAINTAINERS,v 1.104 2005/05/24 08:23:01 krion Exp $ subsystem login notes ----------------------------- @@ -105,7 +105,7 @@ rpc.lockd alfred Will be happy to review code, but not mandatory. truss alfred Will be happy to review code, but not mandatory. rpc alfred Pre-commit review requested. -pkg_install eik Pre-commit review or approval from portmgr@ requested. +pkg_install krion Pre-commit review or approval from portmgr@ requested. Following are the entries from the Makefiles, and a few other sources. Please remove stale entries from both their origin, and this file. ==== //depot/projects/hammer/Makefile.inc1#92 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile.inc1,v 1.494 2005/05/01 17:36:09 imp Exp $ +# $FreeBSD: src/Makefile.inc1,v 1.495 2005/05/23 11:15:16 ru Exp $ # # Make command line options: # -DNO_DYNAMICROOT do not link /bin and /sbin dynamically @@ -778,6 +778,10 @@ .endif .endif +.if ${BOOTSTRAPPING} < 600029 +_texinfo= gnu/usr.bin/texinfo +.endif + .if ${BOOTSTRAPPING} < 600015 _cap_mkdb= usr.bin/cap_mkdb .endif @@ -808,7 +812,7 @@ ${_strfile} \ ${_gperf} \ ${_groff} \ - gnu/usr.bin/texinfo \ + ${_texinfo} \ ${_cap_mkdb} \ ${_colldef} \ ${_gencat} \ ==== //depot/projects/hammer/contrib/bsnmp/NEWS#7 (text+ko) ==== @@ -1,3 +1,16 @@ +1.10 + Change all the tick handling in the daemon from 32-bit to 64-bit. + Bump the modules' major version number to 3. + + snmp_dialog: make the syntax of the variable bindings in the outgoing + message SNMP_SYNTAX_NULL regardless of the syntax given by the user. + + Fix an error in timer handling in the LIBBEGEMOT case. + + snmpd/main.c: Fix a 64-bit warning. + + lib/snmpclient: Add snmp_parse_server(). + 1.9 tcpwrapper support from glebius@freebsd.org. ==== //depot/projects/hammer/contrib/bsnmp/VERSION#7 (text+ko) ==== @@ -1,1 +1,1 @@ -1.9 +1.10 ==== //depot/projects/hammer/contrib/bsnmp/lib/bsnmpclient.3#6 (text+ko) ==== @@ -1,4 +1,7 @@ .\" +.\" Copyright (c) 2004-2005 +.\" Hartmut Brandt. +.\" All rights reserved. .\" Copyright (c) 2001-2003 .\" Fraunhofer Institute for Open Communication Systems (FhG Fokus). .\" All rights reserved. @@ -26,9 +29,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Begemot: bsnmp/lib/bsnmpclient.3,v 1.8 2005/02/25 11:55:58 brandt_h Exp $ +.\" $Begemot: bsnmp/lib/bsnmpclient.3,v 1.9 2005/05/23 11:10:12 brandt_h Exp $ .\" -.Dd August 15, 2002 +.Dd May 23, 2005 .Dt BSNMPCLIENT 3 .Os .Sh NAME @@ -44,6 +47,7 @@ .Nm snmp_pdu_check , .Nm snmp_pdu_send , .Nm snmp_oid_append , +.Nm snmp_parse_server , .Nm snmp_receive , .Nm snmp_table_cb_f , .Nm snmp_table_fetch , @@ -87,6 +91,8 @@ .Ft int .Fn snmp_oid_append "struct asn_oid *oid" "const char *fmt" "..." .Ft int +.Fn snmp_parse_server "struct snmp_client *sc" "const char *str" +.Ft int .Fn snmp_receive "int blocking" .Ft typedef void .Fn (*snmp_table_cb_f) "void *list" "void *arg" "int res" @@ -571,6 +577,28 @@ .Fa resp . If no reponse could be received after all timeouts and retries, the function returns -1. If a response was received 0 is returned. +.Pp +The function +.Fn snmp_parse_server +is used to parse an SNMP server specification string and fill in the +fields of a +.Vt struct snmp_client . +The syntax of a server specification is +.Pp +.D1 [trans::][community@][server][:port] +.Pp +where +.Va trans +is the transport name (one of udp, stream or dgram), +.Va community +is the string to be used for both the read and the write community, +.Va server +is the server's host name in case of UDP and the path name in case +of a local socket, and +.Va port +is the port in case of UDP transport. +The function returns 0 in the case of success and return -1 and sets +the error string in case of an error. .Sh DIAGNOSTICS If an error occures in any of the function an error indication as described above is returned. Additionally the function sets a printable error string ==== //depot/projects/hammer/contrib/bsnmp/lib/snmpclient.c#4 (text+ko) ==== @@ -1,4 +1,7 @@ /* + * Copyright (c) 2004-2005 + * Hartmut Brandt. + * All rights reserved. * Copyright (c) 2001-2003 * Fraunhofer Institute for Open Communication Systems (FhG Fokus). * All rights reserved. @@ -27,7 +30,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Begemot: bsnmp/lib/snmpclient.c,v 1.29 2004/08/06 08:46:57 brandt Exp $ + * $Begemot: bsnmp/lib/snmpclient.c,v 1.31 2005/05/23 11:10:13 brandt_h Exp $ * * Support functions for SNMP clients. */ @@ -115,12 +118,12 @@ * Set the error string */ static void -seterr(const char *fmt, ...) +seterr(struct snmp_client *sc, const char *fmt, ...) { va_list ap; va_start(ap, fmt); - vsnprintf(snmp_client.error, sizeof(snmp_client.error), fmt, ap); + vsnprintf(sc->error, sizeof(sc->error), fmt, ap); va_end(ap); } @@ -186,11 +189,11 @@ /* Not found create new one */ if ((e = malloc(work->descr->entry_size)) == NULL) { - seterr("no memory for table entry"); + seterr(&snmp_client, "no memory for table entry"); return (NULL); } if ((w = malloc(sizeof(*w))) == NULL) { - seterr("no memory for table entry"); + seterr(&snmp_client, "no memory for table entry"); free(e); return (NULL); } @@ -204,11 +207,12 @@ case SNMP_SYNTAX_INTEGER: if (var->len < p + 1) { - seterr("bad index: need integer"); + seterr(&snmp_client, "bad index: need integer"); goto err; } if (var->subs[p] > INT32_MAX) { - seterr("bad index: integer too large"); + seterr(&snmp_client, + "bad index: integer too large"); goto err; } *(int32_t *)(void *)((u_char *)e + @@ -217,21 +221,25 @@ case SNMP_SYNTAX_OCTETSTRING: if (var->len < p + 1) { - seterr("bad index: need string length"); + seterr(&snmp_client, + "bad index: need string length"); goto err; } len = var->subs[p++]; if (var->len < p + len) { - seterr("bad index: string too short"); + seterr(&snmp_client, + "bad index: string too short"); goto err; } if ((ptr = malloc(len + 1)) == NULL) { - seterr("no memory for index string"); + seterr(&snmp_client, + "no memory for index string"); goto err; } for (j = 0; j < len; j++) { if (var->subs[p] > UCHAR_MAX) { - seterr("bad index: char too large"); + seterr(&snmp_client, + "bad index: char too large"); free(ptr); goto err; } @@ -247,12 +255,14 @@ case SNMP_SYNTAX_OID: if (var->len < p + 1) { - seterr("bad index: need oid length"); + seterr(&snmp_client, + "bad index: need oid length"); goto err; } oid.len = var->subs[p++]; if (var->len < p + oid.len) { - seterr("bad index: oid too short"); + seterr(&snmp_client, + "bad index: oid too short"); goto err; } for (j = 0; j < oid.len; j++) @@ -263,12 +273,14 @@ case SNMP_SYNTAX_IPADDRESS: if (var->len < p + 4) { - seterr("bad index: need ip-address"); + seterr(&snmp_client, + "bad index: need ip-address"); goto err; } for (j = 0; j < 4; j++) { if (var->subs[p] > 0xff) { - seterr("bad index: ipaddress too large"); + seterr(&snmp_client, + "bad index: ipaddress too large"); goto err; } ((u_char *)e + @@ -279,11 +291,13 @@ case SNMP_SYNTAX_GAUGE: if (var->len < p + 1) { - seterr("bad index: need unsigned"); + seterr(&snmp_client, + "bad index: need unsigned"); goto err; } if (var->subs[p] > UINT32_MAX) { - seterr("bad index: unsigned too large"); + seterr(&snmp_client, + "bad index: unsigned too large"); goto err; } *(uint32_t *)(void *)((u_char *)e + @@ -357,7 +371,7 @@ /* check syntax */ if (b->syntax != descr->entries[i].syntax) { - seterr("bad syntax (%u instead of %u)", b->syntax, + seterr(&snmp_client, "bad syntax (%u instead of %u)", b->syntax, descr->entries[i].syntax); return (-1); } @@ -371,7 +385,7 @@ case SNMP_SYNTAX_OCTETSTRING: if ((ptr = malloc(b->v.octetstring.len + 1)) == NULL) { - seterr("no memory for string"); + seterr(&snmp_client, "no memory for string"); return (-1); } memcpy(ptr, b->v.octetstring.octets, b->v.octetstring.len); @@ -460,7 +474,7 @@ /* EOT */ return (0); /* Error */ - seterr("error fetching table: status=%d index=%d", + seterr(&snmp_client, "error fetching table: status=%d index=%d", resp->error_status, resp->error_index); return (-1); } @@ -470,11 +484,13 @@ if (!asn_is_suboid(&work->descr->last_change, &b->var) || b->var.len != work->descr->last_change.len + 1 || b->var.subs[work->descr->last_change.len] != 0) { - seterr("last_change: bad response"); + seterr(&snmp_client, + "last_change: bad response"); return (-1); } if (b->syntax != SNMP_SYNTAX_TIMETICKS) { - seterr("last_change: bad syntax %u", b->syntax); + seterr(&snmp_client, + "last_change: bad syntax %u", b->syntax); return (-1); } if (work->first) { @@ -483,7 +499,8 @@ } else if (work->last_change != b->v.uint32) { if (++work->iter >= work->descr->max_iter) { - seterr("max iteration count exceeded"); + seterr(&snmp_client, + "max iteration count exceeded"); return (-1); } table_free(work, 1); @@ -517,12 +534,13 @@ work->descr->req_mask) { if (work->descr->last_change.len == 0) { if (++work->iter >= work->descr->max_iter) { - seterr("max iteration count exceeded"); + seterr(&snmp_client, + "max iteration count exceeded"); return (-1); } return (-2); } - seterr("inconsistency detected %llx %llx", + seterr(&snmp_client, "inconsistency detected %llx %llx", e->found, work->descr->req_mask); return (-1); } @@ -608,7 +626,7 @@ if (resp == NULL) { /* timeout */ - seterr("no response to fetch table request"); + seterr(&snmp_client, "no response to fetch table request"); table_free(work, 1); work->callback(work->table, work->arg, -1); free(work); @@ -686,7 +704,7 @@ struct tabwork *work; if ((work = malloc(sizeof(*work))) == NULL) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); return (-1); } @@ -859,14 +877,14 @@ if (snmp_client.chost == NULL) { if ((snmp_client.chost = malloc(1 + sizeof(DEFAULT_HOST))) == NULL) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); return (-1); } strcpy(snmp_client.chost, DEFAULT_HOST); } if (host != NULL) { if ((ptr = malloc(1 + strlen(host))) == NULL) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); return (-1); } free(snmp_client.chost); @@ -876,14 +894,14 @@ if (snmp_client.cport == NULL) { if ((snmp_client.cport = malloc(1 + sizeof(DEFAULT_PORT))) == NULL) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); return (-1); } strcpy(snmp_client.cport, DEFAULT_PORT); } if (port != NULL) { if ((ptr = malloc(1 + strlen(port))) == NULL) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); return (-1); } free(snmp_client.cport); @@ -899,7 +917,8 @@ hints.ai_protocol = 0; error = getaddrinfo(snmp_client.chost, snmp_client.cport, &hints, &res0); if (error != 0) { - seterr("%s: %s", snmp_client.chost, gai_strerror(error)); + seterr(&snmp_client, "%s: %s", snmp_client.chost, + gai_strerror(error)); return (-1); } res = res0; @@ -907,14 +926,14 @@ if ((snmp_client.fd = socket(res->ai_family, res->ai_socktype, res->ai_protocol)) == -1) { if ((res = res->ai_next) == NULL) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); freeaddrinfo(res0); return (-1); } } else if (connect(snmp_client.fd, res->ai_addr, res->ai_addrlen) == -1) { if ((res = res->ai_next) == NULL) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); freeaddrinfo(res0); return (-1); } @@ -944,14 +963,14 @@ if (snmp_client.chost == NULL) { if ((snmp_client.chost = malloc(1 + sizeof(DEFAULT_LOCAL))) == NULL) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); return (-1); } strcpy(snmp_client.chost, DEFAULT_LOCAL); } if (path != NULL) { if ((ptr = malloc(1 + strlen(path))) == NULL) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); return (-1); } free(snmp_client.chost); @@ -965,7 +984,7 @@ stype = SOCK_STREAM; if ((snmp_client.fd = socket(PF_LOCAL, stype, 0)) == -1) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); return (-1); } @@ -973,7 +992,7 @@ "%s", SNMP_LOCAL_PATH); if (mktemp(snmp_client.local_path) == NULL) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); (void)close(snmp_client.fd); snmp_client.fd = -1; return (-1); @@ -984,7 +1003,7 @@ strcpy(sa.sun_path, snmp_client.local_path); if (bind(snmp_client.fd, (struct sockaddr *)&sa, sizeof(sa)) == -1) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); (void)close(snmp_client.fd); snmp_client.fd = -1; (void)remove(snmp_client.local_path); @@ -999,7 +1018,7 @@ sa.sun_path[sizeof(sa.sun_path) - 1] = '\0'; if (connect(snmp_client.fd, (struct sockaddr *)&sa, sa.sun_len) == -1) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); (void)close(snmp_client.fd); snmp_client.fd = -1; (void)remove(snmp_client.local_path); @@ -1020,7 +1039,7 @@ /* still open ? */ if (snmp_client.fd != -1) { errno = EBUSY; - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); return (-1); } @@ -1046,14 +1065,14 @@ break; default: - seterr("bad transport mapping"); + seterr(&snmp_client, "bad transport mapping"); return (-1); } tout.tv_sec = 0; tout.tv_usec = 0; if (setsockopt(snmp_client.fd, SOL_SOCKET, SO_SNDTIMEO, &tout, sizeof(struct timeval)) == -1) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); (void)close(snmp_client.fd); snmp_client.fd = -1; if (snmp_client.local_path[0] != '\0') @@ -1175,7 +1194,7 @@ ssize_t ret; if ((buf = malloc(snmp_client.txbuflen)) == NULL) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); return (-1); } @@ -1184,7 +1203,7 @@ b.asn_ptr = buf; b.asn_len = snmp_client.txbuflen; if (snmp_pdu_encode(pdu, &b)) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); free(buf); return (-1); } @@ -1193,7 +1212,7 @@ snmp_pdu_dump(pdu); if ((ret = send(snmp_client.fd, buf, b.asn_ptr - buf, 0)) == -1) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); free(buf); return (-1); } @@ -1238,7 +1257,7 @@ int32_t id; if ((listentry = malloc(sizeof(struct sent_pdu))) == NULL) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); return (-1); } @@ -1296,7 +1315,7 @@ #endif if ((buf = malloc(snmp_client.rxbuflen)) == NULL) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); return (-1); } dopoll = setpoll = 0; @@ -1307,14 +1326,16 @@ /* wait with timeout */ if (setsockopt(snmp_client.fd, SOL_SOCKET, SO_RCVTIMEO, tv, sizeof(*tv)) == -1) { - seterr("setsockopt: %s", strerror(errno)); + seterr(&snmp_client, "setsockopt: %s", + strerror(errno)); free(buf); return (-1); } optlen = sizeof(*tv); if (getsockopt(snmp_client.fd, SOL_SOCKET, SO_RCVTIMEO, tv, &optlen) == -1) { - seterr("getsockopt: %s", strerror(errno)); + seterr(&snmp_client, "getsockopt: %s", + strerror(errno)); free(buf); return (-1); } @@ -1330,7 +1351,8 @@ /* poll */ dopoll = 1; if ((flags = fcntl(snmp_client.fd, F_GETFL, 0)) == -1) { - seterr("fcntl: %s", strerror(errno)); + seterr(&snmp_client, "fcntl: %s", + strerror(errno)); free(buf); return (-1); } @@ -1338,7 +1360,8 @@ setpoll = 1; flags |= O_NONBLOCK; if (fcntl(snmp_client.fd, F_SETFL, flags) == -1) { - seterr("fcntl: %s", strerror(errno)); + seterr(&snmp_client, "fcntl: %s", + strerror(errno)); free(buf); return (-1); } @@ -1364,14 +1387,14 @@ free(buf); if (errno == EAGAIN || errno == EWOULDBLOCK) return (0); - seterr("recv: %s", strerror(saved_errno)); + seterr(&snmp_client, "recv: %s", strerror(saved_errno)); return (-1); } if (ret == 0) { /* this happens when we have a streaming socket and the * remote side has closed it */ free(buf); - seterr("recv: socket closed by peer"); + seterr(&snmp_client, "recv: socket closed by peer"); errno = EPIPE; return (-1); } @@ -1380,7 +1403,7 @@ abuf.asn_len = ret; if (SNMP_CODE_OK != (ret = snmp_pdu_decode(&abuf, pdu, &ip))) { - seterr("snmp_decode_pdu: failed %d", ret); + seterr(&snmp_client, "snmp_decode_pdu: failed %d", ret); free(buf); return (-1); } @@ -1428,7 +1451,7 @@ resp = malloc(sizeof(struct snmp_pdu)); if (resp == NULL) { - seterr("no memory for returning PDU"); + seterr(&snmp_client, "no memory for returning PDU"); return (-1) ; } @@ -1614,11 +1637,23 @@ int ret; struct timeval tv = snmp_client.timeout; struct timeval end; + struct snmp_pdu pdu; + /* + * Make a copy of the request and replace the syntaxes by NULL + * if this is a GET,GETNEXT or GETBULK. + */ + pdu = *req; + if (pdu.type == SNMP_PDU_GET || pdu.type == SNMP_PDU_GETNEXT || + pdu.type == SNMP_PDU_GETBULK) { + for (i = 0; i < pdu.nbindings; i++) + pdu.bindings[i].syntax = SNMP_SYNTAX_NULL; + } + for (i = 0; i <= snmp_client.retries; i++) { (void)gettimeofday(&end, NULL); timeradd(&end, &snmp_client.timeout, &end); - if ((reqid = snmp_send_packet(req)) == -1) + if ((reqid = snmp_send_packet(&pdu)) == -1) return (-1); for (;;) { (void)gettimeofday(&tv, NULL); @@ -1641,7 +1676,7 @@ } } errno = ETIMEDOUT; - seterr("retry count exceeded"); + seterr(&snmp_client, "retry count exceeded"); return (-1); } @@ -1684,3 +1719,102 @@ } return (0); } + +/* + * parse a server specification + * + * [trans::][community@][server][:port] + */ +int +snmp_parse_server(struct snmp_client *sc, const char *str) +{ + const char *p, *s = str; + + /* look for a double colon */ + for (p = s; *p != '\0'; p++) { + if (*p == '\\' && p[1] != '\0') { + p++; + continue; + } + if (*p == ':' && p[1] == ':') + break; + } + if (*p != '\0') { + if (p > s) { + if (p - s == 3 && strncmp(s, "udp", 3) == 0) + sc->trans = SNMP_TRANS_UDP; + else if (p - s == 6 && strncmp(s, "stream", 6) == 0) + sc->trans = SNMP_TRANS_LOC_STREAM; + else if (p - s == 5 && strncmp(s, "dgram", 5) == 0) + sc->trans = SNMP_TRANS_LOC_DGRAM; + else { + seterr(sc, "unknown SNMP transport '%.*s'", + (int)(p - s), s); + return (-1); + } + } + s = p + 2; + } + + /* look for a @ */ + for (p = s; *p != '\0'; p++) { + if (*p == '\\' && p[1] != '\0') { + p++; + continue; + } + if (*p == '@') + break; + } + + if (*p != '\0') { + if (p - s > SNMP_COMMUNITY_MAXLEN) { + seterr(sc, "community string too long"); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Tue May 24 19:41:14 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 340D716A420; Tue, 24 May 2005 19:41:14 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E56BA16A41C for ; Tue, 24 May 2005 19:41:13 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id ACDDE43D1D for ; Tue, 24 May 2005 19:41:13 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4OJfDb2084014 for ; Tue, 24 May 2005 19:41:13 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4OJfDBt084011 for perforce@freebsd.org; Tue, 24 May 2005 19:41:13 GMT (envelope-from peter@freebsd.org) Date: Tue, 24 May 2005 19:41:13 GMT Message-Id: <200505241941.j4OJfDBt084011@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Cc: Subject: PERFORCE change 77405 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 24 May 2005 19:41:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=77405 Change 77405 by peter@peter_daintree on 2005/05/24 19:41:02 integ -b i386_hammer Affected files ... .. //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#96 integrate .. //depot/projects/hammer/sys/amd64/conf/GENERIC#73 integrate .. //depot/projects/hammer/sys/amd64/conf/NOTES#67 integrate Differences ... ==== //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#96 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/conf/GENERIC#73 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/conf/NOTES#67 (text+ko) ==== @@ -4,7 +4,7 @@ # This file contains machine dependent kernel configuration notes. For # machine independent notes, look in /sys/conf/NOTES. # -# (XXX from i386:NOTES,v 1.1198) +# (XXX from i386:NOTES,v 1.1199) # $FreeBSD: src/sys/amd64/conf/NOTES,v 1.34 2005/04/30 20:00:58 dwhite Exp $ # @@ -105,6 +105,12 @@ ##################################################################### # MISCELLANEOUS DEVICES AND OPTIONS +# +# Add support for the ReiserFS filesystem (used in Linux). Currently, +# this is limited to read-only access. +# +options REISERFS + device gzip #Exec gzipped a.out's. REQUIRES COMPAT_AOUT! From owner-p4-projects@FreeBSD.ORG Tue May 24 20:33:17 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D1EB516A420; Tue, 24 May 2005 20:33:16 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A534B16A41C for ; Tue, 24 May 2005 20:33:16 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7960A43D49 for ; Tue, 24 May 2005 20:33:16 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4OKXGGd086142 for ; Tue, 24 May 2005 20:33:16 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4OKXGAx086139 for perforce@freebsd.org; Tue, 24 May 2005 20:33:16 GMT (envelope-from peter@freebsd.org) Date: Tue, 24 May 2005 20:33:16 GMT Message-Id: <200505242033.j4OKXGAx086139@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Cc: Subject: PERFORCE change 77406 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 24 May 2005 20:33:17 -0000 http://perforce.freebsd.org/chv.cgi?CH=77406 Change 77406 by peter@peter_daintree on 2005/05/24 20:33:08 Begin inflicting unspeakable evil Affected files ... .. //depot/projects/hammer/sys/kern/sys_process.c#22 edit Differences ... ==== //depot/projects/hammer/sys/kern/sys_process.c#22 (text+ko) ==== @@ -55,6 +55,12 @@ #include #include +#ifdef COMPAT_IA32 +#include + +extern struct sysentvec ia32_freebsd_sysvec; +#endif + /* * Functions implemented using PROC_ACTION(): * @@ -96,28 +102,52 @@ proc_read_regs(struct thread *td, struct reg *regs) { - PROC_ACTION(fill_regs(td, regs)); +#ifdef COMPAT_IA32 + if (td->td_proc->p_sysent == &ia32_freebsd_sysvec && + curthread->td_proc->p_sysent == &ia32_freebsd_sysvec) + PROC_ACTION(fill_regs32(td, regs)); + else +#endif + PROC_ACTION(fill_regs(td, regs)); } int proc_write_regs(struct thread *td, struct reg *regs) { - PROC_ACTION(set_regs(td, regs)); +#ifdef COMPAT_IA32 + if (td->td_proc->p_sysent == &ia32_freebsd_sysvec && + curthread->td_proc->p_sysent == &ia32_freebsd_sysvec) + PROC_ACTION(set_regs32(td, regs)); + else +#endif + PROC_ACTION(set_regs(td, regs)); } int proc_read_dbregs(struct thread *td, struct dbreg *dbregs) { - PROC_ACTION(fill_dbregs(td, dbregs)); +#ifdef COMPAT_IA32 + if (td->td_proc->p_sysent == &ia32_freebsd_sysvec && + curthread->td_proc->p_sysent == &ia32_freebsd_sysvec) + PROC_ACTION(fill_dbregs32(td, dbregs)); + else +#endif + PROC_ACTION(fill_dbregs(td, dbregs)); } int proc_write_dbregs(struct thread *td, struct dbreg *dbregs) { - PROC_ACTION(set_dbregs(td, dbregs)); +#ifdef COMPAT_IA32 + if (td->td_proc->p_sysent == &ia32_freebsd_sysvec && + curthread->td_proc->p_sysent == &ia32_freebsd_sysvec) + PROC_ACTION(set_dbregs32(td, dbregs)); + else +#endif + PROC_ACTION(set_dbregs(td, dbregs)); } /* @@ -128,14 +158,26 @@ proc_read_fpregs(struct thread *td, struct fpreg *fpregs) { - PROC_ACTION(fill_fpregs(td, fpregs)); +#ifdef COMPAT_IA32 + if (td->td_proc->p_sysent == &ia32_freebsd_sysvec && + curthread->td_proc->p_sysent == &ia32_freebsd_sysvec) + PROC_ACTION(fill_fpregs32(td, fpregs)); + else +#endif + PROC_ACTION(fill_fpregs(td, fpregs)); } int proc_write_fpregs(struct thread *td, struct fpreg *fpregs) { - PROC_ACTION(set_fpregs(td, fpregs)); +#ifdef COMPAT_IA32 + if (td->td_proc->p_sysent == &ia32_freebsd_sysvec && + curthread->td_proc->p_sysent == &ia32_freebsd_sysvec) + PROC_ACTION(set_fpregs32(td, fpregs)); + else +#endif + PROC_ACTION(set_fpregs(td, fpregs)); } int @@ -306,10 +348,21 @@ struct dbreg dbreg; struct fpreg fpreg; struct reg reg; +#ifdef COMPAT_IA32 + struct dbreg32 dbreg32; + struct fpreg32 fpreg32; + struct reg32 reg32; +#endif } r; void *addr; int error = 0; +#ifdef COMPAT_IA32 + int wrap32 = 0; + if (td->td_proc->p_sysent == &ia32_freebsd_sysvec && + curthread->td_proc->p_sysent == &ia32_freebsd_sysvec) + wrap32 = 1; +#endif addr = &r; switch (uap->req) { case PT_GETREGS: @@ -318,13 +371,28 @@ case PT_LWPINFO: break; case PT_SETREGS: - error = copyin(uap->addr, &r.reg, sizeof r.reg); +#ifdef COMPAT_IA32 + if (wrap32) + error = copyin(uap->addr, &r.reg32, sizeof r.reg32); + else +#endif + error = copyin(uap->addr, &r.reg, sizeof r.reg); break; case PT_SETFPREGS: - error = copyin(uap->addr, &r.fpreg, sizeof r.fpreg); +#ifdef COMPAT_IA32 + if (wrap32) + error = copyin(uap->addr, &r.fpreg32, sizeof r.fpreg32); + else +#endif + error = copyin(uap->addr, &r.fpreg, sizeof r.fpreg); break; case PT_SETDBREGS: - error = copyin(uap->addr, &r.dbreg, sizeof r.dbreg); +#ifdef COMPAT_IA32 + if (wrap32) + error = copyin(uap->addr, &r.dbreg32, sizeof r.dbreg32); + else +#endif + error = copyin(uap->addr, &r.dbreg, sizeof r.dbreg); break; case PT_IO: error = copyin(uap->addr, &r.piod, sizeof r.piod); @@ -345,13 +413,28 @@ (void)copyout(&r.piod, uap->addr, sizeof r.piod); break; case PT_GETREGS: - error = copyout(&r.reg, uap->addr, sizeof r.reg); +#ifdef COMPAT_IA32 + if (wrap32) + error = copyout(&r.reg32, uap->addr, sizeof r.reg32); + else +#endif + error = copyout(&r.reg, uap->addr, sizeof r.reg); break; case PT_GETFPREGS: - error = copyout(&r.fpreg, uap->addr, sizeof r.fpreg); +#ifdef COMPAT_IA32 + if (wrap32) + error = copyout(&r.fpreg32, uap->addr, sizeof r.fpreg32); + else +#endif + error = copyout(&r.fpreg, uap->addr, sizeof r.fpreg); break; case PT_GETDBREGS: - error = copyout(&r.dbreg, uap->addr, sizeof r.dbreg); +#ifdef COMPAT_IA32 + if (wrap32) + error = copyout(&r.dbreg32, uap->addr, sizeof r.dbreg32); + else +#endif + error = copyout(&r.dbreg, uap->addr, sizeof r.dbreg); break; case PT_LWPINFO: error = copyout(&r.pl, uap->addr, uap->data); From owner-p4-projects@FreeBSD.ORG Tue May 24 20:57:47 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 645BD16A420; Tue, 24 May 2005 20:57:47 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3987816A41C for ; Tue, 24 May 2005 20:57:47 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0CE9543D48 for ; Tue, 24 May 2005 20:57:47 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4OKvkXw093828 for ; Tue, 24 May 2005 20:57:46 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4OKvkKe093825 for perforce@freebsd.org; Tue, 24 May 2005 20:57:46 GMT (envelope-from peter@freebsd.org) Date: Tue, 24 May 2005 20:57:46 GMT Message-Id: <200505242057.j4OKvkKe093825@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Cc: Subject: PERFORCE change 77408 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 24 May 2005 20:57:48 -0000 http://perforce.freebsd.org/chv.cgi?CH=77408 Change 77408 by peter@peter_melody on 2005/05/24 20:57:17 Even more evil. Affected files ... .. //depot/projects/hammer/sys/kern/sys_process.c#23 edit .. //depot/projects/hammer/sys/sys/ptrace.h#8 edit Differences ... ==== //depot/projects/hammer/sys/kern/sys_process.c#23 (text+ko) ==== @@ -32,6 +32,8 @@ #include __FBSDID("$FreeBSD: src/sys/kern/sys_process.c,v 1.130 2005/03/18 21:22:28 das Exp $"); +#include "opt_compat.h" + #include #include #include @@ -56,7 +58,9 @@ #include #ifdef COMPAT_IA32 -#include +#include +#include +#include extern struct sysentvec ia32_freebsd_sysvec; #endif @@ -102,52 +106,28 @@ proc_read_regs(struct thread *td, struct reg *regs) { -#ifdef COMPAT_IA32 - if (td->td_proc->p_sysent == &ia32_freebsd_sysvec && - curthread->td_proc->p_sysent == &ia32_freebsd_sysvec) - PROC_ACTION(fill_regs32(td, regs)); - else -#endif - PROC_ACTION(fill_regs(td, regs)); + PROC_ACTION(fill_regs(td, regs)); } int proc_write_regs(struct thread *td, struct reg *regs) { -#ifdef COMPAT_IA32 - if (td->td_proc->p_sysent == &ia32_freebsd_sysvec && - curthread->td_proc->p_sysent == &ia32_freebsd_sysvec) - PROC_ACTION(set_regs32(td, regs)); - else -#endif - PROC_ACTION(set_regs(td, regs)); + PROC_ACTION(set_regs(td, regs)); } int proc_read_dbregs(struct thread *td, struct dbreg *dbregs) { -#ifdef COMPAT_IA32 - if (td->td_proc->p_sysent == &ia32_freebsd_sysvec && - curthread->td_proc->p_sysent == &ia32_freebsd_sysvec) - PROC_ACTION(fill_dbregs32(td, dbregs)); - else -#endif - PROC_ACTION(fill_dbregs(td, dbregs)); + PROC_ACTION(fill_dbregs(td, dbregs)); } int proc_write_dbregs(struct thread *td, struct dbreg *dbregs) { -#ifdef COMPAT_IA32 - if (td->td_proc->p_sysent == &ia32_freebsd_sysvec && - curthread->td_proc->p_sysent == &ia32_freebsd_sysvec) - PROC_ACTION(set_dbregs32(td, dbregs)); - else -#endif - PROC_ACTION(set_dbregs(td, dbregs)); + PROC_ACTION(set_dbregs(td, dbregs)); } /* @@ -158,27 +138,59 @@ proc_read_fpregs(struct thread *td, struct fpreg *fpregs) { -#ifdef COMPAT_IA32 - if (td->td_proc->p_sysent == &ia32_freebsd_sysvec && - curthread->td_proc->p_sysent == &ia32_freebsd_sysvec) - PROC_ACTION(fill_fpregs32(td, fpregs)); - else -#endif - PROC_ACTION(fill_fpregs(td, fpregs)); + PROC_ACTION(fill_fpregs(td, fpregs)); } int proc_write_fpregs(struct thread *td, struct fpreg *fpregs) { + PROC_ACTION(set_fpregs(td, fpregs)); +} + #ifdef COMPAT_IA32 - if (td->td_proc->p_sysent == &ia32_freebsd_sysvec && - curthread->td_proc->p_sysent == &ia32_freebsd_sysvec) - PROC_ACTION(set_fpregs32(td, fpregs)); - else +int +proc_read_regs32(struct thread *td, struct reg32 *regs32) +{ + + PROC_ACTION(fill_regs32(td, regs32)); +} + +int +proc_write_regs32(struct thread *td, struct reg32 *regs32) +{ + + PROC_ACTION(set_regs32(td, regs32)); +} + +int +proc_read_dbregs32(struct thread *td, struct dbreg32 *dbregs32) +{ + + PROC_ACTION(fill_dbregs32(td, dbregs32)); +} + +int +proc_write_dbregs32(struct thread *td, struct dbreg32 *dbregs32) +{ + + PROC_ACTION(set_dbregs32(td, dbregs32)); +} + +int +proc_read_fpregs32(struct thread *td, struct fpreg32 *fpregs32) +{ + + PROC_ACTION(fill_fpregs32(td, fpregs32)); +} + +int +proc_write_fpregs32(struct thread *td, struct fpreg32 *fpregs32) +{ + + PROC_ACTION(set_fpregs32(td, fpregs32)); +} #endif - PROC_ACTION(set_fpregs(td, fpregs)); -} int proc_sstep(struct thread *td) ==== //depot/projects/hammer/sys/sys/ptrace.h#8 (text+ko) ==== @@ -135,6 +135,17 @@ int proc_write_dbregs(struct thread *_td, struct dbreg *_dbreg); int proc_sstep(struct thread *_td); int proc_rwmem(struct proc *_p, struct uio *_uio); +#ifdef COMPAT_IA32 +struct reg32; +struct fpreg32; +struct dbreg32; +int proc_read_regs32(struct thread *_td, struct reg32 *_reg32); +int proc_write_regs32(struct thread *_td, struct reg32 *_reg32); +int proc_read_fpregs32(struct thread *_td, struct fpreg32 *_fpreg32); +int proc_write_fpregs32(struct thread *_td, struct fpreg32 *_fpreg32); +int proc_read_dbregs32(struct thread *_td, struct dbreg32 *_dbreg32); +int proc_write_dbregs32(struct thread *_td, struct dbreg32 *_dbreg32); +#endif #else /* !_KERNEL */ #include From owner-p4-projects@FreeBSD.ORG Tue May 24 21:00:52 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 997E916A420; Tue, 24 May 2005 21:00:51 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5AE4016A41C for ; Tue, 24 May 2005 21:00:51 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 36E2743D48 for ; Tue, 24 May 2005 21:00:51 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4OL0pJN094023 for ; Tue, 24 May 2005 21:00:51 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4OL0o1S094020 for perforce@freebsd.org; Tue, 24 May 2005 21:00:50 GMT (envelope-from peter@freebsd.org) Date: Tue, 24 May 2005 21:00:50 GMT Message-Id: <200505242100.j4OL0o1S094020@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Cc: Subject: PERFORCE change 77409 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 24 May 2005 21:00:52 -0000 http://perforce.freebsd.org/chv.cgi?CH=77409 Change 77409 by peter@peter_melody on 2005/05/24 21:00:50 add placeholders Affected files ... .. //depot/projects/hammer/sys/amd64/ia32/ia32_reg.c#2 edit Differences ... ==== //depot/projects/hammer/sys/amd64/ia32/ia32_reg.c#2 (text+ko) ==== @@ -72,6 +72,13 @@ } int +set_regs32(struct thread *td, struct reg32 *regs) +{ + + return (ENOSYS); +} + +int fill_fpregs32(struct thread *td, struct fpreg32 *regs) { struct save87 *sv_87 = (struct save87 *)regs; @@ -104,3 +111,24 @@ return (0); } + +int +set_fpregs32(struct thread *td, struct fpreg32 *regs) +{ + + return (ENOSYS); +} + +int +fill_dbregs32(struct thread *td, struct dbreg32 *regs) +{ + + return (ENOSYS); +} + +int +set_dbregs32(struct thread *td, struct dbreg32 *regs) +{ + + return (ENOSYS); +} From owner-p4-projects@FreeBSD.ORG Tue May 24 21:01:53 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4266816A421; Tue, 24 May 2005 21:01:53 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1B39416A41C for ; Tue, 24 May 2005 21:01:53 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EA18F43D48 for ; Tue, 24 May 2005 21:01:52 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4OL1qYL094058 for ; Tue, 24 May 2005 21:01:52 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4OL1qAp094055 for perforce@freebsd.org; Tue, 24 May 2005 21:01:52 GMT (envelope-from sam@freebsd.org) Date: Tue, 24 May 2005 21:01:52 GMT Message-Id: <200505242101.j4OL1qAp094055@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 77410 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 24 May 2005 21:01:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=77410 Change 77410 by sam@sam_ebb on 2005/05/24 21:01:09 set new entries to an invalid scangen so the first iteration will pick them up; fixes ifconfig wlan0 list scan which used to return nothing the first time (oops) Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_scan_sta.c#8 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_scan_sta.c#8 (text+ko) ==== @@ -212,6 +212,7 @@ mtx_unlock(&st->st_lock); return 0; } + se->se_scangen = st->st_scangen-1; IEEE80211_ADDR_COPY(se->base.se_macaddr, macaddr); TAILQ_INSERT_TAIL(&st->st_entry, se, se_list); LIST_INSERT_HEAD(&st->st_hash[hash], se, se_hash); From owner-p4-projects@FreeBSD.ORG Tue May 24 21:04:58 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A493516A420; Tue, 24 May 2005 21:04:57 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 66CA816A41C for ; Tue, 24 May 2005 21:04:57 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1F61143D54 for ; Tue, 24 May 2005 21:04:57 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4OL4vIw094143 for ; Tue, 24 May 2005 21:04:57 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4OL4u4o094140 for perforce@freebsd.org; Tue, 24 May 2005 21:04:56 GMT (envelope-from peter@freebsd.org) Date: Tue, 24 May 2005 21:04:56 GMT Message-Id: <200505242104.j4OL4u4o094140@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Cc: Subject: PERFORCE change 77411 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 24 May 2005 21:04:58 -0000 http://perforce.freebsd.org/chv.cgi?CH=77411 Change 77411 by peter@peter_melody on 2005/05/24 21:04:25 Add two more debug sysctl's to cause messier ways of entering the debugger than the nice Debugger() call. Affected files ... .. //depot/projects/hammer/sys/kern/subr_kdb.c#10 edit Differences ... ==== //depot/projects/hammer/sys/kern/subr_kdb.c#10 (text+ko) ==== @@ -66,6 +66,8 @@ static int kdb_sysctl_available(SYSCTL_HANDLER_ARGS); static int kdb_sysctl_current(SYSCTL_HANDLER_ARGS); static int kdb_sysctl_enter(SYSCTL_HANDLER_ARGS); +static int kdb_sysctl_panic(SYSCTL_HANDLER_ARGS); +static int kdb_sysctl_trap(SYSCTL_HANDLER_ARGS); SYSCTL_NODE(_debug, OID_AUTO, kdb, CTLFLAG_RW, NULL, "KDB nodes"); @@ -78,6 +80,12 @@ SYSCTL_PROC(_debug_kdb, OID_AUTO, enter, CTLTYPE_INT | CTLFLAG_RW, 0, 0, kdb_sysctl_enter, "I", "set to enter the debugger"); +SYSCTL_PROC(_debug_kdb, OID_AUTO, panic, CTLTYPE_INT | CTLFLAG_RW, 0, 0, + kdb_sysctl_panic, "I", "set to panic the kernel"); + +SYSCTL_PROC(_debug_kdb, OID_AUTO, trap, CTLTYPE_INT | CTLFLAG_RW, 0, 0, + kdb_sysctl_trap, "I", "set cause a page fault"); + /* * Flag indicating whether or not to IPI the other CPUs to stop them on * entering the debugger. Sometimes, this will result in a deadlock as @@ -174,6 +182,38 @@ return (0); } +static int +kdb_sysctl_panic(SYSCTL_HANDLER_ARGS) +{ + int error, i; + + error = sysctl_wire_old_buffer(req, sizeof(int)); + if (error == 0) { + i = 0; + error = sysctl_handle_int(oidp, &i, 0, req); + } + if (error != 0 || req->newptr == NULL) + return (error); + panic("kdb_sysctl_panic"); + return (0); +} + +static int +kdb_sysctl_trap(SYSCTL_HANDLER_ARGS) +{ + int error, i; + int *addr = (int *)0x10; + + error = sysctl_wire_old_buffer(req, sizeof(int)); + if (error == 0) { + i = 0; + error = sysctl_handle_int(oidp, &i, 0, req); + } + if (error != 0 || req->newptr == NULL) + return (error); + return (*addr); +} + /* * Solaris implements a new BREAK which is initiated by a character sequence * CR ~ ^b which is similar to a familiar pattern used on Sun servers by the From owner-p4-projects@FreeBSD.ORG Tue May 24 21:17:13 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3B06D16A41F; Tue, 24 May 2005 21:17:13 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id EC8D616A42D for ; Tue, 24 May 2005 21:17:12 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C654B43D1F for ; Tue, 24 May 2005 21:17:12 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4OLHCjm094820 for ; Tue, 24 May 2005 21:17:12 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4OLHCZl094817 for perforce@freebsd.org; Tue, 24 May 2005 21:17:12 GMT (envelope-from peter@freebsd.org) Date: Tue, 24 May 2005 21:17:12 GMT Message-Id: <200505242117.j4OLHCZl094817@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Cc: Subject: PERFORCE change 77413 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 24 May 2005 21:17:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=77413 Change 77413 by peter@peter_melody on 2005/05/24 21:16:11 flesh out set_regs32(). This might be complete. Affected files ... .. //depot/projects/hammer/sys/amd64/ia32/ia32_reg.c#3 edit Differences ... ==== //depot/projects/hammer/sys/amd64/ia32/ia32_reg.c#3 (text+ko) ==== @@ -44,6 +44,9 @@ #include #include +#define CS_SECURE(cs) (ISPL(cs) == SEL_UPL) +#define EFL_SECURE(ef, oef) ((((ef) ^ (oef)) & ~PSL_USERCHANGE) == 0) + int fill_regs32(struct thread *td, struct reg32 *regs) { @@ -74,8 +77,34 @@ int set_regs32(struct thread *td, struct reg32 *regs) { + struct pcb *pcb; + struct trapframe *tp; - return (ENOSYS); + tp = td->td_frame; + if (!EFL_SECURE(regs->r_eflags, tp->tf_rflags) || !CS_SECURE(regs->r_cs)) + return (EINVAL); + pcb = td->td_pcb; + load_fs(regs->r_fs); + pcb->pcb_fs = regs->r_fs; + load_es(regs->r_es); + pcb->pcb_es = regs->r_es; + load_ds(regs->r_ds); + pcb->pcb_ds = regs->r_ds; + tp->tf_rdi = regs->r_edi; + tp->tf_rsi = regs->r_esi; + tp->tf_rbp = regs->r_ebp; + tp->tf_rbx = regs->r_ebx; + tp->tf_rdx = regs->r_edx; + tp->tf_rcx = regs->r_ecx; + tp->tf_rax = regs->r_eax; + tp->tf_rip = regs->r_eip; + tp->tf_cs = regs->r_cs; + tp->tf_rflags = regs->r_eflags; + tp->tf_rsp = regs->r_esp; + tp->tf_ss = regs->r_ss; + load_gs(regs->r_gs); + pcb->pcb_gs = regs->r_gs; + return (0); } int From owner-p4-projects@FreeBSD.ORG Tue May 24 21:56:02 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EF57916A420; Tue, 24 May 2005 21:56:01 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id ADE4916A41C for ; Tue, 24 May 2005 21:56:01 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8162443D4C for ; Tue, 24 May 2005 21:56:01 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4OLu13r097265 for ; Tue, 24 May 2005 21:56:01 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4OLu1FL097262 for perforce@freebsd.org; Tue, 24 May 2005 21:56:01 GMT (envelope-from peter@freebsd.org) Date: Tue, 24 May 2005 21:56:01 GMT Message-Id: <200505242156.j4OLu1FL097262@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Cc: Subject: PERFORCE change 77417 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 24 May 2005 21:56:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=77417 Change 77417 by peter@peter_melody on 2005/05/24 21:55:16 flesh out some more. These might work too. Affected files ... .. //depot/projects/hammer/sys/amd64/ia32/ia32_reg.c#4 edit Differences ... ==== //depot/projects/hammer/sys/amd64/ia32/ia32_reg.c#4 (text+ko) ==== @@ -144,20 +144,53 @@ int set_fpregs32(struct thread *td, struct fpreg32 *regs) { + struct save87 *sv_87 = (struct save87 *)regs; + struct env87 *penv_87 = &sv_87->sv_env; + struct savefpu *sv_fpu = &td->td_pcb->pcb_save; + struct envxmm *penv_xmm = &sv_fpu->sv_env; + int i; + + /* FPU control/status */ + penv_xmm->en_cw = penv_87->en_cw; + penv_xmm->en_sw = penv_87->en_sw; + penv_xmm->en_tw = penv_87->en_tw; + penv_xmm->en_rip = penv_87->en_fip; + /* penv_87->en_fcs and en_fos ignored, see above */ + penv_xmm->en_opcode = penv_87->en_opcode; + penv_xmm->en_rdp = penv_87->en_foo; + + /* FPU registers */ + for (i = 0; i < 8; ++i) + sv_fpu->sv_fp[i].fp_acc = sv_87->sv_ac[i]; + for (i = 8; i < 16; ++i) + bzero(&sv_fpu->sv_fp[i].fp_acc, sizeof(sv_fpu->sv_fp[i].fp_acc)); - return (ENOSYS); + return (0); } int fill_dbregs32(struct thread *td, struct dbreg32 *regs) { + struct dbreg dr; + int err, i; - return (ENOSYS); + err = fill_dbregs(td, &dr); + for (i = 0; i < 8; i++) + regs->dr[i] = dr.dr[i]; + for (i = 8; i < 16; i++) + regs->dr[i] = 0; + return (err); } int set_dbregs32(struct thread *td, struct dbreg32 *regs) { + struct dbreg dr; + int i; - return (ENOSYS); + for (i = 0; i < 8; i++) + dr.dr[i] = regs->dr[i]; + for (i = 8; i < 16; i++) + dr.dr[i] = 0; + return (set_dbregs(td, &dr)); } From owner-p4-projects@FreeBSD.ORG Tue May 24 22:44:02 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A43CF16A41F; Tue, 24 May 2005 22:44:01 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6273E16A41C for ; Tue, 24 May 2005 22:44:01 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 201B543D49 for ; Tue, 24 May 2005 22:44:01 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4OMi1nI099285 for ; Tue, 24 May 2005 22:44:01 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4OMi0kM099281 for perforce@freebsd.org; Tue, 24 May 2005 22:44:00 GMT (envelope-from peter@freebsd.org) Date: Tue, 24 May 2005 22:44:00 GMT Message-Id: <200505242244.j4OMi0kM099281@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Cc: Subject: PERFORCE change 77421 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 24 May 2005 22:44:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=77421 Change 77421 by peter@peter_melody on 2005/05/24 22:43:09 Commit something that actually works Affected files ... .. //depot/projects/hammer/sys/kern/sys_process.c#24 edit Differences ... ==== //depot/projects/hammer/sys/kern/sys_process.c#24 (text+ko) ==== @@ -469,6 +469,9 @@ int proctree_locked = 0; lwpid_t tid = 0, *buf; pid_t saved_pid = pid; +#ifdef COMPAT_IA32 + int wrap32 = 0; +#endif curp = td->td_proc; @@ -544,6 +547,11 @@ tid = td2->td_tid; } +#ifdef COMPAT_IA32 + if (td->td_proc->p_sysent == &ia32_freebsd_sysvec && + td2->td_proc->p_sysent == &ia32_freebsd_sysvec) + wrap32 = 1; +#endif /* * Permissions check */ @@ -849,42 +857,72 @@ case PT_SETREGS: _PHOLD(p); - error = proc_write_regs(td2, addr); +#ifdef COMPAT_IA32 + if (wrap32) + error = proc_write_regs32(td2, addr); + else +#endif + error = proc_write_regs(td2, addr); _PRELE(p); PROC_UNLOCK(p); return (error); case PT_GETREGS: _PHOLD(p); - error = proc_read_regs(td2, addr); +#ifdef COMPAT_IA32 + if (wrap32) + error = proc_read_regs32(td2, addr); + else +#endif + error = proc_read_regs(td2, addr); _PRELE(p); PROC_UNLOCK(p); return (error); case PT_SETFPREGS: _PHOLD(p); - error = proc_write_fpregs(td2, addr); +#ifdef COMPAT_IA32 + if (wrap32) + error = proc_write_fpregs32(td2, addr); + else +#endif + error = proc_write_fpregs(td2, addr); _PRELE(p); PROC_UNLOCK(p); return (error); case PT_GETFPREGS: _PHOLD(p); - error = proc_read_fpregs(td2, addr); +#ifdef COMPAT_IA32 + if (wrap32) + error = proc_read_fpregs32(td2, addr); + else +#endif + error = proc_read_fpregs(td2, addr); _PRELE(p); PROC_UNLOCK(p); return (error); case PT_SETDBREGS: _PHOLD(p); - error = proc_write_dbregs(td2, addr); +#ifdef COMPAT_IA32 + if (wrap32) + error = proc_write_dbregs32(td2, addr); + else +#endif + error = proc_write_dbregs(td2, addr); _PRELE(p); PROC_UNLOCK(p); return (error); case PT_GETDBREGS: _PHOLD(p); - error = proc_read_dbregs(td2, addr); +#ifdef COMPAT_IA32 + if (wrap32) + error = proc_read_dbregs32(td2, addr); + else +#endif + error = proc_read_dbregs(td2, addr); _PRELE(p); PROC_UNLOCK(p); return (error); From owner-p4-projects@FreeBSD.ORG Tue May 24 23:02:24 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 675A016A41F; Tue, 24 May 2005 23:02:24 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 006D016A41F for ; Tue, 24 May 2005 23:02:23 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AD54343D53 for ; Tue, 24 May 2005 23:02:23 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4ON2N4q001385 for ; Tue, 24 May 2005 23:02:23 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4ON2NLt001382 for perforce@freebsd.org; Tue, 24 May 2005 23:02:23 GMT (envelope-from peter@freebsd.org) Date: Tue, 24 May 2005 23:02:23 GMT Message-Id: <200505242302.j4ON2NLt001382@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Cc: Subject: PERFORCE change 77422 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 24 May 2005 23:02:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=77422 Change 77422 by peter@peter_melody on 2005/05/24 23:01:26 Hide the evil a bit better Affected files ... .. //depot/projects/hammer/sys/kern/sys_process.c#25 edit Differences ... ==== //depot/projects/hammer/sys/kern/sys_process.c#25 (text+ko) ==== @@ -344,6 +344,15 @@ }; #endif +#ifdef COMPAT_IA32 +#define COPYIN(u, k, s) wrap32 ? \ + copyin(u, k ## 32, s ##32) : copyin(u, k, s) +#define COPYOUT(k, u, s) wrap32 ? \ + copyout(k ## 32, u, s ##32) : copyout(u, k, s) +#else +#define COPYIN(u, k, s) copyin(u, k, s) +#define COPYOUT(k, u, s) copyout(k, u, s) +#endif /* * MPSAFE */ @@ -383,28 +392,13 @@ case PT_LWPINFO: break; case PT_SETREGS: -#ifdef COMPAT_IA32 - if (wrap32) - error = copyin(uap->addr, &r.reg32, sizeof r.reg32); - else -#endif - error = copyin(uap->addr, &r.reg, sizeof r.reg); + error = COPYIN(uap->addr, &r.reg, sizeof r.reg); break; case PT_SETFPREGS: -#ifdef COMPAT_IA32 - if (wrap32) - error = copyin(uap->addr, &r.fpreg32, sizeof r.fpreg32); - else -#endif - error = copyin(uap->addr, &r.fpreg, sizeof r.fpreg); + error = COPYIN(uap->addr, &r.fpreg, sizeof r.fpreg); break; case PT_SETDBREGS: -#ifdef COMPAT_IA32 - if (wrap32) - error = copyin(uap->addr, &r.dbreg32, sizeof r.dbreg32); - else -#endif - error = copyin(uap->addr, &r.dbreg, sizeof r.dbreg); + error = COPYIN(uap->addr, &r.dbreg, sizeof r.dbreg); break; case PT_IO: error = copyin(uap->addr, &r.piod, sizeof r.piod); @@ -425,28 +419,13 @@ (void)copyout(&r.piod, uap->addr, sizeof r.piod); break; case PT_GETREGS: -#ifdef COMPAT_IA32 - if (wrap32) - error = copyout(&r.reg32, uap->addr, sizeof r.reg32); - else -#endif - error = copyout(&r.reg, uap->addr, sizeof r.reg); + error = COPYOUT(&r.reg, uap->addr, sizeof r.reg); break; case PT_GETFPREGS: -#ifdef COMPAT_IA32 - if (wrap32) - error = copyout(&r.fpreg32, uap->addr, sizeof r.fpreg32); - else -#endif - error = copyout(&r.fpreg, uap->addr, sizeof r.fpreg); + error = COPYOUT(&r.fpreg, uap->addr, sizeof r.fpreg); break; case PT_GETDBREGS: -#ifdef COMPAT_IA32 - if (wrap32) - error = copyout(&r.dbreg32, uap->addr, sizeof r.dbreg32); - else -#endif - error = copyout(&r.dbreg, uap->addr, sizeof r.dbreg); + error = COPYOUT(&r.dbreg, uap->addr, sizeof r.dbreg); break; case PT_LWPINFO: error = copyout(&r.pl, uap->addr, uap->data); @@ -455,7 +434,19 @@ return (error); } +#undef COPYIN +#undef COPYOUT +#ifdef COMPAT_IA32 +#define PROC_READ(w, t, a) wrap32 ? \ + proc_read_ ## w ## 32(t, a) : proc_read_ ## w (t, a) +#define PROC_WRITE(w, t, a) wrap32 ? \ + proc_write_ ## w ## 32(t, a) : proc_write_ ## w (t, a) +#else +#define PROC_READ(w, t, a) proc_read_ ## w (t, a) +#define PROC_WRITE(w, t, a) proc_write_ ## w (t, a) +#endif + int kern_ptrace(struct thread *td, int req, pid_t pid, void *addr, int data) { @@ -857,72 +848,42 @@ case PT_SETREGS: _PHOLD(p); -#ifdef COMPAT_IA32 - if (wrap32) - error = proc_write_regs32(td2, addr); - else -#endif - error = proc_write_regs(td2, addr); + error = PROC_WRITE(regs, td2, addr); _PRELE(p); PROC_UNLOCK(p); return (error); case PT_GETREGS: _PHOLD(p); -#ifdef COMPAT_IA32 - if (wrap32) - error = proc_read_regs32(td2, addr); - else -#endif - error = proc_read_regs(td2, addr); + error = PROC_READ(regs, td2, addr); _PRELE(p); PROC_UNLOCK(p); return (error); case PT_SETFPREGS: _PHOLD(p); -#ifdef COMPAT_IA32 - if (wrap32) - error = proc_write_fpregs32(td2, addr); - else -#endif - error = proc_write_fpregs(td2, addr); + error = PROC_WRITE(fpregs, td2, addr); _PRELE(p); PROC_UNLOCK(p); return (error); case PT_GETFPREGS: _PHOLD(p); -#ifdef COMPAT_IA32 - if (wrap32) - error = proc_read_fpregs32(td2, addr); - else -#endif - error = proc_read_fpregs(td2, addr); + error = PROC_READ(fpregs, td2, addr); _PRELE(p); PROC_UNLOCK(p); return (error); case PT_SETDBREGS: _PHOLD(p); -#ifdef COMPAT_IA32 - if (wrap32) - error = proc_write_dbregs32(td2, addr); - else -#endif - error = proc_write_dbregs(td2, addr); + error = PROC_WRITE(dbregs, td2, addr); _PRELE(p); PROC_UNLOCK(p); return (error); case PT_GETDBREGS: _PHOLD(p); -#ifdef COMPAT_IA32 - if (wrap32) - error = proc_read_dbregs32(td2, addr); - else -#endif - error = proc_read_dbregs(td2, addr); + error = PROC_READ(dbregs, td2, addr); _PRELE(p); PROC_UNLOCK(p); return (error); @@ -1005,6 +966,8 @@ sx_xunlock(&proctree_lock); return (error); } +#undef PROC_READ +#undef PROC_WRITE /* * Stop a process because of a debugging event; From owner-p4-projects@FreeBSD.ORG Tue May 24 23:17:44 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A248D16A421; Tue, 24 May 2005 23:17:43 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 440D116A41F for ; Tue, 24 May 2005 23:17:43 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1EAE343D4C for ; Tue, 24 May 2005 23:17:43 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4ONHgl9003080 for ; Tue, 24 May 2005 23:17:43 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4ONHg60003077 for perforce@freebsd.org; Tue, 24 May 2005 23:17:42 GMT (envelope-from peter@freebsd.org) Date: Tue, 24 May 2005 23:17:42 GMT Message-Id: <200505242317.j4ONHg60003077@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Cc: Subject: PERFORCE change 77424 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 24 May 2005 23:17:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=77424 Change 77424 by peter@peter_daintree on 2005/05/24 23:17:06 Dont use a bogo-$Id$, fix whitespace Affected files ... .. //depot/projects/hammer/sys/amd64/ia32/ia32_reg.c#5 edit Differences ... ==== //depot/projects/hammer/sys/amd64/ia32/ia32_reg.c#5 (text+ko) ==== @@ -1,5 +1,5 @@ #include -__FBSDID("$FreeBSD: src/sys/amd64/ia32/ia32_signal.c,v 1.10 2004/04/05 23:55:14 imp Exp $"); +__FBSDID("$FreeBSD$"); #include #include @@ -45,7 +45,7 @@ #include #define CS_SECURE(cs) (ISPL(cs) == SEL_UPL) -#define EFL_SECURE(ef, oef) ((((ef) ^ (oef)) & ~PSL_USERCHANGE) == 0) +#define EFL_SECURE(ef, oef) ((((ef) ^ (oef)) & ~PSL_USERCHANGE) == 0) int fill_regs32(struct thread *td, struct reg32 *regs) From owner-p4-projects@FreeBSD.ORG Tue May 24 23:28:57 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7301216A420; Tue, 24 May 2005 23:28:57 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4E66C16A41C for ; Tue, 24 May 2005 23:28:57 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 28CFD43D1F for ; Tue, 24 May 2005 23:28:57 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4ONSvSe009985 for ; Tue, 24 May 2005 23:28:57 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4ONSuFE009982 for perforce@freebsd.org; Tue, 24 May 2005 23:28:56 GMT (envelope-from peter@freebsd.org) Date: Tue, 24 May 2005 23:28:56 GMT Message-Id: <200505242328.j4ONSuFE009982@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Cc: Subject: PERFORCE change 77425 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 24 May 2005 23:28:58 -0000 http://perforce.freebsd.org/chv.cgi?CH=77425 Change 77425 by peter@peter_melody on 2005/05/24 23:28:19 Only allow 32 bit ptrace clients to connect to 32 bit targets. Otherwise they cannot see the full register context. 64 bit gdb can debug 32 bit targets, but not the other way around. Affected files ... .. //depot/projects/hammer/sys/kern/sys_process.c#26 edit Differences ... ==== //depot/projects/hammer/sys/kern/sys_process.c#26 (text+ko) ==== @@ -380,8 +380,7 @@ #ifdef COMPAT_IA32 int wrap32 = 0; - if (td->td_proc->p_sysent == &ia32_freebsd_sysvec && - curthread->td_proc->p_sysent == &ia32_freebsd_sysvec) + if (td->td_proc->p_sysent == &ia32_freebsd_sysvec) wrap32 = 1; #endif addr = &r; @@ -539,9 +538,13 @@ } #ifdef COMPAT_IA32 - if (td->td_proc->p_sysent == &ia32_freebsd_sysvec && - td2->td_proc->p_sysent == &ia32_freebsd_sysvec) + if (td->td_proc->p_sysent == &ia32_freebsd_sysvec) { + if (td2->td_proc->p_sysent != &ia32_freebsd_sysvec) { + error = EINVAL; + goto fail; + } wrap32 = 1; + } #endif /* * Permissions check From owner-p4-projects@FreeBSD.ORG Wed May 25 00:51:59 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id ED53D16A420; Wed, 25 May 2005 00:51:58 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 90D5216A41C for ; Wed, 25 May 2005 00:51:58 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5FC8443D1F for ; Wed, 25 May 2005 00:51:58 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4P0pwj1021743 for ; Wed, 25 May 2005 00:51:58 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4P0pwo1021740 for perforce@freebsd.org; Wed, 25 May 2005 00:51:58 GMT (envelope-from sam@freebsd.org) Date: Wed, 25 May 2005 00:51:58 GMT Message-Id: <200505250051.j4P0pwo1021740@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 77431 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 25 May 2005 00:51:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=77431 Change 77431 by sam@sam_ebb on 2005/05/25 00:51:57 decrement failure counts on stations each time we complete a scan w/o finding a suitable station; this is in addition to the other aging used to clear failures Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_ioctl.c#13 edit .. //depot/projects/vap/sys/net80211/ieee80211_proto.c#11 edit .. //depot/projects/vap/sys/net80211/ieee80211_scan_sta.c#9 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_ioctl.c#13 (text+ko) ==== @@ -1791,8 +1791,11 @@ if ((vap->iv_caps & IEEE80211_C_BGSCAN) == 0) return EINVAL; vap->iv_flags |= IEEE80211_F_BGSCAN; - } else + } else { + /* XXX racey? */ vap->iv_flags &= ~IEEE80211_F_BGSCAN; + ieee80211_cancel_scan(vap); /* anything current */ + } break; case IEEE80211_IOC_BGSCAN_IDLE: if (ireq->i_val >= IEEE80211_BGSCAN_IDLE_MIN) ==== //depot/projects/vap/sys/net80211/ieee80211_proto.c#11 (text+ko) ==== @@ -1100,7 +1100,8 @@ TAILQ_FOREACH(vap, &ic->ic_vaps, iv_next) { IEEE80211_DPRINTF(vap, IEEE80211_MSG_STATE | IEEE80211_MSG_DEBUG, - "%s\n", "beacon miss"); + "beacon miss, mode %u state %s\n", + vap->iv_opmode, ieee80211_state_name[vap->iv_state]); /* * Our handling is only meaningful for stations that are @@ -1241,18 +1242,17 @@ break; case IEEE80211_S_AUTH: case IEEE80211_S_ASSOC: /* timeout restart scan */ - ieee80211_scan_assocfail(ic, vap->iv_bss->ni_macaddr); - if (ic->ic_roaming == IEEE80211_ROAMING_AUTO) + if (ic->ic_roaming == IEEE80211_ROAMING_AUTO) { + ieee80211_scan_assocfail(ic, + vap->iv_bss->ni_macaddr); ieee80211_check_scan(vap, IEEE80211_SCAN_ACTIVE | arg, IEEE80211_SCAN_FOREVER); + } break; case IEEE80211_S_RUN: /* beacon miss */ ieee80211_sta_leave(ni); vap->iv_flags &= ~IEEE80211_F_SIBSS; /* XXX */ -#if 0 - ieee80211_scan_beaconmiss(ic, vap->iv_bss->ni_macaddr); -#endif if (ic->ic_roaming == IEEE80211_ROAMING_AUTO) ieee80211_check_scan(vap, IEEE80211_SCAN_ACTIVE | arg, ==== //depot/projects/vap/sys/net80211/ieee80211_scan_sta.c#9 (text+ko) ==== @@ -649,7 +649,7 @@ if ((vap->iv_flags & IEEE80211_F_DESBSSID) && !IEEE80211_ADDR_EQ(vap->iv_des_bssid, se->se_bssid)) fail |= 0x20; - if (se0->se_fails >= STA_FAILS_MAX) + if (se0->se_fails > STA_FAILS_MAX) fail |= 0x40; if (se0->se_notseen >= STA_PURGE_SCANS) fail |= 0x80; @@ -703,6 +703,18 @@ mtx_unlock(&st->st_lock); } +static void +sta_dec_fails(struct sta_table *st) +{ + struct sta_entry *se; + + mtx_lock(&st->st_lock); + TAILQ_FOREACH(se, &st->st_entry, se_list) + if (se->se_fails) + se->se_fails--; + mtx_unlock(&st->st_lock); +} + /* * Pick an ap or ibss network to join or find a channel * to use to start an ibss network. @@ -749,6 +761,14 @@ ieee80211_create_ibss(vap, vap->iv_des_chan); return 1; } + /* + * If nothing suitable was found decrement + * the failure counts so entries will be + * reconsidered the next time around. We + * really want to do this only for sta's + * where we've previously had some success. + */ + sta_dec_fails(st); return 0; /* restart scan */ } selbs = NULL; From owner-p4-projects@FreeBSD.ORG Wed May 25 01:22:43 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F268E16A420; Wed, 25 May 2005 01:22:42 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6DC3016A41C for ; Wed, 25 May 2005 01:22:42 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4882743D48 for ; Wed, 25 May 2005 01:22:42 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4P1MgUe022822 for ; Wed, 25 May 2005 01:22:42 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4P1Mfcs022819 for perforce@freebsd.org; Wed, 25 May 2005 01:22:42 GMT (envelope-from peter@freebsd.org) Date: Wed, 25 May 2005 01:22:42 GMT Message-Id: <200505250122.j4P1Mfcs022819@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Cc: Subject: PERFORCE change 77433 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 25 May 2005 01:22:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=77433 Change 77433 by peter@peter_melody on 2005/05/25 01:21:41 I am going to KILL phk for this. Affected files ... .. //depot/projects/hammer/sys/conf/options#74 edit .. //depot/projects/hammer/sys/kern/sys_generic.c#23 edit Differences ... ==== //depot/projects/hammer/sys/conf/options#74 (text+ko) ==== @@ -63,6 +63,7 @@ CODA_COMPAT_5 opt_coda.h COMPAT_43 opt_compat.h COMPAT_FREEBSD4 opt_compat.h +COMPAT_FREEBSD5 opt_compat.h COMPILING_LINT opt_global.h CONSPEED opt_comconsole.h CY_PCI_FASTINTR ==== //depot/projects/hammer/sys/kern/sys_generic.c#23 (text+ko) ==== @@ -37,6 +37,7 @@ #include __FBSDID("$FreeBSD: src/sys/kern/sys_generic.c,v 1.144 2005/03/31 22:51:18 jhb Exp $"); +#include "opt_compat.h" #include "opt_ktrace.h" #include @@ -534,8 +535,12 @@ size = IOCPARM_LEN(com); if ((size > IOCPARM_MAX) || ((com & (IOC_VOID | IOC_IN | IOC_OUT)) == 0) || - ((com & IOC_VOID) && size > 0) || - ((com & (IOC_IN | IOC_OUT)) && size == 0)) { +#ifdef COMPAT_FREEBSD5 + ((com & IOC_OUT) && size == 0) || +#else + ((com & (IOC_IN | IOC_OUT)) && size == 0) || +#endif + ((com & IOC_VOID) && size > 0)) { fdrop(fp, td); return (ENOTTY); } From owner-p4-projects@FreeBSD.ORG Wed May 25 01:37:05 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BC4A216A420; Wed, 25 May 2005 01:37:04 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3BFA516A41C for ; Wed, 25 May 2005 01:37:04 +0000 (GMT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EF9BC43D48 for ; Wed, 25 May 2005 01:37:03 +0000 (GMT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4P1b3n6023300 for ; Wed, 25 May 2005 01:37:03 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4P1axY0023293 for perforce@freebsd.org; Wed, 25 May 2005 01:36:59 GMT (envelope-from marcel@freebsd.org) Date: Wed, 25 May 2005 01:36:59 GMT Message-Id: <200505250136.j4P1axY0023293@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Cc: Subject: PERFORCE change 77434 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 25 May 2005 01:37:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=77434 Change 77434 by marcel@marcel_nfs on 2005/05/25 01:36:23 IFC @77430 Affected files ... .. //depot/projects/tty/MAINTAINERS#10 integrate .. //depot/projects/tty/Makefile.inc1#19 integrate .. //depot/projects/tty/contrib/bsnmp/NEWS#6 integrate .. //depot/projects/tty/contrib/bsnmp/VERSION#6 integrate .. //depot/projects/tty/contrib/bsnmp/lib/bsnmpclient.3#5 integrate .. //depot/projects/tty/contrib/bsnmp/lib/snmpclient.c#4 integrate .. //depot/projects/tty/contrib/bsnmp/lib/snmpclient.h#4 integrate .. //depot/projects/tty/contrib/bsnmp/oid-list#3 integrate .. //depot/projects/tty/contrib/bsnmp/snmp_mibII/mibII.c#5 integrate .. //depot/projects/tty/contrib/bsnmp/snmp_mibII/mibII.h#4 integrate .. //depot/projects/tty/contrib/bsnmp/snmp_mibII/mibII_interfaces.c#5 integrate .. //depot/projects/tty/contrib/bsnmp/snmp_mibII/mibII_ip.c#4 integrate .. //depot/projects/tty/contrib/bsnmp/snmp_mibII/mibII_route.c#4 integrate .. //depot/projects/tty/contrib/bsnmp/snmp_mibII/mibII_tcp.c#4 integrate .. //depot/projects/tty/contrib/bsnmp/snmp_mibII/mibII_udp.c#4 integrate .. //depot/projects/tty/contrib/bsnmp/snmp_mibII/snmp_mibII.3#5 integrate .. //depot/projects/tty/contrib/bsnmp/snmp_mibII/snmp_mibII.h#5 integrate .. //depot/projects/tty/contrib/bsnmp/snmp_ntp/snmp_ntp.c#2 integrate .. //depot/projects/tty/contrib/bsnmp/snmpd/main.c#7 integrate .. //depot/projects/tty/contrib/bsnmp/snmpd/snmpmod.3#5 integrate .. //depot/projects/tty/contrib/bsnmp/snmpd/snmpmod.h#4 integrate .. //depot/projects/tty/contrib/ipfilter/tools/ipmon.c#3 integrate .. //depot/projects/tty/contrib/ngatm/man/libngatm.3#3 integrate .. //depot/projects/tty/contrib/ngatm/man/uniaddr.3#3 integrate .. //depot/projects/tty/contrib/ngatm/man/unifunc.3#3 integrate .. //depot/projects/tty/contrib/ngatm/man/unimsg.3#2 integrate .. //depot/projects/tty/contrib/ngatm/man/unisap.3#2 integrate .. //depot/projects/tty/contrib/ngatm/man/unistruct.3#3 integrate .. //depot/projects/tty/contrib/ngatm/snmp_atm/atm.h#2 integrate .. //depot/projects/tty/contrib/ngatm/snmp_atm/snmp_atm.3#2 integrate .. //depot/projects/tty/contrib/ngatm/snmp_atm/snmp_atm.c#2 integrate .. //depot/projects/tty/contrib/ngatm/sscop/common.c#4 integrate .. //depot/projects/tty/contrib/ngatm/sscop/common.h#4 integrate .. //depot/projects/tty/contrib/ngatm/sscop/sscop_main.c#4 integrate .. //depot/projects/tty/contrib/texinfo/AUTHORS#4 integrate .. //depot/projects/tty/contrib/texinfo/ChangeLog#4 integrate .. //depot/projects/tty/contrib/texinfo/ChangeLog.46#1 branch .. //depot/projects/tty/contrib/texinfo/FREEBSD-Xlist#4 integrate .. //depot/projects/tty/contrib/texinfo/FREEBSD-upgrade#4 integrate .. //depot/projects/tty/contrib/texinfo/INSTALL#3 integrate .. //depot/projects/tty/contrib/texinfo/INTRODUCTION#3 integrate .. //depot/projects/tty/contrib/texinfo/NEWS#4 integrate .. //depot/projects/tty/contrib/texinfo/README#3 integrate .. //depot/projects/tty/contrib/texinfo/README.dev#1 branch .. //depot/projects/tty/contrib/texinfo/TODO#4 integrate .. //depot/projects/tty/contrib/texinfo/config.h#4 integrate .. //depot/projects/tty/contrib/texinfo/config.h.in#4 integrate .. //depot/projects/tty/contrib/texinfo/doc/README#3 integrate .. //depot/projects/tty/contrib/texinfo/doc/help2man#3 delete .. //depot/projects/tty/contrib/texinfo/doc/info-stnd.texi#4 integrate .. //depot/projects/tty/contrib/texinfo/doc/info.1#4 integrate .. //depot/projects/tty/contrib/texinfo/doc/info.5#3 integrate .. //depot/projects/tty/contrib/texinfo/doc/info.texi#3 integrate .. //depot/projects/tty/contrib/texinfo/doc/infokey.1#1 branch .. //depot/projects/tty/contrib/texinfo/doc/install-info.1#4 integrate .. //depot/projects/tty/contrib/texinfo/doc/makeinfo.1#4 integrate .. //depot/projects/tty/contrib/texinfo/doc/texindex.1#4 integrate .. //depot/projects/tty/contrib/texinfo/doc/texinfo.5#3 integrate .. //depot/projects/tty/contrib/texinfo/doc/texinfo.txi#4 integrate .. //depot/projects/tty/contrib/texinfo/doc/version-stnd.texi#4 integrate .. //depot/projects/tty/contrib/texinfo/doc/version.texi#4 integrate .. //depot/projects/tty/contrib/texinfo/info/README#3 integrate .. //depot/projects/tty/contrib/texinfo/info/dir.c#3 integrate .. //depot/projects/tty/contrib/texinfo/info/display.c#4 integrate .. //depot/projects/tty/contrib/texinfo/info/display.h#3 integrate .. //depot/projects/tty/contrib/texinfo/info/doc.c#3 integrate .. //depot/projects/tty/contrib/texinfo/info/doc.h#3 integrate .. //depot/projects/tty/contrib/texinfo/info/dribble.c#2 integrate .. //depot/projects/tty/contrib/texinfo/info/dribble.h#2 integrate .. //depot/projects/tty/contrib/texinfo/info/echo-area.c#3 integrate .. //depot/projects/tty/contrib/texinfo/info/echo-area.h#3 integrate .. //depot/projects/tty/contrib/texinfo/info/filesys.c#3 integrate .. //depot/projects/tty/contrib/texinfo/info/filesys.h#3 integrate .. //depot/projects/tty/contrib/texinfo/info/footnotes.c#3 integrate .. //depot/projects/tty/contrib/texinfo/info/footnotes.h#3 integrate .. //depot/projects/tty/contrib/texinfo/info/funs.h#3 integrate .. //depot/projects/tty/contrib/texinfo/info/gc.c#2 integrate .. //depot/projects/tty/contrib/texinfo/info/gc.h#3 integrate .. //depot/projects/tty/contrib/texinfo/info/indices.c#4 integrate .. //depot/projects/tty/contrib/texinfo/info/indices.h#3 integrate .. //depot/projects/tty/contrib/texinfo/info/info-utils.c#4 integrate .. //depot/projects/tty/contrib/texinfo/info/info-utils.h#4 integrate .. //depot/projects/tty/contrib/texinfo/info/info.c#4 integrate .. //depot/projects/tty/contrib/texinfo/info/info.h#4 integrate .. //depot/projects/tty/contrib/texinfo/info/infodoc.c#4 integrate .. //depot/projects/tty/contrib/texinfo/info/infokey.c#4 integrate .. //depot/projects/tty/contrib/texinfo/info/infokey.h#3 integrate .. //depot/projects/tty/contrib/texinfo/info/infomap.c#4 integrate .. //depot/projects/tty/contrib/texinfo/info/infomap.h#3 integrate .. //depot/projects/tty/contrib/texinfo/info/key.c#2 integrate .. //depot/projects/tty/contrib/texinfo/info/m-x.c#3 integrate .. //depot/projects/tty/contrib/texinfo/info/man.c#4 integrate .. //depot/projects/tty/contrib/texinfo/info/man.h#3 integrate .. //depot/projects/tty/contrib/texinfo/info/nodemenu.c#4 integrate .. //depot/projects/tty/contrib/texinfo/info/nodes.c#4 integrate .. //depot/projects/tty/contrib/texinfo/info/nodes.h#3 integrate .. //depot/projects/tty/contrib/texinfo/info/search.c#3 integrate .. //depot/projects/tty/contrib/texinfo/info/search.h#3 integrate .. //depot/projects/tty/contrib/texinfo/info/session.c#4 integrate .. //depot/projects/tty/contrib/texinfo/info/session.h#3 integrate .. //depot/projects/tty/contrib/texinfo/info/signals.c#4 integrate .. //depot/projects/tty/contrib/texinfo/info/signals.h#3 integrate .. //depot/projects/tty/contrib/texinfo/info/termdep.h#3 integrate .. //depot/projects/tty/contrib/texinfo/info/terminal.c#3 integrate .. //depot/projects/tty/contrib/texinfo/info/terminal.h#3 integrate .. //depot/projects/tty/contrib/texinfo/info/tilde.c#3 integrate .. //depot/projects/tty/contrib/texinfo/info/tilde.h#2 integrate .. //depot/projects/tty/contrib/texinfo/info/variables.c#3 integrate .. //depot/projects/tty/contrib/texinfo/info/variables.h#3 integrate .. //depot/projects/tty/contrib/texinfo/info/window.c#4 integrate .. //depot/projects/tty/contrib/texinfo/info/window.h#3 integrate .. //depot/projects/tty/contrib/texinfo/lib/README#3 integrate .. //depot/projects/tty/contrib/texinfo/lib/gettext.h#3 integrate .. //depot/projects/tty/contrib/texinfo/lib/substring.c#3 integrate .. //depot/projects/tty/contrib/texinfo/lib/system.h#4 integrate .. //depot/projects/tty/contrib/texinfo/lib/xalloc.h#3 integrate .. //depot/projects/tty/contrib/texinfo/lib/xexit.c#4 integrate .. //depot/projects/tty/contrib/texinfo/lib/xmalloc.c#2 integrate .. //depot/projects/tty/contrib/texinfo/lib/xstrdup.c#3 integrate .. //depot/projects/tty/contrib/texinfo/makeinfo/README#3 integrate .. //depot/projects/tty/contrib/texinfo/makeinfo/cmds.c#4 integrate .. //depot/projects/tty/contrib/texinfo/makeinfo/cmds.h#3 integrate .. //depot/projects/tty/contrib/texinfo/makeinfo/defun.c#4 integrate .. //depot/projects/tty/contrib/texinfo/makeinfo/defun.h#3 integrate .. //depot/projects/tty/contrib/texinfo/makeinfo/files.c#4 integrate .. //depot/projects/tty/contrib/texinfo/makeinfo/files.h#4 integrate .. //depot/projects/tty/contrib/texinfo/makeinfo/float.c#1 branch .. //depot/projects/tty/contrib/texinfo/makeinfo/float.h#1 branch .. //depot/projects/tty/contrib/texinfo/makeinfo/footnote.c#3 integrate .. //depot/projects/tty/contrib/texinfo/makeinfo/footnote.h#3 integrate .. //depot/projects/tty/contrib/texinfo/makeinfo/html.c#4 integrate .. //depot/projects/tty/contrib/texinfo/makeinfo/html.h#3 integrate .. //depot/projects/tty/contrib/texinfo/makeinfo/index.c#4 integrate .. //depot/projects/tty/contrib/texinfo/makeinfo/index.h#3 integrate .. //depot/projects/tty/contrib/texinfo/makeinfo/insertion.c#4 integrate .. //depot/projects/tty/contrib/texinfo/makeinfo/insertion.h#3 integrate .. //depot/projects/tty/contrib/texinfo/makeinfo/lang.c#4 integrate .. //depot/projects/tty/contrib/texinfo/makeinfo/lang.h#4 integrate .. //depot/projects/tty/contrib/texinfo/makeinfo/macro.c#4 integrate .. //depot/projects/tty/contrib/texinfo/makeinfo/macro.h#3 integrate .. //depot/projects/tty/contrib/texinfo/makeinfo/makeinfo.c#4 integrate .. //depot/projects/tty/contrib/texinfo/makeinfo/makeinfo.h#4 integrate .. //depot/projects/tty/contrib/texinfo/makeinfo/multi.c#3 integrate .. //depot/projects/tty/contrib/texinfo/makeinfo/multi.h#1 branch .. //depot/projects/tty/contrib/texinfo/makeinfo/node.c#4 integrate .. //depot/projects/tty/contrib/texinfo/makeinfo/node.h#3 integrate .. //depot/projects/tty/contrib/texinfo/makeinfo/sectioning.c#4 integrate .. //depot/projects/tty/contrib/texinfo/makeinfo/sectioning.h#3 integrate .. //depot/projects/tty/contrib/texinfo/makeinfo/texinfo.dtd#3 delete .. //depot/projects/tty/contrib/texinfo/makeinfo/texinfo.xsl#3 delete .. //depot/projects/tty/contrib/texinfo/makeinfo/toc.c#3 integrate .. //depot/projects/tty/contrib/texinfo/makeinfo/toc.h#3 integrate .. //depot/projects/tty/contrib/texinfo/makeinfo/xml.c#4 integrate .. //depot/projects/tty/contrib/texinfo/makeinfo/xml.h#3 integrate .. //depot/projects/tty/contrib/texinfo/makeinfo/xref.c#1 branch .. //depot/projects/tty/contrib/texinfo/makeinfo/xref.h#1 branch .. //depot/projects/tty/contrib/texinfo/util/README#3 integrate .. //depot/projects/tty/contrib/texinfo/util/install-info.c#4 integrate .. //depot/projects/tty/contrib/texinfo/util/texindex.c#4 integrate .. //depot/projects/tty/etc/devd.conf#12 integrate .. //depot/projects/tty/etc/rc.d/named#5 integrate .. //depot/projects/tty/etc/rc.subr#7 integrate .. //depot/projects/tty/gnu/usr.bin/texinfo/infokey/Makefile#3 integrate .. //depot/projects/tty/gnu/usr.bin/texinfo/makeinfo/Makefile#3 integrate .. //depot/projects/tty/lib/libgeom/geom_xml2tree.c#4 integrate .. //depot/projects/tty/release/Makefile#18 integrate .. //depot/projects/tty/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#16 integrate .. //depot/projects/tty/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#23 integrate .. //depot/projects/tty/release/doc/share/misc/dev.archlist.txt#6 integrate .. //depot/projects/tty/sbin/Makefile#13 integrate .. //depot/projects/tty/sbin/mount_reiserfs/Makefile#1 branch .. //depot/projects/tty/sbin/mount_reiserfs/mount_reiserfs.8#1 branch .. //depot/projects/tty/sbin/mount_reiserfs/mount_reiserfs.c#1 branch .. //depot/projects/tty/sbin/route/route.c#8 integrate .. //depot/projects/tty/share/man/man4/bge.4#10 integrate .. //depot/projects/tty/share/man/man4/pcm.4#7 integrate .. //depot/projects/tty/share/man/man4/sk.4#8 integrate .. //depot/projects/tty/share/man/man4/snd_ad1816.4#3 integrate .. //depot/projects/tty/share/man/man4/snd_als4000.4#3 integrate .. //depot/projects/tty/share/man/man4/snd_cmi.4#3 integrate .. //depot/projects/tty/share/man/man4/snd_cs4281.4#3 integrate .. //depot/projects/tty/share/man/man4/snd_csa.4#3 integrate .. //depot/projects/tty/share/man/man4/snd_ds1.4#3 integrate .. //depot/projects/tty/share/man/man4/snd_emu10k1.4#3 integrate .. //depot/projects/tty/share/man/man4/snd_es137x.4#3 integrate .. //depot/projects/tty/share/man/man4/snd_ess.4#3 integrate .. //depot/projects/tty/share/man/man4/snd_gusc.4#3 integrate .. //depot/projects/tty/share/man/man4/snd_sbc.4#4 integrate .. //depot/projects/tty/share/man/man4/snd_solo.4#3 integrate .. //depot/projects/tty/share/man/man9/VOP_IOCTL.9#4 integrate .. //depot/projects/tty/share/mk/bsd.cpu.mk#8 integrate .. //depot/projects/tty/sys/alpha/osf1/osf1_mount.c#7 integrate .. //depot/projects/tty/sys/amd64/amd64/exception.S#12 integrate .. //depot/projects/tty/sys/amd64/amd64/local_apic.c#6 integrate .. //depot/projects/tty/sys/amd64/amd64/mp_machdep.c#9 integrate .. //depot/projects/tty/sys/amd64/amd64/trap.c#11 integrate .. //depot/projects/tty/sys/amd64/conf/GENERIC#12 integrate .. //depot/projects/tty/sys/amd64/include/bus.h#4 integrate .. //depot/projects/tty/sys/arm/arm/bcopyinout.S#3 integrate .. //depot/projects/tty/sys/arm/arm/bcopyinout_xscale.S#3 integrate .. //depot/projects/tty/sys/arm/arm/busdma_machdep.c#5 integrate .. //depot/projects/tty/sys/arm/arm/cpufunc.c#5 integrate .. //depot/projects/tty/sys/arm/arm/in_cksum.c#4 integrate .. //depot/projects/tty/sys/arm/arm/in_cksum_arm.S#4 integrate .. //depot/projects/tty/sys/arm/arm/pmap.c#5 integrate .. //depot/projects/tty/sys/arm/arm/swtch.S#4 integrate .. //depot/projects/tty/sys/arm/arm/trap.c#4 integrate .. //depot/projects/tty/sys/arm/arm/vm_machdep.c#6 integrate .. //depot/projects/tty/sys/arm/conf/IQ31244#2 integrate .. //depot/projects/tty/sys/arm/include/atomic.h#4 integrate .. //depot/projects/tty/sys/arm/include/endian.h#6 integrate .. //depot/projects/tty/sys/arm/include/in_cksum.h#2 integrate .. //depot/projects/tty/sys/boot/ofw/libofw/elf_freebsd.c#5 integrate .. //depot/projects/tty/sys/compat/freebsd32/freebsd32_misc.c#7 integrate .. //depot/projects/tty/sys/compat/linux/linux_stats.c#10 integrate .. //depot/projects/tty/sys/conf/NOTES#22 integrate .. //depot/projects/tty/sys/conf/files.i386#21 integrate .. //depot/projects/tty/sys/conf/options.i386#15 integrate .. //depot/projects/tty/sys/contrib/ngatm/netnatm/api/ccpriv.h#2 integrate .. //depot/projects/tty/sys/contrib/ngatm/netnatm/api/unisap.h#2 integrate .. //depot/projects/tty/sys/contrib/ngatm/netnatm/msg/uni_ie.c#3 integrate .. //depot/projects/tty/sys/dev/bge/if_bge.c#19 integrate .. //depot/projects/tty/sys/dev/bge/if_bgereg.h#14 integrate .. //depot/projects/tty/sys/dev/bktr/bktr_card.c#8 integrate .. //depot/projects/tty/sys/dev/bktr/bktr_reg.h#6 integrate .. //depot/projects/tty/sys/dev/hme/if_hme.c#9 integrate .. //depot/projects/tty/sys/dev/ipw/if_ipw.c#2 integrate .. //depot/projects/tty/sys/dev/iwi/if_iwi.c#3 integrate .. //depot/projects/tty/sys/dev/iwi/if_iwireg.h#2 integrate .. //depot/projects/tty/sys/dev/iwi/if_iwivar.h#3 integrate .. //depot/projects/tty/sys/dev/ral/if_ral.c#2 integrate .. //depot/projects/tty/sys/dev/sound/pci/maestro3.c#8 integrate .. //depot/projects/tty/sys/dev/usb/if_ural.c#2 integrate .. //depot/projects/tty/sys/geom/mirror/g_mirror.c#6 integrate .. //depot/projects/tty/sys/gnu/reiserfs/README#1 branch .. //depot/projects/tty/sys/gnu/reiserfs/reiserfs_fs.h#1 branch .. //depot/projects/tty/sys/gnu/reiserfs/reiserfs_fs_i.h#1 branch .. //depot/projects/tty/sys/gnu/reiserfs/reiserfs_fs_sb.h#1 branch .. //depot/projects/tty/sys/gnu/reiserfs/reiserfs_hashes.c#1 branch .. //depot/projects/tty/sys/gnu/reiserfs/reiserfs_inode.c#1 branch .. //depot/projects/tty/sys/gnu/reiserfs/reiserfs_item_ops.c#1 branch .. //depot/projects/tty/sys/gnu/reiserfs/reiserfs_mount.h#1 branch .. //depot/projects/tty/sys/gnu/reiserfs/reiserfs_namei.c#1 branch .. //depot/projects/tty/sys/gnu/reiserfs/reiserfs_prints.c#1 branch .. //depot/projects/tty/sys/gnu/reiserfs/reiserfs_stree.c#1 branch .. //depot/projects/tty/sys/gnu/reiserfs/reiserfs_vfsops.c#1 branch .. //depot/projects/tty/sys/gnu/reiserfs/reiserfs_vnops.c#1 branch .. //depot/projects/tty/sys/i386/conf/GENERIC#17 integrate .. //depot/projects/tty/sys/i386/conf/NOTES#20 integrate .. //depot/projects/tty/sys/i386/i386/mp_machdep.c#17 integrate .. //depot/projects/tty/sys/kern/imgact_elf.c#11 integrate .. //depot/projects/tty/sys/kern/kern_event.c#12 integrate .. //depot/projects/tty/sys/kern/kern_exit.c#15 integrate .. //depot/projects/tty/sys/kern/kern_switch.c#16 integrate .. //depot/projects/tty/sys/kern/kern_synch.c#15 integrate .. //depot/projects/tty/sys/kern/vfs_syscalls.c#14 integrate .. //depot/projects/tty/sys/libkern/iconv_xlat16.c#3 integrate .. //depot/projects/tty/sys/modules/Makefile#20 integrate .. //depot/projects/tty/sys/modules/reiserfs/Makefile#1 branch .. //depot/projects/tty/sys/net/pfil.c#6 integrate .. //depot/projects/tty/sys/netgraph/ng_socket.c#9 integrate .. //depot/projects/tty/sys/netgraph/ng_split.c#4 integrate .. //depot/projects/tty/sys/netinet/tcp.h#5 integrate .. //depot/projects/tty/sys/netinet/tcp_sack.c#7 integrate .. //depot/projects/tty/sys/pc98/conf/GENERIC#11 integrate .. //depot/projects/tty/sys/sys/iconv.h#6 integrate .. //depot/projects/tty/sys/sys/proc.h#15 integrate .. //depot/projects/tty/sys/vm/vm_glue.c#11 integrate .. //depot/projects/tty/usr.bin/ipcs/ipcs.c#7 integrate .. //depot/projects/tty/usr.bin/make/Makefile#8 integrate .. //depot/projects/tty/usr.bin/make/Makefile.dist#3 integrate .. //depot/projects/tty/usr.bin/make/arch.c#6 integrate .. //depot/projects/tty/usr.bin/make/cond.c#9 integrate .. //depot/projects/tty/usr.bin/make/job.c#10 integrate .. //depot/projects/tty/usr.bin/make/job.h#9 integrate .. //depot/projects/tty/usr.bin/make/main.c#14 integrate .. //depot/projects/tty/usr.bin/make/make.1#8 integrate .. //depot/projects/tty/usr.bin/make/make.c#5 integrate .. //depot/projects/tty/usr.bin/make/parse.c#11 integrate .. //depot/projects/tty/usr.bin/make/proc.c#1 branch .. //depot/projects/tty/usr.bin/make/proc.h#1 branch .. //depot/projects/tty/usr.bin/make/shell.c#1 branch .. //depot/projects/tty/usr.bin/make/shell.h#1 branch .. //depot/projects/tty/usr.bin/make/str.c#7 integrate .. //depot/projects/tty/usr.bin/make/str.h#4 integrate .. //depot/projects/tty/usr.bin/make/suff.c#8 integrate .. //depot/projects/tty/usr.bin/make/var.c#11 integrate .. //depot/projects/tty/usr.bin/make/var.h#7 integrate .. //depot/projects/tty/usr.sbin/adduser/rmuser.sh#5 integrate .. //depot/projects/tty/usr.sbin/bsnmpd/modules/Makefile.inc#2 integrate .. //depot/projects/tty/usr.sbin/bsnmpd/modules/snmp_atm/Makefile#2 integrate .. //depot/projects/tty/usr.sbin/bsnmpd/modules/snmp_netgraph/snmp_netgraph.c#2 integrate .. //depot/projects/tty/usr.sbin/bsnmpd/modules/snmp_pf/pf_snmp.c#2 integrate .. //depot/projects/tty/usr.sbin/pkg_install/version/main.c#4 integrate .. //depot/projects/tty/usr.sbin/pkg_install/version/perform.c#5 integrate .. //depot/projects/tty/usr.sbin/pkg_install/version/pkg_version.1#6 integrate .. //depot/projects/tty/usr.sbin/pkg_install/version/version.h#3 integrate Differences ... ==== //depot/projects/tty/MAINTAINERS#10 (text+ko) ==== @@ -1,4 +1,4 @@ -$FreeBSD: src/MAINTAINERS,v 1.103 2005/03/13 15:30:01 pjd Exp $ +$FreeBSD: src/MAINTAINERS,v 1.105 2005/05/24 18:54:07 schweikh Exp $ subsystem login notes ----------------------------- @@ -105,7 +105,7 @@ rpc.lockd alfred Will be happy to review code, but not mandatory. truss alfred Will be happy to review code, but not mandatory. rpc alfred Pre-commit review requested. -pkg_install eik Pre-commit review or approval from portmgr@ requested. +pkg_install krion Pre-commit review or approval from portmgr@ requested. Following are the entries from the Makefiles, and a few other sources. Please remove stale entries from both their origin, and this file. @@ -114,8 +114,7 @@ stating your preferences here instead. bin/dd/Makefile:MAINTAINER= green@FreeBSD.org -contrib/cvs/FREEBSD-upgrade:MAINTAINER= peter@FreeBSD.org -games/fortune/datfiles/Makefile:MAINTAINER= jkh@FreeBSD.org +games/fortune/datfiles/Makefile:MAINTAINER= jkh gnu/usr.bin/cvs/Makefile:MAINTAINER= peter@FreeBSD.org gnu/usr.bin/cvs/contrib/Makefile:MAINTAINER= peter@FreeBSD.org gnu/usr.bin/cvs/cvs/Makefile:MAINTAINER= peter@FreeBSD.org @@ -123,25 +122,10 @@ gnu/usr.bin/cvs/doc/Makefile:MAINTAINER= peter@FreeBSD.org gnu/usr.bin/cvs/lib/Makefile:MAINTAINER= peter@FreeBSD.org gnu/usr.bin/cvs/libdiff/Makefile:MAINTAINER= peter@FreeBSD.org -gnu/usr.bin/man/apropos/Makefile:MAINTAINER= wosch@FreeBSD.org -lib/libc/posix1e/Makefile.inc:MAINTAINER= rwatson@FreeBSD.org +gnu/usr.bin/man/apropos/Makefile:MAINTAINER= wosch lib/libusbhid/Makefile:MAINTAINER= n_hibma@FreeBSD.ORG -lib/libz/Makefile:MAINTAINER= peter@FreeBSD.org -sbin/dhclient/Makefile.inc:MAINTAINER= murray@FreeBSD.org -sbin/ipf/Makefile:MAINTAINER= darrenr@freebsd.org -sbin/ipfs/Makefile:MAINTAINER= darrenr@freebsd.org -sbin/ipfstat/Makefile:MAINTAINER= darrenr@freebsd.org -sbin/ipmon/Makefile:MAINTAINER= darrenr@freebsd.org -sbin/ipnat/Makefile:MAINTAINER= darrenr@freebsd.org -sys/boot/i386/cdboot/Makefile:MAINTAINER= jhb@FreeBSD.org -sys/boot/i386/pxeldr/Makefile:MAINTAINER= jhb@FreeBSD.org +lib/libz/Makefile:MAINTAINER=peter@FreeBSD.org sys/compat/svr4/Makefile:MAINTAINER= newton@freebsd.org -sys/dev/asr/MAINTAINER:MAINTAINER= obrien@freebsd.org, scott_long@btc.adaptec.com, mark_salyzyn@adaptec.com -sys/dev/bktr/CHANGELOG.TXT:MAINTAINER= Roger Hardiman -sys/dev/ep/if_ep.c:MAINTAINER= Matthew N. Dodd -sys/dev/ex/if_ex.c:MAINTAINER= Matthew N. Dodd -sys/dev/ie/if_ie.c:MAINTAINER= Matthew N. Dodd -sys/dev/sound/pcm/feeder_rate.c:MAINTAINER= Orion Hodson sys/modules/3dfx/Makefile:MAINTAINER= cokane@FreeBSD.org sys/modules/bktr/bktr_mem/Makefile:MAINTAINER= roger@freebsd.org sys/modules/cam/Makefile:MAINTAINER= n_hibma@freebsd.org @@ -161,13 +145,8 @@ sys/modules/urio/Makefile:MAINTAINER= Iwasa Kazmi sys/modules/usb/Makefile:MAINTAINER= n_hibma@freebsd.org sys/modules/uscanner/Makefile:MAINTAINER= n_hibma@freebsd.org -usr.bin/chat/Makefile:MAINTAINER= peter@freebsd.org -usr.bin/locate/Makefile:MAINTAINER= wosch@FreeBSD.org -usr.sbin/ipftest/Makefile:MAINTAINER= darrenr@freebsd.org -usr.sbin/ipresend/Makefile:MAINTAINER= darrenr@freebsd.org -usr.sbin/ipsend/Makefile:MAINTAINER= darrenr@freebsd.org -usr.sbin/iptest/Makefile:MAINTAINER= darrenr@freebsd.org -usr.sbin/ntp/doc/Makefile:MAINTAINER= sheldonh@FreeBSD.org -usr.sbin/pppd/Makefile:MAINTAINER= peter@freebsd.org +tools/tools/sysdoc/Makefile:MAINTAINER= trhodes@FreeBSD.org +usr.bin/locate/Makefile:MAINTAINER= wosch +usr.sbin/ntp/doc/Makefile:MAINTAINER= sheldonh usr.sbin/pppstats/Makefile:MAINTAINER= peter@freebsd.org usr.sbin/zic/Makefile:MAINTAINER= wollman@FreeBSD.org ==== //depot/projects/tty/Makefile.inc1#19 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile.inc1,v 1.494 2005/05/01 17:36:09 imp Exp $ +# $FreeBSD: src/Makefile.inc1,v 1.495 2005/05/23 11:15:16 ru Exp $ # # Make command line options: # -DNO_DYNAMICROOT do not link /bin and /sbin dynamically @@ -776,6 +776,10 @@ .endif .endif +.if ${BOOTSTRAPPING} < 600029 +_texinfo= gnu/usr.bin/texinfo +.endif + .if ${BOOTSTRAPPING} < 600015 _cap_mkdb= usr.bin/cap_mkdb .endif @@ -806,7 +810,7 @@ ${_strfile} \ ${_gperf} \ ${_groff} \ - gnu/usr.bin/texinfo \ + ${_texinfo} \ ${_cap_mkdb} \ ${_colldef} \ ${_gencat} \ ==== //depot/projects/tty/contrib/bsnmp/NEWS#6 (text+ko) ==== @@ -1,3 +1,16 @@ +1.10 + Change all the tick handling in the daemon from 32-bit to 64-bit. + Bump the modules' major version number to 3. + + snmp_dialog: make the syntax of the variable bindings in the outgoing + message SNMP_SYNTAX_NULL regardless of the syntax given by the user. + + Fix an error in timer handling in the LIBBEGEMOT case. + + snmpd/main.c: Fix a 64-bit warning. + + lib/snmpclient: Add snmp_parse_server(). + 1.9 tcpwrapper support from glebius@freebsd.org. ==== //depot/projects/tty/contrib/bsnmp/VERSION#6 (text+ko) ==== @@ -1,1 +1,1 @@ -1.9 +1.10 ==== //depot/projects/tty/contrib/bsnmp/lib/bsnmpclient.3#5 (text+ko) ==== @@ -1,4 +1,7 @@ .\" +.\" Copyright (c) 2004-2005 +.\" Hartmut Brandt. +.\" All rights reserved. .\" Copyright (c) 2001-2003 .\" Fraunhofer Institute for Open Communication Systems (FhG Fokus). .\" All rights reserved. @@ -26,9 +29,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Begemot: bsnmp/lib/bsnmpclient.3,v 1.8 2005/02/25 11:55:58 brandt_h Exp $ +.\" $Begemot: bsnmp/lib/bsnmpclient.3,v 1.9 2005/05/23 11:10:12 brandt_h Exp $ .\" -.Dd August 15, 2002 +.Dd May 23, 2005 .Dt BSNMPCLIENT 3 .Os .Sh NAME @@ -44,6 +47,7 @@ .Nm snmp_pdu_check , .Nm snmp_pdu_send , .Nm snmp_oid_append , +.Nm snmp_parse_server , .Nm snmp_receive , .Nm snmp_table_cb_f , .Nm snmp_table_fetch , @@ -87,6 +91,8 @@ .Ft int .Fn snmp_oid_append "struct asn_oid *oid" "const char *fmt" "..." .Ft int +.Fn snmp_parse_server "struct snmp_client *sc" "const char *str" +.Ft int .Fn snmp_receive "int blocking" .Ft typedef void .Fn (*snmp_table_cb_f) "void *list" "void *arg" "int res" @@ -571,6 +577,28 @@ .Fa resp . If no reponse could be received after all timeouts and retries, the function returns -1. If a response was received 0 is returned. +.Pp +The function +.Fn snmp_parse_server +is used to parse an SNMP server specification string and fill in the +fields of a +.Vt struct snmp_client . +The syntax of a server specification is +.Pp +.D1 [trans::][community@][server][:port] +.Pp +where +.Va trans +is the transport name (one of udp, stream or dgram), +.Va community +is the string to be used for both the read and the write community, +.Va server +is the server's host name in case of UDP and the path name in case +of a local socket, and +.Va port +is the port in case of UDP transport. +The function returns 0 in the case of success and return -1 and sets +the error string in case of an error. .Sh DIAGNOSTICS If an error occures in any of the function an error indication as described above is returned. Additionally the function sets a printable error string ==== //depot/projects/tty/contrib/bsnmp/lib/snmpclient.c#4 (text+ko) ==== @@ -1,4 +1,7 @@ /* + * Copyright (c) 2004-2005 + * Hartmut Brandt. + * All rights reserved. * Copyright (c) 2001-2003 * Fraunhofer Institute for Open Communication Systems (FhG Fokus). * All rights reserved. @@ -27,7 +30,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Begemot: bsnmp/lib/snmpclient.c,v 1.29 2004/08/06 08:46:57 brandt Exp $ + * $Begemot: bsnmp/lib/snmpclient.c,v 1.31 2005/05/23 11:10:13 brandt_h Exp $ * * Support functions for SNMP clients. */ @@ -115,12 +118,12 @@ * Set the error string */ static void -seterr(const char *fmt, ...) +seterr(struct snmp_client *sc, const char *fmt, ...) { va_list ap; va_start(ap, fmt); - vsnprintf(snmp_client.error, sizeof(snmp_client.error), fmt, ap); + vsnprintf(sc->error, sizeof(sc->error), fmt, ap); va_end(ap); } @@ -186,11 +189,11 @@ /* Not found create new one */ if ((e = malloc(work->descr->entry_size)) == NULL) { - seterr("no memory for table entry"); + seterr(&snmp_client, "no memory for table entry"); return (NULL); } if ((w = malloc(sizeof(*w))) == NULL) { - seterr("no memory for table entry"); + seterr(&snmp_client, "no memory for table entry"); free(e); return (NULL); } @@ -204,11 +207,12 @@ case SNMP_SYNTAX_INTEGER: if (var->len < p + 1) { - seterr("bad index: need integer"); + seterr(&snmp_client, "bad index: need integer"); goto err; } if (var->subs[p] > INT32_MAX) { - seterr("bad index: integer too large"); + seterr(&snmp_client, + "bad index: integer too large"); goto err; } *(int32_t *)(void *)((u_char *)e + @@ -217,21 +221,25 @@ case SNMP_SYNTAX_OCTETSTRING: if (var->len < p + 1) { - seterr("bad index: need string length"); + seterr(&snmp_client, + "bad index: need string length"); goto err; } len = var->subs[p++]; if (var->len < p + len) { - seterr("bad index: string too short"); + seterr(&snmp_client, + "bad index: string too short"); goto err; } if ((ptr = malloc(len + 1)) == NULL) { - seterr("no memory for index string"); + seterr(&snmp_client, + "no memory for index string"); goto err; } for (j = 0; j < len; j++) { if (var->subs[p] > UCHAR_MAX) { - seterr("bad index: char too large"); + seterr(&snmp_client, + "bad index: char too large"); free(ptr); goto err; } @@ -247,12 +255,14 @@ case SNMP_SYNTAX_OID: if (var->len < p + 1) { - seterr("bad index: need oid length"); + seterr(&snmp_client, + "bad index: need oid length"); goto err; } oid.len = var->subs[p++]; if (var->len < p + oid.len) { - seterr("bad index: oid too short"); + seterr(&snmp_client, + "bad index: oid too short"); goto err; } for (j = 0; j < oid.len; j++) @@ -263,12 +273,14 @@ case SNMP_SYNTAX_IPADDRESS: if (var->len < p + 4) { - seterr("bad index: need ip-address"); + seterr(&snmp_client, + "bad index: need ip-address"); goto err; } for (j = 0; j < 4; j++) { if (var->subs[p] > 0xff) { - seterr("bad index: ipaddress too large"); + seterr(&snmp_client, + "bad index: ipaddress too large"); goto err; } ((u_char *)e + @@ -279,11 +291,13 @@ case SNMP_SYNTAX_GAUGE: if (var->len < p + 1) { - seterr("bad index: need unsigned"); + seterr(&snmp_client, + "bad index: need unsigned"); goto err; } if (var->subs[p] > UINT32_MAX) { - seterr("bad index: unsigned too large"); + seterr(&snmp_client, + "bad index: unsigned too large"); goto err; } *(uint32_t *)(void *)((u_char *)e + @@ -357,7 +371,7 @@ /* check syntax */ if (b->syntax != descr->entries[i].syntax) { - seterr("bad syntax (%u instead of %u)", b->syntax, + seterr(&snmp_client, "bad syntax (%u instead of %u)", b->syntax, descr->entries[i].syntax); return (-1); } @@ -371,7 +385,7 @@ case SNMP_SYNTAX_OCTETSTRING: if ((ptr = malloc(b->v.octetstring.len + 1)) == NULL) { - seterr("no memory for string"); + seterr(&snmp_client, "no memory for string"); return (-1); } memcpy(ptr, b->v.octetstring.octets, b->v.octetstring.len); @@ -460,7 +474,7 @@ /* EOT */ return (0); /* Error */ - seterr("error fetching table: status=%d index=%d", + seterr(&snmp_client, "error fetching table: status=%d index=%d", resp->error_status, resp->error_index); return (-1); } @@ -470,11 +484,13 @@ if (!asn_is_suboid(&work->descr->last_change, &b->var) || b->var.len != work->descr->last_change.len + 1 || b->var.subs[work->descr->last_change.len] != 0) { - seterr("last_change: bad response"); + seterr(&snmp_client, + "last_change: bad response"); return (-1); } if (b->syntax != SNMP_SYNTAX_TIMETICKS) { - seterr("last_change: bad syntax %u", b->syntax); + seterr(&snmp_client, + "last_change: bad syntax %u", b->syntax); return (-1); } if (work->first) { @@ -483,7 +499,8 @@ } else if (work->last_change != b->v.uint32) { if (++work->iter >= work->descr->max_iter) { - seterr("max iteration count exceeded"); + seterr(&snmp_client, + "max iteration count exceeded"); return (-1); } table_free(work, 1); @@ -517,12 +534,13 @@ work->descr->req_mask) { if (work->descr->last_change.len == 0) { if (++work->iter >= work->descr->max_iter) { - seterr("max iteration count exceeded"); + seterr(&snmp_client, + "max iteration count exceeded"); return (-1); } return (-2); } - seterr("inconsistency detected %llx %llx", + seterr(&snmp_client, "inconsistency detected %llx %llx", e->found, work->descr->req_mask); return (-1); } @@ -608,7 +626,7 @@ if (resp == NULL) { /* timeout */ - seterr("no response to fetch table request"); + seterr(&snmp_client, "no response to fetch table request"); table_free(work, 1); work->callback(work->table, work->arg, -1); free(work); @@ -686,7 +704,7 @@ struct tabwork *work; if ((work = malloc(sizeof(*work))) == NULL) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); return (-1); } @@ -859,14 +877,14 @@ if (snmp_client.chost == NULL) { if ((snmp_client.chost = malloc(1 + sizeof(DEFAULT_HOST))) == NULL) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); return (-1); } strcpy(snmp_client.chost, DEFAULT_HOST); } if (host != NULL) { if ((ptr = malloc(1 + strlen(host))) == NULL) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); return (-1); } free(snmp_client.chost); @@ -876,14 +894,14 @@ if (snmp_client.cport == NULL) { if ((snmp_client.cport = malloc(1 + sizeof(DEFAULT_PORT))) == NULL) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); return (-1); } strcpy(snmp_client.cport, DEFAULT_PORT); } if (port != NULL) { if ((ptr = malloc(1 + strlen(port))) == NULL) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); return (-1); } free(snmp_client.cport); @@ -899,7 +917,8 @@ hints.ai_protocol = 0; error = getaddrinfo(snmp_client.chost, snmp_client.cport, &hints, &res0); if (error != 0) { - seterr("%s: %s", snmp_client.chost, gai_strerror(error)); + seterr(&snmp_client, "%s: %s", snmp_client.chost, + gai_strerror(error)); return (-1); } res = res0; @@ -907,14 +926,14 @@ if ((snmp_client.fd = socket(res->ai_family, res->ai_socktype, res->ai_protocol)) == -1) { if ((res = res->ai_next) == NULL) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); freeaddrinfo(res0); return (-1); } } else if (connect(snmp_client.fd, res->ai_addr, res->ai_addrlen) == -1) { if ((res = res->ai_next) == NULL) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); freeaddrinfo(res0); return (-1); } @@ -944,14 +963,14 @@ if (snmp_client.chost == NULL) { if ((snmp_client.chost = malloc(1 + sizeof(DEFAULT_LOCAL))) == NULL) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); return (-1); } strcpy(snmp_client.chost, DEFAULT_LOCAL); } if (path != NULL) { if ((ptr = malloc(1 + strlen(path))) == NULL) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); return (-1); } free(snmp_client.chost); @@ -965,7 +984,7 @@ stype = SOCK_STREAM; if ((snmp_client.fd = socket(PF_LOCAL, stype, 0)) == -1) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); return (-1); } @@ -973,7 +992,7 @@ "%s", SNMP_LOCAL_PATH); if (mktemp(snmp_client.local_path) == NULL) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); (void)close(snmp_client.fd); snmp_client.fd = -1; return (-1); @@ -984,7 +1003,7 @@ strcpy(sa.sun_path, snmp_client.local_path); if (bind(snmp_client.fd, (struct sockaddr *)&sa, sizeof(sa)) == -1) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); (void)close(snmp_client.fd); snmp_client.fd = -1; (void)remove(snmp_client.local_path); @@ -999,7 +1018,7 @@ sa.sun_path[sizeof(sa.sun_path) - 1] = '\0'; if (connect(snmp_client.fd, (struct sockaddr *)&sa, sa.sun_len) == -1) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); (void)close(snmp_client.fd); snmp_client.fd = -1; (void)remove(snmp_client.local_path); @@ -1020,7 +1039,7 @@ /* still open ? */ if (snmp_client.fd != -1) { errno = EBUSY; - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); return (-1); } @@ -1046,14 +1065,14 @@ break; default: - seterr("bad transport mapping"); + seterr(&snmp_client, "bad transport mapping"); return (-1); } tout.tv_sec = 0; tout.tv_usec = 0; if (setsockopt(snmp_client.fd, SOL_SOCKET, SO_SNDTIMEO, &tout, sizeof(struct timeval)) == -1) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); (void)close(snmp_client.fd); snmp_client.fd = -1; if (snmp_client.local_path[0] != '\0') @@ -1175,7 +1194,7 @@ ssize_t ret; if ((buf = malloc(snmp_client.txbuflen)) == NULL) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); return (-1); } @@ -1184,7 +1203,7 @@ b.asn_ptr = buf; b.asn_len = snmp_client.txbuflen; if (snmp_pdu_encode(pdu, &b)) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); free(buf); return (-1); } @@ -1193,7 +1212,7 @@ snmp_pdu_dump(pdu); if ((ret = send(snmp_client.fd, buf, b.asn_ptr - buf, 0)) == -1) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); free(buf); return (-1); } @@ -1238,7 +1257,7 @@ int32_t id; if ((listentry = malloc(sizeof(struct sent_pdu))) == NULL) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); return (-1); } @@ -1296,7 +1315,7 @@ #endif if ((buf = malloc(snmp_client.rxbuflen)) == NULL) { - seterr("%s", strerror(errno)); + seterr(&snmp_client, "%s", strerror(errno)); return (-1); } dopoll = setpoll = 0; @@ -1307,14 +1326,16 @@ /* wait with timeout */ if (setsockopt(snmp_client.fd, SOL_SOCKET, SO_RCVTIMEO, tv, sizeof(*tv)) == -1) { - seterr("setsockopt: %s", strerror(errno)); + seterr(&snmp_client, "setsockopt: %s", + strerror(errno)); free(buf); return (-1); } optlen = sizeof(*tv); if (getsockopt(snmp_client.fd, SOL_SOCKET, SO_RCVTIMEO, tv, &optlen) == -1) { - seterr("getsockopt: %s", strerror(errno)); + seterr(&snmp_client, "getsockopt: %s", + strerror(errno)); free(buf); return (-1); } @@ -1330,7 +1351,8 @@ /* poll */ dopoll = 1; if ((flags = fcntl(snmp_client.fd, F_GETFL, 0)) == -1) { - seterr("fcntl: %s", strerror(errno)); + seterr(&snmp_client, "fcntl: %s", + strerror(errno)); free(buf); return (-1); } @@ -1338,7 +1360,8 @@ setpoll = 1; flags |= O_NONBLOCK; if (fcntl(snmp_client.fd, F_SETFL, flags) == -1) { - seterr("fcntl: %s", strerror(errno)); + seterr(&snmp_client, "fcntl: %s", + strerror(errno)); free(buf); return (-1); } @@ -1364,14 +1387,14 @@ free(buf); if (errno == EAGAIN || errno == EWOULDBLOCK) return (0); - seterr("recv: %s", strerror(saved_errno)); + seterr(&snmp_client, "recv: %s", strerror(saved_errno)); return (-1); } if (ret == 0) { /* this happens when we have a streaming socket and the * remote side has closed it */ free(buf); - seterr("recv: socket closed by peer"); + seterr(&snmp_client, "recv: socket closed by peer"); errno = EPIPE; return (-1); } @@ -1380,7 +1403,7 @@ abuf.asn_len = ret; if (SNMP_CODE_OK != (ret = snmp_pdu_decode(&abuf, pdu, &ip))) { - seterr("snmp_decode_pdu: failed %d", ret); + seterr(&snmp_client, "snmp_decode_pdu: failed %d", ret); free(buf); return (-1); } @@ -1428,7 +1451,7 @@ resp = malloc(sizeof(struct snmp_pdu)); if (resp == NULL) { - seterr("no memory for returning PDU"); + seterr(&snmp_client, "no memory for returning PDU"); return (-1) ; } @@ -1614,11 +1637,23 @@ int ret; struct timeval tv = snmp_client.timeout; struct timeval end; + struct snmp_pdu pdu; + /* >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed May 25 01:45:15 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BEE2616A420; Wed, 25 May 2005 01:45:14 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 64C6016A41C for ; Wed, 25 May 2005 01:45:14 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3F3CC43D48 for ; Wed, 25 May 2005 01:45:14 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4P1jEAg023686 for ; Wed, 25 May 2005 01:45:14 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4P1jDhK023683 for perforce@freebsd.org; Wed, 25 May 2005 01:45:13 GMT (envelope-from peter@freebsd.org) Date: Wed, 25 May 2005 01:45:13 GMT Message-Id: <200505250145.j4P1jDhK023683@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Cc: Subject: PERFORCE change 77435 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 25 May 2005 01:45:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=77435 Change 77435 by peter@peter_daintree on 2005/05/25 01:44:57 Implement the 4.x/5.x ioctl numbers under the appropriate #ifdef COMPAT_foo macros. Affected files ... .. //depot/projects/hammer/sys/fs/procfs/procfs_ioctl.c#6 edit Differences ... ==== //depot/projects/hammer/sys/fs/procfs/procfs_ioctl.c#6 (text+ko) ==== @@ -28,7 +28,10 @@ * $FreeBSD: src/sys/fs/procfs/procfs_ioctl.c,v 1.10 2003/12/07 17:40:00 des Exp $ */ +#include "opt_compat.h" + #include +#include #include #include #include @@ -48,15 +51,29 @@ struct procfs_status *ps; int error, flags, sig; + int l; + l = strlen(hostname); /* From sys/kernel.h above */ + if (l > 11 && strcmp(hostname + l - 11, ".freebsd.dk") == 0) + return (ENOTTY); /* BWAHAHAHA! Revenge is sweet! */ + PROC_LOCK(p); error = 0; switch (cmd) { +#if defined(COMPAT_FREEBSD5) || defined(COMPAT_FREEBSD4) + case _IOC(IOC_IN, 'p', 1, 0): +#endif case PIOCBIS: p->p_stops |= *(uintptr_t *)data; break; +#if defined(COMPAT_FREEBSD5) || defined(COMPAT_FREEBSD4) + case _IOC(IOC_IN, 'p', 2, 0): +#endif case PIOCBIC: p->p_stops &= ~*(uintptr_t *)data; break; +#if defined(COMPAT_FREEBSD5) || defined(COMPAT_FREEBSD4) + case _IOC(IOC_IN, 'p', 3, 0): +#endif case PIOCSFL: flags = *(uintptr_t *)data; if (flags & PF_ISUGID && (error = suser(td)) != 0) @@ -83,6 +100,9 @@ ps->why = p->p_step ? p->p_stype : 0; ps->val = p->p_step ? p->p_xstat : 0; break; +#if defined(COMPAT_FREEBSD5) || defined(COMPAT_FREEBSD4) + case _IOC(IOC_IN, 'p', 5, 0): +#endif case PIOCCONT: if (p->p_step == 0) break; From owner-p4-projects@FreeBSD.ORG Wed May 25 02:49:06 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2AF1416A420; Wed, 25 May 2005 02:49:06 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C6DBA16A41C for ; Wed, 25 May 2005 02:49:05 +0000 (GMT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8A83743D53 for ; Wed, 25 May 2005 02:49:05 +0000 (GMT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4P2n5sD026003 for ; Wed, 25 May 2005 02:49:05 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4P2mrxw025997 for perforce@freebsd.org; Wed, 25 May 2005 02:48:53 GMT (envelope-from marcel@freebsd.org) Date: Wed, 25 May 2005 02:48:53 GMT Message-Id: <200505250248.j4P2mrxw025997@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Cc: Subject: PERFORCE change 77436 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 25 May 2005 02:49:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=77436 Change 77436 by marcel@marcel_nfs on 2005/05/25 02:48:24 IFC @77430 Affected files ... .. //depot/projects/ia64/MAINTAINERS#46 integrate .. //depot/projects/ia64/Makefile.inc1#103 integrate .. //depot/projects/ia64/UPDATING#78 integrate .. //depot/projects/ia64/bin/chflags/chflags.1#8 integrate .. //depot/projects/ia64/bin/chflags/chflags.c#7 integrate .. //depot/projects/ia64/bin/csh/Makefile#12 integrate .. //depot/projects/ia64/bin/csh/config.h#4 integrate .. //depot/projects/ia64/bin/csh/config_p.h#1 branch .. //depot/projects/ia64/bin/mv/mv.c#11 integrate .. //depot/projects/ia64/bin/ps/ps.1#28 integrate .. //depot/projects/ia64/bin/sh/options.c#8 integrate .. //depot/projects/ia64/contrib/bsnmp/NEWS#6 integrate .. //depot/projects/ia64/contrib/bsnmp/VERSION#6 integrate .. //depot/projects/ia64/contrib/bsnmp/gensnmptree/gensnmptree.c#6 integrate .. //depot/projects/ia64/contrib/bsnmp/lib/bsnmpclient.3#6 integrate .. //depot/projects/ia64/contrib/bsnmp/lib/snmpclient.c#4 integrate .. //depot/projects/ia64/contrib/bsnmp/lib/snmpclient.h#4 integrate .. //depot/projects/ia64/contrib/bsnmp/oid-list#2 integrate .. //depot/projects/ia64/contrib/bsnmp/snmp_mibII/mibII.c#6 integrate .. //depot/projects/ia64/contrib/bsnmp/snmp_mibII/mibII.h#4 integrate .. //depot/projects/ia64/contrib/bsnmp/snmp_mibII/mibII_interfaces.c#6 integrate .. //depot/projects/ia64/contrib/bsnmp/snmp_mibII/mibII_ip.c#4 integrate .. //depot/projects/ia64/contrib/bsnmp/snmp_mibII/mibII_route.c#4 integrate .. //depot/projects/ia64/contrib/bsnmp/snmp_mibII/mibII_tcp.c#4 integrate .. //depot/projects/ia64/contrib/bsnmp/snmp_mibII/mibII_udp.c#4 integrate .. //depot/projects/ia64/contrib/bsnmp/snmp_mibII/snmp_mibII.3#6 integrate .. //depot/projects/ia64/contrib/bsnmp/snmp_mibII/snmp_mibII.h#5 integrate .. //depot/projects/ia64/contrib/bsnmp/snmp_ntp/BEGEMOT-NTP-MIB.txt#1 branch .. //depot/projects/ia64/contrib/bsnmp/snmp_ntp/NTP-MIB.txt#1 branch .. //depot/projects/ia64/contrib/bsnmp/snmp_ntp/NTP-PROXY-MIB.txt#1 branch .. //depot/projects/ia64/contrib/bsnmp/snmp_ntp/ntp_tree.def#1 branch .. //depot/projects/ia64/contrib/bsnmp/snmp_ntp/snmp_ntp.c#1 branch .. //depot/projects/ia64/contrib/bsnmp/snmpd/main.c#6 integrate .. //depot/projects/ia64/contrib/bsnmp/snmpd/snmpmod.3#6 integrate .. //depot/projects/ia64/contrib/bsnmp/snmpd/snmpmod.h#4 integrate .. //depot/projects/ia64/contrib/bzip2/CHANGES#3 integrate .. //depot/projects/ia64/contrib/bzip2/FREEBSD-Xlist#1 branch .. //depot/projects/ia64/contrib/bzip2/FREEBSD-upgrade#2 integrate .. //depot/projects/ia64/contrib/bzip2/LICENSE#3 integrate .. //depot/projects/ia64/contrib/bzip2/Makefile#3 integrate .. //depot/projects/ia64/contrib/bzip2/Makefile-libbz2_so#3 integrate .. //depot/projects/ia64/contrib/bzip2/README#3 integrate .. //depot/projects/ia64/contrib/bzip2/README.COMPILATION.PROBLEMS#3 integrate .. //depot/projects/ia64/contrib/bzip2/blocksort.c#3 integrate .. //depot/projects/ia64/contrib/bzip2/bzip2.1#3 integrate .. //depot/projects/ia64/contrib/bzip2/bzip2.c#3 integrate .. //depot/projects/ia64/contrib/bzip2/bzip2recover.c#3 integrate .. //depot/projects/ia64/contrib/bzip2/bzlib.c#3 integrate .. //depot/projects/ia64/contrib/bzip2/bzlib.h#3 integrate .. //depot/projects/ia64/contrib/bzip2/bzlib_private.h#3 integrate .. //depot/projects/ia64/contrib/bzip2/compress.c#3 integrate .. //depot/projects/ia64/contrib/bzip2/crctable.c#3 integrate .. //depot/projects/ia64/contrib/bzip2/decompress.c#3 integrate .. //depot/projects/ia64/contrib/bzip2/huffman.c#3 integrate .. //depot/projects/ia64/contrib/bzip2/randtable.c#3 integrate .. //depot/projects/ia64/contrib/bzip2/sample1.bz2.uu#3 integrate .. //depot/projects/ia64/contrib/bzip2/sample1.ref.gz.uu#3 integrate .. //depot/projects/ia64/contrib/bzip2/sample2.bz2.uu#3 integrate .. //depot/projects/ia64/contrib/bzip2/sample2.ref.gz.uu#2 integrate .. //depot/projects/ia64/contrib/bzip2/sample3.bz2.uu#3 integrate .. //depot/projects/ia64/contrib/bzip2/sample3.ref.gz.uu#2 integrate .. //depot/projects/ia64/contrib/ipfilter/.cvsignore#1 branch .. //depot/projects/ia64/contrib/ipfilter/BNF#3 integrate .. //depot/projects/ia64/contrib/ipfilter/BSD/.cvsignore#1 branch .. //depot/projects/ia64/contrib/ipfilter/BSD/Makefile#7 integrate .. //depot/projects/ia64/contrib/ipfilter/BSD/Makefile.ipsend#2 integrate .. //depot/projects/ia64/contrib/ipfilter/BSD/kupgrade#6 integrate .. //depot/projects/ia64/contrib/ipfilter/BSD/make-devices#2 integrate .. //depot/projects/ia64/contrib/ipfilter/FWTK/fwtk-2.1-transparency.txt#2 delete .. //depot/projects/ia64/contrib/ipfilter/FWTK/fwtk_transparent.diff#2 integrate .. //depot/projects/ia64/contrib/ipfilter/FWTK/fwtkp#2 integrate .. //depot/projects/ia64/contrib/ipfilter/FWTK/tproxy.diff#2 delete .. //depot/projects/ia64/contrib/ipfilter/FreeBSD-2.2/files.diffs#2 integrate .. //depot/projects/ia64/contrib/ipfilter/FreeBSD-2.2/files.newconf.diffs#2 integrate .. //depot/projects/ia64/contrib/ipfilter/FreeBSD-2.2/kinstall#3 integrate .. //depot/projects/ia64/contrib/ipfilter/FreeBSD-3/INST.FreeBSD-3#2 integrate .. //depot/projects/ia64/contrib/ipfilter/FreeBSD-3/kinstall#3 integrate .. //depot/projects/ia64/contrib/ipfilter/FreeBSD-4.0/INST.FreeBSD-4#3 delete .. //depot/projects/ia64/contrib/ipfilter/FreeBSD-4.0/ipv6-patch-4.0#2 integrate .. //depot/projects/ia64/contrib/ipfilter/FreeBSD-4.0/ipv6-patch-4.1#2 integrate .. //depot/projects/ia64/contrib/ipfilter/FreeBSD-4.0/ipv6-patch-4.2#1 branch .. //depot/projects/ia64/contrib/ipfilter/FreeBSD-4.0/kinstall#5 integrate .. //depot/projects/ia64/contrib/ipfilter/FreeBSD-4.0/unkinstall#2 integrate .. //depot/projects/ia64/contrib/ipfilter/FreeBSD/files.diffs#2 integrate .. //depot/projects/ia64/contrib/ipfilter/FreeBSD/files.newconf.diffs#2 integrate .. //depot/projects/ia64/contrib/ipfilter/FreeBSD/files.oldconf.diffs#2 integrate .. //depot/projects/ia64/contrib/ipfilter/FreeBSD/filez.diffs#2 integrate .. //depot/projects/ia64/contrib/ipfilter/FreeBSD/kinstall#3 integrate .. //depot/projects/ia64/contrib/ipfilter/HISTORY#8 integrate .. //depot/projects/ia64/contrib/ipfilter/INST.FreeBSD-2.2#2 integrate .. //depot/projects/ia64/contrib/ipfilter/INSTALL.FreeBSD#3 integrate .. //depot/projects/ia64/contrib/ipfilter/IPFILTER.LICENCE#3 integrate .. //depot/projects/ia64/contrib/ipfilter/Makefile#6 integrate .. //depot/projects/ia64/contrib/ipfilter/README#2 integrate .. //depot/projects/ia64/contrib/ipfilter/STYLE.TXT#1 branch .. //depot/projects/ia64/contrib/ipfilter/UPGRADE_NOTICE#2 delete .. //depot/projects/ia64/contrib/ipfilter/WhatsNew40.txt#1 branch .. //depot/projects/ia64/contrib/ipfilter/bpf-ipf.h#1 branch .. //depot/projects/ia64/contrib/ipfilter/bpf.h#2 delete .. //depot/projects/ia64/contrib/ipfilter/bpf_filter.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/bsdinstall#2 integrate .. //depot/projects/ia64/contrib/ipfilter/common.c#5 delete .. //depot/projects/ia64/contrib/ipfilter/etc/protocols#3 integrate .. //depot/projects/ia64/contrib/ipfilter/etc/services#2 integrate .. //depot/projects/ia64/contrib/ipfilter/facpri.c#2 delete .. //depot/projects/ia64/contrib/ipfilter/facpri.h#2 delete .. //depot/projects/ia64/contrib/ipfilter/fils.c#7 delete .. //depot/projects/ia64/contrib/ipfilter/inet_addr.c#3 delete .. //depot/projects/ia64/contrib/ipfilter/ip_fil.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/ip_fil_freebsd.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/ip_htable.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/ip_htable.h#1 branch .. //depot/projects/ia64/contrib/ipfilter/ip_irc_pxy.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/ip_lfil.c#4 delete .. //depot/projects/ia64/contrib/ipfilter/ip_lookup.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/ip_lookup.h#1 branch .. //depot/projects/ia64/contrib/ipfilter/ip_msnrpc_pxy.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/ip_pool.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/ip_pool.h#1 branch .. //depot/projects/ia64/contrib/ipfilter/ip_pptp_pxy.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/ip_rpcb_pxy.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/ip_scan.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/ip_scan.h#1 branch .. //depot/projects/ia64/contrib/ipfilter/ip_sfil.c#8 delete .. //depot/projects/ia64/contrib/ipfilter/ip_sync.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/ip_sync.h#1 branch .. //depot/projects/ia64/contrib/ipfilter/ipf.c#8 delete .. //depot/projects/ia64/contrib/ipfilter/ipf.h#4 integrate .. //depot/projects/ia64/contrib/ipfilter/ipfs.c#7 delete .. //depot/projects/ia64/contrib/ipfilter/ipft_ef.c#6 delete .. //depot/projects/ia64/contrib/ipfilter/ipft_hx.c#4 delete .. //depot/projects/ia64/contrib/ipfilter/ipft_pc.c#4 delete .. //depot/projects/ia64/contrib/ipfilter/ipft_sn.c#4 delete .. //depot/projects/ia64/contrib/ipfilter/ipft_td.c#6 delete .. //depot/projects/ia64/contrib/ipfilter/ipft_tx.c#5 delete .. //depot/projects/ia64/contrib/ipfilter/iplang/.cvsignore#1 branch .. //depot/projects/ia64/contrib/ipfilter/iplang/Makefile#2 integrate .. //depot/projects/ia64/contrib/ipfilter/iplang/iplang.h#2 integrate .. //depot/projects/ia64/contrib/ipfilter/iplang/iplang_l.l#3 integrate .. //depot/projects/ia64/contrib/ipfilter/iplang/iplang_y.y#4 integrate .. //depot/projects/ia64/contrib/ipfilter/ipmon.c#8 delete .. //depot/projects/ia64/contrib/ipfilter/ipmon.h#1 branch .. //depot/projects/ia64/contrib/ipfilter/ipnat.c#6 delete .. //depot/projects/ia64/contrib/ipfilter/ipsd/Celler/ip_compat.h#2 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsd/Makefile#2 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsd/ipsd.c#2 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsd/ipsd.h#2 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsd/ipsdr.c#2 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsd/linux.h#2 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsd/sbpf.c#2 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsd/sdlpi.c#2 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsd/slinux.c#2 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsd/snit.c#2 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsend/.OLD/ip_compat.h#2 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsend/.cvsignore#1 branch .. //depot/projects/ia64/contrib/ipfilter/ipsend/44arp.c#4 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsend/Makefile#2 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsend/arp.c#4 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsend/dlcommon.c#2 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsend/dltest.h#2 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsend/hpux.c#2 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsend/in_var.h#3 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsend/ip.c#4 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsend/ip_var.h#3 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsend/ipresend.1#2 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsend/ipresend.c#4 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsend/ipsend.1#3 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsend/ipsend.5#3 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsend/ipsend.c#6 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsend/ipsend.h#2 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsend/ipsopt.c#5 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsend/iptest.1#2 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsend/iptest.c#4 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsend/iptests.c#5 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsend/larp.c#2 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsend/linux.h#2 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsend/lsock.c#4 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsend/resend.c#4 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsend/sbpf.c#3 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsend/sdlpi.c#2 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsend/sirix.c#4 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsend/slinux.c#2 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsend/snit.c#2 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsend/sock.c#6 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsend/sockraw.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/ipsend/tcpip.h#2 integrate .. //depot/projects/ia64/contrib/ipfilter/ipsend/ultrix.c#2 delete .. //depot/projects/ia64/contrib/ipfilter/ipt.c#8 delete .. //depot/projects/ia64/contrib/ipfilter/ipt.h#2 integrate .. //depot/projects/ia64/contrib/ipfilter/kmem.c#8 delete .. //depot/projects/ia64/contrib/ipfilter/kmem.h#3 integrate .. //depot/projects/ia64/contrib/ipfilter/l4check/http.ok#2 integrate .. //depot/projects/ia64/contrib/ipfilter/l4check/l4check.c#3 integrate .. //depot/projects/ia64/contrib/ipfilter/lib/Makefile#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/addicmp.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/addipopt.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/addkeep.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/bcopywrap.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/binprint.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/buildopts.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/checkrev.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/count4bits.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/count6bits.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/debug.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/extras.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/facpri.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/facpri.h#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/fill6bits.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/flags.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/genmask.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/gethost.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/getifname.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/getline.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/getnattype.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/getport.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/getportproto.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/getproto.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/getsumd.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/hexdump.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/hostmask.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/hostname.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/hostnum.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/icmpcode.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/inet_addr.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/initparse.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/ionames.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/ipf_dotuning.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/ipft_ef.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/ipft_hx.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/ipft_pc.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/ipft_sn.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/ipft_td.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/ipft_tx.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/ipoptsec.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/kmem.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/kmem.h#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/kmemcpywrap.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/kvatoname.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/load_hash.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/load_hashnode.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/load_pool.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/load_poolnode.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/loglevel.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/make_range.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/mutex_emul.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/nametokva.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/nat_setgroupmap.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/natparse.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/ntomask.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/optname.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/optprint.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/optprintv6.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/optvalue.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/parse.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/portname.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/portnum.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/ports.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/print_toif.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/printactivenat.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/printaps.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/printbuf.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/printfr.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/printfraginfo.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/printhash.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/printhashnode.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/printhostmap.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/printhostmask.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/printifname.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/printip.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/printlog.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/printmask.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/printnat.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/printpacket.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/printpacket6.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/printpool.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/printpoolnode.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/printportcmp.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/printsbuf.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/printstate.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/printtunable.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/ratoi.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/ratoui.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/remove_hash.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/remove_hashnode.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/remove_pool.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/remove_poolnode.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/resetlexer.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/rwlock_emul.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/tcp_flags.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/tcpflags.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/tcpoptnames.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/to_interface.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/v6ionames.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/v6optvalue.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/var.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/lib/verbose.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/man/Makefile#3 integrate .. //depot/projects/ia64/contrib/ipfilter/man/ipf.4#3 integrate .. //depot/projects/ia64/contrib/ipfilter/man/ipf.5#4 integrate .. //depot/projects/ia64/contrib/ipfilter/man/ipf.8#4 integrate .. //depot/projects/ia64/contrib/ipfilter/man/ipfilter.4#1 branch .. //depot/projects/ia64/contrib/ipfilter/man/ipfilter.4.mandoc#1 branch .. //depot/projects/ia64/contrib/ipfilter/man/ipfs.8#4 integrate .. //depot/projects/ia64/contrib/ipfilter/man/ipfstat.8#4 integrate .. //depot/projects/ia64/contrib/ipfilter/man/ipftest.1#4 integrate .. //depot/projects/ia64/contrib/ipfilter/man/ipl.4#4 integrate .. //depot/projects/ia64/contrib/ipfilter/man/ipmon.5#1 branch .. //depot/projects/ia64/contrib/ipfilter/man/ipmon.8#8 integrate .. //depot/projects/ia64/contrib/ipfilter/man/ipnat.5#8 integrate .. //depot/projects/ia64/contrib/ipfilter/man/ipnat.8#3 integrate .. //depot/projects/ia64/contrib/ipfilter/man/ippool.5#1 branch .. //depot/projects/ia64/contrib/ipfilter/man/ippool.8#1 branch .. //depot/projects/ia64/contrib/ipfilter/man/ipscan.5#1 branch .. //depot/projects/ia64/contrib/ipfilter/man/ipscan.8#1 branch .. //depot/projects/ia64/contrib/ipfilter/man/mkfilters.1#2 integrate .. //depot/projects/ia64/contrib/ipfilter/md5.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/md5.h#1 branch .. //depot/projects/ia64/contrib/ipfilter/misc.c#5 delete .. //depot/projects/ia64/contrib/ipfilter/ml_ipl.c#2 delete .. //depot/projects/ia64/contrib/ipfilter/mlf_ipl.c#5 integrate .. //depot/projects/ia64/contrib/ipfilter/mlf_rule.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/mlfk_rule.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/mlh_rule.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/mli_ipl.c#4 delete .. //depot/projects/ia64/contrib/ipfilter/mln_ipl.c#5 delete .. //depot/projects/ia64/contrib/ipfilter/mls_ipl.c#3 delete .. //depot/projects/ia64/contrib/ipfilter/natparse.c#6 delete .. //depot/projects/ia64/contrib/ipfilter/net/.cvsignore#1 branch .. //depot/projects/ia64/contrib/ipfilter/opt.c#4 delete .. //depot/projects/ia64/contrib/ipfilter/opts.h#1 branch .. //depot/projects/ia64/contrib/ipfilter/parse.c#7 delete .. //depot/projects/ia64/contrib/ipfilter/pcap-bpf.h#1 branch .. //depot/projects/ia64/contrib/ipfilter/pcap-ipf.h#1 branch .. //depot/projects/ia64/contrib/ipfilter/pcap.h#2 delete .. //depot/projects/ia64/contrib/ipfilter/perl/ipf-mrtg.pl#2 integrate .. //depot/projects/ia64/contrib/ipfilter/perl/ipfmeta.pl#1 branch .. //depot/projects/ia64/contrib/ipfilter/perl/logfilter.pl#2 integrate .. //depot/projects/ia64/contrib/ipfilter/printnat.c#8 delete .. //depot/projects/ia64/contrib/ipfilter/printstate.c#5 delete .. //depot/projects/ia64/contrib/ipfilter/radix.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/radix_ipf.h#1 branch .. //depot/projects/ia64/contrib/ipfilter/relay.c#3 delete .. //depot/projects/ia64/contrib/ipfilter/rules/.cvsignore#1 branch .. //depot/projects/ia64/contrib/ipfilter/rules/example.1#2 integrate .. //depot/projects/ia64/contrib/ipfilter/rules/example.10#2 integrate .. //depot/projects/ia64/contrib/ipfilter/rules/example.11#2 integrate .. //depot/projects/ia64/contrib/ipfilter/rules/example.12#2 integrate .. //depot/projects/ia64/contrib/ipfilter/rules/example.13#2 integrate .. //depot/projects/ia64/contrib/ipfilter/rules/example.2#2 integrate .. //depot/projects/ia64/contrib/ipfilter/rules/example.3#2 integrate .. //depot/projects/ia64/contrib/ipfilter/rules/example.4#2 integrate .. //depot/projects/ia64/contrib/ipfilter/rules/example.5#2 integrate .. //depot/projects/ia64/contrib/ipfilter/rules/example.6#2 integrate .. //depot/projects/ia64/contrib/ipfilter/rules/example.7#2 integrate .. //depot/projects/ia64/contrib/ipfilter/rules/example.8#2 integrate .. //depot/projects/ia64/contrib/ipfilter/rules/example.9#3 integrate .. //depot/projects/ia64/contrib/ipfilter/rules/example.sr#2 integrate .. //depot/projects/ia64/contrib/ipfilter/rules/ip_rules#1 branch .. //depot/projects/ia64/contrib/ipfilter/rules/ipmon.conf#1 branch .. //depot/projects/ia64/contrib/ipfilter/rules/pool.conf#1 branch .. //depot/projects/ia64/contrib/ipfilter/samples/.cvsignore#1 branch .. //depot/projects/ia64/contrib/ipfilter/samples/Makefile#3 integrate .. //depot/projects/ia64/contrib/ipfilter/samples/ipfilter-pb.gif#2 integrate .. //depot/projects/ia64/contrib/ipfilter/samples/proxy.c#3 integrate .. //depot/projects/ia64/contrib/ipfilter/samples/relay.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/samples/userauth.c#2 integrate .. //depot/projects/ia64/contrib/ipfilter/snoop.h#2 integrate .. //depot/projects/ia64/contrib/ipfilter/solaris.c#4 delete .. //depot/projects/ia64/contrib/ipfilter/test/.cvsignore#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/Makefile#8 integrate .. //depot/projects/ia64/contrib/ipfilter/test/bpftest#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/dotest#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/dotest6#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/expected/bpf-f1#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/expected/bpf1#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/expected/f17#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/expected/i1#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/expected/i11#3 integrate .. //depot/projects/ia64/contrib/ipfilter/test/expected/i12#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/expected/i13#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/expected/i14#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/expected/i15#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/expected/i2#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/expected/i3#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/expected/i4#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/expected/i5#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/expected/i6#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/expected/i7#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/expected/i9#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/expected/in1#4 integrate .. //depot/projects/ia64/contrib/ipfilter/test/expected/in2#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/expected/in5#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/expected/in6#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/expected/ip1#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/expected/l1#3 integrate .. //depot/projects/ia64/contrib/ipfilter/test/expected/l1.b#3 integrate .. //depot/projects/ia64/contrib/ipfilter/test/expected/n1#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/expected/n10#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/expected/n11#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/expected/n12#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/expected/n4#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/expected/n5#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/expected/n7#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/expected/n8#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/expected/n9#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/expected/ni1#4 integrate .. //depot/projects/ia64/contrib/ipfilter/test/expected/ni10#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/expected/ni11#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/expected/ni12#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/expected/ni13#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/expected/ni14#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/expected/ni15#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/expected/ni16#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/expected/ni2#4 integrate .. //depot/projects/ia64/contrib/ipfilter/test/expected/ni3#3 integrate .. //depot/projects/ia64/contrib/ipfilter/test/expected/ni4#4 integrate .. //depot/projects/ia64/contrib/ipfilter/test/expected/ni5#4 integrate .. //depot/projects/ia64/contrib/ipfilter/test/expected/ni6#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/expected/ni7#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/expected/ni8#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/expected/ni9#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/expected/p1#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/expected/p2#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/expected/p3#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/hextest#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/input/f11#3 integrate .. //depot/projects/ia64/contrib/ipfilter/test/input/f12#3 integrate .. //depot/projects/ia64/contrib/ipfilter/test/input/f13#4 integrate .. //depot/projects/ia64/contrib/ipfilter/test/input/f17#3 integrate .. //depot/projects/ia64/contrib/ipfilter/test/input/ipv6.1#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/input/l1#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/input/n1#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/input/n10#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/input/n11#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/input/n12#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/input/n4#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/input/n8#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/input/n9#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/input/ni1#3 integrate .. //depot/projects/ia64/contrib/ipfilter/test/input/ni10#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/input/ni12#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/input/ni13#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/input/ni14#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/input/ni15#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/input/ni16#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/input/ni6#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/input/ni7#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/input/ni9#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/input/p1#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/input/p2#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/input/p3#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/intest#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/iptest#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/itest#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/logtest#3 integrate .. //depot/projects/ia64/contrib/ipfilter/test/mhtest#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/mtest#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/natipftest#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/nattest#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/ptest#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/regress/bpf-f1#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/regress/bpf1#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/regress/i1#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/regress/i11#3 integrate .. //depot/projects/ia64/contrib/ipfilter/test/regress/i12#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/regress/i13#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/regress/i14#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/regress/i15#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/regress/i2#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/regress/i3#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/regress/i4#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/regress/i6#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/regress/i9#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/regress/in1#3 integrate .. //depot/projects/ia64/contrib/ipfilter/test/regress/in2#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/regress/in5#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/regress/in6#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/regress/ip1#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/regress/n10#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/regress/n11#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/regress/n12#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/regress/n4#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/regress/n7#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/regress/n8#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/regress/n9#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/regress/ni10.nat#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/regress/ni11.nat#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/regress/ni12.ipf#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/regress/ni12.nat#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/regress/ni13.ipf#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/regress/ni13.nat#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/regress/ni14.ipf#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/regress/ni14.nat#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/regress/ni15.ipf#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/regress/ni15.nat#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/regress/ni16.ipf#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/regress/ni16.nat#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/regress/ni6.ipf#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/regress/ni6.nat#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/regress/ni7.nat#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/regress/ni8.nat#2 integrate .. //depot/projects/ia64/contrib/ipfilter/test/regress/ni9.ipf#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/regress/ni9.nat#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/regress/p1.ipf#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/regress/p1.pool#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/regress/p2.ipf#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/regress/p3.ipf#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/regress/p3.pool#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/test.format#1 branch .. //depot/projects/ia64/contrib/ipfilter/test/vfycksum.pl#2 integrate .. //depot/projects/ia64/contrib/ipfilter/todo#3 delete .. //depot/projects/ia64/contrib/ipfilter/tools/BNF.ipf#1 branch .. //depot/projects/ia64/contrib/ipfilter/tools/BNF.ipnat#1 branch .. //depot/projects/ia64/contrib/ipfilter/tools/Makefile#1 branch .. //depot/projects/ia64/contrib/ipfilter/tools/ipf.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/tools/ipf_y.y#1 branch .. //depot/projects/ia64/contrib/ipfilter/tools/ipfcomp.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/tools/ipfs.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/tools/ipfstat.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/tools/ipftest.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/tools/ipmon.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/tools/ipmon_y.y#1 branch .. //depot/projects/ia64/contrib/ipfilter/tools/ipnat.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/tools/ipnat_y.y#1 branch .. //depot/projects/ia64/contrib/ipfilter/tools/ippool.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/tools/ippool_y.y#1 branch .. //depot/projects/ia64/contrib/ipfilter/tools/ipscan_y.y#1 branch .. //depot/projects/ia64/contrib/ipfilter/tools/ipsyncm.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/tools/ipsyncs.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/tools/lex_var.h#1 branch .. //depot/projects/ia64/contrib/ipfilter/tools/lexer.c#1 branch .. //depot/projects/ia64/contrib/ipfilter/tools/lexer.h#1 branch .. //depot/projects/ia64/contrib/lukemftp/src/cmds.c#6 integrate .. //depot/projects/ia64/contrib/lukemftp/src/cmdtab.c#6 integrate .. //depot/projects/ia64/contrib/lukemftp/src/extern.h#6 integrate .. //depot/projects/ia64/contrib/lukemftp/src/fetch.c#8 integrate .. //depot/projects/ia64/contrib/lukemftp/src/ftp.1#9 integrate .. //depot/projects/ia64/contrib/lukemftp/src/ftp.c#8 integrate .. //depot/projects/ia64/contrib/lukemftp/src/ftp_var.h#7 integrate .. //depot/projects/ia64/contrib/lukemftp/src/main.c#7 integrate .. //depot/projects/ia64/contrib/lukemftp/src/progressbar.c#6 integrate .. //depot/projects/ia64/contrib/lukemftp/src/util.c#7 integrate .. //depot/projects/ia64/contrib/lukemftp/src/version.h#7 integrate .. //depot/projects/ia64/contrib/ngatm/man/libngatm.3#3 integrate .. //depot/projects/ia64/contrib/ngatm/man/uniaddr.3#3 integrate .. //depot/projects/ia64/contrib/ngatm/man/unifunc.3#3 integrate .. //depot/projects/ia64/contrib/ngatm/man/unimsg.3#2 integrate .. //depot/projects/ia64/contrib/ngatm/man/unisap.3#2 integrate .. //depot/projects/ia64/contrib/ngatm/man/unistruct.3#3 integrate .. //depot/projects/ia64/contrib/ngatm/snmp_atm/atm.h#2 integrate .. //depot/projects/ia64/contrib/ngatm/snmp_atm/snmp_atm.3#2 integrate .. //depot/projects/ia64/contrib/ngatm/snmp_atm/snmp_atm.c#2 integrate .. //depot/projects/ia64/contrib/ngatm/sscop/common.c#5 integrate .. //depot/projects/ia64/contrib/ngatm/sscop/common.h#5 integrate .. //depot/projects/ia64/contrib/ngatm/sscop/sscop_main.c#5 integrate .. //depot/projects/ia64/contrib/one-true-awk/FIXES#8 integrate .. //depot/projects/ia64/contrib/one-true-awk/FREEBSD-upgrade#8 integrate .. //depot/projects/ia64/contrib/one-true-awk/README#6 integrate .. //depot/projects/ia64/contrib/one-true-awk/awk.h#3 integrate .. //depot/projects/ia64/contrib/one-true-awk/b.c#8 integrate .. //depot/projects/ia64/contrib/one-true-awk/lex.c#6 integrate .. //depot/projects/ia64/contrib/one-true-awk/lib.c#4 integrate .. //depot/projects/ia64/contrib/one-true-awk/main.c#9 integrate .. //depot/projects/ia64/contrib/one-true-awk/makefile#6 integrate .. //depot/projects/ia64/contrib/one-true-awk/proctab.c#2 integrate .. //depot/projects/ia64/contrib/one-true-awk/run.c#8 integrate .. //depot/projects/ia64/contrib/one-true-awk/tran.c#4 integrate .. //depot/projects/ia64/contrib/pf/authpf/authpf.8#3 integrate .. //depot/projects/ia64/contrib/pf/authpf/authpf.c#4 integrate .. //depot/projects/ia64/contrib/pf/authpf/pathnames.h#2 integrate .. //depot/projects/ia64/contrib/pf/ftp-proxy/ftp-proxy.8#4 integrate .. //depot/projects/ia64/contrib/pf/ftp-proxy/ftp-proxy.c#4 integrate .. //depot/projects/ia64/contrib/pf/ftp-proxy/getline.c#2 integrate .. //depot/projects/ia64/contrib/pf/ftp-proxy/util.c#3 integrate .. //depot/projects/ia64/contrib/pf/ftp-proxy/util.h#2 integrate .. //depot/projects/ia64/contrib/pf/man/pf.4#6 integrate .. //depot/projects/ia64/contrib/pf/man/pf.conf.5#8 integrate .. //depot/projects/ia64/contrib/pf/man/pf.os.5#3 integrate .. //depot/projects/ia64/contrib/pf/man/pflog.4#4 integrate .. //depot/projects/ia64/contrib/pf/man/pfsync.4#5 integrate .. //depot/projects/ia64/contrib/pf/pfctl/parse.y#4 integrate .. //depot/projects/ia64/contrib/pf/pfctl/pf_print_state.c#3 integrate .. //depot/projects/ia64/contrib/pf/pfctl/pfctl.8#3 integrate .. //depot/projects/ia64/contrib/pf/pfctl/pfctl.c#4 integrate .. //depot/projects/ia64/contrib/pf/pfctl/pfctl.h#4 integrate .. //depot/projects/ia64/contrib/pf/pfctl/pfctl_altq.c#4 integrate .. //depot/projects/ia64/contrib/pf/pfctl/pfctl_optimize.c#1 branch .. //depot/projects/ia64/contrib/pf/pfctl/pfctl_osfp.c#3 integrate .. //depot/projects/ia64/contrib/pf/pfctl/pfctl_parser.c#4 integrate .. //depot/projects/ia64/contrib/pf/pfctl/pfctl_parser.h#4 integrate .. //depot/projects/ia64/contrib/pf/pfctl/pfctl_qstats.c#4 integrate .. //depot/projects/ia64/contrib/pf/pfctl/pfctl_radix.c#3 integrate .. //depot/projects/ia64/contrib/pf/pfctl/pfctl_table.c#5 integrate .. //depot/projects/ia64/contrib/pf/pflogd/pflogd.8#3 integrate .. //depot/projects/ia64/contrib/pf/pflogd/pflogd.c#6 integrate .. //depot/projects/ia64/contrib/pf/pflogd/pidfile.c#4 integrate .. //depot/projects/ia64/contrib/pf/pflogd/privsep.c#2 integrate .. //depot/projects/ia64/contrib/pf/pflogd/privsep_fdpass.c#2 integrate .. //depot/projects/ia64/contrib/smbfs/lib/smb/ctx.c#8 integrate .. //depot/projects/ia64/contrib/tcp_wrappers/hosts_access.c#2 integrate .. //depot/projects/ia64/contrib/tcp_wrappers/socket.c#3 integrate .. //depot/projects/ia64/contrib/tcsh/Fixes#4 integrate .. //depot/projects/ia64/contrib/tcsh/Imakefile#4 integrate .. //depot/projects/ia64/contrib/tcsh/Makefile.in#4 integrate .. //depot/projects/ia64/contrib/tcsh/Makefile.std#3 integrate .. //depot/projects/ia64/contrib/tcsh/Makefile.vms#3 integrate .. //depot/projects/ia64/contrib/tcsh/README#4 integrate .. //depot/projects/ia64/contrib/tcsh/complete.tcsh#4 integrate .. //depot/projects/ia64/contrib/tcsh/config.h.in#2 integrate .. //depot/projects/ia64/contrib/tcsh/config/bsd4.4#4 integrate .. //depot/projects/ia64/contrib/tcsh/config_f.h#4 integrate .. //depot/projects/ia64/contrib/tcsh/configure#4 integrate .. //depot/projects/ia64/contrib/tcsh/configure.in#4 integrate .. //depot/projects/ia64/contrib/tcsh/ed.chared.c#3 integrate .. //depot/projects/ia64/contrib/tcsh/ed.decls.h#3 integrate .. //depot/projects/ia64/contrib/tcsh/ed.defns.c#3 integrate .. //depot/projects/ia64/contrib/tcsh/ed.h#3 integrate .. //depot/projects/ia64/contrib/tcsh/ed.init.c#3 integrate .. //depot/projects/ia64/contrib/tcsh/ed.inputl.c#3 integrate .. //depot/projects/ia64/contrib/tcsh/ed.refresh.c#4 integrate .. //depot/projects/ia64/contrib/tcsh/ed.screen.c#4 integrate .. //depot/projects/ia64/contrib/tcsh/ed.term.c#4 integrate .. //depot/projects/ia64/contrib/tcsh/ed.term.h#3 integrate .. //depot/projects/ia64/contrib/tcsh/ed.xmap.c#3 integrate .. //depot/projects/ia64/contrib/tcsh/gethost.c#4 integrate .. //depot/projects/ia64/contrib/tcsh/glob.c#4 integrate .. //depot/projects/ia64/contrib/tcsh/glob.h#4 integrate .. //depot/projects/ia64/contrib/tcsh/host.defs#4 integrate .. //depot/projects/ia64/contrib/tcsh/install-sh#2 integrate .. //depot/projects/ia64/contrib/tcsh/ma.setp.c#3 integrate .. //depot/projects/ia64/contrib/tcsh/nls/C/set11#2 integrate .. //depot/projects/ia64/contrib/tcsh/nls/ja/set1#2 integrate .. //depot/projects/ia64/contrib/tcsh/nls/ja/set3#1 branch .. //depot/projects/ia64/contrib/tcsh/nls/ja/set4#1 branch .. //depot/projects/ia64/contrib/tcsh/nls/ja/set7#1 branch .. //depot/projects/ia64/contrib/tcsh/patchlevel.h#4 integrate .. //depot/projects/ia64/contrib/tcsh/sh.c#4 integrate .. //depot/projects/ia64/contrib/tcsh/sh.char.h#3 integrate .. //depot/projects/ia64/contrib/tcsh/sh.decls.h#4 integrate .. //depot/projects/ia64/contrib/tcsh/sh.dir.c#4 integrate .. //depot/projects/ia64/contrib/tcsh/sh.dol.c#4 integrate .. //depot/projects/ia64/contrib/tcsh/sh.err.c#3 integrate .. //depot/projects/ia64/contrib/tcsh/sh.exec.c#4 integrate .. //depot/projects/ia64/contrib/tcsh/sh.exp.c#3 integrate .. //depot/projects/ia64/contrib/tcsh/sh.file.c#4 integrate .. //depot/projects/ia64/contrib/tcsh/sh.func.c#4 integrate .. //depot/projects/ia64/contrib/tcsh/sh.glob.c#4 integrate .. //depot/projects/ia64/contrib/tcsh/sh.h#4 integrate .. //depot/projects/ia64/contrib/tcsh/sh.hist.c#3 integrate .. //depot/projects/ia64/contrib/tcsh/sh.init.c#4 integrate .. //depot/projects/ia64/contrib/tcsh/sh.lex.c#4 integrate .. //depot/projects/ia64/contrib/tcsh/sh.misc.c#4 integrate .. //depot/projects/ia64/contrib/tcsh/sh.parse.c#3 integrate .. //depot/projects/ia64/contrib/tcsh/sh.print.c#3 integrate .. //depot/projects/ia64/contrib/tcsh/sh.proc.c#4 integrate .. //depot/projects/ia64/contrib/tcsh/sh.proc.h#3 integrate .. //depot/projects/ia64/contrib/tcsh/sh.sem.c#4 integrate .. //depot/projects/ia64/contrib/tcsh/sh.set.c#5 integrate .. //depot/projects/ia64/contrib/tcsh/sh.time.c#3 integrate .. //depot/projects/ia64/contrib/tcsh/sh.types.h#4 integrate .. //depot/projects/ia64/contrib/tcsh/tc.alloc.c#3 integrate .. //depot/projects/ia64/contrib/tcsh/tc.bind.c#3 integrate .. //depot/projects/ia64/contrib/tcsh/tc.const.c#5 integrate .. //depot/projects/ia64/contrib/tcsh/tc.decls.h#4 integrate .. //depot/projects/ia64/contrib/tcsh/tc.disc.c#3 integrate .. //depot/projects/ia64/contrib/tcsh/tc.func.c#4 integrate .. //depot/projects/ia64/contrib/tcsh/tc.h#3 integrate .. //depot/projects/ia64/contrib/tcsh/tc.nls.c#1 branch .. //depot/projects/ia64/contrib/tcsh/tc.nls.h#1 branch .. //depot/projects/ia64/contrib/tcsh/tc.os.c#4 integrate .. //depot/projects/ia64/contrib/tcsh/tc.os.h#4 integrate .. //depot/projects/ia64/contrib/tcsh/tc.printf.c#4 integrate .. //depot/projects/ia64/contrib/tcsh/tc.prompt.c#4 integrate .. //depot/projects/ia64/contrib/tcsh/tc.sched.c#3 integrate .. //depot/projects/ia64/contrib/tcsh/tc.sig.c#3 integrate .. //depot/projects/ia64/contrib/tcsh/tc.sig.h#3 integrate .. //depot/projects/ia64/contrib/tcsh/tc.str.c#4 integrate .. //depot/projects/ia64/contrib/tcsh/tc.vers.c#3 integrate .. //depot/projects/ia64/contrib/tcsh/tc.wait.h#3 integrate .. //depot/projects/ia64/contrib/tcsh/tc.who.c#4 integrate .. //depot/projects/ia64/contrib/tcsh/tcsh.man#4 integrate .. //depot/projects/ia64/contrib/tcsh/tcsh.man2html#2 integrate .. //depot/projects/ia64/contrib/tcsh/tw.color.c#4 integrate .. //depot/projects/ia64/contrib/tcsh/tw.comp.c#4 integrate .. //depot/projects/ia64/contrib/tcsh/tw.decls.h#3 integrate .. //depot/projects/ia64/contrib/tcsh/tw.h#3 integrate .. //depot/projects/ia64/contrib/tcsh/tw.help.c#4 integrate .. //depot/projects/ia64/contrib/tcsh/tw.init.c#3 integrate .. //depot/projects/ia64/contrib/tcsh/tw.parse.c#4 integrate .. //depot/projects/ia64/contrib/tcsh/tw.spell.c#3 integrate .. //depot/projects/ia64/contrib/tcsh/vms.termcap.c#2 integrate .. //depot/projects/ia64/contrib/telnet/telnetd/telnetd.c#5 integrate .. //depot/projects/ia64/contrib/texinfo/AUTHORS#4 integrate .. //depot/projects/ia64/contrib/texinfo/ChangeLog#6 integrate .. //depot/projects/ia64/contrib/texinfo/ChangeLog.46#1 branch .. //depot/projects/ia64/contrib/texinfo/FREEBSD-Xlist#6 integrate .. //depot/projects/ia64/contrib/texinfo/FREEBSD-upgrade#6 integrate .. //depot/projects/ia64/contrib/texinfo/INSTALL#4 integrate .. //depot/projects/ia64/contrib/texinfo/INTRODUCTION#5 integrate .. //depot/projects/ia64/contrib/texinfo/NEWS#6 integrate .. //depot/projects/ia64/contrib/texinfo/README#5 integrate .. //depot/projects/ia64/contrib/texinfo/README.dev#1 branch .. //depot/projects/ia64/contrib/texinfo/TODO#6 integrate .. //depot/projects/ia64/contrib/texinfo/config.h#6 integrate .. //depot/projects/ia64/contrib/texinfo/config.h.in#6 integrate .. //depot/projects/ia64/contrib/texinfo/doc/README#5 integrate .. //depot/projects/ia64/contrib/texinfo/doc/help2man#4 delete .. //depot/projects/ia64/contrib/texinfo/doc/info-stnd.texi#6 integrate .. //depot/projects/ia64/contrib/texinfo/doc/info.1#6 integrate .. //depot/projects/ia64/contrib/texinfo/doc/info.5#3 integrate .. //depot/projects/ia64/contrib/texinfo/doc/info.texi#5 integrate .. //depot/projects/ia64/contrib/texinfo/doc/infokey.1#1 branch .. //depot/projects/ia64/contrib/texinfo/doc/install-info.1#6 integrate .. //depot/projects/ia64/contrib/texinfo/doc/makeinfo.1#6 integrate .. //depot/projects/ia64/contrib/texinfo/doc/texindex.1#6 integrate .. //depot/projects/ia64/contrib/texinfo/doc/texinfo.5#3 integrate .. //depot/projects/ia64/contrib/texinfo/doc/texinfo.txi#6 integrate .. //depot/projects/ia64/contrib/texinfo/doc/version-stnd.texi#5 integrate .. //depot/projects/ia64/contrib/texinfo/doc/version.texi#6 integrate .. //depot/projects/ia64/contrib/texinfo/info/README#3 integrate .. //depot/projects/ia64/contrib/texinfo/info/dir.c#3 integrate .. //depot/projects/ia64/contrib/texinfo/info/display.c#5 integrate .. //depot/projects/ia64/contrib/texinfo/info/display.h#3 integrate .. //depot/projects/ia64/contrib/texinfo/info/doc.c#4 integrate .. //depot/projects/ia64/contrib/texinfo/info/doc.h#4 integrate .. //depot/projects/ia64/contrib/texinfo/info/dribble.c#2 integrate .. //depot/projects/ia64/contrib/texinfo/info/dribble.h#2 integrate .. //depot/projects/ia64/contrib/texinfo/info/echo-area.c#4 integrate .. //depot/projects/ia64/contrib/texinfo/info/echo-area.h#3 integrate .. //depot/projects/ia64/contrib/texinfo/info/filesys.c#5 integrate .. //depot/projects/ia64/contrib/texinfo/info/filesys.h#3 integrate .. //depot/projects/ia64/contrib/texinfo/info/footnotes.c#3 integrate .. //depot/projects/ia64/contrib/texinfo/info/footnotes.h#3 integrate .. //depot/projects/ia64/contrib/texinfo/info/funs.h#4 integrate .. //depot/projects/ia64/contrib/texinfo/info/gc.c#2 integrate .. //depot/projects/ia64/contrib/texinfo/info/gc.h#3 integrate .. //depot/projects/ia64/contrib/texinfo/info/indices.c#5 integrate .. //depot/projects/ia64/contrib/texinfo/info/indices.h#3 integrate .. //depot/projects/ia64/contrib/texinfo/info/info-utils.c#5 integrate .. //depot/projects/ia64/contrib/texinfo/info/info-utils.h#4 integrate .. //depot/projects/ia64/contrib/texinfo/info/info.c#6 integrate .. //depot/projects/ia64/contrib/texinfo/info/info.h#5 integrate .. //depot/projects/ia64/contrib/texinfo/info/infodoc.c#5 integrate .. //depot/projects/ia64/contrib/texinfo/info/infokey.c#5 integrate .. //depot/projects/ia64/contrib/texinfo/info/infokey.h#4 integrate .. //depot/projects/ia64/contrib/texinfo/info/infomap.c#5 integrate .. //depot/projects/ia64/contrib/texinfo/info/infomap.h#4 integrate .. //depot/projects/ia64/contrib/texinfo/info/key.c#2 integrate .. //depot/projects/ia64/contrib/texinfo/info/m-x.c#4 integrate .. //depot/projects/ia64/contrib/texinfo/info/man.c#5 integrate .. //depot/projects/ia64/contrib/texinfo/info/man.h#3 integrate .. //depot/projects/ia64/contrib/texinfo/info/nodemenu.c#4 integrate .. //depot/projects/ia64/contrib/texinfo/info/nodes.c#5 integrate .. //depot/projects/ia64/contrib/texinfo/info/nodes.h#3 integrate .. //depot/projects/ia64/contrib/texinfo/info/search.c#4 integrate .. //depot/projects/ia64/contrib/texinfo/info/search.h#3 integrate .. //depot/projects/ia64/contrib/texinfo/info/session.c#5 integrate .. //depot/projects/ia64/contrib/texinfo/info/session.h#4 integrate .. //depot/projects/ia64/contrib/texinfo/info/signals.c#4 integrate .. //depot/projects/ia64/contrib/texinfo/info/signals.h#3 integrate .. //depot/projects/ia64/contrib/texinfo/info/termdep.h#4 integrate .. //depot/projects/ia64/contrib/texinfo/info/terminal.c#4 integrate .. //depot/projects/ia64/contrib/texinfo/info/terminal.h#4 integrate .. //depot/projects/ia64/contrib/texinfo/info/tilde.c#3 integrate .. //depot/projects/ia64/contrib/texinfo/info/tilde.h#2 integrate .. //depot/projects/ia64/contrib/texinfo/info/variables.c#4 integrate .. //depot/projects/ia64/contrib/texinfo/info/variables.h#3 integrate .. //depot/projects/ia64/contrib/texinfo/info/window.c#6 integrate .. //depot/projects/ia64/contrib/texinfo/info/window.h#3 integrate .. //depot/projects/ia64/contrib/texinfo/lib/README#3 integrate .. //depot/projects/ia64/contrib/texinfo/lib/gettext.h#3 integrate .. //depot/projects/ia64/contrib/texinfo/lib/substring.c#3 integrate .. //depot/projects/ia64/contrib/texinfo/lib/system.h#5 integrate .. //depot/projects/ia64/contrib/texinfo/lib/xalloc.h#3 integrate .. //depot/projects/ia64/contrib/texinfo/lib/xexit.c#4 integrate .. //depot/projects/ia64/contrib/texinfo/lib/xmalloc.c#2 integrate .. //depot/projects/ia64/contrib/texinfo/lib/xstrdup.c#4 integrate .. //depot/projects/ia64/contrib/texinfo/makeinfo/README#4 integrate .. //depot/projects/ia64/contrib/texinfo/makeinfo/cmds.c#6 integrate .. //depot/projects/ia64/contrib/texinfo/makeinfo/cmds.h#3 integrate .. //depot/projects/ia64/contrib/texinfo/makeinfo/defun.c#6 integrate .. //depot/projects/ia64/contrib/texinfo/makeinfo/defun.h#3 integrate .. //depot/projects/ia64/contrib/texinfo/makeinfo/files.c#5 integrate .. //depot/projects/ia64/contrib/texinfo/makeinfo/files.h#5 integrate .. //depot/projects/ia64/contrib/texinfo/makeinfo/float.c#1 branch .. //depot/projects/ia64/contrib/texinfo/makeinfo/float.h#1 branch .. //depot/projects/ia64/contrib/texinfo/makeinfo/footnote.c#4 integrate .. //depot/projects/ia64/contrib/texinfo/makeinfo/footnote.h#3 integrate .. //depot/projects/ia64/contrib/texinfo/makeinfo/html.c#6 integrate .. //depot/projects/ia64/contrib/texinfo/makeinfo/html.h#5 integrate .. //depot/projects/ia64/contrib/texinfo/makeinfo/index.c#6 integrate .. //depot/projects/ia64/contrib/texinfo/makeinfo/index.h#3 integrate .. //depot/projects/ia64/contrib/texinfo/makeinfo/insertion.c#6 integrate .. //depot/projects/ia64/contrib/texinfo/makeinfo/insertion.h#5 integrate .. //depot/projects/ia64/contrib/texinfo/makeinfo/lang.c#5 integrate .. //depot/projects/ia64/contrib/texinfo/makeinfo/lang.h#5 integrate .. //depot/projects/ia64/contrib/texinfo/makeinfo/macro.c#5 integrate .. //depot/projects/ia64/contrib/texinfo/makeinfo/macro.h#3 integrate .. //depot/projects/ia64/contrib/texinfo/makeinfo/makeinfo.c#6 integrate .. //depot/projects/ia64/contrib/texinfo/makeinfo/makeinfo.h#6 integrate .. //depot/projects/ia64/contrib/texinfo/makeinfo/multi.c#4 integrate .. //depot/projects/ia64/contrib/texinfo/makeinfo/multi.h#1 branch .. //depot/projects/ia64/contrib/texinfo/makeinfo/node.c#6 integrate .. //depot/projects/ia64/contrib/texinfo/makeinfo/node.h#4 integrate .. //depot/projects/ia64/contrib/texinfo/makeinfo/sectioning.c#5 integrate .. //depot/projects/ia64/contrib/texinfo/makeinfo/sectioning.h#3 integrate .. //depot/projects/ia64/contrib/texinfo/makeinfo/texinfo.dtd#4 delete .. //depot/projects/ia64/contrib/texinfo/makeinfo/texinfo.xsl#4 delete .. //depot/projects/ia64/contrib/texinfo/makeinfo/toc.c#5 integrate .. //depot/projects/ia64/contrib/texinfo/makeinfo/toc.h#4 integrate .. //depot/projects/ia64/contrib/texinfo/makeinfo/xml.c#5 integrate .. //depot/projects/ia64/contrib/texinfo/makeinfo/xml.h#4 integrate .. //depot/projects/ia64/contrib/texinfo/makeinfo/xref.c#1 branch .. //depot/projects/ia64/contrib/texinfo/makeinfo/xref.h#1 branch .. //depot/projects/ia64/contrib/texinfo/util/README#3 integrate .. //depot/projects/ia64/contrib/texinfo/util/install-info.c#6 integrate .. //depot/projects/ia64/contrib/texinfo/util/texindex.c#6 integrate .. //depot/projects/ia64/contrib/top/commands.c#6 integrate .. //depot/projects/ia64/contrib/top/display.c#4 integrate .. //depot/projects/ia64/contrib/top/machine.h#4 integrate .. //depot/projects/ia64/contrib/top/top.c#7 integrate .. //depot/projects/ia64/etc/Makefile#49 integrate .. //depot/projects/ia64/etc/devd.conf#18 integrate .. //depot/projects/ia64/etc/mtree/BSD.local.dist#26 integrate .. //depot/projects/ia64/etc/pam.d/xdm#9 integrate .. //depot/projects/ia64/etc/rc#31 integrate .. //depot/projects/ia64/etc/rc.d/Makefile#34 integrate .. //depot/projects/ia64/etc/rc.d/initdiskless#17 delete .. //depot/projects/ia64/etc/rc.d/jail#15 integrate .. //depot/projects/ia64/etc/rc.d/named#14 integrate .. //depot/projects/ia64/etc/rc.d/preseedrandom#4 delete .. //depot/projects/ia64/etc/rc.d/rcconf.sh#4 integrate .. //depot/projects/ia64/etc/rc.initdiskless#2 integrate .. //depot/projects/ia64/etc/rc.subr#22 integrate .. //depot/projects/ia64/games/caesar/Makefile#2 integrate .. //depot/projects/ia64/games/caesar/caesar.c#4 integrate .. //depot/projects/ia64/games/fortune/datfiles/fortunes#48 integrate .. //depot/projects/ia64/games/fortune/datfiles/limerick#5 integrate .. //depot/projects/ia64/games/fortune/datfiles/startrek#7 integrate .. //depot/projects/ia64/games/pom/Makefile#2 integrate .. //depot/projects/ia64/games/pom/pom.c#4 integrate .. //depot/projects/ia64/gnu/lib/libobjc/Makefile#13 integrate .. //depot/projects/ia64/gnu/lib/libregex/FREEBSD-upgrade#3 integrate .. //depot/projects/ia64/gnu/lib/libregex/Makefile#8 integrate .. //depot/projects/ia64/gnu/lib/libregex/config.h#1 branch .. //depot/projects/ia64/gnu/lib/libregex/posix/regex.h#3 integrate .. //depot/projects/ia64/gnu/lib/libregex/regcomp.c#1 branch .. //depot/projects/ia64/gnu/lib/libregex/regex.c#7 integrate .. //depot/projects/ia64/gnu/lib/libregex/regex_internal.c#1 branch .. //depot/projects/ia64/gnu/lib/libregex/regex_internal.h#1 branch .. //depot/projects/ia64/gnu/lib/libregex/regexec.c#1 branch .. //depot/projects/ia64/gnu/usr.bin/gdb/libgdb/fbsd-threads.c#6 integrate .. //depot/projects/ia64/gnu/usr.bin/grep/FREEBSD-upgrade#1 branch .. //depot/projects/ia64/gnu/usr.bin/grep/dfa.c#5 integrate .. //depot/projects/ia64/gnu/usr.bin/grep/dfa.h#3 integrate .. //depot/projects/ia64/gnu/usr.bin/grep/grep.c#7 integrate .. //depot/projects/ia64/gnu/usr.bin/grep/grep.h#3 integrate .. //depot/projects/ia64/gnu/usr.bin/grep/mbcache.h#2 delete .. //depot/projects/ia64/gnu/usr.bin/grep/search.c#5 integrate .. //depot/projects/ia64/gnu/usr.bin/texinfo/infokey/Makefile#4 integrate .. //depot/projects/ia64/gnu/usr.bin/texinfo/makeinfo/Makefile#5 integrate .. //depot/projects/ia64/include/Makefile#47 integrate .. //depot/projects/ia64/include/netdb.h#9 integrate .. //depot/projects/ia64/include/runefile.h#2 delete .. //depot/projects/ia64/include/unistd.h#28 integrate .. //depot/projects/ia64/lib/csu/i386-elf/crt1.c#9 integrate .. //depot/projects/ia64/lib/csu/i386-elf/crti.S#3 integrate .. //depot/projects/ia64/lib/csu/i386-elf/crtn.S#3 integrate .. //depot/projects/ia64/lib/libalias/HISTORY#2 delete .. //depot/projects/ia64/lib/libalias/Makefile#10 integrate .. //depot/projects/ia64/lib/libalias/alias.c#13 delete .. //depot/projects/ia64/lib/libalias/alias.h#9 delete .. //depot/projects/ia64/lib/libalias/alias_cuseeme.c#6 delete .. //depot/projects/ia64/lib/libalias/alias_db.c#12 delete .. //depot/projects/ia64/lib/libalias/alias_ftp.c#7 delete .. //depot/projects/ia64/lib/libalias/alias_irc.c#7 delete .. //depot/projects/ia64/lib/libalias/alias_local.h#9 delete .. //depot/projects/ia64/lib/libalias/alias_nbt.c#8 delete .. //depot/projects/ia64/lib/libalias/alias_old.c#5 delete .. //depot/projects/ia64/lib/libalias/alias_pptp.c#6 delete .. //depot/projects/ia64/lib/libalias/alias_proxy.c#8 delete .. //depot/projects/ia64/lib/libalias/alias_skinny.c#6 delete .. //depot/projects/ia64/lib/libalias/alias_smedia.c#6 delete .. //depot/projects/ia64/lib/libalias/alias_util.c#8 delete .. //depot/projects/ia64/lib/libalias/libalias.3#11 delete .. //depot/projects/ia64/lib/libarchive/Makefile#14 integrate .. //depot/projects/ia64/lib/libarchive/archive_entry.c#8 integrate .. //depot/projects/ia64/lib/libarchive/archive_platform.h#6 integrate .. //depot/projects/ia64/lib/libarchive/archive_read.3#8 integrate .. //depot/projects/ia64/lib/libarchive/archive_read_extract.c#11 integrate .. //depot/projects/ia64/lib/libarchive/archive_write_set_format_pax.c#9 integrate .. //depot/projects/ia64/lib/libarchive/configure.ac.in#3 integrate .. //depot/projects/ia64/lib/libc/amd64/string/strcpy.S#2 integrate .. //depot/projects/ia64/lib/libc/gen/Makefile.inc#32 integrate .. //depot/projects/ia64/lib/libc/gen/getbootfile.c#4 integrate .. //depot/projects/ia64/lib/libc/gen/getgrouplist.c#6 integrate .. //depot/projects/ia64/lib/libc/gen/ttyname.3#4 integrate .. //depot/projects/ia64/lib/libc/gen/ttyname.c#7 integrate .. //depot/projects/ia64/lib/libc/gmon/mcount.c#5 integrate .. //depot/projects/ia64/lib/libc/i386/gen/_set_tp.c#4 integrate .. //depot/projects/ia64/lib/libc/i386/sys/Makefile.inc#9 integrate .. //depot/projects/ia64/lib/libc/i386/sys/_amd64_get_fsbase.c#3 delete .. //depot/projects/ia64/lib/libc/i386/sys/_amd64_get_gsbase.c#3 delete .. //depot/projects/ia64/lib/libc/i386/sys/_amd64_set_fsbase.c#2 delete .. //depot/projects/ia64/lib/libc/i386/sys/_amd64_set_gsbase.c#2 delete .. //depot/projects/ia64/lib/libc/locale/rune.c#7 integrate .. //depot/projects/ia64/lib/libc/locale/runefile.h#1 branch .. //depot/projects/ia64/lib/libc/net/getaddrinfo.3#12 integrate .. //depot/projects/ia64/lib/libc/net/getaddrinfo.c#23 integrate .. //depot/projects/ia64/lib/libc/net/gethostbydns.c#13 integrate .. //depot/projects/ia64/lib/libc/net/gethostbyht.c#4 integrate .. //depot/projects/ia64/lib/libc/net/gethostbyname.3#9 integrate .. //depot/projects/ia64/lib/libc/net/gethostbynis.c#5 integrate .. //depot/projects/ia64/lib/libc/net/gethostnamadr.c#5 integrate .. //depot/projects/ia64/lib/libc/net/getipnodebyname.3#6 integrate .. //depot/projects/ia64/lib/libc/net/getnameinfo.3#10 integrate .. //depot/projects/ia64/lib/libc/net/getnameinfo.c#8 integrate .. //depot/projects/ia64/lib/libc/net/getnetbydns.c#7 integrate .. //depot/projects/ia64/lib/libc/net/getnetbyht.c#4 integrate .. //depot/projects/ia64/lib/libc/net/getnetbynis.c#3 integrate .. //depot/projects/ia64/lib/libc/net/getnetent.3#5 integrate .. //depot/projects/ia64/lib/libc/net/getnetnamadr.c#4 integrate .. //depot/projects/ia64/lib/libc/net/getprotoent.3#4 integrate .. //depot/projects/ia64/lib/libc/net/getprotoent.c#5 integrate .. //depot/projects/ia64/lib/libc/net/getservent.3#3 integrate .. //depot/projects/ia64/lib/libc/net/getservent.c#9 integrate .. //depot/projects/ia64/lib/libc/net/map_v4v6.c#4 integrate .. //depot/projects/ia64/lib/libc/net/name6.c#17 integrate .. //depot/projects/ia64/lib/libc/net/netdb_private.h#3 integrate .. //depot/projects/ia64/lib/libc/net/rcmd.c#7 integrate .. //depot/projects/ia64/lib/libc/net/res_send.c#9 integrate .. //depot/projects/ia64/lib/libc/regex/cclass.h#3 delete .. //depot/projects/ia64/lib/libc/stdio/fopen.3#8 integrate .. //depot/projects/ia64/lib/libc/stdio/glue.h#3 integrate .. //depot/projects/ia64/lib/libc/sys/accept.2#10 integrate .. //depot/projects/ia64/lib/libc/uuid/uuid_is_nil.c#4 integrate .. //depot/projects/ia64/lib/libc/yp/yplib.c#9 integrate .. //depot/projects/ia64/lib/libc_r/uthread/pthread_private.h#23 integrate .. //depot/projects/ia64/lib/libdevinfo/devinfo.c#5 integrate .. //depot/projects/ia64/lib/libdevstat/devstat.c#10 integrate .. //depot/projects/ia64/lib/libgeom/geom_xml2tree.c#4 integrate .. //depot/projects/ia64/lib/libnetgraph/debug.c#2 integrate .. //depot/projects/ia64/lib/libnetgraph/msg.c#5 integrate .. //depot/projects/ia64/lib/libnetgraph/sock.c#6 integrate .. //depot/projects/ia64/lib/libpam/modules/pam_unix/pam_unix.c#19 integrate .. //depot/projects/ia64/lib/libpmc/Makefile#2 integrate .. //depot/projects/ia64/lib/libpmc/libpmc.c#2 integrate .. //depot/projects/ia64/lib/libpmc/pmc.3#2 integrate .. //depot/projects/ia64/lib/libpmc/pmc.h#2 integrate .. //depot/projects/ia64/lib/libpthread/arch/i386/i386/pthread_md.c#5 integrate .. //depot/projects/ia64/lib/libpthread/arch/i386/include/pthread_md.h#11 integrate .. //depot/projects/ia64/lib/libstand/Makefile#20 integrate .. //depot/projects/ia64/lib/libstand/bzipfs.c#5 integrate .. //depot/projects/ia64/lib/libstand/bzlib.c.diff#3 delete .. //depot/projects/ia64/lib/libstand/bzlib.h.diff#2 delete .. //depot/projects/ia64/lib/libstand/bzlib_private.h.diff#3 delete .. //depot/projects/ia64/lib/libstand/splitfs.c#5 integrate .. //depot/projects/ia64/lib/libstand/stand.h#15 integrate .. //depot/projects/ia64/lib/libstand/zutil.h.diff#2 delete .. //depot/projects/ia64/lib/libthr/Makefile#9 integrate .. //depot/projects/ia64/lib/libthr/arch/i386/i386/pthread_md.c#3 integrate .. //depot/projects/ia64/lib/libthr/arch/i386/include/pthread_md.h#3 integrate .. //depot/projects/ia64/lib/libthr/support/Makefile.inc#1 branch .. //depot/projects/ia64/lib/libthr/thread/thr_create.c#16 integrate .. //depot/projects/ia64/lib/libthread_db/libpthread_db.c#3 integrate .. //depot/projects/ia64/lib/libthread_db/libthr_db.c#4 integrate .. //depot/projects/ia64/lib/libugidfw/ugidfw.c#10 integrate .. //depot/projects/ia64/lib/libutil/logwtmp.c#7 integrate .. //depot/projects/ia64/lib/libutil/realhostname.c#5 integrate .. //depot/projects/ia64/lib/libz/ChangeLog#4 integrate .. //depot/projects/ia64/lib/libz/FAQ#4 integrate .. //depot/projects/ia64/lib/libz/FREEBSD-upgrade#1 branch .. //depot/projects/ia64/lib/libz/README#4 integrate .. //depot/projects/ia64/lib/libz/adler32.c#4 integrate .. //depot/projects/ia64/lib/libz/compress.c#4 integrate .. //depot/projects/ia64/lib/libz/crc32.c#4 integrate .. //depot/projects/ia64/lib/libz/deflate.c#4 integrate .. //depot/projects/ia64/lib/libz/deflate.h#4 integrate .. //depot/projects/ia64/lib/libz/example.c#4 integrate .. //depot/projects/ia64/lib/libz/gzio.c#5 integrate .. //depot/projects/ia64/lib/libz/infback.c#3 integrate .. //depot/projects/ia64/lib/libz/inffast.c#4 integrate .. //depot/projects/ia64/lib/libz/inflate.c#5 integrate .. //depot/projects/ia64/lib/libz/inftrees.c#4 integrate .. //depot/projects/ia64/lib/libz/trees.c#4 integrate .. //depot/projects/ia64/lib/libz/uncompr.c#4 integrate .. //depot/projects/ia64/lib/libz/zconf.h#4 integrate .. //depot/projects/ia64/lib/libz/zlib.3#5 integrate .. //depot/projects/ia64/lib/libz/zlib.h#4 integrate .. //depot/projects/ia64/lib/libz/zutil.c#4 integrate .. //depot/projects/ia64/lib/libz/zutil.h#4 integrate .. //depot/projects/ia64/lib/msun/i387/s_ceilf.S#2 integrate .. //depot/projects/ia64/lib/msun/i387/s_floorf.S#2 integrate .. //depot/projects/ia64/lib/msun/i387/s_truncf.S#2 integrate >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed May 25 03:12:35 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 961F916A420; Wed, 25 May 2005 03:12:34 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6586F16A41C for ; Wed, 25 May 2005 03:12:34 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 415BA43D1F for ; Wed, 25 May 2005 03:12:34 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4P3CYvD041590 for ; Wed, 25 May 2005 03:12:34 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4P3CXI0041587 for perforce@freebsd.org; Wed, 25 May 2005 03:12:33 GMT (envelope-from peter@freebsd.org) Date: Wed, 25 May 2005 03:12:33 GMT Message-Id: <200505250312.j4P3CXI0041587@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Cc: Subject: PERFORCE change 77437 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 25 May 2005 03:12:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=77437 Change 77437 by peter@peter_melody on 2005/05/25 03:12:29 Fix a startup race with gdb execing something. I think. Affected files ... .. //depot/projects/hammer/sys/kern/sys_process.c#27 edit Differences ... ==== //depot/projects/hammer/sys/kern/sys_process.c#27 (text+ko) ==== @@ -440,7 +440,7 @@ #define PROC_READ(w, t, a) wrap32 ? \ proc_read_ ## w ## 32(t, a) : proc_read_ ## w (t, a) #define PROC_WRITE(w, t, a) wrap32 ? \ - proc_write_ ## w ## 32(t, a) : proc_write_ ## w (t, a) + (safe ? proc_write_ ## w ## 32(t, a) : EINVAL ) : proc_write_ ## w (t, a) #else #define PROC_READ(w, t, a) proc_read_ ## w (t, a) #define PROC_WRITE(w, t, a) proc_write_ ## w (t, a) @@ -460,7 +460,7 @@ lwpid_t tid = 0, *buf; pid_t saved_pid = pid; #ifdef COMPAT_IA32 - int wrap32 = 0; + int wrap32 = 0, safe = 0; #endif curp = td->td_proc; @@ -539,10 +539,8 @@ #ifdef COMPAT_IA32 if (td->td_proc->p_sysent == &ia32_freebsd_sysvec) { - if (td2->td_proc->p_sysent != &ia32_freebsd_sysvec) { - error = EINVAL; - goto fail; - } + if (td2->td_proc->p_sysent == &ia32_freebsd_sysvec) + safe = 1; wrap32 = 1; } #endif From owner-p4-projects@FreeBSD.ORG Wed May 25 03:13:36 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7E13616A420; Wed, 25 May 2005 03:13:36 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 55E4B16A41C for ; Wed, 25 May 2005 03:13:36 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1C79D43D1F for ; Wed, 25 May 2005 03:13:36 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4P3DZXP041688 for ; Wed, 25 May 2005 03:13:35 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4P3DZqA041685 for perforce@freebsd.org; Wed, 25 May 2005 03:13:35 GMT (envelope-from peter@freebsd.org) Date: Wed, 25 May 2005 03:13:35 GMT Message-Id: <200505250313.j4P3DZqA041685@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Cc: Subject: PERFORCE change 77438 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 25 May 2005 03:13:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=77438 Change 77438 by peter@peter_melody on 2005/05/25 03:12:50 Inflict more evil Affected files ... .. //depot/projects/hammer/sys/fs/procfs/procfs_dbregs.c#6 edit .. //depot/projects/hammer/sys/fs/procfs/procfs_fpregs.c#6 edit .. //depot/projects/hammer/sys/fs/procfs/procfs_ioctl.c#7 edit .. //depot/projects/hammer/sys/fs/procfs/procfs_map.c#8 edit .. //depot/projects/hammer/sys/fs/procfs/procfs_regs.c#6 edit Differences ... ==== //depot/projects/hammer/sys/fs/procfs/procfs_dbregs.c#6 (text+ko) ==== @@ -43,6 +43,8 @@ * $FreeBSD: src/sys/fs/procfs/procfs_dbregs.c,v 1.25 2004/10/01 05:01:17 das Exp $ */ +#include "opt_compat.h" + #include #include #include @@ -56,11 +58,29 @@ #include #include +#ifdef COMPAT_IA32 +#include +#include +#include + +extern struct sysentvec ia32_freebsd_sysvec; +#define PROC(d, w, t, r) wrap32 ? proc_ ## d ## _ ## w ## 32(t, r ## 32) : proc_ ## d ## _ ## w(t, r) +#define UIOMOVE_FROMBUF(k, u) wrap32 ? uiomove_frombuf(& k ## 32, sizeof(k ## 32), u) : uiomove_frombuf(& k, sizeof(k), u) +#else +#define PROC(d, w, t, r) proc_ ## d ## _ ## w(t, r) +#define UIOMOVE_FROMBUF(k, u) uiomove_frombuf(& k, sizeof(k), u) +#endif + int procfs_doprocdbregs(PFS_FILL_ARGS) { int error; struct dbreg r; + struct thread *td2; +#ifdef COMPAT_IA32 + struct dbreg32 r32; + int wrap32 = 0; +#endif PROC_LOCK(p); KASSERT(p->p_lock > 0, ("proc not held")); @@ -70,10 +90,20 @@ } /* XXXKSE: */ - error = proc_read_dbregs(FIRST_THREAD_IN_PROC(p), &r); + td2 = FIRST_THREAD_IN_PROC(p); +#ifdef COMPAT_IA32 + if (td->td_proc->p_sysent == &ia32_freebsd_sysvec) { + if (td2->td_proc->p_sysent != &ia32_freebsd_sysvec) { + PROC_UNLOCK(p); + return (EINVAL); + } + wrap32 = 1; + } +#endif + error = PROC(read, dbregs, td2, &r); if (error == 0) { PROC_UNLOCK(p); - error = uiomove_frombuf(&r, sizeof(r), uio); + error = UIOMOVE_FROMBUF(r, uio); PROC_LOCK(p); } if (error == 0 && uio->uio_rw == UIO_WRITE) { @@ -81,7 +111,7 @@ error = EBUSY; else /* XXXKSE: */ - error = proc_write_dbregs(FIRST_THREAD_IN_PROC(p), &r); + error = PROC(write, dbregs, td2, &r); } PROC_UNLOCK(p); ==== //depot/projects/hammer/sys/fs/procfs/procfs_fpregs.c#6 (text+ko) ==== @@ -37,6 +37,8 @@ * $FreeBSD: src/sys/fs/procfs/procfs_fpregs.c,v 1.31 2004/10/01 05:01:17 das Exp $ */ +#include "opt_compat.h" + #include #include #include @@ -50,11 +52,29 @@ #include #include +#ifdef COMPAT_IA32 +#include +#include +#include + +extern struct sysentvec ia32_freebsd_sysvec; +#define PROC(d, w, t, r) wrap32 ? proc_ ## d ## _ ## w ## 32(t, r ## 32) : proc_ ## d ## _ ## w(t, r) +#define UIOMOVE_FROMBUF(k, u) wrap32 ? uiomove_frombuf(& k ## 32, sizeof(k ## 32), u) : uiomove_frombuf(& k, sizeof(k), u) +#else +#define PROC(d, w, t, r) proc_ ## d ## _ ## w(t, r) +#define UIOMOVE_FROMBUF(k, u) uiomove_frombuf(& k, sizeof(k), u) +#endif + int procfs_doprocfpregs(PFS_FILL_ARGS) { int error; struct fpreg r; + struct thread *td2; +#ifdef COMPAT_IA32 + struct fpreg32 r32; + int wrap32 = 0; +#endif PROC_LOCK(p); KASSERT(p->p_lock > 0, ("proc not held")); @@ -64,10 +84,20 @@ } /* XXXKSE: */ - error = proc_read_fpregs(FIRST_THREAD_IN_PROC(p), &r); + td2 = FIRST_THREAD_IN_PROC(p); +#ifdef COMPAT_IA32 + if (td->td_proc->p_sysent == &ia32_freebsd_sysvec) { + if (td2->td_proc->p_sysent != &ia32_freebsd_sysvec) { + PROC_UNLOCK(p); + return (EINVAL); + } + wrap32 = 1; + } +#endif + error = PROC(read, fpregs, td2, &r); if (error == 0) { PROC_UNLOCK(p); - error = uiomove_frombuf(&r, sizeof(r), uio); + error = UIOMOVE_FROMBUF(r, uio); PROC_LOCK(p); } if (error == 0 && uio->uio_rw == UIO_WRITE) { @@ -75,7 +105,7 @@ error = EBUSY; else /* XXXKSE: */ - error = proc_write_fpregs(FIRST_THREAD_IN_PROC(p), &r); + error = PROC(write, fpregs, td2, &r); } PROC_UNLOCK(p); ==== //depot/projects/hammer/sys/fs/procfs/procfs_ioctl.c#7 (text+ko) ==== @@ -42,6 +42,19 @@ #include #include +#ifdef COMPAT_IA32 +struct procfs_status32 { + int state; /* Running, stopped, something else? */ + int flags; /* Any flags */ + unsigned int events; /* Events to stop on */ + int why; /* What event, if any, proc stopped on */ + unsigned int val; /* Any extra data */ +}; + +#define PIOCWAIT32 _IOR('p', 4, struct procfs_status32) +#define PIOCSTATUS32 _IOR('p', 6, struct procfs_status32) +#endif + /* * Process ioctls */ @@ -49,6 +62,9 @@ procfs_ioctl(PFS_IOCTL_ARGS) { struct procfs_status *ps; +#ifdef COMPAT_IA32 + struct procfs_status32 *ps32; +#endif int error, flags, sig; int l; @@ -100,6 +116,25 @@ ps->why = p->p_step ? p->p_stype : 0; ps->val = p->p_step ? p->p_xstat : 0; break; +#ifdef COMPAT_IA32 + case PIOCWAIT32: + while (p->p_step == 0) { + /* sleep until p stops */ + error = msleep(&p->p_stype, &p->p_mtx, + PWAIT|PCATCH, "pioctl", 0); + if (error != 0) + break; + } + /* fall through to PIOCSTATUS32 */ + case PIOCSTATUS32: + ps32 = (struct procfs_status32 *)data; + ps32->state = (p->p_step == 0); + ps32->flags = 0; /* nope */ + ps32->events = p->p_stops; + ps32->why = p->p_step ? p->p_stype : 0; + ps32->val = p->p_step ? p->p_xstat : 0; + break; +#endif #if defined(COMPAT_FREEBSD5) || defined(COMPAT_FREEBSD4) case _IOC(IOC_IN, 'p', 5, 0): #endif ==== //depot/projects/hammer/sys/fs/procfs/procfs_map.c#8 (text+ko) ==== @@ -35,6 +35,8 @@ * $FreeBSD: src/sys/fs/procfs/procfs_map.c,v 1.37 2005/01/06 18:10:40 imp Exp $ */ +#include "opt_compat.h" + #include #include #include @@ -54,7 +56,15 @@ #include #include +#ifdef COMPAT_IA32 +#include +#include +#include + +extern struct sysentvec ia32_freebsd_sysvec; +#endif + #define MEBUFFERSIZE 256 /* @@ -77,6 +87,9 @@ vm_map_entry_t entry; char mebuffer[MEBUFFERSIZE]; char *fullpath, *freepath; +#ifdef COMPAT_IA32 + int wrap32 = 0; +#endif GIANT_REQUIRED; @@ -92,6 +105,13 @@ if (uio->uio_offset != 0) return (0); +#ifdef COMPAT_IA32 + if (curthread->td_proc->p_sysent == &ia32_freebsd_sysvec) { + if (p->p_sysent != &ia32_freebsd_sysvec) + return (EOPNOTSUPP); + wrap32 = 1; + } +#endif error = 0; if (map != &curthread->td_proc->p_vmspace->vm_map) vm_map_lock_read(map); @@ -164,7 +184,12 @@ snprintf(mebuffer, sizeof mebuffer, "0x%lx 0x%lx %d %d %p %s%s%s %d %d 0x%x %s %s %s %s\n", (u_long)entry->start, (u_long)entry->end, - resident, privateresident, obj, + resident, privateresident, +#ifdef COMPAT_IA32 + wrap32 ? NULL : obj, +#else + obj, +#endif (entry->protection & VM_PROT_READ)?"r":"-", (entry->protection & VM_PROT_WRITE)?"w":"-", (entry->protection & VM_PROT_EXECUTE)?"x":"-", ==== //depot/projects/hammer/sys/fs/procfs/procfs_regs.c#6 (text+ko) ==== @@ -37,6 +37,8 @@ * $FreeBSD: src/sys/fs/procfs/procfs_regs.c,v 1.30 2004/10/01 05:01:17 das Exp $ */ +#include "opt_compat.h" + #include #include #include @@ -50,11 +52,29 @@ #include #include +#ifdef COMPAT_IA32 +#include +#include +#include + +extern struct sysentvec ia32_freebsd_sysvec; +#define PROC(d, w, t, r) wrap32 ? proc_ ## d ## _ ## w ## 32(t, r ## 32) : proc_ ## d ## _ ## w(t, r) +#define UIOMOVE_FROMBUF(k, u) wrap32 ? uiomove_frombuf(& k ## 32, sizeof(k ## 32), u) : uiomove_frombuf(& k, sizeof(k), u) +#else +#define PROC(d, w, t, r) proc_ ## d ## _ ## w(t, r) +#define UIOMOVE_FROMBUF(k, u) uiomove_frombuf(& k, sizeof(k), u) +#endif + int procfs_doprocregs(PFS_FILL_ARGS) { int error; struct reg r; + struct thread *td2; +#ifdef COMPAT_IA32 + struct reg32 r32; + int wrap32 = 0; +#endif PROC_LOCK(p); KASSERT(p->p_lock > 0, ("proc not held")); @@ -64,10 +84,20 @@ } /* XXXKSE: */ - error = proc_read_regs(FIRST_THREAD_IN_PROC(p), &r); + td2 = FIRST_THREAD_IN_PROC(p); +#ifdef COMPAT_IA32 + if (td->td_proc->p_sysent == &ia32_freebsd_sysvec) { + if (td2->td_proc->p_sysent != &ia32_freebsd_sysvec) { + PROC_UNLOCK(p); + return (EINVAL); + } + wrap32 = 1; + } +#endif + error = PROC(read, regs, td2, &r); if (error == 0) { PROC_UNLOCK(p); - error = uiomove_frombuf(&r, sizeof(r), uio); + error = UIOMOVE_FROMBUF(r, uio); PROC_LOCK(p); } if (error == 0 && uio->uio_rw == UIO_WRITE) { @@ -75,7 +105,7 @@ error = EBUSY; else /* XXXKSE: */ - error = proc_write_regs(FIRST_THREAD_IN_PROC(p), &r); + error = PROC(write, regs, td2, &r); } PROC_UNLOCK(p); From owner-p4-projects@FreeBSD.ORG Wed May 25 18:40:59 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E512816A420; Wed, 25 May 2005 18:40:58 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A402316A41C for ; Wed, 25 May 2005 18:40:58 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7D98A43D1D for ; Wed, 25 May 2005 18:40:58 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4PIewGe007274 for ; Wed, 25 May 2005 18:40:58 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4PIew3N007271 for perforce@freebsd.org; Wed, 25 May 2005 18:40:58 GMT (envelope-from sam@freebsd.org) Date: Wed, 25 May 2005 18:40:58 GMT Message-Id: <200505251840.j4PIew3N007271@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 77476 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 25 May 2005 18:40:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=77476 Change 77476 by sam@sam_ebb on 2005/05/25 18:40:43 o mark "new scan" when don't find an ap so the next time we come through pick_bss we'll update seen+fails state o clear notseen flag when an entry is updated o display '=' for entries rejected 'cuz of too many assoc failures o display '^' for entries rejected 'cuz not seen for max scans o record dtim period Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_scan_sta.c#10 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_scan_sta.c#10 (text+ko) ==== @@ -249,6 +249,11 @@ ise->se_fhindex = sp->fhindex; ise->se_erp = sp->erp; ise->se_timoff = sp->timoff; + if (sp->tim != NULL) { + const struct ieee80211_tim_ie *tim = + (const struct ieee80211_tim_ie *) sp->tim; + ise->se_dtimperiod = tim->tim_period; + } saveie(&ise->se_wme_ie, sp->wme); saveie(&ise->se_wpa_ie, sp->wpa); saveie(&ise->se_ath_ie, sp->ath); @@ -259,6 +264,7 @@ se->se_lastupdate = ticks; /* update time */ se->se_seen = 1; + se->se_notseen = 0; mtx_unlock(&st->st_lock); #if 0 @@ -655,8 +661,8 @@ fail |= 0x80; #ifdef IEEE80211_DEBUG if (ieee80211_msg_scan(vap)) { - /* XXX se_fails */ - printf(" %c %s", fail ? '-' : '+', + printf(" %c %s", + fail & 0x40 ? '=' : fail & 0x80 ? '^' : fail ? '-' : '+', ether_sprintf(se->se_macaddr)); printf(" %s%c", ether_sprintf(se->se_bssid), fail & 0x20 ? '!' : ' '); @@ -769,6 +775,7 @@ * where we've previously had some success. */ sta_dec_fails(st); + st->st_newscan = 1; return 0; /* restart scan */ } selbs = NULL; From owner-p4-projects@FreeBSD.ORG Wed May 25 18:42:01 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 841B416A420; Wed, 25 May 2005 18:42:00 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5DEBE16A41C for ; Wed, 25 May 2005 18:42:00 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3B76443D1D for ; Wed, 25 May 2005 18:42:00 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4PIg01H007307 for ; Wed, 25 May 2005 18:42:00 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4PIfx0D007304 for perforce@freebsd.org; Wed, 25 May 2005 18:41:59 GMT (envelope-from sam@freebsd.org) Date: Wed, 25 May 2005 18:41:59 GMT Message-Id: <200505251841.j4PIfx0D007304@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 77477 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 25 May 2005 18:42:01 -0000 http://perforce.freebsd.org/chv.cgi?CH=77477 Change 77477 by sam@sam_ebb on 2005/05/25 18:41:02 add tim stuff Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_scan.h#6 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_scan.h#6 (text+ko) ==== @@ -119,6 +119,7 @@ u_int8_t erp; u_int8_t bintval; u_int8_t timoff; + u_int8_t *tim; u_int8_t *tstamp; u_int8_t *country; u_int8_t *ssid; @@ -153,6 +154,7 @@ u_int8_t se_fhindex; /* FH only */ u_int8_t se_erp; /* ERP from beacon/probe resp */ int8_t se_rssi; /* avg'd recv ssi */ + u_int8_t se_dtimperiod; /* DTIM period */ u_int8_t *se_wpa_ie; /* captured WPA/RSN ie */ u_int8_t *se_wme_ie; /* captured WME ie */ u_int8_t *se_ath_ie; /* captured Atheros ie */ From owner-p4-projects@FreeBSD.ORG Wed May 25 18:42:01 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3547116A458; Wed, 25 May 2005 18:42:01 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D354916A427 for ; Wed, 25 May 2005 18:42:00 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8F17C43D4C for ; Wed, 25 May 2005 18:42:00 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4PIg0cb007317 for ; Wed, 25 May 2005 18:42:00 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4PIg0h8007310 for perforce@freebsd.org; Wed, 25 May 2005 18:42:00 GMT (envelope-from sam@freebsd.org) Date: Wed, 25 May 2005 18:42:00 GMT Message-Id: <200505251842.j4PIg0h8007310@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 77478 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 25 May 2005 18:42:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=77478 Change 77478 by sam@sam_ebb on 2005/05/25 18:41:38 add sta-mode dtim support Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_input.c#17 edit .. //depot/projects/vap/sys/net80211/ieee80211_node.c#11 edit .. //depot/projects/vap/sys/net80211/ieee80211_var.h#17 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_input.c#17 (text+ko) ==== @@ -2108,7 +2108,6 @@ u_int8_t *frm, *efrm; u_int8_t *ssid, *rates, *xrates, *wpa, *wme, *ath; int reassoc, resp, allocbs; - struct ieee80211_tim_ie *tim; wh = mtod(m0, struct ieee80211_frame *); frm = (u_int8_t *)&wh[1]; @@ -2154,7 +2153,6 @@ scan.capinfo = le16toh(*(u_int16_t *)frm); frm += 2; scan.bchan = ieee80211_chan2ieee(ic, ic->ic_curchan); scan.chan = scan.bchan; - tim = NULL; while (frm < efrm) { switch (*frm) { @@ -2184,8 +2182,8 @@ break; case IEEE80211_ELEMID_TIM: /* XXX ATIM? */ + scan.tim = frm; scan.timoff = frm - mtod(m0, u_int8_t *); - tim = (struct ieee80211_tim_ie *) frm; break; case IEEE80211_ELEMID_IBSSPARMS: break; @@ -2327,11 +2325,13 @@ } if (scan.doth != NULL) ieee80211_parse_dothparams(vap, scan.doth, wh); - if (tim != NULL) { + if (scan.tim != NULL) { /* * Check the TIM. For now we drop out of * power save mode for any reason. */ + struct ieee80211_tim_ie *tim = + (struct ieee80211_tim_ie *) scan.tim; int aid = IEEE80211_AID(ni->ni_associd); int ix = aid / NBBY; int min = tim->tim_bitctl &~ 1; @@ -2340,6 +2340,8 @@ (min <= ix && ix <= max && isset(tim->tim_bitmap - min, aid))) ieee80211_sta_pwrsave(vap, 0); + + vap->iv_dtim_count = tim->tim_count; } /* * If scanning, pass the info to the scan module. ==== //depot/projects/vap/sys/net80211/ieee80211_node.c#11 (text+ko) ==== @@ -549,6 +549,9 @@ if (se->se_ath_ie != NULL) ieee80211_saveath(ni, se->se_ath_ie); + vap->iv_dtim_period = se->se_dtimperiod; + vap->iv_dtim_count = 0; + /* NB: must be after ni_chan is setup */ ieee80211_setup_rates(ni, se->se_rates, se->se_xrates, IEEE80211_F_DOSORT); ==== //depot/projects/vap/sys/net80211/ieee80211_var.h#17 (text+ko) ==== @@ -268,7 +268,8 @@ u_int16_t iv_ps_pending; /* ps sta's w/ pending frames */ u_int8_t *iv_tim_bitmap; /* power-save stations w/ data*/ u_int16_t iv_tim_len; /* ic_tim_bitmap size (bytes) */ - u_int16_t iv_dtim_period; /* DTIM period */ + u_int8_t iv_dtim_period; /* DTIM period */ + u_int8_t iv_dtim_count; /* DTIM count from last bcn */ /* set/unset aid pwrsav state */ void (*iv_set_tim)(struct ieee80211_node *, int); struct ieee80211_node *iv_bss; /* information for this node */ From owner-p4-projects@FreeBSD.ORG Wed May 25 18:46:07 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 06F1416A420; Wed, 25 May 2005 18:46:07 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id BDCBD16A41C for ; Wed, 25 May 2005 18:46:06 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 92ABD43D48 for ; Wed, 25 May 2005 18:46:06 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4PIk6OL007560 for ; Wed, 25 May 2005 18:46:06 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4PIk6Hl007557 for perforce@freebsd.org; Wed, 25 May 2005 18:46:06 GMT (envelope-from sam@freebsd.org) Date: Wed, 25 May 2005 18:46:06 GMT Message-Id: <200505251846.j4PIk6Hl007557@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 77480 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 25 May 2005 18:46:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=77480 Change 77480 by sam@sam_ebb on 2005/05/25 18:45:16 Cleanup/fixup sta-mode beacon timer handling: when nextTbtt calculated from the last received beacon lags behind the h/w TSF pull it forward so we always program a value that's in the future (fixes problems with not resyncing properly when returning on-channel after a bg scan). While here handle dtim properly (can't do pcf until we collect PCFParms from the beacon--if it's worth it). Affected files ... .. //depot/projects/vap/sys/dev/ath/if_ath.c#16 edit Differences ... ==== //depot/projects/vap/sys/dev/ath/if_ath.c#16 (text+ko) ==== @@ -2887,14 +2887,16 @@ static void ath_beacon_config(struct ath_softc *sc) { +#define TSF_TO_TU(_h,_l) (((_h) << 22) | ((_l) >> 10)) struct ieee80211vap *vap = sc->sc_bmaster; struct ieee80211_node *ni = vap->iv_bss; struct ieee80211com *ic = vap->iv_ic; struct ath_hal *ah = sc->sc_ah; u_int32_t nexttbtt, intval; - nexttbtt = (LE_READ_4(ni->ni_tstamp.data + 4) << 22) | - (LE_READ_4(ni->ni_tstamp.data) >> 10); + /* extract tstamp from last beacon and convert to TU */ + nexttbtt = TSF_TO_TU(LE_READ_4(ni->ni_tstamp.data + 4), + LE_READ_4(ni->ni_tstamp.data)); intval = ni->ni_intval & HAL_BEACON_PERIOD; /* XXX conditionalize multi-bss support? */ if (vap->iv_opmode == IEEE80211_M_HOSTAP) { @@ -2916,21 +2918,59 @@ __func__, nexttbtt, intval, ni->ni_intval); if (vap->iv_opmode == IEEE80211_M_STA) { HAL_BEACON_STATE bs; + u_int64_t tsf; + u_int32_t tsftu; + int dtimperiod, dtimcount; + int cfpperiod, cfpcount; - /* NB: no PCF support right now */ + /* + * Setup dtim and cfp parameters according to + * last beacon we received (which may be none). + */ + dtimperiod = vap->iv_dtim_period; + if (dtimperiod <= 0) /* NB: 0 if not known */ + dtimperiod = 1; + dtimcount = vap->iv_dtim_count; + if (dtimcount >= dtimperiod) /* NB: sanity check */ + dtimcount = 0; /* XXX? */ + cfpperiod = 1; /* NB: no PCF support yet */ + cfpcount = 0; +#define FUDGE 2 + /* + * Pull nexttbtt forward to reflect the current + * TSF and calculate dtim+cfp state for the result. + */ + tsf = ath_hal_gettsf64(ah); + tsftu = TSF_TO_TU((u_int32_t)(tsf>>32), (u_int32_t)tsf) + FUDGE; + do { + nexttbtt += intval; + if (--dtimcount < 0) { + dtimcount = dtimperiod - 1; + if (--cfpcount < 0) + cfpcount = cfpperiod - 1; + } + } while (nexttbtt < tsftu); +#undef FUDGE memset(&bs, 0, sizeof(bs)); bs.bs_intval = intval; bs.bs_nexttbtt = nexttbtt; - bs.bs_dtimperiod = bs.bs_intval; - bs.bs_nextdtim = nexttbtt; + bs.bs_dtimperiod = dtimperiod*intval; + bs.bs_nextdtim = bs.bs_nexttbtt + dtimcount*intval; + bs.bs_cfpperiod = cfpperiod*bs.bs_dtimperiod; + bs.bs_cfpnext = bs.bs_nextdtim + cfpcount*bs.bs_dtimperiod; + bs.bs_cfpmaxduration = 0; +#if 0 /* * The 802.11 layer records the offset to the DTIM * bitmap while receiving beacons; use it here to * enable h/w detection of our AID being marked in * the bitmap vector (to indicate frames for us are * pending at the AP). + * XXX do DTIM handling in s/w to WAR old h/w bugs + * XXX enable based on h/w rev for newer chips */ bs.bs_timoffset = ni->ni_timoff; +#endif /* * Calculate the number of consecutive beacons to miss * before taking a BMISS interrupt. The configuration @@ -2959,8 +2999,9 @@ bs.bs_sleepduration = roundup(bs.bs_sleepduration, bs.bs_dtimperiod); DPRINTF(sc, ATH_DEBUG_BEACON, - "%s: intval %u nexttbtt %u dtim %u nextdtim %u bmiss %u sleep %u cfp:period %u maxdur %u next %u timoffset %u\n" + "%s: tsf %llu tsf:tu %u intval %u nexttbtt %u dtim %u nextdtim %u bmiss %u sleep %u cfp:period %u maxdur %u next %u timoffset %u\n" , __func__ + , tsf, tsftu , bs.bs_intval , bs.bs_nexttbtt , bs.bs_dtimperiod @@ -3012,6 +3053,7 @@ ath_beacon_proc(sc, 0); } sc->sc_syncbeacon = 0; +#undef TSF_TO_TU } static void From owner-p4-projects@FreeBSD.ORG Thu May 26 12:17:30 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2BC8F16A428; Thu, 26 May 2005 12:17:30 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D8AC816A420 for ; Thu, 26 May 2005 12:17:29 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CCAD143D8F for ; Thu, 26 May 2005 12:17:24 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4QCHOFm074799 for ; Thu, 26 May 2005 12:17:24 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4QCHOvl074796 for perforce@freebsd.org; Thu, 26 May 2005 12:17:24 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 26 May 2005 12:17:24 GMT Message-Id: <200505261217.j4QCHOvl074796@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 77502 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 26 May 2005 12:17:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=77502 Change 77502 by rwatson@rwatson_paprika on 2005/05/26 12:17:11 Start to put together a TODO list. Affected files ... .. //depot/projects/trustedbsd/openbsm/TODO#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Thu May 26 15:32:30 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0065A16A444; Thu, 26 May 2005 15:32:29 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 984C616A427 for ; Thu, 26 May 2005 15:32:29 +0000 (GMT) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9E76543D96 for ; Thu, 26 May 2005 15:32:24 +0000 (GMT) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4QFWM13090405 for ; Thu, 26 May 2005 15:32:22 GMT (envelope-from csjp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4QFWMVj090402 for perforce@freebsd.org; Thu, 26 May 2005 15:32:22 GMT (envelope-from csjp@freebsd.org) Date: Thu, 26 May 2005 15:32:22 GMT Message-Id: <200505261532.j4QFWMVj090402@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to csjp@freebsd.org using -f From: "Christian S.J. Peron" To: Perforce Change Reviews Cc: Subject: PERFORCE change 77511 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 26 May 2005 15:32:30 -0000 http://perforce.freebsd.org/chv.cgi?CH=77511 Change 77511 by csjp@csjp_xor on 2005/05/26 15:32:08 -Introduce -W this can be used when trying to determine what dependency along the line resulted in the failure to execute an object. A warning is produced if the checksum registered with the object does not match the checksum of the object itself. Affected files ... .. //depot/projects/trustedbsd/mac/usr.sbin/getfhash/getfhash.c#6 edit Differences ... ==== //depot/projects/trustedbsd/mac/usr.sbin/getfhash/getfhash.c#6 (text+ko) ==== @@ -24,6 +24,7 @@ * SUCH DAMAGE. */ #include +#include #include #include #include @@ -31,12 +32,15 @@ #include +#include +#include #include #include #include #include #include #include +#include static void print_hash(const char *); static void process_depends(const char *); @@ -47,8 +51,94 @@ static int dflag; static int rflag; static char *mflag; +static int Wflag; + static void (*handler)(const char *); +static int +calc_sha1(const char *fname, u_char *digest) +{ + SHA1_CTX shac; + int fd, len, error, count; + struct stat sb; + off_t b; + char *buffer; + + fd = open(fname, O_RDONLY); + if (fd < 0) { + warn("open failed"); + return (fd); + } + if (fstat(fd, &sb) < 0) { + warn("fstat failed"); + close(fd); + return (-1); + } + len = getpagesize(); + buffer = malloc(len); + SHA1_Init(&shac); + for (b = 0; b < sb.st_size; b += len) { + if ((len + b) > sb.st_size) + count = sb.st_size - b; + else + count = len; + error = read(fd, buffer, count); + if (error < 0) { + close(fd); + free(buffer); + warn("read failed"); + return (error); + } + SHA1_Update(&shac, buffer, count); + } + close(fd); + SHA1_Final(digest, &shac); + free(buffer); + return (0); +} + +static int +calc_md5(const char *fname, u_char *digest) +{ + MD5_CTX ctx; + int fd, len, error, count; + struct stat sb; + off_t b; + char *buffer; + + fd = open(fname, O_RDONLY); + if (fd < 0) { + warn("open failed"); + return (fd); + } + if (fstat(fd, &sb) < 0) { + warn("fstat failed"); + close(fd); + return (-1); + } + len = getpagesize(); + buffer = malloc(len); + MD5Init(&ctx); + for (b = 0; b < sb.st_size; b += len) { + if ((len + b) > sb.st_size) + count = sb.st_size - b; + else + count = len; + error = read(fd, buffer, count); + if (error < 0) { + close(fd); + free(buffer); + warn("read failed"); + return (error); + } + MD5Update(&ctx, buffer, count); + } + close(fd); + MD5Final(digest, &ctx); + free(buffer); + return (0); +} + static void process_depends(const char *pathname) { @@ -116,6 +206,7 @@ int i, error; int nbytes; const char *algo; + u_char digest[64]; error = extattr_get_file(pathname, MAC_CHKEXEC_ATTRN, MAC_CHKEXEC, (void *)&sum, sizeof(sum)); @@ -138,6 +229,12 @@ printf("%s: %s ", pathname, algo); for (i = 0; i < nbytes; i++) printf("%02x", sum.vs_sum[i]); + if (Wflag) { + calc_sha1(pathname, &digest[0]); + if (memcmp(&digest[0], &sum.vs_sum[0], nbytes) != 0) { + printf(" (conflicting checksum)"); + } + } putchar('\n'); if (dflag) process_depends(pathname); @@ -172,7 +269,7 @@ handler = print_hash; else errx(1, "what program am I supposed to be?"); - while ((ch = getopt(argc, argv, "dhm:r")) != -1) + while ((ch = getopt(argc, argv, "dhm:rW")) != -1) switch(ch) { case 'd': dflag++; @@ -183,6 +280,9 @@ case 'r': rflag++; break; + case 'W': + Wflag++; + break; default: break; } From owner-p4-projects@FreeBSD.ORG Thu May 26 15:38:32 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id ABA6116A420; Thu, 26 May 2005 15:38:31 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 86AD616A41C for ; Thu, 26 May 2005 15:38:31 +0000 (GMT) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 68BB943D1D for ; Thu, 26 May 2005 15:38:31 +0000 (GMT) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4QFcVIA090643 for ; Thu, 26 May 2005 15:38:31 GMT (envelope-from csjp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4QFcVEO090640 for perforce@freebsd.org; Thu, 26 May 2005 15:38:31 GMT (envelope-from csjp@freebsd.org) Date: Thu, 26 May 2005 15:38:31 GMT Message-Id: <200505261538.j4QFcVEO090640@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to csjp@freebsd.org using -f From: "Christian S.J. Peron" To: Perforce Change Reviews Cc: Subject: PERFORCE change 77513 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 26 May 2005 15:38:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=77513 Change 77513 by csjp@csjp_xor on 2005/05/26 15:37:54 -introduce function pointer which will be dynamically initialized to whatever checksum is stored with the object when -W is used. Affected files ... .. //depot/projects/trustedbsd/mac/usr.sbin/getfhash/getfhash.c#7 edit Differences ... ==== //depot/projects/trustedbsd/mac/usr.sbin/getfhash/getfhash.c#7 (text+ko) ==== @@ -207,6 +207,7 @@ int nbytes; const char *algo; u_char digest[64]; + int (*checksum)(const char *, u_char *); error = extattr_get_file(pathname, MAC_CHKEXEC_ATTRN, MAC_CHKEXEC, (void *)&sum, sizeof(sum)); @@ -217,10 +218,12 @@ if (sum.vs_flags == MAC_VCSUM_SHA1) { nbytes = SHA1_HASH_SIZE; algo = "sha1"; + checksum = calc_sha1; } else if (sum.vs_flags == MAC_VCSUM_MD5) { nbytes = MD5_HASH_SIZE; algo = "md5"; + checksum = calc_md5; } else { warnx("%s: invalid checksum algorithm", pathname); From owner-p4-projects@FreeBSD.ORG Thu May 26 15:44:40 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A4F4B16A428; Thu, 26 May 2005 15:44:39 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7B0B016A426 for ; Thu, 26 May 2005 15:44:39 +0000 (GMT) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4305F43D49 for ; Thu, 26 May 2005 15:44:39 +0000 (GMT) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4QFidC2091014 for ; Thu, 26 May 2005 15:44:39 GMT (envelope-from csjp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4QFicPQ091011 for perforce@freebsd.org; Thu, 26 May 2005 15:44:38 GMT (envelope-from csjp@freebsd.org) Date: Thu, 26 May 2005 15:44:38 GMT Message-Id: <200505261544.j4QFicPQ091011@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to csjp@freebsd.org using -f From: "Christian S.J. Peron" To: Perforce Change Reviews Cc: Subject: PERFORCE change 77514 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 26 May 2005 15:44:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=77514 Change 77514 by csjp@csjp_xor on 2005/05/26 15:43:54 Actually use the function pointer which was just created :) Affected files ... .. //depot/projects/trustedbsd/mac/usr.sbin/getfhash/getfhash.c#8 edit Differences ... ==== //depot/projects/trustedbsd/mac/usr.sbin/getfhash/getfhash.c#8 (text+ko) ==== @@ -233,7 +233,7 @@ for (i = 0; i < nbytes; i++) printf("%02x", sum.vs_sum[i]); if (Wflag) { - calc_sha1(pathname, &digest[0]); + (*checksum)(pathname, &digest[0]); if (memcmp(&digest[0], &sum.vs_sum[0], nbytes) != 0) { printf(" (conflicting checksum)"); } From owner-p4-projects@FreeBSD.ORG Fri May 27 02:07:24 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BD39916A420; Fri, 27 May 2005 02:07:23 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 69A0016A41C for ; Fri, 27 May 2005 02:07:23 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2B57C43D1D for ; Fri, 27 May 2005 02:07:23 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4R27NHV036828 for ; Fri, 27 May 2005 02:07:23 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4R27HEV036825 for perforce@freebsd.org; Fri, 27 May 2005 02:07:17 GMT (envelope-from sam@freebsd.org) Date: Fri, 27 May 2005 02:07:17 GMT Message-Id: <200505270207.j4R27HEV036825@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 77535 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 27 May 2005 02:07:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=77535 Change 77535 by sam@sam_ebb on 2005/05/27 02:06:25 IFC @ 77534 Affected files ... .. //depot/projects/wifi/MAINTAINERS#5 integrate .. //depot/projects/wifi/Makefile.inc1#19 integrate .. //depot/projects/wifi/UPDATING#16 integrate .. //depot/projects/wifi/bin/chflags/chflags.1#5 integrate .. //depot/projects/wifi/bin/chflags/chflags.c#3 integrate .. //depot/projects/wifi/bin/mv/mv.c#3 integrate .. //depot/projects/wifi/bin/sh/options.c#3 integrate .. //depot/projects/wifi/bin/stty/print.c#2 integrate .. //depot/projects/wifi/contrib/bsnmp/NEWS#4 integrate .. //depot/projects/wifi/contrib/bsnmp/VERSION#4 integrate .. //depot/projects/wifi/contrib/bsnmp/lib/bsnmpclient.3#3 integrate .. //depot/projects/wifi/contrib/bsnmp/lib/snmpclient.c#2 integrate .. //depot/projects/wifi/contrib/bsnmp/lib/snmpclient.h#2 integrate .. //depot/projects/wifi/contrib/bsnmp/oid-list#3 integrate .. //depot/projects/wifi/contrib/bsnmp/snmp_mibII/mibII.c#3 integrate .. //depot/projects/wifi/contrib/bsnmp/snmp_mibII/mibII.h#2 integrate .. //depot/projects/wifi/contrib/bsnmp/snmp_mibII/mibII_interfaces.c#3 integrate .. //depot/projects/wifi/contrib/bsnmp/snmp_mibII/mibII_ip.c#2 integrate .. //depot/projects/wifi/contrib/bsnmp/snmp_mibII/mibII_route.c#2 integrate .. //depot/projects/wifi/contrib/bsnmp/snmp_mibII/mibII_tcp.c#2 integrate .. //depot/projects/wifi/contrib/bsnmp/snmp_mibII/mibII_udp.c#2 integrate .. //depot/projects/wifi/contrib/bsnmp/snmp_mibII/snmp_mibII.3#3 integrate .. //depot/projects/wifi/contrib/bsnmp/snmp_mibII/snmp_mibII.h#3 integrate .. //depot/projects/wifi/contrib/bsnmp/snmp_ntp/snmp_ntp.c#2 integrate .. //depot/projects/wifi/contrib/bsnmp/snmpd/main.c#4 integrate .. //depot/projects/wifi/contrib/bsnmp/snmpd/snmpmod.3#3 integrate .. //depot/projects/wifi/contrib/bsnmp/snmpd/snmpmod.h#2 integrate .. //depot/projects/wifi/contrib/bzip2/CHANGES#2 integrate .. //depot/projects/wifi/contrib/bzip2/FREEBSD-Xlist#1 branch .. //depot/projects/wifi/contrib/bzip2/FREEBSD-upgrade#2 integrate .. //depot/projects/wifi/contrib/bzip2/LICENSE#2 integrate .. //depot/projects/wifi/contrib/bzip2/Makefile#2 integrate .. //depot/projects/wifi/contrib/bzip2/Makefile-libbz2_so#2 integrate .. //depot/projects/wifi/contrib/bzip2/README#2 integrate .. //depot/projects/wifi/contrib/bzip2/README.COMPILATION.PROBLEMS#2 integrate .. //depot/projects/wifi/contrib/bzip2/blocksort.c#2 integrate .. //depot/projects/wifi/contrib/bzip2/bzip2.1#2 integrate .. //depot/projects/wifi/contrib/bzip2/bzip2.c#2 integrate .. //depot/projects/wifi/contrib/bzip2/bzip2recover.c#2 integrate .. //depot/projects/wifi/contrib/bzip2/bzlib.c#2 integrate .. //depot/projects/wifi/contrib/bzip2/bzlib.h#2 integrate .. //depot/projects/wifi/contrib/bzip2/bzlib_private.h#2 integrate .. //depot/projects/wifi/contrib/bzip2/compress.c#2 integrate .. //depot/projects/wifi/contrib/bzip2/crctable.c#2 integrate .. //depot/projects/wifi/contrib/bzip2/decompress.c#2 integrate .. //depot/projects/wifi/contrib/bzip2/huffman.c#2 integrate .. //depot/projects/wifi/contrib/bzip2/randtable.c#2 integrate .. //depot/projects/wifi/contrib/bzip2/sample1.bz2.uu#2 integrate .. //depot/projects/wifi/contrib/bzip2/sample1.ref.gz.uu#2 integrate .. //depot/projects/wifi/contrib/bzip2/sample2.bz2.uu#2 integrate .. //depot/projects/wifi/contrib/bzip2/sample2.ref.gz.uu#2 integrate .. //depot/projects/wifi/contrib/bzip2/sample3.bz2.uu#2 integrate .. //depot/projects/wifi/contrib/bzip2/sample3.ref.gz.uu#2 integrate .. //depot/projects/wifi/contrib/ipfilter/man/ipfstat.8#3 integrate .. //depot/projects/wifi/contrib/ipfilter/pcap-bpf.h#1 branch .. //depot/projects/wifi/contrib/ipfilter/tools/ipf_y.y#2 integrate .. //depot/projects/wifi/contrib/ipfilter/tools/ipmon.c#3 integrate .. //depot/projects/wifi/contrib/lukemftp/src/cmds.c#3 integrate .. //depot/projects/wifi/contrib/lukemftp/src/cmdtab.c#3 integrate .. //depot/projects/wifi/contrib/lukemftp/src/extern.h#3 integrate .. //depot/projects/wifi/contrib/lukemftp/src/fetch.c#3 integrate .. //depot/projects/wifi/contrib/lukemftp/src/ftp.1#3 integrate .. //depot/projects/wifi/contrib/lukemftp/src/ftp.c#3 integrate .. //depot/projects/wifi/contrib/lukemftp/src/ftp_var.h#3 integrate .. //depot/projects/wifi/contrib/lukemftp/src/main.c#3 integrate .. //depot/projects/wifi/contrib/lukemftp/src/progressbar.c#3 integrate .. //depot/projects/wifi/contrib/lukemftp/src/util.c#3 integrate .. //depot/projects/wifi/contrib/lukemftp/src/version.h#3 integrate .. //depot/projects/wifi/contrib/ngatm/man/libngatm.3#2 integrate .. //depot/projects/wifi/contrib/ngatm/man/uniaddr.3#2 integrate .. //depot/projects/wifi/contrib/ngatm/man/unifunc.3#2 integrate .. //depot/projects/wifi/contrib/ngatm/man/unimsg.3#2 integrate .. //depot/projects/wifi/contrib/ngatm/man/unisap.3#2 integrate .. //depot/projects/wifi/contrib/ngatm/man/unistruct.3#2 integrate .. //depot/projects/wifi/contrib/ngatm/snmp_atm/atm.h#2 integrate .. //depot/projects/wifi/contrib/ngatm/snmp_atm/snmp_atm.3#2 integrate .. //depot/projects/wifi/contrib/ngatm/snmp_atm/snmp_atm.c#2 integrate .. //depot/projects/wifi/contrib/ngatm/sscop/common.c#2 integrate .. //depot/projects/wifi/contrib/ngatm/sscop/common.h#2 integrate .. //depot/projects/wifi/contrib/ngatm/sscop/sscop_main.c#2 integrate .. //depot/projects/wifi/contrib/one-true-awk/FIXES#2 integrate .. //depot/projects/wifi/contrib/one-true-awk/FREEBSD-upgrade#2 integrate .. //depot/projects/wifi/contrib/one-true-awk/README#2 integrate .. //depot/projects/wifi/contrib/one-true-awk/awk.h#2 integrate .. //depot/projects/wifi/contrib/one-true-awk/b.c#2 integrate .. //depot/projects/wifi/contrib/one-true-awk/lex.c#2 integrate .. //depot/projects/wifi/contrib/one-true-awk/lib.c#2 integrate .. //depot/projects/wifi/contrib/one-true-awk/main.c#2 integrate .. //depot/projects/wifi/contrib/one-true-awk/makefile#2 integrate .. //depot/projects/wifi/contrib/one-true-awk/proctab.c#2 integrate .. //depot/projects/wifi/contrib/one-true-awk/run.c#2 integrate .. //depot/projects/wifi/contrib/one-true-awk/tran.c#2 integrate .. //depot/projects/wifi/contrib/tcp_wrappers/hosts_access.c#2 integrate .. //depot/projects/wifi/contrib/tcp_wrappers/socket.c#2 integrate .. //depot/projects/wifi/contrib/telnet/telnetd/telnetd.c#3 integrate .. //depot/projects/wifi/contrib/texinfo/AUTHORS#2 integrate .. //depot/projects/wifi/contrib/texinfo/ChangeLog#2 integrate .. //depot/projects/wifi/contrib/texinfo/ChangeLog.46#1 branch .. //depot/projects/wifi/contrib/texinfo/FREEBSD-Xlist#2 integrate .. //depot/projects/wifi/contrib/texinfo/FREEBSD-upgrade#2 integrate .. //depot/projects/wifi/contrib/texinfo/INSTALL#2 integrate .. //depot/projects/wifi/contrib/texinfo/INTRODUCTION#2 integrate .. //depot/projects/wifi/contrib/texinfo/NEWS#2 integrate .. //depot/projects/wifi/contrib/texinfo/README#2 integrate .. //depot/projects/wifi/contrib/texinfo/README.dev#1 branch .. //depot/projects/wifi/contrib/texinfo/TODO#2 integrate .. //depot/projects/wifi/contrib/texinfo/config.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/config.h.in#2 integrate .. //depot/projects/wifi/contrib/texinfo/doc/README#2 integrate .. //depot/projects/wifi/contrib/texinfo/doc/help2man#2 delete .. //depot/projects/wifi/contrib/texinfo/doc/info-stnd.texi#2 integrate .. //depot/projects/wifi/contrib/texinfo/doc/info.1#2 integrate .. //depot/projects/wifi/contrib/texinfo/doc/info.5#2 integrate .. //depot/projects/wifi/contrib/texinfo/doc/info.texi#2 integrate .. //depot/projects/wifi/contrib/texinfo/doc/infokey.1#1 branch .. //depot/projects/wifi/contrib/texinfo/doc/install-info.1#2 integrate .. //depot/projects/wifi/contrib/texinfo/doc/makeinfo.1#2 integrate .. //depot/projects/wifi/contrib/texinfo/doc/texindex.1#2 integrate .. //depot/projects/wifi/contrib/texinfo/doc/texinfo.5#2 integrate .. //depot/projects/wifi/contrib/texinfo/doc/texinfo.txi#2 integrate .. //depot/projects/wifi/contrib/texinfo/doc/version-stnd.texi#2 integrate .. //depot/projects/wifi/contrib/texinfo/doc/version.texi#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/README#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/dir.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/display.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/display.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/doc.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/doc.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/dribble.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/dribble.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/echo-area.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/echo-area.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/filesys.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/filesys.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/footnotes.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/footnotes.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/funs.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/gc.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/gc.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/indices.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/indices.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/info-utils.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/info-utils.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/info.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/info.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/infodoc.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/infokey.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/infokey.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/infomap.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/infomap.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/key.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/m-x.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/man.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/man.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/nodemenu.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/nodes.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/nodes.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/search.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/search.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/session.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/session.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/signals.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/signals.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/termdep.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/terminal.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/terminal.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/tilde.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/tilde.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/variables.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/variables.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/window.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/info/window.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/lib/README#2 integrate .. //depot/projects/wifi/contrib/texinfo/lib/gettext.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/lib/substring.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/lib/system.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/lib/xalloc.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/lib/xexit.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/lib/xmalloc.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/lib/xstrdup.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/makeinfo/README#2 integrate .. //depot/projects/wifi/contrib/texinfo/makeinfo/cmds.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/makeinfo/cmds.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/makeinfo/defun.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/makeinfo/defun.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/makeinfo/files.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/makeinfo/files.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/makeinfo/float.c#1 branch .. //depot/projects/wifi/contrib/texinfo/makeinfo/float.h#1 branch .. //depot/projects/wifi/contrib/texinfo/makeinfo/footnote.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/makeinfo/footnote.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/makeinfo/html.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/makeinfo/html.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/makeinfo/index.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/makeinfo/index.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/makeinfo/insertion.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/makeinfo/insertion.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/makeinfo/lang.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/makeinfo/lang.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/makeinfo/macro.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/makeinfo/macro.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/makeinfo/makeinfo.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/makeinfo/makeinfo.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/makeinfo/multi.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/makeinfo/multi.h#1 branch .. //depot/projects/wifi/contrib/texinfo/makeinfo/node.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/makeinfo/node.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/makeinfo/sectioning.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/makeinfo/sectioning.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/makeinfo/texinfo.dtd#2 delete .. //depot/projects/wifi/contrib/texinfo/makeinfo/texinfo.xsl#2 delete .. //depot/projects/wifi/contrib/texinfo/makeinfo/toc.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/makeinfo/toc.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/makeinfo/xml.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/makeinfo/xml.h#2 integrate .. //depot/projects/wifi/contrib/texinfo/makeinfo/xref.c#1 branch .. //depot/projects/wifi/contrib/texinfo/makeinfo/xref.h#1 branch .. //depot/projects/wifi/contrib/texinfo/util/README#2 integrate .. //depot/projects/wifi/contrib/texinfo/util/install-info.c#2 integrate .. //depot/projects/wifi/contrib/texinfo/util/texindex.c#2 integrate .. //depot/projects/wifi/contrib/top/commands.c#3 integrate .. //depot/projects/wifi/contrib/top/display.c#2 integrate .. //depot/projects/wifi/contrib/top/machine.h#2 integrate .. //depot/projects/wifi/contrib/top/top.c#3 integrate .. //depot/projects/wifi/etc/devd.conf#8 integrate .. //depot/projects/wifi/etc/mtree/BSD.local.dist#4 integrate .. //depot/projects/wifi/etc/rc.d/named#6 integrate .. //depot/projects/wifi/etc/rc.subr#4 integrate .. //depot/projects/wifi/games/fortune/datfiles/fortunes#12 integrate .. //depot/projects/wifi/gnu/lib/libregex/FREEBSD-upgrade#2 integrate .. //depot/projects/wifi/gnu/lib/libregex/Makefile#2 integrate .. //depot/projects/wifi/gnu/lib/libregex/config.h#1 branch .. //depot/projects/wifi/gnu/lib/libregex/posix/regex.h#2 integrate .. //depot/projects/wifi/gnu/lib/libregex/regcomp.c#1 branch .. //depot/projects/wifi/gnu/lib/libregex/regex.c#2 integrate .. //depot/projects/wifi/gnu/lib/libregex/regex_internal.c#1 branch .. //depot/projects/wifi/gnu/lib/libregex/regex_internal.h#1 branch .. //depot/projects/wifi/gnu/lib/libregex/regexec.c#1 branch .. //depot/projects/wifi/gnu/usr.bin/grep/FREEBSD-upgrade#1 branch .. //depot/projects/wifi/gnu/usr.bin/grep/dfa.c#2 integrate .. //depot/projects/wifi/gnu/usr.bin/grep/dfa.h#2 integrate .. //depot/projects/wifi/gnu/usr.bin/grep/grep.c#3 integrate .. //depot/projects/wifi/gnu/usr.bin/grep/grep.h#2 integrate .. //depot/projects/wifi/gnu/usr.bin/grep/mbcache.h#2 delete .. //depot/projects/wifi/gnu/usr.bin/grep/search.c#2 integrate .. //depot/projects/wifi/gnu/usr.bin/texinfo/infokey/Makefile#4 integrate .. //depot/projects/wifi/gnu/usr.bin/texinfo/makeinfo/Makefile#2 integrate .. //depot/projects/wifi/include/Makefile#11 integrate .. //depot/projects/wifi/include/netdb.h#5 integrate .. //depot/projects/wifi/include/runefile.h#2 delete .. //depot/projects/wifi/include/unistd.h#5 integrate .. //depot/projects/wifi/lib/csu/i386-elf/crt1.c#2 integrate .. //depot/projects/wifi/lib/csu/i386-elf/crti.S#2 integrate .. //depot/projects/wifi/lib/csu/i386-elf/crtn.S#2 integrate .. //depot/projects/wifi/lib/libarchive/Makefile#10 integrate .. //depot/projects/wifi/lib/libarchive/archive_platform.h#4 integrate .. //depot/projects/wifi/lib/libarchive/archive_read.3#6 integrate .. //depot/projects/wifi/lib/libarchive/archive_read_extract.c#6 integrate .. //depot/projects/wifi/lib/libarchive/configure.ac.in#4 integrate .. //depot/projects/wifi/lib/libc/gen/Makefile.inc#5 integrate .. //depot/projects/wifi/lib/libc/gen/ttyname.3#3 integrate .. //depot/projects/wifi/lib/libc/gen/ttyname.c#3 integrate .. //depot/projects/wifi/lib/libc/locale/rune.c#3 integrate .. //depot/projects/wifi/lib/libc/locale/runefile.h#1 branch .. //depot/projects/wifi/lib/libc/net/getaddrinfo.c#9 integrate .. //depot/projects/wifi/lib/libc/net/getnetbydns.c#3 integrate .. //depot/projects/wifi/lib/libc/net/getnetbyht.c#4 integrate .. //depot/projects/wifi/lib/libc/net/getnetbynis.c#3 integrate .. //depot/projects/wifi/lib/libc/net/getnetnamadr.c#3 integrate .. //depot/projects/wifi/lib/libc/net/name6.c#7 integrate .. //depot/projects/wifi/lib/libc/net/netdb_private.h#4 integrate .. //depot/projects/wifi/lib/libc/net/rcmd.c#4 integrate .. //depot/projects/wifi/lib/libc/net/res_send.c#3 integrate .. //depot/projects/wifi/lib/libc/stdio/glue.h#2 integrate .. //depot/projects/wifi/lib/libc/uuid/uuid_is_nil.c#3 integrate .. //depot/projects/wifi/lib/libc_r/uthread/pthread_private.h#5 integrate .. //depot/projects/wifi/lib/libdevinfo/devinfo.c#3 integrate .. //depot/projects/wifi/lib/libgeom/geom_xml2tree.c#2 integrate .. //depot/projects/wifi/lib/libpam/modules/pam_unix/pam_unix.c#2 integrate .. //depot/projects/wifi/lib/libstand/Makefile#4 integrate .. //depot/projects/wifi/lib/libstand/bzipfs.c#2 integrate .. //depot/projects/wifi/lib/libstand/bzlib.c.diff#2 delete .. //depot/projects/wifi/lib/libstand/bzlib.h.diff#2 delete .. //depot/projects/wifi/lib/libstand/bzlib_private.h.diff#2 delete .. //depot/projects/wifi/lib/libstand/splitfs.c#2 integrate .. //depot/projects/wifi/lib/libstand/stand.h#2 integrate .. //depot/projects/wifi/lib/libstand/zutil.h.diff#2 delete .. //depot/projects/wifi/lib/libthread_db/libpthread_db.c#4 integrate .. //depot/projects/wifi/lib/libthread_db/libthr_db.c#5 integrate .. //depot/projects/wifi/lib/libutil/logwtmp.c#2 integrate .. //depot/projects/wifi/lib/libutil/realhostname.c#2 integrate .. //depot/projects/wifi/lib/libz/FREEBSD-upgrade#1 branch .. //depot/projects/wifi/lib/libz/adler32.c#2 integrate .. //depot/projects/wifi/lib/libz/compress.c#2 integrate .. //depot/projects/wifi/lib/libz/crc32.c#2 integrate .. //depot/projects/wifi/lib/libz/deflate.c#2 integrate .. //depot/projects/wifi/lib/libz/deflate.h#2 integrate .. //depot/projects/wifi/lib/libz/example.c#2 integrate .. //depot/projects/wifi/lib/libz/infback.c#2 integrate .. //depot/projects/wifi/lib/libz/inffast.c#2 integrate .. //depot/projects/wifi/lib/libz/inflate.c#2 integrate .. //depot/projects/wifi/lib/libz/inftrees.c#2 integrate .. //depot/projects/wifi/lib/libz/trees.c#2 integrate .. //depot/projects/wifi/lib/libz/uncompr.c#2 integrate .. //depot/projects/wifi/lib/libz/zlib.3#2 integrate .. //depot/projects/wifi/lib/libz/zutil.c#2 integrate .. //depot/projects/wifi/lib/libz/zutil.h#2 integrate .. //depot/projects/wifi/libexec/Makefile#6 integrate .. //depot/projects/wifi/libexec/ftp-proxy/Makefile#2 integrate .. //depot/projects/wifi/libexec/getty/ttys.5#3 integrate .. //depot/projects/wifi/libexec/rlogind/rlogind.c#4 integrate .. //depot/projects/wifi/libexec/rshd/rshd.c#5 integrate .. //depot/projects/wifi/libexec/rtld-elf/i386/rtld_start.S#2 integrate .. //depot/projects/wifi/libexec/tftpd/tftpd.c#3 integrate .. //depot/projects/wifi/release/Makefile#9 integrate .. //depot/projects/wifi/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#14 integrate .. //depot/projects/wifi/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#14 integrate .. //depot/projects/wifi/release/doc/share/misc/dev.archlist.txt#13 integrate .. //depot/projects/wifi/release/picobsd/tinyware/login/pico-login.c#2 integrate .. //depot/projects/wifi/sbin/Makefile#7 integrate .. //depot/projects/wifi/sbin/atacontrol/atacontrol.8#2 integrate .. //depot/projects/wifi/sbin/atacontrol/atacontrol.c#3 integrate .. //depot/projects/wifi/sbin/devd/devd.cc#4 integrate .. //depot/projects/wifi/sbin/ifconfig/af_inet6.c#6 integrate .. //depot/projects/wifi/sbin/ifconfig/ifconfig.c#13 integrate .. //depot/projects/wifi/sbin/ipf/Makefile.inc#2 integrate .. //depot/projects/wifi/sbin/ipf/ipf/Makefile#2 integrate .. //depot/projects/wifi/sbin/ipfw/ipfw.8#11 integrate .. //depot/projects/wifi/sbin/ipfw/ipfw2.c#10 integrate .. //depot/projects/wifi/sbin/kldstat/kldstat.c#3 integrate .. //depot/projects/wifi/sbin/mount_reiserfs/Makefile#1 branch .. //depot/projects/wifi/sbin/mount_reiserfs/mount_reiserfs.8#1 branch .. //depot/projects/wifi/sbin/mount_reiserfs/mount_reiserfs.c#1 branch .. //depot/projects/wifi/sbin/route/route.c#2 integrate .. //depot/projects/wifi/share/doc/papers/contents/contents.ms#2 integrate .. //depot/projects/wifi/share/man/man3/Makefile#4 integrate .. //depot/projects/wifi/share/man/man3/pthread.3#3 integrate .. //depot/projects/wifi/share/man/man3/pthread_atfork.3#1 branch .. //depot/projects/wifi/share/man/man4/Makefile#22 integrate .. //depot/projects/wifi/share/man/man4/amr.4#8 integrate .. //depot/projects/wifi/share/man/man4/bge.4#3 integrate .. //depot/projects/wifi/share/man/man4/carp.4#5 integrate .. //depot/projects/wifi/share/man/man4/iwi.4#3 integrate .. //depot/projects/wifi/share/man/man4/mac_bsdextended.4#3 integrate .. //depot/projects/wifi/share/man/man4/miibus.4#3 integrate .. //depot/projects/wifi/share/man/man4/mn.4#1 branch .. //depot/projects/wifi/share/man/man4/ng_netflow.4#8 integrate .. //depot/projects/wifi/share/man/man4/nve.4#1 branch .. //depot/projects/wifi/share/man/man4/pcm.4#3 integrate .. //depot/projects/wifi/share/man/man4/sk.4#4 integrate .. //depot/projects/wifi/share/man/man4/snd_ad1816.4#3 integrate .. //depot/projects/wifi/share/man/man4/snd_als4000.4#3 integrate .. //depot/projects/wifi/share/man/man4/snd_cmi.4#3 integrate .. //depot/projects/wifi/share/man/man4/snd_cs4281.4#3 integrate .. //depot/projects/wifi/share/man/man4/snd_csa.4#3 integrate .. //depot/projects/wifi/share/man/man4/snd_ds1.4#3 integrate .. //depot/projects/wifi/share/man/man4/snd_emu10k1.4#3 integrate .. //depot/projects/wifi/share/man/man4/snd_es137x.4#3 integrate .. //depot/projects/wifi/share/man/man4/snd_ess.4#3 integrate .. //depot/projects/wifi/share/man/man4/snd_gusc.4#3 integrate .. //depot/projects/wifi/share/man/man4/snd_sbc.4#4 integrate .. //depot/projects/wifi/share/man/man4/snd_solo.4#3 integrate .. //depot/projects/wifi/share/man/man4/twe.4#5 integrate .. //depot/projects/wifi/share/man/man5/Makefile#3 integrate .. //depot/projects/wifi/share/man/man5/devfs.conf.5#1 branch .. //depot/projects/wifi/share/man/man5/devfs.rules.5#1 branch .. //depot/projects/wifi/share/man/man7/release.7#5 integrate .. //depot/projects/wifi/share/man/man9/VOP_IOCTL.9#3 integrate .. //depot/projects/wifi/share/man/man9/devclass_get_devices.9#2 integrate .. //depot/projects/wifi/share/man/man9/devclass_get_drivers.9#2 integrate .. //depot/projects/wifi/share/man/man9/style.9#7 integrate .. //depot/projects/wifi/share/man/man9/taskqueue.9#7 integrate .. //depot/projects/wifi/share/misc/bsd-family-tree#8 integrate .. //depot/projects/wifi/share/mk/bsd.cpu.mk#4 integrate .. //depot/projects/wifi/sys/alpha/alpha/busdma_machdep.c#5 integrate .. //depot/projects/wifi/sys/alpha/alpha/clock.c#3 integrate .. //depot/projects/wifi/sys/alpha/alpha/timerreg.h#3 delete .. //depot/projects/wifi/sys/alpha/include/ppireg.h#1 branch .. //depot/projects/wifi/sys/alpha/include/timerreg.h#1 branch .. //depot/projects/wifi/sys/alpha/isa/isa_dma.c#3 integrate .. //depot/projects/wifi/sys/alpha/osf1/osf1_mount.c#4 integrate .. //depot/projects/wifi/sys/amd64/amd64/exception.S#3 integrate .. //depot/projects/wifi/sys/amd64/amd64/local_apic.c#6 integrate .. //depot/projects/wifi/sys/amd64/amd64/mp_machdep.c#7 integrate .. //depot/projects/wifi/sys/amd64/amd64/prof_machdep.c#4 integrate .. //depot/projects/wifi/sys/amd64/amd64/trap.c#5 integrate .. //depot/projects/wifi/sys/amd64/conf/GENERIC#9 integrate .. //depot/projects/wifi/sys/amd64/include/bus.h#4 integrate .. //depot/projects/wifi/sys/amd64/include/cpufunc.h#4 integrate .. //depot/projects/wifi/sys/amd64/include/ppireg.h#1 branch .. //depot/projects/wifi/sys/amd64/include/timerreg.h#1 branch .. //depot/projects/wifi/sys/amd64/isa/clock.c#6 integrate .. //depot/projects/wifi/sys/amd64/isa/isa.h#2 integrate .. //depot/projects/wifi/sys/amd64/isa/isa_dma.c#3 integrate .. //depot/projects/wifi/sys/amd64/isa/timerreg.h#3 delete .. //depot/projects/wifi/sys/arm/arm/bcopyinout.S#5 integrate .. //depot/projects/wifi/sys/arm/arm/bcopyinout_xscale.S#4 integrate .. //depot/projects/wifi/sys/arm/arm/busdma_machdep.c#10 integrate .. //depot/projects/wifi/sys/arm/arm/cpufunc.c#6 integrate .. //depot/projects/wifi/sys/arm/arm/cpufunc_asm_arm3.S#4 delete .. //depot/projects/wifi/sys/arm/arm/cpufunc_asm_arm67.S#4 delete .. //depot/projects/wifi/sys/arm/arm/in_cksum.c#4 integrate .. //depot/projects/wifi/sys/arm/arm/in_cksum_arm.S#4 integrate .. //depot/projects/wifi/sys/arm/arm/intr.c#6 integrate .. //depot/projects/wifi/sys/arm/arm/pmap.c#12 integrate .. //depot/projects/wifi/sys/arm/arm/swtch.S#10 integrate .. //depot/projects/wifi/sys/arm/arm/trap.c#11 integrate .. //depot/projects/wifi/sys/arm/arm/vm_machdep.c#8 integrate .. //depot/projects/wifi/sys/arm/conf/IQ31244#6 integrate .. //depot/projects/wifi/sys/arm/include/atomic.h#6 integrate .. //depot/projects/wifi/sys/arm/include/cpuconf.h#4 integrate .. //depot/projects/wifi/sys/arm/include/endian.h#5 integrate .. //depot/projects/wifi/sys/arm/include/in_cksum.h#2 integrate .. //depot/projects/wifi/sys/arm/xscale/i80321/iq31244_7seg.c#3 integrate .. //depot/projects/wifi/sys/boot/common/boot.c#2 integrate .. //depot/projects/wifi/sys/boot/common/help.common#2 integrate .. //depot/projects/wifi/sys/boot/common/loader.8#4 integrate .. //depot/projects/wifi/sys/boot/forth/loader.conf#5 integrate .. //depot/projects/wifi/sys/boot/i386/libi386/bioscd.c#2 integrate .. //depot/projects/wifi/sys/boot/ofw/libofw/elf_freebsd.c#2 integrate .. //depot/projects/wifi/sys/boot/ofw/libofw/ofw_copy.c#2 integrate .. //depot/projects/wifi/sys/boot/pc98/boot2/io.c#3 integrate .. //depot/projects/wifi/sys/cam/cam_xpt.c#10 integrate .. //depot/projects/wifi/sys/compat/freebsd32/freebsd32_misc.c#7 integrate .. //depot/projects/wifi/sys/compat/linux/linux_stats.c#6 integrate .. //depot/projects/wifi/sys/compat/ndis/kern_ndis.c#13 integrate .. //depot/projects/wifi/sys/compat/ndis/kern_windrv.c#8 integrate .. //depot/projects/wifi/sys/compat/ndis/ndis_var.h#11 integrate .. //depot/projects/wifi/sys/compat/ndis/ntoskrnl_var.h#13 integrate .. //depot/projects/wifi/sys/compat/ndis/subr_ndis.c#14 integrate .. //depot/projects/wifi/sys/compat/ndis/subr_ntoskrnl.c#15 integrate .. //depot/projects/wifi/sys/conf/NOTES#23 integrate .. //depot/projects/wifi/sys/conf/files.i386#18 integrate .. //depot/projects/wifi/sys/conf/files.pc98#10 integrate .. //depot/projects/wifi/sys/conf/files.sparc64#8 integrate .. //depot/projects/wifi/sys/conf/options#18 integrate .. //depot/projects/wifi/sys/conf/options.i386#7 integrate .. //depot/projects/wifi/sys/conf/options.pc98#6 integrate .. //depot/projects/wifi/sys/conf/options.sparc64#2 integrate .. //depot/projects/wifi/sys/contrib/ipfilter/netinet/ip_compat.h#4 integrate .. //depot/projects/wifi/sys/contrib/ngatm/netnatm/api/ccpriv.h#2 integrate .. //depot/projects/wifi/sys/contrib/ngatm/netnatm/api/unisap.h#2 integrate .. //depot/projects/wifi/sys/contrib/ngatm/netnatm/msg/uni_ie.c#2 integrate .. //depot/projects/wifi/sys/dev/acpi_support/acpi_panasonic.c#3 integrate .. //depot/projects/wifi/sys/dev/acpica/acpi.c#14 integrate .. //depot/projects/wifi/sys/dev/acpica/acpi_acad.c#3 integrate .. //depot/projects/wifi/sys/dev/acpica/acpi_ec.c#7 integrate .. //depot/projects/wifi/sys/dev/ata/ata-all.c#11 integrate .. //depot/projects/wifi/sys/dev/ata/ata-all.h#9 integrate .. //depot/projects/wifi/sys/dev/ata/ata-chipset.c#13 integrate .. //depot/projects/wifi/sys/dev/ata/ata-commands.h#3 delete .. //depot/projects/wifi/sys/dev/ata/ata-disk.c#9 integrate .. //depot/projects/wifi/sys/dev/ata/ata-lowlevel.c#13 integrate .. //depot/projects/wifi/sys/dev/ata/ata-pci.c#9 integrate .. //depot/projects/wifi/sys/dev/ata/ata-pci.h#8 integrate .. //depot/projects/wifi/sys/dev/ata/ata-queue.c#8 integrate .. //depot/projects/wifi/sys/dev/ata/ata-raid.c#9 integrate .. //depot/projects/wifi/sys/dev/ata/atapi-cam.c#5 integrate .. //depot/projects/wifi/sys/dev/ata/atapi-cd.c#9 integrate .. //depot/projects/wifi/sys/dev/ata/atapi-fd.c#6 integrate .. //depot/projects/wifi/sys/dev/ata/atapi-tape.c#7 integrate .. //depot/projects/wifi/sys/dev/bge/if_bge.c#10 integrate .. //depot/projects/wifi/sys/dev/bge/if_bgereg.h#6 integrate .. //depot/projects/wifi/sys/dev/bktr/bktr_card.c#6 integrate .. //depot/projects/wifi/sys/dev/bktr/bktr_reg.h#3 integrate .. //depot/projects/wifi/sys/dev/ciss/ciss.c#8 integrate .. //depot/projects/wifi/sys/dev/ciss/cissio.h#2 integrate .. //depot/projects/wifi/sys/dev/ct/ct_isa.c#3 integrate .. //depot/projects/wifi/sys/dev/em/README#2 integrate .. //depot/projects/wifi/sys/dev/em/if_em.c#10 integrate .. //depot/projects/wifi/sys/dev/em/if_em.h#4 integrate .. //depot/projects/wifi/sys/dev/em/if_em_hw.c#2 integrate .. //depot/projects/wifi/sys/dev/em/if_em_hw.h#2 integrate .. //depot/projects/wifi/sys/dev/em/if_em_osdep.h#2 integrate .. //depot/projects/wifi/sys/dev/esp/esp_sbus.c#5 integrate .. //depot/projects/wifi/sys/dev/esp/ncr53c9x.c#6 integrate .. //depot/projects/wifi/sys/dev/esp/ncr53c9xreg.h#4 integrate .. //depot/projects/wifi/sys/dev/esp/ncr53c9xvar.h#4 integrate .. //depot/projects/wifi/sys/dev/fb/boot_font.c#2 integrate .. //depot/projects/wifi/sys/dev/fb/creator.c#2 integrate .. //depot/projects/wifi/sys/dev/fb/gfb.c#2 integrate .. //depot/projects/wifi/sys/dev/fb/machfb.c#1 branch .. //depot/projects/wifi/sys/dev/fb/machfbreg.h#1 branch .. //depot/projects/wifi/sys/dev/fb/tga.c#2 integrate .. //depot/projects/wifi/sys/dev/firewire/fwohci_pci.c#4 integrate .. //depot/projects/wifi/sys/dev/firewire/fwohcireg.h#3 integrate .. //depot/projects/wifi/sys/dev/hatm/if_hatm_tx.c#3 integrate .. //depot/projects/wifi/sys/dev/hme/if_hme.c#5 integrate .. //depot/projects/wifi/sys/dev/ic/i8237.h#3 integrate .. //depot/projects/wifi/sys/dev/ic/i8253reg.h#1 branch .. //depot/projects/wifi/sys/dev/if_ndis/if_ndis.c#17 integrate .. //depot/projects/wifi/sys/dev/if_ndis/if_ndisvar.h#9 integrate .. //depot/projects/wifi/sys/dev/ipw/if_ipw.c#2 integrate .. //depot/projects/wifi/sys/dev/isp/isp_freebsd.h#3 integrate .. //depot/projects/wifi/sys/dev/isp/isp_inline.h#3 integrate .. //depot/projects/wifi/sys/dev/isp/isp_pci.c#4 integrate .. //depot/projects/wifi/sys/dev/isp/ispvar.h#6 integrate .. //depot/projects/wifi/sys/dev/iwi/if_iwi.c#4 integrate .. //depot/projects/wifi/sys/dev/iwi/if_iwireg.h#3 integrate .. //depot/projects/wifi/sys/dev/iwi/if_iwivar.h#3 integrate .. //depot/projects/wifi/sys/dev/ixgb/if_ixgb.c#6 integrate .. //depot/projects/wifi/sys/dev/ixgb/if_ixgb.h#5 integrate .. //depot/projects/wifi/sys/dev/kbd/kbdtables.h#2 integrate .. //depot/projects/wifi/sys/dev/mc146818/mc146818.c#3 integrate .. //depot/projects/wifi/sys/dev/mc146818/mc146818var.h#3 integrate .. //depot/projects/wifi/sys/dev/mii/brgphy.c#3 integrate .. //depot/projects/wifi/sys/dev/mii/miidevs#2 integrate .. //depot/projects/wifi/sys/dev/mk48txx/mk48txx.c#3 integrate .. //depot/projects/wifi/sys/dev/mk48txx/mk48txxreg.h#3 integrate .. //depot/projects/wifi/sys/dev/mk48txx/mk48txxvar.h#2 integrate .. //depot/projects/wifi/sys/dev/ofw/openfirmio.h#3 integrate .. //depot/projects/wifi/sys/dev/ofw/openpromio.c#2 integrate .. //depot/projects/wifi/sys/dev/ral/if_ral.c#2 integrate .. //depot/projects/wifi/sys/dev/sound/pci/maestro3.c#3 integrate .. //depot/projects/wifi/sys/dev/sound/sbus/cs4231.c#4 integrate .. //depot/projects/wifi/sys/dev/syscons/daemon/daemon_saver.c#2 integrate .. //depot/projects/wifi/sys/dev/syscons/scgfbrndr.c#2 integrate .. //depot/projects/wifi/sys/dev/syscons/scvtb.c#2 integrate .. //depot/projects/wifi/sys/dev/syscons/snake/snake_saver.c#2 integrate .. //depot/projects/wifi/sys/dev/syscons/star/star_saver.c#2 integrate .. //depot/projects/wifi/sys/dev/syscons/syscons.c#4 integrate .. //depot/projects/wifi/sys/dev/syscons/syscons.h#2 integrate .. //depot/projects/wifi/sys/dev/uart/uart_kbd_sun.c#3 integrate .. //depot/projects/wifi/sys/dev/usb/if_ural.c#2 integrate .. //depot/projects/wifi/sys/dev/usb/ohci_pci.c#4 integrate .. //depot/projects/wifi/sys/dev/usb/uhub.c#5 integrate .. //depot/projects/wifi/sys/dev/usb/umass.c#6 integrate .. //depot/projects/wifi/sys/dev/usb/usbdi.h#7 integrate .. //depot/projects/wifi/sys/dev/vkbd/vkbd.c#6 integrate .. //depot/projects/wifi/sys/fs/nwfs/nwfs_subr.c#3 integrate .. //depot/projects/wifi/sys/fs/udf/udf_vnops.c#13 integrate .. //depot/projects/wifi/sys/geom/geom_event.c#3 integrate .. //depot/projects/wifi/sys/geom/mirror/g_mirror.c#12 integrate .. //depot/projects/wifi/sys/geom/raid3/g_raid3_ctl.c#6 integrate .. //depot/projects/wifi/sys/geom/stripe/g_stripe.c#5 integrate .. //depot/projects/wifi/sys/geom/vinum/geom_vinum_drive.c#5 integrate .. //depot/projects/wifi/sys/gnu/reiserfs/README#1 branch .. //depot/projects/wifi/sys/gnu/reiserfs/reiserfs_fs.h#1 branch .. //depot/projects/wifi/sys/gnu/reiserfs/reiserfs_fs_i.h#1 branch .. //depot/projects/wifi/sys/gnu/reiserfs/reiserfs_fs_sb.h#1 branch .. //depot/projects/wifi/sys/gnu/reiserfs/reiserfs_hashes.c#1 branch .. //depot/projects/wifi/sys/gnu/reiserfs/reiserfs_inode.c#1 branch .. //depot/projects/wifi/sys/gnu/reiserfs/reiserfs_item_ops.c#1 branch .. //depot/projects/wifi/sys/gnu/reiserfs/reiserfs_mount.h#1 branch .. //depot/projects/wifi/sys/gnu/reiserfs/reiserfs_namei.c#1 branch .. //depot/projects/wifi/sys/gnu/reiserfs/reiserfs_prints.c#1 branch .. //depot/projects/wifi/sys/gnu/reiserfs/reiserfs_stree.c#1 branch .. //depot/projects/wifi/sys/gnu/reiserfs/reiserfs_vfsops.c#1 branch .. //depot/projects/wifi/sys/gnu/reiserfs/reiserfs_vnops.c#1 branch .. //depot/projects/wifi/sys/i386/conf/GENERIC#8 integrate .. //depot/projects/wifi/sys/i386/conf/NOTES#16 integrate .. //depot/projects/wifi/sys/i386/i386/identcpu.c#5 integrate .. //depot/projects/wifi/sys/i386/i386/initcpu.c#2 integrate .. //depot/projects/wifi/sys/i386/i386/locore.s#3 integrate .. //depot/projects/wifi/sys/i386/i386/mp_machdep.c#10 integrate .. //depot/projects/wifi/sys/i386/i386/nexus.c#3 integrate .. //depot/projects/wifi/sys/i386/i386/vm_machdep.c#13 integrate .. //depot/projects/wifi/sys/i386/include/cpufunc.h#3 integrate .. //depot/projects/wifi/sys/i386/include/md_var.h#3 integrate .. //depot/projects/wifi/sys/i386/include/npx.h#3 integrate .. //depot/projects/wifi/sys/i386/include/ppireg.h#1 branch .. //depot/projects/wifi/sys/i386/include/timerreg.h#1 branch .. //depot/projects/wifi/sys/i386/isa/atpic.c#3 integrate .. //depot/projects/wifi/sys/i386/isa/clock.c#5 integrate .. //depot/projects/wifi/sys/i386/isa/isa.h#3 integrate .. //depot/projects/wifi/sys/i386/isa/isa_dma.c#3 integrate .. //depot/projects/wifi/sys/i386/isa/lptreg.h#2 delete .. //depot/projects/wifi/sys/i386/isa/npx.c#5 integrate .. //depot/projects/wifi/sys/i386/isa/prof_machdep.c#3 integrate .. //depot/projects/wifi/sys/i386/isa/spkr.c#3 integrate .. //depot/projects/wifi/sys/i386/isa/timerreg.h#2 delete .. //depot/projects/wifi/sys/ia64/include/bus.h#6 integrate .. //depot/projects/wifi/sys/ia64/isa/isa_dma.c#3 integrate .. //depot/projects/wifi/sys/isa/isa_dmareg.h#1 branch .. //depot/projects/wifi/sys/isa/isareg.h#2 integrate .. //depot/projects/wifi/sys/isa/syscons_isa.c#2 integrate .. //depot/projects/wifi/sys/kern/imgact_elf.c#6 integrate .. //depot/projects/wifi/sys/kern/kern_event.c#7 integrate .. //depot/projects/wifi/sys/kern/kern_exit.c#10 integrate .. //depot/projects/wifi/sys/kern/kern_switch.c#9 integrate .. //depot/projects/wifi/sys/kern/kern_synch.c#7 integrate .. //depot/projects/wifi/sys/kern/subr_bus.c#15 integrate .. //depot/projects/wifi/sys/kern/sysv_shm.c#6 integrate .. //depot/projects/wifi/sys/kern/vfs_cluster.c#11 integrate .. //depot/projects/wifi/sys/kern/vfs_export.c#6 integrate .. //depot/projects/wifi/sys/kern/vfs_mount.c#21 integrate .. //depot/projects/wifi/sys/kern/vfs_syscalls.c#11 integrate .. //depot/projects/wifi/sys/libkern/iconv_xlat16.c#2 integrate .. //depot/projects/wifi/sys/modules/Makefile#24 integrate .. //depot/projects/wifi/sys/modules/esp/Makefile#3 integrate .. //depot/projects/wifi/sys/modules/fdc/Makefile#2 integrate .. //depot/projects/wifi/sys/modules/netgraph/Makefile.inc#3 integrate .. //depot/projects/wifi/sys/modules/pmc/Makefile#2 integrate .. //depot/projects/wifi/sys/modules/reiserfs/Makefile#1 branch .. //depot/projects/wifi/sys/modules/sio/Makefile#3 integrate .. //depot/projects/wifi/sys/net/bridge.c#6 integrate .. //depot/projects/wifi/sys/net/if.c#14 integrate .. //depot/projects/wifi/sys/net/if_tap.c#8 integrate .. //depot/projects/wifi/sys/net/if_var.h#12 integrate .. //depot/projects/wifi/sys/net/pfil.c#3 integrate .. //depot/projects/wifi/sys/netgraph/bluetooth/drivers/ubt/ng_ubt.c#3 integrate .. //depot/projects/wifi/sys/netgraph/netflow/netflow.c#9 integrate .. //depot/projects/wifi/sys/netgraph/netflow/netflow.h#2 integrate .. //depot/projects/wifi/sys/netgraph/netflow/ng_netflow.c#5 integrate .. //depot/projects/wifi/sys/netgraph/netflow/ng_netflow.h#4 integrate .. //depot/projects/wifi/sys/netgraph/netgraph.h#7 integrate .. //depot/projects/wifi/sys/netgraph/ng_base.c#12 integrate .. //depot/projects/wifi/sys/netgraph/ng_ksocket.c#5 integrate .. //depot/projects/wifi/sys/netgraph/ng_nat.c#2 integrate .. //depot/projects/wifi/sys/netgraph/ng_ppp.c#5 integrate .. //depot/projects/wifi/sys/netgraph/ng_socket.c#6 integrate .. //depot/projects/wifi/sys/netgraph/ng_split.c#3 integrate .. //depot/projects/wifi/sys/netinet/ip_carp.c#6 integrate .. //depot/projects/wifi/sys/netinet/ip_divert.c#8 integrate .. //depot/projects/wifi/sys/netinet/tcp.h#6 integrate .. //depot/projects/wifi/sys/netinet/tcp_input.c#12 integrate .. //depot/projects/wifi/sys/netinet/tcp_output.c#7 integrate .. //depot/projects/wifi/sys/netinet/tcp_sack.c#11 integrate .. //depot/projects/wifi/sys/netinet/tcp_timer.c#7 integrate .. //depot/projects/wifi/sys/netinet/tcp_usrreq.c#12 integrate .. //depot/projects/wifi/sys/netinet/tcp_var.h#10 integrate .. //depot/projects/wifi/sys/netinet6/icmp6.c#7 integrate .. //depot/projects/wifi/sys/netinet6/in6_src.c#3 integrate .. //depot/projects/wifi/sys/netinet6/ip6_fw.c#3 integrate .. //depot/projects/wifi/sys/netinet6/ip6_output.c#5 integrate .. //depot/projects/wifi/sys/netsmb/smb_conn.c#3 integrate .. //depot/projects/wifi/sys/nfsclient/nfs_socket.c#9 integrate .. //depot/projects/wifi/sys/nfsclient/nfs_vfsops.c#11 integrate .. //depot/projects/wifi/sys/pc98/cbus/30line.h#1 branch .. //depot/projects/wifi/sys/pc98/cbus/cbus.h#1 branch .. //depot/projects/wifi/sys/pc98/cbus/cbus_dma.c#1 branch .. //depot/projects/wifi/sys/pc98/cbus/cbus_dmareg.h#1 branch .. //depot/projects/wifi/sys/pc98/cbus/clock.c#1 branch .. //depot/projects/wifi/sys/pc98/cbus/fdc.c#1 branch .. //depot/projects/wifi/sys/pc98/cbus/fdc_cbus.c#1 branch .. //depot/projects/wifi/sys/pc98/cbus/fdcreg.h#1 branch .. //depot/projects/wifi/sys/pc98/cbus/fdcvar.h#1 branch .. //depot/projects/wifi/sys/pc98/cbus/gdc.c#1 branch .. //depot/projects/wifi/sys/pc98/cbus/nmi.c#1 branch .. //depot/projects/wifi/sys/pc98/cbus/olpt.c#1 branch .. //depot/projects/wifi/sys/pc98/cbus/olptreg.h#1 branch .. //depot/projects/wifi/sys/pc98/cbus/pckbd.c#1 branch .. //depot/projects/wifi/sys/pc98/cbus/pckbdtables.h#1 branch .. //depot/projects/wifi/sys/pc98/cbus/pmc.c#1 branch .. //depot/projects/wifi/sys/pc98/cbus/ppc.c#1 branch .. //depot/projects/wifi/sys/pc98/cbus/ppcreg.h#1 branch .. //depot/projects/wifi/sys/pc98/cbus/sc_machdep.h#1 branch .. //depot/projects/wifi/sys/pc98/cbus/scgdcrndr.c#1 branch .. //depot/projects/wifi/sys/pc98/cbus/scterm-sck.c#1 branch .. //depot/projects/wifi/sys/pc98/cbus/scvtb.c#1 branch .. //depot/projects/wifi/sys/pc98/cbus/sio.c#1 branch .. //depot/projects/wifi/sys/pc98/cbus/sio_cbus.c#1 branch .. //depot/projects/wifi/sys/pc98/cbus/syscons_cbus.c#1 branch .. //depot/projects/wifi/sys/pc98/conf/GENERIC#8 integrate .. //depot/projects/wifi/sys/pc98/conf/NOTES#11 integrate .. //depot/projects/wifi/sys/pc98/i386/busio.s#3 delete .. //depot/projects/wifi/sys/pc98/i386/busiosubr.c#3 delete .. //depot/projects/wifi/sys/pc98/i386/machdep.c#10 delete .. //depot/projects/wifi/sys/pc98/include/npx.h#2 integrate .. //depot/projects/wifi/sys/pc98/include/ppireg.h#1 branch .. //depot/projects/wifi/sys/pc98/include/timerreg.h#1 branch .. //depot/projects/wifi/sys/pc98/pc98/30line.h#3 delete .. //depot/projects/wifi/sys/pc98/pc98/busio.s#1 branch .. //depot/projects/wifi/sys/pc98/pc98/busiosubr.c#1 branch .. //depot/projects/wifi/sys/pc98/pc98/clock.c#4 delete .. //depot/projects/wifi/sys/pc98/pc98/fd.c#4 delete .. //depot/projects/wifi/sys/pc98/pc98/fdc_cbus.c#2 delete .. //depot/projects/wifi/sys/pc98/pc98/fdcvar.h#2 delete .. //depot/projects/wifi/sys/pc98/pc98/fdreg.h#2 delete .. //depot/projects/wifi/sys/pc98/pc98/isa_dma.c#4 delete .. //depot/projects/wifi/sys/pc98/pc98/machdep.c#1 branch .. //depot/projects/wifi/sys/pc98/pc98/nmi.c#2 delete .. //depot/projects/wifi/sys/pc98/pc98/olpt.c#4 delete .. //depot/projects/wifi/sys/pc98/pc98/pc98.h#3 delete .. //depot/projects/wifi/sys/pc98/pc98/pc98_machdep.c#4 integrate .. //depot/projects/wifi/sys/pc98/pc98/pc98gdc.c#4 delete .. //depot/projects/wifi/sys/pc98/pc98/pc98kbd.c#3 delete .. //depot/projects/wifi/sys/pc98/pc98/pmc.c#2 delete .. //depot/projects/wifi/sys/pc98/pc98/ppc.c#2 delete .. //depot/projects/wifi/sys/pc98/pc98/ppcreg.h#2 delete .. //depot/projects/wifi/sys/pc98/pc98/sc_machdep.h#2 delete .. //depot/projects/wifi/sys/pc98/pc98/scgdcrndr.c#2 delete .. //depot/projects/wifi/sys/pc98/pc98/scterm-sck.c#3 delete .. //depot/projects/wifi/sys/pc98/pc98/scvtbpc98.c#2 delete .. //depot/projects/wifi/sys/pc98/pc98/sio.c#3 delete .. //depot/projects/wifi/sys/pc98/pc98/sio_cbus.c#3 delete .. //depot/projects/wifi/sys/pc98/pc98/syscons_pc98.c#2 delete .. //depot/projects/wifi/sys/pccard/pccard_nbk.c#4 integrate .. //depot/projects/wifi/sys/pci/if_xl.c#6 integrate .. //depot/projects/wifi/sys/pci/if_xlreg.h#4 integrate .. //depot/projects/wifi/sys/powerpc/ofw/ofw_syscons.c#4 integrate .. //depot/projects/wifi/sys/powerpc/powermac/ata_kauai.c#9 integrate .. //depot/projects/wifi/sys/sparc64/central/central.c#4 integrate .. //depot/projects/wifi/sys/sparc64/conf/GENERIC#8 integrate .. //depot/projects/wifi/sys/sparc64/conf/NOTES#7 integrate .. //depot/projects/wifi/sys/sparc64/creator/creator.h#2 integrate .. //depot/projects/wifi/sys/sparc64/creator/creator_upa.c#2 integrate .. //depot/projects/wifi/sys/sparc64/ebus/ebus.c#3 integrate .. //depot/projects/wifi/sys/sparc64/fhc/fhc_central.c#4 integrate .. //depot/projects/wifi/sys/sparc64/fhc/fhc_nexus.c#4 integrate .. //depot/projects/wifi/sys/sparc64/include/eeprom.h#4 delete .. //depot/projects/wifi/sys/sparc64/isa/isa.c#4 integrate .. //depot/projects/wifi/sys/sparc64/sbus/dma_sbus.c#1 branch .. //depot/projects/wifi/sys/sparc64/sbus/lsi64854.c#4 integrate .. //depot/projects/wifi/sys/sparc64/sbus/lsi64854var.h#3 integrate .. //depot/projects/wifi/sys/sparc64/sbus/sbus.c#4 integrate .. //depot/projects/wifi/sys/sparc64/sbus/sbusvar.h#3 integrate .. //depot/projects/wifi/sys/sparc64/sparc64/eeprom.c#4 integrate .. //depot/projects/wifi/sys/sparc64/sparc64/eeprom_ebus.c#4 delete .. //depot/projects/wifi/sys/sparc64/sparc64/eeprom_sbus.c#4 delete .. //depot/projects/wifi/sys/sparc64/sparc64/nexus.c#3 integrate .. //depot/projects/wifi/sys/sparc64/sparc64/ofw_machdep.c#3 integrate .. //depot/projects/wifi/sys/sparc64/sparc64/rtc.c#3 integrate .. //depot/projects/wifi/sys/sparc64/sparc64/sc_machdep.c#2 integrate .. //depot/projects/wifi/sys/sys/acl.h#2 integrate .. //depot/projects/wifi/sys/sys/ata.h#4 integrate .. //depot/projects/wifi/sys/sys/consio.h#2 integrate .. //depot/projects/wifi/sys/sys/fbio.h#3 integrate .. //depot/projects/wifi/sys/sys/iconv.h#3 integrate .. //depot/projects/wifi/sys/sys/param.h#13 integrate .. //depot/projects/wifi/sys/sys/proc.h#15 integrate .. //depot/projects/wifi/sys/ufs/ufs/ufs_vnops.c#16 integrate .. //depot/projects/wifi/sys/vm/swap_pager.c#8 integrate .. //depot/projects/wifi/sys/vm/vm_fault.c#7 integrate .. //depot/projects/wifi/sys/vm/vm_glue.c#8 integrate .. //depot/projects/wifi/sys/vm/vm_pager.c#7 integrate .. //depot/projects/wifi/sys/vm/vm_pager.h#4 integrate .. //depot/projects/wifi/sys/vm/vnode_pager.c#18 integrate .. //depot/projects/wifi/tools/build/Makefile#3 integrate .. //depot/projects/wifi/tools/regression/netinet/tcpconnect/tcpconnect.c#2 integrate .. //depot/projects/wifi/tools/regression/sockets/listenclose/listenclose.c#2 integrate .. //depot/projects/wifi/tools/regression/usr.bin/file2c/regress.1.out#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/file2c/regress.2.out#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/file2c/regress.3.out#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/file2c/regress.4.out#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/file2c/regress.5.out#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/file2c/regress.6.out#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/file2c/regress.7.out#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/file2c/regress.8.out#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/file2c/regress.9.out#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/file2c/regress.out#2 delete .. //depot/projects/wifi/tools/regression/usr.bin/file2c/regress.sh#3 integrate .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/builtin/Makefile#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/builtin/expected.status#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/builtin/expected.stderr#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/builtin/expected.stdout#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/builtin/sh.sh#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/builtin/test.t#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/meta/Makefile#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/meta/expected.status#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/meta/expected.stderr#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/meta/expected.stdout#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/meta/sh.sh#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/meta/test.t#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/path/Makefile#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/path/expected.status#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/path/expected.stderr#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/path/expected.stdout#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/path/sh.sh#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/path/test.t#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/path_select/Makefile#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/path_select/expected.status#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/path_select/expected.stderr#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/path_select/expected.stdout#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/path_select/sh.sh#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/path_select/test.t#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/replace/Makefile#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/replace/expected.status#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/replace/expected.stderr#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/replace/expected.stdout#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/replace/sh.sh#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/replace/test.t#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/select/Makefile#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/select/expected.status#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/select/expected.stderr#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/select/expected.stdout#1 branch .. //depot/projects/wifi/tools/regression/usr.bin/make/shell/select/test.t#1 branch .. //depot/projects/wifi/tools/tools/nanobsd/Customize/files#1 branch .. //depot/projects/wifi/tools/tools/nanobsd/Customize/pkgs#1 branch .. //depot/projects/wifi/tools/tools/nanobsd/Files/root/change_password#1 branch .. //depot/projects/wifi/tools/tools/nanobsd/Files/root/save_sshkeys#1 branch .. //depot/projects/wifi/tools/tools/nanobsd/Files/root/updatep1#1 branch .. //depot/projects/wifi/tools/tools/nanobsd/Files/root/updatep2#1 branch .. //depot/projects/wifi/tools/tools/nanobsd/Makefile#5 integrate .. //depot/projects/wifi/tools/tools/nanobsd/i386.diskimage#6 integrate .. //depot/projects/wifi/tools/tools/nanobsd/make.conf#10 integrate .. //depot/projects/wifi/usr.bin/Makefile#7 integrate .. //depot/projects/wifi/usr.bin/asa/asa.c#2 integrate .. //depot/projects/wifi/usr.bin/awk/Makefile#2 integrate .. //depot/projects/wifi/usr.bin/awk/b.c.diff#1 branch .. //depot/projects/wifi/usr.bin/awk/main.c.diff#1 branch .. //depot/projects/wifi/usr.bin/awk/run.c.diff#1 branch .. //depot/projects/wifi/usr.bin/brandelf/brandelf.c#3 integrate .. //depot/projects/wifi/usr.bin/c89/c89.1#2 integrate .. //depot/projects/wifi/usr.bin/c89/c89.c#2 integrate .. //depot/projects/wifi/usr.bin/c99/c99.1#2 integrate .. //depot/projects/wifi/usr.bin/c99/c99.c#3 integrate .. //depot/projects/wifi/usr.bin/calendar/calendars/calendar.freebsd#13 integrate .. //depot/projects/wifi/usr.bin/catman/catman.c#3 integrate .. //depot/projects/wifi/usr.bin/colldef/parse.y#3 integrate .. //depot/projects/wifi/usr.bin/compress/zopen.c#3 integrate .. //depot/projects/wifi/usr.bin/dirname/dirname.c#2 integrate .. //depot/projects/wifi/usr.bin/du/du.1#2 integrate .. //depot/projects/wifi/usr.bin/file2c/Makefile#2 integrate .. //depot/projects/wifi/usr.bin/file2c/file2c.1#2 integrate .. //depot/projects/wifi/usr.bin/file2c/file2c.c#2 integrate .. //depot/projects/wifi/usr.bin/finger/finger.c#2 integrate .. //depot/projects/wifi/usr.bin/from/from.1#2 integrate .. //depot/projects/wifi/usr.bin/fstat/fstat.c#6 integrate .. //depot/projects/wifi/usr.bin/ipcs/ipcs.c#5 integrate .. //depot/projects/wifi/usr.bin/ktrdump/ktrdump.c#2 integrate .. //depot/projects/wifi/usr.bin/lastcomm/lastcomm.c#2 integrate .. //depot/projects/wifi/usr.bin/less/Makefile#2 integrate .. //depot/projects/wifi/usr.bin/less/lesspipe.sh#2 integrate .. //depot/projects/wifi/usr.bin/less/zless.sh#1 branch .. //depot/projects/wifi/usr.bin/lockf/lockf.1#3 integrate .. //depot/projects/wifi/usr.bin/make/GNode.h#3 integrate .. //depot/projects/wifi/usr.bin/make/Makefile#10 integrate .. //depot/projects/wifi/usr.bin/make/Makefile.dist#3 integrate .. //depot/projects/wifi/usr.bin/make/arch.c#13 integrate .. //depot/projects/wifi/usr.bin/make/arch.h#4 integrate .. //depot/projects/wifi/usr.bin/make/buf.c#7 integrate .. //depot/projects/wifi/usr.bin/make/buf.h#6 integrate .. //depot/projects/wifi/usr.bin/make/compat.c#11 delete .. //depot/projects/wifi/usr.bin/make/compat.h#3 delete .. //depot/projects/wifi/usr.bin/make/cond.c#12 integrate .. //depot/projects/wifi/usr.bin/make/for.c#12 integrate .. //depot/projects/wifi/usr.bin/make/for.h#3 integrate .. //depot/projects/wifi/usr.bin/make/globals.h#5 integrate .. //depot/projects/wifi/usr.bin/make/hash.c#6 integrate .. //depot/projects/wifi/usr.bin/make/hash.h#6 integrate .. //depot/projects/wifi/usr.bin/make/job.c#17 integrate .. //depot/projects/wifi/usr.bin/make/job.h#8 integrate .. //depot/projects/wifi/usr.bin/make/lst.c#4 integrate .. //depot/projects/wifi/usr.bin/make/lst.h#9 integrate .. //depot/projects/wifi/usr.bin/make/main.c#20 integrate .. //depot/projects/wifi/usr.bin/make/make.1#8 integrate .. //depot/projects/wifi/usr.bin/make/make.c#11 integrate .. //depot/projects/wifi/usr.bin/make/make.h#7 integrate .. //depot/projects/wifi/usr.bin/make/nonints.h#9 delete .. //depot/projects/wifi/usr.bin/make/parse.c#16 integrate .. //depot/projects/wifi/usr.bin/make/parse.h#4 integrate .. //depot/projects/wifi/usr.bin/make/proc.c#1 branch .. //depot/projects/wifi/usr.bin/make/proc.h#1 branch .. //depot/projects/wifi/usr.bin/make/shell.c#1 branch .. //depot/projects/wifi/usr.bin/make/shell.h#1 branch .. //depot/projects/wifi/usr.bin/make/sprite.h#3 delete .. //depot/projects/wifi/usr.bin/make/str.c#10 integrate .. //depot/projects/wifi/usr.bin/make/str.h#3 integrate .. //depot/projects/wifi/usr.bin/make/suff.c#11 integrate .. //depot/projects/wifi/usr.bin/make/targ.c#11 integrate .. //depot/projects/wifi/usr.bin/make/util.c#5 integrate .. //depot/projects/wifi/usr.bin/make/util.h#4 integrate .. //depot/projects/wifi/usr.bin/make/var.c#15 integrate .. //depot/projects/wifi/usr.bin/make/var.h#8 integrate .. //depot/projects/wifi/usr.bin/make/var_modify.c#8 delete .. //depot/projects/wifi/usr.bin/mesg/mesg.c#2 integrate .. //depot/projects/wifi/usr.bin/mklocale/Makefile#2 integrate .. //depot/projects/wifi/usr.bin/mklocale/yacc.y#3 integrate .. //depot/projects/wifi/usr.bin/mkuzip/mkuzip.c#3 integrate .. //depot/projects/wifi/usr.bin/netstat/route.c#2 integrate .. //depot/projects/wifi/usr.bin/newkey/newkey.c#3 integrate .. //depot/projects/wifi/usr.bin/nice/nice.c#2 integrate .. //depot/projects/wifi/usr.bin/pathchk/pathchk.c#2 integrate .. //depot/projects/wifi/usr.bin/printf/printf.c#5 integrate .. //depot/projects/wifi/usr.bin/renice/renice.c#2 integrate .. //depot/projects/wifi/usr.bin/rsh/rsh.c#3 integrate .. //depot/projects/wifi/usr.bin/rup/rup.c#2 integrate .. //depot/projects/wifi/usr.bin/ruptime/ruptime.c#2 integrate .. //depot/projects/wifi/usr.bin/rusers/rusers.c#2 integrate .. //depot/projects/wifi/usr.bin/rwall/rwall.c#2 integrate .. //depot/projects/wifi/usr.bin/sed/main.c#3 integrate .. //depot/projects/wifi/usr.bin/sed/sed.1#5 integrate .. //depot/projects/wifi/usr.bin/showmount/showmount.c#2 integrate .. //depot/projects/wifi/usr.bin/systat/systat.1#3 integrate .. //depot/projects/wifi/usr.bin/tail/tail.c#3 integrate .. //depot/projects/wifi/usr.bin/time/time.c#2 integrate .. //depot/projects/wifi/usr.bin/top/machine.c#4 integrate .. //depot/projects/wifi/usr.bin/truncate/truncate.c#2 integrate .. //depot/projects/wifi/usr.bin/truss/syscalls.c#3 integrate .. //depot/projects/wifi/usr.bin/ul/ul.1#3 integrate .. //depot/projects/wifi/usr.bin/ul/ul.c#2 integrate .. //depot/projects/wifi/usr.bin/unifdef/unifdef.1#4 integrate .. //depot/projects/wifi/usr.bin/unifdef/unifdef.c#3 integrate .. //depot/projects/wifi/usr.bin/vmstat/vmstat.8#3 integrate .. //depot/projects/wifi/usr.bin/vmstat/vmstat.c#3 integrate .. //depot/projects/wifi/usr.bin/what/what.1#3 integrate .. //depot/projects/wifi/usr.bin/what/what.c#2 integrate .. //depot/projects/wifi/usr.bin/write/write.1#3 integrate .. //depot/projects/wifi/usr.bin/xargs/xargs.1#3 integrate .. //depot/projects/wifi/usr.bin/xstr/xstr.1#4 integrate .. //depot/projects/wifi/usr.bin/xstr/xstr.c#2 integrate .. //depot/projects/wifi/usr.bin/ypcat/ypcat.c#2 integrate .. //depot/projects/wifi/usr.bin/ypmatch/ypmatch.c#2 integrate .. //depot/projects/wifi/usr.sbin/IPXrouted/main.c#2 integrate .. //depot/projects/wifi/usr.sbin/adduser/rmuser.sh#2 integrate .. //depot/projects/wifi/usr.sbin/arlcontrol/arlcontrol.c#2 integrate .. //depot/projects/wifi/usr.sbin/bluetooth/bthidd/parser.y#4 integrate .. //depot/projects/wifi/usr.sbin/bluetooth/bthidd/server.c#3 integrate .. //depot/projects/wifi/usr.sbin/bsnmpd/modules/Makefile.inc#2 integrate .. //depot/projects/wifi/usr.sbin/bsnmpd/modules/snmp_atm/Makefile#2 integrate .. //depot/projects/wifi/usr.sbin/bsnmpd/modules/snmp_netgraph/snmp_netgraph.c#2 integrate .. //depot/projects/wifi/usr.sbin/bsnmpd/modules/snmp_pf/pf_snmp.c#2 integrate .. //depot/projects/wifi/usr.sbin/burncd/burncd.c#4 integrate .. //depot/projects/wifi/usr.sbin/chkgrp/chkgrp.8#3 integrate .. //depot/projects/wifi/usr.sbin/chkgrp/chkgrp.c#2 integrate .. //depot/projects/wifi/usr.sbin/fwcontrol/fwcontrol.c#3 integrate .. //depot/projects/wifi/usr.sbin/gstat/gstat.8#3 integrate .. //depot/projects/wifi/usr.sbin/inetd/inetd.c#2 integrate .. //depot/projects/wifi/usr.sbin/iostat/iostat.8#4 integrate .. //depot/projects/wifi/usr.sbin/jail/jail.8#7 integrate .. //depot/projects/wifi/usr.sbin/lpr/common_source/net.c#2 integrate .. //depot/projects/wifi/usr.sbin/lpr/lpd/lpd.c#2 integrate .. //depot/projects/wifi/usr.sbin/mount_portalfs/activate.c#2 integrate .. //depot/projects/wifi/usr.sbin/mount_portalfs/pt_file.c#3 integrate .. //depot/projects/wifi/usr.sbin/mountd/mountd.c#4 integrate .. //depot/projects/wifi/usr.sbin/ndiscvt/inf.c#3 integrate .. //depot/projects/wifi/usr.sbin/ntp/doc/Makefile#2 integrate .. //depot/projects/wifi/usr.sbin/pkg_install/version/main.c#3 integrate .. //depot/projects/wifi/usr.sbin/pkg_install/version/perform.c#2 integrate .. //depot/projects/wifi/usr.sbin/pkg_install/version/pkg_version.1#5 integrate .. //depot/projects/wifi/usr.sbin/pkg_install/version/version.h#2 integrate .. //depot/projects/wifi/usr.sbin/ppp/ncpaddr.c#2 integrate .. //depot/projects/wifi/usr.sbin/rip6query/rip6query.c#2 integrate .. //depot/projects/wifi/usr.sbin/rpc.lockd/kern.c#4 integrate .. //depot/projects/wifi/usr.sbin/rpc.lockd/lockd_lock.c#2 integrate .. //depot/projects/wifi/usr.sbin/rpc.umntall/rpc.umntall.c#2 integrate .. //depot/projects/wifi/usr.sbin/syslogd/syslogd.c#8 integrate .. //depot/projects/wifi/usr.sbin/vidcontrol/vidcontrol.c#3 integrate .. //depot/projects/wifi/usr.sbin/ypserv/yp_dnslookup.c#4 integrate .. //depot/projects/wifi/usr.sbin/ypserv/yp_main.c#3 integrate Differences ... ==== //depot/projects/wifi/MAINTAINERS#5 (text+ko) ==== @@ -1,4 +1,4 @@ -$FreeBSD: src/MAINTAINERS,v 1.103 2005/03/13 15:30:01 pjd Exp $ +$FreeBSD: src/MAINTAINERS,v 1.106 2005/05/25 17:37:57 schweikh Exp $ subsystem login notes ----------------------------- @@ -105,7 +105,7 @@ rpc.lockd alfred Will be happy to review code, but not mandatory. truss alfred Will be happy to review code, but not mandatory. rpc alfred Pre-commit review requested. -pkg_install eik Pre-commit review or approval from portmgr@ requested. +pkg_install krion Pre-commit review or approval from portmgr@ requested. Following are the entries from the Makefiles, and a few other sources. Please remove stale entries from both their origin, and this file. @@ -113,9 +113,12 @@ Please also consider removing the lines from the files listed below and stating your preferences here instead. +List below generated with: +$ cd /usr/src; find */* -type f|xargs egrep 'MAINTAINER[ ]*=' + bin/dd/Makefile:MAINTAINER= green@FreeBSD.org contrib/cvs/FREEBSD-upgrade:MAINTAINER= peter@FreeBSD.org -games/fortune/datfiles/Makefile:MAINTAINER= jkh@FreeBSD.org +games/fortune/datfiles/Makefile:MAINTAINER= jkh gnu/usr.bin/cvs/Makefile:MAINTAINER= peter@FreeBSD.org gnu/usr.bin/cvs/contrib/Makefile:MAINTAINER= peter@FreeBSD.org gnu/usr.bin/cvs/cvs/Makefile:MAINTAINER= peter@FreeBSD.org @@ -123,25 +126,14 @@ gnu/usr.bin/cvs/doc/Makefile:MAINTAINER= peter@FreeBSD.org gnu/usr.bin/cvs/lib/Makefile:MAINTAINER= peter@FreeBSD.org gnu/usr.bin/cvs/libdiff/Makefile:MAINTAINER= peter@FreeBSD.org -gnu/usr.bin/man/apropos/Makefile:MAINTAINER= wosch@FreeBSD.org +gnu/usr.bin/man/apropos/Makefile:MAINTAINER= wosch lib/libc/posix1e/Makefile.inc:MAINTAINER= rwatson@FreeBSD.org lib/libusbhid/Makefile:MAINTAINER= n_hibma@FreeBSD.ORG -lib/libz/Makefile:MAINTAINER= peter@FreeBSD.org -sbin/dhclient/Makefile.inc:MAINTAINER= murray@FreeBSD.org -sbin/ipf/Makefile:MAINTAINER= darrenr@freebsd.org -sbin/ipfs/Makefile:MAINTAINER= darrenr@freebsd.org -sbin/ipfstat/Makefile:MAINTAINER= darrenr@freebsd.org -sbin/ipmon/Makefile:MAINTAINER= darrenr@freebsd.org -sbin/ipnat/Makefile:MAINTAINER= darrenr@freebsd.org -sys/boot/i386/cdboot/Makefile:MAINTAINER= jhb@FreeBSD.org -sys/boot/i386/pxeldr/Makefile:MAINTAINER= jhb@FreeBSD.org +lib/libz/Makefile:MAINTAINER=peter@FreeBSD.org +sbin/dhclient/Makefile.inc:MAINTAINER= mbr sys/compat/svr4/Makefile:MAINTAINER= newton@freebsd.org -sys/dev/asr/MAINTAINER:MAINTAINER= obrien@freebsd.org, scott_long@btc.adaptec.com, mark_salyzyn@adaptec.com -sys/dev/bktr/CHANGELOG.TXT:MAINTAINER= Roger Hardiman -sys/dev/ep/if_ep.c:MAINTAINER= Matthew N. Dodd -sys/dev/ex/if_ex.c:MAINTAINER= Matthew N. Dodd -sys/dev/ie/if_ie.c:MAINTAINER= Matthew N. Dodd -sys/dev/sound/pcm/feeder_rate.c:MAINTAINER= Orion Hodson +sys/dev/asr/MAINTAINER:MAINTAINER = obrien@freebsd, scott_long@btc.adaptec.com, mark_salyzyn@adaptec.com +sys/dev/bktr/CHANGELOG.TXT: * MAINTAINER = Roger Hardiman sys/modules/3dfx/Makefile:MAINTAINER= cokane@FreeBSD.org >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri May 27 14:59:46 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 69E1B16A420; Fri, 27 May 2005 14:59:45 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2508916A41C for ; Fri, 27 May 2005 14:59:45 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E076543D1D for ; Fri, 27 May 2005 14:59:44 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4RExi1P093626 for ; Fri, 27 May 2005 14:59:44 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4RExbXc093623 for perforce@freebsd.org; Fri, 27 May 2005 14:59:37 GMT (envelope-from jhb@freebsd.org) Date: Fri, 27 May 2005 14:59:37 GMT Message-Id: <200505271459.j4RExbXc093623@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 77553 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 27 May 2005 14:59:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=77553 Change 77553 by jhb@jhb_slimer on 2005/05/27 14:58:46 IFC @77551. Affected files ... .. //depot/projects/smpng/sys/alpha/alpha/busdma_machdep.c#27 integrate .. //depot/projects/smpng/sys/alpha/alpha/clock.c#15 integrate .. //depot/projects/smpng/sys/alpha/alpha/timerreg.h#4 delete .. //depot/projects/smpng/sys/alpha/alpha/vm_machdep.c#40 integrate .. //depot/projects/smpng/sys/alpha/include/_bus.h#1 branch .. //depot/projects/smpng/sys/alpha/include/bus.h#19 integrate .. //depot/projects/smpng/sys/alpha/include/pmc_mdep.h#1 branch .. //depot/projects/smpng/sys/alpha/include/ppireg.h#1 branch .. //depot/projects/smpng/sys/alpha/include/timerreg.h#1 branch .. //depot/projects/smpng/sys/alpha/isa/isa_dma.c#9 integrate .. //depot/projects/smpng/sys/alpha/osf1/osf1_mount.c#15 integrate .. //depot/projects/smpng/sys/amd64/amd64/exception.S#12 integrate .. //depot/projects/smpng/sys/amd64/amd64/local_apic.c#14 integrate .. //depot/projects/smpng/sys/amd64/amd64/machdep.c#40 integrate .. //depot/projects/smpng/sys/amd64/amd64/mp_machdep.c#20 integrate .. //depot/projects/smpng/sys/amd64/amd64/prof_machdep.c#4 integrate .. //depot/projects/smpng/sys/amd64/amd64/trap.c#25 integrate .. //depot/projects/smpng/sys/amd64/amd64/vm_machdep.c#26 integrate .. //depot/projects/smpng/sys/amd64/conf/GENERIC#33 integrate .. //depot/projects/smpng/sys/amd64/conf/NOTES#16 integrate .. //depot/projects/smpng/sys/amd64/include/_bus.h#1 branch .. //depot/projects/smpng/sys/amd64/include/bus.h#5 integrate .. //depot/projects/smpng/sys/amd64/include/cpufunc.h#12 integrate .. //depot/projects/smpng/sys/amd64/include/pmc_mdep.h#1 branch .. //depot/projects/smpng/sys/amd64/include/ppireg.h#1 branch .. //depot/projects/smpng/sys/amd64/include/smp.h#8 integrate .. //depot/projects/smpng/sys/amd64/include/timerreg.h#1 branch .. //depot/projects/smpng/sys/amd64/isa/clock.c#13 integrate .. //depot/projects/smpng/sys/amd64/isa/isa.h#4 integrate .. //depot/projects/smpng/sys/amd64/isa/isa_dma.c#9 integrate .. //depot/projects/smpng/sys/amd64/isa/timerreg.h#4 delete .. //depot/projects/smpng/sys/arm/arm/bcopyinout.S#6 integrate .. //depot/projects/smpng/sys/arm/arm/bcopyinout_xscale.S#4 integrate .. //depot/projects/smpng/sys/arm/arm/busdma_machdep.c#12 integrate .. //depot/projects/smpng/sys/arm/arm/cpufunc.c#8 integrate .. //depot/projects/smpng/sys/arm/arm/cpufunc_asm_arm3.S#4 delete .. //depot/projects/smpng/sys/arm/arm/cpufunc_asm_arm67.S#4 delete .. //depot/projects/smpng/sys/arm/arm/fusu.S#7 integrate .. //depot/projects/smpng/sys/arm/arm/in_cksum.c#4 integrate .. //depot/projects/smpng/sys/arm/arm/in_cksum_arm.S#5 integrate .. //depot/projects/smpng/sys/arm/arm/intr.c#8 integrate .. //depot/projects/smpng/sys/arm/arm/pmap.c#16 integrate .. //depot/projects/smpng/sys/arm/arm/swtch.S#11 integrate .. //depot/projects/smpng/sys/arm/arm/trap.c#11 integrate .. //depot/projects/smpng/sys/arm/arm/vm_machdep.c#11 integrate .. //depot/projects/smpng/sys/arm/conf/IQ31244#6 integrate .. //depot/projects/smpng/sys/arm/include/_bus.h#1 branch .. //depot/projects/smpng/sys/arm/include/atomic.h#10 integrate .. //depot/projects/smpng/sys/arm/include/bus.h#7 integrate .. //depot/projects/smpng/sys/arm/include/cpuconf.h#4 integrate .. //depot/projects/smpng/sys/arm/include/endian.h#10 integrate .. //depot/projects/smpng/sys/arm/include/in_cksum.h#2 integrate .. //depot/projects/smpng/sys/arm/include/pmc_mdep.h#1 branch .. //depot/projects/smpng/sys/arm/xscale/i80321/iq31244_7seg.c#2 integrate .. //depot/projects/smpng/sys/arm/xscale/i80321/iq31244_machdep.c#10 integrate .. //depot/projects/smpng/sys/boot/common/boot.c#4 integrate .. //depot/projects/smpng/sys/boot/common/help.common#17 integrate .. //depot/projects/smpng/sys/boot/common/loader.8#34 integrate .. //depot/projects/smpng/sys/boot/forth/loader.conf#34 integrate .. //depot/projects/smpng/sys/boot/i386/boot0/Makefile#12 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/biosacpi.c#9 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/bioscd.c#7 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/pxe.c#5 integrate .. //depot/projects/smpng/sys/boot/ofw/libofw/elf_freebsd.c#9 integrate .. //depot/projects/smpng/sys/boot/ofw/libofw/ofw_copy.c#7 integrate .. //depot/projects/smpng/sys/boot/pc98/boot2/Makefile#15 integrate .. //depot/projects/smpng/sys/boot/pc98/boot2/boot.c#6 integrate .. //depot/projects/smpng/sys/boot/pc98/boot2/boot.h#6 integrate .. //depot/projects/smpng/sys/boot/pc98/boot2/boot2.S#2 integrate .. //depot/projects/smpng/sys/boot/pc98/boot2/disk.c#8 integrate .. //depot/projects/smpng/sys/boot/pc98/boot2/io.c#6 integrate .. //depot/projects/smpng/sys/boot/pc98/boot2/sys.c#6 integrate .. //depot/projects/smpng/sys/boot/pc98/boot2/table.c#3 integrate .. //depot/projects/smpng/sys/boot/pc98/btx/btx/Makefile#8 integrate .. //depot/projects/smpng/sys/boot/pc98/btx/btx/btx.S#5 integrate .. //depot/projects/smpng/sys/boot/pc98/btx/btxldr/Makefile#7 integrate .. //depot/projects/smpng/sys/boot/pc98/btx/btxldr/btxldr.S#4 integrate .. //depot/projects/smpng/sys/boot/pc98/kgzldr/Makefile#11 integrate .. //depot/projects/smpng/sys/boot/pc98/kgzldr/crt.s#4 integrate .. //depot/projects/smpng/sys/boot/pc98/libpc98/Makefile#12 integrate .. //depot/projects/smpng/sys/boot/pc98/libpc98/biosdisk.c#10 integrate .. //depot/projects/smpng/sys/boot/pc98/libpc98/biosmem.c#4 integrate .. //depot/projects/smpng/sys/boot/pc98/libpc98/comconsole.c#3 integrate .. //depot/projects/smpng/sys/boot/pc98/libpc98/gatea20.c#3 integrate .. //depot/projects/smpng/sys/boot/pc98/libpc98/time.c#3 integrate .. //depot/projects/smpng/sys/boot/pc98/libpc98/vidconsole.c#7 integrate .. //depot/projects/smpng/sys/boot/pc98/loader/Makefile#15 integrate .. //depot/projects/smpng/sys/boot/pc98/loader/main.c#7 integrate .. //depot/projects/smpng/sys/cam/cam_xpt.c#29 integrate .. //depot/projects/smpng/sys/cam/scsi/scsi_da.c#58 integrate .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_misc.c#18 integrate .. //depot/projects/smpng/sys/compat/linux/linux_misc.c#56 integrate .. //depot/projects/smpng/sys/compat/linux/linux_stats.c#25 integrate .. //depot/projects/smpng/sys/compat/ndis/kern_ndis.c#27 integrate .. //depot/projects/smpng/sys/compat/ndis/kern_windrv.c#4 integrate .. //depot/projects/smpng/sys/compat/ndis/ndis_var.h#21 integrate .. //depot/projects/smpng/sys/compat/ndis/ntoskrnl_var.h#17 integrate .. //depot/projects/smpng/sys/compat/ndis/subr_hal.c#15 integrate .. //depot/projects/smpng/sys/compat/ndis/subr_ndis.c#28 integrate .. //depot/projects/smpng/sys/compat/ndis/subr_ntoskrnl.c#28 integrate .. //depot/projects/smpng/sys/compat/ndis/subr_usbd.c#3 integrate .. //depot/projects/smpng/sys/compat/ndis/winx64_wrap.S#2 integrate .. //depot/projects/smpng/sys/conf/NOTES#97 integrate .. //depot/projects/smpng/sys/conf/files#140 integrate .. //depot/projects/smpng/sys/conf/files.amd64#31 integrate .. //depot/projects/smpng/sys/conf/files.i386#82 integrate .. //depot/projects/smpng/sys/conf/files.ia64#48 integrate .. //depot/projects/smpng/sys/conf/files.pc98#73 integrate .. //depot/projects/smpng/sys/conf/files.sparc64#50 integrate .. //depot/projects/smpng/sys/conf/kern.post.mk#45 integrate .. //depot/projects/smpng/sys/conf/kmod.mk#47 integrate .. //depot/projects/smpng/sys/conf/options#98 integrate .. //depot/projects/smpng/sys/conf/options.amd64#12 integrate .. //depot/projects/smpng/sys/conf/options.i386#47 integrate .. //depot/projects/smpng/sys/conf/options.pc98#46 integrate .. //depot/projects/smpng/sys/conf/options.sparc64#12 integrate .. //depot/projects/smpng/sys/contrib/dev/ath/freebsd/ah_osdep.c#6 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/fil.c#17 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_auth.c#13 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_auth.h#5 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_compat.h#11 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_fil.c#19 delete .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_fil.h#11 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_fil_freebsd.c#1 branch .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_frag.c#11 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_frag.h#6 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_ftp_pxy.c#9 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_htable.c#1 branch .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_htable.h#1 branch .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_ipsec_pxy.c#2 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_irc_pxy.c#1 branch .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_log.c#11 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_lookup.c#1 branch .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_lookup.h#1 branch .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_nat.c#13 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_nat.h#9 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_netbios_pxy.c#2 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_pool.c#1 branch .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_pool.h#1 branch .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_pptp_pxy.c#1 branch .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_proxy.c#11 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_proxy.h#6 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_raudio_pxy.c#5 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_rcmd_pxy.c#5 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_rpcb_pxy.c#1 branch .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_rules.c#1 branch .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_rules.h#1 branch .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_scan.c#1 branch .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_scan.h#1 branch .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_state.c#12 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_state.h#8 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_sync.c#1 branch .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_sync.h#1 branch .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ipl.h#9 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/mlfk_ipl.c#8 integrate .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/api/ccpriv.h#2 integrate .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/api/unisap.h#2 integrate .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/msg/uni_ie.c#4 integrate .. //depot/projects/smpng/sys/contrib/pf/net/if_pflog.c#8 integrate .. //depot/projects/smpng/sys/contrib/pf/net/if_pflog.h#4 integrate .. //depot/projects/smpng/sys/contrib/pf/net/if_pfsync.c#11 integrate .. //depot/projects/smpng/sys/contrib/pf/net/if_pfsync.h#4 integrate .. //depot/projects/smpng/sys/contrib/pf/net/pf.c#17 integrate .. //depot/projects/smpng/sys/contrib/pf/net/pf_if.c#7 integrate .. //depot/projects/smpng/sys/contrib/pf/net/pf_ioctl.c#13 integrate .. //depot/projects/smpng/sys/contrib/pf/net/pf_norm.c#8 integrate .. //depot/projects/smpng/sys/contrib/pf/net/pf_osfp.c#4 integrate .. //depot/projects/smpng/sys/contrib/pf/net/pf_subr.c#2 integrate .. //depot/projects/smpng/sys/contrib/pf/net/pf_table.c#5 integrate .. //depot/projects/smpng/sys/contrib/pf/net/pfvar.h#7 integrate .. //depot/projects/smpng/sys/ddb/ddb.h#14 integrate .. //depot/projects/smpng/sys/dev/aac/aac_disk.c#23 integrate .. //depot/projects/smpng/sys/dev/acpi_support/acpi_asus.c#5 integrate .. //depot/projects/smpng/sys/dev/acpi_support/acpi_panasonic.c#3 integrate .. //depot/projects/smpng/sys/dev/acpica/Osd/OsdSchedule.c#24 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi.c#84 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_acad.c#22 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_ec.c#38 integrate .. //depot/projects/smpng/sys/dev/acpica/acpivar.h#57 integrate .. //depot/projects/smpng/sys/dev/arcmsr/arcmsr.c#2 integrate .. //depot/projects/smpng/sys/dev/asr/asr.c#29 integrate .. //depot/projects/smpng/sys/dev/ata/ata-all.c#70 integrate .. //depot/projects/smpng/sys/dev/ata/ata-all.h#37 integrate .. //depot/projects/smpng/sys/dev/ata/ata-card.c#26 integrate .. //depot/projects/smpng/sys/dev/ata/ata-cbus.c#15 integrate .. //depot/projects/smpng/sys/dev/ata/ata-chipset.c#52 integrate .. //depot/projects/smpng/sys/dev/ata/ata-commands.h#4 delete .. //depot/projects/smpng/sys/dev/ata/ata-disk.c#50 integrate .. //depot/projects/smpng/sys/dev/ata/ata-dma.c#44 integrate .. //depot/projects/smpng/sys/dev/ata/ata-isa.c#21 integrate .. //depot/projects/smpng/sys/dev/ata/ata-lowlevel.c#28 integrate .. //depot/projects/smpng/sys/dev/ata/ata-pci.c#55 integrate .. //depot/projects/smpng/sys/dev/ata/ata-pci.h#30 integrate .. //depot/projects/smpng/sys/dev/ata/ata-queue.c#26 integrate .. //depot/projects/smpng/sys/dev/ata/ata-raid.c#34 integrate .. //depot/projects/smpng/sys/dev/ata/ata-raid.h#19 integrate .. //depot/projects/smpng/sys/dev/ata/ata_if.m#2 integrate .. //depot/projects/smpng/sys/dev/ata/atapi-cam.c#25 integrate .. //depot/projects/smpng/sys/dev/ata/atapi-cd.c#56 integrate .. //depot/projects/smpng/sys/dev/ata/atapi-fd.c#28 integrate .. //depot/projects/smpng/sys/dev/ata/atapi-tape.c#32 integrate .. //depot/projects/smpng/sys/dev/bge/if_bge.c#54 integrate .. //depot/projects/smpng/sys/dev/bge/if_bgereg.h#29 integrate .. //depot/projects/smpng/sys/dev/bktr/bktr_card.c#12 integrate .. //depot/projects/smpng/sys/dev/bktr/bktr_reg.h#9 integrate .. //depot/projects/smpng/sys/dev/ciss/ciss.c#40 integrate .. //depot/projects/smpng/sys/dev/ciss/cissio.h#5 integrate .. //depot/projects/smpng/sys/dev/ciss/cissreg.h#10 integrate .. //depot/projects/smpng/sys/dev/ciss/cissvar.h#9 integrate .. //depot/projects/smpng/sys/dev/ct/ct_isa.c#11 integrate .. //depot/projects/smpng/sys/dev/digi/CX.bios.h#2 integrate .. //depot/projects/smpng/sys/dev/digi/CX.fepos.h#2 integrate .. //depot/projects/smpng/sys/dev/digi/CX_PCI.bios.h#2 integrate .. //depot/projects/smpng/sys/dev/digi/CX_PCI.fepos.h#2 integrate .. //depot/projects/smpng/sys/dev/digi/EPCX.bios.h#2 integrate .. //depot/projects/smpng/sys/dev/digi/EPCX.fepos.h#2 integrate .. //depot/projects/smpng/sys/dev/digi/EPCX_PCI.bios.h#2 integrate .. //depot/projects/smpng/sys/dev/digi/EPCX_PCI.fepos.h#2 integrate .. //depot/projects/smpng/sys/dev/digi/Xe.bios.h#2 integrate .. //depot/projects/smpng/sys/dev/digi/Xe.fepos.h#2 integrate .. //depot/projects/smpng/sys/dev/digi/Xem.bios.h#2 integrate .. //depot/projects/smpng/sys/dev/digi/Xem.fepos.h#2 integrate .. //depot/projects/smpng/sys/dev/drm/ati_pcigart.c#1 branch .. //depot/projects/smpng/sys/dev/drm/ati_pcigart.h#5 delete .. //depot/projects/smpng/sys/dev/drm/drm.h#8 integrate .. //depot/projects/smpng/sys/dev/drm/drmP.h#11 integrate .. //depot/projects/smpng/sys/dev/drm/drm_agpsupport.c#1 branch .. //depot/projects/smpng/sys/dev/drm/drm_agpsupport.h#5 delete .. //depot/projects/smpng/sys/dev/drm/drm_atomic.h#1 branch .. //depot/projects/smpng/sys/dev/drm/drm_auth.c#1 branch .. //depot/projects/smpng/sys/dev/drm/drm_auth.h#6 delete .. //depot/projects/smpng/sys/dev/drm/drm_bufs.c#1 branch .. //depot/projects/smpng/sys/dev/drm/drm_bufs.h#12 delete .. //depot/projects/smpng/sys/dev/drm/drm_context.c#1 branch .. //depot/projects/smpng/sys/dev/drm/drm_context.h#8 delete .. //depot/projects/smpng/sys/dev/drm/drm_dma.c#1 branch .. //depot/projects/smpng/sys/dev/drm/drm_dma.h#9 delete .. //depot/projects/smpng/sys/dev/drm/drm_drawable.c#1 branch .. //depot/projects/smpng/sys/dev/drm/drm_drawable.h#5 delete .. //depot/projects/smpng/sys/dev/drm/drm_drv.c#1 branch .. //depot/projects/smpng/sys/dev/drm/drm_drv.h#21 delete .. //depot/projects/smpng/sys/dev/drm/drm_fops.c#1 branch .. //depot/projects/smpng/sys/dev/drm/drm_fops.h#11 delete .. //depot/projects/smpng/sys/dev/drm/drm_ioctl.c#1 branch .. //depot/projects/smpng/sys/dev/drm/drm_ioctl.h#8 delete .. //depot/projects/smpng/sys/dev/drm/drm_irq.c#1 branch .. //depot/projects/smpng/sys/dev/drm/drm_irq.h#5 delete .. //depot/projects/smpng/sys/dev/drm/drm_linux_list.h#3 integrate .. //depot/projects/smpng/sys/dev/drm/drm_lock.c#1 branch .. //depot/projects/smpng/sys/dev/drm/drm_lock.h#6 delete .. //depot/projects/smpng/sys/dev/drm/drm_memory.c#1 branch .. //depot/projects/smpng/sys/dev/drm/drm_memory.h#10 delete .. //depot/projects/smpng/sys/dev/drm/drm_memory_debug.h#4 delete .. //depot/projects/smpng/sys/dev/drm/drm_os_freebsd.h#19 delete .. //depot/projects/smpng/sys/dev/drm/drm_pci.c#1 branch .. //depot/projects/smpng/sys/dev/drm/drm_pci.h#4 delete .. //depot/projects/smpng/sys/dev/drm/drm_pciids.h#2 integrate .. //depot/projects/smpng/sys/dev/drm/drm_sarea.h#5 integrate .. //depot/projects/smpng/sys/dev/drm/drm_scatter.c#1 branch .. //depot/projects/smpng/sys/dev/drm/drm_scatter.h#6 delete .. //depot/projects/smpng/sys/dev/drm/drm_sysctl.c#1 branch .. //depot/projects/smpng/sys/dev/drm/drm_sysctl.h#9 delete .. //depot/projects/smpng/sys/dev/drm/drm_vm.c#1 branch .. //depot/projects/smpng/sys/dev/drm/drm_vm.h#11 delete .. //depot/projects/smpng/sys/dev/drm/i915_dma.c#1 branch .. //depot/projects/smpng/sys/dev/drm/i915_drm.h#1 branch .. //depot/projects/smpng/sys/dev/drm/i915_drv.c#1 branch .. //depot/projects/smpng/sys/dev/drm/i915_drv.h#1 branch .. //depot/projects/smpng/sys/dev/drm/i915_irq.c#1 branch .. //depot/projects/smpng/sys/dev/drm/i915_mem.c#1 branch .. //depot/projects/smpng/sys/dev/drm/mach64_dma.c#1 branch .. //depot/projects/smpng/sys/dev/drm/mach64_drm.h#1 branch .. //depot/projects/smpng/sys/dev/drm/mach64_drv.c#1 branch .. //depot/projects/smpng/sys/dev/drm/mach64_drv.h#1 branch .. //depot/projects/smpng/sys/dev/drm/mach64_irq.c#1 branch .. //depot/projects/smpng/sys/dev/drm/mach64_state.c#1 branch .. //depot/projects/smpng/sys/dev/drm/mga.h#7 delete .. //depot/projects/smpng/sys/dev/drm/mga_dma.c#10 integrate .. //depot/projects/smpng/sys/dev/drm/mga_drm.h#5 integrate .. //depot/projects/smpng/sys/dev/drm/mga_drv.c#7 integrate .. //depot/projects/smpng/sys/dev/drm/mga_drv.h#8 integrate .. //depot/projects/smpng/sys/dev/drm/mga_irq.c#5 integrate .. //depot/projects/smpng/sys/dev/drm/mga_state.c#7 integrate .. //depot/projects/smpng/sys/dev/drm/mga_ucode.h#3 integrate .. //depot/projects/smpng/sys/dev/drm/mga_warp.c#5 integrate .. //depot/projects/smpng/sys/dev/drm/r128.h#8 delete .. //depot/projects/smpng/sys/dev/drm/r128_cce.c#10 integrate .. //depot/projects/smpng/sys/dev/drm/r128_drm.h#6 integrate .. //depot/projects/smpng/sys/dev/drm/r128_drv.c#7 integrate .. //depot/projects/smpng/sys/dev/drm/r128_drv.h#9 integrate .. //depot/projects/smpng/sys/dev/drm/r128_irq.c#5 integrate .. //depot/projects/smpng/sys/dev/drm/r128_state.c#10 integrate .. //depot/projects/smpng/sys/dev/drm/radeon.h#11 delete .. //depot/projects/smpng/sys/dev/drm/radeon_cp.c#11 integrate .. //depot/projects/smpng/sys/dev/drm/radeon_drm.h#9 integrate .. //depot/projects/smpng/sys/dev/drm/radeon_drv.c#9 integrate .. //depot/projects/smpng/sys/dev/drm/radeon_drv.h#11 integrate .. //depot/projects/smpng/sys/dev/drm/radeon_irq.c#6 integrate .. //depot/projects/smpng/sys/dev/drm/radeon_mem.c#7 integrate .. //depot/projects/smpng/sys/dev/drm/radeon_state.c#12 integrate .. //depot/projects/smpng/sys/dev/drm/savage_bci.c#1 branch .. //depot/projects/smpng/sys/dev/drm/savage_drm.h#1 branch .. //depot/projects/smpng/sys/dev/drm/savage_drv.c#1 branch .. //depot/projects/smpng/sys/dev/drm/savage_drv.h#1 branch .. //depot/projects/smpng/sys/dev/drm/savage_state.c#1 branch .. //depot/projects/smpng/sys/dev/drm/sis.h#5 delete .. //depot/projects/smpng/sys/dev/drm/sis_drm.h#4 integrate .. //depot/projects/smpng/sys/dev/drm/sis_drv.c#5 integrate .. //depot/projects/smpng/sys/dev/drm/sis_drv.h#3 integrate .. //depot/projects/smpng/sys/dev/drm/sis_ds.c#3 integrate .. //depot/projects/smpng/sys/dev/drm/sis_ds.h#4 integrate .. //depot/projects/smpng/sys/dev/drm/sis_mm.c#7 integrate .. //depot/projects/smpng/sys/dev/drm/tdfx.h#6 delete .. //depot/projects/smpng/sys/dev/drm/tdfx_drv.c#7 integrate .. //depot/projects/smpng/sys/dev/drm/tdfx_drv.h#1 branch .. //depot/projects/smpng/sys/dev/em/README#9 integrate .. //depot/projects/smpng/sys/dev/em/if_em.c#47 integrate .. //depot/projects/smpng/sys/dev/em/if_em.h#25 integrate .. //depot/projects/smpng/sys/dev/em/if_em_hw.c#15 integrate .. //depot/projects/smpng/sys/dev/em/if_em_hw.h#14 integrate .. //depot/projects/smpng/sys/dev/em/if_em_osdep.h#14 integrate .. //depot/projects/smpng/sys/dev/esp/esp_sbus.c#7 integrate .. //depot/projects/smpng/sys/dev/esp/ncr53c9x.c#5 integrate .. //depot/projects/smpng/sys/dev/esp/ncr53c9xreg.h#4 integrate .. //depot/projects/smpng/sys/dev/esp/ncr53c9xvar.h#4 integrate .. //depot/projects/smpng/sys/dev/fb/boot_font.c#3 integrate .. //depot/projects/smpng/sys/dev/fb/creator.c#6 integrate .. //depot/projects/smpng/sys/dev/fb/gfb.c#5 integrate .. //depot/projects/smpng/sys/dev/fb/machfb.c#1 branch .. //depot/projects/smpng/sys/dev/fb/machfbreg.h#1 branch .. //depot/projects/smpng/sys/dev/fb/tga.c#5 integrate .. //depot/projects/smpng/sys/dev/firewire/fwohci_pci.c#34 integrate .. //depot/projects/smpng/sys/dev/firewire/fwohcireg.h#18 integrate .. //depot/projects/smpng/sys/dev/fxp/if_fxp.c#62 integrate .. //depot/projects/smpng/sys/dev/fxp/if_fxpreg.h#11 integrate .. //depot/projects/smpng/sys/dev/fxp/rcvbundl.h#3 integrate .. //depot/projects/smpng/sys/dev/hatm/if_hatm_tx.c#9 integrate .. //depot/projects/smpng/sys/dev/hme/if_hme.c#22 integrate .. //depot/projects/smpng/sys/dev/hwpmc/hwpmc_amd.c#1 branch .. //depot/projects/smpng/sys/dev/hwpmc/hwpmc_intel.c#1 branch .. //depot/projects/smpng/sys/dev/hwpmc/hwpmc_mod.c#1 branch .. //depot/projects/smpng/sys/dev/hwpmc/hwpmc_pentium.c#1 branch .. //depot/projects/smpng/sys/dev/hwpmc/hwpmc_piv.c#1 branch .. //depot/projects/smpng/sys/dev/hwpmc/hwpmc_ppro.c#1 branch .. //depot/projects/smpng/sys/dev/ic/i8237.h#3 integrate .. //depot/projects/smpng/sys/dev/ic/i8253reg.h#1 branch .. //depot/projects/smpng/sys/dev/if_ndis/if_ndis.c#28 integrate .. //depot/projects/smpng/sys/dev/if_ndis/if_ndis_pccard.c#7 integrate .. //depot/projects/smpng/sys/dev/if_ndis/if_ndis_pci.c#10 integrate .. //depot/projects/smpng/sys/dev/if_ndis/if_ndis_usb.c#2 integrate .. //depot/projects/smpng/sys/dev/if_ndis/if_ndisvar.h#13 integrate .. //depot/projects/smpng/sys/dev/iir/iir_ctrl.c#13 integrate .. //depot/projects/smpng/sys/dev/ips/ips.c#12 integrate .. //depot/projects/smpng/sys/dev/ipw/if_ipw.c#1 branch .. //depot/projects/smpng/sys/dev/ipw/if_ipwreg.h#1 branch .. //depot/projects/smpng/sys/dev/ipw/if_ipwvar.h#1 branch .. //depot/projects/smpng/sys/dev/isp/isp_freebsd.h#24 integrate .. //depot/projects/smpng/sys/dev/isp/isp_inline.h#13 integrate .. //depot/projects/smpng/sys/dev/isp/isp_pci.c#29 integrate .. //depot/projects/smpng/sys/dev/isp/ispvar.h#26 integrate .. //depot/projects/smpng/sys/dev/iwi/if_iwi.c#1 branch .. //depot/projects/smpng/sys/dev/iwi/if_iwireg.h#1 branch .. //depot/projects/smpng/sys/dev/iwi/if_iwivar.h#1 branch .. //depot/projects/smpng/sys/dev/ixgb/if_ixgb.c#8 integrate .. //depot/projects/smpng/sys/dev/ixgb/if_ixgb.h#5 integrate .. //depot/projects/smpng/sys/dev/kbd/kbdtables.h#2 integrate .. //depot/projects/smpng/sys/dev/mc146818/mc146818.c#3 integrate .. //depot/projects/smpng/sys/dev/mc146818/mc146818var.h#3 integrate .. //depot/projects/smpng/sys/dev/mii/brgphy.c#24 integrate .. //depot/projects/smpng/sys/dev/mii/miidevs#15 integrate .. //depot/projects/smpng/sys/dev/mk48txx/mk48txx.c#5 integrate .. //depot/projects/smpng/sys/dev/mk48txx/mk48txxreg.h#4 integrate .. //depot/projects/smpng/sys/dev/mk48txx/mk48txxvar.h#2 integrate .. //depot/projects/smpng/sys/dev/musycc/musycc.c#12 delete .. //depot/projects/smpng/sys/dev/nve/if_nve.c#2 integrate .. //depot/projects/smpng/sys/dev/ofw/openfirmio.h#6 integrate .. //depot/projects/smpng/sys/dev/ofw/openpromio.c#7 integrate .. //depot/projects/smpng/sys/dev/pccard/pccarddevs#44 integrate .. //depot/projects/smpng/sys/dev/pci/pci.c#57 integrate .. //depot/projects/smpng/sys/dev/pci/pci_pci.c#25 integrate .. //depot/projects/smpng/sys/dev/pci/pcireg.h#9 integrate .. //depot/projects/smpng/sys/dev/pci/pcivar.h#14 integrate .. //depot/projects/smpng/sys/dev/puc/pucdata.c#31 integrate .. //depot/projects/smpng/sys/dev/ral/if_ral.c#1 branch .. //depot/projects/smpng/sys/dev/ral/if_ral_pccard.c#1 branch .. //depot/projects/smpng/sys/dev/ral/if_ral_pci.c#1 branch .. //depot/projects/smpng/sys/dev/ral/if_ralrate.c#1 branch .. //depot/projects/smpng/sys/dev/ral/if_ralrate.h#1 branch .. //depot/projects/smpng/sys/dev/ral/if_ralreg.h#1 branch .. //depot/projects/smpng/sys/dev/ral/if_ralvar.h#1 branch .. //depot/projects/smpng/sys/dev/sound/pci/maestro3.c#21 integrate .. //depot/projects/smpng/sys/dev/sound/sbus/cs4231.c#4 integrate .. //depot/projects/smpng/sys/dev/sound/usb/uaudio.c#6 integrate .. //depot/projects/smpng/sys/dev/sound/usb/uaudio.h#4 integrate .. //depot/projects/smpng/sys/dev/sound/usb/uaudio_pcm.c#10 integrate .. //depot/projects/smpng/sys/dev/syscons/daemon/daemon_saver.c#3 integrate .. //depot/projects/smpng/sys/dev/syscons/scgfbrndr.c#6 integrate .. //depot/projects/smpng/sys/dev/syscons/scvtb.c#5 integrate .. //depot/projects/smpng/sys/dev/syscons/snake/snake_saver.c#3 integrate .. //depot/projects/smpng/sys/dev/syscons/star/star_saver.c#2 integrate .. //depot/projects/smpng/sys/dev/syscons/syscons.c#47 integrate .. //depot/projects/smpng/sys/dev/syscons/syscons.h#11 integrate .. //depot/projects/smpng/sys/dev/twa/tw_osl_cam.c#2 integrate .. //depot/projects/smpng/sys/dev/uart/uart_dev_z8530.c#8 integrate .. //depot/projects/smpng/sys/dev/uart/uart_kbd_sun.c#4 integrate .. //depot/projects/smpng/sys/dev/uart/uart_tty.c#13 integrate .. //depot/projects/smpng/sys/dev/usb/if_ural.c#1 branch .. //depot/projects/smpng/sys/dev/usb/if_uralreg.h#1 branch .. //depot/projects/smpng/sys/dev/usb/if_uralvar.h#1 branch .. //depot/projects/smpng/sys/dev/usb/ohci_pci.c#13 integrate .. //depot/projects/smpng/sys/dev/usb/uhub.c#25 integrate .. //depot/projects/smpng/sys/dev/usb/umass.c#47 integrate .. //depot/projects/smpng/sys/dev/usb/usbdevs#75 integrate .. //depot/projects/smpng/sys/dev/usb/usbdi.h#17 integrate .. //depot/projects/smpng/sys/dev/usb/uvisor.c#15 integrate .. //depot/projects/smpng/sys/dev/vge/if_vge.c#6 integrate .. //depot/projects/smpng/sys/dev/vkbd/vkbd.c#6 integrate .. //depot/projects/smpng/sys/dev/wl/if_wl.c#23 integrate .. //depot/projects/smpng/sys/dev/wl/if_wl_i82586.h#1 branch .. //depot/projects/smpng/sys/fs/devfs/devfs_vfsops.c#23 integrate .. //depot/projects/smpng/sys/fs/devfs/devfs_vnops.c#45 integrate .. //depot/projects/smpng/sys/fs/msdosfs/msdosfs_conv.c#12 integrate .. //depot/projects/smpng/sys/fs/msdosfs/msdosfs_lookup.c#11 integrate .. //depot/projects/smpng/sys/fs/ntfs/ntfs_subr.c#20 integrate .. //depot/projects/smpng/sys/fs/nullfs/null_vnops.c#23 integrate .. //depot/projects/smpng/sys/fs/nwfs/nwfs_subr.c#7 integrate .. //depot/projects/smpng/sys/fs/pseudofs/pseudofs_vnops.c#38 integrate .. //depot/projects/smpng/sys/fs/smbfs/smbfs_smb.c#13 integrate .. //depot/projects/smpng/sys/fs/smbfs/smbfs_subr.c#6 integrate .. //depot/projects/smpng/sys/fs/smbfs/smbfs_subr.h#6 integrate .. //depot/projects/smpng/sys/fs/udf/udf_vnops.c#29 integrate .. //depot/projects/smpng/sys/fs/unionfs/union_subr.c#25 integrate .. //depot/projects/smpng/sys/fs/unionfs/union_vfsops.c#27 integrate .. //depot/projects/smpng/sys/fs/unionfs/union_vnops.c#29 integrate .. //depot/projects/smpng/sys/geom/geom_event.c#31 integrate .. //depot/projects/smpng/sys/geom/geom_kern.c#21 integrate .. //depot/projects/smpng/sys/geom/geom_pc98_enc.c#3 integrate .. //depot/projects/smpng/sys/geom/label/g_label_ufs.c#3 integrate .. //depot/projects/smpng/sys/geom/mirror/g_mirror.c#20 integrate .. //depot/projects/smpng/sys/geom/mirror/g_mirror.h#8 integrate .. //depot/projects/smpng/sys/geom/mirror/g_mirror_ctl.c#7 integrate .. //depot/projects/smpng/sys/geom/raid3/g_raid3_ctl.c#8 integrate .. //depot/projects/smpng/sys/geom/stripe/g_stripe.c#11 integrate .. //depot/projects/smpng/sys/geom/vinum/geom_vinum_drive.c#11 integrate .. //depot/projects/smpng/sys/geom/vinum/geom_vinum_init.c#9 integrate .. //depot/projects/smpng/sys/gnu/reiserfs/README#1 branch .. //depot/projects/smpng/sys/gnu/reiserfs/reiserfs_fs.h#1 branch .. //depot/projects/smpng/sys/gnu/reiserfs/reiserfs_fs_i.h#1 branch .. //depot/projects/smpng/sys/gnu/reiserfs/reiserfs_fs_sb.h#1 branch .. //depot/projects/smpng/sys/gnu/reiserfs/reiserfs_hashes.c#1 branch .. //depot/projects/smpng/sys/gnu/reiserfs/reiserfs_inode.c#1 branch .. //depot/projects/smpng/sys/gnu/reiserfs/reiserfs_item_ops.c#1 branch .. //depot/projects/smpng/sys/gnu/reiserfs/reiserfs_mount.h#1 branch .. //depot/projects/smpng/sys/gnu/reiserfs/reiserfs_namei.c#1 branch .. //depot/projects/smpng/sys/gnu/reiserfs/reiserfs_prints.c#1 branch .. //depot/projects/smpng/sys/gnu/reiserfs/reiserfs_stree.c#1 branch .. //depot/projects/smpng/sys/gnu/reiserfs/reiserfs_vfsops.c#1 branch .. //depot/projects/smpng/sys/gnu/reiserfs/reiserfs_vnops.c#1 branch .. //depot/projects/smpng/sys/i386/acpica/acpi_wakecode.S#8 integrate .. //depot/projects/smpng/sys/i386/conf/GENERIC#63 integrate .. //depot/projects/smpng/sys/i386/conf/NOTES#100 integrate .. //depot/projects/smpng/sys/i386/conf/PAE#13 integrate .. //depot/projects/smpng/sys/i386/cpufreq/smist.c#1 branch .. //depot/projects/smpng/sys/i386/i386/identcpu.c#34 integrate .. //depot/projects/smpng/sys/i386/i386/initcpu.c#23 integrate .. //depot/projects/smpng/sys/i386/i386/local_apic.c#29 integrate .. //depot/projects/smpng/sys/i386/i386/locore.s#25 integrate .. //depot/projects/smpng/sys/i386/i386/machdep.c#93 integrate .. //depot/projects/smpng/sys/i386/i386/mp_machdep.c#82 integrate .. //depot/projects/smpng/sys/i386/i386/nexus.c#18 integrate .. //depot/projects/smpng/sys/i386/i386/support.s#18 integrate .. //depot/projects/smpng/sys/i386/i386/sys_machdep.c#41 integrate .. //depot/projects/smpng/sys/i386/i386/trap.c#76 integrate .. //depot/projects/smpng/sys/i386/i386/vm_machdep.c#66 integrate .. //depot/projects/smpng/sys/i386/ibcs2/imgact_coff.c#20 integrate .. //depot/projects/smpng/sys/i386/include/_bus.h#1 branch .. //depot/projects/smpng/sys/i386/include/bus.h#6 integrate .. //depot/projects/smpng/sys/i386/include/cpufunc.h#32 integrate .. //depot/projects/smpng/sys/i386/include/md_var.h#28 integrate .. //depot/projects/smpng/sys/i386/include/npx.h#8 integrate .. //depot/projects/smpng/sys/i386/include/pmc_mdep.h#1 branch .. //depot/projects/smpng/sys/i386/include/ppireg.h#1 branch .. //depot/projects/smpng/sys/i386/include/smp.h#16 integrate .. //depot/projects/smpng/sys/i386/include/timerreg.h#1 branch .. //depot/projects/smpng/sys/i386/isa/atpic.c#12 integrate .. //depot/projects/smpng/sys/i386/isa/clock.c#42 integrate .. //depot/projects/smpng/sys/i386/isa/ic/if_wl_i82586.h#3 delete .. //depot/projects/smpng/sys/i386/isa/isa.h#6 integrate .. //depot/projects/smpng/sys/i386/isa/isa_dma.c#11 integrate .. //depot/projects/smpng/sys/i386/isa/lptreg.h#2 delete .. //depot/projects/smpng/sys/i386/isa/npx.c#47 integrate .. //depot/projects/smpng/sys/i386/isa/prof_machdep.c#7 integrate .. //depot/projects/smpng/sys/i386/isa/spkr.c#16 integrate .. //depot/projects/smpng/sys/i386/isa/timerreg.h#3 delete .. //depot/projects/smpng/sys/ia64/ia64/clock.c#16 integrate .. //depot/projects/smpng/sys/ia64/ia64/clock_if.m#4 delete .. //depot/projects/smpng/sys/ia64/ia64/db_trace.c#20 integrate .. //depot/projects/smpng/sys/ia64/ia64/eficlock.c#4 delete .. //depot/projects/smpng/sys/ia64/ia64/pmap.c#69 integrate .. //depot/projects/smpng/sys/ia64/ia64/unwind.c#14 integrate .. //depot/projects/smpng/sys/ia64/ia64/vm_machdep.c#47 integrate .. //depot/projects/smpng/sys/ia64/include/_bus.h#1 branch .. //depot/projects/smpng/sys/ia64/include/bus.h#18 integrate .. //depot/projects/smpng/sys/ia64/include/clockvar.h#4 delete .. //depot/projects/smpng/sys/ia64/include/pmc_mdep.h#1 branch .. //depot/projects/smpng/sys/ia64/isa/isa_dma.c#8 integrate .. //depot/projects/smpng/sys/isa/isa_dmareg.h#1 branch .. //depot/projects/smpng/sys/isa/isareg.h#6 integrate .. //depot/projects/smpng/sys/isa/syscons_isa.c#10 integrate .. //depot/projects/smpng/sys/kern/imgact_aout.c#27 integrate .. //depot/projects/smpng/sys/kern/imgact_elf.c#43 integrate .. //depot/projects/smpng/sys/kern/init_sysent.c#55 integrate .. //depot/projects/smpng/sys/kern/kern_alq.c#8 integrate .. //depot/projects/smpng/sys/kern/kern_descrip.c#80 integrate .. //depot/projects/smpng/sys/kern/kern_event.c#39 integrate .. //depot/projects/smpng/sys/kern/kern_exec.c#84 integrate .. //depot/projects/smpng/sys/kern/kern_exit.c#94 integrate .. //depot/projects/smpng/sys/kern/kern_fork.c#94 integrate .. //depot/projects/smpng/sys/kern/kern_kse.c#18 integrate .. //depot/projects/smpng/sys/kern/kern_ktr.c#30 integrate .. //depot/projects/smpng/sys/kern/kern_mac.c#40 integrate .. //depot/projects/smpng/sys/kern/kern_pmc.c#1 branch .. //depot/projects/smpng/sys/kern/kern_proc.c#75 integrate .. //depot/projects/smpng/sys/kern/kern_prot.c#89 integrate .. //depot/projects/smpng/sys/kern/kern_sig.c#107 integrate .. //depot/projects/smpng/sys/kern/kern_switch.c#58 integrate .. //depot/projects/smpng/sys/kern/kern_synch.c#91 integrate .. //depot/projects/smpng/sys/kern/kern_thr.c#25 integrate .. //depot/projects/smpng/sys/kern/kern_thread.c#78 integrate .. //depot/projects/smpng/sys/kern/sched_4bsd.c#50 integrate .. //depot/projects/smpng/sys/kern/sched_ule.c#56 integrate .. //depot/projects/smpng/sys/kern/subr_bus.c#52 integrate .. //depot/projects/smpng/sys/kern/subr_devstat.c#16 integrate .. //depot/projects/smpng/sys/kern/subr_kdb.c#9 integrate .. //depot/projects/smpng/sys/kern/subr_param.c#20 integrate .. //depot/projects/smpng/sys/kern/subr_rman.c#21 integrate .. //depot/projects/smpng/sys/kern/subr_smp.c#40 integrate .. //depot/projects/smpng/sys/kern/subr_taskqueue.c#24 integrate .. //depot/projects/smpng/sys/kern/subr_witness.c#131 integrate .. //depot/projects/smpng/sys/kern/sys_socket.c#23 integrate .. //depot/projects/smpng/sys/kern/syscalls.c#55 integrate .. //depot/projects/smpng/sys/kern/syscalls.master#57 integrate .. //depot/projects/smpng/sys/kern/sysv_sem.c#33 integrate .. //depot/projects/smpng/sys/kern/sysv_shm.c#30 integrate .. //depot/projects/smpng/sys/kern/uipc_mbuf.c#36 integrate .. //depot/projects/smpng/sys/kern/uipc_sem.c#14 integrate .. //depot/projects/smpng/sys/kern/uipc_syscalls.c#68 integrate .. //depot/projects/smpng/sys/kern/uipc_usrreq.c#48 integrate .. //depot/projects/smpng/sys/kern/vfs_aio.c#56 integrate .. //depot/projects/smpng/sys/kern/vfs_bio.c#78 integrate .. //depot/projects/smpng/sys/kern/vfs_cluster.c#39 integrate .. //depot/projects/smpng/sys/kern/vfs_default.c#40 integrate .. //depot/projects/smpng/sys/kern/vfs_export.c#19 integrate .. //depot/projects/smpng/sys/kern/vfs_mount.c#49 integrate .. //depot/projects/smpng/sys/kern/vfs_subr.c#102 integrate .. //depot/projects/smpng/sys/kern/vfs_syscalls.c#88 integrate .. //depot/projects/smpng/sys/kern/vfs_vnops.c#63 integrate .. //depot/projects/smpng/sys/libkern/crc32.c#4 integrate .. //depot/projects/smpng/sys/libkern/iconv_xlat16.c#3 integrate .. //depot/projects/smpng/sys/modules/Makefile#96 integrate .. //depot/projects/smpng/sys/modules/acpi/acpi/Makefile#7 integrate .. //depot/projects/smpng/sys/modules/apm/Makefile#7 integrate .. //depot/projects/smpng/sys/modules/cpufreq/Makefile#5 integrate .. //depot/projects/smpng/sys/modules/drm/Makefile#4 integrate .. //depot/projects/smpng/sys/modules/drm/drm/Makefile#1 branch .. //depot/projects/smpng/sys/modules/drm/mach64/Makefile#1 branch .. //depot/projects/smpng/sys/modules/esp/Makefile#4 integrate .. //depot/projects/smpng/sys/modules/fdc/Makefile#9 integrate .. //depot/projects/smpng/sys/modules/hwpmc/Makefile#1 branch .. //depot/projects/smpng/sys/modules/if_ndis/Makefile#4 integrate .. //depot/projects/smpng/sys/modules/ipfilter/Makefile#8 integrate .. //depot/projects/smpng/sys/modules/ipw/Makefile#1 branch .. //depot/projects/smpng/sys/modules/iwi/Makefile#1 branch .. //depot/projects/smpng/sys/modules/libalias/Makefile#1 branch .. //depot/projects/smpng/sys/modules/netgraph/Makefile#21 integrate .. //depot/projects/smpng/sys/modules/netgraph/Makefile.inc#4 integrate .. //depot/projects/smpng/sys/modules/netgraph/nat/Makefile#1 branch .. //depot/projects/smpng/sys/modules/pmc/Makefile#3 integrate .. //depot/projects/smpng/sys/modules/puc/Makefile#1 branch .. //depot/projects/smpng/sys/modules/ral/Makefile#1 branch .. //depot/projects/smpng/sys/modules/reiserfs/Makefile#1 branch .. //depot/projects/smpng/sys/modules/sem/Makefile#2 integrate .. //depot/projects/smpng/sys/modules/sio/Makefile#5 integrate .. //depot/projects/smpng/sys/modules/ural/Makefile#1 branch .. //depot/projects/smpng/sys/net/bpf.c#49 integrate .. //depot/projects/smpng/sys/net/bridge.c#36 integrate .. //depot/projects/smpng/sys/net/if.c#65 integrate .. //depot/projects/smpng/sys/net/if_mib.c#6 integrate .. //depot/projects/smpng/sys/net/if_tap.c#35 integrate .. //depot/projects/smpng/sys/net/if_tun.c#41 integrate .. //depot/projects/smpng/sys/net/if_var.h#37 integrate .. //depot/projects/smpng/sys/net/if_vlan.c#35 integrate .. //depot/projects/smpng/sys/net/pfil.c#9 integrate .. //depot/projects/smpng/sys/netgraph/bluetooth/drivers/ubt/ng_ubt.c#15 integrate .. //depot/projects/smpng/sys/netgraph/netflow/netflow.c#8 integrate .. //depot/projects/smpng/sys/netgraph/netflow/netflow.h#2 integrate .. //depot/projects/smpng/sys/netgraph/netflow/ng_netflow.c#5 integrate .. //depot/projects/smpng/sys/netgraph/netflow/ng_netflow.h#4 integrate .. //depot/projects/smpng/sys/netgraph/netgraph.h#18 integrate .. //depot/projects/smpng/sys/netgraph/ng_base.c#35 integrate .. //depot/projects/smpng/sys/netgraph/ng_device.c#17 integrate .. //depot/projects/smpng/sys/netgraph/ng_eiface.c#20 integrate .. //depot/projects/smpng/sys/netgraph/ng_ksocket.c#26 integrate .. //depot/projects/smpng/sys/netgraph/ng_message.h#12 integrate .. //depot/projects/smpng/sys/netgraph/ng_nat.c#1 branch .. //depot/projects/smpng/sys/netgraph/ng_nat.h#1 branch .. //depot/projects/smpng/sys/netgraph/ng_ppp.c#19 integrate .. //depot/projects/smpng/sys/netgraph/ng_socket.c#29 integrate .. //depot/projects/smpng/sys/netgraph/ng_split.c#6 integrate .. //depot/projects/smpng/sys/netgraph/ng_vlan.c#3 integrate .. //depot/projects/smpng/sys/netinet/ip_carp.c#5 integrate .. //depot/projects/smpng/sys/netinet/ip_divert.c#44 integrate .. //depot/projects/smpng/sys/netinet/ip_dummynet.c#38 integrate .. //depot/projects/smpng/sys/netinet/ip_dummynet.h#17 integrate .. //depot/projects/smpng/sys/netinet/ip_fastfwd.c#17 integrate .. //depot/projects/smpng/sys/netinet/ip_fw.h#28 integrate .. //depot/projects/smpng/sys/netinet/ip_fw2.c#52 integrate .. //depot/projects/smpng/sys/netinet/ip_fw_pfil.c#13 integrate .. //depot/projects/smpng/sys/netinet/ip_icmp.c#34 integrate .. //depot/projects/smpng/sys/netinet/ip_icmp.h#9 integrate .. //depot/projects/smpng/sys/netinet/ip_input.c#67 integrate .. //depot/projects/smpng/sys/netinet/libalias/HISTORY#1 branch .. //depot/projects/smpng/sys/netinet/libalias/alias.c#1 branch .. //depot/projects/smpng/sys/netinet/libalias/alias.h#1 branch .. //depot/projects/smpng/sys/netinet/libalias/alias_cuseeme.c#1 branch .. //depot/projects/smpng/sys/netinet/libalias/alias_db.c#1 branch .. //depot/projects/smpng/sys/netinet/libalias/alias_ftp.c#1 branch .. //depot/projects/smpng/sys/netinet/libalias/alias_irc.c#1 branch .. //depot/projects/smpng/sys/netinet/libalias/alias_local.h#1 branch .. //depot/projects/smpng/sys/netinet/libalias/alias_nbt.c#1 branch .. //depot/projects/smpng/sys/netinet/libalias/alias_old.c#1 branch .. //depot/projects/smpng/sys/netinet/libalias/alias_pptp.c#1 branch .. //depot/projects/smpng/sys/netinet/libalias/alias_proxy.c#1 branch .. //depot/projects/smpng/sys/netinet/libalias/alias_skinny.c#1 branch .. //depot/projects/smpng/sys/netinet/libalias/alias_smedia.c#1 branch .. //depot/projects/smpng/sys/netinet/libalias/alias_util.c#1 branch .. //depot/projects/smpng/sys/netinet/libalias/libalias.3#1 branch .. //depot/projects/smpng/sys/netinet/raw_ip.c#49 integrate .. //depot/projects/smpng/sys/netinet/tcp.h#12 integrate .. //depot/projects/smpng/sys/netinet/tcp_input.c#71 integrate .. //depot/projects/smpng/sys/netinet/tcp_output.c#36 integrate .. //depot/projects/smpng/sys/netinet/tcp_sack.c#10 integrate .. //depot/projects/smpng/sys/netinet/tcp_subr.c#67 integrate .. //depot/projects/smpng/sys/netinet/tcp_syncache.c#38 integrate .. //depot/projects/smpng/sys/netinet/tcp_timer.c#24 integrate .. //depot/projects/smpng/sys/netinet/tcp_usrreq.c#41 integrate .. //depot/projects/smpng/sys/netinet/tcp_var.h#37 integrate .. //depot/projects/smpng/sys/netinet/udp_usrreq.c#56 integrate .. //depot/projects/smpng/sys/netinet6/icmp6.c#29 integrate .. //depot/projects/smpng/sys/netinet6/in6_src.c#20 integrate .. //depot/projects/smpng/sys/netinet6/ip6_fw.c#19 integrate .. //depot/projects/smpng/sys/netinet6/ip6_output.c#39 integrate .. //depot/projects/smpng/sys/netipx/ipx.h#7 integrate .. //depot/projects/smpng/sys/netsmb/smb_conn.c#14 integrate .. //depot/projects/smpng/sys/nfs4client/nfs4_vnops.c#18 integrate .. //depot/projects/smpng/sys/nfsclient/bootp_subr.c#30 integrate .. //depot/projects/smpng/sys/nfsclient/nfs_diskless.c#10 integrate .. //depot/projects/smpng/sys/nfsclient/nfs_socket.c#34 integrate .. //depot/projects/smpng/sys/nfsclient/nfs_vfsops.c#49 integrate .. //depot/projects/smpng/sys/nfsserver/nfs.h#16 integrate .. //depot/projects/smpng/sys/nfsserver/nfs_serv.c#41 integrate .. //depot/projects/smpng/sys/pc98/apm/apm_bioscall.S#1 branch .. //depot/projects/smpng/sys/pc98/apm/apm_bioscall.s#3 delete .. //depot/projects/smpng/sys/pc98/cbus/30line.h#1 branch .. //depot/projects/smpng/sys/pc98/cbus/cbus.h#1 branch .. //depot/projects/smpng/sys/pc98/cbus/cbus_dma.c#1 branch .. //depot/projects/smpng/sys/pc98/cbus/cbus_dmareg.h#1 branch .. //depot/projects/smpng/sys/pc98/cbus/clock.c#1 branch .. //depot/projects/smpng/sys/pc98/cbus/fdc.c#1 branch .. //depot/projects/smpng/sys/pc98/cbus/fdc_cbus.c#1 branch .. //depot/projects/smpng/sys/pc98/cbus/fdcreg.h#1 branch .. //depot/projects/smpng/sys/pc98/cbus/fdcvar.h#1 branch .. //depot/projects/smpng/sys/pc98/cbus/gdc.c#1 branch .. //depot/projects/smpng/sys/pc98/cbus/nmi.c#1 branch .. //depot/projects/smpng/sys/pc98/cbus/olpt.c#1 branch .. //depot/projects/smpng/sys/pc98/cbus/olptreg.h#1 branch .. //depot/projects/smpng/sys/pc98/cbus/pckbd.c#1 branch .. //depot/projects/smpng/sys/pc98/cbus/pckbdtables.h#1 branch .. //depot/projects/smpng/sys/pc98/cbus/pmc.c#1 branch .. //depot/projects/smpng/sys/pc98/cbus/ppc.c#1 branch .. //depot/projects/smpng/sys/pc98/cbus/ppcreg.h#1 branch .. //depot/projects/smpng/sys/pc98/cbus/sc_machdep.h#1 branch .. //depot/projects/smpng/sys/pc98/cbus/scgdcrndr.c#1 branch .. //depot/projects/smpng/sys/pc98/cbus/scterm-sck.c#1 branch .. //depot/projects/smpng/sys/pc98/cbus/scvtb.c#1 branch .. //depot/projects/smpng/sys/pc98/cbus/sio.c#1 branch .. //depot/projects/smpng/sys/pc98/cbus/sio_cbus.c#1 branch .. //depot/projects/smpng/sys/pc98/cbus/syscons_cbus.c#1 branch .. //depot/projects/smpng/sys/pc98/conf/GENERIC#55 integrate .. //depot/projects/smpng/sys/pc98/conf/NOTES#38 integrate .. //depot/projects/smpng/sys/pc98/i386/busio.s#5 delete .. //depot/projects/smpng/sys/pc98/i386/busiosubr.c#5 delete .. //depot/projects/smpng/sys/pc98/i386/machdep.c#82 delete .. //depot/projects/smpng/sys/pc98/include/_bus.h#1 branch .. //depot/projects/smpng/sys/pc98/include/bus.h#3 integrate .. //depot/projects/smpng/sys/pc98/include/npx.h#2 integrate .. //depot/projects/smpng/sys/pc98/include/pmc_mdep.h#1 branch .. //depot/projects/smpng/sys/pc98/include/ppireg.h#1 branch .. //depot/projects/smpng/sys/pc98/include/timerreg.h#1 branch .. //depot/projects/smpng/sys/pc98/pc98/30line.h#4 delete .. //depot/projects/smpng/sys/pc98/pc98/busio.s#1 branch .. //depot/projects/smpng/sys/pc98/pc98/busiosubr.c#1 branch .. //depot/projects/smpng/sys/pc98/pc98/clock.c#30 delete .. //depot/projects/smpng/sys/pc98/pc98/fd.c#42 delete .. //depot/projects/smpng/sys/pc98/pc98/fdc_cbus.c#4 delete .. //depot/projects/smpng/sys/pc98/pc98/fdcvar.h#4 delete .. //depot/projects/smpng/sys/pc98/pc98/fdreg.h#4 delete .. //depot/projects/smpng/sys/pc98/pc98/isa_dma.c#10 delete .. //depot/projects/smpng/sys/pc98/pc98/machdep.c#1 branch .. //depot/projects/smpng/sys/pc98/pc98/nmi.c#3 delete .. //depot/projects/smpng/sys/pc98/pc98/olpt.c#13 delete .. //depot/projects/smpng/sys/pc98/pc98/pc98.h#7 delete .. //depot/projects/smpng/sys/pc98/pc98/pc98_machdep.c#4 integrate .. //depot/projects/smpng/sys/pc98/pc98/pc98gdc.c#15 delete .. //depot/projects/smpng/sys/pc98/pc98/pc98kbd.c#7 delete .. //depot/projects/smpng/sys/pc98/pc98/pmc.c#6 delete .. //depot/projects/smpng/sys/pc98/pc98/ppc.c#10 delete .. //depot/projects/smpng/sys/pc98/pc98/ppcreg.h#2 delete .. //depot/projects/smpng/sys/pc98/pc98/sc_machdep.h#2 delete .. //depot/projects/smpng/sys/pc98/pc98/scgdcrndr.c#6 delete .. //depot/projects/smpng/sys/pc98/pc98/scterm-sck.c#9 delete .. //depot/projects/smpng/sys/pc98/pc98/scvtbpc98.c#6 delete .. //depot/projects/smpng/sys/pc98/pc98/sio.c#52 delete .. //depot/projects/smpng/sys/pc98/pc98/sio_cbus.c#9 delete .. //depot/projects/smpng/sys/pc98/pc98/syscons_pc98.c#8 delete .. //depot/projects/smpng/sys/pccard/pccard_nbk.c#14 integrate .. //depot/projects/smpng/sys/pci/if_dc.c#65 integrate .. //depot/projects/smpng/sys/pci/if_sk.c#46 integrate .. //depot/projects/smpng/sys/pci/if_xl.c#56 integrate .. //depot/projects/smpng/sys/pci/if_xlreg.h#16 integrate .. //depot/projects/smpng/sys/posix4/ksem.h#1 branch .. //depot/projects/smpng/sys/powerpc/conf/GENERIC#27 integrate .. //depot/projects/smpng/sys/powerpc/include/_bus.h#1 branch .. //depot/projects/smpng/sys/powerpc/include/bus.h#17 integrate .. //depot/projects/smpng/sys/powerpc/include/pmc_mdep.h#1 branch .. //depot/projects/smpng/sys/powerpc/ofw/ofw_syscons.c#7 integrate .. //depot/projects/smpng/sys/powerpc/powermac/ata_kauai.c#9 integrate .. //depot/projects/smpng/sys/powerpc/powermac/ata_macio.c#14 integrate .. //depot/projects/smpng/sys/powerpc/powerpc/trap.c#45 integrate .. //depot/projects/smpng/sys/powerpc/powerpc/vm_machdep.c#43 integrate .. //depot/projects/smpng/sys/security/mac/mac_posix_sem.c#1 branch .. //depot/projects/smpng/sys/security/mac/mac_process.c#7 integrate .. //depot/projects/smpng/sys/security/mac/mac_socket.c#3 integrate .. //depot/projects/smpng/sys/security/mac_biba/mac_biba.c#33 integrate .. //depot/projects/smpng/sys/security/mac_bsdextended/mac_bsdextended.c#15 integrate .. //depot/projects/smpng/sys/security/mac_mls/mac_mls.c#31 integrate .. //depot/projects/smpng/sys/security/mac_stub/mac_stub.c#11 integrate .. //depot/projects/smpng/sys/security/mac_test/mac_test.c#29 integrate .. //depot/projects/smpng/sys/sparc64/central/central.c#5 integrate .. //depot/projects/smpng/sys/sparc64/conf/GENERIC#55 integrate .. //depot/projects/smpng/sys/sparc64/conf/NOTES#16 integrate .. //depot/projects/smpng/sys/sparc64/creator/creator.h#3 integrate .. //depot/projects/smpng/sys/sparc64/creator/creator_upa.c#7 integrate .. //depot/projects/smpng/sys/sparc64/ebus/ebus.c#19 integrate .. //depot/projects/smpng/sys/sparc64/fhc/fhc_central.c#5 integrate .. //depot/projects/smpng/sys/sparc64/fhc/fhc_nexus.c#5 integrate .. //depot/projects/smpng/sys/sparc64/include/_bus.h#1 branch .. //depot/projects/smpng/sys/sparc64/include/bus.h#25 integrate .. //depot/projects/smpng/sys/sparc64/include/cpufunc.h#23 integrate .. //depot/projects/smpng/sys/sparc64/include/eeprom.h#6 delete .. //depot/projects/smpng/sys/sparc64/include/pcpu.h#9 integrate .. //depot/projects/smpng/sys/sparc64/include/pmc_mdep.h#1 branch .. //depot/projects/smpng/sys/sparc64/include/tick.h#4 integrate .. //depot/projects/smpng/sys/sparc64/isa/isa.c#15 integrate .. //depot/projects/smpng/sys/sparc64/pci/apb.c#10 integrate .. //depot/projects/smpng/sys/sparc64/sbus/dma_sbus.c#1 branch .. //depot/projects/smpng/sys/sparc64/sbus/lsi64854.c#3 integrate .. //depot/projects/smpng/sys/sparc64/sbus/lsi64854reg.h#2 integrate .. //depot/projects/smpng/sys/sparc64/sbus/lsi64854var.h#2 integrate .. //depot/projects/smpng/sys/sparc64/sbus/sbus.c#21 integrate .. //depot/projects/smpng/sys/sparc64/sbus/sbusvar.h#6 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/eeprom.c#7 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/eeprom_ebus.c#9 delete .. //depot/projects/smpng/sys/sparc64/sparc64/eeprom_sbus.c#9 delete .. //depot/projects/smpng/sys/sparc64/sparc64/exception.S#14 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/genassym.c#35 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/interrupt.S#5 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/intr_machdep.c#23 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/machdep.c#76 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/mp_machdep.c#25 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/nexus.c#14 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/ofw_machdep.c#11 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/rtc.c#3 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/sc_machdep.c#2 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/tick.c#14 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/vm_machdep.c#49 integrate .. //depot/projects/smpng/sys/sys/_task.h#6 integrate .. //depot/projects/smpng/sys/sys/acl.h#10 integrate .. //depot/projects/smpng/sys/sys/alq.h#4 integrate .. //depot/projects/smpng/sys/sys/ata.h#21 integrate .. //depot/projects/smpng/sys/sys/consio.h#8 integrate .. //depot/projects/smpng/sys/sys/diskpc98.h#8 integrate .. //depot/projects/smpng/sys/sys/fbio.h#7 integrate .. //depot/projects/smpng/sys/sys/iconv.h#9 integrate .. //depot/projects/smpng/sys/sys/imgact_aout.h#10 integrate .. //depot/projects/smpng/sys/sys/kdb.h#4 integrate .. //depot/projects/smpng/sys/sys/kernel.h#31 integrate .. //depot/projects/smpng/sys/sys/libkern.h#18 integrate .. //depot/projects/smpng/sys/sys/lock.h#31 integrate .. //depot/projects/smpng/sys/sys/mac.h#30 integrate .. //depot/projects/smpng/sys/sys/mac_policy.h#29 integrate .. //depot/projects/smpng/sys/sys/mbuf.h#50 integrate .. //depot/projects/smpng/sys/sys/mutex.h#55 integrate .. //depot/projects/smpng/sys/sys/namei.h#17 integrate .. //depot/projects/smpng/sys/sys/param.h#81 integrate .. //depot/projects/smpng/sys/sys/pcpu.h#14 integrate .. //depot/projects/smpng/sys/sys/pmc.h#1 branch .. //depot/projects/smpng/sys/sys/pmckern.h#1 branch .. //depot/projects/smpng/sys/sys/proc.h#143 integrate .. //depot/projects/smpng/sys/sys/ptrace.h#14 integrate .. //depot/projects/smpng/sys/sys/sched.h#19 integrate .. //depot/projects/smpng/sys/sys/smp.h#14 integrate .. //depot/projects/smpng/sys/sys/syscall.h#54 integrate .. //depot/projects/smpng/sys/sys/syscall.mk#54 integrate .. //depot/projects/smpng/sys/sys/sysctl.h#36 integrate .. //depot/projects/smpng/sys/sys/sysproto.h#56 integrate .. //depot/projects/smpng/sys/sys/systm.h#66 integrate .. //depot/projects/smpng/sys/sys/taskqueue.h#10 integrate .. //depot/projects/smpng/sys/sys/thr.h#6 integrate .. //depot/projects/smpng/sys/sys/vnode.h#62 integrate .. //depot/projects/smpng/sys/ufs/ffs/ffs_rawread.c#15 integrate .. //depot/projects/smpng/sys/ufs/ffs/ffs_softdep.c#45 integrate .. //depot/projects/smpng/sys/ufs/ufs/ufs_vnops.c#50 integrate .. //depot/projects/smpng/sys/vm/swap_pager.c#57 integrate .. //depot/projects/smpng/sys/vm/uma_core.c#55 integrate .. //depot/projects/smpng/sys/vm/uma_int.h#26 integrate .. //depot/projects/smpng/sys/vm/vm_fault.c#48 integrate .. //depot/projects/smpng/sys/vm/vm_glue.c#55 integrate .. //depot/projects/smpng/sys/vm/vm_init.c#14 integrate .. //depot/projects/smpng/sys/vm/vm_map.c#72 integrate .. //depot/projects/smpng/sys/vm/vm_meter.c#27 integrate .. //depot/projects/smpng/sys/vm/vm_object.c#70 integrate .. //depot/projects/smpng/sys/vm/vm_object.h#30 integrate .. //depot/projects/smpng/sys/vm/vm_pager.c#22 integrate .. //depot/projects/smpng/sys/vm/vm_pager.h#13 integrate .. //depot/projects/smpng/sys/vm/vnode_pager.c#53 integrate Differences ... ==== //depot/projects/smpng/sys/alpha/alpha/busdma_machdep.c#27 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/busdma_machdep.c,v 1.50 2005/03/12 02:43:50 mux Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/busdma_machdep.c,v 1.51 2005/05/25 07:25:12 marcel Exp $"); #include #include @@ -479,6 +479,7 @@ bus_size_t buflen, bus_dmamap_callback_t *callback, void *callback_arg, int flags) { + bus_dma_segment_t segment; vm_offset_t vaddr; vm_offset_t paddr; bus_dma_segment_t *sg; @@ -495,6 +496,7 @@ * of the bus address space. */ vaddr = trunc_page((vm_offset_t) buf); + dmat->segments = &segment; dmat->segments[0].ds_addr = map->busaddress + (vm_offset_t) buf - vaddr; dmat->segments[0].ds_len = buflen; @@ -505,6 +507,7 @@ buflen); map->buflen = buflen; (*callback)(callback_arg, dmat->segments, 1, error); + dmat->segments = NULL; return (0); } ==== //depot/projects/smpng/sys/alpha/alpha/clock.c#15 (text+ko) ==== @@ -38,7 +38,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/clock.c,v 1.38 2005/01/05 20:05:48 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/clock.c,v 1.39 2005/05/14 09:10:00 nyan Exp $"); #include "opt_clock.h" @@ -60,9 +60,10 @@ #include #include #include /* for CPU definitions, etc */ +#include +#include #include -#include #define SECMIN ((unsigned)60) /* seconds per minute */ #define SECHOUR ((unsigned)(60*SECMIN)) /* seconds per hour */ @@ -704,8 +705,8 @@ static void sysbeepstop(void *chan) { - outb(IO_PPI, inb(IO_PPI)&0xFC); /* disable counter2 output to speaker */ - release_timer2(); + ppi_spkr_off(); /* disable counter2 output to speaker */ + timer_spkr_release(); beeping = 0; } @@ -723,7 +724,7 @@ mtx_lock_spin(&clock_lock); - if (acquire_timer2(TIMER_SQWAVE|TIMER_16BIT)) + if (timer_spkr_acquire()) if (!beeping) { /* Something else owns it. */ mtx_unlock_spin(&clock_lock); @@ -732,12 +733,11 @@ if (pitch) pitch = TIMER_DIV(pitch); - outb(TIMER_CNTR2, pitch); - outb(TIMER_CNTR2, (pitch>>8)); + spkr_set_pitch(pitch); mtx_unlock_spin(&clock_lock); if (!beeping) { /* enable counter2 output to speaker */ - if (pitch) outb(IO_PPI, inb(IO_PPI) | 3); + if (pitch) ppi_spkr_on(); beeping = period; timeout(sysbeepstop, (void *)NULL, period); } ==== //depot/projects/smpng/sys/alpha/alpha/vm_machdep.c#40 (text+ko) ==== @@ -67,7 +67,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/vm_machdep.c,v 1.108 2005/04/04 21:53:51 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/vm_machdep.c,v 1.109 2005/04/23 02:32:30 davidxu Exp $"); #include #include @@ -330,15 +330,16 @@ } void -cpu_set_upcall_kse(struct thread *td, struct kse_upcall *ku) +cpu_set_upcall_kse(struct thread *td, void (*entry)(void *), void *arg, + stack_t *stack) { struct pcb *pcb; struct trapframe *tf; - uint64_t stack; + uint64_t sp; pcb = td->td_pcb; tf = td->td_frame; - stack = ((uint64_t)ku->ku_stack.ss_sp + ku->ku_stack.ss_size) & ~15; + sp = ((uint64_t)stack->ss_sp + stack->ss_size) & ~15; bzero(tf->tf_regs, FRAME_SIZE * sizeof(tf->tf_regs[0])); bzero(&pcb->pcb_fp, sizeof(pcb->pcb_fp)); @@ -346,19 +347,29 @@ pcb->pcb_fp.fpr_cr = FPCR_DYN_NORMAL | FPCR_INVD | FPCR_DZED | FPCR_OVFD | FPCR_INED | FPCR_UNFD; if (td != curthread) { - pcb->pcb_hw.apcb_usp = stack; + pcb->pcb_hw.apcb_usp = sp; pcb->pcb_hw.apcb_unique = 0; } else { - alpha_pal_wrusp(stack); + alpha_pal_wrusp(sp); alpha_pal_wrunique(0); } tf->tf_regs[FRAME_PS] = ALPHA_PSL_USERSET; - tf->tf_regs[FRAME_PC] = (u_long)ku->ku_func; - tf->tf_regs[FRAME_A0] = (u_long)ku->ku_mailbox; + tf->tf_regs[FRAME_PC] = (u_long)entry; + tf->tf_regs[FRAME_A0] = (u_long)arg; tf->tf_regs[FRAME_T12] = tf->tf_regs[FRAME_PC]; /* aka. PV */ tf->tf_regs[FRAME_FLAGS] = 0; /* full restore */ } +void +cpu_set_user_tls(struct thread *td, void *tls_base) +{ + + if (td != curthread) + td->td_pcb->pcb_hw.apcb_unique = (unsigned long)tls_base; + else + alpha_pal_wrunique((uintptr_t)tls_base); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri May 27 20:14:23 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EC07616A420; Fri, 27 May 2005 20:14:22 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id BE63D16A41C for ; Fri, 27 May 2005 20:14:22 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8589D43D1D for ; Fri, 27 May 2005 20:14:22 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4RKEM7m020460 for ; Fri, 27 May 2005 20:14:22 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4RKEM9O020456 for perforce@freebsd.org; Fri, 27 May 2005 20:14:22 GMT (envelope-from jhb@freebsd.org) Date: Fri, 27 May 2005 20:14:22 GMT Message-Id: <200505272014.j4RKEM9O020456@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 77586 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 27 May 2005 20:14:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=77586 Change 77586 by jhb@jhb_slimer on 2005/05/27 20:13:22 IFC @77582 to get latest getfsstat(). Affected files ... .. //depot/projects/smpng/sys/boot/common/console.c#3 integrate .. //depot/projects/smpng/sys/boot/common/loader.8#35 integrate .. //depot/projects/smpng/sys/boot/i386/boot2/boot2.c#25 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/bootinfo.c#10 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/devicename.c#4 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/libi386.h#7 integrate .. //depot/projects/smpng/sys/boot/i386/loader/main.c#9 integrate .. //depot/projects/smpng/sys/boot/pc98/boot2/boot.c#7 integrate .. //depot/projects/smpng/sys/boot/pc98/loader/main.c#8 integrate .. //depot/projects/smpng/sys/compat/linux/linux_stats.c#26 integrate .. //depot/projects/smpng/sys/kern/kern_kse.c#19 integrate .. //depot/projects/smpng/sys/kern/subr_sleepqueue.c#16 integrate .. //depot/projects/smpng/sys/kern/uipc_socket2.c#43 integrate .. //depot/projects/smpng/sys/kern/vfs_syscalls.c#89 integrate .. //depot/projects/smpng/sys/sys/proc.h#144 integrate Differences ... ==== //depot/projects/smpng/sys/boot/common/console.c#3 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/boot/common/console.c,v 1.6 2003/08/25 23:30:41 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/common/console.c,v 1.7 2005/05/27 19:30:59 jhb Exp $"); #include #include @@ -35,14 +35,15 @@ * Core console support */ -static int cons_set(struct env_var *ev, int flags, void *value); -static int cons_find(char *name); +static int cons_set(struct env_var *ev, int flags, const void *value); +static int cons_find(const char *name); +static int cons_check(const char *string); +static void cons_change(const char *string); /* - * Detect possible console(s) to use. The first probed console - * is marked active. Also create the console variable. - * - * XXX Add logic for multiple console support. + * Detect possible console(s) to use. If preferred console(s) have been + * specified, mark them as active. Else, mark the first probed console + * as active. Also create the console variable. */ void cons_probe(void) @@ -64,6 +65,9 @@ if (consoles[cons]->c_flags == (C_PRESENTIN | C_PRESENTOUT)) active = cons; } + /* Force a console even if all probes failed */ + if (active == -1) + active = 0; /* Check to see if a console preference has already been registered */ prefconsole = getenv("console"); @@ -71,21 +75,24 @@ prefconsole = strdup(prefconsole); if (prefconsole != NULL) { unsetenv("console"); /* we want to replace this */ - for (cons = 0; consoles[cons] != NULL; cons++) - /* look for the nominated console, use it if it's functional */ - if (!strcmp(prefconsole, consoles[cons]->c_name) && - (consoles[cons]->c_flags == (C_PRESENTIN | C_PRESENTOUT))) - active = cons; + cons_change(prefconsole); + } else { + consoles[active]->c_flags |= C_ACTIVEIN | C_ACTIVEOUT; + consoles[active]->c_init(0); + prefconsole = strdup(consoles[active]->c_name); + } + + printf("Consoles: "); + for (cons = 0; consoles[cons] != NULL; cons++) + if (consoles[cons]->c_flags & (C_ACTIVEIN | C_ACTIVEOUT)) + printf("%s ", consoles[cons]->c_desc); + printf("\n"); + + if (prefconsole != NULL) { + env_setenv("console", EV_VOLATILE, prefconsole, cons_set, + env_nounset); free(prefconsole); } - if (active == -1) - active = 0; - consoles[active]->c_flags |= (C_ACTIVEIN | C_ACTIVEOUT); - consoles[active]->c_init(0); - - printf("Console: %s\n", consoles[active]->c_desc); - env_setenv("console", EV_VOLATILE, consoles[active]->c_name, cons_set, - env_nounset); } int @@ -128,46 +135,93 @@ consoles[cons]->c_out(c); } +/* + * Find the console with the specified name. + */ static int -cons_find(char *name) +cons_find(const char *name) { int cons; - + for (cons = 0; consoles[cons] != NULL; cons++) if (!strcmp(consoles[cons]->c_name, name)) - return(cons); - return(-1); + return (cons); + return (-1); } - /* - * Select a console. - * - * XXX Note that the console system design allows for some extension - * here (eg. multiple consoles, input/output only, etc.) + * Select one or more consoles. */ static int -cons_set(struct env_var *ev, int flags, void *value) +cons_set(struct env_var *ev, int flags, const void *value) { - int cons, active; + int cons; - if ((value == NULL) || ((active = cons_find(value)) == -1)) { + if ((value == NULL) || (cons_check(value) == -1)) { if (value != NULL) - printf("no such console '%s'\n", (char *)value); + printf("no such console!\n"); printf("Available consoles:\n"); for (cons = 0; consoles[cons] != NULL; cons++) printf(" %s\n", consoles[cons]->c_name); return(CMD_ERROR); } - /* disable all current consoles */ - for (cons = 0; consoles[cons] != NULL; cons++) - consoles[cons]->c_flags &= ~(C_ACTIVEIN | C_ACTIVEOUT); - - /* enable selected console */ - consoles[active]->c_flags |= C_ACTIVEIN | C_ACTIVEOUT; - consoles[active]->c_init(0); + cons_change(value); env_setenv(ev->ev_name, flags | EV_NOHOOK, value, NULL, NULL); return(CMD_OK); } + +/* + * Check that all of the consoles listed in *string are valid consoles + */ +static int +cons_check(const char *string) +{ + int cons; + char *curpos, *dup, *next; + + dup = next = strdup(string); + cons = -1; + while (next != NULL) { + curpos = strsep(&next, " ,"); + if (*curpos != '\0') { + cons = cons_find(curpos); + if (cons == -1) + break; + } + } + + free(dup); + return (cons); +} + +/* + * Activate all of the consoles listed in *string and disable all the others. + */ +static void +cons_change(const char *string) +{ + int cons; + char *curpos, *dup, *next; + + /* Disable all consoles */ + for (cons = 0; consoles[cons] != NULL; cons++) { + consoles[cons]->c_flags &= ~(C_ACTIVEIN | C_ACTIVEOUT); + } + + /* Enable selected consoles */ + dup = next = strdup(string); + while (next != NULL) { + curpos = strsep(&next, " ,"); + if (*curpos == '\0') + continue; + cons = cons_find(curpos); + if (cons > 0) { + consoles[cons]->c_flags |= C_ACTIVEIN | C_ACTIVEOUT; + consoles[cons]->c_init(0); + } + } + + free(dup); +} ==== //depot/projects/smpng/sys/boot/common/loader.8#35 (text+ko) ==== @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/sys/boot/common/loader.8,v 1.79 2005/05/19 23:03:02 sobomax Exp $ +.\" $FreeBSD: src/sys/boot/common/loader.8,v 1.80 2005/05/27 19:30:59 jhb Exp $ .\" .Dd October 15, 2004 .Dt LOADER 8 @@ -65,6 +65,7 @@ variable, or set it to serial console .Pq Dq comconsole if the previous boot stage used that. +If multiple consoles are selected, they will be listed separated by spaces. Then, devices are probed, .Va currdev and @@ -391,7 +392,11 @@ The default is .Dq Li kernel . .It Va console -Defines the current console. +Defines the current console or consoles. +Multiple consoles may be specified. +In that case, the first listed console will become the default console for +userland output (e.g. from +.Xr init 8 ). .It Va currdev Selects the default device. Syntax for devices is odd. ==== //depot/projects/smpng/sys/boot/i386/boot2/boot2.c#25 (text+ko) ==== @@ -14,7 +14,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/boot/i386/boot2/boot2.c,v 1.71 2004/09/18 02:07:00 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/i386/boot2/boot2.c,v 1.72 2005/05/27 19:26:11 jhb Exp $"); #include #include @@ -243,9 +243,9 @@ fsread(ino, cmd, sizeof(cmd)); if (*cmd) { - printf("%s: %s", PATH_CONFIG, cmd); if (parse()) autoboot = 0; + printf("%s: %s", PATH_CONFIG, cmd); /* Do not process this command twice */ *cmd = 0; } ==== //depot/projects/smpng/sys/boot/i386/libi386/bootinfo.c#10 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/bootinfo.c,v 1.36 2004/12/01 04:59:31 scottl Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/bootinfo.c,v 1.37 2005/05/27 19:30:59 jhb Exp $"); #include #include @@ -59,10 +59,12 @@ bi_getboothowto(char *kargs) { char *cp; + char *curpos, *next, *string; int howto; int active; int i; - + int vidconsole; + /* Parse kargs */ howto = 0; if (kargs != NULL) { @@ -117,10 +119,34 @@ for (i = 0; howto_names[i].ev != NULL; i++) if (getenv(howto_names[i].ev) != NULL) howto |= howto_names[i].mask; - if (!strcmp(getenv("console"), "comconsole")) - howto |= RB_SERIAL; - if (!strcmp(getenv("console"), "nullconsole")) - howto |= RB_MUTE; + + /* Enable selected consoles */ + string = next = strdup(getenv("console")); + vidconsole = 0; + while (next != NULL) { + curpos = strsep(&next, " ,"); + if (*curpos == '\0') + continue; + if (!strcmp(curpos, "vidconsole")) + vidconsole = 1; + else if (!strcmp(curpos, "comconsole")) + howto |= RB_SERIAL; + else if (!strcmp(curpos, "nullconsole")) + howto |= RB_MUTE; + } + + if (vidconsole && (howto & RB_SERIAL)) + howto |= RB_MULTIPLE; + + /* + * XXX: Note that until the kernel is ready to respect multiple consoles + * for the boot messages, the first named console is the primary console + */ + if (!strcmp(string, "vidconsole")) + howto &= ~RB_SERIAL; + + free(string); + return(howto); } ==== //depot/projects/smpng/sys/boot/i386/libi386/devicename.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/devicename.c,v 1.6 2003/08/25 23:28:31 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/devicename.c,v 1.7 2005/05/27 19:28:04 jhb Exp $"); #include #include @@ -230,7 +230,7 @@ * Set currdev to suit the value being supplied in (value) */ int -i386_setcurrdev(struct env_var *ev, int flags, void *value) +i386_setcurrdev(struct env_var *ev, int flags, const void *value) { struct i386_devdesc *ncurr; int rv; ==== //depot/projects/smpng/sys/boot/i386/libi386/libi386.h#7 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/boot/i386/libi386/libi386.h,v 1.19 2004/10/22 14:56:23 simokawa Exp $ + * $FreeBSD: src/sys/boot/i386/libi386/libi386.h,v 1.20 2005/05/27 19:28:04 jhb Exp $ */ @@ -59,7 +59,7 @@ int i386_getdev(void **vdev, const char *devspec, const char **path); char *i386_fmtdev(void *vdev); -int i386_setcurrdev(struct env_var *ev, int flags, void *value); +int i386_setcurrdev(struct env_var *ev, int flags, const void *value); extern struct devdesc currdev; /* our current device */ ==== //depot/projects/smpng/sys/boot/i386/loader/main.c#9 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/boot/i386/loader/main.c,v 1.30 2004/10/22 14:57:28 simokawa Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/i386/loader/main.c,v 1.31 2005/05/27 19:31:00 jhb Exp $"); /* * MD bootstrap main() and assorted miscellaneous @@ -98,12 +98,16 @@ * We can use printf() etc. once this is done. * If the previous boot stage has requested a serial console, prefer that. */ - if (initial_howto & RB_SERIAL) + if (initial_howto & RB_MULTIPLE) { + setenv("boot_multicons", "YES", 1); + if (initial_howto & RB_SERIAL) + setenv("console", "comconsole vidconsole", 1); + else + setenv("console", "vidconsole comconsole", 1); + } else if (initial_howto & RB_SERIAL) setenv("console", "comconsole", 1); - if (initial_howto & RB_MUTE) + else if (initial_howto & RB_MUTE) setenv("console", "nullconsole", 1); - if (initial_howto & RB_MULTIPLE) - setenv("boot_multicons", "YES", 1); cons_probe(); /* ==== //depot/projects/smpng/sys/boot/pc98/boot2/boot.c#7 (text+ko) ==== @@ -49,7 +49,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/boot/pc98/boot2/boot.c,v 1.13 2005/05/08 14:17:27 nyan Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/pc98/boot2/boot.c,v 1.14 2005/05/27 19:26:11 jhb Exp $"); #include "boot.h" #include @@ -124,8 +124,8 @@ readfile("boot.config", boot_config, BOOT_CONFIG_SIZE); name = "/boot/loader"; if (boot_config[0] != '\0') { + getbootdev(boot_config, &loadflags); printf("boot.config: %s", boot_config); - getbootdev(boot_config, &loadflags); if (openrd() != 0) name = "kernel"; } ==== //depot/projects/smpng/sys/boot/pc98/loader/main.c#8 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/boot/pc98/loader/main.c,v 1.19 2005/05/08 14:17:28 nyan Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/pc98/loader/main.c,v 1.20 2005/05/27 19:31:00 jhb Exp $"); /* * MD bootstrap main() and assorted miscellaneous @@ -98,12 +98,16 @@ * We can use printf() etc. once this is done. * If the previous boot stage has requested a serial console, prefer that. */ - if (initial_howto & RB_SERIAL) + if (initial_howto & RB_MULTIPLE) { + setenv("boot_multicons", "YES", 1); + if (initial_howto & RB_SERIAL) + setenv("console", "comconsole vidconsole", 1); + else + setenv("console", "vidconsole comconsole", 1); + } else if (initial_howto & RB_SERIAL) setenv("console", "comconsole", 1); - if (initial_howto & RB_MUTE) + else if (initial_howto & RB_MUTE) setenv("console", "nullconsole", 1); - if (initial_howto & RB_MULTIPLE) - setenv("boot_multicons", "YES", 1); cons_probe(); /* ==== //depot/projects/smpng/sys/compat/linux/linux_stats.c#26 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/linux/linux_stats.c,v 1.69 2005/05/22 22:30:31 pjd Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/linux/linux_stats.c,v 1.70 2005/05/27 19:25:39 pjd Exp $"); #include "opt_mac.h" @@ -227,8 +227,7 @@ } static void -bsd_to_linux_statfs(struct thread *td, struct statfs *bsd_statfs, - struct l_statfs *linux_statfs) +bsd_to_linux_statfs(struct statfs *bsd_statfs, struct l_statfs *linux_statfs) { linux_statfs->f_type = bsd_to_linux_ftype(bsd_statfs->f_fstypename); @@ -261,7 +260,7 @@ LFREEPATH(path); if (error) return (error); - bsd_to_linux_statfs(td, &bsd_statfs, &linux_statfs); + bsd_to_linux_statfs(&bsd_statfs, &linux_statfs); return copyout(&linux_statfs, args->buf, sizeof(linux_statfs)); } @@ -279,7 +278,7 @@ error = kern_fstatfs(td, args->fd, &bsd_statfs); if (error) return error; - bsd_to_linux_statfs(td, &bsd_statfs, &linux_statfs); + bsd_to_linux_statfs(&bsd_statfs, &linux_statfs); return copyout(&linux_statfs, args->buf, sizeof(linux_statfs)); } ==== //depot/projects/smpng/sys/kern/kern_kse.c#19 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_kse.c,v 1.212 2005/04/23 02:32:31 davidxu Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_kse.c,v 1.213 2005/05/27 15:57:27 davidxu Exp $"); #include #include @@ -1427,16 +1427,6 @@ return (error); /* go sync */ } -int -thread_upcall_check(struct thread *td) -{ - PROC_LOCK_ASSERT(td->td_proc, MA_OWNED); - if (td->td_kflags & TDK_WAKEUP) - return (1); - else - return (0); -} - /* * called after ptrace resumed a process, force all * virtual CPUs to schedule upcall for SA process, ==== //depot/projects/smpng/sys/kern/subr_sleepqueue.c#16 (text+ko) ==== @@ -62,7 +62,7 @@ #include "opt_sleepqueue_profiling.h" #include -__FBSDID("$FreeBSD: src/sys/kern/subr_sleepqueue.c,v 1.17 2005/04/14 06:30:32 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/subr_sleepqueue.c,v 1.18 2005/05/27 15:57:27 davidxu Exp $"); #include #include @@ -345,10 +345,8 @@ struct sleepqueue *sq; struct thread *td; struct proc *p; - int do_upcall; int sig; - do_upcall = 0; td = curthread; p = td->td_proc; sc = SC_LOOKUP(wchan); @@ -370,8 +368,6 @@ mtx_unlock(&p->p_sigacts->ps_mtx); if (sig == 0 && thread_suspend_check(1)) sig = SIGSTOP; - else - do_upcall = thread_upcall_check(td); PROC_UNLOCK(p); /* @@ -383,7 +379,7 @@ sleepq_lock(wchan); sq = sleepq_lookup(wchan); mtx_lock_spin(&sched_lock); - if (TD_ON_SLEEPQ(td) && (sig != 0 || do_upcall != 0)) + if (TD_ON_SLEEPQ(td) && sig != 0) sleepq_resume_thread(sq, td, -1); else if (!TD_ON_SLEEPQ(td) && sig == 0) td->td_flags &= ~TDF_SINTR; ==== //depot/projects/smpng/sys/kern/uipc_socket2.c#43 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/uipc_socket2.c,v 1.145 2005/03/12 13:39:39 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/uipc_socket2.c,v 1.146 2005/05/27 17:16:43 rwatson Exp $"); #include "opt_mac.h" #include "opt_param.h" @@ -159,15 +159,12 @@ { /* - * XXXRW: This code separately acquires SOCK_LOCK(so) and - * SOCKBUF_LOCK(&so->so_rcv) even though they are the same mutex to - * avoid introducing the assumption that they are the same. + * XXXRW: This code assumes that SOCK_LOCK(so) and + * SOCKBUF_LOCK(&so->so_rcv) are the same. */ - SOCK_LOCK(so); + SOCKBUF_LOCK(&so->so_rcv); so->so_state &= ~SS_ISCONNECTING; so->so_state |= SS_ISDISCONNECTING; - SOCK_UNLOCK(so); - SOCKBUF_LOCK(&so->so_rcv); so->so_rcv.sb_state |= SBS_CANTRCVMORE; sorwakeup_locked(so); SOCKBUF_LOCK(&so->so_snd); @@ -182,16 +179,12 @@ { /* - * XXXRW: This code separately acquires SOCK_LOCK(so) and - * SOCKBUF_LOCK(&so->so_rcv) even though they are the same mutex to - * avoid introducing the assumption that they are the same. + * XXXRW: This code assumes that SOCK_LOCK(so) and + * SOCKBUF_LOCK(&so->so_rcv) are the same. */ - /* XXXRW: so_state locking? */ - SOCK_LOCK(so); + SOCKBUF_LOCK(&so->so_rcv); so->so_state &= ~(SS_ISCONNECTING|SS_ISCONNECTED|SS_ISDISCONNECTING); so->so_state |= SS_ISDISCONNECTED; - SOCK_UNLOCK(so); - SOCKBUF_LOCK(&so->so_rcv); so->so_rcv.sb_state |= SBS_CANTRCVMORE; sorwakeup_locked(so); SOCKBUF_LOCK(&so->so_snd); ==== //depot/projects/smpng/sys/kern/vfs_syscalls.c#89 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/vfs_syscalls.c,v 1.380 2005/05/22 23:05:27 pjd Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/vfs_syscalls.c,v 1.383 2005/05/27 19:23:48 pjd Exp $"); #include "opt_compat.h" #include "opt_mac.h" @@ -240,7 +240,8 @@ mtx_lock(&Giant); NDINIT(&nd, LOOKUP, FOLLOW, pathseg, path, td); - if ((error = namei(&nd)) != 0) { + error = namei(&nd); + if (error) { mtx_unlock(&Giant); return (error); } @@ -308,7 +309,8 @@ struct statfs *sp, sb; int error; - if ((error = getvnode(td->td_proc->p_fd, fd, &fp)) != 0) + error = getvnode(td->td_proc->p_fd, fd, &fp); + if (error) return (error); mtx_lock(&Giant); mp = fp->f_vnode->v_mount; @@ -441,7 +443,7 @@ /* * Get old format filesystem statistics. */ -static void cvtstatfs(struct thread *, struct statfs *, struct ostatfs *); +static void cvtstatfs(struct statfs *, struct ostatfs *); #ifndef _SYS_SYSPROTO_H_ struct freebsd4_statfs_args { @@ -464,7 +466,7 @@ error = kern_statfs(td, uap->path, UIO_USERSPACE, &sf); if (error) return (error); - cvtstatfs(td, &sf, &osb); + cvtstatfs(&sf, &osb); return (copyout(&osb, uap->buf, sizeof(osb))); } @@ -492,7 +494,7 @@ error = kern_fstatfs(td, uap->fd, &sf); if (error) return (error); - cvtstatfs(td, &sf, &osb); + cvtstatfs(&sf, &osb); return (copyout(&osb, uap->buf, sizeof(osb))); } @@ -524,6 +526,7 @@ maxcount = uap->bufsize / sizeof(struct ostatfs); sfsp = (caddr_t)uap->buf; count = 0; + mtx_lock(&Giant); mtx_lock(&mountlist_mtx); for (mp = TAILQ_FIRST(&mountlist); mp != NULL; mp = nmp) { if (!prison_check_mount(td->td_ucred, mp)) { @@ -561,10 +564,11 @@ sb.f_fsid.val[0] = sb.f_fsid.val[1] = 0; sp = &sb; } - cvtstatfs(td, sp, &osb); + cvtstatfs(sp, &osb); error = copyout(&osb, sfsp, sizeof(osb)); if (error) { vfs_unbusy(mp, td); + mtx_unlock(&Giant); return (error); } sfsp += sizeof(osb); @@ -575,6 +579,7 @@ vfs_unbusy(mp, td); } mtx_unlock(&mountlist_mtx); + mtx_unlock(&Giant); if (sfsp && count > maxcount) td->td_retval[0] = maxcount; else @@ -604,12 +609,13 @@ fhandle_t fh; int error; - if ((error = copyin(uap->u_fhp, &fh, sizeof(fhandle_t))) != 0) + error = copyin(uap->u_fhp, &fh, sizeof(fhandle_t)); + if (error) return (error); error = kern_fhstatfs(td, fh, &sf); if (error) return (error); - cvtstatfs(td, &sf, &osb); + cvtstatfs(&sf, &osb); return (copyout(&osb, uap->buf, sizeof(osb))); } @@ -617,8 +623,7 @@ * Convert a new format statfs structure to an old format statfs structure. */ static void -cvtstatfs(td, nsp, osp) - struct thread *td; +cvtstatfs(nsp, osp) struct statfs *nsp; struct ostatfs *osp; { @@ -4188,12 +4193,13 @@ fhandle_t fh; int error; - if ((error = copyin(uap->u_fhp, &fh, sizeof(fhandle_t))) != 0) + error = copyin(uap->u_fhp, &fh, sizeof(fhandle_t)); + if (error) return (error); error = kern_fhstatfs(td, fh, &sf); - if (error == 0) - error = copyout(&sf, uap->buf, sizeof(sf)); - return (error); + if (error) + return (error); + return (copyout(&sf, uap->buf, sizeof(sf))); } int @@ -4209,7 +4215,8 @@ return (error); if ((mp = vfs_getvfs(&fh.fh_fsid)) == NULL) return (ESTALE); - if ((error = VFS_FHTOVP(mp, &fh.fh_fid, &vp))) + error = VFS_FHTOVP(mp, &fh.fh_fid, &vp); + if (error) return (error); mp = vp->v_mount; sp = &mp->mnt_stat; @@ -4225,7 +4232,8 @@ sp->f_version = STATFS_VERSION; sp->f_namemax = NAME_MAX; sp->f_flags = mp->mnt_flag & MNT_VISFLAGMASK; - if ((error = VFS_STATFS(mp, sp, td)) != 0) + error = VFS_STATFS(mp, sp, td); + if (error) return (error); *buf = *sp; return (0); ==== //depot/projects/smpng/sys/sys/proc.h#144 (text+ko) ==== @@ -32,7 +32,7 @@ * SUCH DAMAGE. * * @(#)proc.h 8.15 (Berkeley) 5/19/95 - * $FreeBSD: src/sys/sys/proc.h,v 1.429 2005/05/23 23:01:53 ups Exp $ + * $FreeBSD: src/sys/sys/proc.h,v 1.430 2005/05/27 15:57:27 davidxu Exp $ */ #ifndef _SYS_PROC_H_ @@ -928,7 +928,6 @@ void thread_unlink(struct thread *td); void thread_unsuspend(struct proc *p); void thread_unsuspend_one(struct thread *td); -int thread_upcall_check(struct thread *td); void thread_unthread(struct thread *td); int thread_userret(struct thread *td, struct trapframe *frame); void thread_user_enter(struct thread *td); From owner-p4-projects@FreeBSD.ORG Sat May 28 00:41:50 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BEED916A420; Sat, 28 May 2005 00:41:49 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7A26F16A41C for ; Sat, 28 May 2005 00:41:49 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 41A0543D1D for ; Sat, 28 May 2005 00:41:49 +0000 (GMT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4S0fnpk037575 for ; Sat, 28 May 2005 00:41:49 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4S0fnWe037571 for perforce@freebsd.org; Sat, 28 May 2005 00:41:49 GMT (envelope-from sam@freebsd.org) Date: Sat, 28 May 2005 00:41:49 GMT Message-Id: <200505280041.j4S0fnWe037571@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 77599 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 May 2005 00:41:50 -0000 http://perforce.freebsd.org/chv.cgi?CH=77599 Change 77599 by sam@sam_ebb on 2005/05/28 00:41:14 Checkpoint sta-mode power save support; mostly works but needs some tweaking for bg scanning: o add a new SLEEP state and use the state machine to hook into the driver to effect pwr save operation of the device o add power save polling callback from inactivity timer; use this to drop into power save mode when inactive o mark null data frame sent to ap on entering pwr save mode so driver can identify when it should enable pwr save operation for the device (must be deferred until frame goes is acked) Also: o clear tim after flushing ps q for an associated sta that drops out of pwr save mode o when marking an ap down send a disassoc _and_ clear the sta from the table to insure the reference count goes to zero Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_freebsd.h#8 edit .. //depot/projects/vap/sys/net80211/ieee80211_input.c#18 edit .. //depot/projects/vap/sys/net80211/ieee80211_ioctl.c#14 edit .. //depot/projects/vap/sys/net80211/ieee80211_node.c#12 edit .. //depot/projects/vap/sys/net80211/ieee80211_output.c#15 edit .. //depot/projects/vap/sys/net80211/ieee80211_power.c#3 edit .. //depot/projects/vap/sys/net80211/ieee80211_power.h#2 edit .. //depot/projects/vap/sys/net80211/ieee80211_proto.c#12 edit .. //depot/projects/vap/sys/net80211/ieee80211_proto.h#7 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_freebsd.h#8 (text+ko) ==== @@ -150,6 +150,7 @@ #define M_LINK0 M_PROTO1 /* WEP requested */ #define M_PWR_SAV M_PROTO4 /* bypass PS handling */ #define M_FF M_PROTO5 /* fast-frame */ +#define M_PWR_DOWN 0x20000 /* power down null data frame */ /* * Encode WME access control bits in the PROTO flags. * This is safe since it's passed directly in to the ==== //depot/projects/vap/sys/net80211/ieee80211_input.c#18 (text+ko) ==== @@ -1082,7 +1082,7 @@ } switch (vap->iv_opmode) { case IEEE80211_M_IBSS: - if (vap->iv_state != IEEE80211_S_RUN || + if (vap->iv_state < IEEE80211_S_RUN || seq != IEEE80211_AUTH_OPEN_REQUEST) { vap->iv_stats.is_rx_bad_auth++; return; @@ -1097,7 +1097,7 @@ break; case IEEE80211_M_HOSTAP: - if (vap->iv_state != IEEE80211_S_RUN || + if (vap->iv_state < IEEE80211_S_RUN || seq != IEEE80211_AUTH_OPEN_REQUEST) { vap->iv_stats.is_rx_bad_auth++; return; @@ -1277,7 +1277,7 @@ "bad operating mode %u", vap->iv_opmode); return; case IEEE80211_M_HOSTAP: - if (vap->iv_state != IEEE80211_S_RUN) { + if (vap->iv_state < IEEE80211_S_RUN) { IEEE80211_DISCARD_MAC(vap, IEEE80211_MSG_AUTH, ni->ni_macaddr, "shared key auth", "bad state %u", vap->iv_state); @@ -2402,7 +2402,7 @@ u_int8_t rate; if (vap->iv_opmode == IEEE80211_M_STA || - vap->iv_state != IEEE80211_S_RUN) { + vap->iv_state < IEEE80211_S_RUN) { vap->iv_stats.is_rx_mgtdiscard++; return; } @@ -2557,7 +2557,7 @@ u_int8_t reason; if (vap->iv_opmode != IEEE80211_M_HOSTAP || - vap->iv_state != IEEE80211_S_RUN) { + vap->iv_state < IEEE80211_S_RUN) { vap->iv_stats.is_rx_mgtdiscard++; return; } @@ -2904,7 +2904,7 @@ case IEEE80211_FC0_SUBTYPE_DISASSOC: { u_int16_t reason; - if (vap->iv_state != IEEE80211_S_RUN && + if (vap->iv_state < IEEE80211_S_RUN && vap->iv_state != IEEE80211_S_ASSOC && vap->iv_state != IEEE80211_S_AUTH) { vap->iv_stats.is_rx_mgtdiscard++; ==== //depot/projects/vap/sys/net80211/ieee80211_ioctl.c#14 (text+ko) ==== @@ -1511,6 +1511,7 @@ case IEEE80211_POWERSAVE_OFF: if (vap->iv_flags & IEEE80211_F_PMGTON) { vap->iv_flags &= ~IEEE80211_F_PMGTON; + ieee80211_syncflag(ic, IEEE80211_F_PMGTON); error = ENETRESET; } break; @@ -1519,6 +1520,7 @@ error = EINVAL; else if ((vap->iv_flags & IEEE80211_F_PMGTON) == 0) { vap->iv_flags |= IEEE80211_F_PMGTON; + ieee80211_syncflag(ic, IEEE80211_F_PMGTON); error = ENETRESET; } break; @@ -1911,7 +1913,7 @@ if ((parent->if_flags & IFF_UP) == 0) { parent->if_flags |= IFF_UP; error = parent->if_ioctl(parent, cmd, data); - } else if (vap->iv_state != IEEE80211_S_RUN) + } else if (vap->iv_state < IEEE80211_S_RUN) ifp->if_init(ifp->if_softc); } else { ieee80211_stop(ifp); /* stop ourself */ ==== //depot/projects/vap/sys/net80211/ieee80211_node.c#12 (text+ko) ==== @@ -1293,6 +1293,7 @@ ieee80211_scan_timeout(ic); ieee80211_timeout_stations(&ic->ic_sta); + ieee80211_power_poll(ic); callout_reset(&ic->ic_inact, IEEE80211_INACT_WAIT * hz, ieee80211_node_timeout, ic); ==== //depot/projects/vap/sys/net80211/ieee80211_output.c#15 (text+ko) ==== @@ -217,20 +217,26 @@ /* NB: parent must be up and running */ if ((parent->if_flags & (IFF_RUNNING|IFF_UP)) != (IFF_RUNNING|IFF_UP)) return; - for (;;) { + if (vap->iv_state == IEEE80211_S_SLEEP) { /* - * No data frames go out unless we're running. + * Wakeup device for transmit. */ - if (vap->iv_state != IEEE80211_S_RUN) { - IEEE80211_DPRINTF(vap, IEEE80211_MSG_OUTPUT, - "%s: ignore data packet, state %u\n", - __func__, vap->iv_state); + ieee80211_new_state(vap, IEEE80211_S_RUN, 0); + } + /* + * No data frames go out unless we're running. + */ + if (vap->iv_state != IEEE80211_S_RUN) { + IEEE80211_DPRINTF(vap, IEEE80211_MSG_OUTPUT, + "%s: ignore data packet, state %u\n", + __func__, vap->iv_state); #if 0 - vap->iv_stats.ist_tx_discard++; + vap->iv_stats.ist_tx_discard++; #endif - ifp->if_flags |= IFF_OACTIVE; - break; - } + ifp->if_flags |= IFF_OACTIVE; + return; + } + for (;;) { IFQ_DRV_DEQUEUE(&ifp->if_snd, m); /* XXX: LOCK */ if (m == NULL) break; @@ -467,8 +473,10 @@ /* NB: power management bit is never sent by an AP */ if ((ni->ni_flags & IEEE80211_NODE_PWR_MGT) && vap->iv_opmode != IEEE80211_M_HOSTAP && - vap->iv_opmode != IEEE80211_M_WDS) + vap->iv_opmode != IEEE80211_M_WDS) { wh->i_fc[1] |= IEEE80211_FC1_PWR_MGT; + m->m_flags |= M_PWR_DOWN; /* force special handling */ + } /* XXX WDS? */ m->m_len = m->m_pkthdr.len = sizeof(struct ieee80211_frame); ==== //depot/projects/vap/sys/net80211/ieee80211_power.c#3 (text+ko) ==== @@ -276,33 +276,33 @@ /* * Flush queued unicast frames. */ - if (IEEE80211_NODE_SAVEQ_QLEN(ni) == 0) { - if (vap->iv_set_tim != NULL) - vap->iv_set_tim(ni, 0); /* just in case */ - return; - } - IEEE80211_NOTE(vap, IEEE80211_MSG_POWER, ni, - "flush ps queue, %u packets queued", IEEE80211_NODE_SAVEQ_QLEN(ni)); - for (;;) { - int qlen; + if (IEEE80211_NODE_SAVEQ_QLEN(ni) != 0) { + IEEE80211_NOTE(vap, IEEE80211_MSG_POWER, ni, + "flush ps queue, %u packets queued", + IEEE80211_NODE_SAVEQ_QLEN(ni)); + for (;;) { + int qlen; - IEEE80211_NODE_SAVEQ_DEQUEUE(ni, m, qlen); - if (m == NULL) - break; - /* - * If this is the last packet, turn off the TIM bit. - * If there are more packets, set the more packets bit - * in the packet dispatched to the station. - */ - if (qlen != 0) { - struct ieee80211_frame_min *wh = - mtod(m, struct ieee80211_frame_min *); - wh->i_fc[1] |= IEEE80211_FC1_MORE_DATA; + IEEE80211_NODE_SAVEQ_DEQUEUE(ni, m, qlen); + if (m == NULL) + break; + /* + * If this is the last packet, turn off the TIM bit. + * If there are more packets, set the more packets bit + * in the packet dispatched to the station. + */ + if (qlen != 0) { + struct ieee80211_frame_min *wh = + mtod(m, struct ieee80211_frame_min *); + wh->i_fc[1] |= IEEE80211_FC1_MORE_DATA; + } + /* XXX need different driver interface */ + /* XXX bypasses q max */ + IF_ENQUEUE(&vap->iv_arp.ac_if.if_snd, m); } - /* XXX need different driver interface */ - /* XXX bypasses q max */ - IF_ENQUEUE(&vap->iv_arp.ac_if.if_snd, m); } + if (vap->iv_set_tim != NULL) + vap->iv_set_tim(ni, 0); } /* @@ -362,3 +362,21 @@ ieee80211_send_nulldata(ieee80211_ref_node(ni)); } } + +void +ieee80211_power_poll(struct ieee80211com *ic) +{ + if (ic->ic_opmode == IEEE80211_M_STA && + (ic->ic_flags & IEEE80211_F_PMGTON) && + ic->ic_nrunning && + (ticks - ic->ic_lastdata) > ic->ic_lintval) { + struct ieee80211vap *vap; + + TAILQ_FOREACH(vap, &ic->ic_vaps, iv_next) + if (vap->iv_opmode == IEEE80211_M_STA && + vap->iv_state == IEEE80211_S_RUN) { + ieee80211_new_state(vap, IEEE80211_S_SLEEP, 0); + break; + } + } +} ==== //depot/projects/vap/sys/net80211/ieee80211_power.h#2 (text+ko) ==== @@ -47,4 +47,6 @@ void ieee80211_pwrsave(struct ieee80211_node *, struct mbuf *); void ieee80211_node_pwrsave(struct ieee80211_node *, int enable); void ieee80211_sta_pwrsave(struct ieee80211vap *, int enable); + +void ieee80211_power_poll(struct ieee80211com *); #endif /* _NET80211_IEEE80211_POWER_H_ */ ==== //depot/projects/vap/sys/net80211/ieee80211_proto.c#12 (text+ko) ==== @@ -76,7 +76,8 @@ "SCAN", /* IEEE80211_S_SCAN */ "AUTH", /* IEEE80211_S_AUTH */ "ASSOC", /* IEEE80211_S_ASSOC */ - "RUN" /* IEEE80211_S_RUN */ + "RUN", /* IEEE80211_S_RUN */ + "SLEEP" /* IEEE80211_S_SLEEP */ }; const char *ieee80211_wme_acnames[] = { "WME_AC_BE", @@ -958,7 +959,7 @@ * simply by re-associating. Otherwise we need to * re-scan to select an appropriate ap. */ - if (vap->iv_state != IEEE80211_S_RUN || forcescan) + if (vap->iv_state < IEEE80211_S_RUN || forcescan) ieee80211_new_state(vap, IEEE80211_S_SCAN, 0); else ieee80211_new_state(vap, IEEE80211_S_ASSOC, 1); @@ -1109,7 +1110,7 @@ * through different means (e.g. the tx timeout on mgt frames). */ if (vap->iv_opmode != IEEE80211_M_STA || - vap->iv_state != IEEE80211_S_RUN) + vap->iv_state < IEEE80211_S_RUN) continue; if (ic->ic_roaming == IEEE80211_ROAMING_AUTO) { /* @@ -1136,12 +1137,33 @@ } } +static void +sta_disassoc(void *arg, struct ieee80211_node *ni) +{ + struct ieee80211vap *vap = arg; + + if (ni->ni_vap == vap && ni->ni_associd != 0) { + IEEE80211_SEND_MGMT(ni, IEEE80211_FC0_SUBTYPE_DISASSOC, + IEEE80211_REASON_ASSOC_LEAVE); + ieee80211_node_leave(ni); + } +} + +static void +sta_deauth(void *arg, struct ieee80211_node *ni) +{ + struct ieee80211vap *vap = arg; + + if (ni->ni_vap == vap) + IEEE80211_SEND_MGMT(ni, IEEE80211_FC0_SUBTYPE_DEAUTH, + IEEE80211_REASON_ASSOC_LEAVE); +} + static int ieee80211_newstate(struct ieee80211vap *vap, enum ieee80211_state nstate, int arg) { struct ieee80211com *ic = vap->iv_ic; struct ifnet *ifp = &vap->iv_if; - struct ieee80211_node_table *nt; struct ieee80211_node *ni; enum ieee80211_state ostate; @@ -1159,6 +1181,7 @@ switch (ostate) { case IEEE80211_S_INIT: break; + case IEEE80211_S_SLEEP: case IEEE80211_S_RUN: switch (vap->iv_opmode) { case IEEE80211_M_STA: @@ -1168,17 +1191,8 @@ ieee80211_sta_leave(ni); break; case IEEE80211_M_HOSTAP: - nt = &ic->ic_sta; - IEEE80211_NODE_LOCK(nt); - TAILQ_FOREACH(ni, &nt->nt_node, ni_list) { - if (ni->ni_associd == 0 || - ni->ni_vap != vap) - continue; - IEEE80211_SEND_MGMT(ni, - IEEE80211_FC0_SUBTYPE_DISASSOC, - IEEE80211_REASON_ASSOC_LEAVE); - } - IEEE80211_NODE_UNLOCK(nt); + ieee80211_iterate_nodes(&ic->ic_sta, + sta_disassoc, vap); break; default: break; @@ -1192,16 +1206,8 @@ IEEE80211_REASON_AUTH_LEAVE); break; case IEEE80211_M_HOSTAP: - nt = &ic->ic_sta; - IEEE80211_NODE_LOCK(nt); - TAILQ_FOREACH(ni, &nt->nt_node, ni_list) { - if (ni->ni_vap != vap) - continue; - IEEE80211_SEND_MGMT(ni, - IEEE80211_FC0_SUBTYPE_DEAUTH, - IEEE80211_REASON_AUTH_LEAVE); - } - IEEE80211_NODE_UNLOCK(nt); + ieee80211_iterate_nodes(&ic->ic_sta, + sta_deauth, vap); break; default: break; @@ -1251,6 +1257,7 @@ } break; case IEEE80211_S_RUN: /* beacon miss */ + case IEEE80211_S_SLEEP: ieee80211_sta_leave(ni); vap->iv_flags &= ~IEEE80211_F_SIBSS; /* XXX */ if (ic->ic_roaming == IEEE80211_ROAMING_AUTO) @@ -1283,6 +1290,7 @@ } break; case IEEE80211_S_RUN: + case IEEE80211_S_SLEEP: switch (arg) { case IEEE80211_FC0_SUBTYPE_AUTH: IEEE80211_SEND_MGMT(ni, @@ -1317,6 +1325,7 @@ IEEE80211_FC0_SUBTYPE_ASSOC_REQ, 0); break; case IEEE80211_S_RUN: + case IEEE80211_S_SLEEP: ieee80211_sta_leave(ni); if (ic->ic_roaming == IEEE80211_ROAMING_AUTO) { /* NB: caller specifies ASSOC/REASSOC by arg */ @@ -1349,8 +1358,6 @@ IEEE80211_DPRINTF(vap, IEEE80211_MSG_ANY, "%s: invalid transition\n", __func__); break; - case IEEE80211_S_RUN: - break; case IEEE80211_S_SCAN: /* adhoc/hostap mode */ case IEEE80211_S_ASSOC: /* infra mode */ KASSERT(ni->ni_txrate < ni->ni_rates.rs_nrates, @@ -1373,6 +1380,11 @@ ieee80211_notify_node_join(ni, arg == IEEE80211_FC0_SUBTYPE_ASSOC_RESP); break; + case IEEE80211_S_RUN: + break; + case IEEE80211_S_SLEEP: + ieee80211_sta_pwrsave(vap, 0); + return 0; } /* * Start/stop the authenticator when operating as an @@ -1396,6 +1408,12 @@ if_start(ifp); } break; + case IEEE80211_S_SLEEP: + KASSERT(vap->iv_opmode == IEEE80211_M_STA, + ("switch to %s state when operating in mode %u", + ieee80211_state_name[nstate], vap->iv_opmode)); + ieee80211_sta_pwrsave(vap, 1); + break; } return 0; } ==== //depot/projects/vap/sys/net80211/ieee80211_proto.h#7 (text+ko) ==== @@ -44,8 +44,9 @@ IEEE80211_S_AUTH = 2, /* try to authenticate */ IEEE80211_S_ASSOC = 3, /* try to assoc */ IEEE80211_S_RUN = 4, /* associated */ + IEEE80211_S_SLEEP = 5, /* power save */ }; -#define IEEE80211_S_MAX (IEEE80211_S_RUN+1) +#define IEEE80211_S_MAX (IEEE80211_S_SLEEP+1) #define IEEE80211_SEND_MGMT(_ni,_type,_arg) \ ((*(_ni)->ni_ic->ic_send_mgmt)(_ni, _type, _arg)) From owner-p4-projects@FreeBSD.ORG Sat May 28 01:06:20 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0618E16A420; Sat, 28 May 2005 01:06:20 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D524E16A41C for ; Sat, 28 May 2005 01:06:19 +0000 (GMT) (envelope-from wsalamon@computer.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A68A143D1D for ; Sat, 28 May 2005 01:06:19 +0000 (GMT) (envelope-from wsalamon@computer.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4S16JTH045326 for ; Sat, 28 May 2005 01:06:19 GMT (envelope-from wsalamon@computer.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4S16JQn045323 for perforce@freebsd.org; Sat, 28 May 2005 01:06:19 GMT (envelope-from wsalamon@computer.org) Date: Sat, 28 May 2005 01:06:19 GMT Message-Id: <200505280106.j4S16JQn045323@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wsalamon@computer.org using -f From: Wayne Salamon To: Perforce Change Reviews Cc: Subject: PERFORCE change 77601 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 May 2005 01:06:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=77601 Change 77601 by wsalamon@rickenbacker on 2005/05/28 01:05:36 Remove the setting of errno that was inherited from the OpenBSM code. Affected files ... .. //depot/projects/trustedbsd/audit3/sys/security/audit/kern_bsm_token.c#7 edit Differences ... ==== //depot/projects/trustedbsd/audit3/sys/security/audit/kern_bsm_token.c#7 (text+ko) ==== @@ -89,10 +89,8 @@ u_char *dptr = NULL; u_int16_t textlen; - if(text == NULL) { - errno = EINVAL; + if(text == NULL) return NULL; - } textlen = strlen(text); GET_TOKEN_AREA(t, dptr, 9 + textlen); @@ -118,10 +116,8 @@ u_char *dptr = NULL; u_int16_t textlen; - if(text == NULL) { - errno = EINVAL; + if(text == NULL) return NULL; - } textlen = strlen(text); GET_TOKEN_AREA(t, dptr, 13 + textlen); @@ -163,12 +159,9 @@ u_int16_t pad0_16 = 0; u_int16_t pad0_32 = 0; - if(vni == NULL) { - errno = EINVAL; + if(vni == NULL) return NULL; - } - GET_TOKEN_AREA(t, dptr, 29); if(t == NULL) { return NULL; @@ -209,7 +202,7 @@ token_t *au_to_attr64(struct vnode_au_info *vni) { - errno = ENOTSUP; + return NULL; } @@ -234,10 +227,8 @@ u_char *dptr = NULL; size_t datasize, totdata; - if(p == NULL) { - errno = EINVAL; + if(p == NULL) return NULL; - } /* Determine the size of the basic unit */ switch(unit_type) { @@ -251,7 +242,6 @@ break; default: - errno = EINVAL; return NULL; } @@ -312,10 +302,8 @@ u_char *dptr = NULL; int i; - if(groups == NULL) { - errno = EINVAL; + if(groups == NULL) return NULL; - } GET_TOKEN_AREA(t, dptr, n * 4 + 3); if(t == NULL) { @@ -343,10 +331,8 @@ token_t *t; u_char *dptr = NULL; - if(internet_addr == NULL) { - errno = EINVAL; + if(internet_addr == NULL) return NULL; - } GET_TOKEN_AREA(t, dptr, 5); if(t == NULL) { @@ -370,10 +356,8 @@ u_char *dptr = NULL; u_int32_t type = AF_INET6; - if(internet_addr == NULL) { - errno = EINVAL; + if(internet_addr == NULL) return NULL; - } GET_TOKEN_AREA(t, dptr, 21); if(t == NULL) { @@ -399,10 +383,8 @@ token_t *t; u_char *dptr = NULL; - if(ip == NULL) { - errno = EINVAL; + if(ip == NULL) return NULL; - } GET_TOKEN_AREA(t, dptr, 21); if(t == NULL) { @@ -458,10 +440,8 @@ u_int16_t pad0 = 0; - if(perm == NULL) { - errno = EINVAL; + if(perm == NULL) return NULL; - } GET_TOKEN_AREA(t, dptr, 29); if(t == NULL) { @@ -531,10 +511,8 @@ token_t *t; u_char *dptr = NULL; - if((data == NULL) || (bytes <= 0)) { - errno = EINVAL; + if((data == NULL) || (bytes <= 0)) return NULL; - } GET_TOKEN_AREA(t, dptr, bytes + 3); if(t == NULL) { @@ -574,10 +552,9 @@ } #endif - if(file == NULL) { - errno = EINVAL; + if(file == NULL) return NULL; - } + filelen = strlen(file); GET_TOKEN_AREA(t, dptr, filelen + 12); if(t == NULL) { @@ -609,10 +586,9 @@ u_char *dptr = NULL; u_int16_t textlen; - if(text == NULL) { - errno = EINVAL; + if(text == NULL) return NULL; - } + textlen = strlen(text); GET_TOKEN_AREA(t, dptr, textlen + 4); if(t == NULL) { @@ -639,10 +615,9 @@ u_char *dptr = NULL; u_int16_t textlen; - if(text == NULL) { - errno = EINVAL; + if(text == NULL) return NULL; - } + textlen = strlen(text); GET_TOKEN_AREA(t, dptr, textlen + 4); if(t == NULL) { @@ -678,10 +653,9 @@ token_t *t; u_char *dptr = NULL; - if(tid == NULL) { - errno = EINVAL; + if(tid == NULL) return NULL; - } + GET_TOKEN_AREA(t, dptr, 37); if(t == NULL) { @@ -739,10 +713,8 @@ token_t *t; u_char *dptr = NULL; - if(tid == NULL) { - errno = EINVAL; + if(tid == NULL) return NULL; - } GET_TOKEN_AREA(t, dptr, 53); if(t == NULL) { @@ -947,9 +919,6 @@ return t; } - return t; -} - /* * token ID 1 byte * socket family 2 bytes @@ -961,10 +930,8 @@ token_t *t; u_char *dptr = NULL; - if(so == NULL) { - errno = EINVAL; + if(so == NULL) return NULL; - } GET_TOKEN_AREA(t, dptr, 9); if(t == NULL) { @@ -990,10 +957,8 @@ token_t *t; u_char *dptr = NULL; - if(so == NULL) { - errno = EINVAL; + if(so == NULL) return NULL; - } GET_TOKEN_AREA(t, dptr, 21); if(t == NULL) { @@ -1043,10 +1008,8 @@ token_t *t; u_char *dptr = NULL; - if(tid == NULL) { - errno = EINVAL; + if(tid == NULL) return NULL; - } GET_TOKEN_AREA(t, dptr, 37); if(t == NULL) { @@ -1104,10 +1067,8 @@ token_t *t; u_char *dptr = NULL; - if(tid == NULL) { - errno = EINVAL; + if(tid == NULL) return NULL; - } GET_TOKEN_AREA(t, dptr, 53); if(t == NULL) { @@ -1182,10 +1143,8 @@ int i, count = 0; size_t totlen = 0; - if(args == NULL) { - errno = EINVAL; + if(args == NULL) return NULL; - } nextarg = *args; @@ -1229,10 +1188,8 @@ size_t totlen = 0; const char *nextenv; - if(env == NULL) { - errno = EINVAL; + if(env == NULL) return NULL; - } nextenv = *env; From owner-p4-projects@FreeBSD.ORG Sat May 28 03:30:13 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3FB8816A420; Sat, 28 May 2005 03:30:13 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 13C2316A41C for ; Sat, 28 May 2005 03:30:13 +0000 (GMT) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E3F5843D1D for ; Sat, 28 May 2005 03:30:12 +0000 (GMT) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4S3UCgg050439 for ; Sat, 28 May 2005 03:30:12 GMT (envelope-from csjp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4S3UC2i050436 for perforce@freebsd.org; Sat, 28 May 2005 03:30:12 GMT (envelope-from csjp@freebsd.org) Date: Sat, 28 May 2005 03:30:12 GMT Message-Id: <200505280330.j4S3UC2i050436@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to csjp@freebsd.org using -f From: "Christian S.J. Peron" To: Perforce Change Reviews Cc: Subject: PERFORCE change 77603 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 May 2005 03:30:14 -0000 http://perforce.freebsd.org/chv.cgi?CH=77603 Change 77603 by csjp@csjp_xor on 2005/05/28 03:29:50 Use more consistent variable naming convention: s/shac/ctx Affected files ... .. //depot/projects/trustedbsd/mac/usr.sbin/getfhash/getfhash.c#9 edit Differences ... ==== //depot/projects/trustedbsd/mac/usr.sbin/getfhash/getfhash.c#9 (text+ko) ==== @@ -58,7 +58,7 @@ static int calc_sha1(const char *fname, u_char *digest) { - SHA1_CTX shac; + SHA1_CTX ctx; int fd, len, error, count; struct stat sb; off_t b; @@ -76,7 +76,7 @@ } len = getpagesize(); buffer = malloc(len); - SHA1_Init(&shac); + SHA1_Init(&ctx); for (b = 0; b < sb.st_size; b += len) { if ((len + b) > sb.st_size) count = sb.st_size - b; @@ -89,10 +89,10 @@ warn("read failed"); return (error); } - SHA1_Update(&shac, buffer, count); + SHA1_Update(&ctx, buffer, count); } close(fd); - SHA1_Final(digest, &shac); + SHA1_Final(digest, &ctx); free(buffer); return (0); } From owner-p4-projects@FreeBSD.ORG Sat May 28 03:48:36 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DAF8E16A420; Sat, 28 May 2005 03:48:35 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9DB3116A41C for ; Sat, 28 May 2005 03:48:35 +0000 (GMT) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7956C43D1D for ; Sat, 28 May 2005 03:48:35 +0000 (GMT) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4S3mZaB051068 for ; Sat, 28 May 2005 03:48:35 GMT (envelope-from csjp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4S3mZ5E051065 for perforce@freebsd.org; Sat, 28 May 2005 03:48:35 GMT (envelope-from csjp@freebsd.org) Date: Sat, 28 May 2005 03:48:35 GMT Message-Id: <200505280348.j4S3mZ5E051065@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to csjp@freebsd.org using -f From: "Christian S.J. Peron" To: Perforce Change Reviews Cc: Subject: PERFORCE change 77604 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 May 2005 03:48:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=77604 Change 77604 by csjp@csjp_xor on 2005/05/28 03:48:19 use warnx instead of printf and include the pathname in the warning. This seems like to more appropriate way to handle warnings. Affected files ... .. //depot/projects/trustedbsd/mac/usr.sbin/getfhash/getfhash.c#10 edit Differences ... ==== //depot/projects/trustedbsd/mac/usr.sbin/getfhash/getfhash.c#10 (text+ko) ==== @@ -235,7 +235,7 @@ if (Wflag) { (*checksum)(pathname, &digest[0]); if (memcmp(&digest[0], &sum.vs_sum[0], nbytes) != 0) { - printf(" (conflicting checksum)"); + warnx("%s: checksum discrepancy", pathname); } } putchar('\n'); From owner-p4-projects@FreeBSD.ORG Sat May 28 19:27:58 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 83D1A16A420; Sat, 28 May 2005 19:27:57 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 43A6016A41C for ; Sat, 28 May 2005 19:27:57 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 01CB543D1D for ; Sat, 28 May 2005 19:27:57 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4SJRu8Y018419 for ; Sat, 28 May 2005 19:27:56 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4SJRuvR018416 for perforce@freebsd.org; Sat, 28 May 2005 19:27:56 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 28 May 2005 19:27:56 GMT Message-Id: <200505281927.j4SJRuvR018416@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 77639 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 May 2005 19:27:58 -0000 http://perforce.freebsd.org/chv.cgi?CH=77639 Change 77639 by rwatson@rwatson_paprika on 2005/05/28 19:27:05 Re-order syscalls.master arguments to make the audit event identifier mandatory (second) in each system call definition, rather than as an optional field later in the table. This makes the file a bit easier to parse mechanically. Affected files ... .. //depot/projects/trustedbsd/audit3/sys/kern/makesyscalls.sh#4 edit .. //depot/projects/trustedbsd/audit3/sys/kern/syscalls.master#12 edit Differences ... ==== //depot/projects/trustedbsd/audit3/sys/kern/makesyscalls.sh#4 (text+ko) ==== @@ -199,26 +199,24 @@ exit 1 } function parseline() { - f=3 # toss number and type + f=4 # toss number, type, audit event argc= 0; argssize = "0" - if ($(NF) ~ "AUE") { - auditev=$(NF) + if ($NF != "}") { + funcalias=$(NF-2) + argalias=$(NF-1) + rettype=$NF + end=NF-3 + } else { funcalias="" argalias="" rettype="int" - end=NF-1 - } else { - auditev=$(NF-3) - funcalias=$(NF-2) - argalias=$(NF-1) - rettype=$NF - end=NF-4 + end=NF } - if ($2 == "NODEF") { + if ($3 == "NODEF") { auditev="AUE_NULL" - funcname=$3 - argssize = "AS(" $5 ")" + funcname=$4 + argssize = "AS(" $6 ")" return } if ($f != "{") @@ -241,9 +239,9 @@ funcalias = funcname if (argalias == "") { argalias = funcname "_args" - if ($2 == "COMPAT") + if ($3 == "COMPAT") argalias = "o" argalias - if ($2 == "COMPAT4") + if ($3 == "COMPAT4") argalias = "freebsd4_" argalias } f++ @@ -277,50 +275,57 @@ if (argc != 0) argssize = "AS(" argalias ")" } - { comment = $3 - if (NF < 6) - for (i = 4; i <= NF; i++) + { comment = $4 + if (NF < 7) + for (i = 5; i <= NF; i++) comment = comment " " $i } + # + # The AUE_ audit event identifier. + # + { + auditev = $2; + } + # The 'M' type prefix # { mpsafe = "SYF_MPSAFE | "; - if ($2 == "MSTD") { - $2 = "STD"; - } else if ($2 == "MNODEF") { - $2 = "NODEF"; - } else if ($2 == "MNOARGS") { - $2 = "NOARGS"; - } else if ($2 == "MNOPROTO") { - $2 = "NOPROTO"; - } else if ($2 == "MNOIMPL") { - $2 = "NOIMPL"; - } else if ($2 == "MNOSTD") { - $2 = "NOSTD"; - } else if ($2 == "MCOMPAT") { - $2 = "COMPAT"; - } else if ($2 == "MCOMPAT4") { - $2 = "COMPAT4"; - } else if ($2 == "MCPT_NOA") { - $2 = "CPT_NOA"; - } else if ($2 == "MLIBCOMPAT") { - $2 = "LIBCOMPAT"; - } else if ($2 == "MOBSOL") { - $2 = "OBSOL"; - } else if ($2 == "MUNIMPL") { - $2 = "UNIMPL"; + if ($3 == "MSTD") { + $3 = "STD"; + } else if ($3 == "MNODEF") { + $3 = "NODEF"; + } else if ($3 == "MNOARGS") { + $3 = "NOARGS"; + } else if ($3 == "MNOPROTO") { + $3 = "NOPROTO"; + } else if ($3 == "MNOIMPL") { + $3 = "NOIMPL"; + } else if ($3 == "MNOSTD") { + $3 = "NOSTD"; + } else if ($3 == "MCOMPAT") { + $3 = "COMPAT"; + } else if ($3 == "MCOMPAT4") { + $3 = "COMPAT4"; + } else if ($3 == "MCPT_NOA") { + $3 = "CPT_NOA"; + } else if ($3 == "MLIBCOMPAT") { + $3 = "LIBCOMPAT"; + } else if ($3 == "MOBSOL") { + $3 = "OBSOL"; + } else if ($3 == "MUNIMPL") { + $3 = "UNIMPL"; } else { mpsafe = ""; } } - $2 == "STD" || $2 == "NODEF" || $2 == "NOARGS" || $2 == "NOPROTO" \ - || $2 == "NOIMPL" || $2 == "NOSTD" { + $3 == "STD" || $3 == "NODEF" || $3 == "NOARGS" || $3 == "NOPROTO" \ + || $3 == "NOIMPL" || $3 == "NOSTD" { parseline() if ((!nosys || funcname != "nosys") && \ (funcname != "lkmnosys") && (funcname != "lkmressys")) { - if (argc != 0 && $2 != "NOARGS" && $2 != "NOPROTO") { + if (argc != 0 && $3 != "NOARGS" && $3 != "NOPROTO") { printf("struct %s {\n", argalias) > sysarg for (i = 1; i <= argc; i++) printf("\tchar %s_l_[PADL_(%s)]; " \ @@ -330,12 +335,12 @@ argname[i], argtype[i]) > sysarg printf("};\n") > sysarg } - else if ($2 != "NOARGS" && $2 != "NOPROTO" && \ - $2 != "NODEF") + else if ($3 != "NOARGS" && $3 != "NOPROTO" && \ + $3 != "NODEF") printf("struct %s {\n\tregister_t dummy;\n};\n", argalias) > sysarg } - if (($2 != "NOPROTO" && $2 != "NODEF" && \ + if (($3 != "NOPROTO" && $3 != "NODEF" && \ (funcname != "nosys" || !nosys)) || \ (funcname == "lkmnosys" && !lkmnosys) || \ funcname == "lkmressys") { @@ -349,10 +354,10 @@ lkmnosys = 1 printf("\t{ %s%s, (sy_call_t *)", mpsafe, argssize) > sysent column = 8 + 2 + length(mpsafe) + length(argssize) + 15 - if ($2 == "NOIMPL") { + if ($3 == "NOIMPL") { printf("%s },", "nosys, AUE_NULL") > sysent column = column + length("nosys") + 3 - } else if ($2 == "NOSTD") { + } else if ($3 == "NOSTD") { printf("%s },", "lkmressys, AUE_NULL") > sysent column = column + length("lkmressys") + 3 } else { @@ -363,7 +368,7 @@ printf("/* %d = %s */\n", syscall, funcalias) > sysent printf("\t\"%s\",\t\t\t/* %d = %s */\n", funcalias, syscall, funcalias) > sysnames - if ($2 != "NODEF") { + if ($3 != "NODEF") { printf("#define\t%s%s\t%d\n", syscallprefix, funcalias, syscall) > syshdr printf(" \\\n\t%s.o", funcalias) > sysmk @@ -371,14 +376,14 @@ syscall++ next } - $2 == "COMPAT" || $2 == "COMPAT4" || $2 == "CPT_NOA" { - if ($2 == "COMPAT" || $2 == "CPT_NOA") { + $3 == "COMPAT" || $3 == "COMPAT4" || $3 == "CPT_NOA" { + if ($3 == "COMPAT" || $3 == "CPT_NOA") { ncompat++ out = syscompat outdcl = syscompatdcl wrap = "compat" prefix = "o" - } else if ($2 == "COMPAT4") { + } else if ($3 == "COMPAT4") { ncompat4++ out = syscompat4 outdcl = syscompat4dcl @@ -386,7 +391,7 @@ prefix = "freebsd4_" } parseline() - if (argc != 0 && $2 != "CPT_NOA") { + if (argc != 0 && $3 != "CPT_NOA") { printf("struct %s {\n", argalias) > out for (i = 1; i <= argc; i++) printf("\tchar %s_l_[PADL_(%s)]; %s %s; " \ @@ -396,7 +401,7 @@ argname[i], argtype[i]) > out printf("};\n") > out } - else if($2 != "CPT_NOA") + else if($3 != "CPT_NOA") printf("struct %s {\n\tregister_t dummy;\n};\n", argalias) > sysarg printf("%s\t%s%s(struct thread *, struct %s *);\n", @@ -413,7 +418,7 @@ syscall++ next } - $2 == "LIBCOMPAT" { + $3 == "LIBCOMPAT" { ncompat++ parseline() printf("%s\to%s();\n", rettype, funcname) > syscompatdcl @@ -430,18 +435,18 @@ syscall++ next } - $2 == "OBSOL" { + $3 == "OBSOL" { printf("\t{ 0, (sy_call_t *)nosys, AUE_NULL },") > sysent align_sysent_comment(34) printf("/* %d = obsolete %s */\n", syscall, comment) > sysent printf("\t\"obs_%s\",\t\t\t/* %d = obsolete %s */\n", - $3, syscall, comment) > sysnames + $4, syscall, comment) > sysnames printf("\t\t\t\t/* %d is obsolete %s */\n", syscall, comment) > syshdr syscall++ next } - $2 == "UNIMPL" { + $3 == "UNIMPL" { printf("\t{ 0, (sy_call_t *)nosys, AUE_NULL },\t\t\t/* %d = %s */\n", syscall, comment) > sysent printf("\t\"#%d\",\t\t\t/* %d = %s */\n", @@ -450,7 +455,7 @@ next } { - printf "%s: line %d: unrecognized keyword %s\n", infile, NR, $2 + printf "%s: line %d: unrecognized keyword %s\n", infile, NR, $3 exit 1 } END { ==== //depot/projects/trustedbsd/audit3/sys/kern/syscalls.master#12 (text+ko) ==== @@ -6,15 +6,15 @@ ; Columns: number [M]type name audit alt{name,tag,rtyp}/comments ; number system call number, must be in order -; type one of [M]STD, [M]OBSOL, [M]UNIMPL, [M]COMPAT, [M]CPT_NOA, -; [M]LIBCOMPAT, [M]NODEF, [M]NOARGS, [M]NOPROTO, [M]NOIMPL, -; [M]NOSTD, [M]COMPAT4 -; name psuedo-prototype of syscall routine ; audit the audit event associated with the system call ; A value of AUE_NULL means no auditing, but it also means that ; there is no audit event for the call at this time. For the ; case where the event exists, but we don't want auditing, the ; event should be #defined to AUE_NULL in audit_kevents.h. +; type one of [M]STD, [M]OBSOL, [M]UNIMPL, [M]COMPAT, [M]CPT_NOA, +; [M]LIBCOMPAT, [M]NODEF, [M]NOARGS, [M]NOPROTO, [M]NOIMPL, +; [M]NOSTD, [M]COMPAT4 +; name psuedo-prototype of syscall routine ; If one of the following alts is different, then all appear: ; altname name of system call if different ; alttag name of args struct tag if different from [o]`name'"_args" @@ -50,661 +50,615 @@ ; redistributions should be placed in the reserved range at the end ; of the current calls. -0 MSTD { int nosys(void); } AUE_NULL syscall nosys_args int -1 MSTD { void sys_exit(int rval); } AUE_EXIT exit sys_exit_args void -2 MSTD { int fork(void); } AUE_FORK -3 MSTD { ssize_t read(int fd, void *buf, size_t nbyte); } AUE_NULL -4 MSTD { ssize_t write(int fd, const void *buf, size_t nbyte); } \ - AUE_NULL -5 MSTD { int open(char *path, int flags, int mode); } AUE_OPEN_RWTC +0 AUE_NULL MSTD { int nosys(void); } syscall nosys_args int +1 AUE_EXIT MSTD { void sys_exit(int rval); } exit sys_exit_args void +2 AUE_FORK MSTD { int fork(void); } +3 AUE_NULL MSTD { ssize_t read(int fd, void *buf, size_t nbyte); } +4 AUE_NULL MSTD { ssize_t write(int fd, const void *buf, size_t nbyte); } +5 AUE_OPEN_RWTC MSTD { int open(char *path, int flags, int mode); } ; XXX should be { int open(const char *path, int flags, ...); } ; but we're not ready for `const' or varargs. ; XXX man page says `mode_t mode'. -6 MSTD { int close(int fd); } AUE_CLOSE -7 MSTD { int wait4(int pid, int *status, int options, \ - struct rusage *rusage); } AUE_NULL wait4 wait_args int -8 MCOMPAT { int creat(char *path, int mode); } AUE_O_CREAT -9 MSTD { int link(char *path, char *link); } AUE_LINK -10 MSTD { int unlink(char *path); } AUE_UNLINK -11 OBSOL execv -12 STD { int chdir(char *path); } AUE_CHDIR -13 STD { int fchdir(int fd); } AUE_FCHDIR -14 STD { int mknod(char *path, int mode, int dev); } AUE_MKNOD -15 STD { int chmod(char *path, int mode); } AUE_CHMOD -16 STD { int chown(char *path, int uid, int gid); } AUE_CHOWN -17 MSTD { int obreak(char *nsize); } AUE_NULL break obreak_args int -18 COMPAT4 { int getfsstat(struct ostatfs *buf, long bufsize, \ - int flags); } AUE_GETFSSTAT -19 COMPAT { long lseek(int fd, long offset, int whence); } AUE_LSEEK -20 MSTD { pid_t getpid(void); } AUE_GETPID -21 STD { int mount(char *type, char *path, int flags, \ - caddr_t data); } AUE_MOUNT +6 AUE_CLOSE MSTD { int close(int fd); } +7 AUE_NULL MSTD { int wait4(int pid, int *status, int options, \ + struct rusage *rusage); } wait4 wait_args int +8 AUE_O_CREAT MCOMPAT { int creat(char *path, int mode); } +9 AUE_LINK MSTD { int link(char *path, char *link); } +10 AUE_UNLINK MSTD { int unlink(char *path); } +11 AUE_NULL OBSOL execv +12 AUE_CHDIR STD { int chdir(char *path); } +13 AUE_FCHDIR STD { int fchdir(int fd); } +14 AUE_MKNOD STD { int mknod(char *path, int mode, int dev); } +15 AUE_CHMOD STD { int chmod(char *path, int mode); } +16 AUE_CHOWN STD { int chown(char *path, int uid, int gid); } +17 AUE_NULL MSTD { int obreak(char *nsize); } break obreak_args int +18 AUE_GETFSSTAT COMPAT4 { int getfsstat(struct ostatfs *buf, long bufsize, \ + int flags); } +19 AUE_LSEEK COMPAT { long lseek(int fd, long offset, int whence); } +20 AUE_GETPID MSTD { pid_t getpid(void); } +21 AUE_MOUNT STD { int mount(char *type, char *path, int flags, \ + caddr_t data); } ; XXX `path' should have type `const char *' but we're not ready for that. -22 STD { int unmount(char *path, int flags); } AUE_UMOUNT -23 MSTD { int setuid(uid_t uid); } AUE_SETUID -24 MSTD { uid_t getuid(void); } AUE_NULL -25 MSTD { uid_t geteuid(void); } AUE_NULL -26 MSTD { int ptrace(int req, pid_t pid, caddr_t addr, \ - int data); } AUE_PTRACE -27 MSTD { int recvmsg(int s, struct msghdr *msg, \ - int flags); } AUE_RECVMSG -28 MSTD { int sendmsg(int s, struct msghdr *msg, \ - int flags); } AUE_SENDMSG -29 MSTD { int recvfrom(int s, caddr_t buf, size_t len, int flags, \ - struct sockaddr * __restrict from, \ - __socklen_t * __restrict fromlenaddr); } AUE_RECVFROM -30 MSTD { int accept(int s, struct sockaddr * __restrict name, \ - __socklen_t * __restrict anamelen); } AUE_ACCEPT -31 MSTD { int getpeername(int fdes, struct sockaddr * __restrict asa, \ - __socklen_t * __restrict alen); } AUE_GETPEERNAME -32 MSTD { int getsockname(int fdes, struct sockaddr * __restrict asa, \ - __socklen_t * __restrict alen); } AUE_GETSOCKNAME -33 STD { int access(char *path, int flags); } AUE_ACCESS -34 STD { int chflags(char *path, int flags); } AUE_CHFLAGS -35 STD { int fchflags(int fd, int flags); } AUE_FCHFLAGS -36 STD { int sync(void); } AUE_SYNC -37 MSTD { int kill(int pid, int signum); } AUE_KILL -38 COMPAT { int stat(char *path, struct ostat *ub); } AUE_STAT -39 MSTD { pid_t getppid(void); } AUE_GETPPID -40 COMPAT { int lstat(char *path, struct ostat *ub); } AUE_LSTAT -41 MSTD { int dup(u_int fd); } AUE_DUP -42 MSTD { int pipe(void); } AUE_PIPE -43 MSTD { gid_t getegid(void); } AUE_GETEGID -44 MSTD { int profil(caddr_t samples, size_t size, size_t offset, \ - u_int scale); } AUE_PROFILE -45 MSTD { int ktrace(const char *fname, int ops, int facs, \ - int pid); } AUE_KTRACE -46 MCOMPAT { int sigaction(int signum, struct osigaction *nsa, \ - struct osigaction *osa); } AUE_SIGACTION -47 MSTD { gid_t getgid(void); } AUE_GETGID -48 MCOMPAT { int sigprocmask(int how, osigset_t mask); } AUE_SIGPROCMASK +22 AUE_UMOUNT STD { int unmount(char *path, int flags); } +23 AUE_SETUID MSTD { int setuid(uid_t uid); } +24 AUE_NULL MSTD { uid_t getuid(void); } +25 AUE_NULL MSTD { uid_t geteuid(void); } +26 AUE_PTRACE MSTD { int ptrace(int req, pid_t pid, caddr_t addr, \ + int data); } +27 AUE_RECVMSG MSTD { int recvmsg(int s, struct msghdr *msg, \ + int flags); } +28 AUE_SENDMSG MSTD { int sendmsg(int s, struct msghdr *msg, \ + int flags); } +29 AUE_RECVFROM MSTD { int recvfrom(int s, caddr_t buf, size_t len, int flags, \ + struct sockaddr * __restrict from, \ + __socklen_t * __restrict fromlenaddr); } +30 AUE_ACCEPT MSTD { int accept(int s, struct sockaddr * __restrict name, \ + __socklen_t * __restrict anamelen); } +31 AUE_GETPEERNAME MSTD { int getpeername(int fdes, struct sockaddr * __restrict asa, \ + __socklen_t * __restrict alen); } +32 AUE_GETSOCKNAME MSTD { int getsockname(int fdes, struct sockaddr * __restrict asa, \ + __socklen_t * __restrict alen); } +33 AUE_ACCESS STD { int access(char *path, int flags); } +34 AUE_CHFLAGS STD { int chflags(char *path, int flags); } +35 AUE_FCHFLAGS STD { int fchflags(int fd, int flags); } +36 AUE_SYNC STD { int sync(void); } +37 AUE_KILL MSTD { int kill(int pid, int signum); } +38 AUE_STAT COMPAT { int stat(char *path, struct ostat *ub); } +39 AUE_GETPPID MSTD { pid_t getppid(void); } +40 AUE_LSTAT COMPAT { int lstat(char *path, struct ostat *ub); } +41 AUE_DUP MSTD { int dup(u_int fd); } +42 AUE_PIPE MSTD { int pipe(void); } +43 AUE_GETEGID MSTD { gid_t getegid(void); } +44 AUE_PROFILE MSTD { int profil(caddr_t samples, size_t size, size_t offset, \ + u_int scale); } +45 AUE_KTRACE MSTD { int ktrace(const char *fname, int ops, int facs, \ + int pid); } +46 AUE_SIGACTION MCOMPAT { int sigaction(int signum, struct osigaction *nsa, \ + struct osigaction *osa); } +47 AUE_GETGID MSTD { gid_t getgid(void); } +48 AUE_SIGPROCMASK MCOMPAT { int sigprocmask(int how, osigset_t mask); } ; XXX note nonstandard (bogus) calling convention - the libc stub passes ; us the mask, not a pointer to it, and we return the old mask as the ; (int) return value. -49 MSTD { int getlogin(char *namebuf, u_int namelen); } AUE_GETLOGIN -50 MSTD { int setlogin(char *namebuf); } AUE_SETLOGIN -51 MSTD { int acct(char *path); } AUE_ACCT -52 MCOMPAT { int sigpending(void); } AUE_SIGPENDING -53 MSTD { int sigaltstack(stack_t *ss, stack_t *oss); } AUE_SIGPENDING -54 MSTD { int ioctl(int fd, u_long com, caddr_t data); } AUE_IOCTL -55 MSTD { int reboot(int opt); } AUE_REBOOT -56 STD { int revoke(char *path); } AUE_REVOKE -57 STD { int symlink(char *path, char *link); } AUE_SYMLINK -58 STD { int readlink(char *path, char *buf, \ - int count); } AUE_READLINK -59 MSTD { int execve(char *fname, char **argv, \ - char **envv); } AUE_EXECVE -60 MSTD { int umask(int newmask); } AUE_UMASK umask umask_args int -61 STD { int chroot(char *path); } AUE_CHROOT -62 MCOMPAT { int fstat(int fd, struct ostat *sb); } AUE_FSTAT -63 MCOMPAT { int getkerninfo(int op, char *where, size_t *size, \ - int arg); } AUE_NULL getkerninfo getkerninfo_args int -64 MCOMPAT { int getpagesize(void); } AUE_O_GETPAGESIZE \ - getpagesize getpagesize_args int -65 MSTD { int msync(void *addr, size_t len, int flags); } AUE_MSYNC -66 MSTD { int vfork(void); } AUE_VFORK -67 OBSOL vread -68 OBSOL vwrite -69 MSTD { int sbrk(int incr); } AUE_SBRK -70 MSTD { int sstk(int incr); } AUE_SSTK -71 MCOMPAT { int mmap(void *addr, int len, int prot, int flags, int fd, \ - long pos); } AUE_MMAP -72 MSTD { int ovadvise(int anom); } AUE_O_VADVISE \ - vadvise ovadvise_args int -73 MSTD { int munmap(void *addr, size_t len); } AUE_MUNMAP -74 MSTD { int mprotect(const void *addr, size_t len, int prot); }\ - AUE_MPROTECT -75 MSTD { int madvise(void *addr, size_t len, int behav); } AUE_MADVISE -76 OBSOL vhangup -77 OBSOL vlimit -78 MSTD { int mincore(const void *addr, size_t len, char *vec); } \ - AUE_MINCORE -79 MSTD { int getgroups(u_int gidsetsize, gid_t *gidset); } \ - AUE_GETGROUPS -80 MSTD { int setgroups(u_int gidsetsize, gid_t *gidset); } \ - AUE_SETGROUPS -81 MSTD { int getpgrp(void); } AUE_GETPGRP -82 MSTD { int setpgid(int pid, int pgid); } AUE_SETPGRP -83 MSTD { int setitimer(u_int which, struct itimerval *itv, \ - struct itimerval *oitv); } AUE_SETITIMER -84 MCOMPAT { int wait(void); } AUE_O_WAIT -85 MSTD { int swapon(char *name); } AUE_SWAPON -86 MSTD { int getitimer(u_int which, struct itimerval *itv); } \ - AUE_GETITIMER -87 MCOMPAT { int gethostname(char *hostname, u_int len); } \ - AUE_O_GETHOSTNAME gethostname gethostname_args int -88 MCOMPAT { int sethostname(char *hostname, u_int len); } \ - AUE_O_SETHOSTNAME sethostname sethostname_args int -89 MSTD { int getdtablesize(void); } AUE_GETDTABLESIZE -90 MSTD { int dup2(u_int from, u_int to); } AUE_DUP2 -91 UNIMPL getdopt -92 MSTD { int fcntl(int fd, int cmd, long arg); } AUE_FCNTL +49 AUE_GETLOGIN MSTD { int getlogin(char *namebuf, u_int namelen); } +50 AUE_SETLOGIN MSTD { int setlogin(char *namebuf); } +51 AUE_ACCT MSTD { int acct(char *path); } +52 AUE_SIGPENDING MCOMPAT { int sigpending(void); } +53 AUE_SIGPENDING MSTD { int sigaltstack(stack_t *ss, stack_t *oss); } +54 AUE_IOCTL MSTD { int ioctl(int fd, u_long com, caddr_t data); } +55 AUE_REBOOT MSTD { int reboot(int opt); } +56 AUE_REVOKE STD { int revoke(char *path); } +57 AUE_SYMLINK STD { int symlink(char *path, char *link); } +58 AUE_READLINK STD { int readlink(char *path, char *buf, \ + int count); } +59 AUE_EXECVE MSTD { int execve(char *fname, char **argv, \ + char **envv); } +60 AUE_UMASK MSTD { int umask(int newmask); } umask umask_args int +61 AUE_CHROOT STD { int chroot(char *path); } +62 AUE_FSTAT MCOMPAT { int fstat(int fd, struct ostat *sb); } +63 AUE_NULL MCOMPAT { int getkerninfo(int op, char *where, size_t *size, \ + int arg); } getkerninfo getkerninfo_args int +64 AUE_O_GETPAGESIZE MCOMPAT { int getpagesize(void); } \ + getpagesize getpagesize_args int +65 AUE_MSYNC MSTD { int msync(void *addr, size_t len, int flags); } +66 AUE_VFORK MSTD { int vfork(void); } +67 AUE_NULL OBSOL vread +68 AUE_NULL OBSOL vwrite +69 AUE_SBRK MSTD { int sbrk(int incr); } +70 AUE_SSTK MSTD { int sstk(int incr); } +71 AUE_MMAP MCOMPAT { int mmap(void *addr, int len, int prot, int flags, int fd, \ + long pos); } +72 AUE_O_VADVISE MSTD { int ovadvise(int anom); } vadvise ovadvise_args int +73 AUE_MUNMAP MSTD { int munmap(void *addr, size_t len); } +74 AUE_MPROTECT MSTD { int mprotect(const void *addr, size_t len, int prot); } +75 AUE_MADVISE MSTD { int madvise(void *addr, size_t len, int behav); } +76 AUE_NULL OBSOL vhangup +77 AUE_NULL OBSOL vlimit +78 AUE_MINCORE MSTD { int mincore(const void *addr, size_t len, char *vec); } +79 AUE_GETGROUPS MSTD { int getgroups(u_int gidsetsize, gid_t *gidset); } +80 AUE_SETGROUPS MSTD { int setgroups(u_int gidsetsize, gid_t *gidset); } +81 AUE_GETPGRP MSTD { int getpgrp(void); } +82 AUE_SETPGRP MSTD { int setpgid(int pid, int pgid); } +83 AUE_SETITIMER MSTD { int setitimer(u_int which, struct itimerval *itv, \ + struct itimerval *oitv); } +84 AUE_O_WAIT MCOMPAT { int wait(void); } +85 AUE_SWAPON MSTD { int swapon(char *name); } +86 AUE_GETITIMER MSTD { int getitimer(u_int which, struct itimerval *itv); } +87 AUE_O_GETHOSTNAME MCOMPAT { int gethostname(char *hostname, u_int len); } \ + gethostname gethostname_args int +88 AUE_O_SETHOSTNAME MCOMPAT { int sethostname(char *hostname, u_int len); } \ + sethostname sethostname_args int +89 AUE_GETDTABLESIZE MSTD { int getdtablesize(void); } +90 AUE_DUP2 MSTD { int dup2(u_int from, u_int to); } +91 AUE_NULL UNIMPL getdopt +92 AUE_FCNTL MSTD { int fcntl(int fd, int cmd, long arg); } ; XXX should be { int fcntl(int fd, int cmd, ...); } ; but we're not ready for varargs. -93 MSTD { int select(int nd, fd_set *in, fd_set *ou, \ - fd_set *ex, struct timeval *tv); } AUE_SELECT -94 UNIMPL setdopt -95 STD { int fsync(int fd); } AUE_FSYNC -96 MSTD { int setpriority(int which, int who, int prio); } \ - AUE_SETPRIORITY -97 MSTD { int socket(int domain, int type, int protocol); } AUE_SOCKET -98 MSTD { int connect(int s, caddr_t name, int namelen); } AUE_CONNECT -99 MCPT_NOA { int accept(int s, caddr_t name, int *anamelen); } \ - AUE_ACCEPT accept accept_args int -100 MSTD { int getpriority(int which, int who); } AUE_GETPRIORITY -101 MCOMPAT { int send(int s, caddr_t buf, int len, int flags); } AUE_O_SEND -102 MCOMPAT { int recv(int s, caddr_t buf, int len, int flags); } AUE_O_RECV -103 MCOMPAT { int sigreturn(struct osigcontext *sigcntxp); } AUE_SIGRETURN -104 MSTD { int bind(int s, caddr_t name, int namelen); } AUE_BIND -105 MSTD { int setsockopt(int s, int level, int name, caddr_t val, \ - int valsize); } AUE_SETSOCKOPT -106 MSTD { int listen(int s, int backlog); } AUE_LISTEN -107 OBSOL vtimes -108 MCOMPAT { int sigvec(int signum, struct sigvec *nsv, \ - struct sigvec *osv); } AUE_O_SIGVEC -109 MCOMPAT { int sigblock(int mask); } AUE_O_SIGBLOCK -110 MCOMPAT { int sigsetmask(int mask); } AUE_O_SIGSETMASK -111 MCOMPAT { int sigsuspend(osigset_t mask); } AUE_SIGSUSPEND +93 AUE_SELECT MSTD { int select(int nd, fd_set *in, fd_set *ou, \ + fd_set *ex, struct timeval *tv); } +94 AUE_NULL UNIMPL setdopt +95 AUE_FSYNC STD { int fsync(int fd); } +96 AUE_SETPRIORITY MSTD { int setpriority(int which, int who, int prio); } +97 AUE_SOCKET MSTD { int socket(int domain, int type, int protocol); } +98 AUE_CONNECT MSTD { int connect(int s, caddr_t name, int namelen); } +99 AUE_ACCEPT MCPT_NOA { int accept(int s, caddr_t name, int *anamelen); } \ + accept accept_args int +100 AUE_GETPRIORITY MSTD { int getpriority(int which, int who); } +101 AUE_O_SEND MCOMPAT { int send(int s, caddr_t buf, int len, int flags); } +102 AUE_O_RECV MCOMPAT { int recv(int s, caddr_t buf, int len, int flags); } +103 AUE_SIGRETURN MCOMPAT { int sigreturn(struct osigcontext *sigcntxp); } +104 AUE_BIND MSTD { int bind(int s, caddr_t name, int namelen); } +105 AUE_SETSOCKOPT MSTD { int setsockopt(int s, int level, int name, caddr_t val, \ + int valsize); } +106 AUE_LISTEN MSTD { int listen(int s, int backlog); } +107 AUE_NULL OBSOL vtimes +108 AUE_O_SIGVEC MCOMPAT { int sigvec(int signum, struct sigvec *nsv, \ + struct sigvec *osv); } +109 AUE_O_SIGBLOCK MCOMPAT { int sigblock(int mask); } +110 AUE_O_SIGSETMASK MCOMPAT { int sigsetmask(int mask); } +111 AUE_SIGSUSPEND MCOMPAT { int sigsuspend(osigset_t mask); } ; XXX note nonstandard (bogus) calling convention - the libc stub passes ; us the mask, not a pointer to it. -112 MCOMPAT { int sigstack(struct sigstack *nss, struct sigstack *oss); } \ - AUE_O_SIGSTACK -113 MCOMPAT { int recvmsg(int s, struct omsghdr *msg, int flags); } \ - AUE_O_RECVMSG -114 MCOMPAT { int sendmsg(int s, caddr_t msg, int flags); } AUE_O_SENDMSG -115 OBSOL vtrace -116 MSTD { int gettimeofday(struct timeval *tp, \ - struct timezone *tzp); } AUE_GETTIMEOFDAY -117 MSTD { int getrusage(int who, struct rusage *rusage); } \ - AUE_GETRUSAGE -118 MSTD { int getsockopt(int s, int level, int name, caddr_t val, \ - int *avalsize); } AUE_GTSOCKOPT -119 UNIMPL resuba (BSD/OS 2.x) -120 MSTD { int readv(int fd, struct iovec *iovp, u_int iovcnt); } \ - AUE_READV -121 MSTD { int writev(int fd, struct iovec *iovp, u_int iovcnt); } \ - AUE_WRITEV -122 MSTD { int settimeofday(struct timeval *tv, \ - struct timezone *tzp); } AUE_SETTIMEOFDAY -123 STD { int fchown(int fd, int uid, int gid); } AUE_FCHOWN -124 STD { int fchmod(int fd, int mode); } AUE_FCHMOD -125 MCPT_NOA { int recvfrom(int s, caddr_t buf, size_t len, int flags, \ - caddr_t from, int *fromlenaddr); } AUE_RECVFROM \ - recvfrom recvfrom_args int -126 MSTD { int setreuid(int ruid, int euid); } AUE_O_SETREUID -127 MSTD { int setregid(int rgid, int egid); } AUE_O_SETREGID -128 STD { int rename(char *from, char *to); } AUE_RENAME -129 COMPAT { int truncate(char *path, long length); } AUE_O_TRUNCATE -130 COMPAT { int ftruncate(int fd, long length); } AUE_O_FTRUNCATE -131 MSTD { int flock(int fd, int how); } AUE_FLOCK -132 STD { int mkfifo(char *path, int mode); } AUE_MKFIFO -133 MSTD { int sendto(int s, caddr_t buf, size_t len, int flags, \ - caddr_t to, int tolen); } AUE_SENDTO -134 MSTD { int shutdown(int s, int how); } AUE_SHUTDOWN -135 MSTD { int socketpair(int domain, int type, int protocol, \ - int *rsv); } AUE_SOCKETPAIR -136 STD { int mkdir(char *path, int mode); } AUE_MKDIR -137 STD { int rmdir(char *path); } AUE_RMDIR -138 STD { int utimes(char *path, struct timeval *tptr); } AUE_UTIMES -139 OBSOL 4.2 sigreturn -140 MSTD { int adjtime(struct timeval *delta, \ - struct timeval *olddelta); } AUE_ADJTIME -141 MCOMPAT { int getpeername(int fdes, caddr_t asa, int *alen); } \ - AUE_O_GETPEERNAME -142 MCOMPAT { long gethostid(void); } AUE_O_GETHOSTID -143 MCOMPAT { int sethostid(long hostid); } AUE_O_SETHOSTID -144 MCOMPAT { int getrlimit(u_int which, struct orlimit *rlp); } \ - AUE_O_GETRLIMIT -145 MCOMPAT { int setrlimit(u_int which, struct orlimit *rlp); } \ - AUE_O_SETRLIMIT -146 MCOMPAT { int killpg(int pgid, int signum); } AUE_O_KILLPG -147 MSTD { int setsid(void); } AUE_SETSID -148 STD { int quotactl(char *path, int cmd, int uid, caddr_t arg); } \ - AUE_QUOTACTL -149 MCOMPAT { int quota(void); } AUE_O_QUOTA -150 MCPT_NOA { int getsockname(int fdec, caddr_t asa, int *alen); }\ - AUE_GETSOCKNAME getsockname getsockname_args int +112 AUE_O_SIGSTACK MCOMPAT { int sigstack(struct sigstack *nss, struct sigstack *oss); } +113 AUE_O_RECVMSG MCOMPAT { int recvmsg(int s, struct omsghdr *msg, int flags); } +114 AUE_O_SENDMSG MCOMPAT { int sendmsg(int s, caddr_t msg, int flags); } +115 AUE_NULL OBSOL vtrace +116 AUE_GETTIMEOFDAY MSTD { int gettimeofday(struct timeval *tp, \ + struct timezone *tzp); } +117 AUE_GETRUSAGE MSTD { int getrusage(int who, struct rusage *rusage); } +118 AUE_GTSOCKOPT MSTD { int getsockopt(int s, int level, int name, caddr_t val, \ + int *avalsize); } +119 AUE_NULL UNIMPL resuba (BSD/OS 2.x) +120 AUE_READV MSTD { int readv(int fd, struct iovec *iovp, u_int iovcnt); } +121 AUE_WRITEV MSTD { int writev(int fd, struct iovec *iovp, u_int iovcnt); } +122 AUE_SETTIMEOFDAY MSTD { int settimeofday(struct timeval *tv, \ + struct timezone *tzp); } +123 AUE_FCHOWN STD { int fchown(int fd, int uid, int gid); } +124 AUE_FCHMOD STD { int fchmod(int fd, int mode); } +125 AUE_RECVFROM MCPT_NOA { int recvfrom(int s, caddr_t buf, size_t len, int flags, \ + caddr_t from, int *fromlenaddr); } recvfrom recvfrom_args int +126 AUE_O_SETREUID MSTD { int setreuid(int ruid, int euid); } +127 AUE_O_SETREGID MSTD { int setregid(int rgid, int egid); } +128 AUE_RENAME STD { int rename(char *from, char *to); } +129 AUE_O_TRUNCATE COMPAT { int truncate(char *path, long length); } +130 AUE_O_FTRUNCATE COMPAT { int ftruncate(int fd, long length); } +131 AUE_FLOCK MSTD { int flock(int fd, int how); } +132 AUE_MKFIFO STD { int mkfifo(char *path, int mode); } +133 AUE_SENDTO MSTD { int sendto(int s, caddr_t buf, size_t len, int flags, \ + caddr_t to, int tolen); } +134 AUE_SHUTDOWN MSTD { int shutdown(int s, int how); } +135 AUE_SOCKETPAIR MSTD { int socketpair(int domain, int type, int protocol, \ + int *rsv); } +136 AUE_MKDIR STD { int mkdir(char *path, int mode); } +137 AUE_RMDIR STD { int rmdir(char *path); } +138 AUE_UTIMES STD { int utimes(char *path, struct timeval *tptr); } +139 AUE_NULL OBSOL 4.2 sigreturn +140 AUE_ADJTIME MSTD { int adjtime(struct timeval *delta, \ + struct timeval *olddelta); } +141 AUE_O_GETPEERNAME MCOMPAT { int getpeername(int fdes, caddr_t asa, int *alen); } +142 AUE_O_GETHOSTID MCOMPAT { long gethostid(void); } +143 AUE_O_SETHOSTID MCOMPAT { int sethostid(long hostid); } +144 AUE_O_GETRLIMIT MCOMPAT { int getrlimit(u_int which, struct orlimit *rlp); } +145 AUE_O_SETRLIMIT MCOMPAT { int setrlimit(u_int which, struct orlimit *rlp); } +146 AUE_O_KILLPG MCOMPAT { int killpg(int pgid, int signum); } +147 AUE_SETSID MSTD { int setsid(void); } +148 AUE_QUOTACTL STD { int quotactl(char *path, int cmd, int uid, caddr_t arg); } +149 AUE_O_QUOTA MCOMPAT { int quota(void); } +150 AUE_GETSOCKNAME MCPT_NOA { int getsockname(int fdec, caddr_t asa, int *alen); }\ + getsockname getsockname_args int ; Syscalls 151-180 inclusive are reserved for vendor-specific ; system calls. (This includes various calls added for compatibity ; with other Unix variants.) ; Some of these calls are now supported by BSD... -151 UNIMPL sem_lock (BSD/OS 2.x) -152 UNIMPL sem_wakeup (BSD/OS 2.x) -153 UNIMPL asyncdaemon (BSD/OS 2.x) -154 UNIMPL nosys +151 AUE_NONE UNIMPL sem_lock (BSD/OS 2.x) +152 AUE_NONE UNIMPL sem_wakeup (BSD/OS 2.x) +153 AUE_NONE UNIMPL asyncdaemon (BSD/OS 2.x) +154 AUE_NONE UNIMPL nosys ; 155 is initialized by the NFS code, if present. -155 MNOIMPL { int nfssvc(int flag, caddr_t argp); } AUE_NFSSVC -156 COMPAT { int getdirentries(int fd, char *buf, u_int count, \ - long *basep); } AUE_O_GETDIRENTRIES -157 COMPAT4 { int statfs(char *path, struct ostatfs *buf); } AUE_STATFS -158 COMPAT4 { int fstatfs(int fd, struct ostatfs *buf); } AUE_FSTATFS -159 UNIMPL nosys -160 STD { int lgetfh(char *fname, struct fhandle *fhp); } AUE_NULL -161 STD { int getfh(char *fname, struct fhandle *fhp); } AUE_GETFH -162 MSTD { int getdomainname(char *domainname, int len); } \ - AUE_O_GETDOMAINNAME -163 MSTD { int setdomainname(char *domainname, int len); } \ - AUE_O_SETDOMAINNAME -164 MSTD { int uname(struct utsname *name); } AUE_NULL -165 MSTD { int sysarch(int op, char *parms); } AUE_NULL -166 MSTD { int rtprio(int function, pid_t pid, struct rtprio *rtp); } \ - AUE_NULL -167 UNIMPL nosys -168 UNIMPL nosys +155 AUE_NFSSVC MNOIMPL { int nfssvc(int flag, caddr_t argp); } +156 AUE_O_GETDIRENTRIES COMPAT { int getdirentries(int fd, char *buf, u_int count, \ + long *basep); } +157 AUE_STATFS COMPAT4 { int statfs(char *path, struct ostatfs *buf); } +158 AUE_FSTATFS COMPAT4 { int fstatfs(int fd, struct ostatfs *buf); } +159 AUE_NULL UNIMPL nosys +160 AUE_NULL STD { int lgetfh(char *fname, struct fhandle *fhp); } +161 AUE_GETFH STD { int getfh(char *fname, struct fhandle *fhp); } +162 AUE_O_GETDOMAINNAME MSTD { int getdomainname(char *domainname, int len); } +163 AUE_O_SETDOMAINNAME MSTD { int setdomainname(char *domainname, int len); } +164 AUE_NULL MSTD { int uname(struct utsname *name); } +165 AUE_NULL MSTD { int sysarch(int op, char *parms); } +166 AUE_NULL MSTD { int rtprio(int function, pid_t pid, struct rtprio *rtp); } +167 AUE_NULL UNIMPL nosys +168 AUE_NULL UNIMPL nosys ; 169 is initialized by the SYSVSEM code if present or loaded -169 MNOSTD { int semsys(int which, int a2, int a3, int a4, int a5); } \ - AUE_SEMSYS +169 AUE_SEMSYS MNOSTD { int semsys(int which, int a2, int a3, int a4, int a5); } ; 169 is initialized by the SYSVMSG code if present or loaded ; XXX should be { int semsys(int which, ...); } -170 MNOSTD { int msgsys(int which, int a2, int a3, int a4, int a5, \ - int a6); } AUE_MSGSYS +170 AUE_MSGSYS MNOSTD { int msgsys(int which, int a2, int a3, int a4, int a5, \ + int a6); } ; 169 is initialized by the SYSVSHM code if present or loaded ; XXX should be { int msgsys(int which, ...); } -171 MNOSTD { int shmsys(int which, int a2, int a3, int a4); } AUE_SHMSYS +171 AUE_SHMSYS MNOSTD { int shmsys(int which, int a2, int a3, int a4); } ; XXX should be { int shmsys(int which, ...); } -172 UNIMPL nosys -173 MSTD { ssize_t pread(int fd, void *buf, size_t nbyte, \ - int pad, off_t offset); } AUE_PREAD -174 MSTD { ssize_t pwrite(int fd, const void *buf, \ - size_t nbyte, int pad, off_t offset); } AUE_PWRITE -175 UNIMPL nosys -176 MSTD { int ntp_adjtime(struct timex *tp); } AUE_ADJTIME -177 UNIMPL sfork (BSD/OS 2.x) -178 UNIMPL getdescriptor (BSD/OS 2.x) -179 UNIMPL setdescriptor (BSD/OS 2.x) -180 UNIMPL nosys +172 AUE_NULL UNIMPL nosys +173 AUE_PREAD MSTD { ssize_t pread(int fd, void *buf, size_t nbyte, \ + int pad, off_t offset); } +174 AUE_PWRITE MSTD { ssize_t pwrite(int fd, const void *buf, \ + size_t nbyte, int pad, off_t offset); } +175 AUE_NULL UNIMPL nosys +176 AUE_ADJTIME MSTD { int ntp_adjtime(struct timex *tp); } +177 AUE_NULL UNIMPL sfork (BSD/OS 2.x) +178 AUE_NULL UNIMPL getdescriptor (BSD/OS 2.x) +179 AUE_NULL UNIMPL setdescriptor (BSD/OS 2.x) +180 AUE_NULL UNIMPL nosys ; Syscalls 181-199 are used by/reserved for BSD -181 MSTD { int setgid(gid_t gid); } AUE_SETGID -182 MSTD { int setegid(gid_t egid); } AUE_SETEGID -183 MSTD { int seteuid(uid_t euid); } AUE_SETEUID -184 UNIMPL lfs_bmapv -185 UNIMPL lfs_markv -186 UNIMPL lfs_segclean -187 UNIMPL lfs_segwait -188 STD { int stat(char *path, struct stat *ub); } AUE_STAT -189 MSTD { int fstat(int fd, struct stat *sb); } AUE_FSTAT -190 STD { int lstat(char *path, struct stat *ub); } AUE_LSTAT -191 STD { int pathconf(char *path, int name); } AUE_PATHCONF -192 MSTD { int fpathconf(int fd, int name); } AUE_FPATHCONF -193 UNIMPL nosys -194 MSTD { int getrlimit(u_int which, struct rlimit *rlp); } \ - AUE_GETRLIMIT getrlimit __getrlimit_args int -195 MSTD { int setrlimit(u_int which, struct rlimit *rlp); } \ - AUE_SETRLIMIT setrlimit __setrlimit_args int -196 STD { int getdirentries(int fd, char *buf, u_int count, \ - long *basep); } AUE_GETDIRENTRIES -197 MSTD { caddr_t mmap(caddr_t addr, size_t len, int prot, \ - int flags, int fd, int pad, off_t pos); } AUE_MMAP -198 STD { int nosys(void); } AUE_NULL __syscall __syscall_args int -199 STD { off_t lseek(int fd, int pad, off_t offset, int whence); } \ - AUE_LSEEK -200 STD { int truncate(char *path, int pad, off_t length); } \ - AUE_TRUNCATE -201 STD { int ftruncate(int fd, int pad, off_t length); } \ - AUE_FTRUNCATE -202 MSTD { int __sysctl(int *name, u_int namelen, void *old, \ +181 AUE_SETGID MSTD { int setgid(gid_t gid); } +182 AUE_SETEGID MSTD { int setegid(gid_t egid); } +183 AUE_SETEUID MSTD { int seteuid(uid_t euid); } +184 AUE_NULL UNIMPL lfs_bmapv +185 AUE_NULL UNIMPL lfs_markv +186 AUE_NULL UNIMPL lfs_segclean +187 AUE_NULL UNIMPL lfs_segwait +188 AUE_STAT STD { int stat(char *path, struct stat *ub); } +189 AUE_FSTAT MSTD { int fstat(int fd, struct stat *sb); } +190 AUE_LSTAT STD { int lstat(char *path, struct stat *ub); } +191 AUE_PATHCONF STD { int pathconf(char *path, int name); } +192 AUE_FPATHCONF MSTD { int fpathconf(int fd, int name); } +193 AUE_NULL UNIMPL nosys +194 AUE_GETRLIMIT MSTD { int getrlimit(u_int which, struct rlimit *rlp); } \ + getrlimit __getrlimit_args int +195 AUE_SETRLIMIT MSTD { int setrlimit(u_int which, struct rlimit *rlp); } \ + setrlimit __setrlimit_args int +196 AUE_GETDIRENTRIES STD { int getdirentries(int fd, char *buf, u_int count, \ + long *basep); } +197 AUE_MMAP MSTD { caddr_t mmap(caddr_t addr, size_t len, int prot, \ + int flags, int fd, int pad, off_t pos); } +198 AUE_NULL STD { int nosys(void); } __syscall __syscall_args int +199 AUE_LSEEK STD { off_t lseek(int fd, int pad, off_t offset, int whence); } +200 AUE_TRUNCATE STD { int truncate(char *path, int pad, off_t length); } +201 AUE_FTRUNCATE STD { int ftruncate(int fd, int pad, off_t length); } +202 AUE_SYSCTL MSTD { int __sysctl(int *name, u_int namelen, void *old, \ size_t *oldlenp, void *new, size_t newlen); } \ - AUE_SYSCTL __sysctl sysctl_args int -203 MSTD { int mlock(const void *addr, size_t len); } AUE_MLOCK -204 MSTD { int munlock(const void *addr, size_t len); } AUE_MUNLOCK -205 STD { int undelete(char *path); } AUE_UNDELETE -206 STD { int futimes(int fd, struct timeval *tptr); } AUE_FUTIMES -207 MSTD { int getpgid(pid_t pid); } AUE_GETPGID -208 UNIMPL newreboot (NetBSD) -209 MSTD { int poll(struct pollfd *fds, u_int nfds, int timeout); } \ - AUE_POLL + __sysctl sysctl_args int +203 AUE_MLOCK MSTD { int mlock(const void *addr, size_t len); } +204 AUE_MUNLOCK MSTD { int munlock(const void *addr, size_t len); } +205 AUE_UNDELETE STD { int undelete(char *path); } +206 AUE_FUTIMES STD { int futimes(int fd, struct timeval *tptr); } +207 AUE_GETPGID MSTD { int getpgid(pid_t pid); } +208 AUE_NULL UNIMPL newreboot (NetBSD) +209 AUE_POLL MSTD { int poll(struct pollfd *fds, u_int nfds, int timeout); } ; ; The following are reserved for loadable syscalls ; -210 NODEF lkmnosys lkmnosys nosys_args int -211 NODEF lkmnosys lkmnosys nosys_args int -212 NODEF lkmnosys lkmnosys nosys_args int -213 NODEF lkmnosys lkmnosys nosys_args int -214 NODEF lkmnosys lkmnosys nosys_args int -215 NODEF lkmnosys lkmnosys nosys_args int -216 NODEF lkmnosys lkmnosys nosys_args int -217 NODEF lkmnosys lkmnosys nosys_args int -218 NODEF lkmnosys lkmnosys nosys_args int -219 NODEF lkmnosys lkmnosys nosys_args int +210 AUE_NULL NODEF lkmnosys lkmnosys nosys_args int +211 AUE_NULL NODEF lkmnosys lkmnosys nosys_args int +212 AUE_NULL NODEF lkmnosys lkmnosys nosys_args int +213 AUE_NULL NODEF lkmnosys lkmnosys nosys_args int +214 AUE_NULL NODEF lkmnosys lkmnosys nosys_args int +215 AUE_NULL NODEF lkmnosys lkmnosys nosys_args int +216 AUE_NULL NODEF lkmnosys lkmnosys nosys_args int +217 AUE_NULL NODEF lkmnosys lkmnosys nosys_args int +218 AUE_NULL NODEF lkmnosys lkmnosys nosys_args int +219 AUE_NULL NODEF lkmnosys lkmnosys nosys_args int ; ; The following were introduced with NetBSD/4.4Lite-2 ; They are initialized by thier respective modules/sysinits -220 MNOSTD { int __semctl(int semid, int semnum, int cmd, \ - union semun *arg); } AUE_SEMCTL -221 MNOSTD { int semget(key_t key, int nsems, int semflg); } \ - AUE_SEMGET -222 MNOSTD { int semop(int semid, struct sembuf *sops, size_t nsops); } \ - AUE_SEMOP -223 UNIMPL semconfig -224 MNOSTD { int msgctl(int msqid, int cmd, struct msqid_ds *buf); } \ - AUE_MSGCTL -225 MNOSTD { int msgget(key_t key, int msgflg); } AUE_MSGGET -226 MNOSTD { int msgsnd(int msqid, const void *msgp, size_t msgsz, \ - int msgflg); } AUE_MSGSND -227 MNOSTD { int msgrcv(int msqid, void *msgp, size_t msgsz, \ - long msgtyp, int msgflg); } AUE_MSGRCV -228 MNOSTD { int shmat(int shmid, const void *shmaddr, int shmflg); } \ - AUE_SHMAT -229 MNOSTD { int shmctl(int shmid, int cmd, struct shmid_ds *buf); } \ - AUE_SHMCTL -230 MNOSTD { int shmdt(const void *shmaddr); } AUE_SHMDT -231 MNOSTD { int shmget(key_t key, size_t size, int shmflg); } AUE_SHMGET +220 AUE_SEMCTL MNOSTD { int __semctl(int semid, int semnum, int cmd, \ + union semun *arg); } +221 AUE_SEMGET MNOSTD { int semget(key_t key, int nsems, int semflg); } +222 AUE_SEMOP MNOSTD { int semop(int semid, struct sembuf *sops, size_t nsops); } +223 AUE_NULL UNIMPL semconfig +224 AUE_MSGCTL MNOSTD { int msgctl(int msqid, int cmd, struct msqid_ds *buf); } +225 AUE_MSGGET MNOSTD { int msgget(key_t key, int msgflg); } +226 AUE_MSGSND MNOSTD { int msgsnd(int msqid, const void *msgp, size_t msgsz, \ + int msgflg); } +227 AUE_MSGRCV MNOSTD { int msgrcv(int msqid, void *msgp, size_t msgsz, \ + long msgtyp, int msgflg); } +228 AUE_SHMAT MNOSTD { int shmat(int shmid, const void *shmaddr, int shmflg); } +229 AUE_SHMCTL MNOSTD { int shmctl(int shmid, int cmd, struct shmid_ds *buf); } +230 AUE_SHMDT MNOSTD { int shmdt(const void *shmaddr); } +231 AUE_SHMGET MNOSTD { int shmget(key_t key, size_t size, int shmflg); } -232 MSTD { int clock_gettime(clockid_t clock_id, \ - struct timespec *tp); } AUE_NULL -233 MSTD { int clock_settime(clockid_t clock_id, \ - const struct timespec *tp); } AUE_NULL -234 MSTD { int clock_getres(clockid_t clock_id, \ - struct timespec *tp); } AUE_NULL -235 UNIMPL timer_create -236 UNIMPL timer_delete -237 UNIMPL timer_settime -238 UNIMPL timer_gettime -239 UNIMPL timer_getoverrun -240 MSTD { int nanosleep(const struct timespec *rqtp, \ - struct timespec *rmtp); } AUE_NULL -241 UNIMPL nosys -242 UNIMPL nosys -243 UNIMPL nosys -244 UNIMPL nosys -245 UNIMPL nosys -246 UNIMPL nosys -247 UNIMPL nosys -248 UNIMPL nosys -249 UNIMPL nosys +232 AUE_NULL MSTD { int clock_gettime(clockid_t clock_id, \ + struct timespec *tp); } +233 AUE_NULL MSTD { int clock_settime(clockid_t clock_id, \ + const struct timespec *tp); } +234 AUE_NULL MSTD { int clock_getres(clockid_t clock_id, \ + struct timespec *tp); } +235 AUE_NULL UNIMPL timer_create +236 AUE_NULL UNIMPL timer_delete +237 AUE_NULL UNIMPL timer_settime +238 AUE_NULL UNIMPL timer_gettime +239 AUE_NULL UNIMPL timer_getoverrun +240 AUE_NULL MSTD { int nanosleep(const struct timespec *rqtp, \ + struct timespec *rmtp); } +241 AUE_NULL UNIMPL nosys +242 AUE_NULL UNIMPL nosys +243 AUE_NULL UNIMPL nosys +244 AUE_NULL UNIMPL nosys +245 AUE_NULL UNIMPL nosys +246 AUE_NULL UNIMPL nosys +247 AUE_NULL UNIMPL nosys +248 AUE_NULL UNIMPL nosys +249 AUE_NULL UNIMPL nosys ; syscall numbers initially used in OpenBSD -250 MSTD { int minherit(void *addr, size_t len, int inherit); } \ - AUE_MINHERIT -251 MSTD { int rfork(int flags); } AUE_RFORK -252 MSTD { int openbsd_poll(struct pollfd *fds, u_int nfds, \ - int timeout); } AUE_NULL -253 MSTD { int issetugid(void); } AUE_ISSETUGID -254 STD { int lchown(char *path, int uid, int gid); } AUE_LCHOWN -255 UNIMPL nosys -256 UNIMPL nosys -257 UNIMPL nosys -258 UNIMPL nosys -259 UNIMPL nosys -260 UNIMPL nosys -261 UNIMPL nosys -262 UNIMPL nosys -263 UNIMPL nosys -264 UNIMPL nosys -265 UNIMPL nosys -266 UNIMPL nosys -267 UNIMPL nosys -268 UNIMPL nosys -269 UNIMPL nosys -270 UNIMPL nosys -271 UNIMPL nosys -272 STD { int getdents(int fd, char *buf, size_t count); } \ - AUE_O_GETDENTS -273 UNIMPL nosys -274 STD { int lchmod(char *path, mode_t mode); } AUE_LCHMOD -275 NOPROTO { int lchown(char *path, uid_t uid, gid_t gid); } \ - AUE_LCHOWN netbsd_lchown lchown_args int -276 STD { int lutimes(char *path, struct timeval *tptr); } AUE_LUTIMES -277 MNOPROTO { int msync(void *addr, size_t len, int flags); } \ - AUE_MSYNC netbsd_msync msync_args int -278 STD { int nstat(char *path, struct nstat *ub); } AUE_NULL -279 MSTD { int nfstat(int fd, struct nstat *sb); } AUE_NULL -280 STD { int nlstat(char *path, struct nstat *ub); } AUE_NULL -281 UNIMPL nosys -282 UNIMPL nosys >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat May 28 22:18:23 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5579C16A420; Sat, 28 May 2005 22:18:23 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 28F7316A41C for ; Sat, 28 May 2005 22:18:23 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 01A1343D1F for ; Sat, 28 May 2005 22:18:23 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4SMIMht031422 for ; Sat, 28 May 2005 22:18:22 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4SMIMuu031419 for perforce@freebsd.org; Sat, 28 May 2005 22:18:22 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 28 May 2005 22:18:22 GMT Message-Id: <200505282218.j4SMIMuu031419@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 77643 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 May 2005 22:18:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=77643 Change 77643 by rwatson@rwatson_paprika on 2005/05/28 22:18:13 Correct spelling of NULL. Affected files ... .. //depot/projects/trustedbsd/audit3/sys/kern/syscalls.master#13 edit Differences ... ==== //depot/projects/trustedbsd/audit3/sys/kern/syscalls.master#13 (text+ko) ==== @@ -592,9 +592,9 @@ 404 AUE_NULL MNOSTD { int ksem_init(semid_t *idp, unsigned int value); } 405 AUE_NULL MNOSTD { int ksem_open(semid_t *idp, const char *name, \ int oflag, mode_t mode, unsigned int value); } -406 AUE_NUNLL MNOSTD { int ksem_unlink(const char *name); } -407 AUE_NUNLL MNOSTD { int ksem_getvalue(semid_t id, int *val); } -408 AUE_NUNLL MNOSTD { int ksem_destroy(semid_t id); } +406 AUE_NULL MNOSTD { int ksem_unlink(const char *name); } +407 AUE_NULL MNOSTD { int ksem_getvalue(semid_t id, int *val); } +408 AUE_NULL MNOSTD { int ksem_destroy(semid_t id); } 409 AUE_NULL MSTD { int __mac_get_pid(pid_t pid, struct mac *mac_p); } 410 AUE_NULL MSTD { int __mac_get_link(const char *path_p, \ struct mac *mac_p); } From owner-p4-projects@FreeBSD.ORG Sat May 28 22:26:34 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 131AE16A420; Sat, 28 May 2005 22:26:34 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B80AB16A41F for ; Sat, 28 May 2005 22:26:33 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 49B5843D48 for ; Sat, 28 May 2005 22:26:33 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4SMQXSj031769 for ; Sat, 28 May 2005 22:26:33 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4SMQWdB031766 for perforce@freebsd.org; Sat, 28 May 2005 22:26:32 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 28 May 2005 22:26:32 GMT Message-Id: <200505282226.j4SMQWdB031766@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 77644 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 May 2005 22:26:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=77644 Change 77644 by rwatson@rwatson_paprika on 2005/05/28 22:25:40 Relocate audit event earlier in the system call table entry. Affected files ... .. //depot/projects/trustedbsd/audit3/sys/compat/freebsd32/syscalls.master#6 edit Differences ... ==== //depot/projects/trustedbsd/audit3/sys/compat/freebsd32/syscalls.master#6 (text+ko) ==== @@ -7,15 +7,15 @@ ; Columns: number [M]type nargs name alt{name,tag,rtyp}/comments ; number system call number, must be in order -; type one of [M]STD, [M]OBSOL, [M]UNIMPL, [M]COMPAT, [M]CPT_NOA, -; [M]LIBCOMPAT, [M]NODEF, [M]NOARGS, [M]NOPROTO, [M]NOIMPL, -; [M]NOSTD -; name psuedo-prototype of syscall routine ; audit the audit event associated with the system call ; A value of AUE_NULL means no auditing, but it also means that ; there is no audit event for the call at this time. For the ; case where the event exists, but we don't want auditing, the ; event should be #defined to AUE_NULL in audit_kevents.h. +; type one of [M]STD, [M]OBSOL, [M]UNIMPL, [M]COMPAT, [M]CPT_NOA, +; [M]LIBCOMPAT, [M]NODEF, [M]NOARGS, [M]NOPROTO, [M]NOIMPL, +; [M]NOSTD +; name psuedo-prototype of syscall routine ; ; If one of the following alts is different, then all appear: ; altname name of system call if different @@ -51,604 +51,604 @@ ; redistributions should be placed in the reserved range at the end ; of the current calls. -0 MNOPROTO { int nosys(void); } AUE_NULL syscall nosys_args int -1 MNOPROTO { void sys_exit(int rval); } AUE_EXIT exit sys_exit_args void -2 MNOPROTO { int fork(void); } AUE_FORK -3 MNOPROTO { ssize_t read(int fd, void *buf, size_t nbyte); } AUE_NULL -4 MNOPROTO { ssize_t write(int fd, const void *buf, \ - size_t nbyte); } AUE_NULL -5 NOPROTO { int open(char *path, int flags, int mode); } AUE_OPEN_RWTC -6 MNOPROTO { int close(int fd); } AUE_CLOSE -7 MSTD { int freebsd32_wait4(int pid, int *status, int options, \ - struct rusage32 *rusage); } AUE_NULL -8 OBSOL old creat -9 NOPROTO { int link(char *path, char *link); } AUE_NULL -10 NOPROTO { int unlink(char *path); } AUE_NULL -11 OBSOL execv -12 NOPROTO { int chdir(char *path); } AUE_NULL -13 NOPROTO { int fchdir(int fd); } AUE_NULL -14 NOPROTO { int mknod(char *path, int mode, int dev); } AUE_NULL -15 NOPROTO { int chmod(char *path, int mode); } AUE_NULL -16 NOPROTO { int chown(char *path, int uid, int gid); } AUE_NULL -17 MNOPROTO { int obreak(char *nsize); } AUE_NULL break obreak_args int -18 COMPAT4 { int freebsd32_getfsstat(struct statfs32 *buf, \ - long bufsize, int flags); } AUE_NULL -19 OBSOL olseek -20 MNOPROTO { pid_t getpid(void); } AUE_NULL -21 NOPROTO { int mount(char *type, char *path, int flags, \ - caddr_t data); } AUE_NULL -22 NOPROTO { int unmount(char *path, int flags); } AUE_NULL -23 MNOPROTO { int setuid(uid_t uid); } AUE_NULL -24 MNOPROTO { uid_t getuid(void); } AUE_NULL -25 MNOPROTO { uid_t geteuid(void); } AUE_NULL -26 MNOPROTO { int ptrace(int req, pid_t pid, caddr_t addr, \ - int data); } AUE_NULL +0 AUE_NULL MNOPROTO { int nosys(void); } syscall nosys_args int +1 AUE_EXIT MNOPROTO { void sys_exit(int rval); } exit sys_exit_args void +2 AUE_FORK MNOPROTO { int fork(void); } +3 AUE_NULL MNOPROTO { ssize_t read(int fd, void *buf, size_t nbyte); } +4 AUE_NULL MNOPROTO { ssize_t write(int fd, const void *buf, \ + size_t nbyte); } +5 AUE_OPEN_RWTC NOPROTO { int open(char *path, int flags, int mode); } +6 AUE_CLOSE MNOPROTO { int close(int fd); } +7 AUE_NULL MSTD { int freebsd32_wait4(int pid, int *status, int options, \ + struct rusage32 *rusage); } +8 AUE_O_CREAT OBSOL old creat +9 AUE_LINK NOPROTO { int link(char *path, char *link); } +10 AUE_UNLINK NOPROTO { int unlink(char *path); } +11 AUE_NULL OBSOL execv +12 AUE_CHDIR NOPROTO { int chdir(char *path); } +13 AUE_FCHDIR NOPROTO { int fchdir(int fd); } +14 AUE_MKNOD NOPROTO { int mknod(char *path, int mode, int dev); } +15 AUE_CHMOD NOPROTO { int chmod(char *path, int mode); } +16 AUE_CHOWN NOPROTO { int chown(char *path, int uid, int gid); } +17 AUE_NULL MNOPROTO { int obreak(char *nsize); } break obreak_args int +18 AUE_GETFSSTAT COMPAT4 { int freebsd32_getfsstat(struct statfs32 *buf, \ + long bufsize, int flags); } +19 AUE_LSEEK OBSOL olseek +20 AUE_GETPID MNOPROTO { pid_t getpid(void); } +21 AUE_MOUNT NOPROTO { int mount(char *type, char *path, int flags, \ + caddr_t data); } +22 AUE_UMOUNT NOPROTO { int unmount(char *path, int flags); } +23 AUE_SETUID MNOPROTO { int setuid(uid_t uid); } +24 AUE_NULL MNOPROTO { uid_t getuid(void); } +25 AUE_NULL MNOPROTO { uid_t geteuid(void); } +26 AUE_PTRACE MNOPROTO { int ptrace(int req, pid_t pid, caddr_t addr, \ + int data); } ; XXX implement -27 UNIMPL recvmsg -28 MNOPROTO { int sendmsg(int s, caddr_t msg, int flags); } AUE_NULL -29 MNOPROTO { int recvfrom(int s, caddr_t buf, size_t len, int flags, \ - caddr_t from, int *fromlenaddr); } AUE_NULL -30 MNOPROTO { int accept(int s, caddr_t name, int *anamelen); } AUE_NULL -31 MNOPROTO { int getpeername(int fdes, caddr_t asa, int *alen); } AUE_NULL -32 MNOPROTO { int getsockname(int fdes, caddr_t asa, int *alen); } AUE_NULL -33 NOPROTO { int access(char *path, int flags); } AUE_NULL -34 NOPROTO { int chflags(char *path, int flags); } AUE_NULL -35 NOPROTO { int fchflags(int fd, int flags); } AUE_NULL -36 NOPROTO { int sync(void); } AUE_NULL -37 MNOPROTO { int kill(int pid, int signum); } AUE_NULL -38 UNIMPL ostat -39 MNOPROTO { pid_t getppid(void); } AUE_NULL -40 UNIMPL olstat -41 MNOPROTO { int dup(u_int fd); } AUE_NULL -42 MNOPROTO { int pipe(void); } AUE_NULL -43 MNOPROTO { gid_t getegid(void); } AUE_NULL -44 MNOPROTO { int profil(caddr_t samples, size_t size, size_t offset, \ - u_int scale); } AUE_NULL -45 MNOPROTO { int ktrace(const char *fname, int ops, int facs, \ - int pid); } AUE_NULL -46 UNIMPL osigaction -47 MNOPROTO { gid_t getgid(void); } AUE_NULL -48 UNIMPL osigprocmask -49 MNOPROTO { int getlogin(char *namebuf, u_int namelen); } AUE_NULL -50 MNOPROTO { int setlogin(char *namebuf); } AUE_NULL -51 MNOPROTO { int acct(char *path); } AUE_NULL -52 OBSOL osigpending -53 MSTD { int freebsd32_sigaltstack(struct sigaltstack32 *ss, \ - struct sigaltstack32 *oss); } AUE_NULL -54 MNOPROTO { int ioctl(int fd, u_long com, caddr_t data); } AUE_NULL -55 MNOPROTO { int reboot(int opt); } AUE_NULL -56 NOPROTO { int revoke(char *path); } AUE_NULL -57 NOPROTO { int symlink(char *path, char *link); } AUE_NULL -58 NOPROTO { int readlink(char *path, char *buf, int count); } AUE_NULL -59 STD { int freebsd32_execve(char *fname, u_int32_t *argv, \ - u_int32_t *envv); } AUE_NULL -60 MNOPROTO { int umask(int newmask); } AUE_NULL umask umask_args int -61 NOPROTO { int chroot(char *path); } AUE_NULL -62 OBSOL ofstat -63 OBSOL ogetkerninfo -64 OBSOL ogetpagesize +27 AUE_RECVMSG UNIMPL recvmsg +28 AUE_SENDMSG MNOPROTO { int sendmsg(int s, caddr_t msg, int flags); } +29 AUE_RECVFROM MNOPROTO { int recvfrom(int s, caddr_t buf, size_t len, int flags, \ + caddr_t from, int *fromlenaddr); } +30 AUE_ACCEPT MNOPROTO { int accept(int s, caddr_t name, int *anamelen); } +31 AUE_GETPEERNAME MNOPROTO { int getpeername(int fdes, caddr_t asa, int *alen); } +32 AUE_GETSOCKNAME MNOPROTO { int getsockname(int fdes, caddr_t asa, int *alen); } +33 AUE_ACCESS NOPROTO { int access(char *path, int flags); } +34 AUE_CHFLAGS NOPROTO { int chflags(char *path, int flags); } +35 AUE_FCHFLAGS NOPROTO { int fchflags(int fd, int flags); } +36 AUE_SYNC NOPROTO { int sync(void); } +37 AUE_KILL MNOPROTO { int kill(int pid, int signum); } +38 AUE_STAT UNIMPL ostat +39 AUE_GETPPID MNOPROTO { pid_t getppid(void); } +40 AUE_LSTAT UNIMPL olstat +41 AUE_DUP MNOPROTO { int dup(u_int fd); } +42 AUE_PIPE MNOPROTO { int pipe(void); } +43 AUE_GETEGID MNOPROTO { gid_t getegid(void); } +44 AUE_PROFILE MNOPROTO { int profil(caddr_t samples, size_t size, size_t offset, \ + u_int scale); } +45 AUE_KTRACE MNOPROTO { int ktrace(const char *fname, int ops, int facs, \ + int pid); } +46 AUE_SIGACTION UNIMPL osigaction +47 AUE_GETGID MNOPROTO { gid_t getgid(void); } +48 AUE_SIGPROCMASK UNIMPL osigprocmask +49 AUE_GETLOGIN MNOPROTO { int getlogin(char *namebuf, u_int namelen); } +50 AUE_SETLOGIN MNOPROTO { int setlogin(char *namebuf); } +51 AUE_ACCT MNOPROTO { int acct(char *path); } +52 AUE_SIGPENDING OBSOL osigpending +53 AUE_SIGPENDING MSTD { int freebsd32_sigaltstack(struct sigaltstack32 *ss, \ + struct sigaltstack32 *oss); } +54 AUE_IOCTL MNOPROTO { int ioctl(int fd, u_long com, caddr_t data); } +55 AUE_REBOOT MNOPROTO { int reboot(int opt); } +56 AUE_REVOKE NOPROTO { int revoke(char *path); } +57 AUE_SYMLINK NOPROTO { int symlink(char *path, char *link); } +58 AUE_READLINK NOPROTO { int readlink(char *path, char *buf, int count); } +59 AUE_EXECVE STD { int freebsd32_execve(char *fname, u_int32_t *argv, \ + u_int32_t *envv); } +60 AUE_UMASK MNOPROTO { int umask(int newmask); } umask umask_args int +61 AUE_CHROOT NOPROTO { int chroot(char *path); } +62 AUE_FSTAT OBSOL ofstat +63 AUE_NULL OBSOL ogetkerninfo +64 AUE_O_GETPAGESIZE OBSOL ogetpagesize ; XXX implement (not OBSOL at all) -65 OBSOL omsync -66 MNOPROTO { int vfork(void); } AUE_NULL -67 OBSOL vread -68 OBSOL vwrite -69 MNOPROTO { int sbrk(int incr); } AUE_NULL -70 MNOPROTO { int sstk(int incr); } AUE_NULL -71 OBSOL ommap -72 MNOPROTO { int ovadvise(int anom); } AUE_NULL vadvise ovadvise_args int -73 MNOPROTO { int munmap(void *addr, size_t len); } AUE_NULL -74 MNOPROTO { int mprotect(const void *addr, size_t len, \ - int prot); } AUE_NULL -75 MNOPROTO { int madvise(void *addr, size_t len, int behav); } AUE_NULL -76 OBSOL vhangup -77 OBSOL vlimit -78 MNOPROTO { int mincore(const void *addr, size_t len, \ - char *vec); } AUE_NULL -79 MNOPROTO { int getgroups(u_int gidsetsize, gid_t *gidset); } AUE_NULL -80 MNOPROTO { int setgroups(u_int gidsetsize, gid_t *gidset); } AUE_NULL -81 MNOPROTO { int getpgrp(void); } AUE_NULL -82 MNOPROTO { int setpgid(int pid, int pgid); } AUE_NULL -83 STD { int freebsd32_setitimer(u_int which, \ +65 AUE_MSYNC OBSOL omsync +66 AUE_VFORK MNOPROTO { int vfork(void); } +67 AUE_NULL OBSOL vread +68 AUE_NULL OBSOL vwrite +69 AUE_SBRK MNOPROTO { int sbrk(int incr); } +70 AUE_SSTK MNOPROTO { int sstk(int incr); } +71 AUE_MMAP OBSOL ommap +72 AUE_O_VADVISE MNOPROTO { int ovadvise(int anom); } vadvise ovadvise_args int +73 AUE_MUNMAP MNOPROTO { int munmap(void *addr, size_t len); } +74 AUE_MPROTECT MNOPROTO { int mprotect(const void *addr, size_t len, \ + int prot); } +75 AUE_MADVISE MNOPROTO { int madvise(void *addr, size_t len, int behav); } +76 AUE_NULL OBSOL vhangup +77 AUE_NULL OBSOL vlimit +78 AUE_MINCORE MNOPROTO { int mincore(const void *addr, size_t len, \ + char *vec); } +79 AUE_GETGROUPS MNOPROTO { int getgroups(u_int gidsetsize, gid_t *gidset); } +80 AUE_SETGROUPS MNOPROTO { int setgroups(u_int gidsetsize, gid_t *gidset); } +81 AUE_GETPGRP MNOPROTO { int getpgrp(void); } +82 AUE_SETPGRP MNOPROTO { int setpgid(int pid, int pgid); } +83 AUE_SETITIMER STD { int freebsd32_setitimer(u_int which, \ struct itimerval32 *itv, \ - struct itimerval32 *oitv); } AUE_NULL -84 OBSOL owait + struct itimerval32 *oitv); } +84 AUE_O_WAIT OBSOL owait ; XXX implement -85 OBSOL oswapon -86 STD { int freebsd32_getitimer(u_int which, \ - struct itimerval32 *itv); } AUE_NULL -87 OBSOL ogethostname -88 OBSOL osethostname -89 MNOPROTO { int getdtablesize(void); } AUE_NULL -90 MNOPROTO { int dup2(u_int from, u_int to); } AUE_NULL -91 UNIMPL getdopt -92 MNOPROTO { int fcntl(int fd, int cmd, long arg); } AUE_NULL -93 STD { int freebsd32_select(int nd, fd_set *in, fd_set *ou, \ - fd_set *ex, struct timeval32 *tv); } AUE_NULL +85 AUE_SWAPON OBSOL oswapon +86 AUE_GETITIMER STD { int freebsd32_getitimer(u_int which, \ + struct itimerval32 *itv); } +87 AUE_O_GETHOSTNAME OBSOL ogethostname +88 AUE_O_SETHOSTNAME OBSOL osethostname +89 AUE_GETDTABLESIZE MNOPROTO { int getdtablesize(void); } +90 AUE_DUP2 MNOPROTO { int dup2(u_int from, u_int to); } +91 AUE_NULL UNIMPL getdopt +92 AUE_FCNTL MNOPROTO { int fcntl(int fd, int cmd, long arg); } +93 AUE_SELECT STD { int freebsd32_select(int nd, fd_set *in, fd_set *ou, \ + fd_set *ex, struct timeval32 *tv); } ; XXX need to override for big-endian - little-endian should work fine. -94 UNIMPL setdopt -95 NOPROTO { int fsync(int fd); } AUE_NULL -96 MNOPROTO { int setpriority(int which, int who, int prio); } AUE_NULL -97 MNOPROTO { int socket(int domain, int type, int protocol); } AUE_NULL -98 MNOPROTO { int connect(int s, caddr_t name, int namelen); } AUE_NULL -99 OBSOL oaccept -100 MNOPROTO { int getpriority(int which, int who); } AUE_NULL -101 OBSOL osend -102 OBSOL orecv -103 OBSOL osigreturn -104 MNOPROTO { int bind(int s, caddr_t name, int namelen); } AUE_NULL -105 MNOPROTO { int setsockopt(int s, int level, int name, caddr_t val, \ - int valsize); } AUE_NULL -106 MNOPROTO { int listen(int s, int backlog); } AUE_NULL -107 OBSOL vtimes -108 OBSOL osigvec -109 OBSOL osigblock -110 OBSOL osigsetmask -111 OBSOL osigsuspend -112 OBSOL osigstack -113 OBSOL orecvmsg -114 OBSOL osendmsg -115 OBSOL vtrace -116 MSTD { int freebsd32_gettimeofday(struct timeval32 *tp, \ - struct timezone *tzp); } AUE_NULL -117 STD { int freebsd32_getrusage(int who, \ - struct rusage32 *rusage); } AUE_NULL -118 MNOPROTO { int getsockopt(int s, int level, int name, caddr_t val, \ - int *avalsize); } AUE_NULL -119 UNIMPL resuba (BSD/OS 2.x) -120 STD { int freebsd32_readv(int fd, struct iovec32 *iovp, \ - u_int iovcnt); } AUE_NULL -121 STD { int freebsd32_writev(int fd, struct iovec32 *iovp, \ - u_int iovcnt); } AUE_NULL -122 STD { int freebsd32_settimeofday(struct timeval32 *tv, \ - struct timezone *tzp); } AUE_NULL -123 NOPROTO { int fchown(int fd, int uid, int gid); } AUE_NULL -124 NOPROTO { int fchmod(int fd, int mode); } AUE_NULL -125 OBSOL orecvfrom -126 MNOPROTO { int setreuid(int ruid, int euid); } AUE_NULL -127 MNOPROTO { int setregid(int rgid, int egid); } AUE_NULL -128 NOPROTO { int rename(char *from, char *to); } AUE_NULL -129 OBSOL otruncate -130 OBSOL ftruncate -131 MNOPROTO { int flock(int fd, int how); } AUE_NULL -132 NOPROTO { int mkfifo(char *path, int mode); } AUE_NULL -133 MNOPROTO { int sendto(int s, caddr_t buf, size_t len, int flags, \ - caddr_t to, int tolen); } AUE_NULL -134 MNOPROTO { int shutdown(int s, int how); } AUE_NULL -135 MNOPROTO { int socketpair(int domain, int type, int protocol, \ - int *rsv); } AUE_NULL -136 NOPROTO { int mkdir(char *path, int mode); } AUE_NULL -137 NOPROTO { int rmdir(char *path); } AUE_NULL -138 STD { int freebsd32_utimes(char *path, \ - struct timeval32 *tptr); } AUE_NULL -139 OBSOL 4.2 sigreturn -140 STD { int freebsd32_adjtime(struct timeval32 *delta, \ - struct timeval32 *olddelta); } AUE_NULL -141 OBSOL ogetpeername -142 OBSOL ogethostid -143 OBSOL sethostid -144 OBSOL getrlimit -145 OBSOL setrlimit -146 OBSOL killpg -147 MNOPROTO { int setsid(void); } AUE_NULL -148 NOPROTO { int quotactl(char *path, int cmd, int uid, \ - caddr_t arg); } AUE_NULL -149 OBSOL oquota -150 OBSOL ogetsockname +94 AUE_NULL UNIMPL setdopt +95 AUE_FSYNC NOPROTO { int fsync(int fd); } +96 AUE_SETPRIORITY MNOPROTO { int setpriority(int which, int who, int prio); } +97 AUE_SOCKET MNOPROTO { int socket(int domain, int type, int protocol); } +98 AUE_CONNECT MNOPROTO { int connect(int s, caddr_t name, int namelen); } +99 AUE_ACCEPT OBSOL oaccept +100 AUE_GETPRIORITY MNOPROTO { int getpriority(int which, int who); } +101 AUE_O_SEND OBSOL osend +102 AUE_O_RECV OBSOL orecv +103 AUE_SIGRETURN OBSOL osigreturn +104 AUE_BIND MNOPROTO { int bind(int s, caddr_t name, int namelen); } +105 AUE_SETSOCKOPT MNOPROTO { int setsockopt(int s, int level, int name, caddr_t val, \ + int valsize); } +106 AUE_LISTEN MNOPROTO { int listen(int s, int backlog); } +107 AUE_NULL OBSOL vtimes +108 AUE_O_SIGVEC OBSOL osigvec +109 AUE_O_SIGBLOCK OBSOL osigblock +110 AUE_O_SIGSETMASK OBSOL osigsetmask +111 AUE_SIGSUSPEND OBSOL osigsuspend +112 AUE_O_SIGSTACK OBSOL osigstack +113 AUE_O_RECVMSG OBSOL orecvmsg +114 AUE_O_SENDMSG OBSOL osendmsg +115 AUE_NULL OBSOL vtrace +116 AUE_GETTIMEOFDAY MSTD { int freebsd32_gettimeofday(struct timeval32 *tp, \ + struct timezone *tzp); } +117 AUE_GETRUSAGE STD { int freebsd32_getrusage(int who, \ + struct rusage32 *rusage); } +118 AUE_GTSOCKOPT MNOPROTO { int getsockopt(int s, int level, int name, caddr_t val, \ + int *avalsize); } +119 AUE_NULL UNIMPL resuba (BSD/OS 2.x) +120 AUE_READV STD { int freebsd32_readv(int fd, struct iovec32 *iovp, \ + u_int iovcnt); } +121 AUE_WRITEV STD { int freebsd32_writev(int fd, struct iovec32 *iovp, \ + u_int iovcnt); } +122 AUE_SETTIMEOFDAY STD { int freebsd32_settimeofday(struct timeval32 *tv, \ + struct timezone *tzp); } +123 AUE_FCHOWN NOPROTO { int fchown(int fd, int uid, int gid); } +124 AUE_FCHMOD NOPROTO { int fchmod(int fd, int mode); } +125 AUE_RECVFROM OBSOL orecvfrom +126 AUE_O_SETREUID MNOPROTO { int setreuid(int ruid, int euid); } +127 AUE_O_SETREGID MNOPROTO { int setregid(int rgid, int egid); } +128 AUE_RENAME NOPROTO { int rename(char *from, char *to); } +129 AUE_O_TRUNCATE OBSOL otruncate +130 AUE_O_FTRUNCATE OBSOL ftruncate +131 AUE_FLOCK MNOPROTO { int flock(int fd, int how); } +132 AUE_MKFIFO NOPROTO { int mkfifo(char *path, int mode); } +133 AUE_SENDTO MNOPROTO { int sendto(int s, caddr_t buf, size_t len, int flags, \ + caddr_t to, int tolen); } +134 AUE_SHUTDOWN MNOPROTO { int shutdown(int s, int how); } +135 AUE_SOCKETPAIR MNOPROTO { int socketpair(int domain, int type, int protocol, \ + int *rsv); } +136 AUE_MKDIR NOPROTO { int mkdir(char *path, int mode); } +137 AUE_RMDIR NOPROTO { int rmdir(char *path); } +138 AUE_UTIMES STD { int freebsd32_utimes(char *path, \ + struct timeval32 *tptr); } +139 AUE_NULL OBSOL 4.2 sigreturn +140 AUE_ADJTIME STD { int freebsd32_adjtime(struct timeval32 *delta, \ + struct timeval32 *olddelta); } +141 AUE_O_GETPEERNAME OBSOL ogetpeername +142 AUE_O_GETHOSTID OBSOL ogethostid +143 AUE_O_SETHOSTID OBSOL sethostid +144 AUE_O_GETRLIMIT OBSOL getrlimit +145 AUE_O_SETRLIMIT OBSOL setrlimit +146 AUE_O_KILLPG OBSOL killpg +147 AUE_SETSID MNOPROTO { int setsid(void); } +148 AUE_QUOTACTL NOPROTO { int quotactl(char *path, int cmd, int uid, \ + caddr_t arg); } +149 AUE_O_QUOTA OBSOL oquota +150 AUE_GETSOCKNAME OBSOL ogetsockname ; Syscalls 151-180 inclusive are reserved for vendor-specific ; system calls. (This includes various calls added for compatibity ; with other Unix variants.) ; Some of these calls are now supported by BSD... -151 UNIMPL sem_lock (BSD/OS 2.x) -152 UNIMPL sem_wakeup (BSD/OS 2.x) -153 UNIMPL asyncdaemon (BSD/OS 2.x) -154 UNIMPL nosys +151 AUE_NONE UNIMPL sem_lock (BSD/OS 2.x) +152 AUE_NONE UNIMPL sem_wakeup (BSD/OS 2.x) +153 AUE_NONE UNIMPL asyncdaemon (BSD/OS 2.x) +154 AUE_NONE UNIMPL nosys ; 155 is initialized by the NFS code, if present. ; XXX this is a problem!!! -155 UNIMPL nfssvc -156 OBSOL ogetdirentries -157 COMPAT4 { int freebsd32_statfs(char *path, \ - struct statfs32 *buf); } AUE_NULL -158 COMPAT4 { int freebsd32_fstatfs(int fd, struct statfs32 *buf);} AUE_NULL -159 UNIMPL nosys -160 UNIMPL nosys -161 NOPROTO { int getfh(char *fname, struct fhandle *fhp); } AUE_NULL -162 MNOPROTO { int getdomainname(char *domainname, int len); } AUE_NULL -163 MNOPROTO { int setdomainname(char *domainname, int len); } AUE_NULL -164 MNOPROTO { int uname(struct utsname *name); } AUE_NULL -165 MNOPROTO { int sysarch(int op, char *parms); } AUE_NULL -166 MNOPROTO { int rtprio(int function, pid_t pid, \ - struct rtprio *rtp); } AUE_NULL -167 UNIMPL nosys -168 UNIMPL nosys -169 STD { int freebsd32_semsys(int which, int a2, int a3, int a4, \ - int a5); } AUE_NULL -170 STD { int freebsd32_msgsys(int which, int a2, int a3, int a4, \ - int a5, int a6); } AUE_NULL -171 STD { int freebsd32_shmsys(int which, int a2, int a3, \ - int a4); } AUE_NULL -172 UNIMPL nosys -173 STD { ssize_t freebsd32_pread(int fd, void *buf, size_t nbyte, \ - int pad, u_int32_t offsetlo, u_int32_t offsethi); } AUE_NULL +155 AUE_NFSSVC UNIMPL nfssvc +156 AUE_O_GETDIRENTRIES OBSOL ogetdirentries +157 AUE_STATFS COMPAT4 { int freebsd32_statfs(char *path, \ + struct statfs32 *buf); } +158 AUE_FSTATFS COMPAT4 { int freebsd32_fstatfs(int fd, struct statfs32 *buf);} +159 AUE_NULL UNIMPL nosys +160 AUE_NULL UNIMPL nosys +161 AUE_GETFH NOPROTO { int getfh(char *fname, struct fhandle *fhp); } +162 AUE_O_GETDOMAINNAME MNOPROTO { int getdomainname(char *domainname, int len); } +163 AUE_O_SETDOMAINNAME MNOPROTO { int setdomainname(char *domainname, int len); } +164 AUE_NULL MNOPROTO { int uname(struct utsname *name); } +165 AUE_NULL MNOPROTO { int sysarch(int op, char *parms); } +166 AUE_NULL MNOPROTO { int rtprio(int function, pid_t pid, \ + struct rtprio *rtp); } +167 AUE_NULL UNIMPL nosys +168 AUE_NULL UNIMPL nosys +169 AUE_SEMSYS STD { int freebsd32_semsys(int which, int a2, int a3, int a4, \ + int a5); } +170 AUE_MSGSYS STD { int freebsd32_msgsys(int which, int a2, int a3, int a4, \ + int a5, int a6); } +171 AUE_SHMSYS STD { int freebsd32_shmsys(int which, int a2, int a3, \ + int a4); } +172 AUE_NULL UNIMPL nosys +173 AUE_PREAD STD { ssize_t freebsd32_pread(int fd, void *buf, size_t nbyte, \ + int pad, u_int32_t offsetlo, u_int32_t offsethi); } ; XXX note - bigendian is different -174 STD { ssize_t freebsd32_pwrite(int fd, const void *buf, \ +174 AUE_PWRITE STD { ssize_t freebsd32_pwrite(int fd, const void *buf, \ size_t nbyte, int pad, u_int32_t offsetlo, \ - u_int32_t offsethi); } AUE_NULL + u_int32_t offsethi); } ; XXX note - bigendian is different -175 UNIMPL nosys -176 MNOPROTO { int ntp_adjtime(struct timex *tp); } AUE_NULL -177 UNIMPL sfork (BSD/OS 2.x) -178 UNIMPL getdescriptor (BSD/OS 2.x) -179 UNIMPL setdescriptor (BSD/OS 2.x) -180 UNIMPL nosys +175 AUE_NULL UNIMPL nosys +176 AUE_ADJTIME MNOPROTO { int ntp_adjtime(struct timex *tp); } +177 AUE_NULL UNIMPL sfork (BSD/OS 2.x) +178 AUE_NULL UNIMPL getdescriptor (BSD/OS 2.x) +179 AUE_NULL UNIMPL setdescriptor (BSD/OS 2.x) +180 AUE_NULL UNIMPL nosys ; Syscalls 181-199 are used by/reserved for BSD -181 MNOPROTO { int setgid(gid_t gid); } AUE_NULL -182 MNOPROTO { int setegid(gid_t egid); } AUE_NULL -183 MNOPROTO { int seteuid(uid_t euid); } AUE_NULL -184 UNIMPL lfs_bmapv -185 UNIMPL lfs_markv -186 UNIMPL lfs_segclean -187 UNIMPL lfs_segwait -188 STD { int freebsd32_stat(char *path, struct stat32 *ub); } AUE_NULL -189 MSTD { int freebsd32_fstat(int fd, struct stat32 *ub); } AUE_NULL -190 STD { int freebsd32_lstat(char *path, struct stat32 *ub); } AUE_NULL -191 NOPROTO { int pathconf(char *path, int name); } AUE_NULL -192 MNOPROTO { int fpathconf(int fd, int name); } AUE_NULL -193 UNIMPL nosys -194 MNOPROTO { int getrlimit(u_int which, struct rlimit *rlp); } AUE_NULL \ +181 AUE_SETGID MNOPROTO { int setgid(gid_t gid); } +182 AUE_SETEGID MNOPROTO { int setegid(gid_t egid); } +183 AUE_SETEUID MNOPROTO { int seteuid(uid_t euid); } +184 AUE_NULL UNIMPL lfs_bmapv +185 AUE_NULL UNIMPL lfs_markv +186 AUE_NULL UNIMPL lfs_segclean +187 AUE_NULL UNIMPL lfs_segwait +188 AUE_STAT STD { int freebsd32_stat(char *path, struct stat32 *ub); } +189 AUE_FSTAT MSTD { int freebsd32_fstat(int fd, struct stat32 *ub); } +190 AUE_LSTAT STD { int freebsd32_lstat(char *path, struct stat32 *ub); } +191 AUE_PATHCONF NOPROTO { int pathconf(char *path, int name); } +192 AUE_FPATHCONF MNOPROTO { int fpathconf(int fd, int name); } +193 AUE_NULL UNIMPL nosys +194 AUE_GETRLIMIT MNOPROTO { int getrlimit(u_int which, struct rlimit *rlp); } \ getrlimit __getrlimit_args int -195 MNOPROTO { int setrlimit(u_int which, struct rlimit *rlp); } AUE_NULL \ +195 AUE_SETRLIMIT MNOPROTO { int setrlimit(u_int which, struct rlimit *rlp); } \ setrlimit __setrlimit_args int -196 NOPROTO { int getdirentries(int fd, char *buf, u_int count, \ - long *basep); } AUE_NULL -197 STD { caddr_t freebsd32_mmap(caddr_t addr, size_t len, int prot, \ +196 AUE_GETDIRENTRIES NOPROTO { int getdirentries(int fd, char *buf, u_int count, \ + long *basep); } +197 AUE_MMAP STD { caddr_t freebsd32_mmap(caddr_t addr, size_t len, int prot, \ int flags, int fd, int pad, u_int32_t poslo, \ - u_int32_t poshi); } AUE_NULL -198 NOPROTO { int nosys(void); } AUE_NULL __syscall __syscall_args int + u_int32_t poshi); } +198 AUE_NULL NOPROTO { int nosys(void); } __syscall __syscall_args int ; XXX note - bigendian is different -199 STD { off_t freebsd32_lseek(int fd, int pad, u_int32_t offsetlo, \ - u_int32_t offsethi, int whence); } AUE_NULL +199 AUE_LSEEK STD { off_t freebsd32_lseek(int fd, int pad, u_int32_t offsetlo, \ + u_int32_t offsethi, int whence); } ; XXX note - bigendian is different -200 STD { int freebsd32_truncate(char *path, int pad, \ - u_int32_t lengthlo, u_int32_t lengthhi); } AUE_NULL +200 AUE_TRUNCATE STD { int freebsd32_truncate(char *path, int pad, \ + u_int32_t lengthlo, u_int32_t lengthhi); } ; XXX note - bigendian is different -201 STD { int freebsd32_ftruncate(int fd, int pad, \ - u_int32_t lengthlo, u_int32_t lengthhi); } AUE_NULL -202 MSTD { int freebsd32_sysctl(int *name, u_int namelen, void *old, \ - u_int32_t *oldlenp, void *new, u_int32_t newlen); } AUE_NULL -203 MNOPROTO { int mlock(const void *addr, size_t len); } AUE_NULL -204 MNOPROTO { int munlock(const void *addr, size_t len); } AUE_NULL -205 NOPROTO { int undelete(char *path); } AUE_NULL -206 NOPROTO { int futimes(int fd, struct timeval *tptr); } AUE_NULL -207 MNOPROTO { int getpgid(pid_t pid); } AUE_NULL -208 UNIMPL newreboot (NetBSD) -209 MNOPROTO { int poll(struct pollfd *fds, u_int nfds, \ - int timeout); } AUE_NULL +201 AUE_FTRUNCATE STD { int freebsd32_ftruncate(int fd, int pad, \ + u_int32_t lengthlo, u_int32_t lengthhi); } +202 AUE_SYSCTL MSTD { int freebsd32_sysctl(int *name, u_int namelen, void *old, \ + u_int32_t *oldlenp, void *new, u_int32_t newlen); } +203 AUE_MLOCK MNOPROTO { int mlock(const void *addr, size_t len); } +204 AUE_MUNLOCK MNOPROTO { int munlock(const void *addr, size_t len); } +205 AUE_UNDELETE NOPROTO { int undelete(char *path); } +206 AUE_FUTIMES NOPROTO { int futimes(int fd, struct timeval *tptr); } +207 AUE_GETPGID MNOPROTO { int getpgid(pid_t pid); } +208 AUE_NULL UNIMPL newreboot (NetBSD) +209 AUE_POLL MNOPROTO { int poll(struct pollfd *fds, u_int nfds, \ + int timeout); } ; ; The following are reserved for loadable syscalls ; -210 UNIMPL -211 UNIMPL -212 UNIMPL -213 UNIMPL -214 UNIMPL -215 UNIMPL -216 UNIMPL -217 UNIMPL -218 UNIMPL -219 UNIMPL +210 AUE_NULL UNIMPL +211 AUE_NULL UNIMPL +212 AUE_NULL UNIMPL +213 AUE_NULL UNIMPL +214 AUE_NULL UNIMPL +215 AUE_NULL UNIMPL +216 AUE_NULL UNIMPL +217 AUE_NULL UNIMPL +218 AUE_NULL UNIMPL +219 AUE_NULL UNIMPL ; ; The following were introduced with NetBSD/4.4Lite-2 ; They are initialized by thier respective modules/sysinits ; XXX PROBLEM!! -220 MNOPROTO { int __semctl(int semid, int semnum, int cmd, \ - union semun *arg); } AUE_NULL -221 MNOPROTO { int semget(key_t key, int nsems, int semflg); } AUE_NULL -222 MNOPROTO { int semop(int semid, struct sembuf *sops, \ - u_int nsops); } AUE_NULL -223 UNIMPL semconfig -224 MNOPROTO { int msgctl(int msqid, int cmd, \ - struct msqid_ds *buf); } AUE_NULL -225 MNOPROTO { int msgget(key_t key, int msgflg); } AUE_NULL -226 MNOPROTO { int msgsnd(int msqid, void *msgp, size_t msgsz, \ - int msgflg); } AUE_NULL -227 MNOPROTO { int msgrcv(int msqid, void *msgp, size_t msgsz, \ - long msgtyp, int msgflg); } AUE_NULL -228 MNOPROTO { int shmat(int shmid, void *shmaddr, int shmflg); } AUE_NULL -229 MNOPROTO { int shmctl(int shmid, int cmd, \ - struct shmid_ds *buf); } AUE_NULL -230 MNOPROTO { int shmdt(void *shmaddr); } AUE_NULL -231 MNOPROTO { int shmget(key_t key, int size, int shmflg); } AUE_NULL +220 AUE_SEMCTL MNOPROTO { int __semctl(int semid, int semnum, int cmd, \ + union semun *arg); } +221 AUE_SEMGET MNOPROTO { int semget(key_t key, int nsems, int semflg); } +222 AUE_SEMOP MNOPROTO { int semop(int semid, struct sembuf *sops, \ + u_int nsops); } +223 AUE_NULL UNIMPL semconfig +224 AUE_MSGCTL MNOPROTO { int msgctl(int msqid, int cmd, \ + struct msqid_ds *buf); } +225 AUE_MSGGET MNOPROTO { int msgget(key_t key, int msgflg); } +226 AUE_MSGSND MNOPROTO { int msgsnd(int msqid, void *msgp, size_t msgsz, \ + int msgflg); } +227 AUE_MSGRCV MNOPROTO { int msgrcv(int msqid, void *msgp, size_t msgsz, \ + long msgtyp, int msgflg); } +228 AUE_SHMAT MNOPROTO { int shmat(int shmid, void *shmaddr, int shmflg); } +229 AUE_SHMCTL MNOPROTO { int shmctl(int shmid, int cmd, \ + struct shmid_ds *buf); } +230 AUE_SHMDT MNOPROTO { int shmdt(void *shmaddr); } +231 AUE_SHMGET MNOPROTO { int shmget(key_t key, int size, int shmflg); } ; -232 MNOPROTO { int clock_gettime(clockid_t clock_id, \ - struct timespec *tp); } AUE_NULL -233 MNOPROTO { int clock_settime(clockid_t clock_id, \ - const struct timespec *tp); } AUE_NULL -234 MNOPROTO { int clock_getres(clockid_t clock_id, \ - struct timespec *tp); } AUE_NULL -235 UNIMPL timer_create -236 UNIMPL timer_delete -237 UNIMPL timer_settime -238 UNIMPL timer_gettime -239 UNIMPL timer_getoverrun -240 MNOPROTO { int nanosleep(const struct timespec *rqtp, \ - struct timespec *rmtp); } AUE_NULL -241 UNIMPL nosys -242 UNIMPL nosys -243 UNIMPL nosys -244 UNIMPL nosys -245 UNIMPL nosys -246 UNIMPL nosys -247 UNIMPL nosys -248 UNIMPL nosys -249 UNIMPL nosys +232 AUE_NULL MNOPROTO { int clock_gettime(clockid_t clock_id, \ + struct timespec *tp); } +233 AUE_NULL MNOPROTO { int clock_settime(clockid_t clock_id, \ + const struct timespec *tp); } +234 AUE_NULL MNOPROTO { int clock_getres(clockid_t clock_id, \ + struct timespec *tp); } +235 AUE_NULL UNIMPL timer_create +236 AUE_NULL UNIMPL timer_delete +237 AUE_NULL UNIMPL timer_settime +238 AUE_NULL UNIMPL timer_gettime +239 AUE_NULL UNIMPL timer_getoverrun +240 AUE_NULL MNOPROTO { int nanosleep(const struct timespec *rqtp, \ + struct timespec *rmtp); } +241 AUE_NULL UNIMPL nosys +242 AUE_NULL UNIMPL nosys +243 AUE_NULL UNIMPL nosys +244 AUE_NULL UNIMPL nosys +245 AUE_NULL UNIMPL nosys +246 AUE_NULL UNIMPL nosys +247 AUE_NULL UNIMPL nosys +248 AUE_NULL UNIMPL nosys +249 AUE_NULL UNIMPL nosys ; syscall numbers initially used in OpenBSD -250 MNOPROTO { int minherit(void *addr, size_t len, int inherit); } AUE_NULL -251 MNOPROTO { int rfork(int flags); } AUE_NULL -252 MNOPROTO { int openbsd_poll(struct pollfd *fds, u_int nfds, \ - int timeout); } AUE_NULL -253 MNOPROTO { int issetugid(void); } AUE_NULL -254 NOPROTO { int lchown(char *path, int uid, int gid); } AUE_NULL -255 UNIMPL nosys -256 UNIMPL nosys -257 UNIMPL nosys -258 UNIMPL nosys -259 UNIMPL nosys -260 UNIMPL nosys -261 UNIMPL nosys -262 UNIMPL nosys -263 UNIMPL nosys -264 UNIMPL nosys -265 UNIMPL nosys -266 UNIMPL nosys -267 UNIMPL nosys -268 UNIMPL nosys -269 UNIMPL nosys -270 UNIMPL nosys -271 UNIMPL nosys -272 NOPROTO { int getdents(int fd, char *buf, size_t count); } AUE_NULL -273 UNIMPL nosys -274 NOPROTO { int lchmod(char *path, mode_t mode); } AUE_NULL -275 NOPROTO { int lchown(char *path, uid_t uid, gid_t gid); } AUE_NULL \ +250 AUE_MINHERIT MNOPROTO { int minherit(void *addr, size_t len, int inherit); } +251 AUE_RFORK MNOPROTO { int rfork(int flags); } +252 AUE_NULL MNOPROTO { int openbsd_poll(struct pollfd *fds, u_int nfds, \ + int timeout); } +253 AUE_ISSETUGID MNOPROTO { int issetugid(void); } +254 AUE_LCHOWN NOPROTO { int lchown(char *path, int uid, int gid); } +255 AUE_NULL UNIMPL nosys +256 AUE_NULL UNIMPL nosys +257 AUE_NULL UNIMPL nosys +258 AUE_NULL UNIMPL nosys +259 AUE_NULL UNIMPL nosys +260 AUE_NULL UNIMPL nosys +261 AUE_NULL UNIMPL nosys +262 AUE_NULL UNIMPL nosys +263 AUE_NULL UNIMPL nosys +264 AUE_NULL UNIMPL nosys +265 AUE_NULL UNIMPL nosys +266 AUE_NULL UNIMPL nosys +267 AUE_NULL UNIMPL nosys +268 AUE_NULL UNIMPL nosys +269 AUE_NULL UNIMPL nosys +270 AUE_NULL UNIMPL nosys +271 AUE_NULL UNIMPL nosys +272 AUE_O_GETDENTS NOPROTO { int getdents(int fd, char *buf, size_t count); } +273 AUE_NULL UNIMPL nosys +274 AUE_LCHMOD NOPROTO { int lchmod(char *path, mode_t mode); } +275 AUE_LCHOWN NOPROTO { int lchown(char *path, uid_t uid, gid_t gid); } \ netbsd_lchown lchown_args int -276 NOPROTO { int lutimes(char *path, struct timeval *tptr); } AUE_NULL -277 MNOPROTO { int msync(void *addr, size_t len, int flags); } AUE_NULL \ +276 AUE_LUTIMES NOPROTO { int lutimes(char *path, struct timeval *tptr); } +277 AUE_MSYNC MNOPROTO { int msync(void *addr, size_t len, int flags); } \ netbsd_msync msync_args int -278 NOPROTO { int nstat(char *path, struct nstat *ub); } AUE_NULL -279 MNOPROTO { int nfstat(int fd, struct nstat *sb); } AUE_NULL -280 NOPROTO { int nlstat(char *path, struct nstat *ub); } AUE_NULL -281 UNIMPL nosys -282 UNIMPL nosys -283 UNIMPL nosys -284 UNIMPL nosys -285 UNIMPL nosys -286 UNIMPL nosys -287 UNIMPL nosys -288 UNIMPL nosys -289 UNIMPL nosys -290 UNIMPL nosys -291 UNIMPL nosys -292 UNIMPL nosys -293 UNIMPL nosys -294 UNIMPL nosys -295 UNIMPL nosys -296 UNIMPL nosys +278 AUE_NULL NOPROTO { int nstat(char *path, struct nstat *ub); } +279 AUE_NULL MNOPROTO { int nfstat(int fd, struct nstat *sb); } +280 AUE_NULL NOPROTO { int nlstat(char *path, struct nstat *ub); } +281 AUE_NULL UNIMPL nosys +282 AUE_NULL UNIMPL nosys +283 AUE_NULL UNIMPL nosys +284 AUE_NULL UNIMPL nosys +285 AUE_NULL UNIMPL nosys +286 AUE_NULL UNIMPL nosys +287 AUE_NULL UNIMPL nosys +288 AUE_NULL UNIMPL nosys +289 AUE_NULL UNIMPL nosys +290 AUE_NULL UNIMPL nosys +291 AUE_NULL UNIMPL nosys +292 AUE_NULL UNIMPL nosys +293 AUE_NULL UNIMPL nosys +294 AUE_NULL UNIMPL nosys +295 AUE_NULL UNIMPL nosys +296 AUE_NULL UNIMPL nosys ; XXX 297 is 300 in NetBSD -297 COMPAT4 { int freebsd32_fhstatfs(const struct fhandle *u_fhp, \ - struct statfs32 *buf); } AUE_NULL -298 NOPROTO { int fhopen(const struct fhandle *u_fhp, int flags); } AUE_NULL -299 NOPROTO { int fhstat(const struct fhandle *u_fhp, \ - struct stat *sb); } AUE_NULL +297 AUE_NULL COMPAT4 { int freebsd32_fhstatfs(const struct fhandle *u_fhp, \ + struct statfs32 *buf); } +298 AUE_NULL NOPROTO { int fhopen(const struct fhandle *u_fhp, int flags); } +299 AUE_NULL NOPROTO { int fhstat(const struct fhandle *u_fhp, \ + struct stat *sb); } ; syscall numbers for FreeBSD -300 MNOPROTO { int modnext(int modid); } AUE_NULL -301 MNOPROTO { int modstat(int modid, struct module_stat* stat); } AUE_NULL -302 MNOPROTO { int modfnext(int modid); } AUE_NULL -303 MNOPROTO { int modfind(const char *name); } AUE_NULL -304 MNOPROTO { int kldload(const char *file); } AUE_NULL -305 MNOPROTO { int kldunload(int fileid); } AUE_NULL -306 MNOPROTO { int kldfind(const char *file); } AUE_NULL -307 MNOPROTO { int kldnext(int fileid); } AUE_NULL -308 MNOPROTO { int kldstat(int fileid, \ - struct kld_file_stat* stat); } AUE_NULL -309 MNOPROTO { int kldfirstmod(int fileid); } AUE_NULL -310 MNOPROTO { int getsid(pid_t pid); } AUE_NULL -311 MNOPROTO { int setresuid(uid_t ruid, uid_t euid, uid_t suid); } AUE_NULL -312 MNOPROTO { int setresgid(gid_t rgid, gid_t egid, gid_t sgid); } AUE_NULL -313 OBSOL signanosleep -314 UNIMPL aio_return -315 UNIMPL aio_suspend -316 UNIMPL aio_cancel -317 UNIMPL aio_error -318 UNIMPL aio_read -319 UNIMPL aio_write -320 UNIMPL lio_listio -321 MNOPROTO { int yield(void); } AUE_NULL -322 OBSOL thr_sleep -323 OBSOL thr_wakeup -324 MNOPROTO { int mlockall(int how); } AUE_NULL -325 MNOPROTO { int munlockall(void); } AUE_NULL -326 NOPROTO { int __getcwd(u_char *buf, u_int buflen); } AUE_NULL +300 AUE_NULL MNOPROTO { int modnext(int modid); } +301 AUE_NULL MNOPROTO { int modstat(int modid, struct module_stat* stat); } +302 AUE_NULL MNOPROTO { int modfnext(int modid); } +303 AUE_NULL MNOPROTO { int modfind(const char *name); } +304 AUE_MODLOAD MNOPROTO { int kldload(const char *file); } +305 AUE_UNMODLOAD MNOPROTO { int kldunload(int fileid); } +306 AUE_NULL MNOPROTO { int kldfind(const char *file); } +307 AUE_NULL MNOPROTO { int kldnext(int fileid); } +308 AUE_NULL MNOPROTO { int kldstat(int fileid, \ + struct kld_file_stat* stat); } +309 AUE_NULL MNOPROTO { int kldfirstmod(int fileid); } +310 AUE_GETSID MNOPROTO { int getsid(pid_t pid); } +311 AUE_NULL MNOPROTO { int setresuid(uid_t ruid, uid_t euid, uid_t suid); } +312 AUE_NULL MNOPROTO { int setresgid(gid_t rgid, gid_t egid, gid_t sgid); } +313 AUE_NULL OBSOL signanosleep +314 AUE_NULL UNIMPL aio_return +315 AUE_NULL UNIMPL aio_suspend +316 AUE_NULL UNIMPL aio_cancel +317 AUE_NULL UNIMPL aio_error +318 AUE_NULL UNIMPL aio_read +319 AUE_NULL UNIMPL aio_write +320 AUE_NULL UNIMPL lio_listio +321 AUE_NULL MNOPROTO { int yield(void); } +322 AUE_NULL OBSOL thr_sleep +323 AUE_NULL OBSOL thr_wakeup +324 AUE_MLOCKALL MNOPROTO { int mlockall(int how); } +325 AUE_MUNLOCKALL MNOPROTO { int munlockall(void); } +326 AUE_NULL NOPROTO { int __getcwd(u_char *buf, u_int buflen); } -327 MNOPROTO { int sched_setparam (pid_t pid, \ - const struct sched_param *param); } AUE_NULL -328 MNOPROTO { int sched_getparam (pid_t pid, \ - struct sched_param *param); } AUE_NULL +327 AUE_NULL MNOPROTO { int sched_setparam (pid_t pid, \ + const struct sched_param *param); } +328 AUE_NULL MNOPROTO { int sched_getparam (pid_t pid, \ + struct sched_param *param); } -329 MNOPROTO { int sched_setscheduler (pid_t pid, int policy, \ - const struct sched_param *param); } AUE_NULL -330 MNOPROTO { int sched_getscheduler (pid_t pid); } AUE_NULL +329 AUE_NULL MNOPROTO { int sched_setscheduler (pid_t pid, int policy, \ + const struct sched_param *param); } +330 AUE_NULL MNOPROTO { int sched_getscheduler (pid_t pid); } -331 MNOPROTO { int sched_yield (void); } AUE_NULL -332 MNOPROTO { int sched_get_priority_max (int policy); } AUE_NULL -333 MNOPROTO { int sched_get_priority_min (int policy); } AUE_NULL -334 MNOPROTO { int sched_rr_get_interval (pid_t pid, \ - struct timespec *interval); } AUE_NULL -335 MNOPROTO { int utrace(const void *addr, size_t len); } AUE_NULL +331 AUE_NULL MNOPROTO { int sched_yield (void); } +332 AUE_NULL MNOPROTO { int sched_get_priority_max (int policy); } +333 AUE_NULL MNOPROTO { int sched_get_priority_min (int policy); } +334 AUE_NULL MNOPROTO { int sched_rr_get_interval (pid_t pid, \ + struct timespec *interval); } +335 AUE_NULL MNOPROTO { int utrace(const void *addr, size_t len); } ; XXX note - bigendian is different -336 MCOMPAT4 { int freebsd32_sendfile(int fd, int s, u_int32_t offsetlo, \ +336 AUE_NULL MCOMPAT4 { int freebsd32_sendfile(int fd, int s, u_int32_t offsetlo, \ u_int32_t offsethi, size_t nbytes, struct sf_hdtr *hdtr, \ - off_t *sbytes, int flags); } AUE_NULL -337 NOPROTO { int kldsym(int fileid, int cmd, void *data); } AUE_NULL -338 MNOPROTO { int jail(struct jail *jail); } AUE_NULL -339 UNIMPL pioctl -340 MNOPROTO { int sigprocmask(int how, const sigset_t *set, \ - sigset_t *oset); } AUE_NULL -341 MNOPROTO { int sigsuspend(const sigset_t *sigmask); } AUE_NULL -342 MCOMPAT4 { int freebsd32_sigaction(int sig, struct sigaction32 *act, \ - struct sigaction32 *oact); } AUE_NULL -343 MNOPROTO { int sigpending(sigset_t *set); } AUE_NULL -344 MCOMPAT4 { int freebsd32_sigreturn( \ + off_t *sbytes, int flags); } +337 AUE_NULL NOPROTO { int kldsym(int fileid, int cmd, void *data); } +338 AUE_NULL MNOPROTO { int jail(struct jail *jail); } +339 AUE_NULL UNIMPL pioctl +340 AUE_SIGPROCMASK MNOPROTO { int sigprocmask(int how, const sigset_t *set, \ + sigset_t *oset); } +341 AUE_SIGSUSPEND MNOPROTO { int sigsuspend(const sigset_t *sigmask); } +342 AUE_SIGACTION MCOMPAT4 { int freebsd32_sigaction(int sig, struct sigaction32 *act, \ + struct sigaction32 *oact); } +343 AUE_SIGPENDING MNOPROTO { int sigpending(sigset_t *set); } +344 AUE_SIGRETURN MCOMPAT4 { int freebsd32_sigreturn( \ const struct freebsd4_freebsd32_ucontext *sigcntxp); } \ - AUE_NULL + ; XXX implement -345 UNIMPL sigtimedwait +345 AUE_NULL UNIMPL sigtimedwait ; XXX implement -346 UNIMPL sigwaitinfo -347 MNOPROTO { int __acl_get_file(const char *path, acl_type_t type, \ - struct acl *aclp); } AUE_NULL -348 MNOPROTO { int __acl_set_file(const char *path, acl_type_t type, \ - struct acl *aclp); } AUE_NULL -349 MNOPROTO { int __acl_get_fd(int filedes, acl_type_t type, \ - struct acl *aclp); } AUE_NULL -350 MNOPROTO { int __acl_set_fd(int filedes, acl_type_t type, \ - struct acl *aclp); } AUE_NULL -351 MNOPROTO { int __acl_delete_file(const char *path, \ - acl_type_t type); } AUE_NULL -352 MNOPROTO { int __acl_delete_fd(int filedes, acl_type_t type); } AUE_NULL -353 MNOPROTO { int __acl_aclcheck_file(const char *path, acl_type_t type, \ - struct acl *aclp); } AUE_NULL -354 MNOPROTO { int __acl_aclcheck_fd(int filedes, acl_type_t type, \ - struct acl *aclp); } AUE_NULL -355 NOPROTO { int extattrctl(const char *path, int cmd, \ +346 AUE_NULL UNIMPL sigwaitinfo +347 AUE_NULL MNOPROTO { int __acl_get_file(const char *path, acl_type_t type, \ + struct acl *aclp); } +348 AUE_NULL MNOPROTO { int __acl_set_file(const char *path, acl_type_t type, \ + struct acl *aclp); } +349 AUE_NULL MNOPROTO { int __acl_get_fd(int filedes, acl_type_t type, \ + struct acl *aclp); } +350 AUE_NULL MNOPROTO { int __acl_set_fd(int filedes, acl_type_t type, \ + struct acl *aclp); } +351 AUE_NULL MNOPROTO { int __acl_delete_file(const char *path, \ + acl_type_t type); } +352 AUE_NULL MNOPROTO { int __acl_delete_fd(int filedes, acl_type_t type); } +353 AUE_NULL MNOPROTO { int __acl_aclcheck_file(const char *path, acl_type_t type, \ + struct acl *aclp); } +354 AUE_NULL MNOPROTO { int __acl_aclcheck_fd(int filedes, acl_type_t type, \ + struct acl *aclp); } +355 AUE_NULL NOPROTO { int extattrctl(const char *path, int cmd, \ const char *filename, int attrnamespace, \ - const char *attrname); } AUE_NULL -356 NOPROTO { int extattr_set_file(const char *path, \ + const char *attrname); } +356 AUE_NULL NOPROTO { int extattr_set_file(const char *path, \ int attrnamespace, const char *attrname, \ - void *data, size_t nbytes); } AUE_NULL -357 NOPROTO { ssize_t extattr_get_file(const char *path, \ + void *data, size_t nbytes); } +357 AUE_NULL NOPROTO { ssize_t extattr_get_file(const char *path, \ int attrnamespace, const char *attrname, \ - void *data, size_t nbytes); } AUE_NULL -358 NOPROTO { int extattr_delete_file(const char *path, \ - int attrnamespace, const char *attrname); } AUE_NULL -359 UNIMPL aio_waitcomplete -360 MNOPROTO { int getresuid(uid_t *ruid, uid_t *euid, \ - uid_t *suid); } AUE_NULL -361 MNOPROTO { int getresgid(gid_t *rgid, gid_t *egid, \ - gid_t *sgid); } AUE_NULL -362 MNOPROTO { int kqueue(void); } AUE_NULL -363 MSTD { int freebsd32_kevent(int fd, \ + void *data, size_t nbytes); } +358 AUE_NULL NOPROTO { int extattr_delete_file(const char *path, \ + int attrnamespace, const char *attrname); } +359 AUE_NULL UNIMPL aio_waitcomplete +360 AUE_NULL MNOPROTO { int getresuid(uid_t *ruid, uid_t *euid, \ + uid_t *suid); } +361 AUE_NULL MNOPROTO { int getresgid(gid_t *rgid, gid_t *egid, \ + gid_t *sgid); } +362 AUE_NULL MNOPROTO { int kqueue(void); } +363 AUE_NULL MSTD { int freebsd32_kevent(int fd, \ const struct kevent *changelist, int nchanges, \ struct kevent *eventlist, int nevents, \ - const struct timespec *timeout); } AUE_NULL -364 UNIMPL __cap_get_proc -365 UNIMPL __cap_set_proc -366 UNIMPL __cap_get_fd -367 UNIMPL __cap_get_file -368 UNIMPL __cap_set_fd -369 UNIMPL __cap_set_file -370 UNIMPL lkmressys -371 NOPROTO { int extattr_set_fd(int fd, int attrnamespace, \ - const char *attrname, void *data, size_t nbytes); } AUE_NULL -372 NOPROTO { ssize_t extattr_get_fd(int fd, int attrnamespace, \ - const char *attrname, void *data, size_t nbytes); } AUE_NULL -373 NOPROTO { int extattr_delete_fd(int fd, int attrnamespace, \ - const char *attrname); } AUE_NULL -374 MNOPROTO { int __setugid(int flag); } AUE_NULL -375 UNIMPL nfsclnt -376 NOPROTO { int eaccess(char *path, int flags); } AUE_NULL -377 UNIMPL afs_syscall -378 NOPROTO { int nmount(struct iovec *iovp, unsigned int iovcnt, \ - int flags); } AUE_NULL -379 NOPROTO { int kse_exit(void); } AUE_NULL -380 NOPROTO { int kse_wakeup(struct kse_mailbox *mbx); } AUE_NULL -381 NOPROTO { int kse_create(struct kse_mailbox *mbx, \ - int newgroup); } AUE_NULL -382 NOPROTO { int kse_thr_interrupt(struct kse_thr_mailbox *tmbx); } \ - AUE_NULL -383 NOPROTO { int kse_release(void); } AUE_NULL -384 UNIMPL __mac_get_proc -385 UNIMPL __mac_set_proc -386 UNIMPL __mac_get_fd -387 UNIMPL __mac_get_file -388 UNIMPL __mac_set_fd -389 UNIMPL __mac_set_file >>> TRUNCATED FOR MAIL (1000 lines) <<<