Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 5 Dec 2003 14:08:44 -0800 (PST)
From:      Peter Wemm <peter@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 43466 for review
Message-ID:  <200312052208.hB5M8iaZ060442@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=43466

Change 43466 by peter@peter_daintree on 2003/12/05 14:08:29

	IFC @43465

Affected files ...

.. //depot/projects/hammer/lib/libc/amd64/gen/makecontext.c#4 integrate
.. //depot/projects/hammer/lib/libpthread/arch/amd64/amd64/enter_uts.S#3 integrate
.. //depot/projects/hammer/release/doc/en_US.ISO8859-1/errata/article.sgml#10 integrate
.. //depot/projects/hammer/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#41 integrate
.. //depot/projects/hammer/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#50 integrate
.. //depot/projects/hammer/rescue/rescue/Makefile#11 integrate
.. //depot/projects/hammer/sbin/Makefile#19 integrate
.. //depot/projects/hammer/sbin/cxconfig/Makefile#2 delete
.. //depot/projects/hammer/sbin/cxconfig/cxconfig.8#2 delete
.. //depot/projects/hammer/sbin/cxconfig/cxconfig.c#3 delete
.. //depot/projects/hammer/sbin/init/init.c#4 integrate
.. //depot/projects/hammer/sbin/mount/mount.c#8 integrate
.. //depot/projects/hammer/sbin/sconfig/Makefile#2 integrate
.. //depot/projects/hammer/sbin/sconfig/sconfig.8#2 integrate
.. //depot/projects/hammer/sbin/sconfig/sconfig.c#2 integrate
.. //depot/projects/hammer/sbin/umount/umount.c#9 integrate
.. //depot/projects/hammer/share/man/man4/man4.i386/cx.4#4 integrate
.. //depot/projects/hammer/sys/alpha/conf/GENERIC.hints#4 integrate
.. //depot/projects/hammer/sys/conf/files.i386#18 integrate
.. //depot/projects/hammer/sys/conf/files.pc98#19 integrate
.. //depot/projects/hammer/sys/conf/options.i386#19 integrate
.. //depot/projects/hammer/sys/dev/acpica/acpi_cpu.c#8 integrate
.. //depot/projects/hammer/sys/dev/ata/atapi-cam.c#13 integrate
.. //depot/projects/hammer/sys/dev/sound/pcm/channel.c#7 integrate
.. //depot/projects/hammer/sys/i386/acpica/madt.c#6 integrate
.. //depot/projects/hammer/sys/i386/conf/GENERIC#17 integrate
.. //depot/projects/hammer/sys/i386/conf/NOTES#24 integrate
.. //depot/projects/hammer/sys/i386/i386/local_apic.c#4 integrate
.. //depot/projects/hammer/sys/i386/i386/machdep.c#28 integrate
.. //depot/projects/hammer/sys/i386/i386/mptable.c#7 integrate
.. //depot/projects/hammer/sys/i386/include/cronyx.h#2 delete
.. //depot/projects/hammer/sys/i386/isa/cronyx.c#3 delete
.. //depot/projects/hammer/sys/i386/isa/cx.c#7 delete
.. //depot/projects/hammer/sys/i386/isa/cxreg.h#3 delete
.. //depot/projects/hammer/sys/i386/isa/if_cx.c#7 delete
.. //depot/projects/hammer/sys/modules/Makefile#31 integrate
.. //depot/projects/hammer/sys/modules/acpi/Makefile#10 integrate
.. //depot/projects/hammer/sys/pc98/conf/NOTES#12 integrate
.. //depot/projects/hammer/tools/tools/tinderbox/etc/releng_5.rc#2 integrate

Differences ...

==== //depot/projects/hammer/lib/libc/amd64/gen/makecontext.c#4 (text+ko) ====

@@ -25,7 +25,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/amd64/gen/makecontext.c,v 1.1 2003/07/19 04:41:08 deischen Exp $");
+__FBSDID("$FreeBSD: src/lib/libc/amd64/gen/makecontext.c,v 1.2 2003/12/05 01:36:44 peter Exp $");
 
 #include <sys/types.h>
 #include <sys/ucontext.h>
@@ -70,8 +70,12 @@
 	/* Allocate space for a maximum of 6 arguments on the stack. */
 	args = sp - 6;
 
-	/* Account for arguments on stack and align to 16 bytes. */
-	sp -= 8;
+	/*
+	 * Account for arguments on stack and do the funky C entry alignment.
+	 * This means that we need an 8-byte-odd alignment since the ABI expects
+	 * the return address to be pushed, thus breaking the 16 byte alignment.
+	 */
+	sp -= 7;
 
 	/* Add the arguments: */
 	va_start(ap, argc);

==== //depot/projects/hammer/lib/libpthread/arch/amd64/amd64/enter_uts.S#3 (text+ko) ====

@@ -25,7 +25,7 @@
  */
 
 #include <machine/asm.h>
-__FBSDID("$FreeBSD: src/lib/libpthread/arch/amd64/amd64/enter_uts.S,v 1.3 2003/08/02 22:39:10 davidxu Exp $");
+__FBSDID("$FreeBSD: src/lib/libpthread/arch/amd64/amd64/enter_uts.S,v 1.4 2003/12/05 01:41:43 peter Exp $");
 
 
 /*
@@ -35,7 +35,7 @@
 ENTRY(_amd64_enter_uts)
 	addq	%rcx, %rdx	/* get stack base */
 	andq	$~0xf, %rdx	/* align to 16 bytes */
