From owner-p4-projects@FreeBSD.ORG Sun May 15 00:49:26 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AEF2116A4D1; Sun, 15 May 2005 00:49:25 +0000 (GMT) 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 8368816A4CE for ; Sun, 15 May 2005 00:49:25 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 53CFA43D3F for ; Sun, 15 May 2005 00:49:25 +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 j4F0nPYI049029 for ; Sun, 15 May 2005 00:49:25 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4F0nOB2049026 for perforce@freebsd.org; Sun, 15 May 2005 00:49:24 GMT (envelope-from marcel@freebsd.org) Date: Sun, 15 May 2005 00:49:24 GMT Message-Id: <200505150049.j4F0nOB2049026@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 Subject: PERFORCE change 76992 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, 15 May 2005 00:49:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=76992 Change 76992 by marcel@marcel_nfs on 2005/05/15 00:48:45 IFC @76990 Affected files ... .. //depot/projects/tty/bin/chflags/chflags.1#8 integrate .. //depot/projects/tty/bin/chflags/chflags.c#5 integrate .. //depot/projects/tty/contrib/tcp_wrappers/hosts_access.c#2 integrate .. //depot/projects/tty/contrib/tcp_wrappers/socket.c#3 integrate .. //depot/projects/tty/etc/mtree/BSD.local.dist#10 integrate .. //depot/projects/tty/games/fortune/datfiles/fortunes#13 integrate .. //depot/projects/tty/gnu/usr.bin/grep/FREEBSD-upgrade#1 branch .. //depot/projects/tty/gnu/usr.bin/grep/dfa.c#4 integrate .. //depot/projects/tty/gnu/usr.bin/grep/dfa.h#3 integrate .. //depot/projects/tty/gnu/usr.bin/grep/grep.c#5 integrate .. //depot/projects/tty/gnu/usr.bin/grep/grep.h#3 integrate .. //depot/projects/tty/gnu/usr.bin/grep/mbcache.h#2 delete .. //depot/projects/tty/gnu/usr.bin/grep/search.c#4 integrate .. //depot/projects/tty/include/unistd.h#7 integrate .. //depot/projects/tty/lib/libc/gen/ttyname.3#3 integrate .. //depot/projects/tty/lib/libc/gen/ttyname.c#5 integrate .. //depot/projects/tty/lib/libc/net/getaddrinfo.c#12 integrate .. //depot/projects/tty/lib/libc/net/name6.c#12 integrate .. //depot/projects/tty/lib/libc/net/rcmd.c#5 integrate .. //depot/projects/tty/lib/libc/net/res_send.c#4 integrate .. //depot/projects/tty/lib/libc/stdio/glue.h#2 integrate .. //depot/projects/tty/lib/libc_r/uthread/pthread_private.h#7 integrate .. //depot/projects/tty/lib/libpam/modules/pam_unix/pam_unix.c#6 integrate .. //depot/projects/tty/lib/libutil/logwtmp.c#3 integrate .. //depot/projects/tty/lib/libutil/realhostname.c#4 integrate .. //depot/projects/tty/libexec/rlogind/rlogind.c#5 integrate .. //depot/projects/tty/libexec/tftpd/tftpd.c#7 integrate .. //depot/projects/tty/release/picobsd/tinyware/login/pico-login.c#2 integrate .. //depot/projects/tty/sbin/ifconfig/af_inet6.c#2 integrate .. //depot/projects/tty/sbin/route/route.c#7 integrate .. //depot/projects/tty/sys/alpha/alpha/clock.c#8 integrate .. //depot/projects/tty/sys/alpha/alpha/timerreg.h#4 delete .. //depot/projects/tty/sys/alpha/include/ppireg.h#1 branch .. //depot/projects/tty/sys/alpha/include/timerreg.h#1 branch .. //depot/projects/tty/sys/alpha/isa/isa_dma.c#6 integrate .. //depot/projects/tty/sys/amd64/amd64/prof_machdep.c#4 integrate .. //depot/projects/tty/sys/amd64/include/ppireg.h#1 branch .. //depot/projects/tty/sys/amd64/include/timerreg.h#1 branch .. //depot/projects/tty/sys/amd64/isa/clock.c#8 integrate .. //depot/projects/tty/sys/amd64/isa/isa.h#5 integrate .. //depot/projects/tty/sys/amd64/isa/isa_dma.c#7 integrate .. //depot/projects/tty/sys/amd64/isa/timerreg.h#4 delete .. //depot/projects/tty/sys/dev/acpi_support/acpi_panasonic.c#2 integrate .. //depot/projects/tty/sys/dev/ata/ata-all.c#19 integrate .. //depot/projects/tty/sys/dev/ata/ata-chipset.c#18 integrate .. //depot/projects/tty/sys/dev/ata/ata-lowlevel.c#12 integrate .. //depot/projects/tty/sys/dev/ata/ata-pci.c#15 integrate .. //depot/projects/tty/sys/dev/ata/ata-pci.h#15 integrate .. //depot/projects/tty/sys/dev/ata/ata-raid.c#17 integrate .. //depot/projects/tty/sys/dev/ic/i8237.h#3 integrate .. //depot/projects/tty/sys/dev/ic/i8253reg.h#1 branch .. //depot/projects/tty/sys/i386/include/ppireg.h#1 branch .. //depot/projects/tty/sys/i386/include/timerreg.h#1 branch .. //depot/projects/tty/sys/i386/isa/clock.c#11 integrate .. //depot/projects/tty/sys/i386/isa/isa.h#7 integrate .. //depot/projects/tty/sys/i386/isa/isa_dma.c#7 integrate .. //depot/projects/tty/sys/i386/isa/prof_machdep.c#6 integrate .. //depot/projects/tty/sys/i386/isa/spkr.c#10 integrate .. //depot/projects/tty/sys/i386/isa/timerreg.h#3 delete .. //depot/projects/tty/sys/ia64/isa/isa_dma.c#6 integrate .. //depot/projects/tty/sys/isa/isa_dmareg.h#1 branch .. //depot/projects/tty/sys/isa/isareg.h#6 integrate .. //depot/projects/tty/sys/isa/syscons_isa.c#6 integrate .. //depot/projects/tty/sys/kern/vfs_cluster.c#15 integrate .. //depot/projects/tty/sys/netgraph/netgraph.h#7 integrate .. //depot/projects/tty/sys/netgraph/ng_base.c#10 integrate .. //depot/projects/tty/sys/netgraph/ng_ksocket.c#8 integrate .. //depot/projects/tty/sys/netinet/ip_divert.c#12 integrate .. //depot/projects/tty/sys/netinet/tcp_sack.c#5 integrate .. //depot/projects/tty/sys/netsmb/smb_conn.c#7 integrate .. //depot/projects/tty/sys/pc98/cbus/cbus.h#3 integrate .. //depot/projects/tty/sys/pc98/cbus/cbus_dma.c#2 integrate .. //depot/projects/tty/sys/pc98/cbus/cbus_dmareg.h#1 branch .. //depot/projects/tty/sys/pc98/cbus/clock.c#2 integrate .. //depot/projects/tty/sys/pc98/cbus/fdc_cbus.c#2 integrate .. //depot/projects/tty/sys/pc98/cbus/olptreg.h#2 integrate .. //depot/projects/tty/sys/pc98/cbus/sio_cbus.c#2 integrate .. //depot/projects/tty/sys/pc98/cbus/syscons_cbus.c#2 integrate .. //depot/projects/tty/sys/pc98/include/ppireg.h#1 branch .. //depot/projects/tty/sys/pc98/include/timerreg.h#1 branch .. //depot/projects/tty/sys/pc98/pc98/machdep.c#2 integrate .. //depot/projects/tty/sys/powerpc/powermac/ata_kauai.c#6 integrate .. //depot/projects/tty/sys/sys/param.h#18 integrate .. //depot/projects/tty/usr.bin/make/GNode.h#3 integrate .. //depot/projects/tty/usr.bin/make/arch.h#2 integrate .. //depot/projects/tty/usr.bin/make/buf.c#4 integrate .. //depot/projects/tty/usr.bin/make/buf.h#4 integrate .. //depot/projects/tty/usr.bin/make/cond.c#8 integrate .. //depot/projects/tty/usr.bin/make/for.h#2 integrate .. //depot/projects/tty/usr.bin/make/globals.h#5 integrate .. //depot/projects/tty/usr.bin/make/hash.c#4 integrate .. //depot/projects/tty/usr.bin/make/hash.h#4 integrate .. //depot/projects/tty/usr.bin/make/job.c#8 integrate .. //depot/projects/tty/usr.bin/make/job.h#7 integrate .. //depot/projects/tty/usr.bin/make/lst.h#4 integrate .. //depot/projects/tty/usr.bin/make/make.h#7 integrate .. //depot/projects/tty/usr.bin/make/parse.h#3 integrate .. //depot/projects/tty/usr.bin/make/sprite.h#3 delete .. //depot/projects/tty/usr.bin/make/str.h#2 integrate .. //depot/projects/tty/usr.bin/make/suff.c#7 integrate .. //depot/projects/tty/usr.bin/make/targ.c#5 integrate .. //depot/projects/tty/usr.bin/make/util.c#4 integrate .. //depot/projects/tty/usr.bin/make/util.h#2 integrate .. //depot/projects/tty/usr.bin/netstat/route.c#8 integrate .. //depot/projects/tty/usr.sbin/burncd/burncd.c#7 integrate .. //depot/projects/tty/usr.sbin/inetd/inetd.c#10 integrate .. //depot/projects/tty/usr.sbin/jail/jail.8#12 integrate .. //depot/projects/tty/usr.sbin/lpr/common_source/net.c#3 integrate .. //depot/projects/tty/usr.sbin/lpr/lpd/lpd.c#3 integrate .. //depot/projects/tty/usr.sbin/mountd/mountd.c#9 integrate .. //depot/projects/tty/usr.sbin/ppp/ncpaddr.c#6 integrate .. //depot/projects/tty/usr.sbin/rip6query/rip6query.c#2 integrate .. //depot/projects/tty/usr.sbin/syslogd/syslogd.c#11 integrate Differences ... ==== //depot/projects/tty/bin/chflags/chflags.1#8 (text+ko) ==== @@ -30,9 +30,9 @@ .\" SUCH DAMAGE. .\" .\" @(#)chflags.1 8.4 (Berkeley) 5/2/95 -.\" $FreeBSD: src/bin/chflags/chflags.1,v 1.23 2005/02/25 00:40:46 trhodes Exp $ +.\" $FreeBSD: src/bin/chflags/chflags.1,v 1.24 2005/05/14 23:23:10 dd Exp $ .\" -.Dd February 24, 2005 +.Dd May 14, 2005 .Dt CHFLAGS 1 .Os .Sh NAME @@ -40,6 +40,7 @@ .Nd change file flags .Sh SYNOPSIS .Nm +.Op Fl h .Oo .Fl R .Op Fl H | Fl L | Fl P @@ -61,6 +62,11 @@ .Fl R option is specified, symbolic links on the command line are followed. (Symbolic links encountered in the tree traversal are not followed.) +.It Fl h +If the +.Ar file +is a symbolic link, +change the mode of the link itself rather than the file to which it points. .It Fl L If the .Fl R @@ -114,11 +120,12 @@ clear the nodump flag (owner or super-user only) .El .Pp -Symbolic links do not have flags, so unless the -.Fl H +Unless the +.Fl H , +.Fl L , or -.Fl L -option is set, +.Fl h +options are given, .Nm on a symbolic link always succeeds and has no effect. The ==== //depot/projects/tty/bin/chflags/chflags.c#5 (text+ko) ==== @@ -40,7 +40,7 @@ #endif #include -__FBSDID("$FreeBSD: src/bin/chflags/chflags.c,v 1.22 2005/01/10 08:39:20 imp Exp $"); +__FBSDID("$FreeBSD: src/bin/chflags/chflags.c,v 1.23 2005/05/14 23:23:10 dd Exp $"); #include #include @@ -62,11 +62,12 @@ FTSENT *p; u_long clear, set; long val; - int Hflag, Lflag, Rflag, ch, fts_options, oct, rval; + int Hflag, Lflag, Rflag, hflag, ch, fts_options, oct, rval; char *flags, *ep; + int (*change_flags)(const char *, unsigned long); - Hflag = Lflag = Rflag = 0; - while ((ch = getopt(argc, argv, "HLPR")) != -1) + Hflag = Lflag = Rflag = hflag = 0; + while ((ch = getopt(argc, argv, "HLPRh")) != -1) switch (ch) { case 'H': Hflag = 1; @@ -82,6 +83,9 @@ case 'R': Rflag = 1; break; + case 'h': + hflag = 1; + break; case '?': default: usage(); @@ -94,6 +98,9 @@ if (Rflag) { fts_options = FTS_PHYSICAL; + if (hflag) + errx(1, "the -R and -h options " + "may not be specified together"); if (Hflag) fts_options |= FTS_COMFOLLOW; if (Lflag) { @@ -103,6 +110,12 @@ } else fts_options = FTS_LOGICAL; + /* XXX: Why don't chflags and lchflags have compatible prototypes? */ + if (hflag) + change_flags = (int (*)(const char *, unsigned long))lchflags; + else + change_flags = chflags; + flags = *argv; if (*flags >= '0' && *flags <= '7') { errno = 0; @@ -147,17 +160,20 @@ * don't point to anything and ones that we found * doing a physical walk. */ - continue; + if (!hflag) + continue; + /* FALLTHROUGH */ default: break; } if (oct) { - if (!chflags(p->fts_accpath, set)) + if (!(*change_flags)(p->fts_accpath, set)) continue; } else { p->fts_statp->st_flags |= set; p->fts_statp->st_flags &= clear; - if (!chflags(p->fts_accpath, (u_long)p->fts_statp->st_flags)) + if (!(*change_flags)(p->fts_accpath, + (u_long)p->fts_statp->st_flags)) continue; } warn("%s", p->fts_path); @@ -172,6 +188,6 @@ usage(void) { (void)fprintf(stderr, - "usage: chflags [-R [-H | -L | -P]] flags file ...\n"); + "usage: chflags [-h] [-R [-H | -L | -P]] flags file ...\n"); exit(1); } ==== //depot/projects/tty/contrib/tcp_wrappers/hosts_access.c#2 (text+ko) ==== @@ -16,7 +16,7 @@ * * Author: Wietse Venema, Eindhoven University of Technology, The Netherlands. * - * $FreeBSD: src/contrib/tcp_wrappers/hosts_access.c,v 1.4 2000/07/14 17:15:33 ume Exp $ + * $FreeBSD: src/contrib/tcp_wrappers/hosts_access.c,v 1.5 2005/05/13 16:31:08 ume Exp $ */ #ifndef lint @@ -366,11 +366,9 @@ return NO; memcpy(&addr, res->ai_addr, sizeof(addr)); freeaddrinfo(res); -#ifdef NI_WITHSCOPEID if (pat.sin6_scope_id != 0 && addr.sin6_scope_id != pat.sin6_scope_id) return NO; -#endif return (!memcmp(&pat.sin6_addr, &addr.sin6_addr, sizeof(struct in6_addr))); return (ret); @@ -472,10 +470,8 @@ if ((mask_len = atoi(mask_tok)) < 0 || mask_len > 128) return NO; -#ifdef NI_WITHSCOPEID if (net.sin6_scope_id != 0 && addr.sin6_scope_id != net.sin6_scope_id) return NO; -#endif while (mask_len > 0) { if (mask_len < 32) { mask = htonl(~(0xffffffff >> mask_len)); ==== //depot/projects/tty/contrib/tcp_wrappers/socket.c#3 (text+ko) ==== @@ -14,7 +14,7 @@ * * Author: Wietse Venema, Eindhoven University of Technology, The Netherlands. * - * $FreeBSD: src/contrib/tcp_wrappers/socket.c,v 1.7 2003/12/27 14:58:00 ceri Exp $ + * $FreeBSD: src/contrib/tcp_wrappers/socket.c,v 1.8 2005/05/13 16:31:08 ume Exp $ */ #ifndef lint @@ -32,11 +32,7 @@ #include #include -#ifdef INET6 -#ifndef NI_WITHSCOPEID -#define NI_WITHSCOPEID 0 -#endif -#else +#ifndef INET6 extern char *inet_ntoa(); #endif @@ -159,7 +155,7 @@ : sizeof(struct sockaddr_in6); #endif getnameinfo(sin, salen, host->addr, sizeof(host->addr), - NULL, 0, NI_NUMERICHOST | NI_WITHSCOPEID); + NULL, 0, NI_NUMERICHOST); #else struct sockaddr_in *sin = host->sin; @@ -211,7 +207,7 @@ } if (ap) err = getnameinfo(sin, salen, hname, sizeof(hname), - NULL, 0, NI_WITHSCOPEID | NI_NAMEREQD); + NULL, 0, NI_NAMEREQD); } if (!err) { @@ -316,7 +312,7 @@ */ getnameinfo(sin, salen, hname, sizeof(hname), - NULL, 0, NI_NUMERICHOST | NI_WITHSCOPEID); + NULL, 0, NI_NUMERICHOST); tcpd_warn("host name/address mismatch: %s != %.*s", hname, STRING_LENGTH, (res0->ai_canonname == NULL) ? "" : res0->ai_canonname); ==== //depot/projects/tty/etc/mtree/BSD.local.dist#10 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/etc/mtree/BSD.local.dist,v 1.114 2005/03/22 18:29:41 krion Exp $ +# $FreeBSD: src/etc/mtree/BSD.local.dist,v 1.115 2005/05/13 04:06:04 marcus Exp $ # # Please see the file src/etc/mtree/README before making changes to this file. # @@ -20,6 +20,8 @@ lib .. libdata + pkgconfig + .. .. libexec .. ==== //depot/projects/tty/games/fortune/datfiles/fortunes#13 (text+ko) ==== @@ -1,5 +1,5 @@ This fortune brought to you by: -$FreeBSD: src/games/fortune/datfiles/fortunes,v 1.175 2005/04/13 06:11:49 phk Exp $ +$FreeBSD: src/games/fortune/datfiles/fortunes,v 1.176 2005/05/13 15:51:56 phk Exp $ % ======================================================================= @@ -26330,9 +26330,6 @@ some means abridged, it will soon fall into disuse. -- Philip Hale, Boston music critic, 1837 % -If builders built buildings the way programmers wrote programs, -then the first woodpecker to come along would destroy civilization. -% If built in great numbers, motels will be used for nothing but illegal purposes. -- J. Edgar Hoover @@ -55237,6 +55234,7 @@ Weinberg's Second Law: If builders built buildings the way programmers wrote programs, then the first woodpecker that came along would destroy civilization. + -- Gerald Weinberg % Weiner's Law of Libraries: There are no answers, only cross references. ==== //depot/projects/tty/gnu/usr.bin/grep/dfa.c#4 (text+ko) ==== @@ -18,7 +18,7 @@ /* Written June, 1988 by Mike Haertel Modified July, 1988 by Arthur David Olson to assist BMG speedups */ -/* $FreeBSD: src/gnu/usr.bin/grep/dfa.c,v 1.19 2004/07/04 16:25:41 tjr Exp $ */ +/* $FreeBSD: src/gnu/usr.bin/grep/dfa.c,v 1.21 2005/05/14 03:18:20 tjr Exp $ */ #ifdef HAVE_CONFIG_H #include @@ -2552,6 +2552,8 @@ } /* match with a character? */ + if (case_fold) + wc = towlower (wc); for (i = 0; inchars; i++) { if (wc == work_mbc->chars[i]) @@ -2747,8 +2749,7 @@ match needs to be verified by a backtracking matcher. Otherwise we store a 0 in *backref. */ size_t -dfaexec (struct dfa *d, char const *begin, size_t size, int *backref, - struct mb_cache *mb_cache) +dfaexec (struct dfa *d, char const *begin, size_t size, int *backref) { register int s; /* Current state. */ register unsigned char const *p; /* Current input character. */ @@ -2780,79 +2781,43 @@ #ifdef MBS_SUPPORT if (MB_CUR_MAX > 1) { + int remain_bytes, i; buf_begin = begin; buf_end = end; - if (mb_cache && mb_cache->mblen_buf && mb_cache->wcs_buf && - begin > mb_cache->orig_buf && - (begin + size) <= (mb_cache->orig_buf + mb_cache->len)) + + /* initialize mblen_buf, and inputwcs. */ + MALLOC(mblen_buf, unsigned char, end - (unsigned char const *)begin + 2); + MALLOC(inputwcs, wchar_t, end - (unsigned char const *)begin + 2); + memset(&mbs, 0, sizeof(mbstate_t)); + remain_bytes = 0; + for (i = 0; i < end - (unsigned char const *)begin + 1; i++) { - /* The cache can help us. */ - MALLOC(mblen_buf, unsigned char, size + 2); - MALLOC(inputwcs, wchar_t, size + 2); - memcpy (mblen_buf, - mb_cache->mblen_buf + (begin - mb_cache->orig_buf), - (size + 2) * sizeof (unsigned char)); - memcpy (inputwcs, - mb_cache->wcs_buf + (begin - mb_cache->orig_buf), - (size + 2) * sizeof (wchar_t)); - mblen_buf[size + 1] = 0; - inputwcs[size + 1] = 0; - } - else - { - int remain_bytes, i; - - /* initialize mblen_buf, and inputwcs. */ - MALLOC(mblen_buf, unsigned char, end - (unsigned char const *)begin + 2); - MALLOC(inputwcs, wchar_t, end - (unsigned char const *)begin + 2); - memset(&mbs, 0, sizeof(mbstate_t)); - remain_bytes = 0; - for (i = 0; i < end - (unsigned char const *)begin + 1; i++) + if (remain_bytes == 0) { - if (remain_bytes == 0) + remain_bytes + = mbrtowc(inputwcs + i, begin + i, + end - (unsigned char const *)begin - i + 1, &mbs); + if (remain_bytes <= 1) { - remain_bytes - = mbrtowc(inputwcs + i, begin + i, - end - (unsigned char const *)begin - i + 1, &mbs); - if (remain_bytes <= 1) - { - remain_bytes = 0; - inputwcs[i] = (wchar_t)begin[i]; - mblen_buf[i] = 0; - } - else - { - mblen_buf[i] = remain_bytes; - remain_bytes--; - } + remain_bytes = 0; + inputwcs[i] = (wchar_t)begin[i]; + mblen_buf[i] = 0; } else { mblen_buf[i] = remain_bytes; - inputwcs[i] = 0; remain_bytes--; } } - mblen_buf[i] = 0; - inputwcs[i] = 0; /* sentinel */ - - if (mb_cache) + else { - /* Populate the cache. */ - mb_cache->len = size; - mb_cache->orig_buf = begin; - if (mb_cache->mblen_buf) - free (mb_cache->mblen_buf); - if (mb_cache->wcs_buf) - free (mb_cache->wcs_buf); - MALLOC(mb_cache->mblen_buf, unsigned char, size + 2); - MALLOC(mb_cache->wcs_buf, wchar_t, size + 2); - memcpy (mb_cache->mblen_buf, mblen_buf, - (size + 2) * sizeof (unsigned char)); - memcpy (mb_cache->wcs_buf, inputwcs, - (size + 2) * sizeof (wchar_t)); + mblen_buf[i] = remain_bytes; + inputwcs[i] = 0; + remain_bytes--; } } + mblen_buf[i] = 0; + inputwcs[i] = 0; /* sentinel */ } #endif /* MBS_SUPPORT */ ==== //depot/projects/tty/gnu/usr.bin/grep/dfa.h#3 (text+ko) ==== @@ -17,15 +17,13 @@ /* Written June, 1988 by Mike Haertel */ -/* $FreeBSD: src/gnu/usr.bin/grep/dfa.h,v 1.8 2004/07/04 16:16:59 tjr Exp $ */ +/* $FreeBSD: src/gnu/usr.bin/grep/dfa.h,v 1.9 2005/05/14 03:02:22 tjr Exp $ */ /* FIXME: 2. We should not export so much of the DFA internals. In addition to clobbering modularity, we eat up valuable name space. */ -#include "mbcache.h" - #ifdef __STDC__ # ifndef _PTR_T # define _PTR_T @@ -407,8 +405,7 @@ order to verify backreferencing; otherwise the flag will be cleared. Returns (size_t) -1 if no match is found, or the offset of the first character after the first & shortest matching string in the buffer. */ -extern size_t dfaexec PARAMS ((struct dfa *, char const *, size_t, int *, - struct mb_cache *)); +extern size_t dfaexec PARAMS ((struct dfa *, char const *, size_t, int *)); /* Free the storage held by the components of a struct dfa. */ extern void dfafree PARAMS ((struct dfa *)); ==== //depot/projects/tty/gnu/usr.bin/grep/grep.c#5 (text+ko) ==== @@ -19,7 +19,7 @@ /* Written July 1992 by Mike Haertel. */ /* Builtin decompression 1997 by Wolfram Schneider . */ -/* $FreeBSD: src/gnu/usr.bin/grep/grep.c,v 1.28 2005/02/13 23:07:30 obrien Exp $ */ +/* $FreeBSD: src/gnu/usr.bin/grep/grep.c,v 1.31 2005/05/14 05:35:04 tjr Exp $ */ #ifdef HAVE_CONFIG_H # include @@ -198,8 +198,7 @@ /* Functions we'll use to search. */ static void (*compile) PARAMS ((char const *, size_t)); -static size_t (*execute) PARAMS ((char const *, size_t, struct mb_cache *, - size_t *, int)); +static size_t (*execute) PARAMS ((char const *, size_t, size_t *, int)); /* Like error, but suppress the diagnostic if requested. */ static void @@ -584,7 +583,7 @@ } static void -prline (char const *beg, char const *lim, int sep, struct mb_cache *mb_cache) +prline (char const *beg, char const *lim, int sep) { if (out_file) printf ("%s%c", filename, sep & filename_mask); @@ -607,8 +606,7 @@ { size_t match_size; size_t match_offset; - while ((match_offset = (*execute) (beg, lim - beg, mb_cache, - &match_size, 1)) + while ((match_offset = (*execute) (beg, lim - beg, &match_size, 1)) != (size_t) -1) { char const *b = beg + match_offset; @@ -633,36 +631,7 @@ { size_t match_size; size_t match_offset; - if(match_icase) - { - /* Yuck, this is tricky */ - char *buf = (char*) xmalloc (lim - beg); - char *ibeg = buf; - char *ilim = ibeg + (lim - beg); - int i; - for (i = 0; i < lim - beg; i++) - ibeg[i] = tolower (beg[i]); - while ((match_offset = (*execute) (ibeg, ilim-ibeg, mb_cache, - &match_size, 1)) - != (size_t) -1) - { - char const *b = beg + match_offset; - if (b == lim) - break; - fwrite (beg, sizeof (char), match_offset, stdout); - printf ("\33[%sm", grep_color); - fwrite (b, sizeof (char), match_size, stdout); - fputs ("\33[00m", stdout); - beg = b + match_size; - ibeg = ibeg + match_offset + match_size; - } - fwrite (beg, 1, lim - beg, stdout); - free (buf); - lastout = lim; - return; - } - while (lim-beg && (match_offset = (*execute) (beg, lim - beg, mb_cache, - &match_size, 1)) + while (lim-beg && (match_offset = (*execute) (beg, lim - beg, &match_size, 1)) != (size_t) -1) { char const *b = beg + match_offset; @@ -678,6 +647,7 @@ fputs ("\33[00m", stdout); beg = b + match_size; } + fputs ("\33[K", stdout); } fwrite (beg, 1, lim - beg, stdout); if (ferror (stdout)) @@ -690,7 +660,7 @@ /* Print pending lines of trailing context prior to LIM. Trailing context ends at the next matching line when OUTLEFT is 0. */ static void -prpending (char const *lim, struct mb_cache *mb_cache) +prpending (char const *lim) { if (!lastout) lastout = bufbeg; @@ -700,10 +670,9 @@ size_t match_size; --pending; if (outleft - || (((*execute) (lastout, nl - lastout, mb_cache, - &match_size, 0) == (size_t) -1) + || (((*execute) (lastout, nl - lastout, &match_size, 0) == (size_t) -1) == !out_invert)) - prline (lastout, nl + 1, '-', mb_cache); + prline (lastout, nl + 1, '-'); else pending = 0; } @@ -712,8 +681,7 @@ /* Print the lines between BEG and LIM. Deal with context crap. If NLINESP is non-null, store a count of lines between BEG and LIM. */ static void -prtext (char const *beg, char const *lim, int *nlinesp, - struct mb_cache *mb_cache) +prtext (char const *beg, char const *lim, int *nlinesp) { static int used; /* avoid printing "--" before any output */ char const *bp, *p; @@ -721,7 +689,7 @@ int i, n; if (!out_quiet && pending > 0) - prpending (beg, mb_cache); + prpending (beg); p = beg; @@ -745,7 +713,7 @@ { char const *nl = memchr (p, eol, beg - p); nl++; - prline (p, nl, '-', mb_cache); + prline (p, nl, '-'); p = nl; } } @@ -758,7 +726,7 @@ char const *nl = memchr (p, eol, lim - p); nl++; if (!out_quiet) - prline (p, nl, ':', mb_cache); + prline (p, nl, ':'); p = nl; } *nlinesp = n; @@ -768,7 +736,7 @@ } else if (!out_quiet) - prline (beg, lim, ':', mb_cache); + prline (beg, lim, ':'); pending = out_quiet ? 0 : out_after; used = 1; @@ -778,7 +746,7 @@ between matching lines if OUT_INVERT is true). Return a count of lines printed. */ static int -grepbuf (char const *beg, char const *lim, struct mb_cache *mb_cache) +grepbuf (char const *beg, char const *lim) { int nlines, n; register char const *p; @@ -787,8 +755,7 @@ nlines = 0; p = beg; - while ((match_offset = (*execute) (p, lim - p, mb_cache, - &match_size, 0)) != (size_t) -1) + while ((match_offset = (*execute) (p, lim - p, &match_size, 0)) != (size_t) -1) { char const *b = p + match_offset; char const *endp = b + match_size; @@ -797,7 +764,7 @@ break; if (!out_invert) { - prtext (b, endp, (int *) 0, mb_cache); + prtext (b, endp, (int *) 0); nlines++; outleft--; if (!outleft || done_on_match) @@ -810,7 +777,7 @@ } else if (p < b) { - prtext (p, b, &n, mb_cache); + prtext (p, b, &n); nlines += n; outleft -= n; if (!outleft) @@ -820,7 +787,7 @@ } if (out_invert && p < lim) { - prtext (p, lim, &n, mb_cache); + prtext (p, lim, &n); nlines += n; outleft -= n; } @@ -840,9 +807,7 @@ char *beg; char *lim; char eol = eolbyte; - struct mb_cache mb_cache; - memset (&mb_cache, 0, sizeof (mb_cache)); if (!reset (fd, file, stats)) return 0; @@ -917,9 +882,9 @@ if (beg < lim) { if (outleft) - nlines += grepbuf (beg, lim, &mb_cache); + nlines += grepbuf (beg, lim); if (pending) - prpending (lim, &mb_cache); + prpending (lim); if((!outleft && !pending) || (nlines && done_on_match && !out_invert)) goto finish_grep; } @@ -947,11 +912,6 @@ totalcc = add_count (totalcc, buflim - bufbeg - save); if (out_line) nlscan (beg); - if (mb_cache.wcs_buf) - free (mb_cache.wcs_buf); - if (mb_cache.mblen_buf) - free (mb_cache.mblen_buf); - memset (&mb_cache, 0, sizeof (mb_cache)); if (! fillbuf (save, stats)) { if (! is_EISDIR (errno, file)) @@ -963,9 +923,9 @@ { *buflim++ = eol; if (outleft) - nlines += grepbuf (bufbeg + save - residue, buflim, &mb_cache); + nlines += grepbuf (bufbeg + save - residue, buflim); if (pending) - prpending (buflim, &mb_cache); + prpending (buflim); } finish_grep: @@ -973,11 +933,6 @@ out_quiet -= not_text; if ((not_text & ~out_quiet) && nlines != 0) printf (_("Binary file %s matches\n"), filename); - - if (mb_cache.wcs_buf) - free (mb_cache.wcs_buf); - if (mb_cache.mblen_buf) - free (mb_cache.mblen_buf); return nlines; } ==== //depot/projects/tty/gnu/usr.bin/grep/grep.h#3 (text+ko) ==== @@ -16,14 +16,12 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -/* $FreeBSD: src/gnu/usr.bin/grep/grep.h,v 1.7 2004/07/04 16:16:59 tjr Exp $ */ +/* $FreeBSD: src/gnu/usr.bin/grep/grep.h,v 1.8 2005/05/14 03:02:22 tjr Exp $ */ #if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 6) || __STRICT_ANSI__ # define __attribute__(x) #endif -#include "mbcache.h" - /* Grep.c expects the matchers vector to be terminated by an entry with a NULL compile, and to contain at least an entry named "default". */ @@ -32,8 +30,7 @@ { char name[8]; void (*compile) PARAMS ((char const *, size_t)); - size_t (*execute) PARAMS ((char const *, size_t, struct mb_cache *, - size_t *, int)); + size_t (*execute) PARAMS ((char const *, size_t, size_t *, int)); } const matchers[]; /* Exported from fgrepmat.c, egrepmat.c, grepmat.c. */ ==== //depot/projects/tty/gnu/usr.bin/grep/search.c#4 (text+ko) ==== @@ -18,11 +18,15 @@ /* Written August 1992 by Mike Haertel. */ -/* $FreeBSD: src/gnu/usr.bin/grep/search.c,v 1.17 2004/07/04 16:16:59 tjr Exp $ */ +/* $FreeBSD: src/gnu/usr.bin/grep/search.c,v 1.22 2005/05/14 06:13:23 tjr Exp $ */ +#ifndef _GNU_SOURCE +# define _GNU_SOURCE 1 +#endif #ifdef HAVE_CONFIG_H # include #endif +#include #include #if defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H && defined HAVE_MBRTOWC /* We can handle multibyte string. */ @@ -41,6 +45,9 @@ #ifdef HAVE_LIBPCRE # include #endif +#ifdef HAVE_LANGINFO_CODESET +# include +#endif #define NCHAR (UCHAR_MAX + 1) @@ -72,23 +79,28 @@ call the regexp matcher at all. */ static int kwset_exact_matches; -#if defined(MBS_SUPPORT) -static char* check_multibyte_string PARAMS ((char const *buf, size_t size, - struct mb_cache *, - char const *orig_buf)); -#endif +/* UTF-8 encoding allows some optimizations that we can't otherwise + assume in a multibyte encoding. */ +static int using_utf8; + static void kwsinit PARAMS ((void)); static void kwsmusts PARAMS ((void)); static void Gcompile PARAMS ((char const *, size_t)); static void Ecompile PARAMS ((char const *, size_t)); -static size_t EGexecute PARAMS ((char const *, size_t, struct mb_cache *, - size_t *, int )); +static size_t EGexecute PARAMS ((char const *, size_t, size_t *, int )); static void Fcompile PARAMS ((char const *, size_t)); -static size_t Fexecute PARAMS ((char const *, size_t, struct mb_cache *, - size_t *, int)); +static size_t Fexecute PARAMS ((char const *, size_t, size_t *, int)); static void Pcompile PARAMS ((char const *, size_t )); -static size_t Pexecute PARAMS ((char const *, size_t, struct mb_cache *, - size_t *, int)); +static size_t Pexecute PARAMS ((char const *, size_t, size_t *, int)); + +void +check_utf8 (void) +{ +#ifdef HAVE_LANGINFO_CODESET + if (strcmp (nl_langinfo (CODESET), "UTF-8") == 0) + using_utf8 = 1; +#endif +} void dfaerror (char const *mesg) @@ -148,78 +160,6 @@ } } -#ifdef MBS_SUPPORT -/* This function allocate the array which correspond to "buf". - Then this check multibyte string and mark on the positions which - are not singlebyte character nor the first byte of a multibyte - character. Caller must free the array. */ -static char* -check_multibyte_string(char const *buf, size_t size, struct mb_cache *mb_cache, - char const *orig_buf) -{ - char *mb_properties = xmalloc(size); - mbstate_t cur_state; - wchar_t wc; - int i; - memset(&cur_state, 0, sizeof(mbstate_t)); - - if (mb_cache && mb_cache->mblen_buf && - orig_buf > mb_cache->orig_buf && - (orig_buf + size) <= (mb_cache->orig_buf + mb_cache->len)) - { - /* The cache can help us. */ - memcpy (mb_properties, - mb_cache->mblen_buf + (orig_buf - mb_cache->orig_buf), - size); - - } - else - { - memset(mb_properties, 0, sizeof(char)*size); - for (i = 0; i < size ;) - { - size_t mbclen; - mbclen = mbrtowc(&wc, buf + i, size - i, &cur_state); - - if (mbclen == (size_t) -1 || mbclen == (size_t) -2 || mbclen == 0) - { - /* An invalid sequence, or a truncated multibyte character. - We treat it as a singlebyte character. */ - mbclen = 1; - } - else if (match_icase) - { - if (iswupper((wint_t)wc)) - { - wc = towlower((wint_t)wc); - wcrtomb(buf + i, wc, &cur_state); - } - } - mb_properties[i] = mbclen; - i += mbclen; - } - - /* Now populate the cache. */ - if (mb_cache) - { - if (mb_cache->wcs_buf) - { - free (mb_cache->wcs_buf); - mb_cache->wcs_buf = NULL; - } - if (mb_cache->mblen_buf) - free (mb_cache->mblen_buf); - mb_cache->len = size; - mb_cache->orig_buf = orig_buf; - mb_cache->mblen_buf = xmalloc (size); - memcpy (mb_cache->mblen_buf, mb_properties, size); - } - } - - return mb_properties; -} -#endif - static void Gcompile (char const *pattern, size_t size) { @@ -228,6 +168,7 @@ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sun May 15 20:06:59 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BA3DC16A4D1; Sun, 15 May 2005 20:06:58 +0000 (GMT) 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 78CC116A4CE for ; Sun, 15 May 2005 20:06:58 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 62A9543DB3 for ; Sun, 15 May 2005 20:06:58 +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 j4FK6sYO020739 for ; Sun, 15 May 2005 20:06:54 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4FK6sSi020736 for perforce@freebsd.org; Sun, 15 May 2005 20:06:54 GMT (envelope-from marcel@freebsd.org) Date: Sun, 15 May 2005 20:06:54 GMT Message-Id: <200505152006.j4FK6sSi020736@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 Subject: PERFORCE change 77018 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, 15 May 2005 20:06:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=77018 Change 77018 by marcel@marcel_nfs on 2005/05/15 20:05:57 Use the new and improved file2c(1) utility to generate a more editable dump and trim the font table to 95 character glyphs. To be more specific: remove [0-31,127-255]. In Unicode speak this comprises: o ASCII punctuation & symbols [U+0020-U+002F,U+003A-U+003F, U+005B-U+0060,U+007B-U+007E], o ASCII digits [U+0030-U+0039], o Uppercase Latin [U+0041-U+005A] o Lowercase Latin [U+0061-U+007A]. Speaking Unicode can only be funny once. It's inherently boring :-) Affected files ... .. //depot/projects/tty/sys/dev/vtc/vtc_font.c#4 edit Differences ... ==== //depot/projects/tty/sys/dev/vtc/vtc_font.c#4 (text+ko) ==== @@ -29,151 +29,100 @@ #include -unsigned char vtc_font_8x16[16 * (256 - 32)] = { -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,24,60,60,60,24,24,24,0,24,24,0,0,0,0, -0,102,102,102,36,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,108,108,254,108,108,108,254,108,108,0,0,0,0, -24,24,124,198,194,192,124,6,6,134,198,124,24,24,0,0, - -0,0,0,0,194,198,12,24,48,96,198,134,0,0,0,0,0,0,56,108,108,56,118,220, -204,204,204,118,0,0,0,0,0,48,48,48,96,0,0,0,0,0,0,0,0,0,0,0,0,0,12,24,48, -48,48,48,48,48,24,12,0,0,0,0,0,0,48,24,12,12,12,12,12,12,24,48,0,0,0,0, -0,0,0,0,0,102,60,255,60,102,0,0,0,0,0,0,0,0,0,0,0,24,24,126,24,24,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,24,24,24,48,0,0,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,24,24,0,0,0,0,0,0,0,0,2,6,12,24,48,96,192,128,0, -0,0,0,0,0,56,108,198,198,214,214,198,198,108,56,0,0,0,0,0,0,24,56,120,24, -24,24,24,24,24,126,0,0,0,0,0,0,124,198,6,12,24,48,96,192,198,254,0,0,0, -0,0,0,124,198,6,6,60,6,6,6,198,124,0,0,0,0,0,0,12,28,60,108,204,254,12, -12,12,30,0,0,0,0,0,0,254,192,192,192,252,6,6,6,198,124,0,0,0,0,0,0,56,96, -192,192,252,198,198,198,198,124,0,0,0,0,0,0,254,198,6,6,12,24,48,48,48, -48,0,0,0,0,0,0,124,198,198,198,124,198,198,198,198,124,0,0,0,0,0,0,124, -198,198,198,126,6,6,6,12,120,0,0,0,0,0,0,0,0,24,24,0,0,0,24,24,0,0,0,0, -0,0,0,0,0,24,24,0,0,0,24,24,48,0,0,0,0,0,0,0,6,12,24,48,96,48,24,12,6,0, -0,0,0,0,0,0,0,0,126,0,0,126,0,0,0,0,0,0,0,0,0,0,96,48,24,12,6,12,24,48, -96,0,0,0,0,0,0,124,198,198,12,24,24,24,0,24,24,0,0,0,0,0,0,0,124,198,198, -222,222,222,220,192,124,0,0,0,0,0,0,16,56,108,198,198,254,198,198,198,198, -0,0,0,0,0,0,252,102,102,102,124,102,102,102,102,252,0,0,0,0,0,0,60,102, -194,192,192,192,192,194,102,60,0,0,0,0,0,0,248,108,102,102,102,102,102, -102,108,248,0,0,0,0,0,0,254,102,98,104,120,104,96,98,102,254,0,0,0,0,0, -0,254,102,98,104,120,104,96,96,96,240,0,0,0,0,0,0,60,102,194,192,192,222, -198,198,102,58,0,0,0,0,0,0,198,198,198,198,254,198,198,198,198,198,0,0, -0,0,0,0,60,24,24,24,24,24,24,24,24,60,0,0,0,0,0,0,30,12,12,12,12,12,204, -204,204,120,0,0,0,0,0,0,230,102,102,108,120,120,108,102,102,230,0,0,0,0, -0,0,240,96,96,96,96,96,96,98,102,254,0,0,0,0,0,0,198,238,254,254,214,198, -198,198,198,198,0,0,0,0,0,0,198,230,246,254,222,206,198,198,198,198,0,0, -0,0,0,0,124,198,198,198,198,198,198,198,198,124,0,0,0,0,0,0,252,102,102, -102,124,96,96,96,96,240,0,0,0,0,0,0,124,198,198,198,198,198,198,214,222, -124,12,14,0,0,0,0,252,102,102,102,124,108,102,102,102,230,0,0,0,0,0,0,124, -198,198,96,56,12,6,198,198,124,0,0,0,0,0,0,126,126,90,24,24,24,24,24,24, -60,0,0,0,0,0,0,198,198,198,198,198,198,198,198,198,124,0,0,0,0,0,0,198, -198,198,198,198,198,198,108,56,16,0,0,0,0,0,0,198,198,198,198,214,214,214, -254,238,108,0,0,0,0,0,0,198,198,108,124,56,56,124,108,198,198,0,0,0,0,0, -0,102,102,102,102,60,24,24,24,24,60,0,0,0,0,0,0,254,198,134,12,24,48,96, -194,198,254,0,0,0,0,0,0,60,48,48,48,48,48,48,48,48,60,0,0,0,0,0,0,0,128, -192,224,112,56,28,14,6,2,0,0,0,0,0,0,60,12,12,12,12,12,12,12,12,60,0,0, -0,0,16,56,108,198,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255, -0,0,0,48,24,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,120,12,124,204,204,204, -118,0,0,0,0,0,0,224,96,96,120,108,102,102,102,102,124,0,0,0,0,0,0,0,0,0, -124,198,192,192,192,198,124,0,0,0,0,0,0,28,12,12,60,108,204,204,204,204, -118,0,0,0,0,0,0,0,0,0,124,198,254,192,192,198,124,0,0,0,0,0,0,28,54,50, -48,120,48,48,48,48,120,0,0,0,0,0,0,0,0,0,118,204,204,204,204,204,124,12, -204,120,0,0,0,224,96,96,108,118,102,102,102,102,230,0,0,0,0,0,0,24,24,0, -56,24,24,24,24,24,60,0,0,0,0,0,0,6,6,0,14,6,6,6,6,6,6,102,102,60,0,0,0, -224,96,96,102,108,120,120,108,102,230,0,0,0,0,0,0,56,24,24,24,24,24,24, -24,24,60,0,0,0,0,0,0,0,0,0,236,254,214,214,214,214,198,0,0,0,0,0,0,0,0, -0,220,102,102,102,102,102,102,0,0,0,0,0,0,0,0,0,124,198,198,198,198,198, -124,0,0,0,0,0,0,0,0,0,220,102,102,102,102,102,124,96,96,240,0,0,0,0,0,0, -118,204,204,204,204,204,124,12,12,30,0,0,0,0,0,0,220,118,102,96,96,96,240, -0,0,0,0,0,0,0,0,0,124,198,96,56,12,198,124,0,0,0,0,0,0,16,48,48,252,48, -48,48,48,54,28,0,0,0,0,0,0,0,0,0,204,204,204,204,204,204,118,0,0,0,0,0, -0,0,0,0,198,198,198,198,198,108,56,0,0,0,0,0,0,0,0,0,198,198,214,214,214, -254,108,0,0,0,0,0,0,0,0,0,198,108,56,56,56,108,198,0,0,0,0,0,0,0,0,0,198, -198,198,198,198,198,126,6,12,248,0,0,0,0,0,0,254,204,24,48,96,198,254,0, -0,0,0,0,0,14,24,24,24,112,24,24,24,24,14,0,0,0,0,0,0,24,24,24,24,24,24, -24,24,24,24,0,0,0,0,0,0,112,24,24,24,14,24,24,24,24,112,0,0,0,0,0,118,220, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,56,108,198,198,198,254,0,0,0,0,0,0, -0,60,102,194,192,192,192,192,194,102,60,24,112,0,0,0,0,204,0,0,204,204, -204,204,204,204,118,0,0,0,0,0,12,24,48,0,124,198,254,192,192,198,124,0, -0,0,0,0,16,56,108,0,120,12,124,204,204,204,118,0,0,0,0,0,0,204,0,0,120, -12,124,204,204,204,118,0,0,0,0,0,96,48,24,0,120,12,124,204,204,204,118, -0,0,0,0,0,56,108,56,0,120,12,124,204,204,204,118,0,0,0,0,0,0,0,0,0,124, -198,192,192,192,198,124,24,112,0,0,0,16,56,108,0,124,198,254,192,192,198, -124,0,0,0,0,0,0,198,0,0,124,198,254,192,192,198,124,0,0,0,0,0,96,48,24, -0,124,198,254,192,192,198,124,0,0,0,0,0,0,102,0,0,56,24,24,24,24,24,60, -0,0,0,0,0,24,60,102,0,56,24,24,24,24,24,60,0,0,0,0,0,96,48,24,0,56,24,24, -24,24,24,60,0,0,0,0,0,198,0,16,56,108,198,198,254,198,198,198,0,0,0,0,56, -108,56,16,56,108,198,198,254,198,198,198,0,0,0,0,12,24,0,254,102,98,104, -120,104,98,102,254,0,0,0,0,0,0,0,0,0,236,54,54,126,216,216,110,0,0,0,0, -0,0,62,108,204,204,254,204,204,204,204,206,0,0,0,0,0,16,56,108,0,124,198, -198,198,198,198,124,0,0,0,0,0,0,198,0,0,124,198,198,198,198,198,124,0,0, -0,0,0,96,48,24,0,124,198,198,198,198,198,124,0,0,0,0,0,48,120,204,0,204, -204,204,204,204,204,118,0,0,0,0,0,96,48,24,0,204,204,204,204,204,204,118, -0,0,0,0,0,0,198,0,0,198,198,198,198,198,198,126,6,12,120,0,0,198,0,124, -198,198,198,198,198,198,198,124,0,0,0,0,0,198,0,198,198,198,198,198,198, -198,198,124,0,0,0,0,0,0,0,0,0,124,206,222,246,230,198,124,0,0,0,0,0,56, -108,100,96,240,96,96,96,96,230,252,0,0,0,0,0,4,124,206,206,214,214,214, -214,230,230,124,64,0,0,0,0,0,0,0,0,198,108,56,56,108,198,0,0,0,0,0,0,14, -27,24,24,24,126,24,24,24,216,112,0,0,0,0,0,24,48,96,0,120,12,124,204,204, -204,118,0,0,0,0,0,12,24,48,0,56,24,24,24,24,24,60,0,0,0,0,0,24,48,96,0, -124,198,198,198,198,198,124,0,0,0,0,0,24,48,96,0,204,204,204,204,204,204, -118,0,0,0,0,0,0,118,220,0,220,102,102,102,102,102,102,0,0,0,0,118,220,0, -198,230,246,254,222,206,198,198,198,0,0,0,0,0,0,60,108,108,62,0,126,0,0, -0,0,0,0,0,0,0,0,56,108,108,56,0,124,0,0,0,0,0,0,0,0,0,0,48,48,0,48,48,96, -192,198,198,124,0,0,0,0,0,0,124,130,178,170,178,170,170,130,124,0,0,0,0, -0,0,0,0,0,0,0,254,6,6,6,6,0,0,0,0,0,0,96,224,98,102,108,24,48,96,220,134, -12,24,62,0,0,0,96,224,98,102,108,24,48,102,206,154,63,6,6,0,0,0,0,24,24, -0,24,24,24,60,60,60,24,0,0,0,0,0,0,0,0,0,54,108,216,108,54,0,0,0,0,0,0, -0,0,0,0,0,216,108,54,108,216,0,0,0,0,0,0,17,68,17,68,17,68,17,68,17,68, -17,68,17,68,17,68,85,170,85,170,85,170,85,170,85,170,85,170,85,170,85,170, -221,119,221,119,221,119,221,119,221,119,221,119,221,119,221,119,24,24,24, -24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,248,24,24,24, -24,24,24,24,24,96,192,16,56,108,198,198,254,198,198,198,198,0,0,0,0,124, -198,16,56,108,198,198,254,198,198,198,198,0,0,0,0,12,6,16,56,108,198,198, -254,198,198,198,198,0,0,0,0,0,0,124,130,154,162,162,162,154,130,124,0,0, -0,0,0,54,54,54,54,54,246,6,246,54,54,54,54,54,54,54,54,54,54,54,54,54,54, -54,54,54,54,54,54,54,54,54,54,0,0,0,0,0,254,6,246,54,54,54,54,54,54,54, -54,54,54,54,54,54,246,6,254,0,0,0,0,0,0,0,0,0,0,24,24,124,198,192,192,198, -124,24,24,0,0,0,0,0,0,0,102,102,60,24,126,24,126,24,24,0,0,0,0,0,0,0,0, -0,0,0,248,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,31,0,0,0,0,0,0,0, -0,24,24,24,24,24,24,24,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,24,24,24,24, -24,24,24,24,24,24,24,24,24,24,24,31,24,24,24,24,24,24,24,24,0,0,0,0,0,0, -0,255,0,0,0,0,0,0,0,0,24,24,24,24,24,24,24,255,24,24,24,24,24,24,24,24, -0,0,118,220,0,120,12,124,204,204,204,118,0,0,0,0,118,220,0,56,108,198,198, -254,198,198,198,198,0,0,0,0,54,54,54,54,54,55,48,63,0,0,0,0,0,0,0,0,0,0, -0,0,0,63,48,55,54,54,54,54,54,54,54,54,54,54,54,54,54,247,0,255,0,0,0,0, -0,0,0,0,0,0,0,0,0,255,0,247,54,54,54,54,54,54,54,54,54,54,54,54,54,55,48, -55,54,54,54,54,54,54,54,54,0,0,0,0,0,255,0,255,0,0,0,0,0,0,0,0,54,54,54, -54,54,247,0,247,54,54,54,54,54,54,54,54,0,0,0,0,198,124,198,198,198,198, -124,198,0,0,0,0,0,0,52,24,44,6,62,102,102,102,102,60,0,0,0,0,0,0,248,108, -102,102,246,102,102,102,108,248,0,0,0,0,56,108,0,254,102,98,104,120,104, -98,102,254,0,0,0,0,0,198,0,254,102,98,104,120,104,98,102,254,0,0,0,0,48, -24,0,254,102,98,104,120,104,98,102,254,0,0,0,0,0,0,0,0,0,56,24,24,24,24, -24,60,0,0,0,0,12,24,0,60,24,24,24,24,24,24,24,60,0,0,0,0,60,102,0,60,24, -24,24,24,24,24,24,60,0,0,0,0,0,102,0,60,24,24,24,24,24,24,24,60,0,0,0,0, -24,24,24,24,24,24,24,248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,24,24,24,24,24, -24,24,24,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, -0,0,0,0,0,0,0,255,255,255,255,255,255,255,255,255,0,24,24,24,24,24,0,0, -24,24,24,24,24,0,0,0,48,24,0,60,24,24,24,24,24,24,24,60,0,0,0,0,255,255, -255,255,255,255,255,0,0,0,0,0,0,0,0,0,24,48,0,124,198,198,198,198,198,198, -198,124,0,0,0,0,0,0,120,204,204,204,216,204,198,198,198,204,0,0,0,0,56, -108,0,124,198,198,198,198,198,198,198,124,0,0,0,0,48,24,0,124,198,198,198, -198,198,198,198,124,0,0,0,0,0,0,118,220,0,124,198,198,198,198,198,124,0, -0,0,0,118,220,0,124,198,198,198,198,198,198,198,124,0,0,0,0,0,0,0,0,0,102, -102,102,102,102,102,124,96,96,192,0,0,0,224,96,96,124,102,102,102,102,102, -124,96,96,240,0,0,0,240,96,124,102,102,102,102,124,96,240,0,0,0,0,24,48, -0,198,198,198,198,198,198,198,198,124,0,0,0,0,56,108,0,198,198,198,198, -198,198,198,198,124,0,0,0,0,48,24,0,198,198,198,198,198,198,198,198,124, -0,0,0,0,0,12,24,48,0,198,198,198,198,198,198,126,6,12,248,0,12,24,0,102, -102,102,102,60,24,24,24,60,0,0,0,0,0,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -12,24,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,254,0,0,0,0,0,0,0,0,0,0, -0,0,24,24,126,24,24,0,0,126,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,0,255,0, -0,224,48,98,54,236,24,48,102,206,154,63,6,6,0,0,0,0,127,219,219,219,123, -27,27,27,27,27,0,0,0,0,0,124,198,96,56,108,198,198,108,56,12,198,124,0, -0,0,0,0,0,0,0,24,0,126,0,24,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,12,120, -0,0,0,56,108,108,56,0,0,0,0,0,0,0,0,0,0,0,0,198,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,0,0,24,56,24,24,24,60,0,0,0,0,0,0,0, -0,0,0,124,6,60,6,6,124,0,0,0,0,0,0,0,0,0,0,60,102,12,24,50,126,0,0,0,0, -0,0,0,0,0,0,0,0,0,126,126,126,126,126,126,126,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0 +unsigned char vtc_font_8x16[95 * 16] = { +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x18,0x3c,0x3c,0x3c,0x18,0x18,0x18,0x00,0x18,0x18,0x00,0x00,0x00,0x00, +0x00,0x66,0x66,0x66,0x24,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x6c,0x6c,0xfe,0x6c,0x6c,0x6c,0xfe,0x6c,0x6c,0x00,0x00,0x00,0x00, +0x18,0x18,0x7c,0xc6,0xc2,0xc0,0x7c,0x06,0x06,0x86,0xc6,0x7c,0x18,0x18,0x00,0x00, +0x00,0x00,0x00,0x00,0xc2,0xc6,0x0c,0x18,0x30,0x60,0xc6,0x86,0x00,0x00,0x00,0x00, +0x00,0x00,0x38,0x6c,0x6c,0x38,0x76,0xdc,0xcc,0xcc,0xcc,0x76,0x00,0x00,0x00,0x00, +0x00,0x30,0x30,0x30,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x0c,0x18,0x30,0x30,0x30,0x30,0x30,0x30,0x18,0x0c,0x00,0x00,0x00,0x00, +0x00,0x00,0x30,0x18,0x0c,0x0c,0x0c,0x0c,0x0c,0x0c,0x18,0x30,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x66,0x3c,0xff,0x3c,0x66,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x7e,0x18,0x18,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x18,0x30,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x02,0x06,0x0c,0x18,0x30,0x60,0xc0,0x80,0x00,0x00,0x00,0x00, +0x00,0x00,0x38,0x6c,0xc6,0xc6,0xd6,0xd6,0xc6,0xc6,0x6c,0x38,0x00,0x00,0x00,0x00, +0x00,0x00,0x18,0x38,0x78,0x18,0x18,0x18,0x18,0x18,0x18,0x7e,0x00,0x00,0x00,0x00, +0x00,0x00,0x7c,0xc6,0x06,0x0c,0x18,0x30,0x60,0xc0,0xc6,0xfe,0x00,0x00,0x00,0x00, +0x00,0x00,0x7c,0xc6,0x06,0x06,0x3c,0x06,0x06,0x06,0xc6,0x7c,0x00,0x00,0x00,0x00, +0x00,0x00,0x0c,0x1c,0x3c,0x6c,0xcc,0xfe,0x0c,0x0c,0x0c,0x1e,0x00,0x00,0x00,0x00, +0x00,0x00,0xfe,0xc0,0xc0,0xc0,0xfc,0x06,0x06,0x06,0xc6,0x7c,0x00,0x00,0x00,0x00, +0x00,0x00,0x38,0x60,0xc0,0xc0,0xfc,0xc6,0xc6,0xc6,0xc6,0x7c,0x00,0x00,0x00,0x00, +0x00,0x00,0xfe,0xc6,0x06,0x06,0x0c,0x18,0x30,0x30,0x30,0x30,0x00,0x00,0x00,0x00, +0x00,0x00,0x7c,0xc6,0xc6,0xc6,0x7c,0xc6,0xc6,0xc6,0xc6,0x7c,0x00,0x00,0x00,0x00, +0x00,0x00,0x7c,0xc6,0xc6,0xc6,0x7e,0x06,0x06,0x06,0x0c,0x78,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x18,0x18,0x00,0x00,0x00,0x18,0x18,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x18,0x18,0x00,0x00,0x00,0x18,0x18,0x30,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x06,0x0c,0x18,0x30,0x60,0x30,0x18,0x0c,0x06,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x7e,0x00,0x00,0x7e,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x60,0x30,0x18,0x0c,0x06,0x0c,0x18,0x30,0x60,0x00,0x00,0x00,0x00, +0x00,0x00,0x7c,0xc6,0xc6,0x0c,0x18,0x18,0x18,0x00,0x18,0x18,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x7c,0xc6,0xc6,0xde,0xde,0xde,0xdc,0xc0,0x7c,0x00,0x00,0x00,0x00, +0x00,0x00,0x10,0x38,0x6c,0xc6,0xc6,0xfe,0xc6,0xc6,0xc6,0xc6,0x00,0x00,0x00,0x00, +0x00,0x00,0xfc,0x66,0x66,0x66,0x7c,0x66,0x66,0x66,0x66,0xfc,0x00,0x00,0x00,0x00, +0x00,0x00,0x3c,0x66,0xc2,0xc0,0xc0,0xc0,0xc0,0xc2,0x66,0x3c,0x00,0x00,0x00,0x00, +0x00,0x00,0xf8,0x6c,0x66,0x66,0x66,0x66,0x66,0x66,0x6c,0xf8,0x00,0x00,0x00,0x00, +0x00,0x00,0xfe,0x66,0x62,0x68,0x78,0x68,0x60,0x62,0x66,0xfe,0x00,0x00,0x00,0x00, +0x00,0x00,0xfe,0x66,0x62,0x68,0x78,0x68,0x60,0x60,0x60,0xf0,0x00,0x00,0x00,0x00, +0x00,0x00,0x3c,0x66,0xc2,0xc0,0xc0,0xde,0xc6,0xc6,0x66,0x3a,0x00,0x00,0x00,0x00, +0x00,0x00,0xc6,0xc6,0xc6,0xc6,0xfe,0xc6,0xc6,0xc6,0xc6,0xc6,0x00,0x00,0x00,0x00, +0x00,0x00,0x3c,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x3c,0x00,0x00,0x00,0x00, +0x00,0x00,0x1e,0x0c,0x0c,0x0c,0x0c,0x0c,0xcc,0xcc,0xcc,0x78,0x00,0x00,0x00,0x00, +0x00,0x00,0xe6,0x66,0x66,0x6c,0x78,0x78,0x6c,0x66,0x66,0xe6,0x00,0x00,0x00,0x00, +0x00,0x00,0xf0,0x60,0x60,0x60,0x60,0x60,0x60,0x62,0x66,0xfe,0x00,0x00,0x00,0x00, +0x00,0x00,0xc6,0xee,0xfe,0xfe,0xd6,0xc6,0xc6,0xc6,0xc6,0xc6,0x00,0x00,0x00,0x00, +0x00,0x00,0xc6,0xe6,0xf6,0xfe,0xde,0xce,0xc6,0xc6,0xc6,0xc6,0x00,0x00,0x00,0x00, +0x00,0x00,0x7c,0xc6,0xc6,0xc6,0xc6,0xc6,0xc6,0xc6,0xc6,0x7c,0x00,0x00,0x00,0x00, +0x00,0x00,0xfc,0x66,0x66,0x66,0x7c,0x60,0x60,0x60,0x60,0xf0,0x00,0x00,0x00,0x00, +0x00,0x00,0x7c,0xc6,0xc6,0xc6,0xc6,0xc6,0xc6,0xd6,0xde,0x7c,0x0c,0x0e,0x00,0x00, +0x00,0x00,0xfc,0x66,0x66,0x66,0x7c,0x6c,0x66,0x66,0x66,0xe6,0x00,0x00,0x00,0x00, +0x00,0x00,0x7c,0xc6,0xc6,0x60,0x38,0x0c,0x06,0xc6,0xc6,0x7c,0x00,0x00,0x00,0x00, +0x00,0x00,0x7e,0x7e,0x5a,0x18,0x18,0x18,0x18,0x18,0x18,0x3c,0x00,0x00,0x00,0x00, +0x00,0x00,0xc6,0xc6,0xc6,0xc6,0xc6,0xc6,0xc6,0xc6,0xc6,0x7c,0x00,0x00,0x00,0x00, +0x00,0x00,0xc6,0xc6,0xc6,0xc6,0xc6,0xc6,0xc6,0x6c,0x38,0x10,0x00,0x00,0x00,0x00, +0x00,0x00,0xc6,0xc6,0xc6,0xc6,0xd6,0xd6,0xd6,0xfe,0xee,0x6c,0x00,0x00,0x00,0x00, +0x00,0x00,0xc6,0xc6,0x6c,0x7c,0x38,0x38,0x7c,0x6c,0xc6,0xc6,0x00,0x00,0x00,0x00, +0x00,0x00,0x66,0x66,0x66,0x66,0x3c,0x18,0x18,0x18,0x18,0x3c,0x00,0x00,0x00,0x00, +0x00,0x00,0xfe,0xc6,0x86,0x0c,0x18,0x30,0x60,0xc2,0xc6,0xfe,0x00,0x00,0x00,0x00, +0x00,0x00,0x3c,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x3c,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x80,0xc0,0xe0,0x70,0x38,0x1c,0x0e,0x06,0x02,0x00,0x00,0x00,0x00, +0x00,0x00,0x3c,0x0c,0x0c,0x0c,0x0c,0x0c,0x0c,0x0c,0x0c,0x3c,0x00,0x00,0x00,0x00, +0x10,0x38,0x6c,0xc6,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0x00,0x00, +0x00,0x30,0x18,0x0c,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x78,0x0c,0x7c,0xcc,0xcc,0xcc,0x76,0x00,0x00,0x00,0x00, +0x00,0x00,0xe0,0x60,0x60,0x78,0x6c,0x66,0x66,0x66,0x66,0x7c,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x7c,0xc6,0xc0,0xc0,0xc0,0xc6,0x7c,0x00,0x00,0x00,0x00, +0x00,0x00,0x1c,0x0c,0x0c,0x3c,0x6c,0xcc,0xcc,0xcc,0xcc,0x76,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x7c,0xc6,0xfe,0xc0,0xc0,0xc6,0x7c,0x00,0x00,0x00,0x00, +0x00,0x00,0x1c,0x36,0x32,0x30,0x78,0x30,0x30,0x30,0x30,0x78,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x76,0xcc,0xcc,0xcc,0xcc,0xcc,0x7c,0x0c,0xcc,0x78,0x00, +0x00,0x00,0xe0,0x60,0x60,0x6c,0x76,0x66,0x66,0x66,0x66,0xe6,0x00,0x00,0x00,0x00, +0x00,0x00,0x18,0x18,0x00,0x38,0x18,0x18,0x18,0x18,0x18,0x3c,0x00,0x00,0x00,0x00, +0x00,0x00,0x06,0x06,0x00,0x0e,0x06,0x06,0x06,0x06,0x06,0x06,0x66,0x66,0x3c,0x00, +0x00,0x00,0xe0,0x60,0x60,0x66,0x6c,0x78,0x78,0x6c,0x66,0xe6,0x00,0x00,0x00,0x00, +0x00,0x00,0x38,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x3c,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0xec,0xfe,0xd6,0xd6,0xd6,0xd6,0xc6,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0xdc,0x66,0x66,0x66,0x66,0x66,0x66,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x7c,0xc6,0xc6,0xc6,0xc6,0xc6,0x7c,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0xdc,0x66,0x66,0x66,0x66,0x66,0x7c,0x60,0x60,0xf0,0x00, +0x00,0x00,0x00,0x00,0x00,0x76,0xcc,0xcc,0xcc,0xcc,0xcc,0x7c,0x0c,0x0c,0x1e,0x00, +0x00,0x00,0x00,0x00,0x00,0xdc,0x76,0x66,0x60,0x60,0x60,0xf0,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x7c,0xc6,0x60,0x38,0x0c,0xc6,0x7c,0x00,0x00,0x00,0x00, +0x00,0x00,0x10,0x30,0x30,0xfc,0x30,0x30,0x30,0x30,0x36,0x1c,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0xcc,0xcc,0xcc,0xcc,0xcc,0xcc,0x76,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0xc6,0xc6,0xc6,0xc6,0xc6,0x6c,0x38,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0xc6,0xc6,0xd6,0xd6,0xd6,0xfe,0x6c,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0xc6,0x6c,0x38,0x38,0x38,0x6c,0xc6,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0xc6,0xc6,0xc6,0xc6,0xc6,0xc6,0x7e,0x06,0x0c,0xf8,0x00, +0x00,0x00,0x00,0x00,0x00,0xfe,0xcc,0x18,0x30,0x60,0xc6,0xfe,0x00,0x00,0x00,0x00, +0x00,0x00,0x0e,0x18,0x18,0x18,0x70,0x18,0x18,0x18,0x18,0x0e,0x00,0x00,0x00,0x00, +0x00,0x00,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x18,0x00,0x00,0x00,0x00, +0x00,0x00,0x70,0x18,0x18,0x18,0x0e,0x18,0x18,0x18,0x18,0x70,0x00,0x00,0x00,0x00, +0x00,0x76,0xdc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, }; From owner-p4-projects@FreeBSD.ORG Sun May 15 22:44:09 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6F9D016A4D1; Sun, 15 May 2005 22:44:09 +0000 (GMT) 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 29C0316A4CE for ; Sun, 15 May 2005 22:44:09 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1076F43DAE for ; Sun, 15 May 2005 22:44: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 j4FMi6fO033498 for ; Sun, 15 May 2005 22:44:06 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4FMi6XJ033495 for perforce@freebsd.org; Sun, 15 May 2005 22:44:06 GMT (envelope-from sam@freebsd.org) Date: Sun, 15 May 2005 22:44:06 GMT Message-Id: <200505152244.j4FMi6XJ033495@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 77023 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, 15 May 2005 22:44:10 -0000 http://perforce.freebsd.org/chv.cgi?CH=77023 Change 77023 by sam@sam_laptop on 2005/05/15 22:43:46 bg scan stuff; may want to change names Affected files ... .. //depot/projects/vap/sbin/ifconfig/Makefile#2 edit .. //depot/projects/vap/sbin/ifconfig/ifieee80211.c#3 edit Differences ... ==== //depot/projects/vap/sbin/ifconfig/Makefile#2 (text+ko) ==== @@ -24,7 +24,7 @@ SRCS+= ifieee80211.c # SIOC[GS]IEEE80211 support SRCS+= ifcarp.c # SIOC[GS]VH support -SRCS+= ifpfsync.c # pfsync(4) support +#SRCS+= ifpfsync.c # pfsync(4) support .if !defined(RELEASE_CRUNCH) SRCS+= af_ipx.c # IPX support ==== //depot/projects/vap/sbin/ifconfig/ifieee80211.c#3 (text+ko) ==== @@ -422,6 +422,12 @@ } static void +set80211bgscan(const char *val, int d, int s, const struct afswtch *rafp) +{ + set80211(s, IEEE80211_IOC_BGSCAN, d, 0, NULL); +} + +static void set80211chanlist(const char *val, int d, int s, const struct afswtch *rafp) { struct ieee80211req_chanlist chanlist; @@ -592,6 +598,18 @@ set80211(s, IEEE80211_IOC_BEACON_INTERVAL, atoi(val), 0, NULL); } +static +DECL_CMD_FUNC(set80211bgscanidle, val, d) +{ + set80211(s, IEEE80211_IOC_BGSCAN_IDLE, atoi(val), 0, NULL); +} + +static +DECL_CMD_FUNC(set80211bgscanintvl, val, d) +{ + set80211(s, IEEE80211_IOC_BGSCAN_INTERVAL, atoi(val), 0, NULL); +} + static void set80211macmac(int s, int op, const char *val) { @@ -1339,7 +1357,7 @@ { static const uint8_t zerobssid[IEEE80211_ADDR_LEN]; enum ieee80211_opmode opmode = get80211opmode(s); - int i, num, wpa, wme; + int i, num, wpa, wme, bgscan; struct ieee80211req ireq; u_int8_t data[32]; const struct ieee80211_channel *c; @@ -1642,6 +1660,26 @@ } } } + ireq.i_type = IEEE80211_IOC_BGSCAN; + if (ioctl(s, SIOCG80211, &ireq) != -1) { + bgscan = ireq.i_val; + if (!bgscan) + LINE_CHECK("%c-bgscan", spacer); + else if (verbose) + LINE_CHECK("%cbgscan", spacer); + if (bgscan || verbose) { + ireq.i_type = IEEE80211_IOC_BGSCAN_IDLE; + if (ioctl(s, SIOCG80211, &ireq) != -1) + LINE_CHECK("%cbgscanidle %u", + spacer, ireq.i_val / 1000); + } + if (bgscan || verbose) { + ireq.i_type = IEEE80211_IOC_BGSCAN_INTERVAL; + if (ioctl(s, SIOCG80211, &ireq) != -1) + LINE_CHECK("%cbgscanintvl %u", + spacer, ireq.i_val); + } + } } ireq.i_type = IEEE80211_IOC_BEACON_INTERVAL; if (ioctl(s, SIOCG80211, &ireq) != -1) { @@ -1863,6 +1901,10 @@ DEF_CMD("-turbo", 0, set80211turbo), DEF_CMD_ARG("wlandev", set80211wlandev), DEF_CMD_ARG("wlanmode", set80211wlanmode), + DEF_CMD("bgscan", 1, set80211bgscan), + DEF_CMD("-bgscan", 0, set80211bgscan), + DEF_CMD_ARG("bgscanidle", set80211bgscanidle), + DEF_CMD_ARG("bgscanintvl", set80211bgscanintvl), }; static struct afswtch af_ieee80211 = { .af_name = "af_ieee80211", From owner-p4-projects@FreeBSD.ORG Sun May 15 22:45:14 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4BE4B16A4D2; Sun, 15 May 2005 22:45:14 +0000 (GMT) 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 1E71916A4CE for ; Sun, 15 May 2005 22:45:14 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E823D43D41 for ; Sun, 15 May 2005 22:45:13 +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 j4FMj8b7033576 for ; Sun, 15 May 2005 22:45:08 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4FMj8mT033573 for perforce@freebsd.org; Sun, 15 May 2005 22:45:08 GMT (envelope-from sam@freebsd.org) Date: Sun, 15 May 2005 22:45:08 GMT Message-Id: <200505152245.j4FMj8mT033573@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 77024 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, 15 May 2005 22:45:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=77024 Change 77024 by sam@sam_laptop on 2005/05/15 22:44:42 undo local mod Affected files ... .. //depot/projects/vap/sbin/ifconfig/Makefile#3 edit Differences ... ==== //depot/projects/vap/sbin/ifconfig/Makefile#3 (text+ko) ==== @@ -24,7 +24,7 @@ SRCS+= ifieee80211.c # SIOC[GS]IEEE80211 support SRCS+= ifcarp.c # SIOC[GS]VH support -#SRCS+= ifpfsync.c # pfsync(4) support +SRCS+= ifpfsync.c # pfsync(4) support .if !defined(RELEASE_CRUNCH) SRCS+= af_ipx.c # IPX support From owner-p4-projects@FreeBSD.ORG Sun May 15 23:29:04 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 98A6E16A4D1; Sun, 15 May 2005 23:29:03 +0000 (GMT) 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 6FA2916A4CE for ; Sun, 15 May 2005 23:29:03 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 412E743D9C for ; Sun, 15 May 2005 23:29: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 j4FNT2l4035100 for ; Sun, 15 May 2005 23:29:02 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4FNT2iD035097 for perforce@freebsd.org; Sun, 15 May 2005 23:29:02 GMT (envelope-from marcel@freebsd.org) Date: Sun, 15 May 2005 23:29:02 GMT Message-Id: <200505152329.j4FNT2iD035097@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 Subject: PERFORCE change 77026 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, 15 May 2005 23:29:04 -0000 http://perforce.freebsd.org/chv.cgi?CH=77026 Change 77026 by marcel@marcel_nfs on 2005/05/15 23:28:21 IFC @77022 Affected files ... .. //depot/projects/tty/include/netdb.h#7 integrate .. //depot/projects/tty/lib/libc/net/getaddrinfo.c#13 integrate .. //depot/projects/tty/lib/libc/net/getnetbydns.c#4 integrate .. //depot/projects/tty/lib/libc/net/getnetbyht.c#5 integrate .. //depot/projects/tty/lib/libc/net/getnetbynis.c#3 integrate .. //depot/projects/tty/lib/libc/net/getnetnamadr.c#5 integrate .. //depot/projects/tty/lib/libc/net/netdb_private.h#4 integrate .. //depot/projects/tty/share/man/man4/carp.4#2 integrate .. //depot/projects/tty/share/man/man4/iwi.4#2 integrate .. //depot/projects/tty/sys/compat/ndis/kern_ndis.c#7 integrate .. //depot/projects/tty/sys/compat/ndis/ndis_var.h#6 integrate .. //depot/projects/tty/sys/contrib/ipfilter/netinet/ip_compat.h#8 integrate .. //depot/projects/tty/sys/dev/if_ndis/if_ndis.c#7 integrate .. //depot/projects/tty/sys/dev/if_ndis/if_ndisvar.h#7 integrate .. //depot/projects/tty/sys/dev/iwi/if_iwi.c#2 integrate .. //depot/projects/tty/sys/dev/iwi/if_iwivar.h#2 integrate .. //depot/projects/tty/sys/dev/syscons/daemon/daemon_saver.c#3 integrate .. //depot/projects/tty/sys/dev/syscons/snake/snake_saver.c#3 integrate .. //depot/projects/tty/sys/dev/syscons/star/star_saver.c#2 integrate .. //depot/projects/tty/sys/dev/syscons/syscons.c#13 integrate .. //depot/projects/tty/sys/netinet/ip_carp.c#2 integrate .. //depot/projects/tty/sys/netinet6/icmp6.c#10 integrate .. //depot/projects/tty/sys/netinet6/in6_src.c#7 integrate .. //depot/projects/tty/sys/netinet6/ip6_fw.c#10 integrate .. //depot/projects/tty/sys/netinet6/ip6_output.c#10 integrate .. //depot/projects/tty/sys/sys/consio.h#3 integrate .. //depot/projects/tty/tools/regression/usr.bin/file2c/regress.1.out#1 branch .. //depot/projects/tty/tools/regression/usr.bin/file2c/regress.2.out#1 branch .. //depot/projects/tty/tools/regression/usr.bin/file2c/regress.3.out#1 branch .. //depot/projects/tty/tools/regression/usr.bin/file2c/regress.4.out#1 branch .. //depot/projects/tty/tools/regression/usr.bin/file2c/regress.5.out#1 branch .. //depot/projects/tty/tools/regression/usr.bin/file2c/regress.6.out#1 branch .. //depot/projects/tty/tools/regression/usr.bin/file2c/regress.7.out#1 branch .. //depot/projects/tty/tools/regression/usr.bin/file2c/regress.8.out#1 branch .. //depot/projects/tty/tools/regression/usr.bin/file2c/regress.9.out#1 branch .. //depot/projects/tty/tools/regression/usr.bin/file2c/regress.out#2 delete .. //depot/projects/tty/tools/regression/usr.bin/file2c/regress.sh#3 integrate .. //depot/projects/tty/usr.bin/file2c/Makefile#2 integrate .. //depot/projects/tty/usr.bin/file2c/file2c.1#2 integrate .. //depot/projects/tty/usr.bin/file2c/file2c.c#2 integrate .. //depot/projects/tty/usr.sbin/ndiscvt/inf.c#3 integrate .. //depot/projects/tty/usr.sbin/vidcontrol/vidcontrol.c#4 integrate Differences ... ==== //depot/projects/tty/include/netdb.h#7 (text+ko) ==== @@ -55,7 +55,7 @@ /* * @(#)netdb.h 8.1 (Berkeley) 6/2/93 * From: Id: netdb.h,v 8.9 1996/11/19 08:39:29 vixie Exp $ - * $FreeBSD: src/include/netdb.h,v 1.35 2005/04/27 19:12:56 ume Exp $ + * $FreeBSD: src/include/netdb.h,v 1.36 2005/05/15 20:15:15 ume Exp $ */ #ifndef _NETDB_H_ @@ -63,6 +63,8 @@ #include #include +#include +#include #ifndef _SIZE_T_DECLARED typedef __size_t size_t; @@ -74,6 +76,11 @@ #define _SOCKLEN_T_DECLARED #endif +#ifndef _UINT32_T_DECLARED +typedef __uint32_t uint32_t; +#define _UINT32_T_DECLARED +#endif + #ifndef _PATH_HEQUIV # define _PATH_HEQUIV "/etc/hosts.equiv" #endif @@ -99,14 +106,27 @@ }; /* - * Assumption here is that a network number - * fits in an unsigned long -- probably a poor one. + * Note: n_net used to be an unsigned long integer. + * In XNS5, and subsequently in POSIX-2001 it was changed to an + * uint32_t. + * To accomodate for this while preserving binary compatibility with + * the old interface, we prepend or append 32 bits of padding, + * depending on the (LP64) architecture's endianness. + * + * This should be deleted the next time the libc major number is + * incremented. */ struct netent { char *n_name; /* official name of net */ char **n_aliases; /* alias list */ int n_addrtype; /* net address type */ - unsigned long n_net; /* network # */ +#if __LONG_BIT == 64 && _BYTE_ORDER == _BIG_ENDIAN + uint32_t __n_pad0; /* ABI compatibility */ +#endif + uint32_t n_net; /* network # */ +#if __LONG_BIT == 64 && _BYTE_ORDER == _LITTLE_ENDIAN + uint32_t __n_pad0; /* ABI compatibility */ +#endif }; struct servent { @@ -122,12 +142,29 @@ int p_proto; /* protocol # */ }; +/* + * Note: ai_addrlen used to be a size_t, per RFC 2553. + * In XNS5.2, and subsequently in POSIX-2001 and RFC 3493 it was + * changed to a socklen_t. + * To accomodate for this while preserving binary compatibility with the + * old interface, we prepend or append 32 bits of padding, depending on + * the (LP64) architecture's endianness. + * + * This should be deleted the next time the libc major number is + * incremented. + */ struct addrinfo { int ai_flags; /* AI_PASSIVE, AI_CANONNAME, AI_NUMERICHOST */ int ai_family; /* PF_xxx */ int ai_socktype; /* SOCK_xxx */ int ai_protocol; /* 0 or IPPROTO_xxx for IPv4 and IPv6 */ - size_t ai_addrlen; /* length of ai_addr */ +#if __LONG_BIT == 64 && _BYTE_ORDER == _BIG_ENDIAN + uint32_t __ai_pad0; /* ABI compatibility */ +#endif + socklen_t ai_addrlen; /* length of ai_addr */ +#if __LONG_BIT == 64 && _BYTE_ORDER == _LITTLE_ENDIAN + uint32_t __ai_pad0; /* ABI compatibility */ +#endif char *ai_canonname; /* canonical name for hostname */ struct sockaddr *ai_addr; /* binary address */ struct addrinfo *ai_next; /* next structure in linked list */ @@ -225,7 +262,11 @@ struct hostent *gethostent(void); struct hostent *getipnodebyaddr(const void *, size_t, int, int *); struct hostent *getipnodebyname(const char *, int, int, int *); -struct netent *getnetbyaddr(unsigned long, int); +#if __LONG_BIT == 64 +struct netent *getnetbyaddr(unsigned long, int); /* ABI compatibility */ +#else +struct netent *getnetbyaddr(uint32_t, int); +#endif struct netent *getnetbyname(const char *); struct netent *getnetent(void); int getnetgrent(char **, char **, char **); ==== //depot/projects/tty/lib/libc/net/getaddrinfo.c#13 (text+ko) ==== @@ -63,7 +63,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/net/getaddrinfo.c,v 1.68 2005/05/14 19:43:10 gnn Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/net/getaddrinfo.c,v 1.69 2005/05/15 20:15:15 ume Exp $"); #include "namespace.h" #include @@ -135,7 +135,7 @@ static const struct afd { int a_af; int a_addrlen; - int a_socklen; + socklen_t a_socklen; int a_off; const char *a_addrany; const char *a_loopback; @@ -1352,6 +1352,9 @@ memset(ai->ai_addr, 0, (size_t)afd->a_socklen); ai->ai_addr->sa_len = afd->a_socklen; ai->ai_addrlen = afd->a_socklen; +#if __LONG_BIT == 64 + ai->__ai_pad0 = 0; /* ABI compatibility */ +#endif ai->ai_addr->sa_family = ai->ai_family = afd->a_af; p = (char *)(void *)(ai->ai_addr); #ifdef FAITH ==== //depot/projects/tty/lib/libc/net/getnetbydns.c#4 (text+ko) ==== @@ -62,7 +62,7 @@ static char sccsid[] = "@(#)gethostnamadr.c 8.1 (Berkeley) 6/4/93"; #endif /* LIBC_SCCS and not lint */ #include -__FBSDID("$FreeBSD: src/lib/libc/net/getnetbydns.c,v 1.29 2005/04/28 15:32:55 ume Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/net/getnetbydns.c,v 1.30 2005/05/15 20:15:15 ume Exp $"); #include #include @@ -259,6 +259,9 @@ break; } ne->n_aliases++; +#if __LONG_BIT == 64 + ne->__n_pad0 = 0; /* ABI compatibility */ +#endif return 0; } h_errno = TRY_AGAIN; @@ -268,7 +271,7 @@ int _dns_getnetbyaddr(void *rval, void *cb_data, va_list ap) { - unsigned long net; + uint32_t net; int net_type; struct netent *ne; struct netent_data *ned; @@ -276,9 +279,9 @@ int nn, anslen, error; querybuf *buf; char qbuf[MAXDNAME]; - unsigned long net2; + uint32_t net2; - net = va_arg(ap, unsigned long); + net = va_arg(ap, uint32_t); net_type = va_arg(ap, int); ne = va_arg(ap, struct netent *); ned = va_arg(ap, struct netent_data *); @@ -327,12 +330,13 @@ error = getnetanswer(buf, anslen, BYADDR, ne, ned); free(buf); if (error == 0) { - unsigned u_net = net; /* maybe net should be unsigned ? */ - /* Strip trailing zeros */ - while ((u_net & 0xff) == 0 && u_net != 0) - u_net >>= 8; - ne->n_net = u_net; + while ((net & 0xff) == 0 && net != 0) + net >>= 8; + ne->n_net = net; +#if __LONG_BIT == 64 + ne->__n_pad0 = 0; /* ABI compatibility */ +#endif return NS_SUCCESS; } return NS_NOTFOUND; ==== //depot/projects/tty/lib/libc/net/getnetbyht.c#5 (text+ko) ==== @@ -46,7 +46,7 @@ static char orig_rcsid[] = "From: Id: getnetent.c,v 8.4 1997/06/01 20:34:37 vixie Exp"; #endif /* LIBC_SCCS and not lint */ #include -__FBSDID("$FreeBSD: src/lib/libc/net/getnetbyht.c,v 1.14 2005/04/29 17:36:54 ume Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/net/getnetbyht.c,v 1.15 2005/05/15 20:15:15 ume Exp $"); #include #include @@ -122,6 +122,9 @@ if (p != NULL) *p++ = '\0'; ne->n_net = inet_network(cp); +#if __LONG_BIT == 64 + ne->__n_pad0 = 0; /* ABI compatibility */ +#endif ne->n_addrtype = AF_INET; q = ne->n_aliases = ned->net_aliases; if (p != NULL) { @@ -191,13 +194,13 @@ int _ht_getnetbyaddr(void *rval, void *cb_data, va_list ap) { - unsigned long net; + uint32_t net; int type; struct netent *ne; struct netent_data *ned; int error; - net = va_arg(ap, unsigned long); + net = va_arg(ap, uint32_t); type = va_arg(ap, int); ne = va_arg(ap, struct netent *); ned = va_arg(ap, struct netent_data *); ==== //depot/projects/tty/lib/libc/net/getnetbynis.c#3 (text+ko) ==== @@ -24,7 +24,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/net/getnetbynis.c,v 1.17 2005/04/29 17:36:54 ume Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/net/getnetbynis.c,v 1.18 2005/05/15 20:15:15 ume Exp $"); #include #include @@ -99,6 +99,9 @@ cp++; ne->n_net = inet_network(cp); +#if __LONG_BIT == 64 + ne->__n_pad0 = 0; /* ABI compatibility */ +#endif ne->n_addrtype = AF_INET; q = ne->n_aliases = ned->net_aliases; @@ -149,22 +152,22 @@ } -int +int _nis_getnetbyaddr(void *rval, void *cb_data, va_list ap) { #ifdef YP - unsigned long addr; + uint32_t addr; int af; struct netent *ne; struct netent_data *ned; char *str, *cp; - unsigned long net2; + uint32_t net2; int nn; unsigned int netbr[4]; char buf[MAXDNAME]; int error; - addr = va_arg(ap, unsigned long); + addr = va_arg(ap, uint32_t); af = va_arg(ap, int); ne = va_arg(ap, struct netent *); ned = va_arg(ap, struct netent_data *); ==== //depot/projects/tty/lib/libc/net/getnetnamadr.c#5 (text+ko) ==== @@ -24,7 +24,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/net/getnetnamadr.c,v 1.19 2005/04/28 15:32:55 ume Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/net/getnetnamadr.c,v 1.20 2005/05/15 20:15:15 ume Exp $"); #include "namespace.h" #include "reentrant.h" @@ -120,7 +120,8 @@ } int -getnetbyaddr_r(u_long addr, int af, struct netent *ne, struct netent_data *ned) +getnetbyaddr_r(uint32_t addr, int af, struct netent *ne, + struct netent_data *ned) { int rval; @@ -164,13 +165,17 @@ } struct netent * -getnetbyaddr(u_long addr, int af) +#if __LONG_BIT == 64 +getnetbyaddr(u_long addr, int af) /* ABI compatibility */ +#else +getnetbyaddr(uint32_t addr, int af) +#endif { struct netdata *nd; if ((nd = __netdata_init()) == NULL) return NULL; - if (getnetbyaddr_r(addr, af, &nd->net, &nd->data) != 0) + if (getnetbyaddr_r((uint32_t)addr, af, &nd->net, &nd->data) != 0) return NULL; return &nd->net; } ==== //depot/projects/tty/lib/libc/net/netdb_private.h#4 (text+ko) ==== @@ -22,20 +22,14 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/libc/net/netdb_private.h,v 1.8 2005/04/28 18:52:40 ume Exp $ + * $FreeBSD: src/lib/libc/net/netdb_private.h,v 1.9 2005/05/15 20:15:15 ume Exp $ */ #ifndef _NETDB_PRIVATE_H_ #define _NETDB_PRIVATE_H_ -#include #include /* XXX: for FILE */ -#ifndef _UINT32_T_DECLARED -typedef __uint32_t uint32_t; -#define _UINT32_T_DECLARED -#endif - #define _MAXALIASES 35 #define _MAXLINELEN 1024 #define _MAXADDRS 35 @@ -155,7 +149,7 @@ int gethostbyname2_r(const char *, int, struct hostent *, struct hostent_data *); int gethostent_r(struct hostent *, struct hostent_data *); -int getnetbyaddr_r(unsigned long addr, int af, struct netent *, +int getnetbyaddr_r(uint32_t addr, int af, struct netent *, struct netent_data *); int getnetbyname_r(const char *, struct netent *, struct netent_data *); int getnetent_r(struct netent *, struct netent_data *); ==== //depot/projects/tty/share/man/man4/carp.4#2 (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/carp.4,v 1.6 2005/04/07 15:28:14 glebius Exp $ +.\" $FreeBSD: src/share/man/man4/carp.4,v 1.7 2005/05/15 01:58:32 glebius Exp $ .\" -.Dd April 7, 2005 +.Dd May 15, 2005 .Dt CARP 4 .Os .Sh NAME @@ -128,6 +128,15 @@ .It Va net.inet.carp.arpbalance Balance local traffic using ARP. Disabled by default. +.It Va net.inet.carp.suppress_preempt +A read only value showing the status of preemption suppression. +Preemption can be suppressed if link on an interface is down +or when +.Xr pfsync 4 +interface is not synchronized. +Value of 0 means that preemption is not suppressed, since no +problems are detected. +Every problem increments suppression counter. .El .Sh EXAMPLES For firewalls and routers with multiple interfaces, it is desirable to @@ -216,8 +225,9 @@ itself will always be balanced to the same virtual host. .Sh SEE ALSO .Xr inet 4 , +.Xr ifconfig 8 , +.Xr pfsync 4 , .Xr rc.conf 5 , -.Xr ifconfig 8 , .Xr sysctl 8 .Sh HISTORY The ==== //depot/projects/tty/share/man/man4/iwi.4#2 (text+ko) ==== @@ -1,4 +1,4 @@ -.\" $FreeBSD: src/share/man/man4/iwi.4,v 1.1 2005/04/18 18:47:35 damien Exp $ +.\" $FreeBSD: src/share/man/man4/iwi.4,v 1.2 2005/05/15 21:08:51 imp Exp $ .\" .\" Copyright (c) 2004, 2005 .\" Damien Bergamini . All rights reserved. @@ -49,6 +49,14 @@ .Pp For more information on configuring this device, see .Xr ifconfig 8 . +.Pp +This driver requires firmware to be loaded before it will work. +You need to obtain +.Xr iwicontrol 8 +from the IWI web page listed below to accomplish loading the firmware +before +.Xr ifconfig 8 +will work. .Sh EXAMPLES Join an existing BSS network (ie: connect to an access point): .Pp @@ -74,6 +82,11 @@ .Bl -diag .It "iwi%d: device timeout" The driver will reset the hardware. This should not happen. +.It "iwi%d: Please load firmware" +The required firmeware has not been loaded into the card, and threfore +the card cannot operate. Load the firmware with +.Xr iwicontrol 8 +before proceeding. .El .Sh SEE ALSO .Xr an 4 , @@ -83,7 +96,7 @@ .Xr wi 4 , .Xr wlan 4 , .Xr ifconfig 8 , -.Xr iwicontrol 8, +.Xr iwicontrol 8 , .Xr wicontrol 8 .Rs .%T The IWI Web Page ==== //depot/projects/tty/sys/compat/ndis/kern_ndis.c#7 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/ndis/kern_ndis.c,v 1.80 2005/05/05 06:14:59 wpaul Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/ndis/kern_ndis.c,v 1.81 2005/05/15 04:27:58 wpaul Exp $"); #include #include @@ -1095,15 +1095,6 @@ sc = arg; - NDIS_LOCK(sc); - adapter = sc->ndis_block->nmb_miniportadapterctx; - if (adapter == NULL) { - NDIS_UNLOCK(sc); - return(EIO); - } - - sc->ndis_block->nmb_devicectx = NULL; - #ifdef NDIS_REAP_TIMERS /* * Drivers are sometimes very lax about cancelling all @@ -1124,6 +1115,15 @@ KeFlushQueuedDpcs(); #endif + NDIS_LOCK(sc); + adapter = sc->ndis_block->nmb_miniportadapterctx; + if (adapter == NULL) { + NDIS_UNLOCK(sc); + return(EIO); + } + + sc->ndis_block->nmb_devicectx = NULL; + /* * The adapter context is only valid after the init * handler has been called, and is invalid once the @@ -1420,6 +1420,8 @@ return(status); block = fdo->do_devext; + + block->nmb_filterdbs.nf_ethdb = block; block->nmb_deviceobj = fdo; block->nmb_physdeviceobj = pdo; block->nmb_nextdeviceobj = IoAttachDeviceToDeviceStack(fdo, pdo); @@ -1434,6 +1436,22 @@ sc->ndis_block = block; sc->ndis_chars = IoGetDriverObjectExtension(drv, (void *)1); + /* + * If the driver has a MiniportTransferData() function, + * we should allocate a private RX packet pool. + */ + + if (sc->ndis_chars->nmc_transferdata_func != NULL) { + NdisAllocatePacketPool(&status, &block->nmb_rxpool, + 32, PROTOCOL_RESERVED_SIZE_IN_PACKET); + if (status != NDIS_STATUS_SUCCESS) { + IoDetachDevice(block->nmb_nextdeviceobj); + IoDeleteDevice(fdo); + return(status); + } + INIT_LIST_HEAD((&block->nmb_packetlist)); + } + /* Give interrupt handling priority over timers. */ IoInitializeDpcRequest(fdo, kernndis_functbl[6].ipt_wrap); KeSetImportanceDpc(&fdo->do_dpc, KDPC_IMPORTANCE_HIGH); @@ -1470,6 +1488,8 @@ TAILQ_REMOVE(&ndis_devhead, sc->ndis_block, link); + if (sc->ndis_chars->nmc_transferdata_func != NULL) + NdisFreePacketPool(sc->ndis_block->nmb_rxpool); fdo = sc->ndis_block->nmb_deviceobj; IoDetachDevice(sc->ndis_block->nmb_nextdeviceobj); IoDeleteDevice(fdo); ==== //depot/projects/tty/sys/compat/ndis/ndis_var.h#6 (text+ko) ==== @@ -29,7 +29,7 @@ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF * THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/compat/ndis/ndis_var.h,v 1.39 2005/05/05 06:14:59 wpaul Exp $ + * $FreeBSD: src/sys/compat/ndis/ndis_var.h,v 1.40 2005/05/15 04:27:58 wpaul Exp $ */ #ifndef _NDIS_VAR_H_ @@ -1144,6 +1144,20 @@ typedef struct ndis_packet_oob ndis_packet_oob; +/* + * Our protocol private region for handling ethernet. + * We need this to stash some of the things returned + * by NdisMEthIndicateReceive(). + */ + +struct ndis_ethpriv { + void *nep_ctx; /* packet context */ + long nep_offset; /* residual data to transfer */ + void *nep_pad[2]; +}; + +typedef struct ndis_ethpriv ndis_ethpriv; + #define PROTOCOL_RESERVED_SIZE_IN_PACKET (4 * sizeof(void *)) struct ndis_packet { @@ -1164,7 +1178,7 @@ } np_macrsvd; } u; uint32_t *np_rsvd[2]; - uint8_t nm_protocolreserved[PROTOCOL_RESERVED_SIZE_IN_PACKET]; + uint8_t np_protocolreserved[PROTOCOL_RESERVED_SIZE_IN_PACKET]; /* * This next part is probably wrong, but we need some place @@ -1204,6 +1218,8 @@ typedef struct ndis_filterdbs ndis_filterdbs; +#define nf_ethdb u.nf_ethdb + enum ndis_medium { NdisMedium802_3, NdisMedium802_5, @@ -1482,6 +1498,7 @@ ndis_status nmb_getstat; ndis_status nmb_setstat; ndis_miniport_timer *nmb_timerlist; + ndis_handle nmb_rxpool; TAILQ_ENTRY(ndis_miniport_block) link; }; ==== //depot/projects/tty/sys/contrib/ipfilter/netinet/ip_compat.h#8 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/contrib/ipfilter/netinet/ip_compat.h,v 1.26 2005/04/28 21:36:30 darrenr Exp $ */ +/* $FreeBSD: src/sys/contrib/ipfilter/netinet/ip_compat.h,v 1.27 2005/05/15 03:34:17 darrenr Exp $ */ /* * Copyright (C) 1993-2001, 2003 by Darren Reed. @@ -6,7 +6,7 @@ * See the IPFILTER.LICENCE file for details on licencing. * * @(#)ip_compat.h 1.8 1/14/96 - * $FreeBSD: src/sys/contrib/ipfilter/netinet/ip_compat.h,v 1.26 2005/04/28 21:36:30 darrenr Exp $ + * $FreeBSD: src/sys/contrib/ipfilter/netinet/ip_compat.h,v 1.27 2005/05/15 03:34:17 darrenr Exp $ * Id: ip_compat.h,v 2.142.2.25 2005/03/28 09:33:36 darrenr Exp */ @@ -769,7 +769,7 @@ /* F R E E B S D */ /* ----------------------------------------------------------------------- */ #ifdef __FreeBSD__ -# if defined(_KERNEL) && !defined(IPFILTER_LKM) && !defined(KLD_MODULE) +# if defined(_KERNEL) # if (__FreeBSD_version >= 500000) # include "opt_bpf.h" # else @@ -1222,7 +1222,7 @@ * For BSD kernels, if bpf is in the kernel, enable ipfilter to use bpf in * filter rules. */ -#if !defined(IPFILTER_BPF) && ((NBPF > 0) || (NBPFILTER > 0)) +#if !defined(IPFILTER_BPF) && ((NBPF > 0) || (NBPFILTER > 0) || (DEV_BPF >0)) # define IPFILTER_BPF #endif ==== //depot/projects/tty/sys/dev/if_ndis/if_ndis.c#7 (text+ko) ==== @@ -33,7 +33,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/if_ndis/if_ndis.c,v 1.92 2005/05/08 09:36:16 wpaul Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/if_ndis/if_ndis.c,v 1.93 2005/05/15 04:27:59 wpaul Exp $"); #include "opt_bdg.h" @@ -99,6 +99,12 @@ static void ndis_txeof (ndis_handle, ndis_packet *, ndis_status); static void ndis_rxeof (ndis_handle, ndis_packet **, uint32_t); +static void ndis_rxeof_eth (ndis_handle, ndis_handle, char *, void *, + uint32_t, void *, uint32_t, uint32_t); +static void ndis_rxeof_done (ndis_handle); +static void ndis_rxeof_xfr (kdpc *, ndis_handle, void *, void *); +static void ndis_rxeof_xfr_done (ndis_handle, ndis_packet *, + uint32_t, uint32_t); static void ndis_linksts (ndis_handle, ndis_status, void *, uint32_t); static void ndis_linksts_done (ndis_handle); @@ -106,6 +112,10 @@ static funcptr ndis_txeof_wrap; static funcptr ndis_rxeof_wrap; +static funcptr ndis_rxeof_eth_wrap; +static funcptr ndis_rxeof_done_wrap; +static funcptr ndis_rxeof_xfr_wrap; +static funcptr ndis_rxeof_xfr_done_wrap; static funcptr ndis_linksts_wrap; static funcptr ndis_linksts_done_wrap; static funcptr ndis_ticktask_wrap; @@ -165,6 +175,14 @@ break; windrv_wrap((funcptr)ndis_rxeof, &ndis_rxeof_wrap, 3, WINDRV_WRAP_STDCALL); + windrv_wrap((funcptr)ndis_rxeof_eth, &ndis_rxeof_eth_wrap, + 8, WINDRV_WRAP_STDCALL); + windrv_wrap((funcptr)ndis_rxeof_done, &ndis_rxeof_done_wrap, + 1, WINDRV_WRAP_STDCALL); + windrv_wrap((funcptr)ndis_rxeof_xfr, &ndis_rxeof_xfr_wrap, + 4, WINDRV_WRAP_STDCALL); + windrv_wrap((funcptr)ndis_rxeof_xfr_done, + &ndis_rxeof_xfr_done_wrap, 4, WINDRV_WRAP_STDCALL); windrv_wrap((funcptr)ndis_txeof, &ndis_txeof_wrap, 3, WINDRV_WRAP_STDCALL); windrv_wrap((funcptr)ndis_linksts, &ndis_linksts_wrap, @@ -185,6 +203,10 @@ /* fallthrough */ case MOD_SHUTDOWN: windrv_unwrap(ndis_rxeof_wrap); + windrv_unwrap(ndis_rxeof_eth_wrap); + windrv_unwrap(ndis_rxeof_done_wrap); + windrv_unwrap(ndis_rxeof_xfr_wrap); + windrv_unwrap(ndis_rxeof_xfr_done_wrap); windrv_unwrap(ndis_txeof_wrap); windrv_unwrap(ndis_linksts_wrap); windrv_unwrap(ndis_linksts_done_wrap); @@ -520,6 +542,9 @@ /* Install our RX and TX interrupt handlers. */ sc->ndis_block->nmb_senddone_func = ndis_txeof_wrap; sc->ndis_block->nmb_pktind_func = ndis_rxeof_wrap; + sc->ndis_block->nmb_ethrxindicate_func = ndis_rxeof_eth_wrap; + sc->ndis_block->nmb_ethrxdone_func = ndis_rxeof_done_wrap; + sc->ndis_block->nmb_tdcond_func = ndis_rxeof_xfr_done_wrap; /* Call driver's init routine. */ if (ndis_init_nic(sc)) { @@ -812,6 +837,8 @@ (work_item_func)ndis_starttask_wrap, ifp); NdisInitializeWorkItem(&sc->ndis_resetitem, (work_item_func)ndis_resettask_wrap, sc); + KeInitializeDpc(&sc->ndis_rxdpc, ndis_rxeof_xfr_wrap, sc->ndis_block); + fail: if (error) @@ -947,6 +974,204 @@ } /* + * The following bunch of routines are here to support drivers that + * use the NdisMEthIndicateReceive()/MiniportTransferData() mechanism. + */ + +static void +ndis_rxeof_eth(adapter, ctx, addr, hdr, hdrlen, lookahead, lookaheadlen, pktlen) + ndis_handle adapter; + ndis_handle ctx; + char *addr; + void *hdr; + uint32_t hdrlen; + void *lookahead; + uint32_t lookaheadlen; + uint32_t pktlen; +{ + ndis_miniport_block *block; + uint8_t irql; + uint32_t status; + ndis_buffer *b; + ndis_packet *p; + struct mbuf *m; + ndis_ethpriv *priv; + + block = adapter; + + m = m_getcl(M_DONTWAIT, MT_DATA, M_PKTHDR); + + if (m == NULL) { + NdisFreePacket(p); + return; + } + + /* Save the data provided to us so far. */ + + m->m_len = lookaheadlen + hdrlen; + m->m_pkthdr.len = pktlen + hdrlen; + m->m_next = NULL; + m_copyback(m, 0, hdrlen, hdr); + m_copyback(m, hdrlen, lookaheadlen, lookahead); + + /* Now create a fake NDIS_PACKET to hold the data */ + + NdisAllocatePacket(&status, &p, block->nmb_rxpool); + + if (status != NDIS_STATUS_SUCCESS) { + m_freem(m); + return; + } + + p->np_m0 = m; + + b = IoAllocateMdl(m->m_data, m->m_pkthdr.len, FALSE, FALSE, NULL); + + if (b == NULL) { + NdisFreePacket(p); + m_freem(m); + return; + } + + p->np_private.npp_head = p->np_private.npp_tail = b; + p->np_private.npp_totlen = m->m_pkthdr.len; + + /* Save the packet RX context somewhere. */ + priv = (ndis_ethpriv *)&p->np_protocolreserved; + priv->nep_ctx = ctx; + + KeAcquireSpinLock(&block->nmb_lock, &irql); + + INSERT_LIST_TAIL((&block->nmb_packetlist), + ((list_entry *)&p->u.np_clrsvd.np_miniport_rsvd)); + + KeReleaseSpinLock(&block->nmb_lock, irql); + + return; +} + +static void +ndis_rxeof_done(adapter) + ndis_handle adapter; +{ + struct ndis_softc *sc; + ndis_miniport_block *block; + + block = adapter; + + /* Schedule transfer/RX of queued packets. */ + + sc = device_get_softc(block->nmb_physdeviceobj->do_devext); + + KeInsertQueueDpc(&sc->ndis_rxdpc, NULL, NULL); + + return; +} + +/* + * Runs at DISPATCH_LEVEL. + */ +static void +ndis_rxeof_xfr(dpc, adapter, sysarg1, sysarg2) + kdpc *dpc; + ndis_handle adapter; + void *sysarg1; + void *sysarg2; +{ + ndis_miniport_block *block; + struct ndis_softc *sc; + ndis_packet *p; + list_entry *l; + uint32_t status; + ndis_ethpriv *priv; + struct ifnet *ifp; + struct mbuf *m; + + block = adapter; + sc = device_get_softc(block->nmb_physdeviceobj->do_devext); + ifp = &sc->arpcom.ac_if; + + KeAcquireSpinLockAtDpcLevel(&block->nmb_lock); + + l = block->nmb_packetlist.nle_flink; + while(l != &block->nmb_packetlist) { + REMOVE_LIST_HEAD((&block->nmb_packetlist)); + p = CONTAINING_RECORD(l, ndis_packet, + u.np_clrsvd.np_miniport_rsvd); + + priv = (ndis_ethpriv *)&p->np_protocolreserved; + m = p->np_m0; + p->np_softc = sc; + p->np_m0 = NULL; + + KeReleaseSpinLockFromDpcLevel(&block->nmb_lock); + + status = MSCALL6(sc->ndis_chars->nmc_transferdata_func, + p, &p->np_private.npp_totlen, block, priv->nep_ctx, + m->m_len, m->m_pkthdr.len - m->m_len); + + KeAcquireSpinLockAtDpcLevel(&block->nmb_lock); + + /* + * If status is NDIS_STATUS_PENDING, do nothing and + * wait for a callback to the ndis_rxeof_xfr_done() + * handler. + */ + + m->m_len = m->m_pkthdr.len; + m->m_pkthdr.rcvif = ifp; + + if (status == NDIS_STATUS_SUCCESS) { + IoFreeMdl(p->np_private.npp_head); + NdisFreePacket(p); + ifp->if_ipackets++; + (*ifp->if_input)(ifp, m); + } + + if (status == NDIS_STATUS_FAILURE) + m_freem(m); + + /* Advance to next packet */ + l = block->nmb_packetlist.nle_flink; + } + + KeReleaseSpinLockFromDpcLevel(&block->nmb_lock); + + return; +} + +static void +ndis_rxeof_xfr_done(adapter, packet, status, len) + ndis_handle adapter; + ndis_packet *packet; + uint32_t status; + uint32_t len; +{ + ndis_miniport_block *block; + struct ndis_softc *sc; + struct ifnet *ifp; + struct mbuf *m; + + block = adapter; + sc = device_get_softc(block->nmb_physdeviceobj->do_devext); + ifp = &sc->arpcom.ac_if; + + m = packet->np_m0; + IoFreeMdl(packet->np_private.npp_head); + NdisFreePacket(packet); + + if (status != NDIS_STATUS_SUCCESS) { + m_freem(m); + return; + } + + m->m_len = m->m_pkthdr.len; + m->m_pkthdr.rcvif = ifp; + ifp->if_ipackets++; + (*ifp->if_input)(ifp, m); + return; +} +/* * A frame has been uploaded: pass the resulting mbuf chain up to * the higher level protocols. * ==== //depot/projects/tty/sys/dev/if_ndis/if_ndisvar.h#7 (text+ko) ==== @@ -29,7 +29,7 @@ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF * THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/if_ndis/if_ndisvar.h,v 1.21 2005/05/05 03:56:09 wpaul Exp $ + * $FreeBSD: src/sys/dev/if_ndis/if_ndisvar.h,v 1.22 2005/05/15 04:27:59 wpaul Exp $ */ #define NDIS_DEFAULT_NODENAME "FreeBSD NDIS node" @@ -127,6 +127,7 @@ ndis_work_item ndis_tickitem; ndis_work_item ndis_startitem; ndis_work_item ndis_resetitem; + kdpc ndis_rxdpc; bus_dma_tag_t ndis_parent_tag; struct ndis_shmem *ndis_shlist; bus_dma_tag_t ndis_mtag; ==== //depot/projects/tty/sys/dev/iwi/if_iwi.c#2 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/dev/iwi/if_iwi.c,v 1.1 2005/04/18 18:47:36 damien Exp $ */ +/* $FreeBSD: src/sys/dev/iwi/if_iwi.c,v 1.2 2005/05/15 21:02:51 imp Exp $ */ /*- * Copyright (c) 2004, 2005 @@ -28,7 +28,7 @@ */ #include >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon May 16 05:49:43 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7601216A4D1; Mon, 16 May 2005 05:49:43 +0000 (GMT) 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 381A216A4CE for ; Mon, 16 May 2005 05:49:43 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1DCFA43D3F for ; Mon, 16 May 2005 05:49:43 +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 j4G5nhLV065919 for ; Mon, 16 May 2005 05:49:43 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4G5ngpv065916 for perforce@freebsd.org; Mon, 16 May 2005 05:49:42 GMT (envelope-from marcel@freebsd.org) Date: Mon, 16 May 2005 05:49:42 GMT Message-Id: <200505160549.j4G5ngpv065916@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 Subject: PERFORCE change 77033 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: Mon, 16 May 2005 05:49:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=77033 Change 77033 by marcel@marcel_nfs on 2005/05/16 05:49:17 Hook up the terminal emulator bits. It compiles, but that's about it. Time to flesh this out now that the low-level console (output) works. Affected files ... .. //depot/projects/tty/sys/conf/files#29 edit .. //depot/projects/tty/sys/dev/vtc/vtc_te.h#2 edit .. //depot/projects/tty/sys/dev/vtc/vtc_te_if.m#2 edit .. //depot/projects/tty/sys/dev/vtc/vtc_te_vt102.c#2 edit Differences ... ==== //depot/projects/tty/sys/conf/files#29 (text+ko) ==== @@ -919,6 +919,9 @@ dev/vtc/vtc_core.c optional vtc dev/vtc/vtc_font.c optional vtc dev/vtc/vtc_logo.c optional vtc +dev/vtc/vtc_te.c optional vtc +dev/vtc/vtc_te_if.m optional vtc +dev/vtc/vtc_te_vt102.c optional vtc dev/vtc/hw/gmch/gmch.c optional gmch vtc dev/vtc/hw/gmch/gmch_bus_pci.c optional gmch vtc pci dev/vtc/hw/vga/vga.c optional vga vtc ==== //depot/projects/tty/sys/dev/vtc/vtc_te.h#2 (text+ko) ==== @@ -41,4 +41,9 @@ struct vtc_te_class *sc_class; }; +/* + * TE support functions. + */ +int vtc_te_bell(struct vtc_te_softc *); + #endif /* !_DEV_VTC_TE_H_ */ ==== //depot/projects/tty/sys/dev/vtc/vtc_te_if.m#2 (text+ko) ==== @@ -25,9 +25,10 @@ # # $FreeBSD$ -#include #include #include +#include + #include # The VTC Terminal Emulator (TE) interface. @@ -37,5 +38,5 @@ # write() - write to the terminal METHOD int write { struct vtc_te_softc *this; - wchar_t unicode; + __wchar_t unicode; }; ==== //depot/projects/tty/sys/dev/vtc/vtc_te_vt102.c#2 (text+ko) ==== @@ -29,6 +29,9 @@ #include #include +#include + +#include #include "vtc_te_if.h" @@ -44,13 +47,19 @@ char cbuf[16]; }; -static int vt102_write(struct vtc_te_softc *, wchar_t); +static int vt102_write(struct vtc_te_softc *, __wchar_t); -static kobj_method_t vtc_te_vt102_methods[] = { +static kobj_method_t vt102_methods[] = { KOBJMETHOD(vtc_te_write, vt102_write), { 0, 0 } }; +struct vtc_te_class vt102_class = { + "vt102 class", + vt102_methods, + sizeof(struct vt102_softc), +}; + static int vt102_answerback(struct vt102_softc *vt102) { @@ -58,18 +67,12 @@ } static int -vt102_bell(struct vt102_softc *vt102) +vt102_print(struct vt102_softc *vt102, __wchar_t wc) { return (0); } static int -vt102_print(struct vt102_softc *vt102, wchar_t wc) -{ - return (0); -} - -static int vt102_ctlchr(struct vt102_softc *vt102, char cc) { int error = 0; @@ -79,7 +82,7 @@ error = vt102_answerback(vt102); break; case 0x07: /* BEL */ - error = vt102_bell(vt102); + error = vtc_te_bell(&vt102->base); break; case 0x08: /* BS */ break; @@ -124,7 +127,7 @@ } static int -vt102_write(struct vtc_te_softc *sc, wchar_t wc) +vt102_write(struct vtc_te_softc *sc, __wchar_t wc) { struct vt102_softc *vt102 = (struct vt102_softc *)sc; int error; @@ -153,7 +156,7 @@ return (0); /* Save the character. Is there a maximum for the control string? */ - vt102->cstr[vt102->count++] = (char)wc; + vt102->cbuf[vt102->count++] = (char)wc; /* That's it for intermediate characters. */ if (wc <= 0x2F) @@ -177,6 +180,6 @@ error = vt102_escape(vt102); else error = vt102_control(vt102); - vt102->state == C_NORMAL; + vt102->state = S_NORMAL; return (error); } From owner-p4-projects@FreeBSD.ORG Mon May 16 05:57:54 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7037B16A4D1; Mon, 16 May 2005 05:57:54 +0000 (GMT) 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 4A92216A4CE for ; Mon, 16 May 2005 05:57:54 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1F0F843DAE for ; Mon, 16 May 2005 05:57:54 +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 j4G5vrjE066271 for ; Mon, 16 May 2005 05:57:54 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4G5vrEx066268 for perforce@freebsd.org; Mon, 16 May 2005 05:57:53 GMT (envelope-from marcel@freebsd.org) Date: Mon, 16 May 2005 05:57:53 GMT Message-Id: <200505160557.j4G5vrEx066268@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 Subject: PERFORCE change 77035 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: Mon, 16 May 2005 05:57:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=77035 Change 77035 by marcel@marcel_nfs on 2005/05/16 05:57:46 Actually add vtc_te.c -- support functions. Affected files ... .. //depot/projects/tty/sys/dev/vtc/vtc_te.c#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Mon May 16 14:11:58 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 47DDA16A4D1; Mon, 16 May 2005 14:11:58 +0000 (GMT) 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 F415416A4CE for ; Mon, 16 May 2005 14:11:57 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AFF9A43D5E for ; Mon, 16 May 2005 14:11:57 +0000 (GMT) (envelope-from areisse@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4GEBvEZ010590 for ; Mon, 16 May 2005 14:11:57 GMT (envelope-from areisse@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4GEBvoL010577 for perforce@freebsd.org; Mon, 16 May 2005 14:11:57 GMT (envelope-from areisse@nailabs.com) Date: Mon, 16 May 2005 14:11:57 GMT Message-Id: <200505161411.j4GEBvoL010577@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to areisse@nailabs.com using -f From: Andrew Reisse To: Perforce Change Reviews Subject: PERFORCE change 77050 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: Mon, 16 May 2005 14:11:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=77050 Change 77050 by areisse@areisse_ibook on 2005/05/16 14:11:05 Bring over libselinux from the sebsd branch. This will eventually replace libsedarwin as it has replaced libsebsd on FreeBSD. The new library supports more than the old, and the interface will be source-compatible with selinux. Affected files ... .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/ChangeLog#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/LICENSE#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/Makefile#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/VERSION#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/include/Makefile#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/include/selinux/av_inherit.h#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/include/selinux/av_perm_to_string.h#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/include/selinux/av_permissions.h#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/include/selinux/avc.h#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/include/selinux/class_to_string.h#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/include/selinux/common_perm_to_string.h#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/include/selinux/context.h#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/include/selinux/flask.h#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/include/selinux/get_context_list.h#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/include/selinux/get_default_type.h#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/include/selinux/selinux.h#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/libselinux.spec#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/Makefile#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/avc_add_callback.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/avc_audit.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/avc_av_stats.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/avc_cache_stats.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/avc_cleanup.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/avc_context_to_sid.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/avc_destroy.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/avc_entry_ref_init.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/avc_has_perm.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/avc_has_perm_noaudit.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/avc_init.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/avc_reset.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/avc_sid_stats.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/avc_sid_to_context.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/freecon.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/freeconary.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/fsetfilecon.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/get_default_context.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/get_ordered_context_list.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/getcon.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/getexeccon.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/getfilecon.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/getfscreatecon.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/getpidcon.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/getprevcon.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/is_selinux_enabled.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/lsetfilecon.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/manual_user_enter_context.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/query_user_context.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/security_check_context.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/security_compute_av.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/security_compute_create.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/security_compute_relabel.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/security_compute_user.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/security_getenforce.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/security_load_policy.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/security_policyvers.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/security_setenforce.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/selinux_getenforcemode.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/selinux_policyroot.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/setexeccon.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/setfilecon.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/setfscreatecon.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/sidget.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man3/sidput.3#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man8/booleans.8#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man8/getenforce.8#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man8/getsebool.8#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man8/selinux.8#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man8/selinuxenabled.8#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man8/setenforce.8#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/man8/setsebool.8#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/Makefile#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/avc.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/avc_internal.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/avc_internal.h#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/avc_sidtab.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/avc_sidtab.h#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/booleans.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/checkAccess.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/check_context.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/compute_av.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/compute_create.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/compute_relabel.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/compute_user.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/context.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/disable.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/enabled.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/fgetfilecon.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/freecon.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/freeconary.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/fsetfilecon.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/get_context_list.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/get_default_type.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/getcon.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/getenforce.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/getexeccon.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/getfilecon.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/getfscreatecon.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/getpeercon.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/getpidcon.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/getprevcon.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/helpers.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/init.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/lgetfilecon.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/load_policy.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/lsetfilecon.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/matchpathcon.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/policy.h#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/policyvers.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/query_user_context.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/selinux_config.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/selinux_netlink.h#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/setenforce.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/setexeccon.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/setfilecon.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/setfscreatecon.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/utils/Makefile#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/utils/compute_av.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/utils/compute_create.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/utils/compute_relabel.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/utils/compute_user.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/utils/deftype.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/utils/execcon.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/utils/getcon.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/utils/getconlist.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/utils/getenforce.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/utils/getenforcemode.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/utils/getfilecon.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/utils/getpidcon.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/utils/getsebool.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/utils/matchpathcon.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/utils/mkdircon.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/utils/policyvers.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/utils/selinuxconfig.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/utils/selinuxdisable.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/utils/selinuxenabled.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/utils/setenforce.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/utils/setfilecon.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/utils/setsebool.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/utils/togglesebool.c#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Mon May 16 15:16:18 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7FC1616A4D1; Mon, 16 May 2005 15:16:18 +0000 (GMT) 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 4441516A4CE for ; Mon, 16 May 2005 15:16:18 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 266E843DC5 for ; Mon, 16 May 2005 15:16:18 +0000 (GMT) (envelope-from areisse@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4GFGF5v016046 for ; Mon, 16 May 2005 15:16:15 GMT (envelope-from areisse@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4GFGFoL016043 for perforce@freebsd.org; Mon, 16 May 2005 15:16:15 GMT (envelope-from areisse@nailabs.com) Date: Mon, 16 May 2005 15:16:15 GMT Message-Id: <200505161516.j4GFGFoL016043@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to areisse@nailabs.com using -f From: Andrew Reisse To: Perforce Change Reviews Subject: PERFORCE change 77052 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: Mon, 16 May 2005 15:16:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=77052 Change 77052 by areisse@areisse_ibook on 2005/05/16 15:15:51 Integrate the missing/changed pieces of libselinux/libsedarwin from the original libsedarwin changes. (system calls, label management, paths) Affected files ... .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/filecon.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/getseccontext.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/security_get_user_contexts.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/sedarwin_config.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/system.c#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Mon May 16 15:40:52 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5158D16A4D1; Mon, 16 May 2005 15:40:52 +0000 (GMT) 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 15B8F16A4CE for ; Mon, 16 May 2005 15:40:52 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C895F43D8F for ; Mon, 16 May 2005 15:40:51 +0000 (GMT) (envelope-from areisse@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4GFeks0017251 for ; Mon, 16 May 2005 15:40:46 GMT (envelope-from areisse@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4GFeknO017248 for perforce@freebsd.org; Mon, 16 May 2005 15:40:46 GMT (envelope-from areisse@nailabs.com) Date: Mon, 16 May 2005 15:40:46 GMT Message-Id: <200505161540.j4GFeknO017248@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to areisse@nailabs.com using -f From: Andrew Reisse To: Perforce Change Reviews Subject: PERFORCE change 77055 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: Mon, 16 May 2005 15:40:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=77055 Change 77055 by areisse@areisse_ibook on 2005/05/16 15:40:34 Changes for libselinux and the boolean utilites to compile on darwin. (Untested; most utilities are not built) Affected files ... .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/Makefile#2 edit .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/Makefile#2 edit .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/booleans.c#2 edit .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/filecon.c#2 edit .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/sedarwin_config.c#2 edit .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/system.c#2 edit .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/utils/Makefile#2 edit Differences ... ==== //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/man/Makefile#2 (text+ko) ==== @@ -1,6 +1,8 @@ +include ../../../Makeconfig + # Installation directories. -MAN8DIR ?= $(DESTDIR)/usr/share/man/man8 -MAN3DIR ?= $(DESTDIR)/usr/share/man/man3 +MAN8DIR = $(DESTDIR)/usr/share/man/man8 +MAN3DIR = $(DESTDIR)/usr/share/man/man3 install: mkdir -p $(MAN3DIR) ==== //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/Makefile#2 (text+ko) ==== @@ -1,20 +1,27 @@ +include ../../../Makeconfig + +CFLAGS+= $(DARWIN_HDRS) -I../.. -I../include -I../../sedarwin + # Installation directories. -PREFIX ?= $(DESTDIR)/usr -LIBDIR ?= $(PREFIX)/lib -SHLIBDIR ?= $(DESTDIR)/lib +PREFIX = $(DESTDIR)/usr +LIBDIR = $(PREFIX)/lib +SHLIBDIR = $(DESTDIR)/lib LIBVERSION = 1 +SRCS= system.c security_get_user_contexts.c get_context_list.c \ + getseccontext.c query_user_context.c \ + context.c \ + get_default_type.c filecon.c sedarwin_config.c \ + freecon.c freeconary.c booleans.c LIBA=libselinux.a -TARGET=libselinux.so -LIBSO=$(TARGET).$(LIBVERSION) -OBJS= $(patsubst %.c,%.o,$(wildcard *.c)) -LOBJS= $(patsubst %.c,%.lo,$(wildcard *.c)) -CFLAGS = -Wall -override CFLAGS += -I../include +#TARGET=libselinux.so +#LIBSO=$(TARGET).$(LIBVERSION) +OBJS= $(patsubst %.c,%.o,$(SRCS)) +LOBJS= $(patsubst %.c,%.lo,$(SRCS)) -all: $(LIBA) $(LIBSO) +all: $(LIBA) $(LIBA): $(OBJS) $(AR) rcs $@ $^ @@ -34,8 +41,8 @@ test -d $(LIBDIR) || install -m 755 -d $(LIBDIR) install -m 644 $(LIBA) $(LIBDIR) test -d $(SHLIBDIR) || install -m 755 -d $(SHLIBDIR) - install -m 755 $(LIBSO) $(SHLIBDIR) - cd $(LIBDIR) && ln -sf ../../`basename $(SHLIBDIR)`/$(LIBSO) $(TARGET) +# install -m 755 $(LIBSO) $(SHLIBDIR) +# cd $(LIBDIR) && ln -sf ../../`basename $(SHLIBDIR)`/$(LIBSO) $(TARGET) clean: rm -f $(OBJS) $(LOBJS) $(LIBA) $(LIBSO) $(TARGET) ==== //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/booleans.c#2 (text+ko) ==== @@ -20,7 +20,7 @@ #include #include -#include +#include #include "policy.h" int security_get_boolean_names(char ***names, int *len) ==== //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/filecon.c#2 (text+ko) ==== ==== //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/sedarwin_config.c#2 (text+ko) ==== @@ -3,10 +3,11 @@ char *selinux_default_type_path() { - return _DEFTYPE_PATH; + /*return _DEFTYPE_PATH;*/ + return "/etc/security/sedarwin/default_type"; } char *selinux_booleans_path() { - return "/etc/security/sebsd/booleans"; + return "/etc/security/sedarwin/booleans"; } ==== //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/src/system.c#2 (text+ko) ==== @@ -37,8 +37,8 @@ #include #include #include -#include "sebsd.h" - +#include +#include int sebsd_enabled() { ==== //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/utils/Makefile#2 (text+ko) ==== @@ -1,12 +1,24 @@ +include ../../../Makeconfig + +PROG= sebsd_newrole +MAN1= sebsd_newrole.1 + +OBJS= sebsd_newrole.o + +CFLAGS+= $(DARWIN_HDRS) +CFLAGS+= -I$(SOURCE_ROOT)/sedarwin + # Installation directories. -PREFIX ?= $(DESTDIR)/usr -BINDIR ?= $(PREFIX)/bin +PREFIX = $(DESTDIR)/usr +BINDIR = $(PREFIX)/bin -CFLAGS = -Wall override CFLAGS += -I../include -LDLIBS += -L../src -lselinux +LDLIBS += -L../src -lselinux $(LIBMAC) -lmac + +SRCS= getfilecon.c getsebool.c \ + setfilecon.c setsebool.c togglesebool.c -TARGETS=$(patsubst %.c,%,$(wildcard *.c)) +TARGETS=$(patsubst %.c,%,$(SRCS)) all: $(TARGETS) From owner-p4-projects@FreeBSD.ORG Mon May 16 17:33:13 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3778516A4D1; Mon, 16 May 2005 17:33:13 +0000 (GMT) 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 EAAD016A4D0 for ; Mon, 16 May 2005 17:33:12 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A0D8243D41 for ; Mon, 16 May 2005 17:33:12 +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 j4GHX7Ju029824 for ; Mon, 16 May 2005 17:33:07 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4GHX7gw029819 for perforce@freebsd.org; Mon, 16 May 2005 17:33:07 GMT (envelope-from sam@freebsd.org) Date: Mon, 16 May 2005 17:33:07 GMT Message-Id: <200505161733.j4GHX7gw029819@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 77067 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: Mon, 16 May 2005 17:33:14 -0000 http://perforce.freebsd.org/chv.cgi?CH=77067 Change 77067 by sam@sam_laptop on 2005/05/16 17:32:10 eliminate duplicate device name in debug msg Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_freebsd.c#8 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_freebsd.c#8 (text+ko) ==== @@ -260,8 +260,7 @@ { struct ifnet *ifp = &vap->iv_if; - IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN, - "%s: notify scan done\n", ifp->if_xname); + IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN, "%s\n", "notify scan done"); /* dispatch wireless event indicating scan completed */ rt_ieee80211msg(ifp, RTM_IEEE80211_SCAN, NULL, 0); From owner-p4-projects@FreeBSD.ORG Mon May 16 18:31:22 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 512A116A4D1; Mon, 16 May 2005 18:31:22 +0000 (GMT) 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 F0F2C16A4CE for ; Mon, 16 May 2005 18:31:21 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CFAE743D73 for ; Mon, 16 May 2005 18:31:21 +0000 (GMT) (envelope-from areisse@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4GIVJc5032413 for ; Mon, 16 May 2005 18:31:19 GMT (envelope-from areisse@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4GIVJSF032410 for perforce@freebsd.org; Mon, 16 May 2005 18:31:19 GMT (envelope-from areisse@nailabs.com) Date: Mon, 16 May 2005 18:31:19 GMT Message-Id: <200505161831.j4GIVJSF032410@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to areisse@nailabs.com using -f From: Andrew Reisse To: Perforce Change Reviews Subject: PERFORCE change 77071 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: Mon, 16 May 2005 18:31:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=77071 Change 77071 by areisse@areisse_ibook on 2005/05/16 18:30:43 Support installation of include files into the export area. Affected files ... .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/include/Makefile#2 edit Differences ... ==== //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libselinux/include/Makefile#2 (text+ko) ==== @@ -1,6 +1,8 @@ +include ../../../Makeconfig + # Installation directories. -PREFIX ?= $(DESTDIR)/usr -INCDIR ?= $(PREFIX)/include/selinux +PREFIX = $(DESTDIR)/usr +INCDIR = $(PREFIX)/include/selinux install: test -d $(INCDIR) || install -m 755 -d $(INCDIR) From owner-p4-projects@FreeBSD.ORG Mon May 16 18:32:24 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 88F2916A4D1; Mon, 16 May 2005 18:32:24 +0000 (GMT) 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 3078D16A4D0 for ; Mon, 16 May 2005 18:32:24 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DEB2343D64 for ; Mon, 16 May 2005 18:32:23 +0000 (GMT) (envelope-from areisse@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4GIWLIF032492 for ; Mon, 16 May 2005 18:32:21 GMT (envelope-from areisse@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4GIWK5M032489 for perforce@freebsd.org; Mon, 16 May 2005 18:32:20 GMT (envelope-from areisse@nailabs.com) Date: Mon, 16 May 2005 18:32:20 GMT Message-Id: <200505161832.j4GIWK5M032489@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to areisse@nailabs.com using -f From: Andrew Reisse To: Perforce Change Reviews Subject: PERFORCE change 77072 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: Mon, 16 May 2005 18:32:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=77072 Change 77072 by areisse@areisse_ibook on 2005/05/16 18:32:04 Integrate libsepol (as modified for sebsd) into the sedarwin development area. Affected files ... .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libsepol/include/sepol/avtab.h#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libsepol/include/sepol/conditional.h#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libsepol/include/sepol/constraint.h#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libsepol/include/sepol/context.h#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libsepol/include/sepol/ebitmap.h#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libsepol/include/sepol/flask.h#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libsepol/include/sepol/flask_types.h#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libsepol/include/sepol/hashtab.h#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libsepol/include/sepol/mls.h#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libsepol/include/sepol/mls_types.h#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libsepol/include/sepol/policydb.h#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libsepol/include/sepol/sepol.h#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libsepol/include/sepol/services.h#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libsepol/include/sepol/sidtab.h#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libsepol/include/sepol/symtab.h#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libsepol/src/Makefile#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libsepol/src/av_permissions.h#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libsepol/src/avtab.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libsepol/src/conditional.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libsepol/src/ebitmap.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libsepol/src/genbools.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libsepol/src/hashtab.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libsepol/src/libsepol.map#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libsepol/src/mls.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libsepol/src/policydb.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libsepol/src/private.h#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libsepol/src/services.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libsepol/src/sidtab.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libsepol/src/symtab.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libsepol/src/write.c#1 branch .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/libsepol/utils/genpolbools.c#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Mon May 16 18:44:38 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 89A2516A4D1; Mon, 16 May 2005 18:44:37 +0000 (GMT) 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 5D4D716A4CE for ; Mon, 16 May 2005 18:44:37 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 259FD43DB7 for ; Mon, 16 May 2005 18:44:37 +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 j4GIib3i033440 for ; Mon, 16 May 2005 18:44:37 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4GIiaED033437 for perforce@freebsd.org; Mon, 16 May 2005 18:44:36 GMT (envelope-from sam@freebsd.org) Date: Mon, 16 May 2005 18:44:36 GMT Message-Id: <200505161844.j4GIiaED033437@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 77074 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: Mon, 16 May 2005 18:44:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=77074 Change 77074 by sam@sam_laptop on 2005/05/16 18:44:27 First cut at background scanning; needs testing. Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211.c#9 edit .. //depot/projects/vap/sys/net80211/ieee80211_input.c#10 edit .. //depot/projects/vap/sys/net80211/ieee80211_ioctl.c#9 edit .. //depot/projects/vap/sys/net80211/ieee80211_ioctl.h#6 edit .. //depot/projects/vap/sys/net80211/ieee80211_output.c#11 edit .. //depot/projects/vap/sys/net80211/ieee80211_proto.c#7 edit .. //depot/projects/vap/sys/net80211/ieee80211_scan.c#2 edit .. //depot/projects/vap/sys/net80211/ieee80211_scan.h#2 edit .. //depot/projects/vap/sys/net80211/ieee80211_scan_ap.c#3 edit .. //depot/projects/vap/sys/net80211/ieee80211_scan_sta.c#3 edit .. //depot/projects/vap/sys/net80211/ieee80211_var.h#10 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211.c#9 (text+ko) ==== @@ -278,6 +278,10 @@ vap->iv_flags |= IEEE80211_F_FF; if (vap->iv_caps & IEEE80211_C_TURBOP) vap->iv_flags |= IEEE80211_F_TURBOP; + /* NB: bg scanning only makes sense for station mode right now */ + if (ic->ic_opmode == IEEE80211_M_STA && + (vap->iv_caps & IEEE80211_C_BGSCAN)) + vap->iv_flags |= IEEE80211_F_BGSCAN; vap->iv_des_chan = IEEE80211_CHAN_ANYC; /* any channel is ok */ vap->iv_dtim_period = IEEE80211_DTIM_DEFAULT; ==== //depot/projects/vap/sys/net80211/ieee80211_input.c#10 (text+ko) ==== @@ -531,6 +531,7 @@ ifp->if_ipackets++; IEEE80211_NODE_STAT(ni, rx_data); IEEE80211_NODE_STAT_ADD(ni, rx_bytes, m->m_pkthdr.len); + ic->ic_lastdata = ticks; #define FF_LLC_SIZE (sizeof(struct ether_header) + sizeof(struct llc)) if (IEEE80211_ATH_CAP(vap, ni, FF) && @@ -2318,9 +2319,20 @@ } if (scan.doth != NULL) ieee80211_parse_dothparams(vap, scan.doth, wh); - /* NB: don't need the rest of this */ - if ((ic->ic_flags & IEEE80211_F_SCAN) == 0) + if ((ic->ic_flags & IEEE80211_F_SCAN) == 0) { + /* + * If no data frames have come through + * recently and it's been a while since the + * last background scan, kick off a new + * background scan. + */ + if ((vap->iv_flags & IEEE80211_F_BGSCAN) && + 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; + } } /* * If scanning, just pass information to the scan module. ==== //depot/projects/vap/sys/net80211/ieee80211_ioctl.c#9 (text+ko) ==== @@ -905,6 +905,15 @@ case IEEE80211_IOC_TURBOP: ireq->i_val = (vap->iv_flags & IEEE80211_F_TURBOP) != 0; break; + case IEEE80211_IOC_BGSCAN: + ireq->i_val = (vap->iv_flags & IEEE80211_F_BGSCAN) != 0; + break; + case IEEE80211_IOC_BGSCAN_IDLE: + ireq->i_val = vap->iv_bgscanidle*1000/hz;/* ms */ + break; + case IEEE80211_IOC_BGSCAN_INTERVAL: + ireq->i_val = vap->iv_bgscanintvl/hz; /* seconds */ + break; default: error = EINVAL; break; @@ -1708,7 +1717,9 @@ break; case IEEE80211_IOC_SCAN_REQ: error = ieee80211_start_scan(vap, - IEEE80211_SCAN_NOPICK|IEEE80211_SCAN_ACTIVE); + IEEE80211_SCAN_ACTIVE | + IEEE80211_SCAN_NOPICK | + IEEE80211_SCAN_ONCE, IEEE80211_SCAN_FOREVER); break; case IEEE80211_IOC_ADDMAC: case IEEE80211_IOC_DELMAC: @@ -1768,6 +1779,26 @@ vap->iv_flags &= ~IEEE80211_F_TURBOP; error = ENETRESET; /* XXX maybe not for station? */ break; + case IEEE80211_IOC_BGSCAN: + if (ireq->i_val) { + if ((vap->iv_caps & IEEE80211_C_BGSCAN) == 0) + return EINVAL; + vap->iv_flags |= IEEE80211_F_BGSCAN; + } else + vap->iv_flags &= ~IEEE80211_F_BGSCAN; + break; + case IEEE80211_IOC_BGSCAN_IDLE: + if (ireq->i_val >= IEEE80211_BGSCAN_IDLE_MIN) + vap->iv_bgscanidle = ireq->i_val*hz/1000; + else + error = EINVAL; + break; + case IEEE80211_IOC_BGSCAN_INTERVAL: + if (ireq->i_val >= IEEE80211_BGSCAN_INTVAL_MIN) + vap->iv_bgscanintvl = ireq->i_val*hz; + else + error = EINVAL; + break; default: error = EINVAL; break; ==== //depot/projects/vap/sys/net80211/ieee80211_ioctl.h#6 (text+ko) ==== @@ -434,6 +434,9 @@ #define IEEE80211_IOC_TURBOP 57 /* ATH turbo' (on, off) */ #define IEEE80211_IOC_WDS 58 /* WDS/4-address handling */ #define IEEE80211_IOC_PUREG 59 /* pure 11g (no 11b stations) */ +#define IEEE80211_IOC_BGSCAN 60 /* bg scanning (on, off) */ +#define IEEE80211_IOC_BGSCAN_IDLE 61 /* bg scan idle threshold */ +#define IEEE80211_IOC_BGSCAN_INTERVAL 62 /* bg scan interval */ /* * Scan result data returned for IEEE80211_IOC_SCAN_RESULTS. ==== //depot/projects/vap/sys/net80211/ieee80211_output.c#11 (text+ko) ==== @@ -217,6 +217,9 @@ /* NB: parent must be up and running */ if ((parent->if_flags & (IFF_RUNNING|IFF_UP)) != (IFF_RUNNING|IFF_UP)) return; + if (vap->iv_state == IEEE80211_S_RUN && + (ic->ic_flags & IEEE80211_F_SCAN)) /* cancel bg scan */ + ieee80211_cancel_scan(vap); for (;;) { /* * No data frames go out unless we're running. @@ -290,6 +293,7 @@ } else ifp->if_opackets++; } + ic->ic_lastdata = ticks; } /* ==== //depot/projects/vap/sys/net80211/ieee80211_proto.c#7 (text+ko) ==== @@ -1136,6 +1136,9 @@ IEEE80211_DPRINTF(vap, IEEE80211_MSG_STATE, "%s: %s -> %s\n", __func__, ieee80211_state_name[ostate], ieee80211_state_name[nstate]); vap->iv_state = nstate; /* state transition */ + callout_stop(&vap->iv_mgtsend); + if (ostate != IEEE80211_S_SCAN) + ieee80211_cancel_scan(vap); /* background scan */ ni = vap->iv_bss; /* NB: no reference held */ switch (nstate) { case IEEE80211_S_INIT: @@ -1195,10 +1198,6 @@ goto reset; case IEEE80211_S_AUTH: reset: - callout_stop(&vap->iv_mgtsend); -#if 0 - IF_DRAIN(&ic->ic_mgtq); /* XXX multi-bss */ -#endif ieee80211_reset_bss(vap); break; } @@ -1220,7 +1219,8 @@ } else { ieee80211_check_scan(vap, IEEE80211_SCAN_ACTIVE | - IEEE80211_SCAN_FLUSH); + IEEE80211_SCAN_FLUSH, + IEEE80211_SCAN_FOREVER); } break; case IEEE80211_S_SCAN: @@ -1238,7 +1238,8 @@ case IEEE80211_S_ASSOC: /* timeout restart scan */ ieee80211_scan_assocfail(ic, vap->iv_bss->ni_macaddr); - ieee80211_check_scan(vap, IEEE80211_SCAN_ACTIVE | arg); + ieee80211_check_scan(vap, IEEE80211_SCAN_ACTIVE | arg, + IEEE80211_SCAN_FOREVER); break; } break; @@ -1309,7 +1310,6 @@ if (vap->iv_flags & IEEE80211_F_WPA) { /* XXX validate prerequisites */ } - callout_stop(&vap->iv_mgtsend); ifp->if_flags &= ~IFF_OACTIVE; switch (ostate) { case IEEE80211_S_INIT: @@ -1358,7 +1358,8 @@ * AP. We delay until here to allow configuration to * happen out of order. */ - if (vap->iv_opmode == IEEE80211_M_HOSTAP && /* XXX IBSS/AHDEMO */ + if (vap->iv_opmode == IEEE80211_M_HOSTAP && + /* XXX IBSS/AHDEMO */ vap->iv_auth->ia_attach != NULL) { /* XXX check failure */ vap->iv_auth->ia_attach(vap); ==== //depot/projects/vap/sys/net80211/ieee80211_scan.c#2 (text+ko) ==== @@ -78,6 +78,8 @@ void ieee80211_scan_vattach(struct ieee80211vap *vap) { + vap->iv_bgscanidle = (IEEE80211_BGSCAN_IDLE_DEFAULT*1000)/hz; + vap->iv_bgscanintvl = IEEE80211_BGSCAN_INTVAL_DEFAULT*hz; } void @@ -204,7 +206,7 @@ * Kick off the scanning thread. */ static void -start_timer(struct ieee80211_scan_state *ss) +start_timer(struct ieee80211_scan_state *ss, u_int duration) { int delay; @@ -215,9 +217,12 @@ * XXX 1ms is a lot, better to trigger scan * on tx complete. */ - delay = hz/100; + delay = hz/1000; + if (delay < 1) + delay = 1; } else delay = 1; + ss->ss_scanend = ticks + delay + duration; callout_reset(&ss->ss_scan_timer, delay, ieee80211_next_scan, ss); } @@ -225,7 +230,7 @@ * Start a scan unless one is already going. */ int -ieee80211_start_scan(struct ieee80211vap *vap, int flags) +ieee80211_start_scan(struct ieee80211vap *vap, int flags, u_int duration) { struct ieee80211com *ic = vap->iv_ic; const struct ieee80211_scanner *scan; @@ -243,12 +248,14 @@ IEEE80211_LOCK(ic); if ((ic->ic_flags & IEEE80211_F_SCAN) == 0) { IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN, - "%s: %s scan, desired mode %s, %s%s\n" + "%s: %s scan, duration %lu, desired mode %s, %s%s%s\n" , __func__ , flags & IEEE80211_SCAN_ACTIVE ? "active" : "passive" + , duration , ieee80211_phymode_name[vap->iv_des_mode] , flags & IEEE80211_SCAN_FLUSH ? "flush" : "append" , flags & IEEE80211_SCAN_NOPICK ? ", nopick" : "" + , flags & IEEE80211_SCAN_ONCE ? ", once" : "" ); ss->ss_vap = vap; @@ -277,7 +284,7 @@ /* 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); + start_timer(ss, duration); ic->ic_flags |= IEEE80211_F_SCAN; } } else { @@ -296,7 +303,7 @@ * fails then kick off a new scan. */ int -ieee80211_check_scan(struct ieee80211vap *vap, int flags) +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; @@ -334,37 +341,76 @@ /* no ap, clear the flag before starting a scan */ ic->ic_flags &= ~IEEE80211_F_SCAN; } - return ieee80211_start_scan(vap, flags); + return ieee80211_start_scan(vap, flags, duration); } /* - * Restart a previous scan. The existing scan state is left - * untouched, we just restart the thread and it will pickup - * where we left off. + * Restart a previous scan. If the previous scan completed + * then we start again using the existing channel list. */ int -ieee80211_restart_scan(struct ieee80211vap *vap) +ieee80211_bg_scan(struct ieee80211vap *vap) { struct ieee80211com *ic = vap->iv_ic; struct ieee80211_scan_state *ss = &ic->ic_scan; IEEE80211_LOCK(ic); if ((ic->ic_flags & IEEE80211_F_SCAN) == 0) { + u_int duration, fudge; + + /* + * Calculate the schedule for going off-channel. We + * need to return in time to receive the next beacon + * so we use the beacon interval minus the time required + * to be ready to rx the beacon. This is device-dependent + * but for now we use 1ms. Note that this only works + * because we are called on receipt of a beacon frame; + * otherwise we'd need to check TSF and calculate nexttbtt + * 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 = 1; + if (duration > fudge) + duration -= fudge; + /* XXX do we sanity check beacon interval anywhere? */ + IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN, - "%s: %s scan\n", __func__, - ic->ic_flags & IEEE80211_F_SCAN ? "active" : "passive"); + "%s: %s scan, duration %lu\n", __func__, + ic->ic_flags & IEEE80211_F_SCAN ? "active" : "passive", + duration); if (ss->ss_ops != NULL) { - ss->ss_vap = vap; /* XXX temporary */ - if (ss->ss_flags & IEEE80211_SCAN_ACTIVE) - vap->iv_stats.is_scan_active++; - else - vap->iv_stats.is_scan_passive++; - + ss->ss_vap = vap; + /* + * A background scan does not select a new sta; it + * just refreshes the scan cache. Also, indicate + * the scan logic should follow the beacon schedule: + * we go off-channel and scan for as much of the + * beacon interval as we can, return to the bss channel + * to receive the beacon, then go off-channel again. + * All during this time we notify the ap we're in power + * save mode. When the scan is complete we leave power + * save mode. If any beacon indicates there are frames + * pending for us then we drop out of power save mode + * (and background scan) automatically by way of the + * usual sta power save logic. + */ + ss->ss_flags |= IEEE80211_SCAN_NOPICK + | IEEE80211_SCAN_BGSCAN; + /* if previous scan completed, restart */ + if (ss->ss_next >= ss->ss_last) { + ss->ss_next = 0; + if (ss->ss_flags & IEEE80211_SCAN_ACTIVE) + vap->iv_stats.is_scan_active++; + else + vap->iv_stats.is_scan_passive++; + } /* 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); + start_timer(ss, duration); ic->ic_flags |= IEEE80211_F_SCAN; } else { /* XXX msg+stat */ @@ -381,7 +427,7 @@ } /* - * Cancel any active scan. + * Cancel any scan currently going on. */ void ieee80211_cancel_scan(struct ieee80211vap *vap) @@ -396,6 +442,7 @@ IEEE80211_LOCK(ic); if (ic->ic_flags & IEEE80211_F_SCAN) { 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 */ @@ -405,7 +452,9 @@ /* XXX ieee80211_end_scan or otherwise notify? */ if (ss->ss_flags & IEEE80211_SCAN_PWRSAV) ieee80211_sta_pwrsave(vap, 0); - ss->ss_flags &= ~IEEE80211_SCAN_MINDWELL; + /* clear ephemeral state bits */ + ss->ss_flags &= ~(IEEE80211_SCAN_MINDWELL | + IEEE80211_SCAN_BGSCAN | IEEE80211_SCAN_ONCE); } IEEE80211_UNLOCK(ic); } @@ -421,7 +470,7 @@ struct ieee80211com *ic = vap->iv_ic; struct ieee80211_channel *chan; unsigned long maxdwell; - int scanning, i; + int scanning, scandone, i; IEEE80211_LOCK(ic); scanning = (ic->ic_flags & IEEE80211_F_SCAN) != 0; @@ -431,8 +480,8 @@ /* XXX if taking first candidate check for a valid result */ again: - if (ss->ss_next < ss->ss_last && - time_before(ticks + ss->ss_mindwell, ss->ss_scanend)) { + scandone = (ss->ss_next >= ss->ss_last); + if (!scandone && time_before(ticks + ss->ss_mindwell, ss->ss_scanend)) { chan = ss->ss_chans[ss->ss_next++]; /* @@ -444,7 +493,7 @@ maxdwell = ss->ss_maxdwell; IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN, - "%s: chan %3d%c -> %3d%c [%s, dwell min %ld max %ld]\n", + "%s: chan %3d%c -> %3d%c [%s, dwell min %lu max %lu]\n", __func__, ieee80211_chan2ieee(ic, ic->ic_curchan), channel_type(ic->ic_curchan), @@ -506,13 +555,16 @@ * ss_scan_end may decide differently. */ ic->ic_scan_end(ic); /* notify driver */ + if (scandone) /* record scan complete time */ + ic->ic_lastscan = ticks; /* 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) && + (ss->ss_flags & IEEE80211_SCAN_ONCE) == 0 && time_before(ticks + ss->ss_mindwell, ss->ss_scanend)) { IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN, - "%s: scan done, restart " + "%s: done, restart " "[ticks %lu, dwell min %lu scanend %lu]\n", __func__, ticks, ss->ss_mindwell, ss->ss_scanend); @@ -525,18 +577,34 @@ ic->ic_scan_start(ic); /* notify driver */ goto again; } else { + /* 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: scan done, completed " - "[ticks %lu, dwell min %lu scanend %lu]\n", - __func__, + "%s: %s, [ticks %lu, dwell min %lu scanend %lu]\n", + __func__, scandone ? "done" : "stopped", ticks, ss->ss_mindwell, ss->ss_scanend); - if (ss->ss_flags & IEEE80211_SCAN_PWRSAV) { - if (ss->ss_savchan != ic->ic_curchan) - change_channel(ic, ss->ss_savchan); + + /* return to the original channel */ + if (ss->ss_savchan != ic->ic_curchan) + change_channel(ic, ss->ss_savchan); + /* + * 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 + * the ap; we'll either return to scanning after we + * receive the beacon frame or we'll drop out of power + * save mode because the beacon indicates we have frames + * waiting for us. + */ + if (scandone && (ss->ss_flags & IEEE80211_SCAN_PWRSAV)) ieee80211_sta_pwrsave(vap, 0); - } ic->ic_flags &= ~IEEE80211_F_SCAN; - ieee80211_notify_scan_done(vap); + /* NB: suppress notification during bg scan */ + if (scandone) + ieee80211_notify_scan_done(vap); } } } ==== //depot/projects/vap/sys/net80211/ieee80211_scan.h#2 (text+ko) ==== @@ -43,6 +43,9 @@ 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 */ @@ -81,9 +84,10 @@ void ieee80211_scan_dump_channels(const struct ieee80211_scan_state *); -int ieee80211_start_scan(struct ieee80211vap *, int flags); -int ieee80211_check_scan(struct ieee80211vap *, int flags); -int ieee80211_restart_scan(struct ieee80211vap *); +#define IEEE80211_SCAN_FOREVER 0x7fffffff +int ieee80211_start_scan(struct ieee80211vap *, int flags, u_int duration); +int ieee80211_bg_scan(struct ieee80211vap *); +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 *); ==== //depot/projects/vap/sys/net80211/ieee80211_scan_ap.c#3 (text+ko) ==== @@ -294,15 +294,13 @@ /* XXX tunables */ ss->ss_mindwell = 200*hz/1000; /* 200ms */ ss->ss_maxdwell = 300*hz/1000; /* 300ms */ - /* arrange to scan only once */ - ss->ss_scanend = ticks + ss->ss_last * ss->ss_maxdwell; #ifdef IEEE80211_DEBUG if (ieee80211_msg_scan(vap)) { if_printf(&vap->iv_if, "scan set "); ieee80211_scan_dump_channels(ss); - printf(" dwell min %ld max %ld scanend %ld\n", - ss->ss_mindwell, ss->ss_maxdwell, ss->ss_scanend); + printf(" dwell min %ld max %ld\n", + ss->ss_mindwell, ss->ss_maxdwell); } #endif /* IEEE80211_DEBUG */ ==== //depot/projects/vap/sys/net80211/ieee80211_scan_sta.c#3 (text+ko) ==== @@ -88,6 +88,7 @@ }; static void sta_flush_table(struct sta_table *); +static int match_bss(struct ieee80211vap *, struct ieee80211_scan_entry *); /* * Attach prior to any scanning work. @@ -178,7 +179,8 @@ #define ISPROBE(_st) ((_st) == IEEE80211_FC0_SUBTYPE_PROBE_RESP) struct sta_table *st = ss->ss_priv; const u_int8_t *macaddr = wh->i_addr2; - struct ieee80211com *ic = ss->ss_vap->iv_ic; + struct ieee80211vap *vap = ss->ss_vap; + struct ieee80211com *ic = vap->iv_ic; struct sta_entry *se; struct ieee80211_scan_entry *ise; int hash; @@ -238,7 +240,17 @@ se->se_lastupdate = ticks; /* update time */ mtx_unlock(&st->st_lock); - +#if 0 + /* + * If scanning for the first acceptable candidate, + * check capabilities and verify the rssi is acceptable. + */ + if ((ss->ss_flags & IEEE80211_SCAN_PICK1ST) && + match_bss(vap, ise) == 0 && + RSSI_GET(se->se_avgrssi) >= RSSI_MINACCEPTABLE) { + /* arrange to terminate scan and associate */ + } +#endif return 1; #undef ISPROBE } @@ -253,9 +265,11 @@ if (vap->iv_opmode == IEEE80211_M_STA && vap->iv_state == IEEE80211_S_RUN) { - /* initiate power save before going off-channel */ - ieee80211_sta_pwrsave(vap, 1); - ss->ss_flags |= IEEE80211_SCAN_PWRSAV; + 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; @@ -447,14 +461,13 @@ /* XXX tunables */ ss->ss_mindwell = 20*hz/1000; /* 20ms */ ss->ss_maxdwell = 200*hz/1000; /* 200ms */ - ss->ss_scanend = ticks+0x7fffffff; /* scan ``forever'' */ #ifdef IEEE80211_DEBUG if (ieee80211_msg_scan(vap)) { if_printf(&vap->iv_if, "scan set "); ieee80211_scan_dump_channels(ss); - printf(" dwell min %ld max %ld scanend %ld\n", - ss->ss_mindwell, ss->ss_maxdwell, ss->ss_scanend); + printf(" dwell min %ld max %ld\n", + ss->ss_mindwell, ss->ss_maxdwell); } #endif /* IEEE80211_DEBUG */ ==== //depot/projects/vap/sys/net80211/ieee80211_var.h#10 (text+ko) ==== @@ -70,11 +70,18 @@ #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 30 /* min bg scan intvl (secs) */ +#define IEEE80211_BGSCAN_INTVAL_DEFAULT (5*60) /* default bg scan intvl */ + +#define IEEE80211_BGSCAN_IDLE_MIN 500 /* min idle time (ms) */ +#define IEEE80211_BGSCAN_IDLE_DEFAULT (10*1000) /* default idle time (ms) */ + #define IEEE80211_PS_SLEEP 0x1 /* STA is in power saving mode */ #define IEEE80211_PS_MAX_QUEUE 50 /* maximum saved packets */ #define IEEE80211_MS_TO_TU(x) (((x) * 1000) / 1024) #define IEEE80211_TU_TO_MS(x) (((x) * 1024) / 1000) +#define IEEE80211_TU_TO_TICKS(x) ((IEEE80211_TU_TO_MS(x) * hz) / 1000) #define IEEE80211_PWRCONSTRAINT_VAL(ic) \ (((ic)->ic_bsschan->ic_maxregpower > (ic)->ic_curchanmaxpwr) ? \ @@ -151,6 +158,8 @@ /* scan-related 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 */ /* NB: this is the union of all vap stations/neighbors */ struct ieee80211_node_table ic_sta; /* stations/neighbors */ @@ -248,6 +257,8 @@ u_int16_t iv_des_mode; /* desired mode */ int iv_nicknamelen; /* XXX junk */ u_int8_t iv_nickname[IEEE80211_NWID_LEN]; + u_int iv_bgscanidle; /* bg scan idle threshold */ + u_int iv_bgscanintvl; /* bg scan min interval */ u_int32_t *iv_aid_bitmap; /* association id map */ u_int16_t iv_max_aid; @@ -305,6 +316,7 @@ #define IEEE80211_F_PMGTON 0x00000800 /* CONF: Power mgmt enable */ #define IEEE80211_F_DESBSSID 0x00001000 /* CONF: des_bssid is set */ #define IEEE80211_F_WME 0x00002000 /* CONF: enable WME use */ +#define IEEE80211_F_BGSCAN 0x00004000 /* CONF: bg scan enabled */ #define IEEE80211_F_SWRETRY 0x00008000 /* CONF: sw tx retry enabled */ #define IEEE80211_F_TXPOW_FIXED 0x00010000 /* TX Power: fixed rate */ #define IEEE80211_F_IBSSON 0x00020000 /* CONF: IBSS creation enable */ @@ -348,6 +360,7 @@ #define IEEE80211_C_BURST 0x02000000 /* CAPABILITY: frame bursting */ #define IEEE80211_C_WME 0x04000000 /* CAPABILITY: WME avail */ #define IEEE80211_C_WDS 0x08000000 /* CAPABILITY: 4-addr support */ +#define IEEE80211_C_BGSCAN 0x10000000 /* CAPABILITY: bg scanning */ /* XXX protection/barker? */ #define IEEE80211_C_CRYPTO 0x0000002f /* CAPABILITY: crypto alg's */ @@ -355,7 +368,8 @@ (IEEE80211_C_CRYPTO | IEEE80211_C_FF | IEEE80211_C_TURBOP | \ IEEE80211_C_PMGT | IEEE80211_C_SWRETRY | IEEE80211_C_TXPMGT | \ IEEE80211_C_SHSLOT | IEEE80211_C_SHPREAMBLE | IEEE80211_C_TKIPMIC | \ - IEEE80211_C_WPA | IEEE80211_C_BURST | IEEE80211_C_WME) + IEEE80211_C_WPA | IEEE80211_C_BURST | IEEE80211_C_WME | \ + IEEE80211_C_BGSCAN) /* check if a capability was negotiated for use */ #define IEEE80211_ATH_CAP(vap, ni, bit) \ From owner-p4-projects@FreeBSD.ORG Mon May 16 18:45:41 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 06D3F16A4D1; Mon, 16 May 2005 18:45:41 +0000 (GMT) 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 C00A916A4CE for ; Mon, 16 May 2005 18:45:40 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9FB2B43D83 for ; Mon, 16 May 2005 18:45:40 +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 j4GIjc9U033572 for ; Mon, 16 May 2005 18:45:38 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4GIjcwC033569 for perforce@freebsd.org; Mon, 16 May 2005 18:45:38 GMT (envelope-from sam@freebsd.org) Date: Mon, 16 May 2005 18:45:38 GMT Message-Id: <200505161845.j4GIjcwC033569@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 77075 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: Mon, 16 May 2005 18:45:41 -0000 http://perforce.freebsd.org/chv.cgi?CH=77075 Change 77075 by sam@sam_laptop on 2005/05/16 18:45:14 o enable bg scanning o remove assert that's no longer valid Affected files ... .. //depot/projects/vap/sys/dev/ath/if_ath.c#12 edit Differences ... ==== //depot/projects/vap/sys/dev/ath/if_ath.c#12 (text+ko) ==== @@ -514,6 +514,7 @@ | IEEE80211_C_SHPREAMBLE /* short preamble supported */ | IEEE80211_C_SHSLOT /* short slot time supported */ | IEEE80211_C_WPA /* capable of WPA1+WPA2 */ + | IEEE80211_C_BGSCAN /* capable of bg scanning */ ; /* * Query the hal to figure out h/w crypto support. @@ -1832,8 +1833,6 @@ * TX/RX key goes at first index. * The hal handles the MIC keys are index+64. */ - KASSERT(k->wk_keyix < IEEE80211_WEP_NKID, - ("group key at index %u", k->wk_keyix)); memcpy(hk->kv_mic, k->wk_flags & IEEE80211_KEY_XMIT ? k->wk_txmic : k->wk_rxmic, sizeof(hk->kv_mic)); KEYPRINTF(sc, k->wk_keyix, hk, zerobssid); From owner-p4-projects@FreeBSD.ORG Mon May 16 21:59:40 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 62DBB16A4D3; Mon, 16 May 2005 21:59:40 +0000 (GMT) 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 3671D16A4CE for ; Mon, 16 May 2005 21:59:40 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 16BF843D9E for ; Mon, 16 May 2005 21:59:40 +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 j4GLxZXe051246 for ; Mon, 16 May 2005 21:59:35 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4GLxZfP051243 for perforce@freebsd.org; Mon, 16 May 2005 21:59:35 GMT (envelope-from sam@freebsd.org) Date: Mon, 16 May 2005 21:59:35 GMT Message-Id: <200505162159.j4GLxZfP051243@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 77084 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: Mon, 16 May 2005 21:59:41 -0000 http://perforce.freebsd.org/chv.cgi?CH=77084 Change 77084 by sam@sam_laptop on 2005/05/16 21:59:27 don't do bg scanning when in turbo mode on a dynamic turbo channel (bad idea); fixup a comment while in the vicinity Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_input.c#11 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_input.c#11 (text+ko) ==== @@ -2321,12 +2321,20 @@ ieee80211_parse_dothparams(vap, scan.doth, wh); if ((ic->ic_flags & IEEE80211_F_SCAN) == 0) { /* - * If no data frames have come through - * recently and it's been a while since the - * last background scan, kick off a new - * background scan. + * 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. */ 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); From owner-p4-projects@FreeBSD.ORG Mon May 16 23:56:59 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 556C916A4D1; Mon, 16 May 2005 23:56:59 +0000 (GMT) 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 2D50F16A4CE for ; Mon, 16 May 2005 23:56:59 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0DA2243D67 for ; Mon, 16 May 2005 23:56: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 j4GNuuiV055941 for ; Mon, 16 May 2005 23:56:56 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4GNuuLX055938 for perforce@freebsd.org; Mon, 16 May 2005 23:56:56 GMT (envelope-from sam@freebsd.org) Date: Mon, 16 May 2005 23:56:56 GMT Message-Id: <200505162356.j4GNuuLX055938@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 77085 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: Mon, 16 May 2005 23:56:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=77085 Change 77085 by sam@sam_ebb on 2005/05/16 23:56:21 move debug msg to reduce noise Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_scan.c#3 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_scan.c#3 (text+ko) ==== @@ -435,12 +435,12 @@ struct ieee80211com *ic = vap->iv_ic; struct ieee80211_scan_state *ss = &ic->ic_scan; - IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN, "%s: end %s scan\n", - __func__, - ss->ss_flags & IEEE80211_SCAN_ACTIVE ? "active" : "passive"); - 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"); + callout_drain(&ss->ss_scan_timer); /* XXX maybe this should be handled in the timer routine? */ ic->ic_flags &= ~IEEE80211_F_SCAN; From owner-p4-projects@FreeBSD.ORG Tue May 17 23:28:34 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5B0F616A4D1; Tue, 17 May 2005 23:28:34 +0000 (GMT) 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 30E7716A4CE for ; Tue, 17 May 2005 23:28:34 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F357443D46 for ; Tue, 17 May 2005 23:28:33 +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 j4HNSUcs060534 for ; Tue, 17 May 2005 23:28:31 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4HNSUhC060531 for perforce@freebsd.org; Tue, 17 May 2005 23:28:30 GMT (envelope-from sam@freebsd.org) Date: Tue, 17 May 2005 23:28:30 GMT Message-Id: <200505172328.j4HNSUhC060531@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 77110 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: Tue, 17 May 2005 23:28:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=77110 Change 77110 by sam@sam_ebb on 2005/05/17 23:27:50 dynamic turbo ap mode fixups: o the bss channel will be the base mode version; check for a corresponding dturbo channel before enabling o check ic_flags before enabling dynamic turbo--we coordinate the usage of all vap's through ic_flags in the 802.11 layer; this permits us to turn dturbo use on+off with ifconfig o correct the tmin/tmax calculation; was scaling twice for the beacon stagger, remove the one in ath_beacon_dturbo_config Affected files ... .. //depot/projects/vap/sys/dev/ath/if_ath.c#13 edit Differences ... ==== //depot/projects/vap/sys/dev/ath/if_ath.c#13 (text+ko) ==== @@ -2344,12 +2344,14 @@ static void ath_beacon_dturbo_config(struct ath_softc *sc, u_int32_t intval) { -#define IS_CAPABLE(ic) \ - (ic->ic_caps & IEEE80211_C_TURBOP) +#define IS_CHAN_DTURBO(ic, c) \ + (ieee80211_find_channel(ic, (c)->ic_freq, \ + (c)->ic_flags | IEEE80211_CHAN_TURBO) != NULL) struct ieee80211com *ic = &sc->sc_ic; if (ic->ic_opmode == IEEE80211_M_HOSTAP && - IS_CAPABLE(ic) && IEEE80211_IS_CHAN_DTURBO(ic->ic_bsschan)) { + (ic->ic_flags & IEEE80211_F_TURBOP) && + IS_CHAN_DTURBO(ic, ic->ic_bsschan)) { /* Dynamic Turbo is supported on this channel. */ sc->sc_dturbo = 1; sc->sc_dt_tcount = 0; @@ -2367,19 +2369,16 @@ * * sc_dt_base_tmin : ~70 seconds * sc_dt_turbo_tmax : ~120 seconds - * - * NB: scale calculated values to account for staggered - * beacon handling */ - sc->sc_dt_base_tmin = 70 * 1024 * ATH_BCBUF / intval; - sc->sc_dt_turbo_tmax = 120 * 1024 * ATH_BCBUF / intval; + sc->sc_dt_base_tmin = 70 * 1024 / intval; + sc->sc_dt_turbo_tmax = 120 * 1024 / intval; sc->sc_dt_base_bw = 0; /* XXX: TBD */ sc->sc_dt_turbo_bw = 0; /* XXX: TBD */ } else { sc->sc_dturbo = 0; ic->ic_flags &= ~IEEE80211_F_BOOST; } -#undef IS_CAPABLE +#undef IS_CHAN_DTURBO } /* From owner-p4-projects@FreeBSD.ORG Tue May 17 23:29:36 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 06CD616A4D1; Tue, 17 May 2005 23:29:36 +0000 (GMT) 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 D37D316A4CE for ; Tue, 17 May 2005 23:29:35 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AF11143D55 for ; Tue, 17 May 2005 23:29:35 +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 j4HNTWYg060565 for ; Tue, 17 May 2005 23:29:32 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4HNTWsv060562 for perforce@freebsd.org; Tue, 17 May 2005 23:29:32 GMT (envelope-from sam@freebsd.org) Date: Tue, 17 May 2005 23:29:32 GMT Message-Id: <200505172329.j4HNTWsv060562@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 77111 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: Tue, 17 May 2005 23:29:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=77111 Change 77111 by sam@sam_ebb on 2005/05/17 23:29:30 correct AUTH -> AUTH state transition; previously we would transition through the SCAN state but with the new scanning logic we don't do that any more so we need to explicitly send/resend the AUTH frame Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_proto.c#8 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_proto.c#8 (text+ko) ==== @@ -1261,7 +1261,8 @@ IEEE80211_FC0_SUBTYPE_AUTH, 2); break; case IEEE80211_FC0_SUBTYPE_DEAUTH: - /* ignore and retry scan on timeout */ + IEEE80211_SEND_MGMT(ni, + IEEE80211_FC0_SUBTYPE_AUTH, 1); break; } break; From owner-p4-projects@FreeBSD.ORG Tue May 17 23:31:36 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7729516A4D1; Tue, 17 May 2005 23:31:36 +0000 (GMT) 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 39C6316A4CE for ; Tue, 17 May 2005 23:31:36 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F3B3A43D8F for ; Tue, 17 May 2005 23:31:35 +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 j4HNVZdF060698 for ; Tue, 17 May 2005 23:31:35 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4HNVZQG060695 for perforce@freebsd.org; Tue, 17 May 2005 23:31:35 GMT (envelope-from sam@freebsd.org) Date: Tue, 17 May 2005 23:31:35 GMT Message-Id: <200505172331.j4HNVZQG060695@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 77112 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: Tue, 17 May 2005 23:31:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=77112 Change 77112 by sam@sam_ebb on 2005/05/17 23:31:08 Fixup tx timeout of mgmt frames in sta mode: don't assert fail if this happens while scanning; it shouldn't happen but it's ok in that case to just ignore the timeout. While here add a debug msg in case it continues to happen. Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_output.c#12 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_output.c#12 (text+ko) ==== @@ -1563,9 +1563,13 @@ { struct ieee80211vap *vap = arg; - KASSERT((vap->iv_ic->ic_flags & IEEE80211_F_SCAN) == 0, - ("mgt frame timeout while scanning?")); - if (vap->iv_state != IEEE80211_S_INIT) + IEEE80211_DPRINTF(vap, IEEE80211_MSG_STATE, + "%s: state %s%s\n", __func__, + ieee80211_state_name[vap->iv_state], + vap->iv_ic->ic_flags & IEEE80211_F_SCAN ? ", scan active" : ""); + + if (vap->iv_state != IEEE80211_S_INIT && + (vap->iv_ic->ic_flags & IEEE80211_F_SCAN) == 0) ieee80211_new_state(vap, IEEE80211_S_SCAN, 0); } From owner-p4-projects@FreeBSD.ORG Tue May 17 23:32:39 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2902E16A4D1; Tue, 17 May 2005 23:32:39 +0000 (GMT) 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 E030016A4CE for ; Tue, 17 May 2005 23:32:38 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B577F43D6A for ; Tue, 17 May 2005 23:32:37 +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 j4HNWbdn060733 for ; Tue, 17 May 2005 23:32:37 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4HNWbFh060730 for perforce@freebsd.org; Tue, 17 May 2005 23:32:37 GMT (envelope-from sam@freebsd.org) Date: Tue, 17 May 2005 23:32:37 GMT Message-Id: <200505172332.j4HNWbFh060730@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 77113 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: Tue, 17 May 2005 23:32:39 -0000 http://perforce.freebsd.org/chv.cgi?CH=77113 Change 77113 by sam@sam_ebb on 2005/05/17 23:32:15 When receiving a NAK to an AUTH or ASSOC request frame explicitly kick the state machine rather than waiting for the tx timeout to fire. Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_input.c#12 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_input.c#12 (text+ko) ==== @@ -1138,13 +1138,10 @@ IEEE80211_NOTE(vap, IEEE80211_MSG_DEBUG | IEEE80211_MSG_AUTH, ni, "open auth failed (reason %d)", status); - /* XXX can this happen? */ - if (ni != vap->iv_bss) - ni->ni_fails++; vap->iv_stats.is_rx_auth_fail++; - return; - } - ieee80211_new_state(vap, IEEE80211_S_ASSOC, 0); + ieee80211_new_state(vap, IEEE80211_S_SCAN, 0); + } else + ieee80211_new_state(vap, IEEE80211_S_ASSOC, 0); break; case IEEE80211_M_MONITOR: break; @@ -1211,6 +1208,7 @@ * ordering in which case this check would just be * for sanity/consistency. */ + estatus = 0; /* NB: silence compiler */ if ((vap->iv_flags & IEEE80211_F_PRIVACY) == 0) { IEEE80211_DISCARD_MAC(vap, IEEE80211_MSG_AUTH, ni->ni_macaddr, "shared key auth", @@ -1375,17 +1373,14 @@ ieee80211_getbssid(vap, wh), "shared key auth failed (reason %d)", status); - /* XXX can this happen? */ - if (ni != vap->iv_bss) - ni->ni_fails++; vap->iv_stats.is_rx_auth_fail++; - return; + goto bad; } ieee80211_new_state(vap, IEEE80211_S_ASSOC, 0); break; case IEEE80211_AUTH_SHARED_CHALLENGE: if (!alloc_challenge(ni)) - return; + goto bad; /* XXX could optimize by passing recvd challenge */ memcpy(ni->ni_challenge, &challenge[2], challenge[1]); IEEE80211_SEND_MGMT(ni, @@ -1395,20 +1390,28 @@ IEEE80211_DISCARD(vap, IEEE80211_MSG_AUTH, wh, "shared key auth", "bad seq %d", seq); vap->iv_stats.is_rx_bad_auth++; - return; + goto bad; } break; } return; bad: - /* - * Send an error response; but only when operating as an AP. - */ if (vap->iv_opmode == IEEE80211_M_HOSTAP) { + /* + * Send an error response. + */ /* XXX hack to workaround calling convention */ ieee80211_send_error(ni, wh->i_addr2, IEEE80211_FC0_SUBTYPE_AUTH, (seq + 1) | (estatus<<16)); + } else if (vap->iv_opmode == IEEE80211_M_STA) { + /* + * Kick the state machine. This short-circuits + * using the mgt frame timeout to trigger the + * state transition. + */ + if (vap->iv_state == IEEE80211_S_AUTH) + ieee80211_new_state(vap, IEEE80211_S_SCAN, 0); } } @@ -2749,9 +2752,8 @@ wh->i_addr2, "%sassoc failed (reason %d)", ISREASSOC(subtype) ? "re" : "", status); - if (ni != vap->iv_bss) /* XXX never true? */ - ni->ni_fails++; vap->iv_stats.is_rx_auth_fail++; /* XXX */ + ieee80211_new_state(vap, IEEE80211_S_SCAN, 0); return; } associd = le16toh(*(u_int16_t *)frm); @@ -2783,9 +2785,8 @@ wh->i_addr2, "%sassoc failed (rate set mismatch)", ISREASSOC(subtype) ? "re" : ""); - if (ni != vap->iv_bss) /* XXX never true? */ - ni->ni_fails++; vap->iv_stats.is_rx_assoc_norate++; + ieee80211_new_state(vap, IEEE80211_S_SCAN, 0); return; } From owner-p4-projects@FreeBSD.ORG Tue May 17 23:34:41 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2E07416A4D1; Tue, 17 May 2005 23:34:41 +0000 (GMT) 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 0982916A4CE for ; Tue, 17 May 2005 23:34:41 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BDA7243DBB for ; Tue, 17 May 2005 23:34:40 +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 j4HNYeS5060788 for ; Tue, 17 May 2005 23:34:40 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4HNYe5d060785 for perforce@freebsd.org; Tue, 17 May 2005 23:34:40 GMT (envelope-from sam@freebsd.org) Date: Tue, 17 May 2005 23:34:40 GMT Message-Id: <200505172334.j4HNYe5d060785@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 77114 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: Tue, 17 May 2005 23:34:41 -0000 http://perforce.freebsd.org/chv.cgi?CH=77114 Change 77114 by sam@sam_ebb on 2005/05/17 23:34:12 Synchronize wme and dynamic turbo state for multiple vap's by marking ic_flags with the intersection of all vap's. This permits drivers to check ic_flags to see if wme/dturbo should be setup. Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211.c#10 edit .. //depot/projects/vap/sys/net80211/ieee80211_ioctl.c#10 edit .. //depot/projects/vap/sys/net80211/ieee80211_var.h#11 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211.c#10 (text+ko) ==== @@ -329,6 +329,8 @@ IEEE80211_LOCK(ic); TAILQ_INSERT_TAIL(&ic->ic_vaps, vap, iv_next); + ieee80211_syncflag(ic, IEEE80211_F_WME); + ieee80211_syncflag(ic, IEEE80211_F_TURBOP); IEEE80211_UNLOCK(ic); return 1; @@ -347,6 +349,8 @@ TAILQ_REMOVE(&ic->ic_vaps, vap, iv_next); if (TAILQ_EMPTY(&ic->ic_vaps)) /* reset to supported mode */ ic->ic_opmode = IEEE80211_M_STA; + ieee80211_syncflag(ic, IEEE80211_F_WME); + ieee80211_syncflag(ic, IEEE80211_F_TURBOP); IEEE80211_UNLOCK(ic); ifmedia_removeall(&vap->iv_media); @@ -363,6 +367,23 @@ ieee80211_node_vdetach(vap); } +void +ieee80211_syncflag(struct ieee80211com *ic, int flag) +{ + struct ieee80211vap *vap; + int bit; + + bit = 1; + /* XXX locking */ + TAILQ_FOREACH(vap, &ic->ic_vaps, iv_next) + if ((vap->iv_flags & flag) == 0) + bit = 0; + if (bit) + ic->ic_flags |= flag; + else + ic->ic_flags &= ~flag; +} + /* * Convert MHz frequency to IEEE channel number. */ ==== //depot/projects/vap/sys/net80211/ieee80211_ioctl.c#10 (text+ko) ==== @@ -1620,6 +1620,7 @@ vap->iv_flags |= IEEE80211_F_WME; } else vap->iv_flags &= ~IEEE80211_F_WME; + ieee80211_syncflag(ic, IEEE80211_F_WME); error = ENETRESET; /* XXX maybe not for station? */ break; case IEEE80211_IOC_HIDESSID: @@ -1716,6 +1717,8 @@ error = ieee80211_ioctl_setchanlist(vap, ireq); break; case IEEE80211_IOC_SCAN_REQ: + IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN, + "%s: active scan request\n", __func__); error = ieee80211_start_scan(vap, IEEE80211_SCAN_ACTIVE | IEEE80211_SCAN_NOPICK | @@ -1777,6 +1780,7 @@ vap->iv_flags |= IEEE80211_F_TURBOP; } else vap->iv_flags &= ~IEEE80211_F_TURBOP; + ieee80211_syncflag(ic, IEEE80211_F_TURBOP); error = ENETRESET; /* XXX maybe not for station? */ break; case IEEE80211_IOC_BGSCAN: ==== //depot/projects/vap/sys/net80211/ieee80211_var.h#11 (text+ko) ==== @@ -391,6 +391,7 @@ int ieee80211_rate2media(struct ieee80211com *, int, enum ieee80211_phymode); int ieee80211_media2rate(int); +void ieee80211_syncflag(struct ieee80211com *, int); u_int ieee80211_mhz2ieee(u_int, u_int); u_int ieee80211_chan2ieee(struct ieee80211com *, const struct ieee80211_channel *); From owner-p4-projects@FreeBSD.ORG Tue May 17 23:38:50 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 43F6C16A4D1; Tue, 17 May 2005 23:38:50 +0000 (GMT) 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 2039D16A4CE for ; Tue, 17 May 2005 23:38:50 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F051C43DCA for ; Tue, 17 May 2005 23:38: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 j4HNckog061057 for ; Tue, 17 May 2005 23:38:46 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4HNcjSS061054 for perforce@freebsd.org; Tue, 17 May 2005 23:38:45 GMT (envelope-from sam@freebsd.org) Date: Tue, 17 May 2005 23:38:45 GMT Message-Id: <200505172338.j4HNcjSS061054@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 77115 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: Tue, 17 May 2005 23:38:50 -0000 http://perforce.freebsd.org/chv.cgi?CH=77115 Change 77115 by sam@sam_ebb on 2005/05/17 23:37:55 o enable/disable wds for sta mode o use the command line usage when showing hidessid status Affected files ... .. //depot/projects/vap/sbin/ifconfig/ifieee80211.c#4 edit Differences ... ==== //depot/projects/vap/sbin/ifconfig/ifieee80211.c#4 (text+ko) ==== @@ -1179,6 +1179,12 @@ #undef iseq } +static void +set80211wds(const char *val, int d, int s, const struct afswtch *rafp) +{ + set80211(s, IEEE80211_IOC_WDS, d, 0, NULL); +} + static enum ieee80211_opmode get80211opmode(int s) { @@ -1623,9 +1629,9 @@ ireq.i_type = IEEE80211_IOC_HIDESSID; if (ioctl(s, SIOCG80211, &ireq) != -1) { if (ireq.i_val) - LINE_CHECK("%cssid HIDE", spacer); + LINE_CHECK("%chidessid", spacer); else if (verbose) - LINE_CHECK("%cssid SHOW", spacer); + LINE_CHECK("%c-hidessid", spacer); } ireq.i_type = IEEE80211_IOC_APBRIDGE; @@ -1680,6 +1686,13 @@ spacer, ireq.i_val); } } + ireq.i_type = IEEE80211_IOC_WDS; + if (ioctl(s, SIOCG80211, &ireq) != -1) { + if (ireq.i_val) + LINE_CHECK("%cwds", spacer); + else if (verbose) + LINE_CHECK("%c-wds", spacer); + } } ireq.i_type = IEEE80211_IOC_BEACON_INTERVAL; if (ioctl(s, SIOCG80211, &ireq) != -1) { @@ -1905,6 +1918,8 @@ DEF_CMD("-bgscan", 0, set80211bgscan), DEF_CMD_ARG("bgscanidle", set80211bgscanidle), DEF_CMD_ARG("bgscanintvl", set80211bgscanintvl), + DEF_CMD("wds", 1, set80211wds), + DEF_CMD("-wds", 0, set80211wds), }; static struct afswtch af_ieee80211 = { .af_name = "af_ieee80211", From owner-p4-projects@FreeBSD.ORG Tue May 17 23:45:59 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4B44416A4D2; Tue, 17 May 2005 23:45:59 +0000 (GMT) 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 23E9316A4CE for ; Tue, 17 May 2005 23:45:59 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C3C2843D69 for ; Tue, 17 May 2005 23:45: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 j4HNjtKh061426 for ; Tue, 17 May 2005 23:45:55 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4HNjsGm061423 for perforce@freebsd.org; Tue, 17 May 2005 23:45:54 GMT (envelope-from sam@freebsd.org) Date: Tue, 17 May 2005 23:45:54 GMT Message-Id: <200505172345.j4HNjsGm061423@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 77116 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: Tue, 17 May 2005 23:46:00 -0000 http://perforce.freebsd.org/chv.cgi?CH=77116 Change 77116 by sam@sam_ebb on 2005/05/17 23:45:11 indicate wds is supported Affected files ... .. //depot/projects/vap/sys/dev/ath/if_ath.c#14 edit Differences ... ==== //depot/projects/vap/sys/dev/ath/if_ath.c#14 (text+ko) ==== @@ -515,6 +515,7 @@ | IEEE80211_C_SHSLOT /* short slot time supported */ | IEEE80211_C_WPA /* capable of WPA1+WPA2 */ | IEEE80211_C_BGSCAN /* capable of bg scanning */ + | IEEE80211_C_WDS /* 4-address frames supported */ ; /* * Query the hal to figure out h/w crypto support. From owner-p4-projects@FreeBSD.ORG Tue May 17 23:46:00 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 76F1916A4CE; Tue, 17 May 2005 23:45:59 +0000 (GMT) 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 4732D16A4D0 for ; Tue, 17 May 2005 23:45:59 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 184F143DB1 for ; Tue, 17 May 2005 23:45: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 j4HNjtlG061432 for ; Tue, 17 May 2005 23:45:55 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4HNjt3h061429 for perforce@freebsd.org; Tue, 17 May 2005 23:45:55 GMT (envelope-from sam@freebsd.org) Date: Tue, 17 May 2005 23:45:55 GMT Message-Id: <200505172345.j4HNjt3h061429@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 77117 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: Tue, 17 May 2005 23:46:00 -0000 http://perforce.freebsd.org/chv.cgi?CH=77117 Change 77117 by sam@sam_ebb on 2005/05/17 23:45:32 add ioctl's for wds operation Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_ioctl.c#11 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_ioctl.c#11 (text+ko) ==== @@ -914,6 +914,9 @@ case IEEE80211_IOC_BGSCAN_INTERVAL: ireq->i_val = vap->iv_bgscanintvl/hz; /* seconds */ break; + case IEEE80211_IOC_WDS: + ireq->i_val = (vap->iv_flags & IEEE80211_F_WDS) != 0; + break; default: error = EINVAL; break; @@ -1803,6 +1806,15 @@ else error = EINVAL; break; + case IEEE80211_IOC_WDS: + if (ireq->i_val) { + if ((vap->iv_caps & IEEE80211_C_WDS) == 0) + return EINVAL; + vap->iv_flags |= IEEE80211_F_WDS; + } else + vap->iv_flags &= ~IEEE80211_F_WDS; + /* XXX no need to sync? */ + break; default: error = EINVAL; break; From owner-p4-projects@FreeBSD.ORG Wed May 18 00:07:23 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E1D0516A4D1; Wed, 18 May 2005 00:07:22 +0000 (GMT) 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 9E90516A4CE for ; Wed, 18 May 2005 00:07:22 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7954B43D7F for ; Wed, 18 May 2005 00:07: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 j4I07MCN062250 for ; Wed, 18 May 2005 00:07:22 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4I07Mkf062247 for perforce@freebsd.org; Wed, 18 May 2005 00:07:22 GMT (envelope-from sam@freebsd.org) Date: Wed, 18 May 2005 00:07:22 GMT Message-Id: <200505180007.j4I07Mkf062247@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 77118 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: Wed, 18 May 2005 00:07:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=77118 Change 77118 by sam@sam_ebb on 2005/05/18 00:06:26 propagate all capabilities other than the opmode ones when creating a vap; eliminates the need for IEEE80211_C_COMMON Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211.c#11 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211.c#11 (text+ko) ==== @@ -229,6 +229,9 @@ ieee80211_vap_setup(struct ieee80211com *ic, struct ieee80211vap *vap, const char name[IFNAMSIZ], int unit, int opmode) { +#define IEEE80211_C_OPMODE \ + (IEEE80211_C_IBSS | IEEE80211_C_HOSTAP | IEEE80211_C_AHDEMO | \ + IEEE80211_C_MONITOR) struct ifnet *ifp; ifp = &vap->iv_if; @@ -246,7 +249,7 @@ vap->iv_ic = ic; vap->iv_flags = ic->ic_flags; /* propagate common flags */ - vap->iv_caps = ic->ic_caps & IEEE80211_C_COMMON; + vap->iv_caps = ic->ic_caps &~ IEEE80211_C_OPMODE; vap->iv_opmode = opmode; switch (opmode) { case IEEE80211_M_STA: @@ -300,6 +303,7 @@ ieee80211_sysctl_vattach(vap); return 1; +#undef IEEE80211_C_OPMODE } int From owner-p4-projects@FreeBSD.ORG Wed May 18 00:07:24 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D08FD16A4D5; Wed, 18 May 2005 00:07:23 +0000 (GMT) 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 EF4D616A4D5 for ; Wed, 18 May 2005 00:07:22 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C6DF043D7F for ; Wed, 18 May 2005 00:07: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 j4I07MOI062257 for ; Wed, 18 May 2005 00:07:22 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4I07MEW062253 for perforce@freebsd.org; Wed, 18 May 2005 00:07:22 GMT (envelope-from sam@freebsd.org) Date: Wed, 18 May 2005 00:07:22 GMT Message-Id: <200505180007.j4I07MEW062253@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 77119 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: Wed, 18 May 2005 00:07:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=77119 Change 77119 by sam@sam_ebb on 2005/05/18 00:07:10 o purge IEEE80211_C_COMMON o tweak min bg scan parameters Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_var.h#12 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_var.h#12 (text+ko) ==== @@ -70,10 +70,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 30 /* min bg scan intvl (secs) */ +#define IEEE80211_BGSCAN_INTVAL_MIN (1*60) /* min bg scan intvl (secs) */ #define IEEE80211_BGSCAN_INTVAL_DEFAULT (5*60) /* default bg scan intvl */ -#define IEEE80211_BGSCAN_IDLE_MIN 500 /* min idle time (ms) */ +#define IEEE80211_BGSCAN_IDLE_MIN 250 /* min idle time (ms) */ #define IEEE80211_BGSCAN_IDLE_DEFAULT (10*1000) /* default idle time (ms) */ #define IEEE80211_PS_SLEEP 0x1 /* STA is in power saving mode */ @@ -364,12 +364,6 @@ /* XXX protection/barker? */ #define IEEE80211_C_CRYPTO 0x0000002f /* CAPABILITY: crypto alg's */ -#define IEEE80211_C_COMMON /* propagated to vap's */\ - (IEEE80211_C_CRYPTO | IEEE80211_C_FF | IEEE80211_C_TURBOP | \ - IEEE80211_C_PMGT | IEEE80211_C_SWRETRY | IEEE80211_C_TXPMGT | \ - IEEE80211_C_SHSLOT | IEEE80211_C_SHPREAMBLE | IEEE80211_C_TKIPMIC | \ - IEEE80211_C_WPA | IEEE80211_C_BURST | IEEE80211_C_WME | \ - IEEE80211_C_BGSCAN) /* check if a capability was negotiated for use */ #define IEEE80211_ATH_CAP(vap, ni, bit) \ From owner-p4-projects@FreeBSD.ORG Wed May 18 00:30:52 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F04BA16A4D1; Wed, 18 May 2005 00:30:51 +0000 (GMT) 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 B0E9C16A4CE for ; Wed, 18 May 2005 00:30:51 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8C31643DA8 for ; Wed, 18 May 2005 00:30:51 +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 j4I0Up5b063236 for ; Wed, 18 May 2005 00:30:51 GMT (envelope-from wsalamon@computer.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4I0Upjm063233 for perforce@freebsd.org; Wed, 18 May 2005 00:30:51 GMT (envelope-from wsalamon@computer.org) Date: Wed, 18 May 2005 00:30:51 GMT Message-Id: <200505180030.j4I0Upjm063233@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 Subject: PERFORCE change 77120 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: Wed, 18 May 2005 00:30:52 -0000 http://perforce.freebsd.org/chv.cgi?CH=77120 Change 77120 by wsalamon@rickenbacker on 2005/05/18 00:30:36 Fix a syntax error within a KERNEL conditional complile. Affected files ... .. //depot/projects/trustedbsd/openbsm/libbsm/bsm_token.c#15 edit Differences ... ==== //depot/projects/trustedbsd/openbsm/libbsm/bsm_token.c#15 (text+ko) ==== @@ -1244,7 +1244,7 @@ * milliseconds of time 4 bytes/8 bytes (32-bit/64-bit value) */ #if defined(KERNEL) || defined(_KERNEL) -token_t *au_to_header32(int rec_size, au_event_t e_type, au_emod_t e_mod) +token_t *au_to_header32(int rec_size, au_event_t e_type, au_emod_t e_mod, struct timeval tm) #else token_t *au_to_header32(int rec_size, au_event_t e_type, au_emod_t e_mod) From owner-p4-projects@FreeBSD.ORG Wed May 18 00:38:01 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3A4EE16A4D1; Wed, 18 May 2005 00:38:01 +0000 (GMT) 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 DAE7516A4CE for ; Wed, 18 May 2005 00:38:00 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A302A43DAA for ; Wed, 18 May 2005 00:38:00 +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 j4I0c0xR063713 for ; Wed, 18 May 2005 00:38:00 GMT (envelope-from wsalamon@computer.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4I0c0vG063708 for perforce@freebsd.org; Wed, 18 May 2005 00:38:00 GMT (envelope-from wsalamon@computer.org) Date: Wed, 18 May 2005 00:38:00 GMT Message-Id: <200505180038.j4I0c0vG063708@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 Subject: PERFORCE change 77121 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: Wed, 18 May 2005 00:38:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=77121 Change 77121 by wsalamon@rickenbacker on 2005/05/18 00:37:05 Integrate shared files from the OpenBSM branch. Changes to come. Affected files ... .. //depot/projects/trustedbsd/audit3/sys/bsm/audit_internal.h#1 branch .. //depot/projects/trustedbsd/audit3/sys/bsm/audit_kernel.h#13 edit .. //depot/projects/trustedbsd/audit3/sys/bsm/audit_record.h#3 edit .. //depot/projects/trustedbsd/audit3/sys/security/audit/audit_klib.h#5 edit .. //depot/projects/trustedbsd/audit3/sys/security/audit/kern_bsm_audit.c#10 edit .. //depot/projects/trustedbsd/audit3/sys/security/audit/kern_bsm_token.c#6 integrate Differences ... ==== //depot/projects/trustedbsd/audit3/sys/bsm/audit_kernel.h#13 (text+ko) ==== @@ -267,13 +267,6 @@ struct timespec *endtime, short event); void kau_free(struct au_record *rec); void kau_init(void); -token_t *kau_to_file(char *file, struct timeval *tv); -token_t *kau_to_header(struct timespec *ctime, int rec_size, - au_event_t e_type, au_emod_t e_mod); -token_t *kau_to_header32(struct timespec *ctime, int rec_size, - au_event_t e_type, au_emod_t e_mod); -token_t *kau_to_header64(struct timespec *ctime, int rec_size, - au_event_t e_type, au_emod_t e_mod); /* * The remaining kernel functions are conditionally compiled in as they * are wrapped by a macro, and the macro should be the only place in ==== //depot/projects/trustedbsd/audit3/sys/bsm/audit_record.h#3 (text+ko) ==== @@ -1,15 +1,15 @@ /* * @APPLE_LICENSE_HEADER_START@ - * + * * Copyright (c) 1999-2004 Apple Computer, Inc. All Rights Reserved. - * + * * This file contains Original Code and/or Modifications of Original Code * as defined in and that are subject to the Apple Public Source License * Version 2.0 (the 'License'). You may not use this file except in * compliance with the License. Please obtain a copy of the License at * http://www.opensource.apple.com/apsl/ and read it before using this * file. - * + * * The Original Code and all software distributed under the License are * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, @@ -17,186 +17,154 @@ * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT. * Please see the License for the specific language governing rights and * limitations under the License. - * + * * @APPLE_LICENSE_HEADER_END@ */ #ifndef _BSM_AUDIT_RECORD_H_ #define _BSM_AUDIT_RECORD_H_ -#include -#include -#include -#include -#include -#include -#include -#include - -/* We could determined the header and trailer sizes by - * defining appropriate structures. We hold off that approach - * till we have a consistant way of using structures for all tokens. - * This is not straightforward since these token structures may - * contain pointers of whose contents we dont know the size - * (e.g text tokens) - */ -#define HEADER_SIZE 18 -#define TRAILER_SIZE 7 - -#define ADD_U_CHAR(loc, val) \ - do {\ - *loc = val;\ - loc += sizeof(u_char);\ - }while(0) - - -#define ADD_U_INT16(loc, val) \ - do { \ - memcpy(loc, (u_char *)&val, sizeof(u_int16_t));\ - loc += sizeof(u_int16_t); \ - }while(0) - -#define ADD_U_INT32(loc, val) \ - do { \ - memcpy(loc, (u_char *)&val, sizeof(u_int32_t));\ - loc += sizeof(u_int32_t); \ - }while(0) - -#define ADD_U_INT64(loc, val)\ - do {\ - memcpy(loc, (u_char *)&val, sizeof(u_int64_t));\ - loc += sizeof(u_int64_t); \ - }while(0) - -#define ADD_MEM(loc, data, size) \ - do { \ - memcpy(loc, data, size);\ - loc += size;\ - }while(0) - -#define ADD_STRING(loc, data, size) ADD_MEM(loc, data, size) - - /* Various token id types */ -/* +/* * Values inside the comments are not documented in the BSM pages and - * have been picked up from the header files - */ - -/* - * Values marked as XXX do not have a value defined in the BSM header files - */ - -/* - * Control token types - -#define AUT_OTHER_FILE ((char)0x11) -#define AUT_OTHER_FILE32 AUT_OTHER_FILE -#define AUT_OHEADER ((char)0x12) - + * have been picked up from the header files */ -#define AUT_INVALID 0x00 -#define AU_FILE_TOKEN 0x11 -#define AU_TRAILER_TOKEN 0x13 -#define AU_HEADER_32_TOKEN 0x14 -#define AU_HEADER_EX_32_TOKEN 0x15 - /* - * Data token types -#define AUT_SERVER ((char)0x25) -#define AUT_SERVER32 AUT_SERVER + * Values marked as XXX do not have a value defined in the BSM header files */ -#define AU_DATA_TOKEN 0x21 -#define AU_ARB_TOKEN AU_DATA_TOKEN -#define AU_IPC_TOKEN 0x22 -#define AU_PATH_TOKEN 0x23 -#define AU_SUBJECT_32_TOKEN 0x24 -#define AU_PROCESS_32_TOKEN 0x26 -#define AU_RETURN_32_TOKEN 0x27 -#define AU_TEXT_TOKEN 0x28 -#define AU_OPAQUE_TOKEN 0x29 -#define AU_IN_ADDR_TOKEN 0x2A -#define AU_IP_TOKEN 0x2B -#define AU_IPORT_TOKEN 0x2C -#define AU_ARG32_TOKEN 0x2D -#define AU_SOCK_TOKEN 0x2E -#define AU_SEQ_TOKEN 0x2F +#define AUT_INVALID 0x00 +#define AUT_OTHER_FILE32 0x11 +#define AUT_OHEADER 0x12 +#define AUT_TRAILER 0x13 +#define AUT_HEADER32 0x14 +#define AUT_HEADER32_EX 0x15 +#define AUT_DATA 0x21 +#define AUT_IPC 0x22 +#define AUT_PATH 0x23 +#define AUT_SUBJECT32 0x24 +#define AUT_SERVER32 0x25 +#define AUT_PROCESS32 0x26 +#define AUT_RETURN32 0x27 +#define AUT_TEXT 0x28 +#define AUT_OPAQUE 0x29 +#define AUT_IN_ADDR 0x2a +#define AUT_IP 0x2b +#define AUT_IPORT 0x2c +#define AUT_ARG32 0x2d +#define AUT_SOCKET 0x2e +#define AUT_SEQ 0x2f +#define AUT_ACL 0x30 +#define AUT_ATTR 0x31 +#define AUT_IPC_PERM 0x32 +#define AUT_LABEL 0x33 +#define AUT_GROUPS 0x34 +#define AUT_ILABEL 0x35 +#define AUT_SLABEL 0x36 +#define AUT_CLEAR 0x37 +#define AUT_PRIV 0x38 +#define AUT_UPRIV 0x39 +#define AUT_LIAISON 0x3a +#define AUT_NEWGROUPS 0x3b +#define AUT_EXEC_ARGS 0x3c +#define AUT_EXEC_ENV 0x3d +#define AUT_ATTR32 0x3e +/* #define AUT_???? 0x3f */ +#define AUT_XATOM 0x40 +#define AUT_XOBJ 0x41 +#define AUT_XPROTO 0x42 +#define AUT_XSELECT 0x43 +/* XXXRW: Additional X11 tokens not defined? */ +#define AUT_CMD 0x51 +#define AUT_EXIT 0x52 +/* XXXRW: OpenBSM AUT_HOST 0x70? */ +#define AUT_ARG64 0x71 +#define AUT_RETURN64 0x72 +#define AUT_ATTR64 0x73 +#define AUT_HEADER64 0x74 +#define AUT_SUBJECT64 0x75 +#define AUT_SERVER64 0x76 +#define AUT_PROCESS64 0x77 +#define AUT_OTHER_FILE64 0x78 +#define AUT_HEADER64_EX 0x79 +#define AUT_SUBJECT32_EX 0x7a +#define AUT_PROCESS32_EX 0x7b +#define AUT_SUBJECT64_EX 0x7c +#define AUT_PROCESS64_EX 0x7d +#define AUT_IN_ADDR_EX 0x7e +#define AUT_SOCKET_EX 0x7f /* - * Modifier token types - -#define AUT_ACL ((char)0x30) -#define AUT_LABEL ((char)0x33) -#define AUT_GROUPS ((char)0x34) -#define AUT_ILABEL ((char)0x35) -#define AUT_SLABEL ((char)0x36) -#define AUT_CLEAR ((char)0x37) -#define AUT_PRIV ((char)0x38) -#define AUT_UPRIV ((char)0x39) -#define AUT_LIAISON ((char)0x3A) - + * Pre-64-bit BSM, 32-bit tokens weren't explicitly named as '32'. We have + * compatibility defines. */ - -#define AU_ATTR_TOKEN 0x31 -#define AU_IPCPERM_TOKEN 0x32 -#define AU_NEWGROUPS_TOKEN 0x3B -#define AU_EXEC_ARG_TOKEN 0x3C -#define AU_EXEC_ENV_TOKEN 0x3D -#define AU_ATTR32_TOKEN 0x3E +#define AUT_HEADER AUT_HEADER32 +#define AUT_ARG AUT_ARG32 +#define AUT_RETURN AUT_RETURN32 +#define AUT_SUBJECT AUT_SUBJECT32 +#define AUT_SERVER AUT_SERVER32 +#define AUT_PROCESS AUT_PROCESS32 +#define AUT_OTHER_FILE AUT_OTHER_FILE32 /* - * Command token types + * Darwin's bsm distribution uses the following non-BSM token name defines. + * We provide them for a single OpenBSM release for compatibility reasons. */ - -#define AU_CMD_TOKEN 0x51 -#define AU_EXIT_TOKEN 0x52 +#define AU_FILE_TOKEN AUT_OTHER_FILE32 +#define AU_TRAILER_TOKEN AUT_TRAILER +#define AU_HEADER_32_TOKEN AUT_HEADER32 +#define AU_DATA_TOKEN AUT_DATA +#define AU_ARB_TOKEN AUT_DATA +#define AU_IPC_TOKEN AUT_IPC +#define AU_PATH_TOKEN AUT_PATH +#define AU_SUBJECT_32_TOKEN AUT_SUBJECT32 +#define AU_PROCESS_32_TOKEN AUT_PROCESS32 +#define AU_RETURN_32_TOKEN AUT_RETURN32 +#define AU_TEXT_TOKEN AUT_TEXT +#define AU_OPAQUE_TOKEN AUT_OPAQUE +#define AU_IN_ADDR_TOKEN AUT_IN_ADDR +#define AU_IP_TOKEN AUT_IP +#define AU_IPORT_TOKEN AUT_IPORT +#define AU_ARG32_TOKEN AUT_ARG32 +#define AU_SOCK_TOKEN AUT_SOCKET +#define AU_SEQ_TOKEN AUT_SEQ +#define AU_ATTR_TOKEN AUT_ATTR +#define AU_IPCPERM_TOKEN AUT_IPC_PERM +#define AU_NEWGROUPS_TOKEN AUT_NEWGROUPS +#define AU_EXEC_ARG_TOKEN AUT_EXEC_ARGS +#define AU_EXEC_ENV_TOKEN AUT_EXEC_ENV +#define AU_ATTR32_TOKEN AUT_ATTR32 +#define AU_CMD_TOKEN AUT_CMD +#define AU_EXIT_TOKEN AUT_EXIT +#define AU_ARG64_TOKEN AUT_ARG64 +#define AU_RETURN_64_TOKEN AUT_RETURN64 +#define AU_ATTR64_TOKEN AUT_ATTR64 +#define AU_HEADER_64_TOKEN AUT_HEADER64 +#define AU_SUBJECT_64_TOKEN AUT_SUBJECT64 +#define AU_PROCESS_64_TOKEN AUT_PROCESS64 +#define AU_HEADER_64_EX_TOKEN AUT_HEADER64_EX +#define AU_SUBJECT_32_EX_TOKEN AUT_SUBJECT32_EX +#define AU_PROCESS_32_EX_TOKEN AUT_PROCESS32_EX +#define AU_SUBJECT_64_EX_TOKEN AUT_SUBJECT64_EX +#define AU_PROCESS_64_EX_TOKEN AUT_PROCESS64_EX +#define AU_IN_ADDR_EX_TOKEN AUT_IN_ADDR_EX +#define AU_SOCK_32_EX_TOKEN AUT_SOCKET_EX /* - * Miscellaneous token types - -#define AUT_HOST ((char)0x70) - + * The values for the following token ids are not defined by BSM. + * + * XXXRW: Not sure how to andle these in OpenBSM yet, but I'll give them + * names more consistent with Sun's BSM. These originally came from Apple's + * BSM. */ - -/* - * 64bit token types - -#define AUT_SERVER64 ((char)0x76) -#define AUT_OTHER_FILE64 ((char)0x78) - - */ - -#define AU_ARG64_TOKEN 0x71 -#define AU_RETURN_64_TOKEN 0x72 -#define AU_ATTR64_TOKEN 0x73 -#define AU_HEADER_64_TOKEN 0x74 -#define AU_SUBJECT_64_TOKEN 0x75 -#define AU_PROCESS_64_TOKEN 0x77 - -/* - * Extended network address token types - */ - -#define AU_HEADER_EX_64_TOKEN 0x79 -#define AU_SUBJECT_32_EX_TOKEN 0x7a -#define AU_PROCESS_32_EX_TOKEN 0x7b -#define AU_SUBJECT_64_EX_TOKEN 0x7c -#define AU_PROCESS_64_EX_TOKEN 0x7d -#define AU_IN_ADDR_EX_TOKEN 0x7e -#define AU_SOCK_EX32_TOKEN 0x7f -#define AU_SOCK_EX128_TOKEN AUT_INVALID /*XXX*/ -#define AU_IP_EX_TOKEN AUT_INVALID /*XXX*/ - -/* - * The values for the following token ids are not - * defined by BSM - */ -#define AU_SOCK_INET_32_TOKEN 0x80 /*XXX*/ -#define AU_SOCK_INET_128_TOKEN 0x81 /*XXX*/ -#define AU_SOCK_UNIX_TOKEN 0x82 /*XXX*/ +#define AUT_SOCKINET32 0x80 /* XXX */ +#define AUT_SOCKINET128 0x81 /* XXX */ +#define AUT_SOCKUNIX 0x82 /* XXX */ +#define AU_SOCK_INET_32_TOKEN AUT_SOCKINET32 +#define AU_SOCK_INET_128_TOKEN AUT_SOCKINET128 +#define AU_SOCK_UNIX_TOKEN AUT_SOCKUNIX /* print values for the arbitrary token */ #define AUP_BINARY 0 @@ -211,7 +179,7 @@ #define AUR_LONG 2 /* ... and their sizes */ -#define AUR_BYTE_SIZE sizeof(u_char) +#define AUR_BYTE_SIZE sizeof(u_char) #define AUR_SHORT_SIZE sizeof(u_int16_t) #define AUR_LONG_SIZE sizeof(u_int32_t) @@ -220,32 +188,65 @@ #define PAD_FAILURE 0x8000 /* fail audit event */ -#define MAX_GROUPS 16 +#define BSM_MAX_GROUPS 16 #define HEADER_VERSION 1 -#define TRAILER_PAD_MAGIC 0xB105 + +/* + * BSM define is AUT_TRAILER_MAGIC; Apple BSM define is TRAILER_PAD_MAGIC; we + * split the difference, will remove the Apple define for the next release. + */ +#define AUT_TRAILER_MAGIC 0xb105 +#define TRAILER_PAD_MAGIC AUT_TRAILER_MAGIC /* BSM library calls */ __BEGIN_DECLS +struct in_addr; +struct in6_addr; +struct ip; +struct ipc_perm; +struct kevent; +struct sockaddr_in; +struct sockaddr_in6; +struct sockaddr_un; +#if defined(_KERNEL) || defined(KERNEL) +struct vnode_au_info; +#endif + int au_open(void); int au_write(int d, token_t *m); int au_close(int d, int keep, short event); +int au_close_buffer(int d, short event, u_char *buffer, + size_t *buflen); +#if defined(KERNEL) || defined(_KERNEL) +token_t *au_to_file(char *file, struct timeval tm); +#else token_t *au_to_file(char *file); -token_t *au_to_header(int rec_size, au_event_t e_type, +#endif +#if defined(KERNEL) || defined(_KERNEL) +token_t *au_to_header(int rec_size, au_event_t e_type, + au_emod_t e_mod, struct timeval tm); +token_t *au_to_header32(int rec_size, au_event_t e_type, + au_emod_t e_mod, struct timeval tm); +#else +token_t *au_to_header(int rec_size, au_event_t e_type, au_emod_t e_mod); -token_t *au_to_header32(int rec_size, au_event_t e_type, +token_t *au_to_header32(int rec_size, au_event_t e_type, au_emod_t e_mod); -token_t *au_to_header64(int rec_size, au_event_t e_type, +#endif +token_t *au_to_header64(int rec_size, au_event_t e_type, au_emod_t e_mod); token_t *au_to_me(void); - + token_t *au_to_arg(char n, char *text, u_int32_t v); token_t *au_to_arg32(char n, char *text, u_int32_t v); token_t *au_to_arg64(char n, char *text, u_int64_t v); -token_t *au_to_attr(struct vattr *attr); -token_t *au_to_attr32(struct vattr *attr); -token_t *au_to_attr64(struct vattr *attr); +#if defined(_KERNEL) || defined(KERNEL) +token_t *au_to_attr(struct vnode_au_info *vni); +token_t *au_to_attr32(struct vnode_au_info *vni); +token_t *au_to_attr64(struct vnode_au_info *vni); +#endif token_t *au_to_data(char unit_print, char unit_type, char unit_count, char *p); token_t *au_to_exit(int retval, int err); @@ -281,9 +282,13 @@ token_t *au_to_return32(char status, u_int32_t ret); token_t *au_to_return64(char status, u_int64_t ret); token_t *au_to_seq(long audit_count); +#if defined(_KERNEL) || defined(KERNEL) token_t *au_to_socket(struct socket *so); -token_t *au_to_socket_ex_32(struct socket *so); -token_t *au_to_socket_ex_128(struct socket *so); +token_t *au_to_socket_ex_32(u_int16_t lp, u_int16_t rp, + struct sockaddr *la, struct sockaddr *ta); +token_t *au_to_socket_ex_128(u_int16_t lp, u_int16_t rp, + struct sockaddr *la, struct sockaddr *ta); +#endif token_t *au_to_sock_inet(struct sockaddr_in *so); token_t *au_to_sock_inet32(struct sockaddr_in *so); token_t *au_to_sock_inet128(struct sockaddr_in6 *so); ==== //depot/projects/trustedbsd/audit3/sys/security/audit/audit_klib.h#5 (text+ko) ==== @@ -36,7 +36,6 @@ * data structures. The prototypes of these functions are declared here. */ token_t *kau_to_socket(struct socket_au_info *soi); -token_t *kau_to_attr32(struct vnode_au_info *vni); /* * audit_klib prototypes ==== //depot/projects/trustedbsd/audit3/sys/security/audit/kern_bsm_audit.c#10 (text+ko) ==== @@ -32,6 +32,7 @@ #include #include +#include #include #include #include @@ -157,11 +158,14 @@ u_char *dptr; size_t tot_rec_size; token_t *cur, *hdr, *trail; + struct timeval tm; - tot_rec_size = rec->len + HEADER_SIZE + TRAILER_SIZE; + tot_rec_size = rec->len + BSM_HEADER_SIZE + BSM_TRAILER_SIZE; if(tot_rec_size <= MAX_AUDIT_RECORD_SIZE) { /* Create the header token */ - hdr = kau_to_header32(ctime, tot_rec_size, event, 0); + tm.tv_usec = ctime->tv_nsec / 1000; + tm.tv_sec = ctime->tv_sec; + hdr = au_to_header32(tot_rec_size, event, 0, tm); if(hdr != NULL) { /* Add to head of list */ @@ -237,7 +241,7 @@ kau_write(rec, tok); \ } \ if (ar->ar_valid_arg & ARG_VNODE1) { \ - tok = kau_to_attr32(&ar->ar_arg_vnode1);\ + tok = au_to_attr32(&ar->ar_arg_vnode1);\ kau_write(rec, tok); \ } \ } while (0) @@ -251,7 +255,7 @@ UPATH1_TOKENS; \ } \ if (ar->ar_valid_arg & ARG_VNODE1) { \ - tok = kau_to_attr32(&ar->ar_arg_vnode1);\ + tok = au_to_attr32(&ar->ar_arg_vnode1);\ kau_write(rec, tok); \ } \ } while (0) @@ -263,7 +267,7 @@ kau_write(rec, tok); \ } \ if (ar->ar_valid_arg & ARG_VNODE2) { \ - tok = kau_to_attr32(&ar->ar_arg_vnode2);\ + tok = au_to_attr32(&ar->ar_arg_vnode2);\ kau_write(rec, tok); \ } \ } while (0) @@ -274,7 +278,7 @@ tok = au_to_path(ar->ar_arg_kpath1); \ kau_write(rec, tok); \ if (ar->ar_valid_arg & ARG_VNODE1) { \ - tok = kau_to_attr32(&ar->ar_arg_vnode1);\ + tok = au_to_attr32(&ar->ar_arg_vnode1);\ kau_write(rec, tok); \ } \ } else { \ @@ -1103,10 +1107,10 @@ /* XXXAUDIT There needs to be a token structure to map a token. * XXXAUDIT 'Shouldn't be simply looking at the first char. */ - if ( (c != AU_HEADER_32_TOKEN) && - (c != AU_HEADER_EX_32_TOKEN) && - (c != AU_HEADER_64_TOKEN) && - (c != AU_HEADER_EX_64_TOKEN) ) { + if ( (c != AUT_HEADER32) && + (c != AUT_HEADER32_EX) && + (c != AUT_HEADER64) && + (c != AUT_HEADER64_EX) ) { return (0); } return (1); ==== //depot/projects/trustedbsd/audit3/sys/security/audit/kern_bsm_token.c#6 (text+ko) ==== @@ -1,44 +1,80 @@ /* - * Copyright (c) 2004 Apple Computer, Inc. All rights reserved. + * Copyright (c) 2004, Apple Computer, Inc. + * Copyright (c) 2005 Robert N. M. Watson + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. * - * @APPLE_LICENSE_HEADER_START@ - * - * The contents of this file constitute Original Code as defined in and - * are subject to the Apple Public Source License Version 1.1 (the - * "License"). You may not use this file except in compliance with the - * License. Please obtain a copy of the License at - * http://www.apple.com/publicsource and read it before using this file. - * - * This Original Code and all software distributed under the License are - * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER - * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the - * License for the specific language governing rights and limitations - * under the License. - * - * @APPLE_LICENSE_HEADER_END@ + * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING + * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. */ -#include -#include -#include -#include -#include +#include +#ifdef __APPLE__ +#include +#else /* !__APPLE__ */ +#include +#endif /* __APPLE__*/ +#include +#include + +#include +#include +#include +#include + +#include +#include +#include + +#include + +#include +#include +#include +#include +#include + +#define GET_TOKEN_AREA(t, dptr, length) \ + do {\ + t = (token_t *) malloc (sizeof(token_t), M_AUDIT, M_WAITOK);\ + if(t != NULL)\ + {\ + t->len = length;\ + t->t_data = (u_char *) malloc (length * sizeof(u_char),\ + M_AUDIT, M_WAITOK);\ + if((dptr = t->t_data) == NULL)\ + {\ + free(t, M_AUDIT);\ + t = NULL;\ + }\ + else\ + {\ + memset(dptr, 0, length);\ + }\ + }\ + }while(0) -#include -#include -#include -#include -#define GET_TOKEN_AREA(tok, dptr, length) \ - do { \ - tok = malloc(sizeof(*tok), M_AUDIT, M_WAITOK); \ - tok->len = length; \ - dptr = tok->t_data = malloc(length * sizeof(u_char), \ - M_AUDIT, M_WAITOK); \ - memset(tok->t_data, 0, length); \ - } while(0) /* * token ID 1 byte @@ -50,13 +86,14 @@ token_t *au_to_arg32(char n, char *text, u_int32_t v) { token_t *t; - u_char *dptr; + u_char *dptr = NULL; u_int16_t textlen; - + if(text == NULL) { - return NULL; + errno = EINVAL; + return NULL; } - + textlen = strlen(text); GET_TOKEN_AREA(t, dptr, 9 + textlen); if(t == NULL) { @@ -65,7 +102,7 @@ textlen += 1; - ADD_U_CHAR(dptr, AU_ARG32_TOKEN); + ADD_U_CHAR(dptr, AUT_ARG32); ADD_U_CHAR(dptr, n); ADD_U_INT32(dptr, v); ADD_U_INT16(dptr, textlen); @@ -78,27 +115,28 @@ token_t *au_to_arg64(char n, char *text, u_int64_t v) { token_t *t; - u_char *dptr; + u_char *dptr = NULL; u_int16_t textlen; - + if(text == NULL) { - return NULL; + errno = EINVAL; + return NULL; } - + textlen = strlen(text); GET_TOKEN_AREA(t, dptr, 13 + textlen); if(t == NULL) { return NULL; } - textlen += 1; + textlen += 1; - ADD_U_CHAR(dptr, AU_ARG64_TOKEN); + ADD_U_CHAR(dptr, AUT_ARG64); ADD_U_CHAR(dptr, n); ADD_U_INT64(dptr, v); ADD_U_INT16(dptr, textlen); ADD_STRING(dptr, text, textlen); - + return t; } @@ -108,6 +146,7 @@ return au_to_arg32(n, text, v); } +#if defined(_KERNEL) || defined(KERNEL) /* * token ID 1 byte * file access mode 4 bytes @@ -117,72 +156,70 @@ * node ID 8 bytes * device 4 bytes/8 bytes (32-bit/64-bit) */ -token_t *au_to_attr32(struct vattr *attr) +token_t *au_to_attr32(struct vnode_au_info *vni) { - return NULL; -} - -/* Kernel-specific version of the above function */ -token_t *kau_to_attr32(struct vnode_au_info *vni) -{ token_t *t; - u_char *dptr; - u_int32_t pad0_32 = 0; + u_char *dptr = NULL; + u_int16_t pad0_16 = 0; + u_int16_t pad0_32 = 0; if(vni == NULL) { + errno = EINVAL; return NULL; } - + + GET_TOKEN_AREA(t, dptr, 29); if(t == NULL) { return NULL; } - ADD_U_CHAR(dptr, AU_ATTR32_TOKEN); - ADD_U_INT32(dptr, vni->vn_mode); + ADD_U_CHAR(dptr, AUT_ATTR32); + + /* + * Darwin defines the size for the file mode + * as 2 bytes; BSM defines 4 so pad with 0 + */ + ADD_U_INT16(dptr, pad0_16); + ADD_U_INT16(dptr, vni->vn_mode); + ADD_U_INT32(dptr, vni->vn_uid); ADD_U_INT32(dptr, vni->vn_gid); ADD_U_INT32(dptr, vni->vn_fsid); - /* Pad four bytes for the file ID due to BSM's need for 8 bytes */ - ADD_U_INT32(dptr, pad0_32); - ADD_U_INT32(dptr, vni->vn_fileid); - ADD_U_INT32(dptr, vni->vn_gen); - - return t; -} -token_t *au_to_attr64(struct vattr *attr) -{ - token_t *t; - u_char *dptr; + /* + * Some systems use 32-bit file ID's, other's use 64-bit file IDs. + * Attempt to handle both, and let the compiler sort it out. If we + * could pick this out at compile-time, it would be better, so as to + * avoid the else case below. + */ + if (sizeof(vni->vn_fileid) == sizeof(uint32_t)) { + ADD_U_INT32(dptr, pad0_32); + ADD_U_INT32(dptr, vni->vn_fileid); + } else if (sizeof(vni->vn_fileid) == sizeof(uint64_t)) { + ADD_U_INT64(dptr, vni->vn_fileid); + } else { + ADD_U_INT64(dptr, 0LL); + } - if(attr == NULL) { - return NULL; - } - - - GET_TOKEN_AREA(t, dptr, 33); - if(t == NULL) { - return NULL; - } + ADD_U_INT32(dptr, vni->vn_dev); - ADD_U_CHAR(dptr, AU_ATTR64_TOKEN); - ADD_U_INT32(dptr, attr->va_mode); - ADD_U_INT32(dptr, attr->va_uid); - ADD_U_INT32(dptr, attr->va_gid); - ADD_U_INT32(dptr, attr->va_fsid); - ADD_U_INT64(dptr, attr->va_fileid); - ADD_U_INT64(dptr, attr->va_rdev); - return t; } -token_t *au_to_attr(struct vattr *attr) +token_t *au_to_attr64(struct vnode_au_info *vni) { - return au_to_attr32(attr); + errno = ENOTSUP; + return NULL; } +token_t *au_to_attr(struct vnode_au_info *vni) +{ + return au_to_attr32(vni); +} +#endif /* !(defined(_KERNEL) || defined(KERNEL) */ + /* * token ID 1 byte * how to print 1 byte @@ -194,13 +231,14 @@ char unit_count, char *p) { token_t *t; - u_char *dptr; + u_char *dptr = NULL; size_t datasize, totdata; - + if(p == NULL) { + errno = EINVAL; return NULL; } - + /* Determine the size of the basic unit */ switch(unit_type) { case AUR_BYTE: datasize = AUR_BYTE_SIZE; @@ -208,56 +246,59 @@ case AUR_SHORT: datasize = AUR_SHORT_SIZE; break; - + case AUR_LONG: datasize = AUR_LONG_SIZE; break; - - default: return NULL; + + default: + errno = EINVAL; + return NULL; } totdata = datasize * unit_count; - + GET_TOKEN_AREA(t, dptr, totdata + 4); if(t == NULL) { return NULL; } - ADD_U_CHAR(dptr, AU_ARB_TOKEN); + ADD_U_CHAR(dptr, AUT_DATA); ADD_U_CHAR(dptr, unit_print); ADD_U_CHAR(dptr, unit_type); ADD_U_CHAR(dptr, unit_count); ADD_MEM(dptr, p, totdata); - + return t; } + /* * token ID 1 byte * status 4 bytes - * return value 4 bytes + * return value 4 bytes */ token_t *au_to_exit(int retval, int err) { token_t *t; - u_char *dptr; - + u_char *dptr = NULL; + GET_TOKEN_AREA(t, dptr, 9); if(t == NULL) { return NULL; } - - ADD_U_CHAR(dptr, AU_EXIT_TOKEN); + + ADD_U_CHAR(dptr, AUT_EXIT); ADD_U_INT32(dptr, err); ADD_U_INT32(dptr, retval); - return t; + return t; } /* */ token_t *au_to_groups(int *groups) { - return au_to_newgroups(MAX_GROUPS, groups); + return au_to_newgroups(BSM_MAX_GROUPS, groups); } /* @@ -268,25 +309,26 @@ token_t *au_to_newgroups(u_int16_t n, gid_t *groups) { token_t *t; - u_char *dptr; + u_char *dptr = NULL; int i; - + if(groups == NULL) { + errno = EINVAL; return NULL; } - + GET_TOKEN_AREA(t, dptr, n * 4 + 3); if(t == NULL) { return NULL; } - - ADD_U_CHAR(dptr, AU_NEWGROUPS_TOKEN); + + ADD_U_CHAR(dptr, AUT_NEWGROUPS); ADD_U_INT16(dptr, n); for(i = 0; i < n; i++) { ADD_U_INT32(dptr, groups[i]); } - - return t; + + return t; } @@ -299,9 +341,10 @@ token_t *au_to_in_addr(struct in_addr *internet_addr) { token_t *t; - u_char *dptr; - + u_char *dptr = NULL; + if(internet_addr == NULL) { + errno = EINVAL; return NULL; } @@ -309,8 +352,8 @@ if(t == NULL) { return NULL; >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed May 18 17:00:53 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 27F2316A4D1; Wed, 18 May 2005 17:00:53 +0000 (GMT) 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 EFD9616A4CE for ; Wed, 18 May 2005 17:00:52 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C101443D79 for ; Wed, 18 May 2005 17:00: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 j4IH0qeA051009 for ; Wed, 18 May 2005 17:00:52 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4IH0q1i051006 for perforce@freebsd.org; Wed, 18 May 2005 17:00:52 GMT (envelope-from sam@freebsd.org) Date: Wed, 18 May 2005 17:00:52 GMT Message-Id: <200505181700.j4IH0q1i051006@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 77139 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: Wed, 18 May 2005 17:00:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=77139 Change 77139 by sam@sam_ebb on 2005/05/18 17:00:06 move ps q drain+age to routines Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_freebsd.h#6 edit .. //depot/projects/vap/sys/net80211/ieee80211_node.c#7 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_freebsd.h#6 (text+ko) ==== @@ -78,14 +78,14 @@ mtx_init(&(_ni)->ni_savedq.ifq_mtx, _name, "802.11 ps queue", MTX_DEF);\ (_ni)->ni_savedq.ifq_maxlen = IEEE80211_PS_MAX_QUEUE; \ } while (0) -#define IEEE80211_NODE_SAVEQ_DESTROY(_ni) \ +#define IEEE80211_NODE_SAVEQ_DESTROY(_ni) \ mtx_destroy(&(_ni)->ni_savedq.ifq_mtx) -#define IEEE80211_NODE_SAVEQ_QLEN(_ni) \ +#define IEEE80211_NODE_SAVEQ_QLEN(_ni) \ _IF_QLEN(&(_ni)->ni_savedq) -#define IEEE80211_NODE_SAVEQ_LOCK(_ni) do { \ +#define IEEE80211_NODE_SAVEQ_LOCK(_ni) do { \ IF_LOCK(&(_ni)->ni_savedq); \ } while (0) -#define IEEE80211_NODE_SAVEQ_UNLOCK(_ni) do { \ +#define IEEE80211_NODE_SAVEQ_UNLOCK(_ni) do { \ IF_UNLOCK(&(_ni)->ni_savedq); \ } while (0) #define IEEE80211_NODE_SAVEQ_DEQUEUE(_ni, _m, _qlen) do { \ @@ -94,16 +94,6 @@ (_qlen) = IEEE80211_NODE_SAVEQ_QLEN(_ni); \ IEEE80211_NODE_SAVEQ_UNLOCK(_ni); \ } while (0) -#define IEEE80211_NODE_SAVEQ_DRAIN(_ni, _qlen) do { \ - IEEE80211_NODE_SAVEQ_LOCK(_ni); \ - (_qlen) = IEEE80211_NODE_SAVEQ_QLEN(_ni); \ - _IF_DRAIN(&(_ni)->ni_savedq); \ - IEEE80211_NODE_SAVEQ_UNLOCK(_ni); \ -} while (0) -/* XXX could be optimized */ -#define _IEEE80211_NODE_SAVEQ_DEQUEUE_HEAD(_ni, _m) do { \ - _IF_DEQUEUE(&(_ni)->ni_savedq, m); \ -} while (0) #define _IEEE80211_NODE_SAVEQ_ENQUEUE(_ni, _m, _qlen, _age) do {\ (_m)->m_nextpkt = NULL; \ if ((_ni)->ni_savedq.ifq_tail != NULL) { \ ==== //depot/projects/vap/sys/net80211/ieee80211_node.c#7 (text+ko) ==== @@ -66,6 +66,8 @@ 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 *); @@ -518,7 +520,7 @@ { #define N(a) (sizeof(a)/sizeof(a[0])) struct ieee80211vap *vap = ni->ni_vap; - int i, qlen; + int i; /* NB: preserve ni_table */ if (ni->ni_flags & IEEE80211_NODE_PWR_MGT) { @@ -539,8 +541,7 @@ /* * Drain power save queue and, if needed, clear TIM. */ - IEEE80211_NODE_SAVEQ_DRAIN(ni, qlen); - if (qlen != 0 && vap->iv_set_tim != NULL) + if (node_saveq_drain(ni) != 0 && vap->iv_set_tim != NULL) vap->iv_set_tim(ni, 0); ni->ni_associd = 0; @@ -592,6 +593,73 @@ } /* + * 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. @@ -1136,41 +1204,11 @@ if (ni->ni_associd != 0) { struct ieee80211vap *vap = ni->ni_vap; /* - * 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 we can check - * and/or adjust only the head of the list. + * Age frames on the power save queue. */ - if (IEEE80211_NODE_SAVEQ_QLEN(ni) != 0) { - struct mbuf *m; - int discard = 0; - - 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*/ - _IEEE80211_NODE_SAVEQ_DEQUEUE_HEAD(ni, m); - m_freem(m); - discard++; - } - if (m != NULL) - M_AGE_SUB(m, IEEE80211_INACT_WAIT); - IEEE80211_NODE_SAVEQ_UNLOCK(ni); - - if (discard != 0) { - IEEE80211_NOTE(vap, - IEEE80211_MSG_POWER, ni, - "discard %u frames for age", - discard); - IEEE80211_NODE_STAT_ADD(ni, - ps_discard, discard); - if (IEEE80211_NODE_SAVEQ_QLEN(ni) == 0) - vap->iv_set_tim(ni, 0); - } - } + if (node_saveq_age(ni) != 0 && + IEEE80211_NODE_SAVEQ_QLEN(ni) == 0) + vap->iv_set_tim(ni, 0); /* * Probe the station before time it out. We * send a null data frame which may not be From owner-p4-projects@FreeBSD.ORG Wed May 18 19:26:52 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5F79116A4D1; Wed, 18 May 2005 19:26:51 +0000 (GMT) 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 EB3EA16A4CE for ; Wed, 18 May 2005 19:26:50 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BF70543DD5 for ; Wed, 18 May 2005 19:26:50 +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 j4IJQnkt056422 for ; Wed, 18 May 2005 19:26:49 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4IJQmgD056419 for perforce@freebsd.org; Wed, 18 May 2005 19:26:48 GMT (envelope-from sam@freebsd.org) Date: Wed, 18 May 2005 19:26:48 GMT Message-Id: <200505181926.j4IJQmgD056419@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 77142 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: Wed, 18 May 2005 19:26:52 -0000 http://perforce.freebsd.org/chv.cgi?CH=77142 Change 77142 by sam@sam_ebb on 2005/05/18 19:26:38 Defer more state transitions when in manual roaming mode (as happens when wpa_supplicant is used): o on beacon miss don't trigger a re-associate as the user app will be notified that we disassociated followed by a re-associate but this will confuse it if it does not look-ahead to see the pending event; instead just leave control to the user app (note this breaks dynamic turbo up/down shift on beacon miss) o when auth/assoc fails due to tx timeout or similar and roaming is set to manual don't re-try; just defer to the controlling app This seems to make wpa_supplicant much more robust in the face of beacon misses; now to find out why we're getting them. Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_proto.c#9 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_proto.c#9 (text+ko) ==== @@ -1102,23 +1102,35 @@ IEEE80211_MSG_STATE | IEEE80211_MSG_DEBUG, "%s\n", "beacon miss"); - if (vap->iv_opmode != IEEE80211_M_STA) + /* + * Our handling is only meaningful for stations that are + * associated; any other conditions else will be handled + * through different means (e.g. the tx timeout on mgt frames). + */ + if (vap->iv_opmode != IEEE80211_M_STA || + vap->iv_state != IEEE80211_S_RUN) continue; - /* - * If we receive a beacon miss interrupt when using - * dynamic turbo, attempt to switch modes before - * reassociating. - */ - if (IEEE80211_ATH_CAP(vap, vap->iv_bss, TURBOP)) - ieee80211_dturbo_switch(ic, - ic->ic_bsschan->ic_flags ^ IEEE80211_CHAN_TURBO); - if (vap->iv_state == IEEE80211_S_RUN) { + if (ic->ic_roaming == IEEE80211_ROAMING_AUTO) { + /* + * If we receive a beacon miss interrupt when using + * dynamic turbo, attempt to switch modes before + * reassociating. + */ + if (IEEE80211_ATH_CAP(vap, vap->iv_bss, TURBOP)) + ieee80211_dturbo_switch(ic, + ic->ic_bsschan->ic_flags ^ IEEE80211_CHAN_TURBO); /* * Try to reassociate before scanning for a new ap. */ - NET_LOCK_GIANT(); ieee80211_new_state(vap, IEEE80211_S_ASSOC, 1); - NET_UNLOCK_GIANT(); + } else { + /* + * Somebody else is controlling state changes (e.g. + * a user-mode app) don't do anything that would + * confuse them; just drop into scan mode so they'll + * notified of the state change and given control. + */ + ieee80211_new_state(vap, IEEE80211_S_SCAN, 0); } } } @@ -1226,20 +1238,24 @@ case IEEE80211_S_SCAN: /* nothing to do */ break; - case IEEE80211_S_RUN: - /* beacon miss */ - IEEE80211_DPRINTF(vap, IEEE80211_MSG_STATE, - "no recent beacons from %s; rescanning\n", - ether_sprintf(vap->iv_bss->ni_bssid)); + 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) + 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 */ - /* FALLTHRU */ - case IEEE80211_S_AUTH: - case IEEE80211_S_ASSOC: - /* timeout restart scan */ - ieee80211_scan_assocfail(ic, vap->iv_bss->ni_macaddr); - ieee80211_check_scan(vap, IEEE80211_SCAN_ACTIVE | arg, - IEEE80211_SCAN_FOREVER); +#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, + IEEE80211_SCAN_FOREVER); break; } break; From owner-p4-projects@FreeBSD.ORG Wed May 18 20:19:58 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 64C0316A4D1; Wed, 18 May 2005 20:19:58 +0000 (GMT) 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 3961816A4CE for ; Wed, 18 May 2005 20:19:58 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 13A0343D67 for ; Wed, 18 May 2005 20:19: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 j4IKJrRD058355 for ; Wed, 18 May 2005 20:19:53 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4IKJqHN058352 for perforce@freebsd.org; Wed, 18 May 2005 20:19:52 GMT (envelope-from sam@freebsd.org) Date: Wed, 18 May 2005 20:19:52 GMT Message-Id: <200505182019.j4IKJqHN058352@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 77143 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: Wed, 18 May 2005 20:19:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=77143 Change 77143 by sam@sam_ebb on 2005/05/18 20:18:58 ni_fails is no more Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_node.c#8 edit .. //depot/projects/vap/sys/net80211/ieee80211_node.h#7 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_node.c#8 (text+ko) ==== @@ -1320,8 +1320,8 @@ ni->ni_chan != IEEE80211_CHAN_ANYC ? ni->ni_chan->ic_freq : IEEE80211_CHAN_ANY, ni->ni_chan != IEEE80211_CHAN_ANYC ? ni->ni_chan->ic_flags : 0); - printf("\tfails %u inact %u txrate %u\n", - ni->ni_fails, ni->ni_inact, ni->ni_txrate); + printf("\tinact %u inact_reload %u txrate %u\n", + ni->ni_inact, ni->ni_inact_reload, ni->ni_txrate); } void ==== //depot/projects/vap/sys/net80211/ieee80211_node.h#7 (text+ko) ==== @@ -145,7 +145,6 @@ u_int16_t ni_timoff; /* byte offset to TIM ie */ /* others */ - int ni_fails; /* failure count to associate */ short ni_inact; /* inactivity mark count */ short ni_inact_reload;/* inactivity reload value */ int ni_txrate; /* index to ni_rates[] */ From owner-p4-projects@FreeBSD.ORG Wed May 18 20:23:59 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4234716A4D1; Wed, 18 May 2005 20:23:59 +0000 (GMT) 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 1F7AF16A4CE for ; Wed, 18 May 2005 20:23:59 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9776A43D4C for ; Wed, 18 May 2005 20:23: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 j4IKNw1h058550 for ; Wed, 18 May 2005 20:23:58 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4IKNwnU058547 for perforce@freebsd.org; Wed, 18 May 2005 20:23:58 GMT (envelope-from sam@freebsd.org) Date: Wed, 18 May 2005 20:23:58 GMT Message-Id: <200505182023.j4IKNwnU058547@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 77144 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: Wed, 18 May 2005 20:23:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=77144 Change 77144 by sam@sam_ebb on 2005/05/18 20:23:41 Add simple cache management: o ignore scan cache entries where we've failed to associate (if the entry remains in the cache reset it's failure count after a period of time so it can be retried) o purge stale scan cache entries This makes us ready to add roaming now that the cache is kept warm with background scanning. Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_scan_sta.c#4 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_scan_sta.c#4 (text+ko) ==== @@ -51,6 +51,19 @@ #include +/* + * Parameters for managing cache entries: + * + * o a station with STA_FAILS_MAX failures is not considered + * when picking a candidate + * o a station that hasn't had an update in STA_PURGE_SCANS + * (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_AGE (2*60) /* time before clearing fails (secs) */ +#define STA_PURGE_SCANS 2 /* age for purging entries (scans) */ + #define RSSI_LPF_LEN 10 #define RSSI_EP_MULTIPLIER (1<<7) /* pow2 to optimize out * and / */ #define RSSI_IN(x) ((x) * RSSI_EP_MULTIPLIER) @@ -70,6 +83,7 @@ u_int8_t se_fails; /* failure to associate count */ 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 */ u_int se_scangen; /* iterator scan gen# */ }; @@ -84,11 +98,10 @@ LIST_HEAD(, sta_entry) st_hash[STA_HASHSIZE]; struct mtx st_scanlock; /* on st_scangen */ u_int st_scangen; /* gen# for iterator */ - int st_inact; /* inactivity setting */ }; static void sta_flush_table(struct sta_table *); -static int match_bss(struct ieee80211vap *, struct ieee80211_scan_entry *); +static int match_bss(struct ieee80211vap *, const struct sta_entry *); /* * Attach prior to any scanning work. @@ -105,7 +118,6 @@ mtx_init(&st->st_lock, "stacache", "802.11 sta scan cache", MTX_DEF); mtx_init(&st->st_scanlock, "stascan", "802.11 sta scangen", MTX_DEF); TAILQ_INIT(&st->st_entry); - st->st_inact = IEEE80211_INACT_SCAN; ss->ss_priv = st; return 1; } @@ -237,6 +249,10 @@ saveie(&ise->se_wpa_ie, sp->wpa); saveie(&ise->se_ath_ie, sp->ath); + /* clear failure count after STA_FAIL_AGE passes */ + if (se->se_fails && (ticks - se->se_lastfail) > STA_FAILS_AGE*hz) + se->se_fails = 0; + se->se_lastupdate = ticks; /* update time */ mtx_unlock(&st->st_lock); @@ -602,9 +618,10 @@ * Test a scan candidate for suitability/compatibility. */ static int -match_bss(struct ieee80211vap *vap, struct ieee80211_scan_entry *se) +match_bss(struct ieee80211vap *vap, const struct sta_entry *se0) { struct ieee80211com *ic = vap->iv_ic; + const struct ieee80211_scan_entry *se = &se0->base; u_int8_t rate; int fail; @@ -636,8 +653,11 @@ 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) + fail |= 0x40; #ifdef IEEE80211_DEBUG if (ieee80211_msg_scan(vap)) { + /* XXX se_fails */ printf(" %c %s", fail ? '-' : '+', ether_sprintf(se->se_macaddr)); printf(" %s%c", ether_sprintf(se->se_bssid), @@ -717,7 +737,7 @@ TAILQ_FOREACH(se, &st->st_entry, se_list) { /* update avg rssi */ se->base.se_rssi = RSSI_GET(se->se_avgrssi); - if (match_bss(vap, &se->base) == 0) { + if (match_bss(vap, se) == 0) { if (selbs == NULL) selbs = se; else if (sta_compare(se, selbs) > 0) @@ -737,11 +757,18 @@ sta_age(struct ieee80211_scan_state *ss) { struct sta_table *st = ss->ss_priv; - struct sta_entry *se; + 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(se, &st->st_entry, se_list) { - /* XXX */ + TAILQ_FOREACH_SAFE(se, &st->st_entry, se_list, next) { + if (time_before(se->se_lastupdate, droptime)) { + TAILQ_REMOVE(&st->st_entry, se, se_list); + LIST_REMOVE(se, se_hash); + FREE(se, M_80211_SCAN); + } } mtx_unlock(&st->st_lock); } @@ -792,6 +819,7 @@ LIST_FOREACH(se, &st->st_hash[hash], se_hash) if (IEEE80211_ADDR_EQ(se->base.se_macaddr, macaddr)) { se->se_fails++; + se->se_lastfail = ticks; break; } mtx_unlock(&st->st_lock); From owner-p4-projects@FreeBSD.ORG Wed May 18 20:25:04 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EB6FB16A4D1; Wed, 18 May 2005 20:25:03 +0000 (GMT) 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 C4BE316A4CE for ; Wed, 18 May 2005 20:25:03 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A19E843D66 for ; Wed, 18 May 2005 20:25: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 j4IKP0Pw058593 for ; Wed, 18 May 2005 20:25:00 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4IKP0s1058582 for perforce@freebsd.org; Wed, 18 May 2005 20:25:00 GMT (envelope-from sam@freebsd.org) Date: Wed, 18 May 2005 20:25:00 GMT Message-Id: <200505182025.j4IKP0s1058582@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 77145 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: Wed, 18 May 2005 20:25:04 -0000 http://perforce.freebsd.org/chv.cgi?CH=77145 Change 77145 by sam@sam_ebb on 2005/05/18 20:24:19 update net80211 capabilities list Affected files ... .. //depot/projects/vap/sbin/ifconfig/ifieee80211.c#5 edit Differences ... ==== //depot/projects/vap/sbin/ifconfig/ifieee80211.c#5 (text+ko) ==== @@ -1034,9 +1034,9 @@ } #define IEEE80211_C_BITS \ -"\020\1WEP\2TKIP\3AES\4AES_CCM\6CKIP\7FF\10TURBOP\11IBSS\12PMGT\13HOSTAP\14AHDEMO" \ -"\15SWRETRY\16TXPMGT\17SHSLOT\20SHPREAMBLE\21MONITOR\22TKIPMIC\30WPA1" \ -"\31WPA2\32BURST\33WME" +"\020\1WEP\2TKIP\3AES\4AES_CCM\6CKIP\7FF\10TURBOP\11IBSS\12PMGT\13HOSTAP" \ +"\14AHDEMO\15SWRETRY\16TXPMGT\17SHSLOT\20SHPREAMBLE\21MONITOR\22TKIPMIC" \ +"\30WPA1\31WPA2\32BURST\33WME\34WDS\35BGSCAN" static void list_capabilities(int s) From owner-p4-projects@FreeBSD.ORG Thu May 19 00:06:24 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6EF5A16A4D0; Thu, 19 May 2005 00:06:24 +0000 (GMT) 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 03BF516A4CE for ; Thu, 19 May 2005 00:06:23 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id ADF9443D5D for ; Thu, 19 May 2005 00:06:23 +0000 (GMT) (envelope-from gnn@neville-neil.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j4J06M01073712 for ; Thu, 19 May 2005 00:06:22 GMT (envelope-from gnn@neville-neil.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4J05H64073685 for perforce@freebsd.org; Thu, 19 May 2005 00:05:17 GMT (envelope-from gnn@neville-neil.com) Date: Thu, 19 May 2005 00:05:17 GMT Message-Id: <200505190005.j4J05H64073685@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gnn@neville-neil.com using -f From: "George V. Neville-Neil" To: Perforce Change Reviews Subject: PERFORCE change 77154 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: Thu, 19 May 2005 00:06:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=77154 Change 77154 by gnn@gnn_dingo_integ on 2005/05/19 00:03:11 Bring the dingo branch up to date after a long hiatus. Affected files ... .. //depot/projects/dingo/COPYRIGHT#2 integrate .. //depot/projects/dingo/MAINTAINERS#2 integrate .. //depot/projects/dingo/Makefile#2 integrate .. //depot/projects/dingo/Makefile.inc1#2 integrate .. //depot/projects/dingo/UPDATING#2 integrate .. //depot/projects/dingo/bin/Makefile#2 integrate .. //depot/projects/dingo/bin/Makefile.inc#2 integrate .. //depot/projects/dingo/bin/cat/cat.1#2 integrate .. //depot/projects/dingo/bin/cat/cat.c#2 integrate .. //depot/projects/dingo/bin/chflags/Makefile#2 integrate .. //depot/projects/dingo/bin/chflags/chflags.1#2 integrate .. //depot/projects/dingo/bin/chflags/chflags.c#2 integrate .. //depot/projects/dingo/bin/chio/Makefile#2 integrate .. //depot/projects/dingo/bin/chio/chio.1#2 integrate .. //depot/projects/dingo/bin/chio/chio.c#2 integrate .. //depot/projects/dingo/bin/chio/defs.h#2 integrate .. //depot/projects/dingo/bin/chio/pathnames.h#2 integrate .. //depot/projects/dingo/bin/chmod/chmod.1#2 integrate .. //depot/projects/dingo/bin/chmod/chmod.c#2 integrate .. //depot/projects/dingo/bin/cp/cp.1#2 integrate .. //depot/projects/dingo/bin/cp/cp.c#2 integrate .. //depot/projects/dingo/bin/cp/utils.c#2 integrate .. //depot/projects/dingo/bin/csh/Makefile#2 integrate .. //depot/projects/dingo/bin/csh/USD.doc/csh.1#2 integrate .. //depot/projects/dingo/bin/csh/USD.doc/csh.2#2 integrate .. //depot/projects/dingo/bin/csh/USD.doc/csh.3#2 integrate .. //depot/projects/dingo/bin/csh/USD.doc/csh.4#2 integrate .. //depot/projects/dingo/bin/csh/USD.doc/csh.a#2 integrate .. //depot/projects/dingo/bin/csh/USD.doc/csh.g#2 integrate .. //depot/projects/dingo/bin/csh/USD.doc/tabs#2 integrate .. //depot/projects/dingo/bin/csh/config.h#2 integrate .. //depot/projects/dingo/bin/csh/config_p.h#1 branch .. //depot/projects/dingo/bin/date/date.1#2 integrate .. //depot/projects/dingo/bin/date/date.c#2 integrate .. //depot/projects/dingo/bin/dd/dd.1#2 integrate .. //depot/projects/dingo/bin/dd/gen.c#2 integrate .. //depot/projects/dingo/bin/df/df.1#2 integrate .. //depot/projects/dingo/bin/df/df.c#2 integrate .. //depot/projects/dingo/bin/domainname/domainname.1#2 integrate .. //depot/projects/dingo/bin/domainname/domainname.c#2 integrate .. //depot/projects/dingo/bin/echo/echo.1#2 integrate .. //depot/projects/dingo/bin/echo/echo.c#2 integrate .. //depot/projects/dingo/bin/ed/Makefile#2 integrate .. //depot/projects/dingo/bin/ed/ed.1#2 integrate .. //depot/projects/dingo/bin/ed/ed.h#2 integrate .. //depot/projects/dingo/bin/ed/main.c#2 integrate .. //depot/projects/dingo/bin/expr/expr.1#2 integrate .. //depot/projects/dingo/bin/expr/expr.y#2 integrate .. //depot/projects/dingo/bin/getfacl/getfacl.1#2 integrate .. //depot/projects/dingo/bin/getfacl/getfacl.c#2 integrate .. //depot/projects/dingo/bin/hostname/hostname.1#2 integrate .. //depot/projects/dingo/bin/hostname/hostname.c#2 integrate .. //depot/projects/dingo/bin/kenv/kenv.1#2 integrate .. //depot/projects/dingo/bin/kenv/kenv.c#2 integrate .. //depot/projects/dingo/bin/kill/kill.1#2 integrate .. //depot/projects/dingo/bin/kill/kill.c#2 integrate .. //depot/projects/dingo/bin/ln/ln.1#2 integrate .. //depot/projects/dingo/bin/ln/ln.c#2 integrate .. //depot/projects/dingo/bin/ln/symlink.7#2 integrate .. //depot/projects/dingo/bin/ls/cmp.c#2 integrate .. //depot/projects/dingo/bin/ls/ls.1#2 integrate .. //depot/projects/dingo/bin/ls/ls.c#2 integrate .. //depot/projects/dingo/bin/ls/ls.h#2 integrate .. //depot/projects/dingo/bin/ls/print.c#2 integrate .. //depot/projects/dingo/bin/ls/util.c#2 integrate .. //depot/projects/dingo/bin/mkdir/Makefile#2 integrate .. //depot/projects/dingo/bin/mkdir/mkdir.1#2 integrate .. //depot/projects/dingo/bin/mkdir/mkdir.c#2 integrate .. //depot/projects/dingo/bin/mv/mv.1#2 integrate .. //depot/projects/dingo/bin/mv/mv.c#2 integrate .. //depot/projects/dingo/bin/pax/ar_io.c#2 integrate .. //depot/projects/dingo/bin/pax/ar_subs.c#2 integrate .. //depot/projects/dingo/bin/pax/cpio.1#2 integrate .. //depot/projects/dingo/bin/pax/extern.h#2 integrate .. //depot/projects/dingo/bin/pax/ftree.c#2 integrate .. //depot/projects/dingo/bin/pax/getoldopt.c#2 integrate .. //depot/projects/dingo/bin/pax/pax.1#2 integrate .. //depot/projects/dingo/bin/pax/tar.1#2 integrate .. //depot/projects/dingo/bin/ps/Makefile#2 integrate .. //depot/projects/dingo/bin/ps/keyword.c#2 integrate .. //depot/projects/dingo/bin/ps/ps.1#2 integrate .. //depot/projects/dingo/bin/ps/ps.c#2 integrate .. //depot/projects/dingo/bin/pwd/pwd.1#2 integrate .. //depot/projects/dingo/bin/pwd/pwd.c#2 integrate .. //depot/projects/dingo/bin/rcp/rcp.1#2 integrate .. //depot/projects/dingo/bin/rcp/rcp.c#2 integrate .. //depot/projects/dingo/bin/realpath/realpath.1#2 integrate .. //depot/projects/dingo/bin/rm/Makefile#2 integrate .. //depot/projects/dingo/bin/rm/rm.1#2 integrate .. //depot/projects/dingo/bin/rmail/Makefile#2 integrate .. //depot/projects/dingo/bin/rmdir/rmdir.1#2 integrate .. //depot/projects/dingo/bin/rmdir/rmdir.c#2 integrate .. //depot/projects/dingo/bin/setfacl/file.c#2 integrate .. //depot/projects/dingo/bin/setfacl/mask.c#2 integrate .. //depot/projects/dingo/bin/setfacl/merge.c#2 integrate .. //depot/projects/dingo/bin/setfacl/remove.c#2 integrate .. //depot/projects/dingo/bin/setfacl/setfacl.1#2 integrate .. //depot/projects/dingo/bin/setfacl/setfacl.c#2 integrate .. //depot/projects/dingo/bin/setfacl/setfacl.h#2 integrate .. //depot/projects/dingo/bin/setfacl/util.c#2 integrate .. //depot/projects/dingo/bin/sh/bltin/echo.1#2 integrate .. //depot/projects/dingo/bin/sh/builtins.def#2 integrate .. //depot/projects/dingo/bin/sh/funcs/cmv#2 integrate .. //depot/projects/dingo/bin/sh/funcs/dirs#2 integrate .. //depot/projects/dingo/bin/sh/funcs/kill#2 integrate .. //depot/projects/dingo/bin/sh/funcs/login#2 integrate .. //depot/projects/dingo/bin/sh/funcs/newgrp#2 integrate .. //depot/projects/dingo/bin/sh/funcs/popd#2 integrate .. //depot/projects/dingo/bin/sh/funcs/pushd#2 integrate .. //depot/projects/dingo/bin/sh/funcs/suspend#2 integrate .. //depot/projects/dingo/bin/sh/mkbuiltins#2 integrate .. //depot/projects/dingo/bin/sh/mktokens#2 integrate .. //depot/projects/dingo/bin/sh/nodetypes#2 integrate .. //depot/projects/dingo/bin/sh/options.c#2 integrate .. //depot/projects/dingo/bin/sh/parser.c#2 integrate .. //depot/projects/dingo/bin/sh/sh.1#2 integrate .. //depot/projects/dingo/bin/sleep/sleep.1#2 integrate .. //depot/projects/dingo/bin/sleep/sleep.c#2 integrate .. //depot/projects/dingo/bin/stty/stty.1#2 integrate .. //depot/projects/dingo/bin/stty/stty.c#2 integrate .. //depot/projects/dingo/bin/sync/sync.8#2 integrate .. //depot/projects/dingo/bin/sync/sync.c#2 integrate .. //depot/projects/dingo/bin/test/TEST.sh#2 integrate .. //depot/projects/dingo/bin/test/test.1#2 integrate .. //depot/projects/dingo/bin/test/test.c#2 integrate .. //depot/projects/dingo/contrib/amd/fixmount/fixmount.8#2 integrate .. //depot/projects/dingo/contrib/amd/hlfsd/hlfsd.8#2 integrate .. //depot/projects/dingo/contrib/bind9/CHANGES#2 integrate .. //depot/projects/dingo/contrib/bind9/COPYRIGHT#2 integrate .. //depot/projects/dingo/contrib/bind9/FAQ#2 integrate .. //depot/projects/dingo/contrib/bind9/FREEBSD-Upgrade#2 integrate .. //depot/projects/dingo/contrib/bind9/FREEBSD-Xlist#2 integrate .. //depot/projects/dingo/contrib/bind9/KNOWN_DEFECTS#2 delete .. //depot/projects/dingo/contrib/bind9/README#2 integrate .. //depot/projects/dingo/contrib/bind9/acconfig.h#2 integrate .. //depot/projects/dingo/contrib/bind9/bin/check/check-tool.c#2 integrate .. //depot/projects/dingo/contrib/bind9/bin/check/named-checkconf.c#2 integrate .. //depot/projects/dingo/contrib/bind9/bin/check/named-checkzone.c#2 integrate .. //depot/projects/dingo/contrib/bind9/bin/dig/dig.c#2 integrate .. //depot/projects/dingo/contrib/bind9/bin/dig/dighost.c#2 integrate .. //depot/projects/dingo/contrib/bind9/bin/dig/host.c#2 integrate .. //depot/projects/dingo/contrib/bind9/bin/dig/include/dig/dig.h#2 integrate .. //depot/projects/dingo/contrib/bind9/bin/dig/nslookup.c#2 integrate .. //depot/projects/dingo/contrib/bind9/bin/dnssec/dnssec-signzone.c#2 integrate .. //depot/projects/dingo/contrib/bind9/bin/named/Makefile.in#2 integrate .. //depot/projects/dingo/contrib/bind9/bin/named/client.c#2 integrate .. //depot/projects/dingo/contrib/bind9/bin/named/config.c#2 integrate .. //depot/projects/dingo/contrib/bind9/bin/named/control.c#2 integrate .. //depot/projects/dingo/contrib/bind9/bin/named/include/named/control.h#2 integrate .. //depot/projects/dingo/contrib/bind9/bin/named/main.c#2 integrate .. //depot/projects/dingo/contrib/bind9/bin/named/named.conf.5#2 integrate .. //depot/projects/dingo/contrib/bind9/bin/named/named.conf.docbook#2 integrate .. //depot/projects/dingo/contrib/bind9/bin/named/named.conf.html#2 integrate .. //depot/projects/dingo/contrib/bind9/bin/named/server.c#2 integrate .. //depot/projects/dingo/contrib/bind9/bin/named/unix/include/named/os.h#2 integrate .. //depot/projects/dingo/contrib/bind9/bin/named/unix/os.c#2 integrate .. //depot/projects/dingo/contrib/bind9/bin/named/update.c#2 integrate .. //depot/projects/dingo/contrib/bind9/bin/nsupdate/nsupdate.c#2 integrate .. //depot/projects/dingo/contrib/bind9/bin/rndc/rndc-confgen.c#2 integrate .. //depot/projects/dingo/contrib/bind9/bin/rndc/rndc.c#2 integrate .. //depot/projects/dingo/contrib/bind9/config.guess#2 integrate .. //depot/projects/dingo/contrib/bind9/config.sub#2 integrate .. //depot/projects/dingo/contrib/bind9/configure.in#2 integrate .. //depot/projects/dingo/contrib/bind9/doc/arm/Bv9ARM-book.xml#2 integrate .. //depot/projects/dingo/contrib/bind9/doc/arm/Bv9ARM.ch03.html#2 integrate .. //depot/projects/dingo/contrib/bind9/doc/arm/Bv9ARM.ch04.html#2 integrate .. //depot/projects/dingo/contrib/bind9/doc/arm/Bv9ARM.ch05.html#2 integrate .. //depot/projects/dingo/contrib/bind9/doc/arm/Bv9ARM.ch06.html#2 integrate .. //depot/projects/dingo/contrib/bind9/doc/arm/Bv9ARM.ch07.html#2 integrate .. //depot/projects/dingo/contrib/bind9/doc/arm/Bv9ARM.ch08.html#2 integrate .. //depot/projects/dingo/contrib/bind9/doc/arm/Bv9ARM.ch09.html#2 integrate .. //depot/projects/dingo/contrib/bind9/doc/arm/Bv9ARM.html#2 integrate .. //depot/projects/dingo/contrib/bind9/doc/misc/migration#2 integrate .. //depot/projects/dingo/contrib/bind9/doc/misc/options#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/bind/Makefile.in#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/bind/aclocal.m4#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/bind/api#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/bind/config.h.in#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/bind/configure#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/bind/configure.in#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/bind/dst/dst_api.c#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/bind/include/netdb.h#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/bind/inet/inet_makeaddr.c#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/bind/irs/Makefile.in#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/bind/irs/dns_nw.c#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/bind/irs/gai_strerror.c#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/bind/irs/gen.c#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/bind/irs/getnetgrent_r.c#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/bind/irs/getpwent_r.c#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/bind/irs/irs_data.c#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/bind/isc/eventlib.c#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/bind/isc/eventlib_p.h#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/bind/isc/memcluster.c#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/bind/libtool.m4#2 delete .. //depot/projects/dingo/contrib/bind9/lib/bind/ltmain.sh#2 delete .. //depot/projects/dingo/contrib/bind9/lib/bind/make/rules.in#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/bind/nameser/ns_print.c#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/bind/port_after.h.in#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/bind/resolv/res_findzonecut.c#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/bind9/Makefile.in#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/bind9/api#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/bind9/check.c#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/bind9/getaddresses.c#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/dns/Makefile.in#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/dns/adb.c#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/dns/api#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/dns/dst_api.c#1 branch .. //depot/projects/dingo/contrib/bind9/lib/dns/dst_internal.h#1 branch .. //depot/projects/dingo/contrib/bind9/lib/dns/dst_lib.c#1 branch .. //depot/projects/dingo/contrib/bind9/lib/dns/dst_openssl.h#1 branch .. //depot/projects/dingo/contrib/bind9/lib/dns/dst_parse.c#1 branch .. //depot/projects/dingo/contrib/bind9/lib/dns/dst_parse.h#1 branch .. //depot/projects/dingo/contrib/bind9/lib/dns/dst_result.c#1 branch .. //depot/projects/dingo/contrib/bind9/lib/dns/gssapi_link.c#1 branch .. //depot/projects/dingo/contrib/bind9/lib/dns/gssapictx.c#1 branch .. //depot/projects/dingo/contrib/bind9/lib/dns/hmac_link.c#1 branch .. //depot/projects/dingo/contrib/bind9/lib/dns/include/Makefile.in#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/dns/include/dns/name.h#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/dns/include/dns/rbt.h#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/dns/include/dns/zone.h#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/dns/include/dst/Makefile.in#1 branch .. //depot/projects/dingo/contrib/bind9/lib/dns/include/dst/dst.h#1 branch .. //depot/projects/dingo/contrib/bind9/lib/dns/include/dst/gssapi.h#1 branch .. //depot/projects/dingo/contrib/bind9/lib/dns/include/dst/lib.h#1 branch .. //depot/projects/dingo/contrib/bind9/lib/dns/include/dst/result.h#1 branch .. //depot/projects/dingo/contrib/bind9/lib/dns/journal.c#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/dns/key.c#1 branch .. //depot/projects/dingo/contrib/bind9/lib/dns/openssl_link.c#1 branch .. //depot/projects/dingo/contrib/bind9/lib/dns/openssldh_link.c#1 branch .. //depot/projects/dingo/contrib/bind9/lib/dns/openssldsa_link.c#1 branch .. //depot/projects/dingo/contrib/bind9/lib/dns/opensslrsa_link.c#1 branch .. //depot/projects/dingo/contrib/bind9/lib/dns/rbt.c#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/dns/rdata.c#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/dns/rdata/in_1/wks_11.c#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/dns/resolver.c#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/dns/sec/Makefile.in#2 delete .. //depot/projects/dingo/contrib/bind9/lib/dns/sec/dst/Makefile.in#2 delete .. //depot/projects/dingo/contrib/bind9/lib/dns/sec/dst/dst_api.c#2 delete .. //depot/projects/dingo/contrib/bind9/lib/dns/sec/dst/dst_internal.h#2 delete .. //depot/projects/dingo/contrib/bind9/lib/dns/sec/dst/dst_lib.c#2 delete .. //depot/projects/dingo/contrib/bind9/lib/dns/sec/dst/dst_openssl.h#2 delete .. //depot/projects/dingo/contrib/bind9/lib/dns/sec/dst/dst_parse.c#2 delete .. //depot/projects/dingo/contrib/bind9/lib/dns/sec/dst/dst_parse.h#2 delete .. //depot/projects/dingo/contrib/bind9/lib/dns/sec/dst/dst_result.c#2 delete .. //depot/projects/dingo/contrib/bind9/lib/dns/sec/dst/gssapi_link.c#2 delete .. //depot/projects/dingo/contrib/bind9/lib/dns/sec/dst/gssapictx.c#2 delete .. //depot/projects/dingo/contrib/bind9/lib/dns/sec/dst/hmac_link.c#2 delete .. //depot/projects/dingo/contrib/bind9/lib/dns/sec/dst/include/Makefile.in#2 delete .. //depot/projects/dingo/contrib/bind9/lib/dns/sec/dst/include/dst/Makefile.in#2 delete .. //depot/projects/dingo/contrib/bind9/lib/dns/sec/dst/include/dst/dst.h#2 delete .. //depot/projects/dingo/contrib/bind9/lib/dns/sec/dst/include/dst/gssapi.h#2 delete .. //depot/projects/dingo/contrib/bind9/lib/dns/sec/dst/include/dst/lib.h#2 delete .. //depot/projects/dingo/contrib/bind9/lib/dns/sec/dst/include/dst/result.h#2 delete .. //depot/projects/dingo/contrib/bind9/lib/dns/sec/dst/key.c#2 delete .. //depot/projects/dingo/contrib/bind9/lib/dns/sec/dst/openssl_link.c#2 delete .. //depot/projects/dingo/contrib/bind9/lib/dns/sec/dst/openssldh_link.c#2 delete .. //depot/projects/dingo/contrib/bind9/lib/dns/sec/dst/openssldsa_link.c#2 delete .. //depot/projects/dingo/contrib/bind9/lib/dns/sec/dst/opensslrsa_link.c#2 delete .. //depot/projects/dingo/contrib/bind9/lib/dns/validator.c#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/dns/xfrin.c#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/dns/zone.c#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/isc/api#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/isc/include/isc/mem.h#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/isc/pthreads/thread.c#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/isc/string.c#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/isc/task.c#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/isc/unix/ifiter_ioctl.c#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/isc/unix/socket.c#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/isccfg/api#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/isccfg/include/isccfg/grammar.h#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/isccfg/namedconf.c#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/lwres/api#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/lwres/context.c#2 integrate .. //depot/projects/dingo/contrib/bind9/lib/lwres/print.c#2 integrate .. //depot/projects/dingo/contrib/bind9/libtool.m4#2 integrate .. //depot/projects/dingo/contrib/bind9/ltmain.sh#2 integrate .. //depot/projects/dingo/contrib/bind9/make/includes.in#2 integrate .. //depot/projects/dingo/contrib/bind9/version#2 integrate .. //depot/projects/dingo/contrib/bsnmp/FREEBSD-Xlist#2 integrate .. //depot/projects/dingo/contrib/bsnmp/NEWS#2 integrate .. //depot/projects/dingo/contrib/bsnmp/VERSION#2 integrate .. //depot/projects/dingo/contrib/bsnmp/gensnmpdef/gensnmpdef.1#2 integrate .. //depot/projects/dingo/contrib/bsnmp/gensnmptree/gensnmptree.1#2 integrate .. //depot/projects/dingo/contrib/bsnmp/gensnmptree/gensnmptree.c#2 integrate .. //depot/projects/dingo/contrib/bsnmp/lib/asn1.3#2 integrate .. //depot/projects/dingo/contrib/bsnmp/lib/bsnmpagent.3#2 integrate .. //depot/projects/dingo/contrib/bsnmp/lib/bsnmpclient.3#2 integrate .. //depot/projects/dingo/contrib/bsnmp/lib/bsnmplib.3#2 integrate .. //depot/projects/dingo/contrib/bsnmp/lib/snmpagent.c#2 integrate .. //depot/projects/dingo/contrib/bsnmp/oid-list#1 branch .. //depot/projects/dingo/contrib/bsnmp/snmp_mibII/mibII.c#2 integrate .. //depot/projects/dingo/contrib/bsnmp/snmp_mibII/mibII_interfaces.c#2 integrate .. //depot/projects/dingo/contrib/bsnmp/snmp_mibII/snmp_mibII.3#2 integrate .. //depot/projects/dingo/contrib/bsnmp/snmp_mibII/snmp_mibII.h#2 integrate .. //depot/projects/dingo/contrib/bsnmp/snmp_ntp/BEGEMOT-NTP-MIB.txt#1 branch .. //depot/projects/dingo/contrib/bsnmp/snmp_ntp/NTP-MIB.txt#1 branch .. //depot/projects/dingo/contrib/bsnmp/snmp_ntp/NTP-PROXY-MIB.txt#1 branch .. //depot/projects/dingo/contrib/bsnmp/snmp_ntp/ntp_tree.def#1 branch .. //depot/projects/dingo/contrib/bsnmp/snmp_ntp/snmp_ntp.c#1 branch .. //depot/projects/dingo/contrib/bsnmp/snmpd/bsnmpd.1#2 integrate .. //depot/projects/dingo/contrib/bsnmp/snmpd/main.c#2 integrate .. //depot/projects/dingo/contrib/bsnmp/snmpd/snmpd.config#2 integrate .. //depot/projects/dingo/contrib/bsnmp/snmpd/snmpmod.3#2 integrate .. //depot/projects/dingo/contrib/bsnmp/snmpd/trans_lsock.c#2 integrate .. //depot/projects/dingo/contrib/bzip2/CHANGES#2 integrate .. //depot/projects/dingo/contrib/bzip2/FREEBSD-Xlist#1 branch .. //depot/projects/dingo/contrib/bzip2/FREEBSD-upgrade#2 integrate .. //depot/projects/dingo/contrib/bzip2/LICENSE#2 integrate .. //depot/projects/dingo/contrib/bzip2/Makefile#2 integrate .. //depot/projects/dingo/contrib/bzip2/Makefile-libbz2_so#2 integrate .. //depot/projects/dingo/contrib/bzip2/README#2 integrate .. //depot/projects/dingo/contrib/bzip2/README.COMPILATION.PROBLEMS#2 integrate .. //depot/projects/dingo/contrib/bzip2/blocksort.c#2 integrate .. //depot/projects/dingo/contrib/bzip2/bzip2.1#2 integrate .. //depot/projects/dingo/contrib/bzip2/bzip2.c#2 integrate .. //depot/projects/dingo/contrib/bzip2/bzip2recover.c#2 integrate .. //depot/projects/dingo/contrib/bzip2/bzlib.c#2 integrate .. //depot/projects/dingo/contrib/bzip2/bzlib.h#2 integrate .. //depot/projects/dingo/contrib/bzip2/bzlib_private.h#2 integrate .. //depot/projects/dingo/contrib/bzip2/compress.c#2 integrate .. //depot/projects/dingo/contrib/bzip2/crctable.c#2 integrate .. //depot/projects/dingo/contrib/bzip2/decompress.c#2 integrate .. //depot/projects/dingo/contrib/bzip2/huffman.c#2 integrate .. //depot/projects/dingo/contrib/bzip2/randtable.c#2 integrate .. //depot/projects/dingo/contrib/bzip2/sample1.bz2.uu#2 integrate .. //depot/projects/dingo/contrib/bzip2/sample1.ref.gz.uu#2 integrate .. //depot/projects/dingo/contrib/bzip2/sample2.bz2.uu#2 integrate .. //depot/projects/dingo/contrib/bzip2/sample2.ref.gz.uu#2 integrate .. //depot/projects/dingo/contrib/bzip2/sample3.bz2.uu#2 integrate .. //depot/projects/dingo/contrib/bzip2/sample3.ref.gz.uu#2 integrate .. //depot/projects/dingo/contrib/cvs/src/login.c#2 integrate .. //depot/projects/dingo/contrib/cvs/src/patch.c#2 integrate .. //depot/projects/dingo/contrib/cvs/src/rcs.c#2 integrate .. //depot/projects/dingo/contrib/file/ChangeLog#2 integrate .. //depot/projects/dingo/contrib/file/LEGAL.NOTICE#2 integrate .. //depot/projects/dingo/contrib/file/Magdir/animation#2 integrate .. //depot/projects/dingo/contrib/file/Magdir/archive#2 integrate .. //depot/projects/dingo/contrib/file/Magdir/audio#2 integrate .. //depot/projects/dingo/contrib/file/Magdir/console#2 integrate .. //depot/projects/dingo/contrib/file/Magdir/elf#2 integrate .. //depot/projects/dingo/contrib/file/Magdir/esri#1 branch .. //depot/projects/dingo/contrib/file/Magdir/filesystems#2 integrate .. //depot/projects/dingo/contrib/file/Magdir/linux#2 integrate .. //depot/projects/dingo/contrib/file/Magdir/msdos#2 integrate .. //depot/projects/dingo/contrib/file/Magdir/os9#2 integrate .. //depot/projects/dingo/contrib/file/Magdir/perl#2 integrate .. //depot/projects/dingo/contrib/file/Magdir/plan9#2 integrate .. //depot/projects/dingo/contrib/file/Magdir/sinclair#2 integrate .. //depot/projects/dingo/contrib/file/Magdir/sniffer#2 integrate .. //depot/projects/dingo/contrib/file/Magdir/tex#2 integrate .. //depot/projects/dingo/contrib/file/Magdir/virtutech#1 branch .. //depot/projects/dingo/contrib/file/Magdir/xo65#1 branch .. //depot/projects/dingo/contrib/file/Makefile.am#2 integrate .. //depot/projects/dingo/contrib/file/Makefile.in#2 integrate .. //depot/projects/dingo/contrib/file/PORTING#1 branch .. //depot/projects/dingo/contrib/file/aclocal.m4#2 integrate .. //depot/projects/dingo/contrib/file/apprentice.c#2 integrate .. //depot/projects/dingo/contrib/file/ascmagic.c#2 integrate .. //depot/projects/dingo/contrib/file/compress.c#2 integrate .. //depot/projects/dingo/contrib/file/config.h.in#2 integrate .. //depot/projects/dingo/contrib/file/configure#2 integrate .. //depot/projects/dingo/contrib/file/configure.in#2 integrate .. //depot/projects/dingo/contrib/file/file.c#2 integrate .. //depot/projects/dingo/contrib/file/file.h#2 integrate .. //depot/projects/dingo/contrib/file/fsmagic.c#2 integrate .. //depot/projects/dingo/contrib/file/funcs.c#2 integrate .. //depot/projects/dingo/contrib/file/install-sh#2 integrate .. //depot/projects/dingo/contrib/file/is_tar.c#2 integrate .. //depot/projects/dingo/contrib/file/magic.c#2 integrate .. //depot/projects/dingo/contrib/file/magic.h#2 integrate .. //depot/projects/dingo/contrib/file/magic.mime#2 integrate .. //depot/projects/dingo/contrib/file/mkinstalldirs#2 integrate .. //depot/projects/dingo/contrib/file/names.h#2 integrate .. //depot/projects/dingo/contrib/file/patchlevel.h#2 integrate .. //depot/projects/dingo/contrib/file/print.c#2 integrate .. //depot/projects/dingo/contrib/file/readelf.c#2 integrate .. //depot/projects/dingo/contrib/file/readelf.h#2 integrate .. //depot/projects/dingo/contrib/file/softmagic.c#2 integrate .. //depot/projects/dingo/contrib/file/tar.h#2 integrate .. //depot/projects/dingo/contrib/file/test.c#2 integrate .. //depot/projects/dingo/contrib/gdtoa/gdtoaimp.h#2 integrate .. //depot/projects/dingo/contrib/groff/tmac/doc-common#2 integrate .. //depot/projects/dingo/contrib/groff/tmac/doc-ditroff#2 integrate .. //depot/projects/dingo/contrib/groff/tmac/doc-syms#2 integrate .. //depot/projects/dingo/contrib/groff/tmac/doc.tmac#2 integrate .. //depot/projects/dingo/contrib/groff/tmac/groff_mdoc.man#2 integrate .. //depot/projects/dingo/contrib/ipfilter/.cvsignore#1 branch .. //depot/projects/dingo/contrib/ipfilter/BNF#2 integrate .. //depot/projects/dingo/contrib/ipfilter/BSD/.cvsignore#1 branch .. //depot/projects/dingo/contrib/ipfilter/BSD/Makefile#2 integrate .. //depot/projects/dingo/contrib/ipfilter/BSD/Makefile.ipsend#2 integrate .. //depot/projects/dingo/contrib/ipfilter/BSD/kupgrade#2 integrate .. //depot/projects/dingo/contrib/ipfilter/BSD/make-devices#2 integrate .. //depot/projects/dingo/contrib/ipfilter/FWTK/fwtk-2.1-transparency.txt#2 delete .. //depot/projects/dingo/contrib/ipfilter/FWTK/fwtk_transparent.diff#2 integrate .. //depot/projects/dingo/contrib/ipfilter/FWTK/fwtkp#2 integrate .. //depot/projects/dingo/contrib/ipfilter/FWTK/tproxy.diff#2 delete .. //depot/projects/dingo/contrib/ipfilter/FreeBSD-2.2/files.diffs#2 integrate .. //depot/projects/dingo/contrib/ipfilter/FreeBSD-2.2/files.newconf.diffs#2 integrate .. //depot/projects/dingo/contrib/ipfilter/FreeBSD-2.2/kinstall#2 integrate .. //depot/projects/dingo/contrib/ipfilter/FreeBSD-3/INST.FreeBSD-3#2 integrate .. //depot/projects/dingo/contrib/ipfilter/FreeBSD-3/kinstall#2 integrate .. //depot/projects/dingo/contrib/ipfilter/FreeBSD-4.0/INST.FreeBSD-4#2 delete .. //depot/projects/dingo/contrib/ipfilter/FreeBSD-4.0/ipv6-patch-4.0#2 integrate .. //depot/projects/dingo/contrib/ipfilter/FreeBSD-4.0/ipv6-patch-4.1#2 integrate .. //depot/projects/dingo/contrib/ipfilter/FreeBSD-4.0/ipv6-patch-4.2#1 branch .. //depot/projects/dingo/contrib/ipfilter/FreeBSD-4.0/kinstall#2 integrate .. //depot/projects/dingo/contrib/ipfilter/FreeBSD-4.0/unkinstall#2 integrate .. //depot/projects/dingo/contrib/ipfilter/FreeBSD/files.diffs#2 integrate .. //depot/projects/dingo/contrib/ipfilter/FreeBSD/files.newconf.diffs#2 integrate .. //depot/projects/dingo/contrib/ipfilter/FreeBSD/files.oldconf.diffs#2 integrate .. //depot/projects/dingo/contrib/ipfilter/FreeBSD/filez.diffs#2 integrate .. //depot/projects/dingo/contrib/ipfilter/FreeBSD/kinstall#2 integrate .. //depot/projects/dingo/contrib/ipfilter/HISTORY#2 integrate .. //depot/projects/dingo/contrib/ipfilter/INST.FreeBSD-2.2#2 integrate .. //depot/projects/dingo/contrib/ipfilter/INSTALL.FreeBSD#2 integrate .. //depot/projects/dingo/contrib/ipfilter/IPFILTER.LICENCE#2 integrate .. //depot/projects/dingo/contrib/ipfilter/Makefile#2 integrate .. //depot/projects/dingo/contrib/ipfilter/README#2 integrate .. //depot/projects/dingo/contrib/ipfilter/STYLE.TXT#1 branch .. //depot/projects/dingo/contrib/ipfilter/UPGRADE_NOTICE#2 delete .. //depot/projects/dingo/contrib/ipfilter/WhatsNew40.txt#1 branch .. //depot/projects/dingo/contrib/ipfilter/bpf-ipf.h#1 branch .. //depot/projects/dingo/contrib/ipfilter/bpf.h#2 delete .. //depot/projects/dingo/contrib/ipfilter/bpf_filter.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/bsdinstall#2 integrate .. //depot/projects/dingo/contrib/ipfilter/common.c#2 delete .. //depot/projects/dingo/contrib/ipfilter/etc/protocols#2 integrate .. //depot/projects/dingo/contrib/ipfilter/etc/services#2 integrate .. //depot/projects/dingo/contrib/ipfilter/facpri.c#2 delete .. //depot/projects/dingo/contrib/ipfilter/facpri.h#2 delete .. //depot/projects/dingo/contrib/ipfilter/fils.c#2 delete .. //depot/projects/dingo/contrib/ipfilter/inet_addr.c#2 delete .. //depot/projects/dingo/contrib/ipfilter/ip_fil.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/ip_fil_freebsd.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/ip_htable.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/ip_htable.h#1 branch .. //depot/projects/dingo/contrib/ipfilter/ip_irc_pxy.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/ip_lfil.c#2 delete .. //depot/projects/dingo/contrib/ipfilter/ip_lookup.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/ip_lookup.h#1 branch .. //depot/projects/dingo/contrib/ipfilter/ip_msnrpc_pxy.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/ip_pool.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/ip_pool.h#1 branch .. //depot/projects/dingo/contrib/ipfilter/ip_pptp_pxy.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/ip_rpcb_pxy.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/ip_scan.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/ip_scan.h#1 branch .. //depot/projects/dingo/contrib/ipfilter/ip_sfil.c#2 delete .. //depot/projects/dingo/contrib/ipfilter/ip_sync.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/ip_sync.h#1 branch .. //depot/projects/dingo/contrib/ipfilter/ipf.c#2 delete .. //depot/projects/dingo/contrib/ipfilter/ipf.h#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipfs.c#2 delete .. //depot/projects/dingo/contrib/ipfilter/ipft_ef.c#2 delete .. //depot/projects/dingo/contrib/ipfilter/ipft_hx.c#2 delete .. //depot/projects/dingo/contrib/ipfilter/ipft_pc.c#2 delete .. //depot/projects/dingo/contrib/ipfilter/ipft_sn.c#2 delete .. //depot/projects/dingo/contrib/ipfilter/ipft_td.c#2 delete .. //depot/projects/dingo/contrib/ipfilter/ipft_tx.c#2 delete .. //depot/projects/dingo/contrib/ipfilter/iplang/.cvsignore#1 branch .. //depot/projects/dingo/contrib/ipfilter/iplang/Makefile#2 integrate .. //depot/projects/dingo/contrib/ipfilter/iplang/iplang.h#2 integrate .. //depot/projects/dingo/contrib/ipfilter/iplang/iplang_l.l#2 integrate .. //depot/projects/dingo/contrib/ipfilter/iplang/iplang_y.y#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipmon.c#2 delete .. //depot/projects/dingo/contrib/ipfilter/ipmon.h#1 branch .. //depot/projects/dingo/contrib/ipfilter/ipnat.c#2 delete .. //depot/projects/dingo/contrib/ipfilter/ipsd/Celler/ip_compat.h#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsd/Makefile#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsd/ipsd.c#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsd/ipsd.h#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsd/ipsdr.c#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsd/linux.h#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsd/sbpf.c#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsd/sdlpi.c#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsd/slinux.c#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsd/snit.c#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsend/.OLD/ip_compat.h#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsend/.cvsignore#1 branch .. //depot/projects/dingo/contrib/ipfilter/ipsend/44arp.c#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsend/Makefile#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsend/arp.c#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsend/dlcommon.c#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsend/dltest.h#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsend/hpux.c#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsend/in_var.h#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsend/ip.c#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsend/ip_var.h#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsend/ipresend.1#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsend/ipresend.c#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsend/ipsend.1#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsend/ipsend.5#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsend/ipsend.c#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsend/ipsend.h#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsend/ipsopt.c#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsend/iptest.1#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsend/iptest.c#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsend/iptests.c#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsend/larp.c#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsend/linux.h#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsend/lsock.c#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsend/resend.c#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsend/sbpf.c#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsend/sdlpi.c#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsend/sirix.c#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsend/slinux.c#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsend/snit.c#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsend/sock.c#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsend/sockraw.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/ipsend/tcpip.h#2 integrate .. //depot/projects/dingo/contrib/ipfilter/ipsend/ultrix.c#2 delete .. //depot/projects/dingo/contrib/ipfilter/ipt.c#2 delete .. //depot/projects/dingo/contrib/ipfilter/ipt.h#2 integrate .. //depot/projects/dingo/contrib/ipfilter/kmem.c#2 delete .. //depot/projects/dingo/contrib/ipfilter/kmem.h#2 integrate .. //depot/projects/dingo/contrib/ipfilter/l4check/http.ok#2 integrate .. //depot/projects/dingo/contrib/ipfilter/l4check/l4check.c#2 integrate .. //depot/projects/dingo/contrib/ipfilter/lib/Makefile#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/addicmp.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/addipopt.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/addkeep.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/bcopywrap.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/binprint.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/buildopts.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/checkrev.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/count4bits.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/count6bits.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/debug.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/extras.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/facpri.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/facpri.h#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/fill6bits.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/flags.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/genmask.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/gethost.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/getifname.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/getline.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/getnattype.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/getport.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/getportproto.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/getproto.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/getsumd.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/hexdump.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/hostmask.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/hostname.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/hostnum.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/icmpcode.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/inet_addr.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/initparse.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/ionames.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/ipf_dotuning.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/ipft_ef.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/ipft_hx.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/ipft_pc.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/ipft_sn.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/ipft_td.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/ipft_tx.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/ipoptsec.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/kmem.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/kmem.h#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/kmemcpywrap.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/kvatoname.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/load_hash.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/load_hashnode.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/load_pool.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/load_poolnode.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/loglevel.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/make_range.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/mutex_emul.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/nametokva.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/nat_setgroupmap.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/natparse.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/ntomask.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/optname.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/optprint.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/optprintv6.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/optvalue.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/parse.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/portname.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/portnum.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/ports.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/print_toif.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/printactivenat.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/printaps.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/printbuf.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/printfr.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/printfraginfo.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/printhash.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/printhashnode.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/printhostmap.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/printhostmask.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/printifname.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/printip.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/printlog.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/printmask.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/printnat.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/printpacket.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/printpacket6.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/printpool.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/printpoolnode.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/printportcmp.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/printsbuf.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/printstate.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/printtunable.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/ratoi.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/ratoui.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/remove_hash.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/remove_hashnode.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/remove_pool.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/remove_poolnode.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/resetlexer.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/rwlock_emul.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/tcp_flags.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/tcpflags.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/tcpoptnames.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/to_interface.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/v6ionames.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/v6optvalue.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/var.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/lib/verbose.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/man/Makefile#2 integrate .. //depot/projects/dingo/contrib/ipfilter/man/ipf.4#2 integrate .. //depot/projects/dingo/contrib/ipfilter/man/ipf.5#2 integrate .. //depot/projects/dingo/contrib/ipfilter/man/ipf.8#2 integrate .. //depot/projects/dingo/contrib/ipfilter/man/ipfilter.4#1 branch .. //depot/projects/dingo/contrib/ipfilter/man/ipfilter.4.mandoc#1 branch .. //depot/projects/dingo/contrib/ipfilter/man/ipfs.8#2 integrate .. //depot/projects/dingo/contrib/ipfilter/man/ipfstat.8#2 integrate .. //depot/projects/dingo/contrib/ipfilter/man/ipftest.1#2 integrate .. //depot/projects/dingo/contrib/ipfilter/man/ipl.4#2 integrate .. //depot/projects/dingo/contrib/ipfilter/man/ipmon.5#1 branch .. //depot/projects/dingo/contrib/ipfilter/man/ipmon.8#2 integrate .. //depot/projects/dingo/contrib/ipfilter/man/ipnat.5#2 integrate .. //depot/projects/dingo/contrib/ipfilter/man/ipnat.8#2 integrate .. //depot/projects/dingo/contrib/ipfilter/man/ippool.5#1 branch .. //depot/projects/dingo/contrib/ipfilter/man/ippool.8#1 branch .. //depot/projects/dingo/contrib/ipfilter/man/ipscan.5#1 branch .. //depot/projects/dingo/contrib/ipfilter/man/ipscan.8#1 branch .. //depot/projects/dingo/contrib/ipfilter/man/mkfilters.1#2 integrate .. //depot/projects/dingo/contrib/ipfilter/md5.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/md5.h#1 branch .. //depot/projects/dingo/contrib/ipfilter/misc.c#2 delete .. //depot/projects/dingo/contrib/ipfilter/ml_ipl.c#2 delete .. //depot/projects/dingo/contrib/ipfilter/mlf_ipl.c#2 integrate .. //depot/projects/dingo/contrib/ipfilter/mlf_rule.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/mlfk_rule.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/mlh_rule.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/mli_ipl.c#2 delete .. //depot/projects/dingo/contrib/ipfilter/mln_ipl.c#2 delete .. //depot/projects/dingo/contrib/ipfilter/mls_ipl.c#2 delete .. //depot/projects/dingo/contrib/ipfilter/natparse.c#2 delete .. //depot/projects/dingo/contrib/ipfilter/net/.cvsignore#1 branch .. //depot/projects/dingo/contrib/ipfilter/opt.c#2 delete .. //depot/projects/dingo/contrib/ipfilter/opts.h#1 branch .. //depot/projects/dingo/contrib/ipfilter/parse.c#2 delete .. //depot/projects/dingo/contrib/ipfilter/pcap-bpf.h#1 branch .. //depot/projects/dingo/contrib/ipfilter/pcap-ipf.h#1 branch .. //depot/projects/dingo/contrib/ipfilter/pcap.h#2 delete .. //depot/projects/dingo/contrib/ipfilter/perl/ipf-mrtg.pl#2 integrate .. //depot/projects/dingo/contrib/ipfilter/perl/ipfmeta.pl#1 branch .. //depot/projects/dingo/contrib/ipfilter/perl/logfilter.pl#2 integrate .. //depot/projects/dingo/contrib/ipfilter/printnat.c#2 delete .. //depot/projects/dingo/contrib/ipfilter/printstate.c#2 delete .. //depot/projects/dingo/contrib/ipfilter/radix.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/radix_ipf.h#1 branch .. //depot/projects/dingo/contrib/ipfilter/relay.c#2 delete .. //depot/projects/dingo/contrib/ipfilter/rules/.cvsignore#1 branch .. //depot/projects/dingo/contrib/ipfilter/rules/example.1#2 integrate .. //depot/projects/dingo/contrib/ipfilter/rules/example.10#2 integrate .. //depot/projects/dingo/contrib/ipfilter/rules/example.11#2 integrate .. //depot/projects/dingo/contrib/ipfilter/rules/example.12#2 integrate .. //depot/projects/dingo/contrib/ipfilter/rules/example.13#2 integrate .. //depot/projects/dingo/contrib/ipfilter/rules/example.2#2 integrate .. //depot/projects/dingo/contrib/ipfilter/rules/example.3#2 integrate .. //depot/projects/dingo/contrib/ipfilter/rules/example.4#2 integrate .. //depot/projects/dingo/contrib/ipfilter/rules/example.5#2 integrate .. //depot/projects/dingo/contrib/ipfilter/rules/example.6#2 integrate .. //depot/projects/dingo/contrib/ipfilter/rules/example.7#2 integrate .. //depot/projects/dingo/contrib/ipfilter/rules/example.8#2 integrate .. //depot/projects/dingo/contrib/ipfilter/rules/example.9#2 integrate .. //depot/projects/dingo/contrib/ipfilter/rules/example.sr#2 integrate .. //depot/projects/dingo/contrib/ipfilter/rules/ip_rules#1 branch .. //depot/projects/dingo/contrib/ipfilter/rules/ipmon.conf#1 branch .. //depot/projects/dingo/contrib/ipfilter/rules/pool.conf#1 branch .. //depot/projects/dingo/contrib/ipfilter/samples/.cvsignore#1 branch .. //depot/projects/dingo/contrib/ipfilter/samples/Makefile#2 integrate .. //depot/projects/dingo/contrib/ipfilter/samples/ipfilter-pb.gif#2 integrate .. //depot/projects/dingo/contrib/ipfilter/samples/proxy.c#2 integrate .. //depot/projects/dingo/contrib/ipfilter/samples/relay.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/samples/userauth.c#2 integrate .. //depot/projects/dingo/contrib/ipfilter/snoop.h#2 integrate .. //depot/projects/dingo/contrib/ipfilter/solaris.c#2 delete .. //depot/projects/dingo/contrib/ipfilter/test/.cvsignore#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/Makefile#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/bpftest#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/dotest#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/dotest6#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/expected/bpf-f1#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/expected/bpf1#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/expected/f17#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/expected/i1#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/expected/i11#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/expected/i12#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/expected/i13#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/expected/i14#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/expected/i15#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/expected/i2#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/expected/i3#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/expected/i4#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/expected/i5#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/expected/i6#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/expected/i7#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/expected/i9#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/expected/in1#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/expected/in2#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/expected/in5#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/expected/in6#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/expected/ip1#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/expected/l1#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/expected/l1.b#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/expected/n1#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/expected/n10#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/expected/n11#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/expected/n12#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/expected/n4#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/expected/n5#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/expected/n7#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/expected/n8#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/expected/n9#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/expected/ni1#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/expected/ni10#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/expected/ni11#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/expected/ni12#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/expected/ni13#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/expected/ni14#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/expected/ni15#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/expected/ni16#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/expected/ni2#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/expected/ni3#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/expected/ni4#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/expected/ni5#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/expected/ni6#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/expected/ni7#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/expected/ni8#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/expected/ni9#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/expected/p1#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/expected/p2#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/expected/p3#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/hextest#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/input/f11#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/input/f12#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/input/f13#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/input/f17#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/input/ipv6.1#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/input/l1#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/input/n1#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/input/n10#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/input/n11#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/input/n12#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/input/n4#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/input/n8#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/input/n9#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/input/ni1#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/input/ni10#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/input/ni12#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/input/ni13#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/input/ni14#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/input/ni15#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/input/ni16#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/input/ni6#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/input/ni7#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/input/ni9#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/input/p1#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/input/p2#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/input/p3#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/intest#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/iptest#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/itest#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/logtest#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/mhtest#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/mtest#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/natipftest#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/nattest#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/ptest#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/regress/bpf-f1#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/regress/bpf1#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/regress/i1#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/regress/i11#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/regress/i12#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/regress/i13#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/regress/i14#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/regress/i15#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/regress/i2#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/regress/i3#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/regress/i4#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/regress/i6#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/regress/i9#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/regress/in1#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/regress/in2#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/regress/in5#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/regress/in6#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/regress/ip1#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/regress/n10#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/regress/n11#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/regress/n12#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/regress/n4#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/regress/n7#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/regress/n8#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/regress/n9#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/regress/ni10.nat#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/regress/ni11.nat#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/regress/ni12.ipf#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/regress/ni12.nat#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/regress/ni13.ipf#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/regress/ni13.nat#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/regress/ni14.ipf#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/regress/ni14.nat#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/regress/ni15.ipf#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/regress/ni15.nat#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/regress/ni16.ipf#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/regress/ni16.nat#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/regress/ni6.ipf#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/regress/ni6.nat#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/regress/ni7.nat#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/regress/ni8.nat#2 integrate .. //depot/projects/dingo/contrib/ipfilter/test/regress/ni9.ipf#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/regress/ni9.nat#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/regress/p1.ipf#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/regress/p1.pool#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/regress/p2.ipf#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/regress/p3.ipf#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/regress/p3.pool#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/test.format#1 branch .. //depot/projects/dingo/contrib/ipfilter/test/vfycksum.pl#2 integrate .. //depot/projects/dingo/contrib/ipfilter/todo#2 delete .. //depot/projects/dingo/contrib/ipfilter/tools/BNF.ipf#1 branch .. //depot/projects/dingo/contrib/ipfilter/tools/BNF.ipnat#1 branch .. //depot/projects/dingo/contrib/ipfilter/tools/Makefile#1 branch .. //depot/projects/dingo/contrib/ipfilter/tools/ipf.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/tools/ipf_y.y#1 branch .. //depot/projects/dingo/contrib/ipfilter/tools/ipfcomp.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/tools/ipfs.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/tools/ipfstat.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/tools/ipftest.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/tools/ipmon.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/tools/ipmon_y.y#1 branch .. //depot/projects/dingo/contrib/ipfilter/tools/ipnat.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/tools/ipnat_y.y#1 branch .. //depot/projects/dingo/contrib/ipfilter/tools/ippool.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/tools/ippool_y.y#1 branch .. //depot/projects/dingo/contrib/ipfilter/tools/ipscan_y.y#1 branch .. //depot/projects/dingo/contrib/ipfilter/tools/ipsyncm.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/tools/ipsyncs.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/tools/lex_var.h#1 branch .. //depot/projects/dingo/contrib/ipfilter/tools/lexer.c#1 branch .. //depot/projects/dingo/contrib/ipfilter/tools/lexer.h#1 branch .. //depot/projects/dingo/contrib/lukemftp/src/Makefile#2 integrate .. //depot/projects/dingo/contrib/lukemftp/src/cmds.c#2 integrate .. //depot/projects/dingo/contrib/lukemftp/src/cmdtab.c#2 integrate .. //depot/projects/dingo/contrib/lukemftp/src/extern.h#2 integrate .. //depot/projects/dingo/contrib/lukemftp/src/fetch.c#2 integrate .. //depot/projects/dingo/contrib/lukemftp/src/ftp.1#2 integrate .. //depot/projects/dingo/contrib/lukemftp/src/ftp.c#2 integrate .. //depot/projects/dingo/contrib/lukemftp/src/ftp_var.h#2 integrate .. //depot/projects/dingo/contrib/lukemftp/src/main.c#2 integrate .. //depot/projects/dingo/contrib/lukemftp/src/progressbar.c#2 integrate .. //depot/projects/dingo/contrib/lukemftp/src/progressbar.h#2 integrate .. //depot/projects/dingo/contrib/lukemftp/src/util.c#2 integrate .. //depot/projects/dingo/contrib/lukemftp/src/version.h#2 integrate .. //depot/projects/dingo/contrib/netcat/FREEBSD-Xlist#1 branch .. //depot/projects/dingo/contrib/netcat/FREEBSD-upgrade#1 branch .. //depot/projects/dingo/contrib/netcat/atomicio.c#1 branch .. //depot/projects/dingo/contrib/netcat/nc.1#1 branch .. //depot/projects/dingo/contrib/netcat/netcat.c#1 branch .. //depot/projects/dingo/contrib/netcat/socks.c#1 branch .. //depot/projects/dingo/contrib/one-true-awk/FIXES#2 integrate .. //depot/projects/dingo/contrib/one-true-awk/FREEBSD-upgrade#2 integrate .. //depot/projects/dingo/contrib/one-true-awk/README#2 integrate .. //depot/projects/dingo/contrib/one-true-awk/awk.h#2 integrate .. //depot/projects/dingo/contrib/one-true-awk/b.c#2 integrate .. //depot/projects/dingo/contrib/one-true-awk/lex.c#2 integrate .. //depot/projects/dingo/contrib/one-true-awk/lib.c#2 integrate .. //depot/projects/dingo/contrib/one-true-awk/main.c#2 integrate .. //depot/projects/dingo/contrib/one-true-awk/makefile#2 integrate .. //depot/projects/dingo/contrib/one-true-awk/proctab.c#2 integrate .. //depot/projects/dingo/contrib/one-true-awk/run.c#2 integrate .. //depot/projects/dingo/contrib/one-true-awk/tran.c#2 integrate .. //depot/projects/dingo/contrib/openpam/HISTORY#2 integrate .. //depot/projects/dingo/contrib/openpam/MANIFEST#2 integrate .. //depot/projects/dingo/contrib/openpam/Makefile.am#2 integrate .. //depot/projects/dingo/contrib/openpam/Makefile.in#2 integrate .. //depot/projects/dingo/contrib/openpam/RELNOTES#2 integrate .. //depot/projects/dingo/contrib/openpam/aclocal.m4#2 integrate .. //depot/projects/dingo/contrib/openpam/bin/Makefile.in#2 integrate .. //depot/projects/dingo/contrib/openpam/bin/su/Makefile.in#2 integrate .. //depot/projects/dingo/contrib/openpam/config.h.in#2 integrate .. //depot/projects/dingo/contrib/openpam/configure#2 integrate .. //depot/projects/dingo/contrib/openpam/configure.ac#1 branch .. //depot/projects/dingo/contrib/openpam/depcomp#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/Makefile.in#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/Makefile.am#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/Makefile.in#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/openpam.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/openpam.man#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/openpam_borrow_cred.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/openpam_free_data.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/openpam_free_envlist.3#1 branch .. //depot/projects/dingo/contrib/openpam/doc/man/openpam_get_option.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/openpam_log.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/openpam_nullconv.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/openpam_readline.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/openpam_restore_cred.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/openpam_set_option.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/openpam_ttyconv.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/pam.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/pam.man#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/pam_acct_mgmt.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/pam_authenticate.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/pam_chauthtok.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/pam_close_session.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/pam_end.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/pam_error.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/pam_get_authtok.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/pam_get_data.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/pam_get_item.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/pam_get_user.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/pam_getenv.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/pam_getenvlist.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/pam_info.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/pam_open_session.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/pam_prompt.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/pam_putenv.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/pam_set_data.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/pam_set_item.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/pam_setcred.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/pam_setenv.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/pam_sm_acct_mgmt.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/pam_sm_authenticate.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/pam_sm_chauthtok.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/pam_sm_close_session.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/pam_sm_open_session.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/pam_sm_setcred.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/pam_start.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/pam_strerror.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/pam_verror.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/pam_vinfo.3#2 integrate .. //depot/projects/dingo/contrib/openpam/doc/man/pam_vprompt.3#2 integrate .. //depot/projects/dingo/contrib/openpam/include/Makefile.in#2 integrate .. //depot/projects/dingo/contrib/openpam/include/security/Makefile.in#2 integrate .. //depot/projects/dingo/contrib/openpam/include/security/openpam.h#2 integrate .. //depot/projects/dingo/contrib/openpam/include/security/openpam_version.h#2 integrate .. //depot/projects/dingo/contrib/openpam/install-sh#2 integrate .. //depot/projects/dingo/contrib/openpam/lib/Makefile.am#2 integrate .. //depot/projects/dingo/contrib/openpam/lib/Makefile.in#2 integrate .. //depot/projects/dingo/contrib/openpam/lib/openpam_borrow_cred.c#2 integrate .. //depot/projects/dingo/contrib/openpam/lib/openpam_free_data.c#2 integrate .. //depot/projects/dingo/contrib/openpam/lib/openpam_free_envlist.c#1 branch .. //depot/projects/dingo/contrib/openpam/lib/openpam_log.c#2 integrate .. //depot/projects/dingo/contrib/openpam/lib/openpam_nullconv.c#2 integrate .. //depot/projects/dingo/contrib/openpam/lib/openpam_restore_cred.c#2 integrate .. //depot/projects/dingo/contrib/openpam/lib/openpam_ttyconv.c#2 integrate .. //depot/projects/dingo/contrib/openpam/lib/pam_get_authtok.c#2 integrate .. //depot/projects/dingo/contrib/openpam/lib/pam_get_data.c#2 integrate .. //depot/projects/dingo/contrib/openpam/lib/pam_get_user.c#2 integrate .. //depot/projects/dingo/contrib/openpam/lib/pam_open_session.c#2 integrate .. //depot/projects/dingo/contrib/openpam/lib/pam_strerror.c#2 integrate .. //depot/projects/dingo/contrib/openpam/ltmain.sh#2 integrate .. //depot/projects/dingo/contrib/openpam/misc/gendoc.pl#2 integrate .. //depot/projects/dingo/contrib/openpam/missing#2 integrate .. //depot/projects/dingo/contrib/openpam/modules/Makefile.in#2 integrate .. //depot/projects/dingo/contrib/openpam/modules/pam_deny/Makefile.in#2 integrate .. //depot/projects/dingo/contrib/openpam/modules/pam_permit/Makefile.in#2 integrate .. //depot/projects/dingo/contrib/openpam/modules/pam_unix/Makefile.in#2 integrate .. //depot/projects/dingo/contrib/pf/authpf/authpf.8#2 integrate .. //depot/projects/dingo/contrib/pf/authpf/authpf.c#2 integrate .. //depot/projects/dingo/contrib/pf/authpf/pathnames.h#2 integrate .. //depot/projects/dingo/contrib/pf/ftp-proxy/ftp-proxy.8#2 integrate .. //depot/projects/dingo/contrib/pf/ftp-proxy/ftp-proxy.c#2 integrate .. //depot/projects/dingo/contrib/pf/ftp-proxy/getline.c#2 integrate .. //depot/projects/dingo/contrib/pf/ftp-proxy/util.c#2 integrate .. //depot/projects/dingo/contrib/pf/ftp-proxy/util.h#2 integrate .. //depot/projects/dingo/contrib/pf/man/pf.4#2 integrate .. //depot/projects/dingo/contrib/pf/man/pf.conf.5#2 integrate .. //depot/projects/dingo/contrib/pf/man/pf.os.5#2 integrate .. //depot/projects/dingo/contrib/pf/man/pflog.4#2 integrate .. //depot/projects/dingo/contrib/pf/man/pfsync.4#2 integrate .. //depot/projects/dingo/contrib/pf/pfctl/parse.y#2 integrate .. //depot/projects/dingo/contrib/pf/pfctl/pf_print_state.c#2 integrate .. //depot/projects/dingo/contrib/pf/pfctl/pfctl.8#2 integrate .. //depot/projects/dingo/contrib/pf/pfctl/pfctl.c#2 integrate .. //depot/projects/dingo/contrib/pf/pfctl/pfctl.h#2 integrate .. //depot/projects/dingo/contrib/pf/pfctl/pfctl_altq.c#2 integrate .. //depot/projects/dingo/contrib/pf/pfctl/pfctl_optimize.c#1 branch >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu May 19 16:06:52 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1199B16A4D0; Thu, 19 May 2005 16:06:52 +0000 (GMT) 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 B49D616A4CE for ; Thu, 19 May 2005 16:06:51 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8878C43D60 for ; Thu, 19 May 2005 16:06:51 +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 j4JG6pHW046176 for ; Thu, 19 May 2005 16:06:51 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4JG6pcn046173 for perforce@freebsd.org; Thu, 19 May 2005 16:06:51 GMT (envelope-from sam@freebsd.org) Date: Thu, 19 May 2005 16:06:51 GMT Message-Id: <200505191606.j4JG6pcn046173@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 77185 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: Thu, 19 May 2005 16:06:52 -0000 http://perforce.freebsd.org/chv.cgi?CH=77185 Change 77185 by sam@sam_ebb on 2005/05/19 16:06:25 o correct handling of scan code's pwr sav state bit o return on-channel on scan complete before calling the scan policy module's pick routine; otherwise it may be on the wrong channel when it tries to contact the ap it selected o remove channel change logic from sta policy code now that the core scan code does the change Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_scan.c#4 edit .. //depot/projects/vap/sys/net80211/ieee80211_scan_sta.c#5 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_scan.c#4 (text+ko) ==== @@ -450,8 +450,10 @@ 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) + 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); @@ -550,16 +552,17 @@ * 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?). - * - * NB: don't blindly restore channel state; - * ss_scan_end may decide differently. */ ic->ic_scan_end(ic); /* notify driver */ if (scandone) /* record scan complete time */ ic->ic_lastscan = ticks; + /* return to the original channel */ + if (ss->ss_savchan != ic->ic_curchan) + change_channel(ic, 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) && (ss->ss_flags & IEEE80211_SCAN_ONCE) == 0 && time_before(ticks + ss->ss_mindwell, ss->ss_scanend)) { @@ -587,9 +590,6 @@ __func__, scandone ? "done" : "stopped", ticks, ss->ss_mindwell, ss->ss_scanend); - /* return to the original channel */ - if (ss->ss_savchan != ic->ic_curchan) - change_channel(ic, ss->ss_savchan); /* * Drop out of power save mode when a scan has * completed. If this scan was prematurely terminated @@ -599,8 +599,11 @@ * save mode because the beacon indicates we have frames * waiting for us. */ - if (scandone && (ss->ss_flags & IEEE80211_SCAN_PWRSAV)) + if (scandone && + (ss->ss_flags & IEEE80211_SCAN_PWRSAV)) { ieee80211_sta_pwrsave(vap, 0); + ss->ss_flags &= ~IEEE80211_SCAN_PWRSAV; + } ic->ic_flags &= ~IEEE80211_F_SCAN; /* NB: suppress notification during bg scan */ if (scandone) ==== //depot/projects/vap/sys/net80211/ieee80211_scan_sta.c#5 (text+ko) ==== @@ -690,7 +690,6 @@ static int sta_pick_bss(struct ieee80211_scan_state *ss, struct ieee80211vap *vap) { - struct ieee80211com *ic = vap->iv_ic; struct sta_table *st = ss->ss_priv; struct sta_entry *se, *selbs; @@ -704,8 +703,6 @@ * handle notification that this has completed. */ ss->ss_flags &= ~IEEE80211_SCAN_NOPICK; - ic->ic_curchan = ss->ss_savchan; - ic->ic_set_channel(ic); return 1; } /* From owner-p4-projects@FreeBSD.ORG Fri May 20 00:17:48 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5DCAD16A4D1; Fri, 20 May 2005 00:17:48 +0000 (GMT) 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 30B3116A4CE for ; Fri, 20 May 2005 00:17:48 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0ADB643DB2 for ; Fri, 20 May 2005 00:17:48 +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 j4K0HldP080636 for ; Fri, 20 May 2005 00:17:47 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4K0Hl6A080633 for perforce@freebsd.org; Fri, 20 May 2005 00:17:47 GMT (envelope-from sam@freebsd.org) Date: Fri, 20 May 2005 00:17:47 GMT Message-Id: <200505200017.j4K0Hl6A080633@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 77200 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: Fri, 20 May 2005 00:17:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=77200 Change 77200 by sam@sam_ebb on 2005/05/20 00:17:23 reduce default bgscan idle time to 500ms Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_var.h#13 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_var.h#13 (text+ko) ==== @@ -74,7 +74,7 @@ #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_DEFAULT (10*1000) /* default idle time (ms) */ +#define IEEE80211_BGSCAN_IDLE_DEFAULT 500 /* default idle time (ms) */ #define IEEE80211_PS_SLEEP 0x1 /* STA is in power saving mode */ #define IEEE80211_PS_MAX_QUEUE 50 /* maximum saved packets */ From owner-p4-projects@FreeBSD.ORG Fri May 20 00:17:49 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2CF1C16A4CE; Fri, 20 May 2005 00:17:49 +0000 (GMT) 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 8155816A4DF for ; Fri, 20 May 2005 00:17:48 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 55B0143D54 for ; Fri, 20 May 2005 00:17:48 +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 j4K0HmwY080643 for ; Fri, 20 May 2005 00:17:48 GMT (envelope-from csjp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4K0HmZP080639 for perforce@freebsd.org; Fri, 20 May 2005 00:17:48 GMT (envelope-from csjp@freebsd.org) Date: Fri, 20 May 2005 00:17:48 GMT Message-Id: <200505200017.j4K0HmZP080639@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 Subject: PERFORCE change 77201 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: Fri, 20 May 2005 00:17:50 -0000 http://perforce.freebsd.org/chv.cgi?CH=77201 Change 77201 by csjp@csjp_xor on 2005/05/20 00:17:30 -replace a size_t for int in the checksum calculation routines -declare temp variable to stuff the size of the extended attribute in. We have to do this because for some reason the data type representing extended attribute size between vn_extattr_get and VOP_GETEXTATTR conflict. This makes the mac_chkexec build happy on AMD64 Affected files ... .. //depot/projects/trustedbsd/mac/sys/security/mac_chkexec/mac_chkexec.c#8 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/security/mac_chkexec/mac_chkexec.c#8 (text+ko) ==== @@ -419,7 +419,7 @@ MD5_CTX md5ctx; u_quad_t b; int error, count; - size_t resid; + int resid; struct vattr va; caddr_t bufobj; @@ -465,7 +465,7 @@ SHA1_CTX sha1ctx; u_quad_t b; int error, count; - size_t resid; + int resid; struct vattr va; caddr_t bufobj; @@ -510,15 +510,20 @@ char *depends, **ap, *paths[10]; int error, i, npaths; struct nameidata nd; - size_t alen; - + int alen; + size_t ealen; + ASSERT_VOP_LOCKED(vp, "no vlock held"); error = VOP_GETEXTATTR(vp, MAC_CHKEXEC_ATTRN, MAC_CHKEXEC_DEP, - NULL, &alen, NOCRED, curthread); + NULL, &ealen, NOCRED, curthread); if (error != 0 && error == ENOATTR) return (0); else if (error) return (error); + /* XXX why are'nt extended attribute size specification types between + * VOP_GETEXTATTR and vn_extattr_get the same? + */ + alen = ealen; depends = malloc(alen + 1, M_CHKEXEC, M_WAITOK | M_ZERO); error = vn_extattr_get(vp, IO_NODELOCKED, MAC_CHKEXEC_ATTRN, MAC_CHKEXEC_DEP, &alen, depends, curthread); From owner-p4-projects@FreeBSD.ORG Fri May 20 01:23:11 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DA9DA16A4D0; Fri, 20 May 2005 01:23:10 +0000 (GMT) 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 8915016A4CE for ; Fri, 20 May 2005 01:23:10 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4603343D7E for ; Fri, 20 May 2005 01:23:09 +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 j4K1N9RD089765 for ; Fri, 20 May 2005 01:23:09 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4K1N6aC089761 for perforce@freebsd.org; Fri, 20 May 2005 01:23:06 GMT (envelope-from peter@freebsd.org) Date: Fri, 20 May 2005 01:23:06 GMT Message-Id: <200505200123.j4K1N6aC089761@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 Subject: PERFORCE change 77202 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: Fri, 20 May 2005 01:23:12 -0000 http://perforce.freebsd.org/chv.cgi?CH=77202 Change 77202 by peter@peter_daintree on 2005/05/20 01:22:09 IFC @77199 Affected files ... .. //depot/projects/hammer/Makefile.inc1#91 integrate .. //depot/projects/hammer/UPDATING#76 integrate .. //depot/projects/hammer/bin/chflags/chflags.1#9 integrate .. //depot/projects/hammer/bin/chflags/chflags.c#7 integrate .. //depot/projects/hammer/bin/csh/config.h#6 integrate .. //depot/projects/hammer/bin/mv/mv.c#7 integrate .. //depot/projects/hammer/bin/sh/options.c#4 integrate .. //depot/projects/hammer/contrib/bzip2/CHANGES#2 integrate .. //depot/projects/hammer/contrib/bzip2/FREEBSD-Xlist#1 branch .. //depot/projects/hammer/contrib/bzip2/FREEBSD-upgrade#2 integrate .. //depot/projects/hammer/contrib/bzip2/LICENSE#2 integrate .. //depot/projects/hammer/contrib/bzip2/Makefile#2 integrate .. //depot/projects/hammer/contrib/bzip2/Makefile-libbz2_so#2 integrate .. //depot/projects/hammer/contrib/bzip2/README#2 integrate .. //depot/projects/hammer/contrib/bzip2/README.COMPILATION.PROBLEMS#2 integrate .. //depot/projects/hammer/contrib/bzip2/blocksort.c#2 integrate .. //depot/projects/hammer/contrib/bzip2/bzip2.1#2 integrate .. //depot/projects/hammer/contrib/bzip2/bzip2.c#2 integrate .. //depot/projects/hammer/contrib/bzip2/bzip2recover.c#2 integrate .. //depot/projects/hammer/contrib/bzip2/bzlib.c#2 integrate .. //depot/projects/hammer/contrib/bzip2/bzlib.h#2 integrate .. //depot/projects/hammer/contrib/bzip2/bzlib_private.h#2 integrate .. //depot/projects/hammer/contrib/bzip2/compress.c#2 integrate .. //depot/projects/hammer/contrib/bzip2/crctable.c#2 integrate .. //depot/projects/hammer/contrib/bzip2/decompress.c#2 integrate .. //depot/projects/hammer/contrib/bzip2/huffman.c#2 integrate .. //depot/projects/hammer/contrib/bzip2/randtable.c#2 integrate .. //depot/projects/hammer/contrib/bzip2/sample1.bz2.uu#2 integrate .. //depot/projects/hammer/contrib/bzip2/sample1.ref.gz.uu#2 integrate .. //depot/projects/hammer/contrib/bzip2/sample2.bz2.uu#2 integrate .. //depot/projects/hammer/contrib/bzip2/sample2.ref.gz.uu#2 integrate .. //depot/projects/hammer/contrib/bzip2/sample3.bz2.uu#2 integrate .. //depot/projects/hammer/contrib/bzip2/sample3.ref.gz.uu#2 integrate .. //depot/projects/hammer/contrib/ipfilter/pcap-bpf.h#1 branch .. //depot/projects/hammer/contrib/ipfilter/tools/ipf_y.y#2 integrate .. //depot/projects/hammer/contrib/ipfilter/tools/ipmon.c#2 integrate .. //depot/projects/hammer/contrib/lukemftp/src/cmds.c#5 integrate .. //depot/projects/hammer/contrib/lukemftp/src/cmdtab.c#5 integrate .. //depot/projects/hammer/contrib/lukemftp/src/extern.h#5 integrate .. //depot/projects/hammer/contrib/lukemftp/src/fetch.c#6 integrate .. //depot/projects/hammer/contrib/lukemftp/src/ftp.1#7 integrate .. //depot/projects/hammer/contrib/lukemftp/src/ftp.c#6 integrate .. //depot/projects/hammer/contrib/lukemftp/src/ftp_var.h#5 integrate .. //depot/projects/hammer/contrib/lukemftp/src/main.c#5 integrate .. //depot/projects/hammer/contrib/lukemftp/src/progressbar.c#6 integrate .. //depot/projects/hammer/contrib/lukemftp/src/util.c#6 integrate .. //depot/projects/hammer/contrib/lukemftp/src/version.h#6 integrate .. //depot/projects/hammer/contrib/one-true-awk/FIXES#6 integrate .. //depot/projects/hammer/contrib/one-true-awk/FREEBSD-upgrade#6 integrate .. //depot/projects/hammer/contrib/one-true-awk/README#4 integrate .. //depot/projects/hammer/contrib/one-true-awk/awk.h#3 integrate .. //depot/projects/hammer/contrib/one-true-awk/b.c#6 integrate .. //depot/projects/hammer/contrib/one-true-awk/lex.c#5 integrate .. //depot/projects/hammer/contrib/one-true-awk/lib.c#4 integrate .. //depot/projects/hammer/contrib/one-true-awk/main.c#6 integrate .. //depot/projects/hammer/contrib/one-true-awk/makefile#4 integrate .. //depot/projects/hammer/contrib/one-true-awk/proctab.c#2 integrate .. //depot/projects/hammer/contrib/one-true-awk/run.c#6 integrate .. //depot/projects/hammer/contrib/one-true-awk/tran.c#3 integrate .. //depot/projects/hammer/contrib/pf/authpf/authpf.8#3 integrate .. //depot/projects/hammer/contrib/pf/authpf/authpf.c#4 integrate .. //depot/projects/hammer/contrib/pf/authpf/pathnames.h#2 integrate .. //depot/projects/hammer/contrib/pf/ftp-proxy/ftp-proxy.8#4 integrate .. //depot/projects/hammer/contrib/pf/ftp-proxy/ftp-proxy.c#4 integrate .. //depot/projects/hammer/contrib/pf/ftp-proxy/getline.c#2 integrate .. //depot/projects/hammer/contrib/pf/ftp-proxy/util.c#3 integrate .. //depot/projects/hammer/contrib/pf/ftp-proxy/util.h#2 integrate .. //depot/projects/hammer/contrib/pf/man/pf.4#6 integrate .. //depot/projects/hammer/contrib/pf/man/pf.conf.5#8 integrate .. //depot/projects/hammer/contrib/pf/man/pf.os.5#3 integrate .. //depot/projects/hammer/contrib/pf/man/pflog.4#4 integrate .. //depot/projects/hammer/contrib/pf/man/pfsync.4#5 integrate .. //depot/projects/hammer/contrib/pf/pfctl/parse.y#5 integrate .. //depot/projects/hammer/contrib/pf/pfctl/pf_print_state.c#3 integrate .. //depot/projects/hammer/contrib/pf/pfctl/pfctl.8#3 integrate .. //depot/projects/hammer/contrib/pf/pfctl/pfctl.c#4 integrate .. //depot/projects/hammer/contrib/pf/pfctl/pfctl.h#4 integrate .. //depot/projects/hammer/contrib/pf/pfctl/pfctl_altq.c#5 integrate .. //depot/projects/hammer/contrib/pf/pfctl/pfctl_optimize.c#1 branch .. //depot/projects/hammer/contrib/pf/pfctl/pfctl_osfp.c#3 integrate .. //depot/projects/hammer/contrib/pf/pfctl/pfctl_parser.c#5 integrate .. //depot/projects/hammer/contrib/pf/pfctl/pfctl_parser.h#4 integrate .. //depot/projects/hammer/contrib/pf/pfctl/pfctl_qstats.c#4 integrate .. //depot/projects/hammer/contrib/pf/pfctl/pfctl_radix.c#3 integrate .. //depot/projects/hammer/contrib/pf/pfctl/pfctl_table.c#5 integrate .. //depot/projects/hammer/contrib/pf/pflogd/pflogd.8#3 integrate .. //depot/projects/hammer/contrib/pf/pflogd/pflogd.c#6 integrate .. //depot/projects/hammer/contrib/pf/pflogd/pidfile.c#4 integrate .. //depot/projects/hammer/contrib/pf/pflogd/privsep.c#2 integrate .. //depot/projects/hammer/contrib/pf/pflogd/privsep_fdpass.c#2 integrate .. //depot/projects/hammer/contrib/smbfs/lib/smb/ctx.c#4 integrate .. //depot/projects/hammer/contrib/tcp_wrappers/hosts_access.c#2 integrate .. //depot/projects/hammer/contrib/tcp_wrappers/socket.c#3 integrate .. //depot/projects/hammer/contrib/top/commands.c#6 integrate .. //depot/projects/hammer/contrib/top/display.c#3 integrate .. //depot/projects/hammer/contrib/top/machine.h#3 integrate .. //depot/projects/hammer/contrib/top/top.c#7 integrate .. //depot/projects/hammer/etc/devd.conf#19 integrate .. //depot/projects/hammer/etc/mtree/BSD.local.dist#24 integrate .. //depot/projects/hammer/games/caesar/Makefile#2 integrate .. //depot/projects/hammer/games/caesar/caesar.c#3 integrate .. //depot/projects/hammer/games/fortune/datfiles/fortunes#44 integrate .. //depot/projects/hammer/games/fortune/datfiles/limerick#4 integrate .. //depot/projects/hammer/games/pom/Makefile#2 integrate .. //depot/projects/hammer/games/pom/pom.c#3 integrate .. //depot/projects/hammer/gnu/lib/libobjc/Makefile#11 integrate .. //depot/projects/hammer/gnu/lib/libregex/FREEBSD-upgrade#3 integrate .. //depot/projects/hammer/gnu/lib/libregex/Makefile#8 integrate .. //depot/projects/hammer/gnu/lib/libregex/config.h#1 branch .. //depot/projects/hammer/gnu/lib/libregex/posix/regex.h#3 integrate .. //depot/projects/hammer/gnu/lib/libregex/regcomp.c#1 branch .. //depot/projects/hammer/gnu/lib/libregex/regex.c#8 integrate .. //depot/projects/hammer/gnu/lib/libregex/regex_internal.c#1 branch .. //depot/projects/hammer/gnu/lib/libregex/regex_internal.h#1 branch .. //depot/projects/hammer/gnu/lib/libregex/regexec.c#1 branch .. //depot/projects/hammer/gnu/usr.bin/gdb/libgdb/fbsd-threads.c#8 integrate .. //depot/projects/hammer/gnu/usr.bin/grep/FREEBSD-upgrade#1 branch .. //depot/projects/hammer/gnu/usr.bin/grep/dfa.c#6 integrate .. //depot/projects/hammer/gnu/usr.bin/grep/dfa.h#3 integrate .. //depot/projects/hammer/gnu/usr.bin/grep/grep.c#7 integrate .. //depot/projects/hammer/gnu/usr.bin/grep/grep.h#3 integrate .. //depot/projects/hammer/gnu/usr.bin/grep/mbcache.h#2 delete .. //depot/projects/hammer/gnu/usr.bin/grep/search.c#6 integrate .. //depot/projects/hammer/include/Makefile#42 integrate .. //depot/projects/hammer/include/netdb.h#9 integrate .. //depot/projects/hammer/include/runefile.h#2 delete .. //depot/projects/hammer/include/unistd.h#16 integrate .. //depot/projects/hammer/lib/csu/i386-elf/crt1.c#5 integrate .. //depot/projects/hammer/lib/csu/i386-elf/crti.S#2 integrate .. //depot/projects/hammer/lib/csu/i386-elf/crtn.S#2 integrate .. //depot/projects/hammer/lib/libalias/HISTORY#2 delete .. //depot/projects/hammer/lib/libalias/Makefile#11 integrate .. //depot/projects/hammer/lib/libalias/alias.c#12 delete .. //depot/projects/hammer/lib/libalias/alias.h#7 delete .. //depot/projects/hammer/lib/libalias/alias_cuseeme.c#6 delete .. //depot/projects/hammer/lib/libalias/alias_db.c#9 delete .. //depot/projects/hammer/lib/libalias/alias_ftp.c#6 delete .. //depot/projects/hammer/lib/libalias/alias_irc.c#6 delete .. //depot/projects/hammer/lib/libalias/alias_local.h#8 delete .. //depot/projects/hammer/lib/libalias/alias_nbt.c#7 delete .. //depot/projects/hammer/lib/libalias/alias_old.c#5 delete .. //depot/projects/hammer/lib/libalias/alias_pptp.c#8 delete .. //depot/projects/hammer/lib/libalias/alias_proxy.c#7 delete .. //depot/projects/hammer/lib/libalias/alias_skinny.c#8 delete .. //depot/projects/hammer/lib/libalias/alias_smedia.c#6 delete .. //depot/projects/hammer/lib/libalias/alias_util.c#7 delete .. //depot/projects/hammer/lib/libalias/libalias.3#9 delete .. //depot/projects/hammer/lib/libarchive/archive_entry.c#16 integrate .. //depot/projects/hammer/lib/libc/gen/Makefile.inc#22 integrate .. //depot/projects/hammer/lib/libc/gen/getbootfile.c#3 integrate .. //depot/projects/hammer/lib/libc/gen/getgrouplist.c#4 integrate .. //depot/projects/hammer/lib/libc/gen/ttyname.3#4 integrate .. //depot/projects/hammer/lib/libc/gen/ttyname.c#5 integrate .. //depot/projects/hammer/lib/libc/gmon/mcount.c#4 integrate .. //depot/projects/hammer/lib/libc/locale/rune.c#5 integrate .. //depot/projects/hammer/lib/libc/locale/runefile.h#1 branch .. //depot/projects/hammer/lib/libc/net/getaddrinfo.c#22 integrate .. //depot/projects/hammer/lib/libc/net/gethostbynis.c#5 integrate .. //depot/projects/hammer/lib/libc/net/getnameinfo.c#5 integrate .. //depot/projects/hammer/lib/libc/net/getnetbydns.c#6 integrate .. //depot/projects/hammer/lib/libc/net/getnetbyht.c#4 integrate .. //depot/projects/hammer/lib/libc/net/getnetbynis.c#3 integrate .. //depot/projects/hammer/lib/libc/net/getnetnamadr.c#4 integrate .. //depot/projects/hammer/lib/libc/net/name6.c#17 integrate .. //depot/projects/hammer/lib/libc/net/netdb_private.h#4 integrate .. //depot/projects/hammer/lib/libc/net/rcmd.c#6 integrate .. //depot/projects/hammer/lib/libc/net/res_send.c#6 integrate .. //depot/projects/hammer/lib/libc/stdio/fopen.3#4 integrate .. //depot/projects/hammer/lib/libc/stdio/glue.h#2 integrate .. //depot/projects/hammer/lib/libc/sys/accept.2#7 integrate .. //depot/projects/hammer/lib/libc/uuid/uuid_is_nil.c#4 integrate .. //depot/projects/hammer/lib/libc/yp/yplib.c#6 integrate .. //depot/projects/hammer/lib/libc_r/uthread/pthread_private.h#15 integrate .. //depot/projects/hammer/lib/libpam/modules/pam_unix/pam_unix.c#8 integrate .. //depot/projects/hammer/lib/libpmc/Makefile#2 integrate .. //depot/projects/hammer/lib/libpmc/libpmc.c#2 integrate .. //depot/projects/hammer/lib/libpmc/pmc.3#2 integrate .. //depot/projects/hammer/lib/libpmc/pmc.h#2 integrate .. //depot/projects/hammer/lib/libstand/Makefile#12 integrate .. //depot/projects/hammer/lib/libstand/bzipfs.c#3 integrate .. //depot/projects/hammer/lib/libstand/bzlib.c.diff#2 delete .. //depot/projects/hammer/lib/libstand/bzlib.h.diff#2 delete .. //depot/projects/hammer/lib/libstand/bzlib_private.h.diff#3 delete .. //depot/projects/hammer/lib/libstand/stand.h#7 integrate .. //depot/projects/hammer/lib/libstand/zutil.h.diff#2 delete .. //depot/projects/hammer/lib/libutil/logwtmp.c#4 integrate .. //depot/projects/hammer/lib/libutil/realhostname.c#4 integrate .. //depot/projects/hammer/lib/libz/FREEBSD-upgrade#1 branch .. //depot/projects/hammer/lib/libz/adler32.c#3 integrate .. //depot/projects/hammer/lib/libz/compress.c#3 integrate .. //depot/projects/hammer/lib/libz/crc32.c#3 integrate .. //depot/projects/hammer/lib/libz/deflate.c#3 integrate .. //depot/projects/hammer/lib/libz/deflate.h#3 integrate .. //depot/projects/hammer/lib/libz/example.c#3 integrate .. //depot/projects/hammer/lib/libz/infback.c#3 integrate .. //depot/projects/hammer/lib/libz/inffast.c#3 integrate .. //depot/projects/hammer/lib/libz/inflate.c#4 integrate .. //depot/projects/hammer/lib/libz/inftrees.c#3 integrate .. //depot/projects/hammer/lib/libz/trees.c#3 integrate .. //depot/projects/hammer/lib/libz/uncompr.c#3 integrate .. //depot/projects/hammer/lib/libz/zlib.3#4 integrate .. //depot/projects/hammer/lib/libz/zutil.c#3 integrate .. //depot/projects/hammer/lib/libz/zutil.h#3 integrate .. //depot/projects/hammer/lib/msun/i387/s_ceilf.S#2 integrate .. //depot/projects/hammer/lib/msun/i387/s_floorf.S#2 integrate .. //depot/projects/hammer/lib/msun/i387/s_truncf.S#2 integrate .. //depot/projects/hammer/libexec/Makefile#29 integrate .. //depot/projects/hammer/libexec/ftp-proxy/Makefile#2 integrate .. //depot/projects/hammer/libexec/rlogind/rlogind.c#4 integrate .. //depot/projects/hammer/libexec/rshd/rshd.c#5 integrate .. //depot/projects/hammer/libexec/rtld-elf/i386/rtld_start.S#2 integrate .. //depot/projects/hammer/libexec/talkd/process.c#2 integrate .. //depot/projects/hammer/libexec/tftpd/tftpd.c#10 integrate .. //depot/projects/hammer/release/Makefile#71 integrate .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#76 integrate .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#94 integrate .. //depot/projects/hammer/release/doc/share/misc/dev.archlist.txt#27 integrate .. //depot/projects/hammer/release/doc/share/sgml/release.dsl#4 integrate .. //depot/projects/hammer/release/doc/zh_CN.GB2312/relnotes/common/new.sgml#5 integrate .. //depot/projects/hammer/release/picobsd/tinyware/login/pico-login.c#3 integrate .. //depot/projects/hammer/release/scripts/package-split.py#4 integrate .. //depot/projects/hammer/release/scripts/package-trees.sh#2 integrate .. //depot/projects/hammer/sbin/atacontrol/atacontrol.8#6 integrate .. //depot/projects/hammer/sbin/atacontrol/atacontrol.c#14 integrate .. //depot/projects/hammer/sbin/atm/atm/atm.h#4 integrate .. //depot/projects/hammer/sbin/atm/atmconfig/atmconfig_device.h#2 integrate .. //depot/projects/hammer/sbin/atm/ilmid/ilmid.c#11 integrate .. //depot/projects/hammer/sbin/devd/devd.cc#11 integrate .. //depot/projects/hammer/sbin/dump/traverse.c#9 integrate .. //depot/projects/hammer/sbin/fdisk/fdisk.c#16 integrate .. //depot/projects/hammer/sbin/fdisk_pc98/Makefile#4 integrate .. //depot/projects/hammer/sbin/fdisk_pc98/fdisk.c#9 integrate .. //depot/projects/hammer/sbin/ggate/shared/ggate.h#2 integrate .. //depot/projects/hammer/sbin/ifconfig/af_inet6.c#2 integrate .. //depot/projects/hammer/sbin/ifconfig/ifpfsync.c#2 integrate .. //depot/projects/hammer/sbin/ipf/Makefile.inc#2 integrate .. //depot/projects/hammer/sbin/ipf/ipf/Makefile#2 integrate .. //depot/projects/hammer/sbin/ipfw/ipfw.8#41 integrate .. //depot/projects/hammer/sbin/kldstat/kldstat.8#3 integrate .. //depot/projects/hammer/sbin/kldstat/kldstat.c#6 integrate .. //depot/projects/hammer/sbin/natd/natd.c#10 integrate .. //depot/projects/hammer/sbin/pfctl/Makefile#5 integrate .. //depot/projects/hammer/sbin/route/route.c#9 integrate .. //depot/projects/hammer/share/dict/freebsd#5 integrate .. //depot/projects/hammer/share/examples/etc/make.conf#38 integrate .. //depot/projects/hammer/share/examples/mdoc/example.4#4 integrate .. //depot/projects/hammer/share/man/man3/Makefile#11 integrate .. //depot/projects/hammer/share/man/man3/pthread.3#7 integrate .. //depot/projects/hammer/share/man/man3/pthread_atfork.3#1 branch .. //depot/projects/hammer/share/man/man4/Makefile#71 integrate .. //depot/projects/hammer/share/man/man4/carp.4#4 integrate .. //depot/projects/hammer/share/man/man4/hwpmc.4#2 integrate .. //depot/projects/hammer/share/man/man4/ichsmb.4#3 integrate .. //depot/projects/hammer/share/man/man4/iwi.4#2 integrate .. //depot/projects/hammer/share/man/man4/man4.i386/Makefile#29 integrate .. //depot/projects/hammer/share/man/man4/man4.i386/acpi_asus.4#6 integrate .. //depot/projects/hammer/share/man/man4/man4.i386/acpi_ibm.4#1 branch .. //depot/projects/hammer/share/man/man4/man4.i386/ep.4#10 integrate .. //depot/projects/hammer/share/man/man4/mn.4#1 branch .. //depot/projects/hammer/share/man/man4/ng_nat.4#1 branch .. //depot/projects/hammer/share/man/man4/ng_netflow.4#8 integrate .. //depot/projects/hammer/share/man/man4/nve.4#1 branch .. //depot/projects/hammer/share/man/man4/twe.4#8 integrate .. //depot/projects/hammer/share/man/man5/Makefile#11 integrate .. //depot/projects/hammer/share/man/man5/devfs.conf.5#1 branch .. //depot/projects/hammer/share/man/man5/devfs.rules.5#1 branch .. //depot/projects/hammer/share/man/man5/rc.conf.5#55 integrate .. //depot/projects/hammer/share/man/man7/release.7#26 integrate .. //depot/projects/hammer/share/man/man9/style.9#22 integrate .. //depot/projects/hammer/share/man/man9/taskqueue.9#11 integrate .. //depot/projects/hammer/share/misc/bsd-family-tree#25 integrate .. //depot/projects/hammer/sys/alpha/alpha/clock.c#9 integrate .. //depot/projects/hammer/sys/alpha/alpha/timerreg.h#4 delete .. //depot/projects/hammer/sys/alpha/include/ppireg.h#1 branch .. //depot/projects/hammer/sys/alpha/include/timerreg.h#1 branch .. //depot/projects/hammer/sys/alpha/isa/isa_dma.c#8 integrate .. //depot/projects/hammer/sys/amd64/amd64/machdep.c#124 integrate .. //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#92 integrate .. //depot/projects/hammer/sys/amd64/amd64/prof_machdep.c#4 integrate .. //depot/projects/hammer/sys/amd64/include/cpufunc.h#33 integrate .. //depot/projects/hammer/sys/amd64/include/ppireg.h#1 branch .. //depot/projects/hammer/sys/amd64/include/timerreg.h#1 branch .. //depot/projects/hammer/sys/amd64/isa/clock.c#40 integrate .. //depot/projects/hammer/sys/amd64/isa/isa.h#12 integrate .. //depot/projects/hammer/sys/amd64/isa/isa_dma.c#18 integrate .. //depot/projects/hammer/sys/amd64/isa/timerreg.h#9 delete .. //depot/projects/hammer/sys/arm/arm/vm_machdep.c#12 integrate .. //depot/projects/hammer/sys/boot/common/boot.c#5 integrate .. //depot/projects/hammer/sys/boot/common/help.common#12 integrate .. //depot/projects/hammer/sys/boot/common/loader.8#19 integrate .. //depot/projects/hammer/sys/boot/forth/loader.conf#21 integrate .. //depot/projects/hammer/sys/boot/ofw/libofw/ofw_copy.c#5 integrate .. //depot/projects/hammer/sys/boot/pc98/boot2/Makefile#9 integrate .. //depot/projects/hammer/sys/boot/pc98/boot2/boot.c#6 integrate .. //depot/projects/hammer/sys/boot/pc98/boot2/boot.h#4 integrate .. //depot/projects/hammer/sys/boot/pc98/boot2/boot2.S#2 integrate .. //depot/projects/hammer/sys/boot/pc98/boot2/disk.c#7 integrate .. //depot/projects/hammer/sys/boot/pc98/boot2/io.c#4 integrate .. //depot/projects/hammer/sys/boot/pc98/boot2/sys.c#6 integrate .. //depot/projects/hammer/sys/boot/pc98/boot2/table.c#3 integrate .. //depot/projects/hammer/sys/boot/pc98/btx/btx/Makefile#6 integrate .. //depot/projects/hammer/sys/boot/pc98/btx/btx/btx.S#6 integrate .. //depot/projects/hammer/sys/boot/pc98/btx/btxldr/Makefile#6 integrate .. //depot/projects/hammer/sys/boot/pc98/btx/btxldr/btxldr.S#5 integrate .. //depot/projects/hammer/sys/boot/pc98/kgzldr/Makefile#8 integrate .. //depot/projects/hammer/sys/boot/pc98/kgzldr/crt.s#4 integrate .. //depot/projects/hammer/sys/boot/pc98/libpc98/Makefile#8 integrate .. //depot/projects/hammer/sys/boot/pc98/libpc98/biosdisk.c#8 integrate .. //depot/projects/hammer/sys/boot/pc98/libpc98/biosmem.c#4 integrate .. //depot/projects/hammer/sys/boot/pc98/libpc98/comconsole.c#4 integrate .. //depot/projects/hammer/sys/boot/pc98/libpc98/gatea20.c#3 integrate .. //depot/projects/hammer/sys/boot/pc98/libpc98/time.c#3 integrate .. //depot/projects/hammer/sys/boot/pc98/libpc98/vidconsole.c#5 integrate .. //depot/projects/hammer/sys/boot/pc98/loader/Makefile#9 integrate .. //depot/projects/hammer/sys/boot/pc98/loader/main.c#5 integrate .. //depot/projects/hammer/sys/cam/cam_xpt.c#20 integrate .. //depot/projects/hammer/sys/cam/scsi/scsi_da.c#27 integrate .. //depot/projects/hammer/sys/compat/ndis/kern_ndis.c#31 integrate .. //depot/projects/hammer/sys/compat/ndis/kern_windrv.c#7 integrate .. //depot/projects/hammer/sys/compat/ndis/ndis_var.h#21 integrate .. //depot/projects/hammer/sys/compat/ndis/ntoskrnl_var.h#19 integrate .. //depot/projects/hammer/sys/compat/ndis/subr_hal.c#13 integrate .. //depot/projects/hammer/sys/compat/ndis/subr_ndis.c#30 integrate .. //depot/projects/hammer/sys/compat/ndis/subr_ntoskrnl.c#30 integrate .. //depot/projects/hammer/sys/compat/ndis/subr_usbd.c#3 integrate .. //depot/projects/hammer/sys/conf/NOTES#89 integrate .. //depot/projects/hammer/sys/conf/files#113 integrate .. //depot/projects/hammer/sys/conf/files.pc98#44 integrate .. //depot/projects/hammer/sys/conf/files.sparc64#29 integrate .. //depot/projects/hammer/sys/conf/options#73 integrate .. //depot/projects/hammer/sys/conf/options.i386#34 integrate .. //depot/projects/hammer/sys/conf/options.pc98#30 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_compat.h#9 integrate .. //depot/projects/hammer/sys/contrib/pf/net/if_pflog.c#11 integrate .. //depot/projects/hammer/sys/contrib/pf/net/if_pflog.h#4 integrate .. //depot/projects/hammer/sys/contrib/pf/net/if_pfsync.c#13 integrate .. //depot/projects/hammer/sys/contrib/pf/net/if_pfsync.h#4 integrate .. //depot/projects/hammer/sys/contrib/pf/net/pf.c#22 integrate .. //depot/projects/hammer/sys/contrib/pf/net/pf_if.c#8 integrate .. //depot/projects/hammer/sys/contrib/pf/net/pf_ioctl.c#17 integrate .. //depot/projects/hammer/sys/contrib/pf/net/pf_norm.c#7 integrate .. //depot/projects/hammer/sys/contrib/pf/net/pf_osfp.c#4 integrate .. //depot/projects/hammer/sys/contrib/pf/net/pf_subr.c#2 integrate .. //depot/projects/hammer/sys/contrib/pf/net/pf_table.c#5 integrate .. //depot/projects/hammer/sys/contrib/pf/net/pfvar.h#9 integrate .. //depot/projects/hammer/sys/dev/aac/aac_disk.c#12 integrate .. //depot/projects/hammer/sys/dev/acpi_support/acpi_asus.c#5 integrate .. //depot/projects/hammer/sys/dev/acpi_support/acpi_panasonic.c#3 integrate .. //depot/projects/hammer/sys/dev/acpica/Osd/OsdSchedule.c#12 integrate .. //depot/projects/hammer/sys/dev/acpica/acpi.c#60 integrate .. //depot/projects/hammer/sys/dev/acpica/acpi_acad.c#17 integrate .. //depot/projects/hammer/sys/dev/acpica/acpi_ec.c#32 integrate .. //depot/projects/hammer/sys/dev/acpica/acpivar.h#45 integrate .. //depot/projects/hammer/sys/dev/arcmsr/arcmsr.c#3 integrate .. //depot/projects/hammer/sys/dev/ata/ata-all.c#50 integrate .. //depot/projects/hammer/sys/dev/ata/ata-all.h#30 integrate .. //depot/projects/hammer/sys/dev/ata/ata-chipset.c#56 integrate .. //depot/projects/hammer/sys/dev/ata/ata-commands.h#4 delete .. //depot/projects/hammer/sys/dev/ata/ata-disk.c#32 integrate .. //depot/projects/hammer/sys/dev/ata/ata-dma.c#21 integrate .. //depot/projects/hammer/sys/dev/ata/ata-lowlevel.c#29 integrate .. //depot/projects/hammer/sys/dev/ata/ata-pci.c#31 integrate .. //depot/projects/hammer/sys/dev/ata/ata-pci.h#31 integrate .. //depot/projects/hammer/sys/dev/ata/ata-queue.c#25 integrate .. //depot/projects/hammer/sys/dev/ata/ata-raid.c#24 integrate .. //depot/projects/hammer/sys/dev/ata/ata-raid.h#14 integrate .. //depot/projects/hammer/sys/dev/ata/atapi-cam.c#21 integrate .. //depot/projects/hammer/sys/dev/ata/atapi-cd.c#28 integrate .. //depot/projects/hammer/sys/dev/ata/atapi-fd.c#15 integrate .. //depot/projects/hammer/sys/dev/ata/atapi-tape.c#18 integrate .. //depot/projects/hammer/sys/dev/bge/if_bge.c#44 integrate .. //depot/projects/hammer/sys/dev/bge/if_bgereg.h#23 integrate .. //depot/projects/hammer/sys/dev/ciss/ciss.c#33 integrate .. //depot/projects/hammer/sys/dev/ciss/cissio.h#4 integrate .. //depot/projects/hammer/sys/dev/ct/ct_isa.c#10 integrate .. //depot/projects/hammer/sys/dev/digi/CX.bios.h#2 integrate .. //depot/projects/hammer/sys/dev/digi/CX.fepos.h#2 integrate .. //depot/projects/hammer/sys/dev/digi/CX_PCI.bios.h#2 integrate .. //depot/projects/hammer/sys/dev/digi/CX_PCI.fepos.h#2 integrate .. //depot/projects/hammer/sys/dev/digi/EPCX.bios.h#2 integrate .. //depot/projects/hammer/sys/dev/digi/EPCX.fepos.h#2 integrate .. //depot/projects/hammer/sys/dev/digi/EPCX_PCI.bios.h#2 integrate .. //depot/projects/hammer/sys/dev/digi/EPCX_PCI.fepos.h#2 integrate .. //depot/projects/hammer/sys/dev/digi/Xe.bios.h#2 integrate .. //depot/projects/hammer/sys/dev/digi/Xe.fepos.h#2 integrate .. //depot/projects/hammer/sys/dev/digi/Xem.bios.h#2 integrate .. //depot/projects/hammer/sys/dev/digi/Xem.fepos.h#2 integrate .. //depot/projects/hammer/sys/dev/esp/esp_sbus.c#9 integrate .. //depot/projects/hammer/sys/dev/esp/ncr53c9x.c#8 integrate .. //depot/projects/hammer/sys/dev/esp/ncr53c9xreg.h#5 integrate .. //depot/projects/hammer/sys/dev/esp/ncr53c9xvar.h#6 integrate .. //depot/projects/hammer/sys/dev/hwpmc/hwpmc_amd.c#2 integrate .. //depot/projects/hammer/sys/dev/hwpmc/hwpmc_intel.c#2 integrate .. //depot/projects/hammer/sys/dev/hwpmc/hwpmc_mod.c#2 integrate .. //depot/projects/hammer/sys/dev/hwpmc/hwpmc_piv.c#2 integrate .. //depot/projects/hammer/sys/dev/hwpmc/hwpmc_ppro.c#2 integrate .. //depot/projects/hammer/sys/dev/ic/i8237.h#3 integrate .. //depot/projects/hammer/sys/dev/ic/i8253reg.h#1 branch .. //depot/projects/hammer/sys/dev/if_ndis/if_ndis.c#32 integrate .. //depot/projects/hammer/sys/dev/if_ndis/if_ndis_pccard.c#11 integrate .. //depot/projects/hammer/sys/dev/if_ndis/if_ndis_pci.c#13 integrate .. //depot/projects/hammer/sys/dev/if_ndis/if_ndisvar.h#15 integrate .. //depot/projects/hammer/sys/dev/iir/iir_ctrl.c#11 integrate .. //depot/projects/hammer/sys/dev/isp/isp_freebsd.h#9 integrate .. //depot/projects/hammer/sys/dev/isp/isp_inline.h#6 integrate .. //depot/projects/hammer/sys/dev/isp/isp_pci.c#15 integrate .. //depot/projects/hammer/sys/dev/isp/ispvar.h#12 integrate .. //depot/projects/hammer/sys/dev/iwi/if_iwi.c#2 integrate .. //depot/projects/hammer/sys/dev/iwi/if_iwivar.h#2 integrate .. //depot/projects/hammer/sys/dev/ixgb/if_ixgb.c#8 integrate .. //depot/projects/hammer/sys/dev/ixgb/if_ixgb.h#6 integrate .. //depot/projects/hammer/sys/dev/kbd/kbdtables.h#2 integrate .. //depot/projects/hammer/sys/dev/mc146818/mc146818.c#3 integrate .. //depot/projects/hammer/sys/dev/mc146818/mc146818var.h#3 integrate .. //depot/projects/hammer/sys/dev/mii/brgphy.c#17 integrate .. //depot/projects/hammer/sys/dev/mii/miidevs#10 integrate .. //depot/projects/hammer/sys/dev/mk48txx/mk48txx.c#5 integrate .. //depot/projects/hammer/sys/dev/mk48txx/mk48txxreg.h#4 integrate .. //depot/projects/hammer/sys/dev/mk48txx/mk48txxvar.h#2 integrate .. //depot/projects/hammer/sys/dev/nve/if_nve.c#4 integrate .. //depot/projects/hammer/sys/dev/ofw/openfirmio.h#6 integrate .. //depot/projects/hammer/sys/dev/ofw/openpromio.c#7 integrate .. //depot/projects/hammer/sys/dev/sound/sbus/cs4231.c#4 integrate .. //depot/projects/hammer/sys/dev/syscons/daemon/daemon_saver.c#3 integrate .. //depot/projects/hammer/sys/dev/syscons/snake/snake_saver.c#3 integrate .. //depot/projects/hammer/sys/dev/syscons/star/star_saver.c#2 integrate .. //depot/projects/hammer/sys/dev/syscons/syscons.c#29 integrate .. //depot/projects/hammer/sys/dev/syscons/syscons.h#6 integrate .. //depot/projects/hammer/sys/dev/uart/uart_tty.c#16 integrate .. //depot/projects/hammer/sys/dev/usb/ohci_pci.c#11 integrate .. //depot/projects/hammer/sys/dev/usb/uhub.c#16 integrate .. //depot/projects/hammer/sys/dev/usb/umass.c#31 integrate .. //depot/projects/hammer/sys/dev/usb/usbdi.h#11 integrate .. //depot/projects/hammer/sys/dev/usb/uvisor.c#15 integrate .. //depot/projects/hammer/sys/dev/vkbd/vkbd.c#6 integrate .. //depot/projects/hammer/sys/dev/wl/if_wl.c#15 integrate .. //depot/projects/hammer/sys/dev/wl/if_wl_i82586.h#1 branch .. //depot/projects/hammer/sys/fs/devfs/devfs_vnops.c#33 integrate .. //depot/projects/hammer/sys/fs/ntfs/ntfs_subr.c#11 integrate .. //depot/projects/hammer/sys/fs/nwfs/nwfs_subr.c#5 integrate .. //depot/projects/hammer/sys/fs/smbfs/smbfs_smb.c#9 integrate .. //depot/projects/hammer/sys/fs/smbfs/smbfs_subr.c#5 integrate .. //depot/projects/hammer/sys/fs/smbfs/smbfs_subr.h#5 integrate .. //depot/projects/hammer/sys/fs/udf/udf_vnops.c#27 integrate .. //depot/projects/hammer/sys/fs/unionfs/union_vnops.c#27 integrate .. //depot/projects/hammer/sys/geom/geom_event.c#22 integrate .. //depot/projects/hammer/sys/geom/geom_pc98_enc.c#3 integrate .. //depot/projects/hammer/sys/geom/mirror/g_mirror.c#22 integrate .. //depot/projects/hammer/sys/geom/raid3/g_raid3_ctl.c#8 integrate .. //depot/projects/hammer/sys/geom/stripe/g_stripe.c#11 integrate .. //depot/projects/hammer/sys/geom/vinum/geom_vinum_drive.c#12 integrate .. //depot/projects/hammer/sys/i386/i386/identcpu.c#20 integrate .. //depot/projects/hammer/sys/i386/i386/initcpu.c#11 integrate .. //depot/projects/hammer/sys/i386/i386/locore.s#14 integrate .. //depot/projects/hammer/sys/i386/i386/machdep.c#51 integrate .. //depot/projects/hammer/sys/i386/i386/mp_machdep.c#43 integrate .. //depot/projects/hammer/sys/i386/i386/nexus.c#17 integrate .. //depot/projects/hammer/sys/i386/i386/sys_machdep.c#18 integrate .. //depot/projects/hammer/sys/i386/i386/vm_machdep.c#44 integrate .. //depot/projects/hammer/sys/i386/include/cpufunc.h#12 integrate .. //depot/projects/hammer/sys/i386/include/md_var.h#14 integrate .. //depot/projects/hammer/sys/i386/include/npx.h#6 integrate .. //depot/projects/hammer/sys/i386/include/pmc_mdep.h#2 integrate .. //depot/projects/hammer/sys/i386/include/ppireg.h#1 branch .. //depot/projects/hammer/sys/i386/include/timerreg.h#1 branch .. //depot/projects/hammer/sys/i386/isa/atpic.c#14 integrate .. //depot/projects/hammer/sys/i386/isa/clock.c#25 integrate .. //depot/projects/hammer/sys/i386/isa/ic/if_wl_i82586.h#3 delete .. //depot/projects/hammer/sys/i386/isa/isa.h#6 integrate .. //depot/projects/hammer/sys/i386/isa/isa_dma.c#8 integrate .. //depot/projects/hammer/sys/i386/isa/lptreg.h#2 delete .. //depot/projects/hammer/sys/i386/isa/npx.c#25 integrate .. //depot/projects/hammer/sys/i386/isa/prof_machdep.c#6 integrate .. //depot/projects/hammer/sys/i386/isa/spkr.c#11 integrate .. //depot/projects/hammer/sys/i386/isa/timerreg.h#3 delete .. //depot/projects/hammer/sys/ia64/include/bus.h#16 integrate .. //depot/projects/hammer/sys/ia64/isa/isa_dma.c#6 integrate .. //depot/projects/hammer/sys/isa/isa_dmareg.h#1 branch .. //depot/projects/hammer/sys/isa/isareg.h#5 integrate .. //depot/projects/hammer/sys/isa/syscons_isa.c#10 integrate .. //depot/projects/hammer/sys/kern/imgact_aout.c#14 integrate .. //depot/projects/hammer/sys/kern/imgact_elf.c#28 integrate .. //depot/projects/hammer/sys/kern/kern_descrip.c#47 integrate .. //depot/projects/hammer/sys/kern/kern_exec.c#47 integrate .. //depot/projects/hammer/sys/kern/kern_exit.c#45 integrate .. //depot/projects/hammer/sys/kern/kern_switch.c#42 integrate .. //depot/projects/hammer/sys/kern/subr_bus.c#40 integrate .. //depot/projects/hammer/sys/kern/subr_devstat.c#12 integrate .. //depot/projects/hammer/sys/kern/subr_rman.c#15 integrate .. //depot/projects/hammer/sys/kern/subr_taskqueue.c#12 integrate .. //depot/projects/hammer/sys/kern/sysv_shm.c#21 integrate .. //depot/projects/hammer/sys/kern/uipc_mbuf.c#29 integrate .. //depot/projects/hammer/sys/kern/uipc_sem.c#12 integrate .. //depot/projects/hammer/sys/kern/uipc_syscalls.c#49 integrate .. //depot/projects/hammer/sys/kern/uipc_usrreq.c#33 integrate .. //depot/projects/hammer/sys/kern/vfs_cluster.c#27 integrate .. //depot/projects/hammer/sys/kern/vfs_default.c#39 integrate .. //depot/projects/hammer/sys/kern/vfs_export.c#12 integrate .. //depot/projects/hammer/sys/kern/vfs_mount.c#56 integrate .. //depot/projects/hammer/sys/kern/vfs_subr.c#83 integrate .. //depot/projects/hammer/sys/modules/Makefile#76 integrate .. //depot/projects/hammer/sys/modules/acpi/acpi/Makefile#8 integrate .. //depot/projects/hammer/sys/modules/esp/Makefile#4 integrate .. //depot/projects/hammer/sys/modules/fdc/Makefile#9 integrate .. //depot/projects/hammer/sys/modules/libalias/Makefile#1 branch .. //depot/projects/hammer/sys/modules/netgraph/Makefile#17 integrate .. //depot/projects/hammer/sys/modules/netgraph/Makefile.inc#3 integrate .. //depot/projects/hammer/sys/modules/netgraph/nat/Makefile#1 branch .. //depot/projects/hammer/sys/modules/pmc/Makefile#3 integrate .. //depot/projects/hammer/sys/modules/sem/Makefile#2 integrate .. //depot/projects/hammer/sys/modules/sio/Makefile#5 integrate .. //depot/projects/hammer/sys/net/bpf.c#31 integrate .. //depot/projects/hammer/sys/net/if_mib.c#4 integrate .. //depot/projects/hammer/sys/net/if_tap.c#23 integrate .. //depot/projects/hammer/sys/net/if_tun.c#25 integrate .. //depot/projects/hammer/sys/netgraph/bluetooth/drivers/ubt/ng_ubt.c#16 integrate .. //depot/projects/hammer/sys/netgraph/netflow/netflow.c#10 integrate .. //depot/projects/hammer/sys/netgraph/netflow/netflow.h#2 integrate .. //depot/projects/hammer/sys/netgraph/netflow/ng_netflow.c#5 integrate .. //depot/projects/hammer/sys/netgraph/netflow/ng_netflow.h#4 integrate .. //depot/projects/hammer/sys/netgraph/netgraph.h#17 integrate .. //depot/projects/hammer/sys/netgraph/ng_base.c#29 integrate .. //depot/projects/hammer/sys/netgraph/ng_device.c#18 integrate .. //depot/projects/hammer/sys/netgraph/ng_ksocket.c#18 integrate .. //depot/projects/hammer/sys/netgraph/ng_nat.c#1 branch .. //depot/projects/hammer/sys/netgraph/ng_nat.h#1 branch .. //depot/projects/hammer/sys/netgraph/ng_ppp.c#14 integrate .. //depot/projects/hammer/sys/netgraph/ng_socket.c#14 integrate .. //depot/projects/hammer/sys/netinet/ip_carp.c#6 integrate .. //depot/projects/hammer/sys/netinet/ip_divert.c#30 integrate .. //depot/projects/hammer/sys/netinet/ip_dummynet.c#31 integrate .. //depot/projects/hammer/sys/netinet/ip_fastfwd.c#20 integrate .. //depot/projects/hammer/sys/netinet/ip_fw.h#22 integrate .. //depot/projects/hammer/sys/netinet/ip_fw2.c#55 integrate .. //depot/projects/hammer/sys/netinet/ip_icmp.c#23 integrate .. //depot/projects/hammer/sys/netinet/ip_icmp.h#8 integrate .. //depot/projects/hammer/sys/netinet/ip_input.c#50 integrate .. //depot/projects/hammer/sys/netinet/libalias/Makefile#2 delete .. //depot/projects/hammer/sys/netinet/libalias/alias.c#2 integrate .. //depot/projects/hammer/sys/netinet/libalias/alias.h#2 integrate .. //depot/projects/hammer/sys/netinet/libalias/alias_cuseeme.c#2 integrate .. //depot/projects/hammer/sys/netinet/libalias/alias_db.c#2 integrate .. //depot/projects/hammer/sys/netinet/libalias/alias_ftp.c#2 integrate .. //depot/projects/hammer/sys/netinet/libalias/alias_irc.c#2 integrate .. //depot/projects/hammer/sys/netinet/libalias/alias_local.h#2 integrate .. //depot/projects/hammer/sys/netinet/libalias/alias_nbt.c#2 integrate .. //depot/projects/hammer/sys/netinet/libalias/alias_old.c#2 integrate .. //depot/projects/hammer/sys/netinet/libalias/alias_pptp.c#2 integrate .. //depot/projects/hammer/sys/netinet/libalias/alias_proxy.c#2 integrate .. //depot/projects/hammer/sys/netinet/libalias/alias_skinny.c#2 integrate .. //depot/projects/hammer/sys/netinet/libalias/alias_smedia.c#2 integrate .. //depot/projects/hammer/sys/netinet/libalias/alias_util.c#2 integrate .. //depot/projects/hammer/sys/netinet/raw_ip.c#33 integrate .. //depot/projects/hammer/sys/netinet/tcp_input.c#48 integrate .. //depot/projects/hammer/sys/netinet/tcp_output.c#30 integrate .. //depot/projects/hammer/sys/netinet/tcp_sack.c#15 integrate .. //depot/projects/hammer/sys/netinet/tcp_subr.c#43 integrate .. //depot/projects/hammer/sys/netinet/tcp_usrreq.c#29 integrate .. //depot/projects/hammer/sys/netinet/tcp_var.h#28 integrate .. //depot/projects/hammer/sys/netinet/udp_usrreq.c#31 integrate .. //depot/projects/hammer/sys/netinet6/icmp6.c#20 integrate .. //depot/projects/hammer/sys/netinet6/in6_src.c#12 integrate .. //depot/projects/hammer/sys/netinet6/ip6_fw.c#12 integrate .. //depot/projects/hammer/sys/netinet6/ip6_output.c#30 integrate .. //depot/projects/hammer/sys/netsmb/smb_conn.c#9 integrate .. //depot/projects/hammer/sys/nfsclient/nfs_socket.c#26 integrate .. //depot/projects/hammer/sys/nfsclient/nfs_vfsops.c#39 integrate .. //depot/projects/hammer/sys/pc98/cbus/30line.h#1 branch .. //depot/projects/hammer/sys/pc98/cbus/cbus.h#1 branch .. //depot/projects/hammer/sys/pc98/cbus/cbus_dma.c#1 branch .. //depot/projects/hammer/sys/pc98/cbus/cbus_dmareg.h#1 branch .. //depot/projects/hammer/sys/pc98/cbus/clock.c#1 branch .. //depot/projects/hammer/sys/pc98/cbus/fdc.c#1 branch .. //depot/projects/hammer/sys/pc98/cbus/fdc_cbus.c#1 branch .. //depot/projects/hammer/sys/pc98/cbus/fdcreg.h#1 branch .. //depot/projects/hammer/sys/pc98/cbus/fdcvar.h#1 branch .. //depot/projects/hammer/sys/pc98/cbus/gdc.c#1 branch .. //depot/projects/hammer/sys/pc98/cbus/nmi.c#1 branch .. //depot/projects/hammer/sys/pc98/cbus/olpt.c#1 branch .. //depot/projects/hammer/sys/pc98/cbus/olptreg.h#1 branch .. //depot/projects/hammer/sys/pc98/cbus/pckbd.c#1 branch .. //depot/projects/hammer/sys/pc98/cbus/pckbdtables.h#1 branch .. //depot/projects/hammer/sys/pc98/cbus/pmc.c#1 branch .. //depot/projects/hammer/sys/pc98/cbus/ppc.c#1 branch .. //depot/projects/hammer/sys/pc98/cbus/ppcreg.h#1 branch .. //depot/projects/hammer/sys/pc98/cbus/sc_machdep.h#1 branch .. //depot/projects/hammer/sys/pc98/cbus/scgdcrndr.c#1 branch .. //depot/projects/hammer/sys/pc98/cbus/scterm-sck.c#1 branch .. //depot/projects/hammer/sys/pc98/cbus/scvtb.c#1 branch .. //depot/projects/hammer/sys/pc98/cbus/sio.c#1 branch .. //depot/projects/hammer/sys/pc98/cbus/sio_cbus.c#1 branch .. //depot/projects/hammer/sys/pc98/cbus/syscons_cbus.c#1 branch .. //depot/projects/hammer/sys/pc98/conf/NOTES#43 integrate .. //depot/projects/hammer/sys/pc98/i386/busio.s#5 delete .. //depot/projects/hammer/sys/pc98/i386/busiosubr.c#4 delete .. //depot/projects/hammer/sys/pc98/i386/machdep.c#44 delete .. //depot/projects/hammer/sys/pc98/include/npx.h#2 integrate .. //depot/projects/hammer/sys/pc98/include/ppireg.h#1 branch .. //depot/projects/hammer/sys/pc98/include/timerreg.h#1 branch .. //depot/projects/hammer/sys/pc98/pc98/30line.h#3 delete .. //depot/projects/hammer/sys/pc98/pc98/busio.s#1 branch .. //depot/projects/hammer/sys/pc98/pc98/busiosubr.c#1 branch .. //depot/projects/hammer/sys/pc98/pc98/clock.c#20 delete .. //depot/projects/hammer/sys/pc98/pc98/fd.c#27 delete .. //depot/projects/hammer/sys/pc98/pc98/fdc_cbus.c#4 delete .. //depot/projects/hammer/sys/pc98/pc98/fdcvar.h#3 delete .. //depot/projects/hammer/sys/pc98/pc98/fdreg.h#3 delete .. //depot/projects/hammer/sys/pc98/pc98/isa_dma.c#7 delete .. //depot/projects/hammer/sys/pc98/pc98/machdep.c#1 branch .. //depot/projects/hammer/sys/pc98/pc98/nmi.c#3 delete .. //depot/projects/hammer/sys/pc98/pc98/olpt.c#10 delete .. //depot/projects/hammer/sys/pc98/pc98/pc98.h#5 delete .. //depot/projects/hammer/sys/pc98/pc98/pc98_machdep.c#4 integrate .. //depot/projects/hammer/sys/pc98/pc98/pc98gdc.c#13 delete .. //depot/projects/hammer/sys/pc98/pc98/pc98kbd.c#7 delete .. //depot/projects/hammer/sys/pc98/pc98/pmc.c#3 delete .. //depot/projects/hammer/sys/pc98/pc98/ppc.c#8 delete .. //depot/projects/hammer/sys/pc98/pc98/ppcreg.h#2 delete .. //depot/projects/hammer/sys/pc98/pc98/sc_machdep.h#2 delete .. //depot/projects/hammer/sys/pc98/pc98/scgdcrndr.c#3 delete .. //depot/projects/hammer/sys/pc98/pc98/scterm-sck.c#4 delete .. //depot/projects/hammer/sys/pc98/pc98/scvtbpc98.c#4 delete .. //depot/projects/hammer/sys/pc98/pc98/sio.c#36 delete .. //depot/projects/hammer/sys/pc98/pc98/sio_cbus.c#7 delete .. //depot/projects/hammer/sys/pc98/pc98/syscons_pc98.c#8 delete .. //depot/projects/hammer/sys/pccard/pccard_nbk.c#6 integrate .. //depot/projects/hammer/sys/posix4/ksem.h#1 branch .. //depot/projects/hammer/sys/powerpc/conf/GENERIC#22 integrate .. //depot/projects/hammer/sys/powerpc/powermac/ata_kauai.c#10 integrate .. //depot/projects/hammer/sys/powerpc/powermac/ata_macio.c#14 integrate .. //depot/projects/hammer/sys/security/mac/mac_posix_sem.c#1 branch .. //depot/projects/hammer/sys/security/mac_biba/mac_biba.c#32 integrate .. //depot/projects/hammer/sys/security/mac_mls/mac_mls.c#31 integrate .. //depot/projects/hammer/sys/security/mac_stub/mac_stub.c#14 integrate .. //depot/projects/hammer/sys/security/mac_test/mac_test.c#32 integrate .. //depot/projects/hammer/sys/sparc64/central/central.c#6 integrate .. //depot/projects/hammer/sys/sparc64/ebus/ebus.c#15 integrate .. //depot/projects/hammer/sys/sparc64/fhc/fhc_central.c#6 integrate .. //depot/projects/hammer/sys/sparc64/fhc/fhc_nexus.c#6 integrate .. //depot/projects/hammer/sys/sparc64/include/eeprom.h#6 delete .. //depot/projects/hammer/sys/sparc64/isa/isa.c#12 integrate .. //depot/projects/hammer/sys/sparc64/sbus/dma_sbus.c#1 branch .. //depot/projects/hammer/sys/sparc64/sbus/lsi64854.c#4 integrate .. //depot/projects/hammer/sys/sparc64/sbus/lsi64854var.h#3 integrate .. //depot/projects/hammer/sys/sparc64/sbus/sbus.c#18 integrate .. //depot/projects/hammer/sys/sparc64/sbus/sbusvar.h#6 integrate .. //depot/projects/hammer/sys/sparc64/sparc64/eeprom.c#7 integrate .. //depot/projects/hammer/sys/sparc64/sparc64/eeprom_ebus.c#9 delete .. //depot/projects/hammer/sys/sparc64/sparc64/eeprom_sbus.c#9 delete .. //depot/projects/hammer/sys/sparc64/sparc64/rtc.c#3 integrate .. //depot/projects/hammer/sys/sys/acl.h#5 integrate .. //depot/projects/hammer/sys/sys/ata.h#11 integrate .. //depot/projects/hammer/sys/sys/consio.h#3 integrate .. //depot/projects/hammer/sys/sys/diskpc98.h#7 integrate .. //depot/projects/hammer/sys/sys/imgact_aout.h#6 integrate .. //depot/projects/hammer/sys/sys/mac.h#24 integrate .. //depot/projects/hammer/sys/sys/mac_policy.h#26 integrate .. //depot/projects/hammer/sys/sys/mbuf.h#40 integrate .. //depot/projects/hammer/sys/sys/param.h#59 integrate .. //depot/projects/hammer/sys/sys/pmc.h#2 integrate .. //depot/projects/hammer/sys/sys/taskqueue.h#8 integrate .. //depot/projects/hammer/sys/ufs/ffs/ffs_softdep.c#28 integrate .. //depot/projects/hammer/sys/ufs/ufs/ufs_vnops.c#35 integrate .. //depot/projects/hammer/sys/vm/swap_pager.c#39 integrate .. //depot/projects/hammer/sys/vm/vm_fault.c#30 integrate .. //depot/projects/hammer/sys/vm/vm_map.c#48 integrate .. //depot/projects/hammer/sys/vm/vm_meter.c#18 integrate .. //depot/projects/hammer/sys/vm/vm_object.c#54 integrate .. //depot/projects/hammer/sys/vm/vm_object.h#23 integrate .. //depot/projects/hammer/sys/vm/vm_pager.c#19 integrate .. //depot/projects/hammer/sys/vm/vm_pager.h#10 integrate .. //depot/projects/hammer/sys/vm/vnode_pager.c#34 integrate .. //depot/projects/hammer/tools/build/Makefile#7 integrate .. //depot/projects/hammer/tools/regression/lib/libc/resolv/Makefile#1 branch .. //depot/projects/hammer/tools/regression/lib/libc/resolv/mach#1 branch .. //depot/projects/hammer/tools/regression/lib/libc/resolv/resolv.c#1 branch .. //depot/projects/hammer/tools/regression/lib/libc/resolv/resolv.t#1 branch .. //depot/projects/hammer/tools/regression/net80211/ccmp/test_ccmp.c#2 integrate .. //depot/projects/hammer/tools/regression/net80211/tkip/test_tkip.c#2 integrate .. //depot/projects/hammer/tools/regression/net80211/wep/test_wep.c#2 integrate .. //depot/projects/hammer/tools/regression/netinet/tcpconnect/tcpconnect.c#4 integrate .. //depot/projects/hammer/tools/regression/sockets/listenclose/listenclose.c#2 integrate .. //depot/projects/hammer/tools/regression/usr.bin/file2c/regress.1.out#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/file2c/regress.2.out#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/file2c/regress.3.out#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/file2c/regress.4.out#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/file2c/regress.5.out#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/file2c/regress.6.out#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/file2c/regress.7.out#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/file2c/regress.8.out#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/file2c/regress.9.out#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/file2c/regress.out#2 delete .. //depot/projects/hammer/tools/regression/usr.bin/file2c/regress.sh#3 integrate .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/path/Makefile#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/path/expected.status#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/path/expected.stderr#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/path/expected.stdout#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/path/sh.sh#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/path/test.t#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/path_select/Makefile#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/path_select/expected.status#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/path_select/expected.stderr#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/path_select/expected.stdout#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/path_select/sh.sh#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/path_select/test.t#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/select/Makefile#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/select/expected.status#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/select/expected.stderr#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/select/expected.stdout#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/select/test.t#1 branch .. //depot/projects/hammer/tools/tools/nanobsd/Customize/files#1 branch .. //depot/projects/hammer/tools/tools/nanobsd/Customize/pkgs#1 branch .. //depot/projects/hammer/tools/tools/nanobsd/Files/root/change_password#1 branch .. //depot/projects/hammer/tools/tools/nanobsd/Files/root/save_sshkeys#1 branch .. //depot/projects/hammer/tools/tools/nanobsd/Files/root/updatep1#1 branch .. //depot/projects/hammer/tools/tools/nanobsd/Files/root/updatep2#1 branch .. //depot/projects/hammer/tools/tools/nanobsd/Makefile#10 integrate .. //depot/projects/hammer/tools/tools/nanobsd/i386.diskimage#12 integrate .. //depot/projects/hammer/tools/tools/nanobsd/make.conf#14 integrate .. //depot/projects/hammer/usr.bin/Makefile#42 integrate .. //depot/projects/hammer/usr.bin/awk/Makefile#4 integrate .. //depot/projects/hammer/usr.bin/awk/b.c.diff#1 branch .. //depot/projects/hammer/usr.bin/awk/main.c.diff#1 branch .. //depot/projects/hammer/usr.bin/awk/run.c.diff#1 branch .. //depot/projects/hammer/usr.bin/brandelf/brandelf.c#2 integrate .. //depot/projects/hammer/usr.bin/compress/zopen.c#2 integrate .. //depot/projects/hammer/usr.bin/file2c/Makefile#2 integrate .. //depot/projects/hammer/usr.bin/file2c/file2c.1#2 integrate .. //depot/projects/hammer/usr.bin/file2c/file2c.c#2 integrate .. //depot/projects/hammer/usr.bin/less/Makefile#3 integrate .. //depot/projects/hammer/usr.bin/less/lesspipe.sh#2 integrate .. //depot/projects/hammer/usr.bin/less/zless.sh#1 branch .. //depot/projects/hammer/usr.bin/make/GNode.h#3 integrate .. //depot/projects/hammer/usr.bin/make/Makefile#18 integrate .. //depot/projects/hammer/usr.bin/make/arch.c#18 integrate .. //depot/projects/hammer/usr.bin/make/arch.h#4 integrate .. //depot/projects/hammer/usr.bin/make/buf.c#11 integrate .. //depot/projects/hammer/usr.bin/make/buf.h#9 integrate .. //depot/projects/hammer/usr.bin/make/compat.c#19 delete .. //depot/projects/hammer/usr.bin/make/compat.h#3 delete .. //depot/projects/hammer/usr.bin/make/cond.c#20 integrate .. //depot/projects/hammer/usr.bin/make/for.c#18 integrate .. //depot/projects/hammer/usr.bin/make/for.h#3 integrate .. //depot/projects/hammer/usr.bin/make/globals.h#5 integrate .. //depot/projects/hammer/usr.bin/make/hash.c#7 integrate .. //depot/projects/hammer/usr.bin/make/hash.h#6 integrate .. //depot/projects/hammer/usr.bin/make/hash_tables.c#2 integrate .. //depot/projects/hammer/usr.bin/make/job.c#26 integrate .. //depot/projects/hammer/usr.bin/make/job.h#14 integrate .. //depot/projects/hammer/usr.bin/make/lst.c#5 integrate .. //depot/projects/hammer/usr.bin/make/lst.h#14 integrate .. //depot/projects/hammer/usr.bin/make/main.c#34 integrate .. //depot/projects/hammer/usr.bin/make/make.c#14 integrate .. //depot/projects/hammer/usr.bin/make/make.h#9 integrate .. //depot/projects/hammer/usr.bin/make/nonints.h#13 delete .. //depot/projects/hammer/usr.bin/make/parse.c#30 integrate .. //depot/projects/hammer/usr.bin/make/parse.h#4 integrate .. //depot/projects/hammer/usr.bin/make/sprite.h#4 delete .. //depot/projects/hammer/usr.bin/make/str.c#14 integrate .. //depot/projects/hammer/usr.bin/make/str.h#3 integrate .. //depot/projects/hammer/usr.bin/make/suff.c#18 integrate .. //depot/projects/hammer/usr.bin/make/targ.c#15 integrate .. //depot/projects/hammer/usr.bin/make/util.c#6 integrate .. //depot/projects/hammer/usr.bin/make/util.h#5 integrate .. //depot/projects/hammer/usr.bin/make/var.c#28 integrate .. //depot/projects/hammer/usr.bin/make/var.h#9 integrate .. //depot/projects/hammer/usr.bin/make/var_modify.c#10 delete .. //depot/projects/hammer/usr.bin/mklocale/Makefile#3 integrate .. //depot/projects/hammer/usr.bin/mklocale/yacc.y#12 integrate .. //depot/projects/hammer/usr.bin/mkuzip/Makefile#2 integrate .. //depot/projects/hammer/usr.bin/mkuzip/mkuzip.c#2 integrate .. //depot/projects/hammer/usr.bin/netstat/route.c#9 integrate .. //depot/projects/hammer/usr.bin/rsh/rsh.c#6 integrate .. //depot/projects/hammer/usr.bin/sed/main.c#7 integrate .. //depot/projects/hammer/usr.bin/sed/sed.1#12 integrate .. //depot/projects/hammer/usr.bin/smbutil/Makefile#2 integrate .. //depot/projects/hammer/usr.bin/systat/pigs.c#4 integrate .. //depot/projects/hammer/usr.bin/tar/Makefile#14 integrate .. //depot/projects/hammer/usr.bin/tar/tree.c#2 integrate .. //depot/projects/hammer/usr.bin/tar/tree.h#2 integrate .. //depot/projects/hammer/usr.bin/tar/write.c#16 integrate .. //depot/projects/hammer/usr.bin/top/machine.c#14 integrate .. //depot/projects/hammer/usr.bin/what/what.1#5 integrate .. //depot/projects/hammer/usr.bin/what/what.c#3 integrate .. //depot/projects/hammer/usr.sbin/IPXrouted/main.c#3 integrate .. //depot/projects/hammer/usr.sbin/authpf/Makefile#2 integrate .. //depot/projects/hammer/usr.sbin/bluetooth/bthidd/parser.y#4 integrate .. //depot/projects/hammer/usr.sbin/bluetooth/bthidd/server.c#3 integrate .. //depot/projects/hammer/usr.sbin/burncd/burncd.8#12 integrate .. //depot/projects/hammer/usr.sbin/burncd/burncd.c#10 integrate .. //depot/projects/hammer/usr.sbin/faithd/ftp.c#4 integrate .. //depot/projects/hammer/usr.sbin/inetd/inetd.c#13 integrate .. //depot/projects/hammer/usr.sbin/jail/jail.8#20 integrate .. //depot/projects/hammer/usr.sbin/lpr/common_source/net.c#3 integrate .. //depot/projects/hammer/usr.sbin/lpr/lpd/lpd.c#5 integrate .. //depot/projects/hammer/usr.sbin/mount_portalfs/activate.c#4 integrate .. //depot/projects/hammer/usr.sbin/mount_smbfs/Makefile#5 integrate .. //depot/projects/hammer/usr.sbin/mountd/mountd.c#14 integrate .. //depot/projects/hammer/usr.sbin/ndiscvt/inf.c#7 integrate .. //depot/projects/hammer/usr.sbin/ndiscvt/windrv_stub.c#2 integrate .. //depot/projects/hammer/usr.sbin/pmccontrol/pmccontrol.c#2 integrate .. //depot/projects/hammer/usr.sbin/pmcstat/pmcstat.c#2 integrate .. //depot/projects/hammer/usr.sbin/ppp/ncpaddr.c#9 integrate .. //depot/projects/hammer/usr.sbin/ppp/ppp.8.m4#19 integrate .. //depot/projects/hammer/usr.sbin/rip6query/rip6query.c#2 integrate .. //depot/projects/hammer/usr.sbin/rpc.yppasswdd/yppasswdd_main.c#5 integrate .. //depot/projects/hammer/usr.sbin/sysinstall/dist.c#20 integrate .. //depot/projects/hammer/usr.sbin/sysinstall/menus.c#33 integrate .. //depot/projects/hammer/usr.sbin/syslogd/syslogd.c#22 integrate .. //depot/projects/hammer/usr.sbin/vidcontrol/vidcontrol.c#5 integrate .. //depot/projects/hammer/usr.sbin/ypserv/Makefile.yp#4 integrate .. //depot/projects/hammer/usr.sbin/ypserv/yp_dnslookup.c#5 integrate .. //depot/projects/hammer/usr.sbin/ypserv/yp_extern.h#2 integrate .. //depot/projects/hammer/usr.sbin/ypserv/yp_server.c#3 integrate Differences ... ==== //depot/projects/hammer/Makefile.inc1#91 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile.inc1,v 1.493 2005/04/30 16:09:23 imp Exp $ +# $FreeBSD: src/Makefile.inc1,v 1.494 2005/05/01 17:36:09 imp Exp $ # # Make command line options: # -DNO_DYNAMICROOT do not link /bin and /sbin dynamically @@ -337,7 +337,6 @@ @echo "--------------------------------------------------------------" @echo ">>> stage 2.1: cleaning up the object tree" @echo "--------------------------------------------------------------" - @rm -rf ${.OBJDIR}/sbin/ipf ${_+_}cd ${.CURDIR}; ${WMAKE} ${CLEANDIR:S/^/par-/} .endif _obj: ==== //depot/projects/hammer/UPDATING#76 (text+ko) ==== @@ -21,6 +21,11 @@ developers choose to disable these features on build machines to maximize performance. +20050503: + The packet filter (pf) code has been updated to OpenBSD 3.7 + Please note the changed anchor syntax and the fact that + authpf(8) now needs a mounted fdescfs(5) to function. + 20050415: The NO_MIXED_MODE kernel option has been removed from the i386 amd64 platforms as its use has been superceded by the new local @@ -193,12 +198,10 @@ # is listed here if you are upgrading from a really old current. - [7] make buildworld make kernel KERNCONF=YOUR_KERNEL_HERE [1] [3] - src/etc/rc.d/preseedrandom [10] mergemaster -p [5] make installworld mergemaster [4] @@ -331,4 +334,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.401 2005/04/18 14:33:18 scottl Exp $ +$FreeBSD: src/UPDATING,v 1.404 2005/05/16 05:37:32 imp Exp $ ==== //depot/projects/hammer/bin/chflags/chflags.1#9 (text+ko) ==== @@ -30,9 +30,9 @@ .\" SUCH DAMAGE. .\" .\" @(#)chflags.1 8.4 (Berkeley) 5/2/95 -.\" $FreeBSD: src/bin/chflags/chflags.1,v 1.23 2005/02/25 00:40:46 trhodes Exp $ +.\" $FreeBSD: src/bin/chflags/chflags.1,v 1.24 2005/05/14 23:23:10 dd Exp $ .\" -.Dd February 24, 2005 +.Dd May 14, 2005 .Dt CHFLAGS 1 .Os .Sh NAME @@ -40,6 +40,7 @@ .Nd change file flags .Sh SYNOPSIS .Nm +.Op Fl h .Oo .Fl R .Op Fl H | Fl L | Fl P @@ -61,6 +62,11 @@ .Fl R option is specified, symbolic links on the command line are followed. (Symbolic links encountered in the tree traversal are not followed.) +.It Fl h +If the +.Ar file +is a symbolic link, +change the mode of the link itself rather than the file to which it points. .It Fl L If the .Fl R @@ -114,11 +120,12 @@ clear the nodump flag (owner or super-user only) .El .Pp -Symbolic links do not have flags, so unless the -.Fl H +Unless the +.Fl H , +.Fl L , or -.Fl L -option is set, +.Fl h +options are given, .Nm on a symbolic link always succeeds and has no effect. The ==== //depot/projects/hammer/bin/chflags/chflags.c#7 (text+ko) ==== @@ -40,7 +40,7 @@ #endif #include -__FBSDID("$FreeBSD: src/bin/chflags/chflags.c,v 1.22 2005/01/10 08:39:20 imp Exp $"); +__FBSDID("$FreeBSD: src/bin/chflags/chflags.c,v 1.23 2005/05/14 23:23:10 dd Exp $"); #include #include @@ -62,11 +62,12 @@ FTSENT *p; u_long clear, set; long val; - int Hflag, Lflag, Rflag, ch, fts_options, oct, rval; + int Hflag, Lflag, Rflag, hflag, ch, fts_options, oct, rval; char *flags, *ep; + int (*change_flags)(const char *, unsigned long); - Hflag = Lflag = Rflag = 0; - while ((ch = getopt(argc, argv, "HLPR")) != -1) + Hflag = Lflag = Rflag = hflag = 0; + while ((ch = getopt(argc, argv, "HLPRh")) != -1) switch (ch) { case 'H': Hflag = 1; @@ -82,6 +83,9 @@ case 'R': Rflag = 1; break; + case 'h': + hflag = 1; + break; case '?': default: usage(); @@ -94,6 +98,9 @@ if (Rflag) { fts_options = FTS_PHYSICAL; + if (hflag) + errx(1, "the -R and -h options " + "may not be specified together"); if (Hflag) fts_options |= FTS_COMFOLLOW; if (Lflag) { @@ -103,6 +110,12 @@ } else fts_options = FTS_LOGICAL; + /* XXX: Why don't chflags and lchflags have compatible prototypes? */ + if (hflag) + change_flags = (int (*)(const char *, unsigned long))lchflags; + else + change_flags = chflags; + flags = *argv; if (*flags >= '0' && *flags <= '7') { errno = 0; @@ -147,17 +160,20 @@ * don't point to anything and ones that we found * doing a physical walk. */ - continue; + if (!hflag) + continue; + /* FALLTHROUGH */ default: break; } if (oct) { - if (!chflags(p->fts_accpath, set)) >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri May 20 01:32:24 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 390D316A4D5; Fri, 20 May 2005 01:32:23 +0000 (GMT) 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 69B9316A4CE for ; Fri, 20 May 2005 01:32:21 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 01A9243DA1 for ; Fri, 20 May 2005 01:32:21 +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 j4K1WK58090094 for ; Fri, 20 May 2005 01:32:20 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4K1WKe9090091 for perforce@freebsd.org; Fri, 20 May 2005 01:32:20 GMT (envelope-from peter@freebsd.org) Date: Fri, 20 May 2005 01:32:20 GMT Message-Id: <200505200132.j4K1WKe9090091@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 Subject: PERFORCE change 77203 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: Fri, 20 May 2005 01:32:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=77203 Change 77203 by peter@peter_daintree on 2005/05/20 01:32:12 Integ -b i386_hammer (metadata sync, nop) Affected files ... .. //depot/projects/hammer/sys/amd64/amd64/fpu.c#28 integrate .. //depot/projects/hammer/sys/amd64/amd64/identcpu.c#39 integrate .. //depot/projects/hammer/sys/amd64/amd64/initcpu.c#11 integrate .. //depot/projects/hammer/sys/amd64/amd64/machdep.c#125 integrate .. //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#93 integrate .. //depot/projects/hammer/sys/amd64/amd64/nexus.c#35 integrate .. //depot/projects/hammer/sys/amd64/amd64/sys_machdep.c#22 integrate .. //depot/projects/hammer/sys/amd64/amd64/vm_machdep.c#72 integrate .. //depot/projects/hammer/sys/amd64/include/cpufunc.h#34 integrate .. //depot/projects/hammer/sys/amd64/include/fpu.h#7 integrate .. //depot/projects/hammer/sys/amd64/include/md_var.h#31 integrate .. //depot/projects/hammer/sys/amd64/isa/atpic.c#48 integrate .. //depot/projects/hammer/sys/amd64/isa/clock.c#41 integrate .. //depot/projects/hammer/sys/amd64/isa/isa.h#13 integrate .. //depot/projects/hammer/sys/amd64/isa/isa_dma.c#19 integrate Differences ... ==== //depot/projects/hammer/sys/amd64/amd64/fpu.c#28 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/amd64/identcpu.c#39 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/amd64/initcpu.c#11 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/amd64/machdep.c#125 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#93 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/amd64/nexus.c#35 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/amd64/sys_machdep.c#22 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/amd64/vm_machdep.c#72 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/include/cpufunc.h#34 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/include/fpu.h#7 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/include/md_var.h#31 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/isa/atpic.c#48 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/isa/clock.c#41 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/isa/isa.h#13 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/isa/isa_dma.c#19 (text+ko) ==== From owner-p4-projects@FreeBSD.ORG Fri May 20 02:21:22 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7E88F16A4D0; Fri, 20 May 2005 02:21:21 +0000 (GMT) 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 17E1516A4CE for ; Fri, 20 May 2005 02:21:21 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CCD2043DA9 for ; Fri, 20 May 2005 02:21:20 +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 j4K2LKvd095394 for ; Fri, 20 May 2005 02:21:20 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4K2LKgc095391 for perforce@freebsd.org; Fri, 20 May 2005 02:21:20 GMT (envelope-from sam@freebsd.org) Date: Fri, 20 May 2005 02:21:20 GMT Message-Id: <200505200221.j4K2LKgc095391@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 77205 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: Fri, 20 May 2005 02:21:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=77205 Change 77205 by sam@sam_ebb on 2005/05/20 02:20:47 o only set iv_set_tim for ap and ibss vap's o check iv_set_tim consistently before invoking it o eliminate some checks of iv_opmode that are redudant now that iv_set_tim is set based on operating mode o change ieee80211_sta_pwrsave to not use ieee80211_node_pwrsave; mixing ap ps and sta ps operation is the wrong thing as sta mode requires that we synchronize with the ap before flushing any pending frames on the ps queue Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_input.c#13 edit .. //depot/projects/vap/sys/net80211/ieee80211_node.c#9 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_input.c#13 (text+ko) ==== @@ -2931,8 +2931,7 @@ struct mbuf *m; if (enable) { - if (vap->iv_opmode != IEEE80211_M_STA && - (ni->ni_flags & IEEE80211_NODE_PWR_MGT) == 0) + 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, @@ -2940,8 +2939,7 @@ return; } - if (vap->iv_opmode != IEEE80211_M_STA && - (ni->ni_flags & IEEE80211_NODE_PWR_MGT)) + 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, @@ -2952,7 +2950,7 @@ * Flush queued unicast frames. */ if (IEEE80211_NODE_SAVEQ_QLEN(ni) == 0) { - if (vap->iv_opmode != IEEE80211_M_STA) + if (vap->iv_set_tim != NULL) vap->iv_set_tim(ni, 0); /* just in case */ return; } @@ -2988,8 +2986,21 @@ { struct ieee80211_node *ni = vap->iv_bss; - ieee80211_node_pwrsave(ni, enable); - ieee80211_send_nulldata(ieee80211_ref_node(ni)); + 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; + ieee80211_send_nulldata(ieee80211_ref_node(ni)); + } + } else { + if (ni->ni_flags & IEEE80211_NODE_PWR_MGT) { + 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... */ + } + } } /* @@ -3036,7 +3047,8 @@ "%s", "recv ps-poll, but queue empty"); ieee80211_send_nulldata(ieee80211_ref_node(ni)); vap->iv_stats.is_ps_qempty++; /* XXX node stat */ - vap->iv_set_tim(ni, 0); /* just in case */ + if (vap->iv_set_tim != NULL) + vap->iv_set_tim(ni, 0); /* just in case */ return; } /* @@ -3052,7 +3064,8 @@ } else { IEEE80211_NOTE(vap, IEEE80211_MSG_POWER, ni, "%s", "recv ps-poll, send packet, queue empty"); - vap->iv_set_tim(ni, 0); + if (vap->iv_set_tim != NULL) + vap->iv_set_tim(ni, 0); } m->m_flags |= M_PWR_SAV; /* bypass PS handling */ IF_ENQUEUE(&vap->iv_if.if_snd, m); ==== //depot/projects/vap/sys/net80211/ieee80211_node.c#9 (text+ko) ==== @@ -118,7 +118,11 @@ vap->iv_inact_run = IEEE80211_INACT_RUN; vap->iv_inact_probe = IEEE80211_INACT_PROBE; - vap->iv_set_tim = ieee80211_set_tim; /* NB: driver should override */ + 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 @@ -1207,7 +1211,8 @@ * Age frames on the power save queue. */ if (node_saveq_age(ni) != 0 && - IEEE80211_NODE_SAVEQ_QLEN(ni) == 0) + IEEE80211_NODE_SAVEQ_QLEN(ni) == 0 && + vap->iv_set_tim != NULL) vap->iv_set_tim(ni, 0); /* * Probe the station before time it out. We From owner-p4-projects@FreeBSD.ORG Fri May 20 02:23:25 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6310C16A4CF; Fri, 20 May 2005 02:23:24 +0000 (GMT) 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 248BF16A4D0 for ; Fri, 20 May 2005 02:23:24 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BF86443DA6 for ; Fri, 20 May 2005 02:23: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 j4K2NNAk095524 for ; Fri, 20 May 2005 02:23:23 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4K2NNcs095521 for perforce@freebsd.org; Fri, 20 May 2005 02:23:23 GMT (envelope-from sam@freebsd.org) Date: Fri, 20 May 2005 02:23:23 GMT Message-Id: <200505200223.j4K2NNcs095521@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 77206 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: Fri, 20 May 2005 02:23:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=77206 Change 77206 by sam@sam_ebb on 2005/05/20 02:22:30 o move the bg scan check inside the loop in ieee80211_start just to be paranoid o mark ic_lastdata for each frame, not just on return from ieee80211_start to close any race against kicking off a bg scan o cleanup some debug msgs o check iv_set_tim against NULL before using it Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_output.c#13 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_output.c#13 (text+ko) ==== @@ -217,9 +217,6 @@ /* NB: parent must be up and running */ if ((parent->if_flags & (IFF_RUNNING|IFF_UP)) != (IFF_RUNNING|IFF_UP)) return; - if (vap->iv_state == IEEE80211_S_RUN && - (ic->ic_flags & IEEE80211_F_SCAN)) /* cancel bg scan */ - ieee80211_cancel_scan(vap); for (;;) { /* * No data frames go out unless we're running. @@ -237,6 +234,8 @@ IFQ_DRV_DEQUEUE(&ifp->if_snd, m); /* XXX: LOCK */ if (m == NULL) break; + if (ic->ic_flags & IEEE80211_F_SCAN) /* cancel bg scan */ + ieee80211_cancel_scan(vap); /* * Find the node for the destination so we can do * things like power save and fast frames aggregation. @@ -292,8 +291,9 @@ ieee80211_free_node(ni); } else ifp->if_opackets++; + + ic->ic_lastdata = ticks; } - ic->ic_lastdata = ticks; } /* @@ -2249,7 +2249,7 @@ _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)\n", + "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)) @@ -2272,8 +2272,8 @@ IEEE80211_NODE_SAVEQ_UNLOCK(ni); IEEE80211_NOTE(vap, IEEE80211_MSG_POWER, ni, - "save frame, %u now queued\n", qlen); + "save frame, %u now queued", qlen); - if (qlen == 1) + if (qlen == 1 && vap->iv_set_tim != NULL) vap->iv_set_tim(ni, 1); } From owner-p4-projects@FreeBSD.ORG Fri May 20 14:48:05 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F034616A4D0; Fri, 20 May 2005 14:48:04 +0000 (GMT) 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 8645D16A4CE; Fri, 20 May 2005 14:48:04 +0000 (GMT) Received: from pittgoth.com (14.zlnp1.xdsl.nauticom.net [209.195.149.111]) by mx1.FreeBSD.org (Postfix) with ESMTP id B5B2143D5E; Fri, 20 May 2005 14:48:03 +0000 (GMT) (envelope-from trhodes@FreeBSD.org) Received: from mobile.pittgoth.com (ip68-230-188-82.dc.dc.cox.net [68.230.188.82]) (authenticated bits=0) by pittgoth.com (8.13.3/8.13.3) with ESMTP id j4KEm2rw042544 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Fri, 20 May 2005 10:48:03 -0400 (EDT) (envelope-from trhodes@FreeBSD.org) Date: Fri, 20 May 2005 10:47:01 -0400 From: Tom Rhodes To: "Christian S.J. Peron" Message-ID: <20050520104701.7658a5d5@mobile.pittgoth.com> In-Reply-To: <200505200017.j4K0HmZP080639@repoman.freebsd.org> References: <200505200017.j4K0HmZP080639@repoman.freebsd.org> X-Mailer: Sylpheed-Claws 1.0.1 (GTK+ 1.2.10; i386-portbld-freebsd6.0) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit cc: Perforce Change Reviews Subject: Re: PERFORCE change 77201 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: Fri, 20 May 2005 14:48:05 -0000 On Fri, 20 May 2005 00:17:48 GMT "Christian S.J. Peron" wrote: > http://perforce.freebsd.org/chv.cgi?CH=77201 > > Change 77201 by csjp@csjp_xor on 2005/05/20 00:17:30 > > > -replace a size_t for int in the checksum calculation routines > -declare temp variable to stuff the size of the extended attribute in. > We have to do this because for some reason the data type representing > extended attribute size between vn_extattr_get and VOP_GETEXTATTR conflict. > This makes the mac_chkexec build happy on AMD64 Requested by: trhodes Thanks!!! [SNIP] > return (error); > + /* XXX why are'nt extended attribute size specification types between > + * VOP_GETEXTATTR and vn_extattr_get the same? > + */ > + alen = ealen; > depends = malloc(alen + 1, M_CHKEXEC, M_WAITOK | M_ZERO); > error = vn_extattr_get(vp, IO_NODELOCKED, MAC_CHKEXEC_ATTRN, > MAC_CHKEXEC_DEP, &alen, depends, curthread); > Good question. -- Tom Rhodes From owner-p4-projects@FreeBSD.ORG Fri May 20 17:18:19 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id ACED316A4D0; Fri, 20 May 2005 17:18:18 +0000 (GMT) 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 69B1716A4CE for ; Fri, 20 May 2005 17:18:18 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 213A143DC2 for ; Fri, 20 May 2005 17:18:18 +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 j4KHIGXB061384 for ; Fri, 20 May 2005 17:18:16 GMT (envelope-from trhodes@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4KHIGuV061381 for perforce@freebsd.org; Fri, 20 May 2005 17:18:16 GMT (envelope-from trhodes@freebsd.org) Date: Fri, 20 May 2005 17:18:16 GMT Message-Id: <200505201718.j4KHIGuV061381@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 Subject: PERFORCE change 77230 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: Fri, 20 May 2005 17:18:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=77230 Change 77230 by trhodes@trhodes-x64 on 2005/05/20 17:18:09 Add getfhash to the build. Affected files ... .. //depot/projects/trustedbsd/mac/usr.sbin/Makefile#40 edit Differences ... ==== //depot/projects/trustedbsd/mac/usr.sbin/Makefile#40 (text+ko) ==== @@ -51,6 +51,7 @@ fdwrite \ flowctl \ fwcontrol \ + getfhash \ getfmac \ getpmac \ gstat \ From owner-p4-projects@FreeBSD.ORG Fri May 20 21:20:48 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5972316A4D2; Fri, 20 May 2005 21:20:48 +0000 (GMT) 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 08DC516A4CF for ; Fri, 20 May 2005 21:20:48 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B8C9F43DA3 for ; Fri, 20 May 2005 21:20: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 j4KLKl7q082605 for ; Fri, 20 May 2005 21:20:47 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4KLKlkV082602 for perforce@freebsd.org; Fri, 20 May 2005 21:20:47 GMT (envelope-from peter@freebsd.org) Date: Fri, 20 May 2005 21:20:47 GMT Message-Id: <200505202120.j4KLKlkV082602@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 Subject: PERFORCE change 77235 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: Fri, 20 May 2005 21:20:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=77235 Change 77235 by peter@peter_daintree on 2005/05/20 21:20:42 IFC @77233 Affected files ... .. //depot/projects/hammer/lib/libc/gen/ttyname.c#6 integrate .. //depot/projects/hammer/lib/libdevinfo/devinfo.c#5 integrate .. //depot/projects/hammer/lib/libstand/Makefile#13 integrate .. //depot/projects/hammer/lib/libstand/splitfs.c#4 integrate .. //depot/projects/hammer/lib/libthread_db/libpthread_db.c#5 integrate .. //depot/projects/hammer/lib/libthread_db/libthr_db.c#5 integrate .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#95 integrate .. //depot/projects/hammer/sbin/atacontrol/atacontrol.c#15 integrate .. //depot/projects/hammer/sbin/ifconfig/ifconfig.c#25 integrate .. //depot/projects/hammer/share/man/man4/bge.4#13 integrate .. //depot/projects/hammer/share/man/man4/miibus.4#10 integrate .. //depot/projects/hammer/share/man/man9/devclass_get_devices.9#2 integrate .. //depot/projects/hammer/share/man/man9/devclass_get_drivers.9#2 integrate .. //depot/projects/hammer/share/misc/bsd-family-tree#26 integrate .. //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#94 integrate .. //depot/projects/hammer/sys/boot/i386/libi386/bioscd.c#5 integrate .. //depot/projects/hammer/sys/compat/ndis/kern_ndis.c#32 integrate .. //depot/projects/hammer/sys/compat/ndis/kern_windrv.c#8 integrate .. //depot/projects/hammer/sys/dev/acpica/acpi.c#61 integrate .. //depot/projects/hammer/sys/dev/firewire/fwohci_pci.c#31 integrate .. //depot/projects/hammer/sys/dev/firewire/fwohcireg.h#14 integrate .. //depot/projects/hammer/sys/dev/if_ndis/if_ndis.c#33 integrate .. //depot/projects/hammer/sys/i386/isa/prof_machdep.c#7 integrate .. //depot/projects/hammer/sys/kern/subr_bus.c#41 integrate .. //depot/projects/hammer/sys/pci/if_xl.c#49 integrate .. //depot/projects/hammer/sys/pci/if_xlreg.h#13 integrate .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/builtin/Makefile#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/builtin/expected.status#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/builtin/expected.stderr#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/builtin/expected.stdout#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/builtin/sh.sh#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/builtin/test.t#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/meta/Makefile#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/meta/expected.status#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/meta/expected.stderr#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/meta/expected.stdout#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/meta/sh.sh#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/meta/test.t#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/replace/Makefile#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/replace/expected.status#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/replace/expected.stderr#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/replace/expected.stdout#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/replace/sh.sh#1 branch .. //depot/projects/hammer/tools/regression/usr.bin/make/shell/replace/test.t#1 branch .. //depot/projects/hammer/usr.sbin/arlcontrol/arlcontrol.c#2 integrate .. //depot/projects/hammer/usr.sbin/fwcontrol/fwcontrol.c#12 integrate .. //depot/projects/hammer/usr.sbin/mount_portalfs/pt_file.c#5 integrate .. //depot/projects/hammer/usr.sbin/rpc.lockd/kern.c#7 integrate .. //depot/projects/hammer/usr.sbin/rpc.lockd/lockd_lock.c#7 integrate .. //depot/projects/hammer/usr.sbin/ypserv/yp_dnslookup.c#6 integrate .. //depot/projects/hammer/usr.sbin/ypserv/yp_main.c#4 integrate Differences ... ==== //depot/projects/hammer/lib/libc/gen/ttyname.c#6 (text+ko) ==== @@ -35,7 +35,7 @@ static char sccsid[] = "@(#)ttyname.c 8.2 (Berkeley) 1/27/94"; #endif /* LIBC_SCCS and not lint */ #include -__FBSDID("$FreeBSD: src/lib/libc/gen/ttyname.c,v 1.19 2005/05/14 14:03:21 delphij Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/gen/ttyname.c,v 1.23 2005/05/20 15:39:20 ume Exp $"); #include "namespace.h" #include @@ -49,23 +49,24 @@ #include #include #include -#include #include +#include "reentrant.h" #include "un-namespace.h" #include "libc_private.h" static char ttyname_buf[sizeof(_PATH_DEV) + MAXNAMLEN]; -static pthread_mutex_t ttyname_lock = PTHREAD_MUTEX_INITIALIZER; -static pthread_key_t ttyname_key; -static int ttyname_init = 0; +static once_t ttyname_init_once = ONCE_INITIALIZER; +static thread_key_t ttyname_key; +static int ttyname_keycreated = 0; int ttyname_r(int fd, char *buf, size_t len) { struct stat sb; struct fiodgname_arg fgn; + size_t used; *buf = '\0'; @@ -80,51 +81,44 @@ return (ERANGE); strcpy(buf, _PATH_DEV); - fgn.len = len - strlen(buf); - fgn.buf = buf + strlen(buf); + used = strlen(buf); + fgn.len = len - used; + fgn.buf = buf + used; if (!_ioctl(fd, FIODGNAME, &fgn)) return (0); - devname_r(sb.st_rdev, S_IFCHR, - buf + strlen(buf), sizeof(buf) - strlen(buf)); + used = strlen(buf); + devname_r(sb.st_rdev, S_IFCHR, buf + used, len - used); return (0); } +static void +ttyname_keycreate(void) +{ + ttyname_keycreated = (thr_keycreate(&ttyname_key, free) == 0); +} + char * ttyname(int fd) { char *buf; - if (__isthreaded == 0) { - if (ttyname_r(fd, ttyname_buf, sizeof ttyname_buf) != 0) + if (thr_main() != 0) + buf = ttyname_buf; + else { + if (thr_once(&ttyname_init_once, ttyname_keycreate) != 0 || + !ttyname_keycreated) return (NULL); - else - return (ttyname_buf); - } - - if (ttyname_init == 0) { - _pthread_mutex_lock(&ttyname_lock); - if (ttyname_init == 0) { - if (_pthread_key_create(&ttyname_key, free)) { - _pthread_mutex_unlock(&ttyname_lock); + if ((buf = thr_getspecific(ttyname_key)) == NULL) { + if ((buf = malloc(sizeof ttyname_buf)) == NULL) return (NULL); - } - ttyname_init = 1; - } - _pthread_mutex_unlock(&ttyname_lock); - } - - /* Must have thread specific data field to put data */ - if ((buf = _pthread_getspecific(ttyname_key)) == NULL) { - if ((buf = malloc(sizeof(_PATH_DEV) + MAXNAMLEN)) != NULL) { - if (_pthread_setspecific(ttyname_key, buf) != 0) { + if (thr_setspecific(ttyname_key, buf) != 0) { free(buf); return (NULL); } - } else { - return (NULL); } } - ttyname_r(fd, buf, sizeof(_PATH_DEV) + MAXNAMLEN); + + if (ttyname_r(fd, buf, sizeof ttyname_buf) != 0) + return (NULL); return (buf); } - ==== //depot/projects/hammer/lib/libdevinfo/devinfo.c#5 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libdevinfo/devinfo.c,v 1.6 2005/03/01 20:32:05 stefanf Exp $"); +__FBSDID("$FreeBSD: src/lib/libdevinfo/devinfo.c,v 1.7 2005/05/20 12:46:34 charnier Exp $"); /* * An interface to the FreeBSD kernel's bus/device information interface. @@ -164,13 +164,13 @@ { struct u_device udev; struct devinfo_i_dev *dd; - int dev_idx; - int dev_ptr; - int name2oid[2]; - int oid[CTL_MAXNAME + 12]; + int dev_idx; + int dev_ptr; + int name2oid[2]; + int oid[CTL_MAXNAME + 12]; size_t oidlen, rlen; - char *name, *np, *fmt; - int error, hexmode; + char *name; + int error; /* * Find the OID for the rman interface node. @@ -245,15 +245,15 @@ { struct u_rman urman; struct devinfo_i_rman *dm; - struct u_resource ures; + struct u_resource ures; struct devinfo_i_res *dr; - int rman_idx, res_idx; - int rman_ptr, res_ptr; - int name2oid[2]; - int oid[CTL_MAXNAME + 12]; + int rman_idx, res_idx; + int rman_ptr, res_ptr; + int name2oid[2]; + int oid[CTL_MAXNAME + 12]; size_t oidlen, rlen; - char *name, *np, *fmt; - int error, hexmode; + char *name; + int error; /* * Find the OID for the rman interface node. ==== //depot/projects/hammer/lib/libstand/Makefile#13 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/lib/libstand/Makefile,v 1.49 2005/05/17 17:48:26 obrien Exp $ +# $FreeBSD: src/lib/libstand/Makefile,v 1.50 2005/05/20 03:18:19 peter Exp $ # Originally from $NetBSD: Makefile,v 1.21 1997/10/26 22:08:38 lukem Exp $ # # Notes: @@ -25,7 +25,7 @@ CFLAGS+= -msoft-float -D_STANDALONE .endif .if ${MACHINE_ARCH} == "amd64" -CFLAGS+= -m32 +CFLAGS+= -m32 -I. .endif # standalone components and stuff we have modified locally ==== //depot/projects/hammer/lib/libstand/splitfs.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libstand/splitfs.c,v 1.7 2004/10/03 15:58:20 stefanf Exp $"); +__FBSDID("$FreeBSD: src/lib/libstand/splitfs.c,v 1.8 2005/05/20 12:55:38 charnier Exp $"); #include "stand.h" @@ -192,7 +192,8 @@ static int splitfs_read(struct open_file *f, void *buf, size_t size, size_t *resid) { - int i, nread, totread; + ssize_t nread; + size_t totread; struct split_file *sf; sf = (struct split_file *)f->f_fsdata; ==== //depot/projects/hammer/lib/libthread_db/libpthread_db.c#5 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libthread_db/libpthread_db.c,v 1.8 2005/04/12 03:03:16 davidxu Exp $"); +__FBSDID("$FreeBSD: src/lib/libthread_db/libpthread_db.c,v 1.9 2005/05/20 13:09:49 charnier Exp $"); #include #include @@ -946,7 +946,7 @@ { char *obj_entry; const td_thragent_t *ta = th->th_ta; - psaddr_t tcb_addr, *dtv_addr, tcb_tp; + psaddr_t tcb_addr, *dtv_addr; int tls_index, ret; /* linkmap is a member of Obj_Entry */ ==== //depot/projects/hammer/lib/libthread_db/libthr_db.c#5 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libthread_db/libthr_db.c,v 1.7 2005/04/13 04:57:38 davidxu Exp $"); +__FBSDID("$FreeBSD: src/lib/libthread_db/libthr_db.c,v 1.8 2005/05/20 13:09:49 charnier Exp $"); #include #include @@ -200,7 +200,6 @@ static td_err_e pt_ta_map_id2thr(const td_thragent_t *ta, thread_t id, td_thrhandle_t *th) { - prgregset_t gregs; TAILQ_HEAD(, pthread) thread_list; psaddr_t pt; long lwp; @@ -681,7 +680,7 @@ { char *obj_entry; const td_thragent_t *ta = th->th_ta; - psaddr_t tcb_addr, *dtv_addr, tcb_tp; + psaddr_t tcb_addr, *dtv_addr; int tls_index, ret; /* linkmap is a member of Obj_Entry */ ==== //depot/projects/hammer/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#95 (text+ko) ==== @@ -3,7 +3,7 @@ The &os; Project - $FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml,v 1.858 2005/05/19 14:59:21 brueffer Exp $ + $FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml,v 1.859 2005/05/20 04:19:56 bmah Exp $ 2000 @@ -581,13 +581,22 @@ network protocol stack and improving the locking strategies. + The libalias library can now be built + as a kernel module. + A new &man.ng.ipfw.4; NetGraph node provides a simple interface between the &man.ipfw.4; and &man.netgraph.4; facilities. + A new &man.ng.nat.4; NetGraph node has been added to + perform NAT functions. + A new &man.ng.netflow.4; NetGraph node allows a router running &os; to do NetFlow version 5 exports. &merged; + &man.sed.1; now supports a option to + make its output line-buffered. + The &man.sppp.4; driver now includes Frame Relay support. &merged; @@ -671,6 +680,20 @@ ARC-12xx series of SATA RAID controllers. &merged; + The &man.ata.4; family of drivers has been overhauled and + updated. It has been split into modules that can be loaded + and unloaded independently (the atapci + and ata modules are prerequesites for the + device subdrivers, which are atadisk, + atapicd, atapifd, + atapist, and + ataraid). On supported SATA controllers, + devices can be hot inserted/removed. ATA RAID support has + been rewritten and supports a number of new metadata formats. + The atapicd driver no longer supports CD + changers. This update has been referred to as ATA + mkIII. + The SHSEC GEOM class has been added. It provides for the sharing of a secret between multiple GEOM providers. All of these providers must be present in order to reveal the @@ -749,6 +772,10 @@ &man.memcpy.3;, &man.memmove.3;, &man.memset.3;, &man.strcat.3; and &man.strcpy.3; have been implemented. + The &man.chflags.1; utility now supports the + flag, which supports changing flags on + symbolic links. + The &man.ftpd.8; program now uses the 212 and 213 status codes for directory and file status correctly (211 was used in @@ -801,6 +828,10 @@ indicating the correct full form when one of these abbreviations is detected. + The &man.kldstat.8; utility now supports a + option to return the status of a specific + kernel module. + The on-disk format of LC_CTYPE files has been changed to be machine-independent. @@ -1054,6 +1085,9 @@ connection, has been added. It was obtained from OpenBSD. &merged; + &man.what.1; now support a flag, which + causes it to print matching text, but not format it. + &man.whois.1; now supports a flag for querying whois.krnic.net @@ -1125,6 +1159,10 @@ FILE has been updated from 4.10 to 4.12. + A number of bug fixes and performance enhancements have been + added to GNU grep in the form of + patches from Fedora's grep-2.5.1-48 source RPM. + GNU readline has been updated from version 4.3 to version 5.0. ==== //depot/projects/hammer/sbin/atacontrol/atacontrol.c#15 (text+ko) ==== @@ -25,7 +25,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/sbin/atacontrol/atacontrol.c,v 1.34 2005/05/16 13:07:27 sos Exp $ + * $FreeBSD: src/sbin/atacontrol/atacontrol.c,v 1.35 2005/05/20 06:23:40 sos Exp $ */ #include @@ -357,7 +357,7 @@ if (!(sscanf(argv[2], "ata%d", &channel) == 1)) { fprintf(stderr, - "atacontrol: Invalid channel %s\n", argv[3]); + "atacontrol: Invalid channel %s\n", argv[2]); exit(EX_USAGE); } info_print(fd, channel, 0); @@ -368,7 +368,7 @@ if (!(sscanf(argv[2], "ata%d", &channel) == 1)) { fprintf(stderr, - "atacontrol: Invalid channel %s\n", argv[3]); + "atacontrol: Invalid channel %s\n", argv[2]); exit(EX_USAGE); } if (ioctl(fd, IOCATADETACH, &channel) < 0) @@ -380,7 +380,7 @@ if (!(sscanf(argv[2], "ata%d", &channel) == 1)) { fprintf(stderr, - "atacontrol: Invalid channel %s\n", argv[3]); + "atacontrol: Invalid channel %s\n", argv[2]); exit(EX_USAGE); } if (ioctl(fd, IOCATAATTACH, &channel) < 0) @@ -393,7 +393,7 @@ if (!(sscanf(argv[2], "ata%d", &channel) == 1)) { fprintf(stderr, - "atacontrol: Invalid channel %s\n", argv[3]); + "atacontrol: Invalid channel %s\n", argv[2]); exit(EX_USAGE); } if (ioctl(fd, IOCATAREINIT, &channel) < 0) ==== //depot/projects/hammer/sbin/ifconfig/ifconfig.c#25 (text+ko) ==== @@ -38,7 +38,7 @@ static char sccsid[] = "@(#)ifconfig.c 8.2 (Berkeley) 2/16/94"; #endif static const char rcsid[] = - "$FreeBSD: src/sbin/ifconfig/ifconfig.c,v 1.112 2005/04/08 21:37:41 stefanf Exp $"; + "$FreeBSD: src/sbin/ifconfig/ifconfig.c,v 1.113 2005/05/20 03:58:53 sam Exp $"; #endif /* not lint */ #include @@ -869,7 +869,7 @@ if (allfamilies) { const struct afswtch *p; p = af_getbyfamily(info.rti_info[RTAX_IFA]->sa_family); - if (p != NULL) + if (p != NULL && p->af_status != NULL) p->af_status(s, &info); } else if (afp->af_af == info.rti_info[RTAX_IFA]->sa_family) afp->af_status(s, &info); ==== //depot/projects/hammer/share/man/man4/bge.4#13 (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.16 2004/12/17 23:03:30 brueffer Exp $ +.\" $FreeBSD: src/share/man/man4/bge.4,v 1.17 2005/05/20 01:20:23 brueffer Exp $ .\" -.Dd December 18, 2004 +.Dd May 20, 2005 .Dt BGE 4 .Os .Sh NAME .Nm bge -.Nd "Broadcom BCM570x/5721/5750/5751 PCI Gigabit Ethernet adapter driver" +.Nd "Broadcom BCM570x/5714/5721/5750/5751 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, -5721, 5750 and 5751 families of Gigabit Ethernet controller chips. +5714, 5721, 5750 and 5751 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/miibus.4#10 (text+ko) ==== @@ -6,9 +6,9 @@ .\" Originally this file looked much like the NetBSD mii(4) manual page, but .\" I doubt you would ever notice due to large differences. .\" -.\" $FreeBSD: src/share/man/man4/miibus.4,v 1.14 2004/11/08 19:48:48 brueffer Exp $ +.\" $FreeBSD: src/share/man/man4/miibus.4,v 1.15 2005/05/20 01:19:02 brueffer Exp $ .\" -.Dd September 13, 2004 +.Dd May 20, 2005 .Dt MIIBUS 4 .Os .Sh NAME @@ -69,6 +69,8 @@ Myson Technologies PCI Ethernet adaptors .It Xr nge 4 National Semiconductor DP83820/DP83821 Gigabit Ethernet +.It Xr nve 4 +NVIDIA nForce MCP Networking Adapter .It Xr pcn 4 AMD Am79C97x PCI 10/100 .It Xr re 4 @@ -124,6 +126,7 @@ .Xr my 4 , .Xr netintro 4 , .Xr nge 4 , +.Xr nve 4 , .Xr pcn 4 , .Xr re 4 , .Xr rl 4 , ==== //depot/projects/hammer/share/man/man9/devclass_get_devices.9#2 (text+ko) ==== @@ -26,9 +26,9 @@ .\" (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/share/man/man9/devclass_get_devices.9,v 1.7 2001/10/01 16:09:24 ru Exp $ +.\" $FreeBSD: src/share/man/man9/devclass_get_devices.9,v 1.8 2005/05/20 05:04:21 njl Exp $ .\" -.Dd June 16, 1998 +.Dd May 19, 2005 .Dt DEVCLASS_GET_DEVICES 9 .Os .Sh NAME @@ -46,7 +46,10 @@ and the count in .Fa *devcountp . The memory allocated for the list should be freed using -.Fn free "*devlistp" "M_TEMP" . +.Fn free "*devlistp" "M_TEMP" , +even if +.Fa *devcountp +is 0. .Sh RETURN VALUES Zero is returned on success, otherwise an appropriate error is returned. .Sh SEE ALSO ==== //depot/projects/hammer/share/man/man9/devclass_get_drivers.9#2 (text+ko) ==== @@ -26,9 +26,9 @@ .\" (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/share/man/man9/devclass_get_drivers.9,v 1.1 2005/04/04 15:26:51 njl Exp $ +.\" $FreeBSD: src/share/man/man9/devclass_get_drivers.9,v 1.2 2005/05/20 05:04:21 njl Exp $ .\" -.Dd April 3, 2005 +.Dd May 19, 2005 .Dt DEVCLASS_GET_DRIVERS 9 .Os .Sh NAME @@ -47,6 +47,9 @@ .Fa *countp . The memory allocated for the list should be freed using .Fn free "*listp" "M_TEMP" . +even if +.Fa *countp +is 0. .Sh RETURN VALUES Zero is returned on success, otherwise an appropriate error is returned. .Sh SEE ALSO ==== //depot/projects/hammer/share/misc/bsd-family-tree#26 (text+ko) ==== @@ -188,7 +188,7 @@ | | | | | DragonFly 1.2.0 | | Mac OS X | | | | FreeBSD 5.4 10.4 | | | - | | | | | | + | | | | OpenBSD 3.7 | | V | | | | | | | | | FreeBSD 6 -current | NetBSD -current OpenBSD -current | @@ -423,6 +423,7 @@ DragonFly 1.2.0 2005-04-08 [DFB] Mac OS X 10.4 2005-04-29 [APL] FreeBSD 5.4 2005-05-09 [FBD] +OpenBSD 3.7 2005-05-19 [OBD] Bibliography ------------------------ @@ -483,4 +484,4 @@ Copyright (c) 1997-2004 Wolfram Schneider URL: http://cvsweb.freebsd.org/src/share/misc/bsd-family-tree -$FreeBSD: src/share/misc/bsd-family-tree,v 1.91 2005/05/11 11:11:29 maxim Exp $ +$FreeBSD: src/share/misc/bsd-family-tree,v 1.92 2005/05/20 05:13:25 maxim Exp $ ==== //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#94 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.255 2005/05/13 00:57:04 nectar Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.257 2005/05/20 16:25:08 obrien Exp $"); #include "opt_cpu.h" #include "opt_kstack_pages.h" @@ -779,10 +779,10 @@ DELAY(200); /* wait ~200uS */ /* Wait up to 5 seconds for it to start. */ - for (ms = 0; ms < 50; ms++) { + for (ms = 0; ms < 5000; ms++) { if (mp_naps > cpus) return 1; /* return SUCCESS */ - DELAY(100000); + DELAY(1000); } return 0; /* return FAILURE */ } ==== //depot/projects/hammer/sys/boot/i386/libi386/bioscd.c#5 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/bioscd.c,v 1.7 2004/06/16 18:21:22 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/bioscd.c,v 1.8 2005/05/20 13:14:18 charnier Exp $"); /* * BIOS CD device handling for CD's that have been booted off of via no @@ -92,8 +92,6 @@ static int bc_init(void); static int bc_strategy(void *devdata, int flag, daddr_t dblk, size_t size, char *buf, size_t *rsize); -static int bc_realstrategy(void *devdata, int flag, daddr_t dblk, - size_t size, char *buf, size_t *rsize); static int bc_open(struct open_file *f, ...); static int bc_close(struct open_file *f); static void bc_print(int verbose); @@ -193,7 +191,6 @@ { va_list ap; struct i386_devdesc *dev; - int error; va_start(ap, f); dev = va_arg(ap, struct i386_devdesc *); @@ -263,7 +260,7 @@ static int bc_read(int unit, daddr_t dblk, int blks, caddr_t dest) { - u_int result, resid, retry; + u_int result, retry; static unsigned short packet[8]; int biosdev; #ifdef DISK_DEBUG ==== //depot/projects/hammer/sys/compat/ndis/kern_ndis.c#32 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/ndis/kern_ndis.c,v 1.81 2005/05/15 04:27:58 wpaul Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/ndis/kern_ndis.c,v 1.83 2005/05/20 04:00:50 wpaul Exp $"); #include #include @@ -1112,7 +1112,8 @@ n->nmt_nexttimer = NULL; } sc->ndis_block->nmb_timerlist = NULL; - KeFlushQueuedDpcs(); + if (!cold) + KeFlushQueuedDpcs(); #endif NDIS_LOCK(sc); @@ -1122,6 +1123,7 @@ return(EIO); } + sc->ndis_block->nmb_miniportadapterctx = NULL; sc->ndis_block->nmb_devicectx = NULL; /* @@ -1135,10 +1137,6 @@ MSCALL1(haltfunc, adapter); - NDIS_LOCK(sc); - sc->ndis_block->nmb_miniportadapterctx = NULL; - NDIS_UNLOCK(sc); - return(0); } ==== //depot/projects/hammer/sys/compat/ndis/kern_windrv.c#8 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/ndis/kern_windrv.c,v 1.10 2005/05/08 23:19:20 wpaul Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/ndis/kern_windrv.c,v 1.11 2005/05/20 04:01:36 wpaul Exp $"); #include #include @@ -664,6 +664,20 @@ struct tid *t; t = &my_tids[curthread->td_oncpu]; + + /* + * Ugly hack. During system bootstrap (cold == 1), only CPU 0 + * is running. So if we were loaded at bootstrap, only CPU 0 + * will have our special GDT entry. This is a problem for SMP + * systems, so to deal with this, we check here to make sure + * the TID for this processor has been initialized, and if it + * hasn't, we need to do it right now or else things will + * explode. + */ + + if (t->tid_self != t) + x86_newldt(NULL); + t->tid_oldfs = x86_getfs(); t->tid_cpu = curthread->td_oncpu; ==== //depot/projects/hammer/sys/dev/acpica/acpi.c#61 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi.c,v 1.212 2005/05/09 07:34:04 marks Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi.c,v 1.213 2005/05/20 05:00:43 njl Exp $"); #include "opt_acpi.h" #include @@ -2357,8 +2357,11 @@ ACPI_STATUS status; error = device_get_children(dev, &devlist, &numdevs); - if (error != 0 || numdevs == 0) + if (error != 0 || numdevs == 0) { + if (numdevs == 0) + free(devlist, M_TEMP); return (error); + } for (i = 0; i < numdevs; i++) { child = devlist[i]; acpi_wake_sysctl_walk(child); ==== //depot/projects/hammer/sys/dev/firewire/fwohci_pci.c#31 (text+ko) ==== @@ -31,7 +31,7 @@ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/firewire/fwohci_pci.c,v 1.51 2005/03/05 18:30:11 imp Exp $ + * $FreeBSD: src/sys/dev/firewire/fwohci_pci.c,v 1.52 2005/05/20 12:37:16 marius Exp $ */ #define BOUNCE_BUFFER_TEST 0 @@ -208,6 +208,10 @@ device_set_desc(dev, "Adaptec AHA-894x/AIC-5800"); return BUS_PROBE_DEFAULT; } + if (id == (FW_VENDORID_SUN | FW_DEVICE_PCIO2FW)) { + device_set_desc(dev, "Sun PCIO-2"); + return BUS_PROBE_DEFAULT; + } #endif if (pci_get_class(dev) == PCIC_SERIALBUS && pci_get_subclass(dev) == PCIS_SERIALBUS_FW @@ -245,6 +249,14 @@ #endif pci_write_config(self, PCIR_COMMAND, cmd, 2); + /* + * Some Sun PCIO-2 FireWire controllers have their intpin register + * bogusly set to 0, although it should be 3. Correct that. + */ + if (pci_get_devid(self) == (FW_VENDORID_SUN | FW_DEVICE_PCIO2FW) && + pci_get_intpin(self) == 0) + pci_set_intpin(self, 3); + latency = olatency = pci_read_config(self, PCIR_LATTIMER, 1); #define DEF_LATENCY 0x20 if (olatency < DEF_LATENCY) { ==== //depot/projects/hammer/sys/dev/firewire/fwohcireg.h#14 (text+ko) ==== @@ -31,7 +31,7 @@ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/firewire/fwohcireg.h,v 1.21 2005/01/06 01:42:41 imp Exp $ + * $FreeBSD: src/sys/dev/firewire/fwohcireg.h,v 1.22 2005/05/20 12:37:16 marius Exp $ * */ #define PCI_CBMEM PCIR_BAR(0) @@ -47,6 +47,7 @@ #define FW_VENDORID_LUCENT 0x11c1 #define FW_VENDORID_INTEL 0x8086 #define FW_VENDORID_ADAPTEC 0x9004 +#define FW_VENDORID_SUN 0x108e #define FW_DEVICE_CS4210 (0x000f << 16) #define FW_DEVICE_UPD861 (0x0063 << 16) @@ -76,6 +77,7 @@ #define FW_DEVICE_FW322 (0x5811 << 16) #define FW_DEVICE_7007 (0x7007 << 16) #define FW_DEVICE_82372FB (0x7605 << 16) +#define FW_DEVICE_PCIO2FW (0x1102 << 16) #define PCI_INTERFACE_OHCI 0x10 ==== //depot/projects/hammer/sys/dev/if_ndis/if_ndis.c#33 (text+ko) ==== @@ -33,7 +33,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/if_ndis/if_ndis.c,v 1.94 2005/05/16 16:50:52 wpaul Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/if_ndis/if_ndis.c,v 1.96 2005/05/20 04:00:50 wpaul Exp $"); #include "opt_bdg.h" @@ -2886,8 +2886,6 @@ error = copyin(ireq->i_data, &(ssid.ns_ssid), ireq->i_len); if (error) break; - device_printf(sc->ndis_dev, - "setting SSID to %s\n", ssid.ns_ssid); error = ndis_set_info(sc, OID_802_11_SSID, &ssid, &len); if (error) { device_printf(sc->ndis_dev, @@ -3015,7 +3013,7 @@ struct ndis_softc *sc; sc = device_get_softc(dev); - ndis_shutdown_nic(sc); + ndis_stop(sc); return; } ==== //depot/projects/hammer/sys/i386/isa/prof_machdep.c#7 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/i386/isa/prof_machdep.c,v 1.24 2005/05/19 05:22:52 njl Exp $"); +__FBSDID("$FreeBSD: src/sys/i386/isa/prof_machdep.c,v 1.25 2005/05/20 17:16:24 njl Exp $"); #include #include @@ -33,6 +33,14 @@ #include #include +/* + * There are 2 definitions of MCOUNT to have a C version and an asm version + * with the same name and not have LOCORE #ifdefs to distinguish them. + * provides a C version, and + * provides an asm version. To avoid conflicts, #undef the asm version. + */ +#undef MCOUNT + #ifdef GUPROF #include "opt_i586_guprof.h" #include "opt_perfmon.h" @@ -44,7 +52,6 @@ #include #include #include -#undef MCOUNT #define CPUTIME_CLOCK_UNINITIALIZED 0 #define CPUTIME_CLOCK_I8254 1 ==== //depot/projects/hammer/sys/kern/subr_bus.c#41 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/subr_bus.c,v 1.182 2005/05/06 02:48:20 cperciva Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/subr_bus.c,v 1.183 2005/05/20 05:04:22 njl Exp $"); #include "opt_bus.h" @@ -1098,7 +1098,7 @@ * An array containing a list of all the devices in the given devclass * is allocated and returned in @p *devlistp. The number of devices * in the array is returned in @p *devcountp. The caller should free - * the array using @c free(p, M_TEMP). + * the array using @c free(p, M_TEMP), even if @p *devcountp is 0. * * @param dc the devclass to examine * @param devlistp points at location for array pointer return ==== //depot/projects/hammer/sys/pci/if_xl.c#49 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/pci/if_xl.c,v 1.187 2005/03/26 20:22:58 ru Exp $"); +__FBSDID("$FreeBSD: src/sys/pci/if_xl.c,v 1.188 2005/05/20 07:16:09 glebius Exp $"); /* * 3Com 3c90x Etherlink XL PCI NIC driver @@ -109,6 +109,7 @@ #include #include #include +#include #include #include @@ -228,6 +229,7 @@ static void xl_stats_update_locked(struct xl_softc *); static int xl_encap(struct xl_softc *, struct xl_chain *, struct mbuf *); static void xl_rxeof(struct xl_softc *); +static void xl_rxeof_task(void *, int); static int xl_rx_resync(struct xl_softc *); static void xl_txeof(struct xl_softc *); static void xl_txeof_90xB(struct xl_softc *); @@ -1368,6 +1370,7 @@ sc->xl_unit = unit; callout_handle_init(&sc->xl_stat_ch); + TASK_INIT(&sc->xl_task, 0, xl_rxeof_task, sc); bcopy(eaddr, (char *)&sc->arpcom.ac_enaddr, ETHER_ADDR_LEN); /* @@ -2085,6 +2088,19 @@ } /* + * Taskqueue wrapper for xl_rxeof(). + */ +static void +xl_rxeof_task(void *arg, int pending) +{ + struct xl_softc *sc = (struct xl_softc *)arg; + + XL_LOCK(sc); + xl_rxeof(sc); + XL_UNLOCK(sc); +} + +/* * A frame was downloaded to the chip. It's safe for us to clean up * the list buffers. */ @@ -2683,7 +2699,7 @@ * nature of their chips in all their marketing literature; * we may as well take advantage of it. :) >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri May 20 22:13:54 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1839916A4E2; Fri, 20 May 2005 22:13:54 +0000 (GMT) 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 DCFB616A4DC for ; Fri, 20 May 2005 22:13:53 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 866DE43DA1 for ; Fri, 20 May 2005 22:13:52 +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 j4KMDqJX084552 for ; Fri, 20 May 2005 22:13:52 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4KMDq1A084549 for perforce@freebsd.org; Fri, 20 May 2005 22:13:52 GMT (envelope-from peter@freebsd.org) Date: Fri, 20 May 2005 22:13:52 GMT Message-Id: <200505202213.j4KMDq1A084549@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 Subject: PERFORCE change 77237 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: Fri, 20 May 2005 22:13:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=77237 Change 77237 by peter@peter_overcee on 2005/05/20 22:13:48 Hmm. Try and make detection of a trap frame more robust. If we have two symbols with (most likely) the same value, there is no way to be sure which one will be matched to a return address. Except we need it to be "calltrap" so that db_trace.c can see the magic. Affected files ... .. //depot/projects/hammer/sys/amd64/amd64/exception.S#34 edit Differences ... ==== //depot/projects/hammer/sys/amd64/amd64/exception.S#34 (text+ko) ==== @@ -165,8 +165,9 @@ movq %r13,TF_R13(%rsp) movq %r14,TF_R14(%rsp) movq %r15,TF_R15(%rsp) -alltraps_with_regs_pushed: FAKE_MCOUNT(TF_RIP(%rsp)) + .globl calltrap + .type calltrap,@function calltrap: call trap MEXITCOUNT @@ -434,4 +435,5 @@ movq %r15,TF_R15(%rsp) movq $T_PROTFLT,TF_TRAPNO(%rsp) movq $0,TF_ERR(%rsp) /* XXX should be the error code */ - jmp alltraps_with_regs_pushed + FAKE_MCOUNT(TF_RIP(%rsp)) + jmp calltrap From owner-p4-projects@FreeBSD.ORG Sat May 21 15:45:12 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C2BB116A4D0; Sat, 21 May 2005 15:45:11 +0000 (GMT) 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 848D916A4CF for ; Sat, 21 May 2005 15:45:11 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7787A43D6B for ; Sat, 21 May 2005 15:45:09 +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 j4LFj9Ne054390 for ; Sat, 21 May 2005 15:45:09 GMT (envelope-from trhodes@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4LFj83F054387 for perforce@freebsd.org; Sat, 21 May 2005 15:45:08 GMT (envelope-from trhodes@freebsd.org) Date: Sat, 21 May 2005 15:45:08 GMT Message-Id: <200505211545.j4LFj83F054387@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 Subject: PERFORCE change 77251 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: Sat, 21 May 2005 15:45:12 -0000 http://perforce.freebsd.org/chv.cgi?CH=77251 Change 77251 by trhodes@trhodes_local on 2005/05/21 15:44:38 Remove NO_AUDIT flag I introduced. We do not do anything special for MAC either. Affected files ... .. //depot/projects/trustedbsd/audit3/etc/Makefile#4 edit .. //depot/projects/trustedbsd/audit3/lib/Makefile#5 edit .. //depot/projects/trustedbsd/audit3/share/examples/etc/make.conf#5 edit .. //depot/projects/trustedbsd/audit3/share/man/man5/make.conf.5#4 edit .. //depot/projects/trustedbsd/audit3/usr.bin/login/Makefile#3 edit .. //depot/projects/trustedbsd/audit3/usr.sbin/Makefile#8 edit Differences ... ==== //depot/projects/trustedbsd/audit3/etc/Makefile#4 (text+ko) ==== @@ -20,14 +20,12 @@ ${.CURDIR}/../usr.bin/mail/misc/mail.rc \ ${.CURDIR}/../usr.bin/locate/locate/locate.rc -.if !defined(NO_AUDIT) BSM_ETC_OPEN_FILES= ${.CURDIR}/../contrib/bsm/etc/audit_class \ ${.CURDIR}/../contrib/bsm/etc/audit_event BSM_ETC_RESTRICTED_FILES= ${.CURDIR}/../contrib/bsm/etc/audit_control \ ${.CURDIR}/../contrib/bsm/etc/audit_user BSM_ETC_EXEC_FILES= ${.CURDIR}/../contrib/bsm/etc/audit_warn BSM_ETC_DIR= ${DESTDIR}/etc/security -.endif .if !defined(NO_LPR) BIN1+= printcap @@ -101,14 +99,12 @@ cd ${.CURDIR}/../share/termcap; ${MAKE} etc-termcap cd ${.CURDIR}/../usr.sbin/rmt; ${MAKE} etc-rmt cd ${.CURDIR}/pam.d; ${MAKE} install -.if !defined(NO_AUDIT) cd ${.CURDIR}; ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 0444 \ ${BSM_ETC_OPEN_FILES} ${BSM_ETC_DIR} cd ${.CURDIR}; ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 0400 \ ${BSM_ETC_RESTRICTED_FILES} ${BSM_ETC_DIR} cd ${.CURDIR}; ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 0500 \ ${BSM_ETC_EXEC_FILES} ${BSM_ETC_DIR} -.endif .if !defined(NO_I4B) cd ${.CURDIR}/isdn; ${MAKE} install .endif ==== //depot/projects/trustedbsd/audit3/lib/Makefile#5 (text+ko) ==== @@ -22,7 +22,7 @@ # # Otherwise, the SUBDIR list should be in alphabetical order. -SUBDIR= ${_csu} ${_libbsm} libcom_err libcrypt libkvm msun libmd libncurses \ +SUBDIR= ${_csu} libbsm libcom_err libcrypt libkvm msun libmd libncurses \ libnetgraph libradius librpcsvc libsbuf libtacplus libutil \ ${_libypclnt} libalias libarchive ${_libatm} \ libbegemot ${_libbluetooth} libbsnmp libbz2 libc ${_libc_r} \ @@ -30,7 +30,7 @@ libedit libexpat libfetch libform libftpio libgeom ${_libio} libipsec \ libipx libkiconv libmagic libmenu ${_libmilter} ${_libmp} \ ${_libncp} ${_libngatm} libopie libpam libautofs libpanel libpcap \ - ${_libpthread} ${_libsdp} ${_libsm} ${_libsmb} ${_libsmdb} \ + ${_libpthread} ${_libsdp} libsm ${_libsmb} ${_libsmdb} \ ${_libsmutil} libstand libtelnet ${_libthr} ${_libthread_db} libufs \ libugidfw ${_libusbhid} ${_libvgl} libwrap libxpg4 liby libz ${_bind} @@ -47,10 +47,6 @@ _libngatm= libngatm .endif -.if !defined(NO_AUDIT) -_libbsm= libbsm -.endif - .if !defined(NO_BIND) _bind= bind .endif ==== //depot/projects/trustedbsd/audit3/share/examples/etc/make.conf#5 (text+ko) ==== @@ -110,7 +110,6 @@ # To avoid building various parts of the base system: #NO_ACPI= # do not build acpiconf(8) and related programs #NOATM= # do not build ATM related programs and libraries -#NO_AUDIT= # do not build audit libraries or utilities #NO_AUTHPF= # do not build and install authpf (setuid/gid) #NO_BLUETOOTH= # do not build Bluetooth related stuff #NO_BOOT= # do not build boot blocks and loader ==== //depot/projects/trustedbsd/audit3/share/man/man5/make.conf.5#4 (text+ko) ==== @@ -410,9 +410,6 @@ .It Va MODULES_WITH_WORLD .Pq Vt bool Set to build modules with the system instead of the kernel. -.It Va NO_AUDIT -.Pq Vt bool -Set to not build audit utilities and libraries. .It Va NO_BLUETOOTH .Pq Vt bool Set to not build Bluetooth related kernel modules, programs and libraries. ==== //depot/projects/trustedbsd/audit3/usr.bin/login/Makefile#3 (text+ko) ==== @@ -5,7 +5,7 @@ SRCS= login.c login_fbtab.c CFLAGS+=-DLOGALL DPADD= ${LIBUTIL} ${LIBPAM} -LDADD= -lutil -lbsm ${MINUSLPAM} +LDADD+= -lutil ${MINUSLPAM} -lbsm MAN= login.1 login.access.5 .if !defined(NO_SETUID_LOGIN) BINOWN= root ==== //depot/projects/trustedbsd/audit3/usr.sbin/Makefile#8 (text+ko) ==== @@ -12,10 +12,10 @@ ${_apmd} \ ${_arlcontrol} \ arp \ - ${_audit} \ - ${_auditd} \ - ${_auditon} \ - ${_auditreduce} \ + audit \ + auditd \ + auditon \ + auditreduce \ ${_asf} \ ${_atm} \ ${_authpf} \ @@ -122,7 +122,7 @@ pppd \ pppstats \ ${_praliases} \ - ${_praudit} \ + praudit \ procctl \ pstat \ pw \ @@ -197,14 +197,6 @@ _atm= atm .endif -.if !defined(NO_AUDIT) -_audit= audit -_auditd= auditd -_auditon= auditon -_auditreduce= auditreduce -_praudit= praudit -.endif - .if !defined(NO_BIND) .if !defined(NO_BIND_DNSSEC) && !defined(NOCRYPT) _dnssec-keygen= dnssec-keygen From owner-p4-projects@FreeBSD.ORG Sat May 21 17:45:36 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8CB9216A4D0; Sat, 21 May 2005 17:45:35 +0000 (GMT) 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 4BFC116A4CE for ; Sat, 21 May 2005 17:45:35 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 133D243D53 for ; Sat, 21 May 2005 17:45:35 +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 j4LHjYoL066945 for ; Sat, 21 May 2005 17:45:34 GMT (envelope-from trhodes@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4LHjYJD066942 for perforce@freebsd.org; Sat, 21 May 2005 17:45:34 GMT (envelope-from trhodes@freebsd.org) Date: Sat, 21 May 2005 17:45:34 GMT Message-Id: <200505211745.j4LHjYJD066942@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 Subject: PERFORCE change 77254 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: Sat, 21 May 2005 17:45:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=77254 Change 77254 by trhodes@trhodes_local on 2005/05/21 17:45:16 Add manual pages for the mac_chkexec(4) policy and its userland utilities. Attach these manual pages to the build, probably will need another pass later. Affected files ... .. //depot/projects/trustedbsd/mac/share/man/man4/Makefile#50 edit .. //depot/projects/trustedbsd/mac/share/man/man4/mac_chkexec.4#1 add .. //depot/projects/trustedbsd/mac/usr.sbin/getfhash/Makefile#5 edit .. //depot/projects/trustedbsd/mac/usr.sbin/getfhash/getfhash.8#1 add .. //depot/projects/trustedbsd/mac/usr.sbin/getfhash/setfhash.8#1 add Differences ... ==== //depot/projects/trustedbsd/mac/share/man/man4/Makefile#50 (text+ko) ==== @@ -132,6 +132,7 @@ lpbb.4 \ lpt.4 \ mac.4 \ + mac_chkexec.4 \ mac_biba.4 \ mac_bsdextended.4 \ mac_ifoff.4 \ ==== //depot/projects/trustedbsd/mac/usr.sbin/getfhash/Makefile#5 (text+ko) ==== @@ -1,8 +1,9 @@ PROG= getfhash LINKS= ${BINDIR}/getfhash ${BINDIR}/setfhash -NO_MAN= WARNS= 6 +MAN= getfhash.8 setfhash.8 + CFLAGS+=-I${.CURDIR}/../../sys/ .include From owner-p4-projects@FreeBSD.ORG Sat May 21 18:28:28 2005 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E120616A4D0; Sat, 21 May 2005 18:28:27 +0000 (GMT) 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 8268916A4CF for ; Sat, 21 May 2005 18:28:27 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5E36943D92 for ; Sat, 21 May 2005 18:28:27 +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 j4LISRP8069127 for ; Sat, 21 May 2005 18:28:27 GMT (envelope-from csjp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4LISRbE069124 for perforce@freebsd.org; Sat, 21 May 2005 18:28:27 GMT (envelope-from csjp@freebsd.org) Date: Sat, 21 May 2005 18:28:27 GMT Message-Id: <200505211828.j4LISRbE069124@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 Subject: PERFORCE change 77256 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: Sat, 21 May 2005 18:28:28 -0000 http://perforce.freebsd.org/chv.cgi?CH=77256 Change 77256 by csjp@csjp_xor on 2005/05/21 18:27:43 Add some documentation for some addition sysctl variables Affected files ... .. //depot/projects/trustedbsd/mac/share/man/man4/mac_chkexec.4#2 edit Differences ... ==== //depot/projects/trustedbsd/mac/share/man/man4/mac_chkexec.4#2 (text+ko) ==== @@ -83,8 +83,14 @@ The following sysctls may be used to tweak the behavior of .Nm : .Bl -tag -width indent +.It Va security.mac.chkexec.enable +Set to zero or one to toggle the policy off or on. .It Va security.mac.chkexec.enforce -Set to zero or one to toggle the policy off or on. +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" +of trusted binaries simply by letting the system run in regular operation. .It Va security.mac.chkexec.cache.objmax Adjust the cache size. This should be increased as more system objects @@ -92,8 +98,18 @@ Note that this value should be similar to .Dq 1024 during the -.Fx +.Dx 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. +.It Va security.mac.chkexec.cache.enable +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. .El .Sh SEE ALSO .Xr mac 4 , From owner-p4-projects@FreeBSD.ORG Sat May 21 23:30:33 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 0F45A16A420; Sat, 21 May 2005 23:30:33 +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 D326C16A41C for ; Sat, 21 May 2005 23:30:32 +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 B586643DA2 for ; Sat, 21 May 2005 23:13:22 +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 j4LNDM3e089258 for ; Sat, 21 May 2005 23:13:22 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j4LNDKOj089252 for perforce@freebsd.org; Sat, 21 May 2005 23:13:20 GMT (envelope-from marcel@freebsd.org) Date: Sat, 21 May 2005 23:13:20 GMT Message-Id: <200505212313.j4LNDKOj089252@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 Subject: PERFORCE change 77268 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: Sat, 21 May 2005 23:30:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=77268 Change 77268 by marcel@marcel_nfs on 2005/05/21 23:12:39 IFC @77267 Affected files ... .. //depot/projects/tty/UPDATING#17 integrate .. //depot/projects/tty/bin/mv/mv.c#6 integrate .. //depot/projects/tty/bin/sh/options.c#4 integrate .. //depot/projects/tty/contrib/bzip2/CHANGES#2 integrate .. //depot/projects/tty/contrib/bzip2/FREEBSD-Xlist#1 branch .. //depot/projects/tty/contrib/bzip2/FREEBSD-upgrade#2 integrate .. //depot/projects/tty/contrib/bzip2/LICENSE#2 integrate .. //depot/projects/tty/contrib/bzip2/Makefile#2 integrate .. //depot/projects/tty/contrib/bzip2/Makefile-libbz2_so#2 integrate .. //depot/projects/tty/contrib/bzip2/README#2 integrate .. //depot/projects/tty/contrib/bzip2/README.COMPILATION.PROBLEMS#2 integrate .. //depot/projects/tty/contrib/bzip2/blocksort.c#2 integrate .. //depot/projects/tty/contrib/bzip2/bzip2.1#2 integrate .. //depot/projects/tty/contrib/bzip2/bzip2.c#2 integrate .. //depot/projects/tty/contrib/bzip2/bzip2recover.c#2 integrate .. //depot/projects/tty/contrib/bzip2/bzlib.c#2 integrate .. //depot/projects/tty/contrib/bzip2/bzlib.h#2 integrate .. //depot/projects/tty/contrib/bzip2/bzlib_private.h#2 integrate .. //depot/projects/tty/contrib/bzip2/compress.c#2 integrate .. //depot/projects/tty/contrib/bzip2/crctable.c#2 integrate .. //depot/projects/tty/contrib/bzip2/decompress.c#2 integrate .. //depot/projects/tty/contrib/bzip2/huffman.c#2 integrate .. //depot/projects/tty/contrib/bzip2/randtable.c#2 integrate .. //depot/projects/tty/contrib/bzip2/sample1.bz2.uu#2 integrate .. //depot/projects/tty/contrib/bzip2/sample1.ref.gz.uu#2 integrate .. //depot/projects/tty/contrib/bzip2/sample2.bz2.uu#2 integrate .. //depot/projects/tty/contrib/bzip2/sample2.ref.gz.uu#2 integrate .. //depot/projects/tty/contrib/bzip2/sample3.bz2.uu#2 integrate .. //depot/projects/tty/contrib/bzip2/sample3.ref.gz.uu#2 integrate .. //depot/projects/tty/contrib/ipfilter/pcap-bpf.h#1 branch .. //depot/projects/tty/contrib/ipfilter/tools/ipf_y.y#2 integrate .. //depot/projects/tty/contrib/lukemftp/src/cmds.c#5 integrate .. //depot/projects/tty/contrib/lukemftp/src/cmdtab.c#5 integrate .. //depot/projects/tty/contrib/lukemftp/src/extern.h#5 integrate .. //depot/projects/tty/contrib/lukemftp/src/fetch.c#6 integrate .. //depot/projects/tty/contrib/lukemftp/src/ftp.1#6 integrate .. //depot/projects/tty/contrib/lukemftp/src/ftp.c#6 integrate .. //depot/projects/tty/contrib/lukemftp/src/ftp_var.h#5 integrate .. //depot/projects/tty/contrib/lukemftp/src/main.c#5 integrate .. //depot/projects/tty/contrib/lukemftp/src/progressbar.c#5 integrate .. //depot/projects/tty/contrib/lukemftp/src/util.c#6 integrate .. //depot/projects/tty/contrib/lukemftp/src/version.h#6 integrate .. //depot/projects/tty/contrib/one-true-awk/FIXES#5 integrate .. //depot/projects/tty/contrib/one-true-awk/FREEBSD-upgrade#4 integrate .. //depot/projects/tty/contrib/one-true-awk/README#3 integrate .. //depot/projects/tty/contrib/one-true-awk/awk.h#2 integrate .. //depot/projects/tty/contrib/one-true-awk/b.c#5 integrate .. //depot/projects/tty/contrib/one-true-awk/lex.c#4 integrate .. //depot/projects/tty/contrib/one-true-awk/lib.c#3 integrate .. //depot/projects/tty/contrib/one-true-awk/main.c#5 integrate .. //depot/projects/tty/contrib/one-true-awk/makefile#3 integrate .. //depot/projects/tty/contrib/one-true-awk/proctab.c#2 integrate .. //depot/projects/tty/contrib/one-true-awk/run.c#5 integrate .. //depot/projects/tty/contrib/one-true-awk/tran.c#2 integrate .. //depot/projects/tty/contrib/telnet/telnetd/telnetd.c#3 integrate .. //depot/projects/tty/contrib/top/commands.c#5 integrate .. //depot/projects/tty/contrib/top/display.c#2 integrate .. //depot/projects/tty/contrib/top/machine.h#3 integrate .. //depot/projects/tty/contrib/top/top.c#5 integrate .. //depot/projects/tty/include/Makefile#14 integrate .. //depot/projects/tty/include/runefile.h#2 delete .. //depot/projects/tty/lib/csu/i386-elf/crt1.c#4 integrate .. //depot/projects/tty/lib/csu/i386-elf/crti.S#2 integrate .. //depot/projects/tty/lib/csu/i386-elf/crtn.S#2 integrate .. //depot/projects/tty/lib/libarchive/Makefile#5 integrate .. //depot/projects/tty/lib/libarchive/archive_platform.h#5 integrate .. //depot/projects/tty/lib/libarchive/archive_read.3#5 integrate .. //depot/projects/tty/lib/libarchive/archive_read_extract.c#5 integrate .. //depot/projects/tty/lib/libarchive/configure.ac.in#4 integrate .. //depot/projects/tty/lib/libc/gen/ttyname.c#6 integrate .. //depot/projects/tty/lib/libc/locale/rune.c#4 integrate .. //depot/projects/tty/lib/libc/locale/runefile.h#1 branch .. //depot/projects/tty/lib/libdevinfo/devinfo.c#4 integrate .. //depot/projects/tty/lib/libstand/Makefile#6 integrate .. //depot/projects/tty/lib/libstand/bzipfs.c#3 integrate .. //depot/projects/tty/lib/libstand/bzlib.c.diff#2 delete .. //depot/projects/tty/lib/libstand/bzlib.h.diff#2 delete .. //depot/projects/tty/lib/libstand/bzlib_private.h.diff#3 delete .. //depot/projects/tty/lib/libstand/splitfs.c#4 integrate .. //depot/projects/tty/lib/libstand/stand.h#5 integrate .. //depot/projects/tty/lib/libstand/zutil.h.diff#2 delete .. //depot/projects/tty/lib/libthread_db/libpthread_db.c#3 integrate .. //depot/projects/tty/lib/libthread_db/libthr_db.c#3 integrate .. //depot/projects/tty/libexec/Makefile#11 integrate .. //depot/projects/tty/libexec/ftp-proxy/Makefile#2 integrate .. //depot/projects/tty/libexec/rtld-elf/i386/rtld_start.S#2 integrate .. //depot/projects/tty/release/Makefile#17 integrate .. //depot/projects/tty/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#15 integrate .. //depot/projects/tty/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#22 integrate .. //depot/projects/tty/release/doc/share/misc/dev.archlist.txt#5 integrate .. //depot/projects/tty/sbin/atacontrol/atacontrol.8#4 integrate .. //depot/projects/tty/sbin/atacontrol/atacontrol.c#9 integrate .. //depot/projects/tty/sbin/devd/devd.cc#7 integrate .. //depot/projects/tty/sbin/ifconfig/ifconfig.c#9 integrate .. //depot/projects/tty/sbin/ipf/Makefile.inc#2 integrate .. //depot/projects/tty/sbin/ipf/ipf/Makefile#3 integrate .. //depot/projects/tty/sbin/ipfw/ipfw2.c#13 integrate .. //depot/projects/tty/sbin/kldstat/kldstat.c#5 integrate .. //depot/projects/tty/share/man/man3/Makefile#7 integrate .. //depot/projects/tty/share/man/man3/pthread.3#4 integrate .. //depot/projects/tty/share/man/man3/pthread_atfork.3#1 branch .. //depot/projects/tty/share/man/man4/Makefile#17 integrate .. //depot/projects/tty/share/man/man4/bge.4#9 integrate .. //depot/projects/tty/share/man/man4/mac_bsdextended.4#7 integrate .. //depot/projects/tty/share/man/man4/miibus.4#8 integrate .. //depot/projects/tty/share/man/man4/nve.4#1 branch .. //depot/projects/tty/share/man/man5/Makefile#8 integrate .. //depot/projects/tty/share/man/man5/devfs.conf.5#1 branch .. //depot/projects/tty/share/man/man5/devfs.rules.5#1 branch .. //depot/projects/tty/share/man/man7/release.7#12 integrate .. //depot/projects/tty/share/man/man9/devclass_get_devices.9#2 integrate .. //depot/projects/tty/share/man/man9/devclass_get_drivers.9#2 integrate .. //depot/projects/tty/share/man/man9/style.9#9 integrate .. //depot/projects/tty/share/man/man9/taskqueue.9#8 integrate .. //depot/projects/tty/share/misc/bsd-family-tree#12 integrate .. //depot/projects/tty/sys/amd64/amd64/exception.S#11 integrate .. //depot/projects/tty/sys/amd64/amd64/mp_machdep.c#8 integrate .. //depot/projects/tty/sys/boot/common/boot.c#3 integrate .. //depot/projects/tty/sys/boot/common/help.common#7 integrate .. //depot/projects/tty/sys/boot/common/loader.8#11 integrate .. //depot/projects/tty/sys/boot/forth/loader.conf#9 integrate .. //depot/projects/tty/sys/boot/i386/libi386/bioscd.c#5 integrate .. //depot/projects/tty/sys/boot/ofw/libofw/ofw_copy.c#4 integrate .. //depot/projects/tty/sys/compat/ndis/kern_ndis.c#8 integrate .. //depot/projects/tty/sys/compat/ndis/kern_windrv.c#4 integrate .. //depot/projects/tty/sys/compat/ndis/ndis_var.h#7 integrate .. //depot/projects/tty/sys/compat/ndis/ntoskrnl_var.h#8 integrate .. //depot/projects/tty/sys/compat/ndis/subr_ndis.c#7 integrate .. //depot/projects/tty/sys/compat/ndis/subr_ntoskrnl.c#7 integrate .. //depot/projects/tty/sys/conf/NOTES#21 integrate .. //depot/projects/tty/sys/conf/files.sparc64#14 integrate .. //depot/projects/tty/sys/conf/options#21 integrate .. //depot/projects/tty/sys/conf/options.sparc64#6 integrate .. //depot/projects/tty/sys/contrib/ipfilter/netinet/ip_compat.h#9 integrate .. //depot/projects/tty/sys/dev/acpica/acpi.c#14 integrate .. //depot/projects/tty/sys/dev/acpica/acpi_acad.c#8 integrate .. //depot/projects/tty/sys/dev/ata/ata-all.c#20 integrate .. //depot/projects/tty/sys/dev/ata/ata-all.h#17 integrate .. //depot/projects/tty/sys/dev/ata/ata-chipset.c#19 integrate .. //depot/projects/tty/sys/dev/ata/ata-commands.h#4 delete .. //depot/projects/tty/sys/dev/ata/ata-disk.c#15 integrate .. //depot/projects/tty/sys/dev/ata/ata-lowlevel.c#13 integrate .. //depot/projects/tty/sys/dev/ata/ata-pci.h#16 integrate .. //depot/projects/tty/sys/dev/ata/ata-raid.c#18 integrate .. //depot/projects/tty/sys/dev/ata/atapi-cam.c#12 integrate .. //depot/projects/tty/sys/dev/ata/atapi-cd.c#15 integrate .. //depot/projects/tty/sys/dev/ata/atapi-fd.c#12 integrate .. //depot/projects/tty/sys/dev/ata/atapi-tape.c#12 integrate .. //depot/projects/tty/sys/dev/bge/if_bge.c#18 integrate .. //depot/projects/tty/sys/dev/bge/if_bgereg.h#13 integrate .. //depot/projects/tty/sys/dev/ciss/ciss.c#15 integrate .. //depot/projects/tty/sys/dev/ciss/cissio.h#3 integrate .. //depot/projects/tty/sys/dev/esp/esp_sbus.c#4 integrate .. //depot/projects/tty/sys/dev/esp/ncr53c9x.c#5 integrate .. //depot/projects/tty/sys/dev/esp/ncr53c9xreg.h#4 integrate .. //depot/projects/tty/sys/dev/esp/ncr53c9xvar.h#4 integrate .. //depot/projects/tty/sys/dev/fb/boot_font.c#3 integrate .. //depot/projects/tty/sys/dev/fb/creator.c#5 integrate .. //depot/projects/tty/sys/dev/fb/gfb.c#4 integrate .. //depot/projects/tty/sys/dev/fb/machfb.c#1 branch .. //depot/projects/tty/sys/dev/fb/machfbreg.h#1 branch .. //depot/projects/tty/sys/dev/fb/tga.c#4 integrate .. //depot/projects/tty/sys/dev/firewire/fwohci_pci.c#14 integrate .. //depot/projects/tty/sys/dev/firewire/fwohcireg.h#10 integrate .. //depot/projects/tty/sys/dev/if_ndis/if_ndis.c#8 integrate .. //depot/projects/tty/sys/dev/ixgb/if_ixgb.c#5 integrate .. //depot/projects/tty/sys/dev/ixgb/if_ixgb.h#4 integrate .. //depot/projects/tty/sys/dev/mc146818/mc146818.c#2 integrate .. //depot/projects/tty/sys/dev/mc146818/mc146818var.h#2 integrate .. //depot/projects/tty/sys/dev/mii/brgphy.c#9 integrate .. //depot/projects/tty/sys/dev/mii/miidevs#7 integrate .. //depot/projects/tty/sys/dev/mk48txx/mk48txx.c#5 integrate .. //depot/projects/tty/sys/dev/mk48txx/mk48txxreg.h#4 integrate .. //depot/projects/tty/sys/dev/mk48txx/mk48txxvar.h#2 integrate .. //depot/projects/tty/sys/dev/ofw/openfirmio.h#5 integrate .. //depot/projects/tty/sys/dev/ofw/openpromio.c#4 integrate .. //depot/projects/tty/sys/dev/sound/sbus/cs4231.c#3 integrate .. //depot/projects/tty/sys/dev/syscons/scgfbrndr.c#4 integrate .. //depot/projects/tty/sys/dev/syscons/scvtb.c#4 integrate .. //depot/projects/tty/sys/dev/syscons/syscons.c#14 integrate .. //depot/projects/tty/sys/dev/syscons/syscons.h#5 integrate .. //depot/projects/tty/sys/dev/uart/uart_kbd_sun.c#4 integrate .. //depot/projects/tty/sys/dev/usb/ohci_pci.c#10 integrate .. //depot/projects/tty/sys/dev/usb/usbdi.h#7 integrate .. //depot/projects/tty/sys/dev/vkbd/vkbd.c#3 integrate .. //depot/projects/tty/sys/geom/geom_event.c#11 integrate .. //depot/projects/tty/sys/geom/vinum/geom_vinum_drive.c#4 integrate .. //depot/projects/tty/sys/i386/i386/identcpu.c#11 integrate .. //depot/projects/tty/sys/i386/i386/initcpu.c#5 integrate .. //depot/projects/tty/sys/i386/i386/locore.s#11 integrate .. //depot/projects/tty/sys/i386/include/md_var.h#9 integrate .. //depot/projects/tty/sys/i386/isa/prof_machdep.c#7 integrate .. //depot/projects/tty/sys/kern/kern_switch.c#15 integrate .. //depot/projects/tty/sys/kern/subr_bus.c#12 integrate .. //depot/projects/tty/sys/kern/vfs_mount.c#15 integrate .. //depot/projects/tty/sys/modules/esp/Makefile#3 integrate .. //depot/projects/tty/sys/modules/netgraph/Makefile.inc#3 integrate .. //depot/projects/tty/sys/netgraph/netflow/netflow.c#5 integrate .. //depot/projects/tty/sys/netgraph/netgraph.h#8 integrate .. //depot/projects/tty/sys/netgraph/ng_base.c#11 integrate .. //depot/projects/tty/sys/netgraph/ng_ksocket.c#9 integrate .. //depot/projects/tty/sys/netgraph/ng_ppp.c#8 integrate .. //depot/projects/tty/sys/netgraph/ng_socket.c#8 integrate .. //depot/projects/tty/sys/netinet/tcp_output.c#11 integrate .. //depot/projects/tty/sys/netinet/tcp_sack.c#6 integrate .. //depot/projects/tty/sys/netinet/tcp_timer.c#10 integrate .. //depot/projects/tty/sys/netinet/tcp_usrreq.c#11 integrate .. //depot/projects/tty/sys/netinet/tcp_var.h#14 integrate .. //depot/projects/tty/sys/nfsclient/nfs_vfsops.c#15 integrate .. //depot/projects/tty/sys/pci/if_xl.c#13 integrate .. //depot/projects/tty/sys/pci/if_xlreg.h#9 integrate .. //depot/projects/tty/sys/powerpc/ofw/ofw_syscons.c#4 integrate .. //depot/projects/tty/sys/sparc64/central/central.c#5 integrate .. //depot/projects/tty/sys/sparc64/conf/GENERIC#13 integrate .. //depot/projects/tty/sys/sparc64/conf/NOTES#7 integrate .. //depot/projects/tty/sys/sparc64/creator/creator.h#3 integrate .. //depot/projects/tty/sys/sparc64/creator/creator_upa.c#5 integrate .. //depot/projects/tty/sys/sparc64/ebus/ebus.c#8 integrate .. //depot/projects/tty/sys/sparc64/fhc/fhc_central.c#5 integrate .. //depot/projects/tty/sys/sparc64/fhc/fhc_nexus.c#5 integrate .. //depot/projects/tty/sys/sparc64/include/eeprom.h#5 delete .. //depot/projects/tty/sys/sparc64/isa/isa.c#7 integrate .. //depot/projects/tty/sys/sparc64/sbus/dma_sbus.c#1 branch .. //depot/projects/tty/sys/sparc64/sbus/lsi64854.c#4 integrate .. //depot/projects/tty/sys/sparc64/sbus/lsi64854var.h#3 integrate .. //depot/projects/tty/sys/sparc64/sbus/sbus.c#11 integrate .. //depot/projects/tty/sys/sparc64/sbus/sbusvar.h#5 integrate .. //depot/projects/tty/sys/sparc64/sparc64/eeprom.c#6 integrate .. //depot/projects/tty/sys/sparc64/sparc64/eeprom_ebus.c#6 delete .. //depot/projects/tty/sys/sparc64/sparc64/eeprom_sbus.c#6 delete .. //depot/projects/tty/sys/sparc64/sparc64/nexus.c#7 integrate .. //depot/projects/tty/sys/sparc64/sparc64/ofw_machdep.c#6 integrate .. //depot/projects/tty/sys/sparc64/sparc64/rtc.c#2 integrate .. //depot/projects/tty/sys/sparc64/sparc64/sc_machdep.c#2 integrate .. //depot/projects/tty/sys/sys/ata.h#8 integrate .. //depot/projects/tty/sys/sys/fbio.h#6 integrate .. //depot/projects/tty/sys/ufs/ufs/ufs_vnops.c#11 integrate .. //depot/projects/tty/sys/vm/swap_pager.c#14 integrate .. //depot/projects/tty/sys/vm/vm_pager.c#12 integrate .. //depot/projects/tty/sys/vm/vm_pager.h#8 integrate .. //depot/projects/tty/sys/vm/vnode_pager.c#13 integrate .. //depot/projects/tty/tools/build/Makefile#4 integrate .. //depot/projects/tty/tools/regression/netinet/tcpconnect/tcpconnect.c#2 integrate .. //depot/projects/tty/tools/regression/sockets/listenclose/listenclose.c#2 integrate .. //depot/projects/tty/tools/regression/usr.bin/make/shell/builtin/Makefile#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/builtin/expected.status#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/builtin/expected.stderr#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/builtin/expected.stdout#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/builtin/sh.sh#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/builtin/test.t#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/meta/Makefile#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/meta/expected.status#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/meta/expected.stderr#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/meta/expected.stdout#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/meta/sh.sh#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/meta/test.t#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/path/Makefile#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/path/expected.status#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/path/expected.stderr#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/path/expected.stdout#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/path/sh.sh#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/path/test.t#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/path_select/Makefile#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/path_select/expected.status#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/path_select/expected.stderr#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/path_select/expected.stdout#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/path_select/sh.sh#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/path_select/test.t#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/replace/Makefile#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/replace/expected.status#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/replace/expected.stderr#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/replace/expected.stdout#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/replace/sh.sh#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/replace/test.t#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/select/Makefile#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/select/expected.status#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/select/expected.stderr#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/select/expected.stdout#1 branch .. //depot/projects/tty/tools/regression/usr.bin/make/shell/select/test.t#1 branch .. //depot/projects/tty/tools/tools/nanobsd/Customize/files#1 branch .. //depot/projects/tty/tools/tools/nanobsd/Customize/pkgs#1 branch .. //depot/projects/tty/tools/tools/nanobsd/Files/root/change_password#1 branch .. //depot/projects/tty/tools/tools/nanobsd/Files/root/save_sshkeys#1 branch .. //depot/projects/tty/tools/tools/nanobsd/Files/root/updatep1#1 branch .. //depot/projects/tty/tools/tools/nanobsd/Files/root/updatep2#1 branch .. //depot/projects/tty/tools/tools/nanobsd/Makefile#5 integrate .. //depot/projects/tty/tools/tools/nanobsd/i386.diskimage#5 integrate .. //depot/projects/tty/tools/tools/nanobsd/make.conf#5 integrate .. //depot/projects/tty/usr.bin/asa/asa.c#2 integrate .. //depot/projects/tty/usr.bin/awk/Makefile#4 integrate .. //depot/projects/tty/usr.bin/awk/b.c.diff#1 branch .. //depot/projects/tty/usr.bin/awk/main.c.diff#1 branch .. //depot/projects/tty/usr.bin/awk/run.c.diff#1 branch .. //depot/projects/tty/usr.bin/brandelf/brandelf.c#3 integrate .. //depot/projects/tty/usr.bin/c89/c89.1#3 integrate .. //depot/projects/tty/usr.bin/c89/c89.c#2 integrate .. //depot/projects/tty/usr.bin/c99/c99.1#3 integrate .. //depot/projects/tty/usr.bin/c99/c99.c#3 integrate .. //depot/projects/tty/usr.bin/catman/catman.c#5 integrate .. //depot/projects/tty/usr.bin/colldef/parse.y#3 integrate .. //depot/projects/tty/usr.bin/compress/zopen.c#3 integrate .. //depot/projects/tty/usr.bin/dirname/dirname.c#2 integrate .. //depot/projects/tty/usr.bin/du/du.1#5 integrate .. //depot/projects/tty/usr.bin/finger/finger.c#4 integrate .. //depot/projects/tty/usr.bin/from/from.1#2 integrate .. //depot/projects/tty/usr.bin/fstat/fstat.c#6 integrate .. //depot/projects/tty/usr.bin/ktrdump/ktrdump.c#4 integrate .. //depot/projects/tty/usr.bin/lastcomm/lastcomm.c#4 integrate .. //depot/projects/tty/usr.bin/less/Makefile#3 integrate .. //depot/projects/tty/usr.bin/less/lesspipe.sh#2 integrate .. //depot/projects/tty/usr.bin/less/zless.sh#1 branch .. //depot/projects/tty/usr.bin/make/arch.c#5 integrate .. //depot/projects/tty/usr.bin/make/arch.h#3 integrate .. //depot/projects/tty/usr.bin/make/job.c#9 integrate .. //depot/projects/tty/usr.bin/make/job.h#8 integrate .. //depot/projects/tty/usr.bin/make/lst.c#2 integrate .. //depot/projects/tty/usr.bin/make/lst.h#5 integrate .. //depot/projects/tty/usr.bin/make/main.c#13 integrate .. //depot/projects/tty/usr.bin/make/parse.c#10 integrate .. //depot/projects/tty/usr.bin/make/str.c#6 integrate .. //depot/projects/tty/usr.bin/make/str.h#3 integrate .. //depot/projects/tty/usr.bin/make/util.h#3 integrate .. //depot/projects/tty/usr.bin/make/var.c#10 integrate .. //depot/projects/tty/usr.bin/mesg/mesg.c#2 integrate .. //depot/projects/tty/usr.bin/mklocale/Makefile#3 integrate .. //depot/projects/tty/usr.bin/mklocale/yacc.y#7 integrate .. //depot/projects/tty/usr.bin/newkey/newkey.c#3 integrate .. //depot/projects/tty/usr.bin/nice/nice.c#2 integrate .. //depot/projects/tty/usr.bin/pathchk/pathchk.c#2 integrate .. //depot/projects/tty/usr.bin/printf/printf.c#6 integrate .. //depot/projects/tty/usr.bin/renice/renice.c#3 integrate .. //depot/projects/tty/usr.bin/rsh/rsh.c#5 integrate .. //depot/projects/tty/usr.bin/rup/rup.c#3 integrate .. //depot/projects/tty/usr.bin/ruptime/ruptime.c#3 integrate .. //depot/projects/tty/usr.bin/rusers/rusers.c#4 integrate .. //depot/projects/tty/usr.bin/rwall/rwall.c#3 integrate .. //depot/projects/tty/usr.bin/showmount/showmount.c#4 integrate .. //depot/projects/tty/usr.bin/time/time.c#3 integrate .. //depot/projects/tty/usr.bin/top/machine.c#6 integrate .. //depot/projects/tty/usr.bin/truncate/truncate.c#3 integrate .. //depot/projects/tty/usr.bin/ul/ul.1#5 integrate .. //depot/projects/tty/usr.bin/ul/ul.c#3 integrate .. //depot/projects/tty/usr.bin/unifdef/unifdef.1#5 integrate .. //depot/projects/tty/usr.bin/unifdef/unifdef.c#5 integrate .. //depot/projects/tty/usr.bin/vmstat/vmstat.c#8 integrate .. //depot/projects/tty/usr.bin/write/write.1#4 integrate .. //depot/projects/tty/usr.bin/xargs/xargs.1#8 integrate .. //depot/projects/tty/usr.bin/xstr/xstr.1#5 integrate .. //depot/projects/tty/usr.bin/xstr/xstr.c#3 integrate .. //depot/projects/tty/usr.bin/ypcat/ypcat.c#3 integrate .. //depot/projects/tty/usr.bin/ypmatch/ypmatch.c#3 integrate .. //depot/projects/tty/usr.sbin/arlcontrol/arlcontrol.c#2 integrate .. //depot/projects/tty/usr.sbin/bluetooth/bthidd/parser.y#3 integrate .. //depot/projects/tty/usr.sbin/bluetooth/bthidd/server.c#3 integrate .. //depot/projects/tty/usr.sbin/fwcontrol/fwcontrol.c#8 integrate .. //depot/projects/tty/usr.sbin/mount_portalfs/pt_file.c#5 integrate .. //depot/projects/tty/usr.sbin/rpc.lockd/kern.c#6 integrate .. //depot/projects/tty/usr.sbin/rpc.lockd/lockd_lock.c#6 integrate .. //depot/projects/tty/usr.sbin/syslogd/syslogd.c#12 integrate .. //depot/projects/tty/usr.sbin/ypserv/yp_dnslookup.c#5 integrate .. //depot/projects/tty/usr.sbin/ypserv/yp_main.c#4 integrate Differences ... ==== //depot/projects/tty/UPDATING#17 (text+ko) ==== @@ -198,7 +198,6 @@ # is listed here if you are upgrading from a really old current. - [7] make buildworld make kernel KERNCONF=YOUR_KERNEL_HERE [1] @@ -335,4 +334,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.403 2005/05/09 16:44:22 imp Exp $ +$FreeBSD: src/UPDATING,v 1.404 2005/05/16 05:37:32 imp Exp $ ==== //depot/projects/tty/bin/mv/mv.c#6 (text+ko) ==== @@ -42,7 +42,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/mv/mv.c,v 1.44 2005/01/10 08:39:23 imp Exp $"); +__FBSDID("$FreeBSD: src/bin/mv/mv.c,v 1.45 2005/05/19 21:33:48 mux Exp $"); #include #include @@ -351,11 +351,11 @@ return (1); } if (!WIFEXITED(status)) { - warn("%s: did not terminate normally", _PATH_CP); + warnx("%s: did not terminate normally", _PATH_CP); return (1); } if (WEXITSTATUS(status)) { - warn("%s: terminated with %d (non-zero) status", + warnx("%s: terminated with %d (non-zero) status", _PATH_CP, WEXITSTATUS(status)); return (1); } @@ -369,11 +369,11 @@ return (1); } if (!WIFEXITED(status)) { - warn("%s: did not terminate normally", _PATH_RM); + warnx("%s: did not terminate normally", _PATH_RM); return (1); } if (WEXITSTATUS(status)) { - warn("%s: terminated with %d (non-zero) status", + warnx("%s: terminated with %d (non-zero) status", _PATH_RM, WEXITSTATUS(status)); return (1); } ==== //depot/projects/tty/bin/sh/options.c#4 (text+ko) ==== @@ -36,7 +36,7 @@ #endif #endif /* not lint */ #include -__FBSDID("$FreeBSD: src/bin/sh/options.c,v 1.22 2005/02/16 05:17:58 gad Exp $"); +__FBSDID("$FreeBSD: src/bin/sh/options.c,v 1.23 2005/05/16 04:32:41 gad Exp $"); #include #include @@ -138,7 +138,7 @@ STATIC void options(int cmdline) { - char *p; + char *kp, *p; int val; int c; @@ -153,6 +153,25 @@ goto end_options1; if (p[0] == '-' && p[1] == '\0') goto end_options2; + /** + * For the benefit of `#!' lines in shell scripts, + * treat a string of '-- *#.*' the same as '--'. + * This is needed so that a script starting with: + * #!/bin/sh -- # -*- perl -*- + * will continue to work after a change is made to + * kern/imgact_shell.c to NOT token-ize the options + * specified on a '#!' line. A bit of a kludge, + * but that trick is recommended in documentation + * for some scripting languages, and we might as + * well continue to support it. + */ + if (p[0] == '-') { + kp = p + 1; + while (*kp == ' ' || *kp == '\t') + kp++; + if (*kp == '#' || *kp == '\0') + goto end_options2; + } } else if (c == '+') { val = 0; } else { ==== //depot/projects/tty/contrib/bzip2/CHANGES#2 (text+ko) ==== @@ -251,3 +251,25 @@ * added --fast and --best aliases for -1 -9 for gzip compatibility. + +1.0.3 (15 Feb 05) +~~~~~~~~~~~~~~~~~ +Fixes some minor bugs since the last version, 1.0.2. + +* Further robustification against corrupted compressed data. + There are currently no known bitstreams which can cause the + decompressor to crash, loop or access memory which does not + belong to it. If you are using bzip2 or the library to + decompress bitstreams from untrusted sources, an upgrade + to 1.0.3 is recommended. + +* The documentation has been converted to XML, from which html + and pdf can be derived. + +* Various minor bugs in the documentation have been fixed. + +* Fixes for various compilation warnings with newer versions of + gcc, and on 64-bit platforms. + +* The BZ_NO_STDIO cpp symbol was not properly observed in 1.0.2. + This has been fixed. ==== //depot/projects/tty/contrib/bzip2/FREEBSD-upgrade#2 (text+ko) ==== @@ -1,32 +1,27 @@ -$FreeBSD: src/contrib/bzip2/FREEBSD-upgrade,v 1.1 2002/02/01 16:34:13 sobomax Exp $ +$FreeBSD: src/contrib/bzip2/FREEBSD-upgrade,v 1.2 2005/05/16 18:56:30 obrien Exp $ Julian Seward's bzip2 originals can be found at: http://sources.redhat.com/bzip2/ Imported by: - cvs import -m "Virgin import (trimmed) of Bzip2 version 1.0.2." \ - src/contrib/bzip2 BZIP2 v1_0_2 + cvs import -m "Virgin import (trimmed) of Bzip2 version 1.0.3." \ + src/contrib/bzip2 BZIP2 v1_0_3 Notes: - 1. The following log shows details of trimming: + The following log shows details of trimming: + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + tar xvfz bzip2-1.0.3.tar.gz -X FREEBSD-Xlist + cd bzip2-1.0.3 + uuencode sample1.bz2 sample1.bz2 > sample1.bz2.uu + uuencode sample2.bz2 sample2.bz2 > sample2.bz2.uu + uuencode sample3.bz2 sample3.bz2 > sample3.bz2.uu + gzip -9 sample1.ref sample2.ref sample3.ref + uuencode sample1.ref.gz sample1.ref.gz > sample1.ref.gz.uu + uuencode sample2.ref.gz sample2.ref.gz > sample2.ref.gz.uu + uuencode sample3.ref.gz sample3.ref.gz > sample3.ref.gz.uu + rm sample1.bz2 sample1.ref.gz sample2.bz2 sample2.ref.gz + rm sample3.bz2 sample3.ref.gz - $ tar xvfz bzip2-1.0.2.tar.gz - $ cd bzip2-1.0.2 - $ rm bzdiff bzdiff.1 bzgrep bzgrep.1 bzip2.1.preformatted bzip2.txt - $ rm bzmore bzmore.1 dlltest.dsp libbz2.dsp manual.html manual.pdf - $ rm manual.ps manual_1.html manual_2.html manual_3.html manual_4.html - $ rm manual_abt.html manual_ovr.html manual_toc.html mk251.c - $ uuencode sample1.bz2 sample1.bz2 > sample1.bz2.uu - $ uuencode sample2.bz2 sample2.bz2 > sample2.bz2.uu - $ uuencode sample3.bz2 sample3.bz2 > sample3.bz2.uu - $ gzip -9 sample1.ref sample2.ref sample3.ref - $ uuencode sample1.ref.gz sample1.ref.gz > sample1.ref.gz.uu - $ uuencode sample2.ref.gz sample2.ref.gz > sample2.ref.gz.uu - $ uuencode sample3.ref.gz sample3.ref.gz > sample3.ref.gz.uu - $ rm sample1.bz2 sample1.ref.gz sample2.bz2 sample2.ref.gz - $ rm sample3.bz2 sample3.ref.gz - - -sobomax@FreeBSD.org -1 February 2002 +obrien@FreeBSD.org +15 May 2005 ==== //depot/projects/tty/contrib/bzip2/LICENSE#2 (text+ko) ==== @@ -1,6 +1,7 @@ -This program, "bzip2" and associated library "libbzip2", are -copyright (C) 1996-2002 Julian R Seward. All rights reserved. +This program, "bzip2", the associated library "libbzip2", and all +documentation, are copyright (C) 1996-2005 Julian R Seward. All +rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions @@ -35,5 +36,5 @@ Julian Seward, Cambridge, UK. jseward@acm.org -bzip2/libbzip2 version 1.0.2 of 30 December 2001 +bzip2/libbzip2 version 1.0.3 of 15 February 2005 ==== //depot/projects/tty/contrib/bzip2/Makefile#2 (text+ko) ==== @@ -7,9 +7,8 @@ RANLIB=ranlib LDFLAGS= -# Suitably paranoid flags to avoid bugs in gcc-2.7 BIGFILES=-D_FILE_OFFSET_BITS=64 -CFLAGS=-Wall -Winline -O2 -fomit-frame-pointer -fno-strength-reduce $(BIGFILES) +CFLAGS=-Wall -Winline -O -g $(BIGFILES) # Where you want it installed when you do 'make install' PREFIX=/usr @@ -96,7 +95,6 @@ echo ".so man1/bzmore.1" > $(PREFIX)/man/man1/bzless.1 echo ".so man1/bzdiff.1" > $(PREFIX)/man/man1/bzcmp.1 -distclean: clean clean: rm -f *.o libbz2.a bzip2 bzip2recover \ sample1.rb2 sample2.rb2 sample3.rb2 \ @@ -122,8 +120,12 @@ bzip2recover.o: bzip2recover.c $(CC) $(CFLAGS) -c bzip2recover.c -DISTNAME=bzip2-1.0.2 -tarfile: + +distclean: clean + rm -f manual.ps manual.html manual.pdf + +DISTNAME=bzip2-1.0.3 +dist: check manual rm -f $(DISTNAME) ln -sf . $(DISTNAME) tar cvf $(DISTNAME).tar \ @@ -139,9 +141,6 @@ $(DISTNAME)/bzlib.h \ $(DISTNAME)/bzlib_private.h \ $(DISTNAME)/Makefile \ - $(DISTNAME)/manual.texi \ - $(DISTNAME)/manual.ps \ - $(DISTNAME)/manual.pdf \ $(DISTNAME)/LICENSE \ $(DISTNAME)/bzip2.1 \ $(DISTNAME)/bzip2.1.preformatted \ @@ -157,9 +156,12 @@ $(DISTNAME)/sample2.bz2 \ $(DISTNAME)/sample3.bz2 \ $(DISTNAME)/dlltest.c \ - $(DISTNAME)/*.html \ + $(DISTNAME)/manual.html \ + $(DISTNAME)/manual.pdf \ + $(DISTNAME)/manual.ps \ $(DISTNAME)/README \ $(DISTNAME)/README.COMPILATION.PROBLEMS \ + $(DISTNAME)/README.XML.STUFF \ $(DISTNAME)/CHANGES \ $(DISTNAME)/libbz2.def \ $(DISTNAME)/libbz2.dsp \ @@ -175,18 +177,29 @@ $(DISTNAME)/bzmore.1 \ $(DISTNAME)/bzgrep \ $(DISTNAME)/bzgrep.1 \ - $(DISTNAME)/Makefile-libbz2_so + $(DISTNAME)/Makefile-libbz2_so \ + $(DISTNAME)/bz-common.xsl \ + $(DISTNAME)/bz-fo.xsl \ + $(DISTNAME)/bz-html.xsl \ + $(DISTNAME)/bzip.css \ + $(DISTNAME)/entities.xml \ + $(DISTNAME)/manual.xml \ + $(DISTNAME)/format.pl \ + $(DISTNAME)/xmlproc.sh gzip -v $(DISTNAME).tar -# For rebuilding the manual from sources on my RedHat 7.2 box -manual: manual.ps manual.pdf manual.html +# For rebuilding the manual from sources on my SuSE 9.1 box + +MANUAL_SRCS= bz-common.xsl bz-fo.xsl bz-html.xsl bzip.css \ + entities.xml manual.xml + +manual: manual.html manual.ps manual.pdf -manual.ps: manual.texi - tex manual.texi - dvips -o manual.ps manual.dvi +manual.ps: $(MANUAL_SRCS) + ./xmlproc.sh -ps manual.xml -manual.pdf: manual.ps - ps2pdf manual.ps +manual.pdf: $(MANUAL_SRCS) + ./xmlproc.sh -pdf manual.xml -manual.html: manual.texi - texi2html -split_chapter manual.texi +manual.html: $(MANUAL_SRCS) + ./xmlproc.sh -html manual.xml ==== //depot/projects/tty/contrib/bzip2/Makefile-libbz2_so#2 (text+ko) ==== @@ -1,6 +1,6 @@ # This Makefile builds a shared version of the library, -# libbz2.so.1.0.2, with soname libbz2.so.1.0, +# libbz2.so.1.0.3, with soname libbz2.so.1.0, # at least on x86-Linux (RedHat 7.2), # with gcc-2.96 20000731 (Red Hat Linux 7.1 2.96-98). # Please see the README file for some @@ -9,7 +9,7 @@ SHELL=/bin/sh CC=gcc BIGFILES=-D_FILE_OFFSET_BITS=64 -CFLAGS=-fpic -fPIC -Wall -Winline -O2 -fomit-frame-pointer -fno-strength-reduce $(BIGFILES) +CFLAGS=-fpic -fPIC -Wall -Winline -O -g OBJS= blocksort.o \ huffman.o \ @@ -20,13 +20,13 @@ bzlib.o all: $(OBJS) - $(CC) -shared -Wl,-soname -Wl,libbz2.so.1.0 -o libbz2.so.1.0.2 $(OBJS) - $(CC) $(CFLAGS) -o bzip2-shared bzip2.c libbz2.so.1.0.2 + $(CC) -shared -Wl,-soname -Wl,libbz2.so.1.0 -o libbz2.so.1.0.3 $(OBJS) + $(CC) $(CFLAGS) -o bzip2-shared bzip2.c libbz2.so.1.0.3 rm -f libbz2.so.1.0 - ln -s libbz2.so.1.0.2 libbz2.so.1.0 + ln -s libbz2.so.1.0.3 libbz2.so.1.0 clean: - rm -f $(OBJS) bzip2.o libbz2.so.1.0.2 libbz2.so.1.0 bzip2-shared + rm -f $(OBJS) bzip2.o libbz2.so.1.0.3 libbz2.so.1.0 bzip2-shared blocksort.o: blocksort.c $(CC) $(CFLAGS) -c blocksort.c ==== //depot/projects/tty/contrib/bzip2/README#2 (text+ko) ==== @@ -1,15 +1,15 @@ This is the README for bzip2, a block-sorting file compressor, version -1.0.2. This version is fully compatible with the previous public -releases, versions 0.1pl2, 0.9.0, 0.9.5, 1.0.0 and 1.0.1. +1.0.3. This version is fully compatible with the previous public +releases, versions 0.1pl2, 0.9.0, 0.9.5, 1.0.0, 1.0.1 and 1.0.2. -bzip2-1.0.2 is distributed under a BSD-style license. For details, +bzip2-1.0.3 is distributed under a BSD-style license. For details, see the file LICENSE. Complete documentation is available in Postscript form (manual.ps), -PDF (manual.pdf, amazingly enough) or html (manual_toc.html). A -plain-text version of the manual page is available as bzip2.txt. -A statement about Y2K issues is now included in the file Y2K_INFO. +PDF (manual.pdf) or html (manual.html). A plain-text version of the +manual page is available as bzip2.txt. A statement about Y2K issues +is now included in the file Y2K_INFO. HOW TO BUILD -- UNIX @@ -78,8 +78,7 @@ Nelson's churn program. Churn is an automated test driver which recursively traverses a directory structure, using bzip2 to compress and then decompress each file it encounters, and checking that the -decompressed data is the same as the original. There are more details -in Section 4 of the user guide. +decompressed data is the same as the original. @@ -119,9 +118,9 @@ PATENTS: To the best of my knowledge, bzip2 does not use any patented - algorithms. However, I do not have the resources available to - carry out a full patent search. Therefore I cannot give any - guarantee of the above statement. + algorithms. However, I do not have the resources to carry out + a patent search. Therefore I cannot give any guarantee of the + above statement. End of legalities. @@ -153,22 +152,26 @@ See the CHANGES file. +WHAT'S NEW IN 1.0.3 ? + + See the CHANGES file. + I hope you find bzip2 useful. Feel free to contact me at - jseward@acm.org + jseward@bzip.org if you have any suggestions or queries. Many people mailed me with comments, suggestions and patches after the releases of bzip-0.15, -bzip-0.21, and bzip2 versions 0.1pl2, 0.9.0, 0.9.5, 1.0.0 and 1.0.1, -and the changes in bzip2 are largely a result of this feedback. +bzip-0.21, and bzip2 versions 0.1pl2, 0.9.0, 0.9.5, 1.0.0, 1.0.1 and +1.0.2, and the changes in bzip2 are largely a result of this feedback. I thank you for your comments. At least for the time being, bzip2's "home" is (or can be reached via) -http://sources.redhat.com/bzip2. +http://www.bzip.org Julian Seward -jseward@acm.org +jseward@bzip.org -Cambridge, UK (and what a great town this is!) +Cambridge, UK. 18 July 1996 (version 0.15) 25 August 1996 (version 0.21) @@ -178,4 +181,5 @@ 8 June 1999 (bzip2, version 0.9.5) 4 Sept 1999 (bzip2, version 0.9.5d) 5 May 2000 (bzip2, version 1.0pre8) -30 December 2001 (bzip2, version 1.0.2pre1)+30 December 2001 (bzip2, version 1.0.2pre1) +15 February 2005 (bzip2, version 1.0.3) ==== //depot/projects/tty/contrib/bzip2/README.COMPILATION.PROBLEMS#2 (text+ko) ==== @@ -1,11 +1,10 @@ -bzip2-1.0 should compile without problems on the vast majority of +bzip2-1.0.3 should compile without problems on the vast majority of platforms. Using the supplied Makefile, I've built and tested it -myself for x86-linux, sparc-solaris, alpha-linux, x86-cygwin32 and -alpha-tru64unix. With makefile.msc, Visual C++ 6.0 and nmake, you can -build a native Win32 version too. Large file support seems to work -correctly on at least alpha-tru64unix and x86-cygwin32 (on Windows -2000). +myself for x86-linux and x86_64-linux. With makefile.msc, Visual C++ +6.0 and nmake, you can build a native Win32 version too. Large file +support seems to work correctly on at least alpha-tru64unix and +x86-cygwin32 (on Windows 2000). When I say "large file" I mean a file of size 2,147,483,648 (2^31) bytes or above. Many older OSs can't handle files above this size, @@ -22,7 +21,7 @@ support is, as far as I know, the Recommended Way to get correct large file support. For more details, see the Large File Support Specification, published by the Large File Summit, at - http://www.sas.com/standard/large.file/ + http://ftp.sas.com/standards/large.file As a general comment, if you get compilation errors which you think are related to large file support, try removing the above define from @@ -38,93 +37,3 @@ large file support, if you are feeling paranoid. Be aware though that any compilation problems which affect bzip2 will also affect spewG.c, alas. - - -Known problems as of 1.0pre8: -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -* HP/UX 10.20 and 11.00, using gcc (2.7.2.3 and 2.95.2): A large - number of warnings appear, including the following: - - /usr/include/sys/resource.h: In function `getrlimit': - /usr/include/sys/resource.h:168: - warning: implicit declaration of function `__getrlimit64' - /usr/include/sys/resource.h: In function `setrlimit': - /usr/include/sys/resource.h:170: - warning: implicit declaration of function `__setrlimit64' - - This would appear to be a problem with large file support, header - files and gcc. gcc may or may not give up at this point. If it - fails, you might be able to improve matters by adding - -D__STDC_EXT__=1 - to the BIGFILES variable in the Makefile (ie, change its definition - to - BIGFILES=-D_FILE_OFFSET_BITS=64 -D__STDC_EXT__=1 - - Even if gcc does produce a binary which appears to work (ie passes - its self-tests), you might want to test it to see if it works properly - on large files. - - -* HP/UX 10.20 and 11.00, using HP's cc compiler. - - No specific problems for this combination, except that you'll need to - specify the -Ae flag, and zap the gcc-specific stuff - -Wall -Winline -O2 -fomit-frame-pointer -fno-strength-reduce. - You should retain -D_FILE_OFFSET_BITS=64 in order to get large - file support -- which is reported to work ok for this HP/UX + cc - combination. - - -* SunOS 4.1.X. - - Amazingly, there are still people out there using this venerable old - banger. I shouldn't be too rude -- I started life on SunOS, and - it was a pretty darn good OS, way back then. Anyway: - - SunOS doesn't seem to have strerror(), so you'll have to use - perror(), perhaps by doing adding this (warning: UNTESTED CODE): - - char* strerror ( int errnum ) - { - if (errnum < 0 || errnum >= sys_nerr) - return "Unknown error"; - else - return sys_errlist[errnum]; - } - - Or you could comment out the relevant calls to strerror; they're - not mission-critical. Or you could upgrade to Solaris. Ha ha ha! - (what?? you think I've got Bad Attitude?) - - -* Making a shared library on Solaris. (Not really a compilation - problem, but many people ask ...) - - Firstly, if you have Solaris 8, either you have libbz2.so already - on your system, or you can install it from the Solaris CD. - - Secondly, be aware that there are potential naming conflicts - between the .so file supplied with Solaris 8, and the .so file - which Makefile-libbz2_so will make. Makefile-libbz2_so creates - a .so which has the names which I intend to be "official" as - of version 1.0.0 and onwards. Unfortunately, the .so in - Solaris 8 appeared before I decided on the final names, so - the two libraries are incompatible. We have since communicated - and I hope that the problems will have been solved in the next - version of Solaris, whenever that might appear. - - All that said: you might be able to get somewhere - by finding the line in Makefile-libbz2_so which says - - $(CC) -shared -Wl,-soname -Wl,libbz2.so.1.0 -o libbz2.so.1.0.2 $(OBJS) - - and replacing with - - $(CC) -G -shared -o libbz2.so.1.0.2 -h libbz2.so.1.0 $(OBJS) - - If gcc objects to the combination -fpic -fPIC, get rid of - the second one, leaving just "-fpic". - - -That's the end of the currently known compilation problems. ==== //depot/projects/tty/contrib/bzip2/blocksort.c#2 (text+ko) ==== @@ -8,7 +8,7 @@ This file is a part of bzip2 and/or libbzip2, a program and library for lossless, block-sorting data compression. - Copyright (C) 1996-2002 Julian R Seward. All rights reserved. + Copyright (C) 1996-2005 Julian R Seward. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions @@ -42,7 +42,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Julian Seward, Cambridge, UK. - jseward@acm.org + jseward@bzip.org bzip2/libbzip2 version 1.0 of 21 March 2000 This program is based on (at least) the work of: ==== //depot/projects/tty/contrib/bzip2/bzip2.1#2 (text+ko) ==== @@ -1,7 +1,7 @@ .PU .TH bzip2 1 .SH NAME -bzip2, bunzip2 \- a block-sorting file compressor, v1.0.2 +bzip2, bunzip2 \- a block-sorting file compressor, v1.0.3 .br bzcat \- decompresses files to stdout .br @@ -405,19 +405,19 @@ tries hard to detect I/O errors and exit cleanly, but the details of what the problem is sometimes seem rather misleading. -This manual page pertains to version 1.0.2 of +This manual page pertains to version 1.0.3 of .I bzip2. Compressed data created by this version is entirely forwards and backwards compatible with the previous public releases, versions -0.1pl2, 0.9.0, 0.9.5, 1.0.0 and 1.0.1, but with the following +0.1pl2, 0.9.0, 0.9.5, 1.0.0, 1.0.1 and 1.0.2, but with the following exception: 0.9.0 and above can correctly decompress multiple concatenated compressed files. 0.1pl2 cannot do this; it will stop after decompressing just the first file in the stream. .I bzip2recover -versions prior to this one, 1.0.2, used 32-bit integers to represent -bit positions in compressed files, so it could not handle compressed -files more than 512 megabytes long. Version 1.0.2 and above uses +versions prior to 1.0.2 used 32-bit integers to represent +bit positions in compressed files, so they could not handle compressed +files more than 512 megabytes long. Versions 1.0.2 and above use 64-bit ints on some platforms which support them (GNU supported targets, and Windows). To establish whether or not bzip2recover was built with such a limitation, run it without arguments. In any event @@ -427,9 +427,9 @@ .SH AUTHOR -Julian Seward, jseward@acm.org. +Julian Seward, jsewardbzip.org. -http://sources.redhat.com/bzip2 +http://www.bzip.org The ideas embodied in .I bzip2 @@ -447,6 +447,7 @@ von Roques encouraged me to look for faster sorting algorithms, so as to speed up compression. Bela Lubkin encouraged me to improve the worst-case compression performance. +Donna Robinson XMLised the documentation. >>> TRUNCATED FOR MAIL (1000 lines) <<<