+	subq	$8, %rdx	/* simulate "call" alignment */
 	movq	%rdx, %rsp	/* switch to UTS stack */
 	movq	%rdx, %rbp	/* set frame */
-	pushq	%rsi
-	ret
+	jmpq	*%rsi

==== //depot/projects/hammer/release/doc/en_US.ISO8859-1/errata/article.sgml#10 (text+ko) ====

@@ -38,7 +38,7 @@
     The &os; Project
     </corpauthor>
 
-    <pubdate>$FreeBSD: src/release/doc/en_US.ISO8859-1/errata/article.sgml,v 1.53 2003/10/06 04:20:26 bmah Exp $</pubdate>
+    <pubdate>$FreeBSD: src/release/doc/en_US.ISO8859-1/errata/article.sgml,v 1.54 2003/12/04 23:53:54 bmah Exp $</pubdate>
 
     <copyright>
       <year>2000</year>
@@ -198,6 +198,14 @@
       is unaffected, for example).
       More information can be found in security advisory 
       <ulink url="ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/advisories/FreeBSD-SA-03:18.openssl.asc">FreeBSD-SA-03:18</ulink>.</para>;
+
+    <para><application>BIND</application> contains the potential for a
+      denial-of-service attack.  This vulnerability has been addressed
+      by a vendor patch on the &release.prev; security fix branch and
+      by the import of a new version to the &release.branch;
+      development branch.  For more information, see 
+      <ulink url="ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/advisories/FreeBSD-SA-03:19.bind.asc">FreeBSD-SA-03:19</ulink>.</para>;
+
 ]]>
 
   </sect1>

==== //depot/projects/hammer/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#41 (text+ko) ====

@@ -29,7 +29,7 @@
 
 <sect1 id="support">
   <sect1info>
-    <pubdate>$FreeBSD: src/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml,v 1.203 2003/12/02 07:13:03 bmah Exp $</pubdate>
+    <pubdate>$FreeBSD: src/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml,v 1.205 2003/12/05 21:04:51 bmah Exp $</pubdate>
   </sect1info>
 
   <title>Supported Devices</title>
@@ -1004,6 +1004,9 @@
   <sect2>
     <title>Miscellaneous Networks</title>
 
+    <para arch="i386">Cronyx-Sigma synchronous / asynchronous serial
+      adapters (&man.cx.4; driver)</para>
+
     <para arch="i386">Granch SBNI12 point-to-point communications
     adapters (&man.sbni.4; driver)
     </para>
@@ -1122,6 +1125,7 @@
 
   <sect2>
     <title>Serial Interfaces</title>
+
     <para arch="i386,alpha,ia64,amd64"><quote>PC standard</quote> 8250, 16450, and 16550-based serial ports (&man.sio.4; driver)</para>
 
     <para arch="sparc64">Serial ports based on the SAB82532 serial

==== //depot/projects/hammer/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#50 (text+ko) ====

@@ -3,7 +3,7 @@
 
   <corpauthor>The FreeBSD Project</corpauthor>
 
-  <pubdate>$FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml,v 1.658 2003/12/01 00:17:33 bmah Exp $</pubdate>
+  <pubdate>$FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml,v 1.660 2003/12/05 21:34:31 bmah Exp $</pubdate>
 
   <copyright>
     <year>2000</year>
@@ -195,6 +195,11 @@
       is no longer needed when only a USB keyboard is connected.
       &merged;</para>
 
+    <para arch="i386">The &man.cx.4; driver for Cronyx Sigmal
+      serial interfaces has been overhauled.  As a part of this
+      update, the cxconfig userland configuration utility has been
+      replaced by a newer &man.sconfig.8; utility.</para>
+
     <para arch="i386,pc98">The DRM kernel modules have been updated from
       DRI CVS as of 12 November 2003.  Among other changes, this
       change includes a newly-ported SiS 300/305/540/630/730
@@ -343,10 +348,18 @@
 	to support serial ports on certain architectures, such as
 	ia64 and sparc64.</para>
 
+      <para>A new &man.utopia.4; driver supports 25MBit/sec,
+	155MBit/sec and 622MBit/sec ATM physical layer configuration,
+	status and statistics reporting for the most commonly use
+	ATM-PHY chips.</para>
+
       <para>The suspend/resume support for the &man.wi.4; driver
         now works correctly when the device is configured down.
         &merged;</para>
 
+      <para>The &man.wi.4; driver should once again work correctly
+	with Lucent 802.11b interfaces.</para>
+
       <para>The 802.11 support layer has been rewritten to allow for
 	future growth and new features.</para>
 
@@ -365,6 +378,18 @@
     <sect3 id="net-proto">
       <title>Network Protocols</title>
 
+      <para>The <literal>ip_flow</literal> feature in the IPv4 protocol
+	implementation has been replaced by the
+	<literal>ip_fastforward</literal> feature.
+	<literal>ip_fastforward</literal> attempts to speed up simple
+	cases of packet forwarding, processing a forwarded packet to
+	an outgoing interface without queues or netisrs.  If it cannot
+	handle a particular packet, it passes that packet to the normal
+	<literal>ip_input</literal> routines for processing.  This
+	feature can be enabled by setting the
+	<varname>net.inet.ip.fastforwarding</varname> sysctl variable
+	to <literal>1</literal>.
+
       <para>The <literal>IP_ONESBCAST</literal> option has been added
 	to enable undirected &man.ip.4; broadcasts to be sent to
 	specific network interfaces.</para>
@@ -557,6 +582,11 @@
 	</listitem>
       </itemizedlist>
 
+      <para>Support for NFSv4 has been added with the import of the
+ 	University of Michigan's Citi NFSv4 client implementation.
+ 	More information can be found in the &man.mount.nfs4.8; and
+ 	&man.idmapd.8; manual pages.</para>
+
     </sect3>
 
     <sect3 id="mm">
@@ -843,6 +873,15 @@
     <para>The supported release of <application>KDE</application> has
       been updated from 3.1.2 to 3.1.4. &merged;</para>
 
+    <para>The versions of <application>GNOME</application> and
+      <application>KDE</application> included on release disc 1
+      (and installable from the &man.sysinstall.8; <quote>X
+      Desktops</quote> menu) are now <quote>Lite Edition</quote>,
+      packages, rather than the more full-featured meta-packages.
+      These packages are streamlined to provide users with the core
+      essentials for each desktop, while still fitting within the
+      space constraints of release disc 1.</para>
+
   </sect2>
 
   <sect2 id="doc">

==== //depot/projects/hammer/rescue/rescue/Makefile#11 (text+ko) ====

@@ -1,4 +1,4 @@
-#$FreeBSD: src/rescue/rescue/Makefile,v 1.22 2003/12/02 21:52:14 brooks Exp $
+#$FreeBSD: src/rescue/rescue/Makefile,v 1.23 2003/12/03 17:12:35 imp Exp $
 #	@(#)Makefile	8.1 (Berkeley) 6/2/93
 
 PROG=	rescue
@@ -138,7 +138,7 @@
 	-lgeom -lkiconv -lmd -lreadline -lsbuf -lufs -lz 
 
 .if ${MACHINE_ARCH} == "i386"
-CRUNCH_PROGS_sbin+= cxconfig fdisk
+CRUNCH_PROGS_sbin+= sconfig fdisk
 CRUNCH_ALIAS_bsdlabel= disklabel
 #CRUNCH_PROGS+= mount_nwfs mount_smbfs
 #CRUNCH_LIBS+= -lncp -lsmb

==== //depot/projects/hammer/sbin/Makefile#19 (text+ko) ====

@@ -1,5 +1,5 @@
 #	@(#)Makefile	8.5 (Berkeley) 3/31/94
-# $FreeBSD: src/sbin/Makefile,v 1.129 2003/12/02 21:52:14 brooks Exp $
+# $FreeBSD: src/sbin/Makefile,v 1.130 2003/12/03 17:09:41 imp Exp $
 
 # XXX MISSING:		icheck ncheck
 
@@ -102,7 +102,7 @@
 .endif
 
 .if ${MACHINE_ARCH} == "i386"
-SUBDIR+=cxconfig
+SUBDIR+=sconfig
 .if ${MACHINE} == "pc98"
 SUBDIR+=fdisk_pc98
 .else

==== //depot/projects/hammer/sbin/init/init.c#4 (text+ko) ====

@@ -45,7 +45,7 @@
 static char sccsid[] = "@(#)init.c	8.1 (Berkeley) 7/15/93";
 #endif
 static const char rcsid[] =
-  "$FreeBSD: src/sbin/init/init.c,v 1.55 2002/12/17 21:23:36 green Exp $";
+  "$FreeBSD: src/sbin/init/init.c,v 1.56 2003/12/05 04:28:03 imp Exp $";
 #endif /* not lint */
 
 #include <sys/param.h>
@@ -1279,9 +1279,6 @@
 	int devlen;
 	char *old_getty, *old_window, *old_type;
 
-	if (! sessions)
-		return (state_func_t) multi_user;
-
 	/* 
 	 * mark all sessions for death, (!SE_PRESENT) 
 	 * as we find or create new ones they'll be marked as keepers,

==== //depot/projects/hammer/sbin/mount/mount.c#8 (text+ko) ====

@@ -42,7 +42,7 @@
 static char sccsid[] = "@(#)mount.c	8.25 (Berkeley) 5/8/95";
 #endif
 static const char rcsid[] =
-  "$FreeBSD: src/sbin/mount/mount.c,v 1.54 2003/08/07 04:51:41 imp Exp $";
+  "$FreeBSD: src/sbin/mount/mount.c,v 1.55 2003/12/05 09:36:56 iedowse Exp $";
 #endif /* not lint */
 
 #include <sys/param.h>
@@ -292,8 +292,8 @@
 		 * ':' will be correctly parsed only if the separator is '@'.
 		 * The definition of a valid hostname is taken from RFC 1034.
 		 */
-		if (vfslist == NULL && ((ep = strchr(argv[0], '@')) != NULL) ||
-		    ((ep = strchr(argv[0], ':')) != NULL)) {
+		if (vfslist == NULL && ((ep = strchr(argv[0], '@')) != NULL ||
+		    (ep = strchr(argv[0], ':')) != NULL)) {
 			if (*ep == '@') {
 				cp = ep + 1;
 				ep = cp + strlen(cp);
@@ -393,8 +393,7 @@
 	const char *vfstype, *spec, *name, *options, *mntopts;
 	int flags;
 {
-	const char *argv[100], **edir;
-	char *path, *cur;
+	const char *argv[100];
 	struct statfs sf;
 	pid_t pid;
 	int argc, i, status;
@@ -468,7 +467,8 @@
 		(void)snprintf(execname, sizeof(execname), "mount_%s", vfstype);
 		execvP(execname, _PATH_SYSPATH, (char * const *)argv);
 		if (errno == ENOENT) {
-			warn("exec mount_%s not found in %s", vfstype, path);
+			warn("exec mount_%s not found in %s", vfstype,
+			    _PATH_SYSPATH);
 		}
 		exit(1);
 		/* NOTREACHED */
@@ -531,13 +531,15 @@
 	if (verbose) {
 		if (sfp->f_syncwrites != 0 || sfp->f_asyncwrites != 0)
 			(void)printf(", writes: sync %ld async %ld",
-			    sfp->f_syncwrites, sfp->f_asyncwrites);
+			    (long)sfp->f_syncwrites, (long)sfp->f_asyncwrites);
 		if (sfp->f_syncreads != 0 || sfp->f_asyncreads != 0)
 			(void)printf(", reads: sync %ld async %ld",
-			    sfp->f_syncreads, sfp->f_asyncreads);
-		printf(", fsid ");
-		for (i = 0; i < sizeof(sfp->f_fsid); i++)
-			printf("%02x", ((u_char *)&sfp->f_fsid)[i]);
+			    (long)sfp->f_syncreads, (long)sfp->f_asyncreads);
+		if (sfp->f_fsid.val[0] != 0 || sfp->f_fsid.val[1] != 0) {
+			printf(", fsid ");
+			for (i = 0; i < sizeof(sfp->f_fsid); i++)
+				printf("%02x", ((u_char *)&sfp->f_fsid)[i]);
+		}
 	}
 	(void)printf(")\n");
 }

==== //depot/projects/hammer/sbin/sconfig/Makefile#2 (text+ko) ====

@@ -1,11 +1,5 @@
 # Cronyx Id: sbin.sconfig.Makefile,v 1.1.4.1 2003/02/17 12:51:24 rik Exp $
-# $FreeBSD: src/sbin/sconfig/Makefile,v 1.1 2003/12/03 07:59:49 imp Exp $
-
-PROG=	sconfig
-MAN=	sconfig.8
-
-.include <bsd.prog.mk>
-# $Id: sbin.sconfig.Makefile,v 1.1.4.1 2003/02/17 12:51:24 rik Exp $
+# $FreeBSD: src/sbin/sconfig/Makefile,v 1.2 2003/12/03 17:03:20 imp Exp $
 
 PROG=	sconfig
 MAN=	sconfig.8

==== //depot/projects/hammer/sbin/sconfig/sconfig.8#2 (text+ko) ====

@@ -1,458 +1,4 @@
-.\" $FreeBSD: src/sbin/sconfig/sconfig.8,v 1.1 2003/12/03 07:59:49 imp Exp $
-.Dd November 21, 2003
-.Dt SCONFIG 8
-.Os FreeBSD
-.Sh NAME
-.Nm sconfig
-.Nd channel configuration utility for Cronyx adapters
-.Sh SYNOPSIS
-.Nm
-.Op Fl aimsxeftuc
-.Op Ar device name
-.Op Ar data rate options
-.Op Ar protocol options ...
-.Op Ar interface options ...
-.Sh DESCRIPTION
-The
-.Nm
-utility is used for configuring the channel options of the Cronyx
-adapters. In asynchronous mode all the parameters should be set by standard
-.Xr stty 1
-utility, with
-.Nm
-you could set only few of them (see below).
-.Pp
-Some of the options could be set only on free channels, that is the
-corresponding network interface in 
-.Ar down
-state in the synchronous mode, and in the asynchronous mode the asynchronous
-terminal device
-.Pa /dev/tty*
-closed.
-.Pp
-Other channel options could be changed
-.Do on the fly
-.Dc .
-Generally, the channel options are set up during the operating system startup,
-for example from the
-.Pa /etc/rc
-file.
-.Pp
-Note, that not all options have a sense for every particular
-case, and an attempt to set some of them can hang up the channel or
-the whole adapter.
-.\"--------------------------------------------------------------
-.Ss "Information options"
-You can specify only one of these options. If information option is specified,
-sconfig will show corresponding information and will ignore all other options,
-except
-.Ar device name.
-See also description of the 
-.Ar device name.
-.Bl -tag -width 10n
-.It <none>
-This will show settings of the channel.
-.It Fl a
-Print all settings of the channel.
-.It Fl i
-Print interface settings, equal to the output of
-.Xr ifconfig 1
-command.
-.It Fl m
-Print modem signal status. The description of all signals can be found in
-any document related to the modems. Only LE signal should be described. If
-this signal is On, than some what use channel. If it is Off, than channel is
-free.
-.It Fl s
-Print brief channel statistics. This is general statistics. See also
-.Fl x
-,
-.Fl e
-,
-.Fl f
-,
-.Fl t
-and
-.Fl u
-options. For the description of output, see below.
-.Pp
-This statistics is very useful if something goes wrong. For example, if you
-have no any interrupts, than you use interrupt that is not registered in BIOS
-for use with ISA bus.
-.It Fl x
-Print full channel statistics. This options allows to see some more counters,
-but with less precision than with
-.Pa -s
-option.
-.It Fl e
-Print brief E1/G703 statistics. If you select this option, you will get
-statistics accumulated for period of time equal to 15 minutes. For the
-description of output, see below.
-.It Fl f
-Print full E1/G703 statistics. This option shows all E1/G703 statistics that
-shows previous option(
-.Fl e
-), but also total statistics for whole period of time and statistics for 24
-hours (if available). For the description of output, see below.
-.It Fl t
-Print brief E3/T3/STS-1 statistics. If you select this option, you will
-get statistics accumulated for period of time equal to 15 minutes. For
-the description of output, see below.
-.It Fl u
-Print full E3/T3/STS-1 statistics. This option shows all E3/T3/STS-1
-statistics that shows previous option(
-.Fl t
-), but also total statistics for whole period of time and statistics for 24
-hours (if available). For the description of output, see below.
-.It Fl c
-Cleans all kind of statistics. 
-.El
-.\"--------------------------------------------------------------
-.Ss "Device selection"
-Device is equal to the name of the interface that is used for a name of
-the interface that is sees
-.Nm ifconfig.
-The channel number depends on the order of loading drivers by the system.
-Some times people confuse channel number and adapter number because of the
-same spelling. Adapter number appears in kernel context, channel number
-in configuration context.
-.Bl -tag -width 10n
-.It <none>
-You can omit device name only if you want to get information. This will cause
-printing information about all available channels of Cronyx adapters. In the
-case you want to make some settings you MUST specify device name.
-.It cx##
-This is the channel name for the Sigma family of Cronyx adapters. (ISA bus)
-.It ct##
-This is the channel name for the Tau family of Cronyx adapters. (ISA bus)
-.It cp##
-This is the channel name for the Tau-PCI family of Cronyx adapters. (PCI bus)
-.It ce##
-This is the channel name for the Tau32-PCI family of Cronyx adapters. (PCI bus)
-.El
-.\"--------------------------------------------------------------
-.Ss "Data rate options"
-.Bl -tag -width 10n
-.It value
-If case of nonzero value it will cause setting data rate to given value and
-setting the internal clock source of the synchronization (in synchronous mode).
-Zero value is equal to the
-.Ar extclock.
-The transmitted data (TXD) are synchronized using the internal on-board timing
-generator, the internally generated timing signal is driven on the TXCOUT pin,
-and the signal on the TXCIN pin is ignored. This mode is used for direct
-terminal-to-terminal communication, e.g. for connecting two computers together
-in a synchronous mode via relatively short cable.  This method should also be
-used for testing channels with an external loopback connector.
-.It extclock
-Set the external timing clock source of synchronous channels. External clock
-mode is the most common method for connecting external modem hardware. In this
-mode the external timing signal is received on TXCIN pin of the connector,
-and it is used as a synchronization clock for transmitting data (TXD).
-.El
-.\"--------------------------------------------------------------
-.Ss "Protocol options"
-Note. These option could be set only if channel is free and they requires
-specifying of the device name.
-.Bl -tag -width 10n
-.It async
-Set asynchronous protocol (or mode). In this mode Cronyx adapters behave as a
-usual serial devices and you may work with them using usual serial utilities.
-All asynchronous settings are performed via serial configuration utilities. With
-.Nm sconfig
-you may set only a few of them. See also
-.Xr stty 1 .
-(Only for Sigma family)
-.It cisco
-Set the Cisco HDLC synchronous protocol.
-.It fr
-Set the Frame Relay synchronous protocol (ANSI T1.617 Annex D).
-.It ppp
-Set the PPP synchronous protocol. Parameters to the PPP could be set by the
-command
-.Xr spppcontrol 1 .
-.It keepalive=on, keepalive=off
-Turns on/off sending keepalive messages. This option is used only for
-synchronous PPP. If this option is on, than PPP will periodically send
-echo-request messages. If it would not receive any echo-reply messages for
-some (definite) period of time it will break connection. It is used for
-tracking line state.
-.It idle
-You are using NETGRAPH. Protocol depends on connected module.
-.El
-.\"--------------------------------------------------------------
-.Ss "Interface options"
-Not all of these options could be set on running channel and not all of them
-are suits to all kind of adapters/channels. In all dual state options off is
-default value. All this options is not applicable in asynchronous mode, except
-debug option.
-.Bl -tag -width 10n
-.It port=rs232, port=v35, port=rs449
-Set port type for old Sigma models. 
-.It cfg=A, cfg=B, cfg=C
-Set configuration for the adapter. This option could be set only for Tau/E1
-and Tau/G703 and only if all channels are not running.
-.Ar cfg=A
-- Two independent E1/G703 channels. This is default setting.
-.Ar cfg=B (Only for ISA models)
-- For Tau/G703 this mean one G703 channel and one digital channel.
-For Tau/E1 first physical channel divides on to subchannels. One of them
-goes to the first logical channel and another one goes to the second physical
-channel. Second (logical) channel is digital channel.
-.Ar cfg=C
-- This configuration is used only for E1 models. In this case first
-physical channel consists of three data flows. Two of them go to two
-(logical) channels. The last one goes to the second physical channel. On new
-models (Tau32-PCI, Tau-PCI/2E1 and Tau-PCI/4E1) this configuration means single source
-of synchronization and passing all unused (in both channels) timeslots from
-one channel to other. For the detailed description of the configuration see
-your documentation to the adapter. This option could not be set on running
-channel.
-.It loop=on, loop=off
-Turn on/off internal loopback. This mode is useful for testing. Switch on this
-option and try to send something. If you have no any interrupt, than, probably,
-you forgot to switch using IRQ for PCI to ISA bus. Check your BIOS settings.
-.It rloop=on, rloop=off (Only for Tau32-PCI and Tau-PCI/E3)
-Turn on/off remote loopback. This mode is also useful for testing.
-.It dpll=on, dpll=off
-Turn on/off digital phase locked loop mode (DPLL). When enabled, the receiver
-timing clock signal is derived from the received data. Must be used with NRZI
-encoding, to avoid the synchronization loss.
-.It nrzi=on, nrzi=off
-Turn on/off nrzi encoding. In off state nrz encoding is used. NRZ - the zero
-bit is transmitted by the zero signal level, the one bit - by the positive
-signal level. NRZI - the bit number zero is transmitted by the change of the
-signal level, the one bit - by the constant signal level. Commonly is used with
-dpll=on option.
-.It invclk=on, invclk=off
-Invert the both transmit and receive clock signals (Tau and Tau-PCI only).
-.It invrclk=on, invrclk=off
-Invert the receive clock signals (Tau-PCI only).
-.It invtclk=on, invtclk=off
-Invert the transmit clock signals (Tau-PCI only).
-.It higain=on, higain=off
-Turn on/off increasing the E1 receiver non linear sensitivity to -30 dB (E1
-only). In of state the sensitivity is -12 dB. This allows increasing line
-distance.
-.It cablen=on, cablen=off (Only for Tau-PCI/T3 and Tau-PCI/STS-1)
-Turn on/off adjusting transmit signal for long cable T3/STS-1.
-.It monitor=on, monitor=off
-Turn on/off increasing the E1 receiver lines sensitivity to -30 dB
-(Tau32-PCI, Tau-PCI/2E1 and Tau-PCI/4E1 only). This could be used for interception
-purposes.
-.It phony=on, phony=off
-Turn on/off the so-called phony mode (Tau32-PCI and Tau-PCI E1 family only). This mode allows
-receiving raw CEPT frames from E1 line. Raw frames could be accessed, for
-example, via raw protocol. Packets would come at rate of 500 frames per second
-with length 16xN (for Tau-PCI/E1 model), where N is the number of timeslots. For
-Tau-PCI/2E1 and Tau-PCI/4E1 N should be equal to 32 independently from number of
-used timeslots.
-.It unfram=on, unfram=off
-Turn on/off unframed mode (Tau32-PCI, Tau-PCI/2E1 and Tau-PCI/4E1 only).
-.Ar unfram=on
-switches channel to unframed G.703 mode.
-.Ar unfram=off
-switches channel to framed E1 (G.704 mode). 
-.It scrambler=on, scrambler=off
-Turn on/off the scrambling of G.703 data (Tau32-PCI, Tau-PCI/G.703 and Tau-PCI/2E1,
-Tau-PCI/4E1 in unframed mode only).
-.It use16=on, use16=off
-Turn on/off the usage of 16-th timeslot for data transmission (Tau32-PCI and Tau-PCI E1 family only).
-Normally 16-th timeslot is used for signaling information (multiframing CAS).
-.It crc4=on, crc4=off
-Turn on/off CRC4 superframe mode (E1 only). 
-.It syn=int, syn=rcv, syn=rcv0, syn=rcv1, syn=rcv2, sync=rcv3
-.Ar int
-- use an internal clock generator for G703 transmitter
-(clock master). 
-.Ar rcv
-- use the G703 receiver data clock as the transmit clock
-(clock slave). 
-.Ar rcv0, rcv1, rcv2, rcv3
-- use the G703 receiver clock of the other channel
-(E1 models only). 
-.It dir=<number>
-Binds logical channel to the physical channel (Tau32-PCI, Tau-PCI/2E1 and Tau-PCI/4E1
-only). Using this parameter you could, for example, split E1 physical channel
-into several channels.
-.It ts=interval
-Set up the list of timeslots to use by the channel (E1 only). The
-timeslots are numbered from 1 to 31, and are separated by comma or minus sign,
-giving an interval. For example: "ts=1-3,5,17". 
-.It pass=interval
-Set up the list of timeslots, translated to the E1 subchannel in cfg=B and
-cfg=C configurations (Tau/E1 only). 
-.It debug=0, debug=1, debug=2
-Turn on/off debug messages.
-.Ar 0
-- turn off debug messages.
-.Ar 1
-- turn on debug
-messages, equal to the
-.Ar debug
-option to the
-.Xr ifconfig 8
-utility.
-.Ar 2
-- high intensive debug message, developers only.
-.El
-.\"--------------------------------------------------------------
-.Sh EXAMPLES
-Set up the channel 1 for use with the HDSL modem or any other
-synchronous leased-line modem, and PPP/HDLC protocol (for Sigma):
-.Bd -literal -offset indent
-sconfig cx1 ppp extclock
-ifconfig cx1 158.250.244.2 158.250.244.1 up
-.Ed
-.Pp
-Set up the channel 0 of Tau/E1 for use with the Cisco protocol
-over E1 link, with the single virtual connection.
-The DLCI number is detected automatically.
-Use timeslots 1-10:
-.Bd -literal -offset indent
-sconfig ct0 cisco ts=1-10
-ifconfig ct0 158.250.244.2 158.250.244.1 up
-.Ed
-.Pp
-Set up the channel 0 for the synchronous null-modem link to the nearby computer,
-internal clock source, 256000 bits/sec, protocol Cisco/HDLC (for Tau):
-.Bd -literal -offset indent
-sconfig ct0 cisco 256000
-ifconfig ct0 200.1.1.1 200.1.1.2 up
-.Ed
-.Pp
-Set up the channel 1 for the leased line link using data-only
-null-modem cable (or modems like Zelax+ M115). Synchronous DPLL mode, 128000
-bits/sec, protocol PPP/HDLC, NRZI encoding (for Sigma):
-.Bd -literal -offset indent
-sconfig cx1 ppp 128000 nrzi=on dpll=on
-ifconfig cx1 158.250.244.2 158.250.244.1 up
-.Ed
-.\"--------------------------------------------------------------
-.Sh DIAGNOSTICS
-This section contains description of abbreviations used by
-.Nm sconfig
-while displaying various statistics. For description of options connected with
-statistics see above.
-.\"--------------------------------------------------------------
-.Ss Statistics
-When running, the driver gathers the statistics about the channels, which
-could be accessed via sconfig utility or by
-.Xr ioctl 2
-call
-.Ar SERIAL_GETSTAT.
-.Bl -tag -width 10n
-.It Rintr
-The total number of receive interrupts. 
-.It Tintr
-The total number of transmit interrupts. 
-.It Mintr
-The total number of modem interrupts. 
-.It Ibytes
-The total bytes received. 
-.It Ipkts
-The total packets received (for HDLC mode). 
-.It Ierrs
-The number of receive errors. 
-.It Obytes
-The total bytes transmitted. 
-.It Opkts
-The total packets transmitted (for HDLC mode). 
-.It Oerrs The number of transmit errors.
-.El
-.\"--------------------------------------------------------------
-.Ss E1/G.703 Statistics
-For E1 and G.703 channels the SNMP-compatible statistics data are gathered
-(see RFC 1406). It could be accessed via sconfig utility or by ioctl(2) call
-.Ar SERIAL_GETESTAT .
-.Bl -tag -width 10n 
-.It Unav (uas)
-Unavailable seconds - receiving all ones, or loss of carrier, or loss of
-signal.
-.It Degr (dm)
-Degraded minutes - having error rate more than 10e-6, not counting unavailable
-and severely errored seconds.
-.It Bpv (bpv)
-HDB3 bipolar violation errors. 
-.It Fsyn (fse)
-Frame synchronization errors (E1 only). 
-.It CRC (crce)
-CRC4 errors (E1). 
-.It RCRC (rcrce)
-Remote CRC4 errors: E-bit counter (E1). 
-.It Err (es)
-Errored seconds - any framing errors, or out of frame sync, or any slip events.
-.It Lerr (les)
-Line errored seconds - any BPV. 
-.It Sev (ses)
-Severely errored seconds - 832 or more framing errors, or 2048 or more bipolar
-violations. 
-.It Bur (bes)
-Bursty errored seconds - more than 1 framing error, but not severely errored. 
-.It Oof (oofs)
-Severely errored framing seconds - out of frame sync. 
-.It Slp (css)
-Controlled slip second -- any slip buffer overflow or underflow.
-.El
-.\"--------------------------------------------------------------
-.Ss E1/G.703 Status
-.Nm sconfig
-utility also prints the E1/G.703 channel status. The status could have the
-following values (nonexclusive):
-.Bl -tag -width 10n 
-.It Ok
-The channel is in valid state, synchronized. 
-.It LOS
-Loss of sync. 
-.It AIS
-Receiving unframed all ones (E1 only). 
-.It LOF
-Loss of framing (E1 only). 
-.It LOMF
-Loss of multiframing (E1 only). 
-.It FARLOF
-Receiving remote alarm (E1 only). 
-.It AIS16
-Receiving all ones in timeslot 16 (E1 only). 
-.It FARLOMF
-Receiving distant multiframe alarm (E1 only). 
-.It TSTREQ
-Receiving test request code (G.703 only). 
-.It TSTERR
-Test error (G.703 only).
-.El
-.\"--------------------------------------------------------------
-.Sh SEE ALSO
-.Xr stty 1
-.Xr ioctl 2
-.Xr sppp 4
-.Xr spppconrol 8
-.Xr ifconfig 8
-.Xr route 8
-.\"--------------------------------------------------------------
-.Sh HISTORY
-This utility is a replacement of utilities
-.Nm cxconfig
-and
-.Nm ctconfig
-that was used in past with FreeBSD drivers. Those two utilities and the present
-utility are not compatible. And therefore all scripts should be rewritten. More
-over, Linux and FreeBSD version of present utility not fully compatible.
-.\"--------------------------------------------------------------
-.Sh BUGS
-All software produced by Cronyx Engineering is thoroughly tested. But
-as created by the man it can contain some
-.So
-BUGS
-.Sc .
-If you have caught one, try to localize it and send a letter with description
-of this bug and all operation that you have done. We will try to reproduce
-an error and fix it.
-.\"--------------------------------------------------------------
-.Sh CONTACT
-E-mail: info@cronyx.ru
-.Pp
-http://www.cronyx.ru
+.\" $FreeBSD: src/sbin/sconfig/sconfig.8,v 1.2 2003/12/03 17:03:20 imp Exp $
 .Dd November 21, 2003
 .Dt SCONFIG 8
 .Os FreeBSD

==== //depot/projects/hammer/sbin/sconfig/sconfig.c#2 (text+ko) ====

@@ -15,1144 +15,7 @@
  * all derivative works or modified versions.
  *
  * Cronyx Id: sconfig.c,v 1.2.2.4 2003/06/20 16:20:48 rik Exp $
- * $FreeBSD: src/sbin/sconfig/sconfig.c,v 1.1 2003/12/03 07:59:49 imp Exp $
- */
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <unistd.h>
-#include <fcntl.h>
-#include <errno.h>
-#include <ctype.h>
-#include <sys/ioctl.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <sys/socket.h>
-#include <net/if.h>
-#include <machine/cserial.h>
-
-#define MAXCHAN 128
-
-int vflag, eflag, sflag, mflag, cflag, fflag, iflag, aflag, xflag;
-int tflag, uflag;
-char mask[48];
-int adapter_type;		/* 0-sigma, 1-tau, 2-tau */
-char chan_name[16];
-
-extern char *optarg;
-extern int optind;
-
-static void
-usage (void)
-{
-	printf(
-"Serial Adapter Configuration Utility\n"
-"Copyright (C) 1998-1999 Cronyx Engineering Ltd.\n"
-"See also man sconfig (8)\n"
-"Usage:\n"
-"\tsconfig [-aimsxeftuc] [device [parameters ...]]\n"
-"\n"
-"Options:\n"
-"\t<no options>\t\t -- print channel options\n"
-"\t-a\t\t\t -- print all settings of the channel\n"
-"\t-i\t\t\t -- print network interface status\n"
-"\t-m\t\t\t -- print modem signal status\n"
-"\t-s\t\t\t -- print channel statistics\n"
-"\t-x\t\t\t -- print extended channel statistics\n"
-"\t-e\t\t\t -- print short E1/G703 statistics\n"
-"\t-f\t\t\t -- print full E1/G703 statistics\n"
-"\t-t\t\t\t -- print short E3/T3/STS-1 statistics\n"
-"\t-u\t\t\t -- print full E3/T3/STS-1 statistics\n"
-"\t-c\t\t\t -- clear statistics\n"
-"\nParameters:\n"
-"\t<number>\t\t -- baud rate, internal clock\n"
-"\textclock\t\t -- external clock (default)\n"
-"\nProtocol options:\n"
-"\tasync\t\t\t -- asynchronous protocol\n"
-#ifdef __linux__
-"\tsync\t\t\t -- synchronous protocol\n"
-#endif
-"\tcisco\t\t\t -- Cisco/HDLC protocol\n"
-"\tfr\t\t\t -- Frame Relay protocol\n"
-#ifdef __linux__
-"\t    dlci<number>\t -- Add new DLCI\n"
-#endif
-"\tppp\t\t\t -- PPP protocol\n"
-#ifdef __linux__
-"\trbrg\t\t\t -- Remote bridge\n"
-"\traw\t\t\t -- raw HDLC protocol\n"
-"\tpacket\t\t\t -- packetized HDLC protocol\n"
-"\tidle\t\t\t -- no protocol\n"
-#else
-"\t    keepalive={on,of}\t -- Enable/disable keepalive\n"
-#endif
-"\nInterface options:\n"
-"\tport={rs232,v35,rs449}\t -- port type (for old models of Sigma)\n"
-"\tcfg={A,B,C}\t\t -- adapter configuration\n"
-"\tloop={on,off}\t\t -- internal loopback\n"
-"\trloop={on,off}\t\t -- remote loopback\n"
-"\tdpll={on,off}\t\t -- DPLL mode\n"
-"\tnrzi={on,off}\t\t -- NRZI encoding\n"
-"\tinvclk={on,off}\t\t -- invert receive and transmit clock\n"
-"\tinvrclk={on,off}\t -- invert receive clock\n"
-"\tinvtclk={on,off}\t -- invert transmit clock\n"
-"\thigain={on,off}\t\t -- E1 high non linear input sensitivity \n\t\t\t\t    (long line)\n"
-"\tmonitor={on,off}\t -- E1 high linear input sensitivity \n\t\t\t\t    (interception mode)\n"
-"\tphony={on,off}\t\t -- E1 telepnony mode\n"
-"\tunfram={on,off}\t\t -- E1 unframed mode\n"
-"\tscrambler={on,off}\t -- G.703 scrambling mode\n"
-"\tuse16={on,off}\t\t -- E1 timeslot 16 usage\n"
-"\tcrc4={on,off}\t\t -- E1 CRC4 mode\n"
-"\tsyn={int,rcv,rcvX}\t -- G.703 transmit clock\n"
-"\tts=...\t\t\t -- E1 timeslots\n"
-"\tpass=...\t\t -- E1 subchannel timeslots\n"
-"\tdir=<num>\t\t -- connect channel to link<num>\n"
-/*"\tcablen={on,off}\t\t -- T3/STS-1 high transmitter output for long cable\n"*/
-"\tdebug={0,1,2}\t\t -- enable/disable debug messages\n"
-	);
-	exit (0);
-}
-
-static unsigned long
-scan_timeslots (char *s)
-{
-	char *e;
-	long v;
-	int i;
-	unsigned long ts, lastv;
-
-	ts = lastv = 0;
-	for (;;) {
-		v = strtol (s, &e, 10);
-		if (e == s)
-			break;
-		if (*e == '-') {
-			lastv = v;
-			s = e+1;
-			continue;
-		}
-		if (*e == ',')
-			++e;
-
-		if (lastv)
-			for (i=lastv; i<v; ++i)
-				ts |= 1L << i;
-		ts |= 1L << v;
-
-		lastv = 0;
-		s = e;
-	}
-	return ts;
-}
-
-static int
-ppp_ok (void)
-{
-#ifdef __linux__
-	int s, p;
-	struct ifreq ifr;
-	char pttyname[32];
-	char *p1, *p2;
-	int i, j;
-	int ppp_disc = N_PPP;
-
-	/*
-	 * Open a socket for doing the ioctl operations.
-	 */
-	s = socket (AF_INET, SOCK_DGRAM, 0);
-	if (s < 0) {
-		fprintf (stderr, "Error opening socket.\n");
-		return 0;

>>> TRUNCATED FOR MAIL (1000 lines) <<<



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200312052208.hB5M8iaZ060442>