Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 8 Apr 2002 00:01:12 -0700 (PDT)
From:      Peter Wemm <peter@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 9360 for review
Message-ID:  <200204080701.g3871Ck02960@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://people.freebsd.org/~peter/p4db/chv.cgi?CH=9360

Change 9360 by peter@peter_thunder on 2002/04/08 00:00:11

	IFC @9359

Affected files ...

... //depot/projects/ia64/lib/libc/locale/euc.c#3 integrate
... //depot/projects/ia64/lib/libpam/modules/pam_kerberosIV/Makefile#3 integrate
... //depot/projects/ia64/lib/libpam/modules/pam_unix/pam_unix.c#6 integrate
... //depot/projects/ia64/release/doc/en_US.ISO8859-1/installation/sparc64/install.sgml#5 integrate
... //depot/projects/ia64/release/doc/fr_FR.ISO8859-1/relnotes/common/new.sgml#3 integrate
... //depot/projects/ia64/release/picobsd/floppy.tree/etc/rc1#3 integrate
... //depot/projects/ia64/release/picobsd/tinyware/simple_httpd/simple_httpd.c#2 integrate
... //depot/projects/ia64/sbin/disklabel/Makefile#3 integrate
... //depot/projects/ia64/sbin/disklabel/disklabel.c#8 integrate
... //depot/projects/ia64/sbin/mount_std/mount_std.c#3 integrate
... //depot/projects/ia64/sbin/newfs/mkfs.c#8 integrate
... //depot/projects/ia64/sbin/newfs/newfs.c#9 integrate
... //depot/projects/ia64/sbin/newfs/newfs.h#3 integrate
... //depot/projects/ia64/sbin/routed/parms.c#3 integrate
... //depot/projects/ia64/sbin/routed/routed.8#4 integrate
... //depot/projects/ia64/share/mk/bsd.lib.mk#7 integrate
... //depot/projects/ia64/share/mk/bsd.prog.mk#4 integrate
... //depot/projects/ia64/share/mk/bsd.sys.mk#4 integrate
... //depot/projects/ia64/sys/alpha/alpha/machdep.c#10 integrate
... //depot/projects/ia64/sys/dev/ata/ata-dma.c#10 integrate
... //depot/projects/ia64/sys/dev/ata/ata-pci.c#10 integrate
... //depot/projects/ia64/sys/dev/mii/miidevs#3 integrate
... //depot/projects/ia64/sys/dev/mii/miidevs.h#3 integrate
... //depot/projects/ia64/sys/dev/mii/rlphy.c#4 integrate
... //depot/projects/ia64/sys/dev/ppbus/if_plip.c#2 integrate
... //depot/projects/ia64/sys/dev/ppbus/lpbb.c#3 integrate
... //depot/projects/ia64/sys/dev/ppbus/lpt.c#2 integrate
... //depot/projects/ia64/sys/dev/ppbus/pcfclock.c#2 integrate
... //depot/projects/ia64/sys/dev/ppbus/ppi.c#2 integrate
... //depot/projects/ia64/sys/dev/ppbus/pps.c#3 integrate
... //depot/projects/ia64/sys/dev/ppbus/vpo.c#2 integrate
... //depot/projects/ia64/sys/dev/usb/hid.c#3 integrate
... //depot/projects/ia64/sys/dev/usb/if_aue.c#8 integrate
... //depot/projects/ia64/sys/dev/usb/if_auereg.h#4 integrate
... //depot/projects/ia64/sys/dev/usb/if_cue.c#6 integrate
... //depot/projects/ia64/sys/dev/usb/if_cuereg.h#3 integrate
... //depot/projects/ia64/sys/dev/usb/if_kue.c#6 integrate
... //depot/projects/ia64/sys/dev/usb/if_kuereg.h#3 integrate
... //depot/projects/ia64/sys/dev/usb/ohci.c#6 integrate
... //depot/projects/ia64/sys/dev/usb/ohcivar.h#5 integrate
... //depot/projects/ia64/sys/dev/usb/ugraphire_rdesc.h#1 branch
... //depot/projects/ia64/sys/dev/usb/uhci.c#6 integrate
... //depot/projects/ia64/sys/dev/usb/uhcireg.h#3 integrate
... //depot/projects/ia64/sys/dev/usb/uhcivar.h#5 integrate
... //depot/projects/ia64/sys/dev/usb/uhid.c#5 integrate
... //depot/projects/ia64/sys/dev/usb/uhub.c#4 integrate
... //depot/projects/ia64/sys/dev/usb/ukbd.c#4 integrate
... //depot/projects/ia64/sys/dev/usb/ums.c#7 integrate
... //depot/projects/ia64/sys/dev/usb/usb.c#5 integrate
... //depot/projects/ia64/sys/dev/usb/usb_port.h#6 integrate
... //depot/projects/ia64/sys/dev/usb/usb_subr.c#5 integrate
... //depot/projects/ia64/sys/dev/usb/usbdevs#10 integrate
... //depot/projects/ia64/sys/dev/usb/usbdevs.h#9 integrate
... //depot/projects/ia64/sys/dev/usb/usbdevs_data.h#9 integrate
... //depot/projects/ia64/sys/dev/usb/usbdi.c#5 integrate
... //depot/projects/ia64/sys/dev/usb/usbdi.h#4 integrate
... //depot/projects/ia64/sys/dev/usb/usbdi_util.c#3 integrate
... //depot/projects/ia64/sys/dev/usb/usbdi_util.h#3 integrate
... //depot/projects/ia64/sys/dev/usb/usbdivar.h#6 integrate
... //depot/projects/ia64/sys/dev/wi/if_wireg.h#7 integrate
... //depot/projects/ia64/sys/i386/i386/machdep.c#12 integrate
... //depot/projects/ia64/sys/kern/uipc_socket.c#8 integrate
... //depot/projects/ia64/sys/kern/vfs_aio.c#9 integrate
... //depot/projects/ia64/sys/kern/vfs_cache.c#5 integrate
... //depot/projects/ia64/sys/kern/vfs_syscalls.c#12 integrate
... //depot/projects/ia64/sys/pc98/i386/machdep.c#11 integrate
... //depot/projects/ia64/sys/pci/if_rl.c#7 integrate
... //depot/projects/ia64/sys/powerpc/powerpc/machdep.c#8 integrate
... //depot/projects/ia64/sys/sparc64/sparc64/machdep.c#10 integrate
... //depot/projects/ia64/sys/sys/disklabel.h#10 integrate
... //depot/projects/ia64/sys/sys/socketvar.h#9 integrate
... //depot/projects/ia64/sys/vm/uma.h#3 integrate
... //depot/projects/ia64/sys/vm/uma_core.c#6 integrate
... //depot/projects/ia64/sys/vm/uma_int.h#4 integrate
... //depot/projects/ia64/sys/vm/vm_zone.c#7 delete
... //depot/projects/ia64/sys/vm/vm_zone.h#3 delete
... //depot/projects/ia64/usr.bin/xlint/lint1/main1.c#5 integrate
... //depot/projects/ia64/usr.bin/xlint/xlint/xlint.c#7 integrate
... //depot/projects/ia64/usr.sbin/arp/arp.c#6 integrate
... //depot/projects/ia64/usr.sbin/lpr/lpd/printjob.c#4 integrate
... //depot/projects/ia64/usr.sbin/sysinstall/config.c#4 integrate
... //depot/projects/ia64/usr.sbin/sysinstall/package.c#4 integrate
... //depot/projects/ia64/usr.sbin/sysinstall/sysinstall.h#5 integrate

Differences ...

==== //depot/projects/ia64/lib/libc/locale/euc.c#3 (text+ko) ====

@@ -38,7 +38,7 @@
 static char sccsid[] = "@(#)euc.c	8.1 (Berkeley) 6/4/93";
 #endif /* LIBC_SCCS and not lint */
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/locale/euc.c,v 1.6 2002/03/22 21:52:18 obrien Exp $");
+__FBSDID("$FreeBSD: src/lib/libc/locale/euc.c,v 1.7 2002/04/07 16:37:15 asmodai Exp $");
 
 #include <sys/types.h>
 
@@ -123,6 +123,8 @@
 #define	_SS2	0x008e
 #define	_SS3	0x008f
 
+#define	GR_BITS	0x80808080 /* XXX: to be fixed */
+
 static inline int
 _euc_set(c)
 	u_int c;
@@ -202,6 +204,8 @@
 				}
 				*string++ = _SS2;
 				--i;
+				/* SS2 designates G2 into GR */
+				nm |= GR_BITS;
 			} else
 				if (m == CEI->bits[3]) {
 					i = len = CEI->count[3];
@@ -212,6 +216,8 @@
 					}
 					*string++ = _SS3;
 					--i;
+					/* SS3 designates G3 into GR */
+					nm |= GR_BITS;
 				} else
 					goto CodeSet1;	/* Bletch */
 		while (i-- > 0)

==== //depot/projects/ia64/lib/libpam/modules/pam_kerberosIV/Makefile#3 (text+ko) ====

@@ -22,11 +22,12 @@
 # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 # SUCH DAMAGE.
 #
-#	$FreeBSD: src/lib/libpam/modules/pam_kerberosIV/Makefile,v 1.9 2002/03/05 21:56:14 des Exp $
+#	$FreeBSD: src/lib/libpam/modules/pam_kerberosIV/Makefile,v 1.10 2002/04/07 12:53:58 des Exp $
 
 LIB=		pam_kerberosIV
 SHLIB_NAME=	${LIB}.so.${SHLIB_MAJOR}
 SRCS=		pam_kerberosIV.c klogin.c
+NO_WERROR=	yes
 CFLAGS+=	-DKERBEROS
 DPADD=		${LIBKRB} ${LIBCRYPTO} ${LIBCOM_ERR}
 LDADD=		-lkrb -lcrypto -lcom_err

==== //depot/projects/ia64/lib/libpam/modules/pam_unix/pam_unix.c#6 (text+ko) ====

@@ -35,7 +35,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libpam/modules/pam_unix/pam_unix.c,v 1.28 2002/04/06 19:30:04 des Exp $");
+__FBSDID("$FreeBSD: src/lib/libpam/modules/pam_unix/pam_unix.c,v 1.30 2002/04/07 21:18:18 des Exp $");
 
 #include <sys/param.h>
 #include <sys/socket.h>
@@ -121,16 +121,16 @@
 	struct options options;
 	struct passwd *pwd;
 	int retval;
-	const char *pass, *user;
-	char *encrypted, *password_prompt;
+	const char *pass, *user, *realpw;
+	char *prompt;
 
 	pam_std_option(&options, other_options, argc, argv);
 
 	PAM_LOG("Options processed");
 
-	if (pam_test_option(&options, PAM_OPT_AUTH_AS_SELF, NULL))
+	if (pam_test_option(&options, PAM_OPT_AUTH_AS_SELF, NULL)) {
 		pwd = getpwnam(getlogin());
-	else {
+	} else {
 		retval = pam_get_user(pamh, &user, NULL);
 		if (retval != PAM_SUCCESS)
 			PAM_RETURN(retval);
@@ -139,67 +139,32 @@
 
 	PAM_LOG("Got user: %s", user);
 
-	lc = login_getclass(NULL);
-	password_prompt = login_getcapstr(lc, "passwd_prompt",
-	    password_prompt, NULL);
-	login_close(lc);
-	lc = NULL;
-
 	if (pwd != NULL) {
-
 		PAM_LOG("Doing real authentication");
-
-		if (pwd->pw_passwd[0] == '\0'
-		    && pam_test_option(&options, PAM_OPT_NULLOK, NULL)) {
-			/*
-			 * No password case. XXX Are we giving too much away
-			 * by not prompting for a password?
-			 */
-			PAM_LOG("No password, and null password OK");
-			PAM_RETURN(PAM_SUCCESS);
+		realpw = pwd->pw_passwd;
+		if (realpw[0] == '\0') {
+			if (!(flags & PAM_DISALLOW_NULL_AUTHTOK) &&
+			    pam_test_option(&options, PAM_OPT_NULLOK, NULL))
+				PAM_RETURN(PAM_SUCCESS);
+			realpw = "*";
 		}
-		else {
-			retval = pam_get_authtok(pamh, PAM_AUTHTOK,
-			    &pass, password_prompt);
-			if (retval != PAM_SUCCESS)
-				PAM_RETURN(retval);
-			PAM_LOG("Got password");
-		}
-		encrypted = crypt(pass, pwd->pw_passwd);
-		if (pass[0] == '\0' && pwd->pw_passwd[0] != '\0')
-			encrypted = colon;
-
-		PAM_LOG("Encrypted password 1 is: %s", encrypted);
-		PAM_LOG("Encrypted password 2 is: %s", pwd->pw_passwd);
-
-		retval = strcmp(encrypted, pwd->pw_passwd) == 0 ?
-		    PAM_SUCCESS : PAM_AUTH_ERR;
-	}
-	else {
-
+		lc = login_getpwclass(pwd);
+	} else {
 		PAM_LOG("Doing dummy authentication");
-
-		/*
-		 * User unknown.
-		 * Encrypt a dummy password so as to not give away too much.
-		 */
-		retval = pam_get_authtok(pamh,
-		    PAM_AUTHTOK, &pass, password_prompt);
-		if (retval != PAM_SUCCESS)
-			PAM_RETURN(retval);
-		PAM_LOG("Got password");
-		crypt(pass, "xx");
-		retval = PAM_AUTH_ERR;
+		realpw = "*";
+		lc = login_getclass(NULL);
 	}
-
-	/*
-	 * The PAM infrastructure will obliterate the cleartext
-	 * password before returning to the application.
-	 */
+	prompt = login_getcapstr(lc, "passwd_prompt", NULL, NULL);
+	retval = pam_get_authtok(pamh, PAM_AUTHTOK, &pass, prompt);
+	login_close(lc);
 	if (retval != PAM_SUCCESS)
-		PAM_VERBOSE_ERROR("UNIX authentication refused");
+		PAM_RETURN(retval);
+	PAM_LOG("Got password");
+	if (strcmp(crypt(pass, realpw), realpw) == 0)
+		PAM_RETURN(PAM_SUCCESS);
 
-	PAM_RETURN(retval);
+	PAM_VERBOSE_ERROR("UNIX authentication refused");
+	PAM_RETURN(PAM_AUTH_ERR);
 }
 
 PAM_EXTERN int

==== //depot/projects/ia64/release/doc/en_US.ISO8859-1/installation/sparc64/install.sgml#5 (text+ko) ====

@@ -1,6 +1,6 @@
 <!--
 
-$FreeBSD: src/release/doc/en_US.ISO8859-1/installation/sparc64/install.sgml,v 1.8 2002/03/23 00:24:32 bmah Exp $
+$FreeBSD: src/release/doc/en_US.ISO8859-1/installation/sparc64/install.sgml,v 1.9 2002/04/08 05:19:32 ue Exp $
 
 This file contains sparc64-specific installation instructions.
 
@@ -471,6 +471,17 @@
       this disk must have their respective partition entries in the
       old and new label match <emphasis>exactly</emphasis>, or they
       will be lost.</para></warning>
+
+	<para>If you want to double-check that your partitions end on
+	  cylinder boundaries, run <command>disklabel -e
+	  <replaceable>device</replaceable></command> again.  The
+	  editor will display the cylinders used by a particular
+	  partition on the right hand side of the output.  If any of
+	  the partitions you defined (i.e. anything except partition
+	  <literal>c</literal>) shows an <literal>*</literal> next to
+	  it, the partition does <emphasis>NOT</emphasis> start or end
+	  on a cylinder boundary.  You <emphasis>MUST</emphasis> fix
+	  these or your system will not work.</para>
       </step>
 
       <step>

==== //depot/projects/ia64/release/doc/fr_FR.ISO8859-1/relnotes/common/new.sgml#3 (text+ko) ====

@@ -3,14 +3,14 @@
      The FreeBSD French Documentation Project
 
      $Id$
-     $FreeBSD: src/release/doc/fr_FR.ISO8859-1/relnotes/common/new.sgml,v 1.12 2002/03/10 15:37:56 gioria Exp $
+     $FreeBSD: src/release/doc/fr_FR.ISO8859-1/relnotes/common/new.sgml,v 1.13 2002/04/07 09:04:04 gioria Exp $
      Original revision: 1.287
 -->
 
 <articleinfo>
   <title>&os;/&arch; &release.current; notes de version</title>
 
-  <pubdate>$FreeBSD: src/release/doc/fr_FR.ISO8859-1/relnotes/common/new.sgml,v 1.12 2002/03/10 15:37:56 gioria Exp $</pubdate>
+  <pubdate>$FreeBSD: src/release/doc/fr_FR.ISO8859-1/relnotes/common/new.sgml,v 1.13 2002/04/07 09:04:04 gioria Exp $</pubdate>
 
   <corpauthor>Le Projet FreeBSD</corpauthor>
 
@@ -1368,10 +1368,249 @@
   <sect2 id="security">
     <title>Changements liés a la sécurité</title>
 
+    <para>&man.sysinstall.8; permet maintenant a un utilisateur de choisir
+    un des deux <quote>profils de sécurité</quote> au moment de l'installation
+    Ces profils activent ou désactivent alors différents services via
+    le fichier de configuration &man.rc.conf.5; lors de nouvelles 
+    installations. &merged;</para>
+
+    <para>Un bogue qui fixait le système pour des images ELF exécutables 
+    malformées a été résolu (voir l'avis de sécurité
+    FreeBSD-SA-00:41). &merged;</para>
+
+    <para>Un trou de sécurité dans l'émulation Linux a été corrigé (voir
+    l'avis de sécuritéFreeBSD-SA-00:42). &merged;</para>
+
+    <para>Les appels a la librairie de traitement des chaines
+    ont été corrigés dans beaucoups de programmes, pour réduire
+    la possiblité d'exploitation des dépassements de tampons.
+    &merged;</para>
+
+    <para>TCP utilise maintenant une fonction plus aléatoire pour
+    le choix du nombre initial lors de l'initialisation de la 
+    séquence (voir l'avis de sécurité FreeBSD-SA-00:52). &merged;</para>
+
+    <para>Différents dépassements de tampons dans &man.tcpdump.1; ont été
+    corrigés (voir l'avis de sécurité FreeBSD-SA-00:61). &merged;</para>
+
+    <para>Le trou de sécurité de &man.top.1; a été corrigé
+    (voir l'avis de sécurité FreeBSD-SA-00:62). &merged;</para>
+
+    <para>Un potentiel trou de sécurité du a une erreur potentielle
+    dans &man.gethostbyname.3; a été corrigé (voir l'avis de sécurité
+    FreeBSD-SA-00:63). &merged;</para>
+
+    <para>Un potentiel dépassement de tampon dans la libraire
+    &man.ncurses.3; permettant l'execution de programme 
+    via &man.systat.1; a été corrigé(voir l'avis de sécurité
+    FreeBSD-SA-00:68). &merged;</para>
+
+    <para>La vulnérabilité de &man.telnetd.8; causant
+    une consommation importante de ressources du serveur 
+    a été corrigée (voir l'avis de sécurité FreeBSD-SA-00:69). &merged;</para>
 
+    <para>La commande <literal>nat deny_incoming</literal> de
+    &man.ppp.8; fonctionne maintenant correctement (voir l'avis
+    de sécurité FreeBSD-SA-00:70). &merged;</para>
 
-    <para></para>
+    <para>La vulnérabilité dans les fichiers temporaires créés par
+    &man.csh.1;/&man.tcsh.1; permettant d'écraser certains fichiers 
+    utilisateurs a été corrigée (voir l'avis de sécurité FreeBSD-SA-00:76). &merged;</para>
+
+    <para>Le binaire &man.ssh.1; n'est plus SUID root par défaut. &merged;</para>
+
+    <para>Différentes corrections ont été apportées à l'implémentation
+    de Kerberos IV relatives a des variables d'environnements, un
+    possible dépassent de tampon, et l'écrasement de fichiers de 
+    tickets. &merged;</para>
+
+    <para>&man.telnet.1; nettoie maintenant mieux son environnement.&merged;</para>
+
+    <para>Différentes vulnérabilités dans &man.procfs.5; ont été 
+    corrigées (voir l'avis de sécurité FreeBSD-SA-00:77). &merged;</para>
+
+    <para>Un bogue dans <application>OpenSSH</application> dans
+    lesquel un serveur n'etait pas capable de désactivé &man.ssh-agent.1;
+    ou <literal>X11Forwarding</literal> a été corrigé (voir l'avis
+    de sécurité FreeBSD-SA-01:01). &merged;</para>
+
+    <para>Un bogue dans &man.ipfw.8; et &man.ip6fw.8; traitant 
+    des segments TCP entrants comme des connexions <literal>établies</literal>
+    a été corrigé (voir l'avis de sécurité FreeBSD-SA-01:08). &merged;</para>
+ 
+    <para>Un bogue dans &man.crontab.1; permettant a un utilisateur
+    de lire n'importe quel fichier en ayant une syntaxe de &man.crontab.5;
+    valide a été corrigé(voir l'avis de sécurité FreeBSD-SA-01:09). &merged;</para>
+
+    <para>La vulnérabilité dans &man.inetd.8; permettant l'accès
+    en lecture aux 16 bytes initiaux des fichiers accessibles 
+    par le groupe <groupname>wheel</groupname> a été corrigé(voir
+    l'avis de sécrurité FreeBSD-SA-01:11). &merged;</para>
+
+    <para>Un bogue dans &man.periodic.8; qui utilisait des fichiers
+    temporaires de façon peu sécurisée a été corrigé (voir l'avis
+    de sécurité FreeBSD-SA-01:12). &merged;</para>
+
+    <para>Un bogue dans &man.sort.1; permettant a un attaquant d'arrèter
+    son traitement a été corrigé (voir l'avis de sécurité
+    FreeBSD-SA-01:13). &merged;</para>
+
+    <para><application>OpenSSH</application> intègre maintenant un code
+    permettant de prévenir (plutot que de limiter le nombre
+    de connexions) aux attaques permettant de trouver la clef 
+    du serveur (pas la clef de la machine) en regénérant une nouvelle
+    clef lorsque un problème RSA est détecté (voir l'avis de sécurité 
+     FreeBSD-SA-01:24). &merged;</para>
+
+    <para>Plusieurs programmes ont subit une correction dans le formattage
+    de l'affichage de sortie des chaines pour réduire le risque
+    de vulnérabilités. &merged;</para>
+
+    <para>Plusieurs programmes utilisants des fichiers temporaires les 
+    utilisent maintenant de façon plus sécurisée. &merged;</para>
+
+    <para>Un bogue dans ICMP premettant a un attaquant de perturber
+    les <quote>sessions</quote> TCP et UDP a été corrigé. &merged;</para>
+
+    <para>Un bogue dans &man.timed.8;, causant un crash lors de l'envoi
+    de paquets mals formés, a été corrigé (voir l'avis de sécurité
+     FreeBSD-SA-01:28). &merged;</para>
+
+    <para>Un bogue dans &man.rwhod.8;, permettant de le "crasher" lors de
+    l'envoi de paquets mal formés a été corrigé (voir l'avis de sécurité
+     FreeBSD-SA-01:29). &merged;</para>
+
+    <para>Un trou de sécurité dans les implémentations FFS et EXT2FS de &os;
+    permettant à des utilisateurs l'accès a des données non autorisées, a été
+    corrigé. (voir l'avis de sécurité FreeBSD-SA-01:30). &merged;</para>
+
+    <para>Un vulnérabilité, exploitable à distance, de &man.ntpd.8; a 
+    été réglée(voir l'avis de sécurité FreeBSD-SA-01:31). &merged;</para>
+
+    <para>Un trou de sécurité dans le mécanisme de "cache" des fragments IP
+    d'<application>IPFilter</application> a été corrigé (voir l'avis de
+    sécurité FreeBSD-SA-01:32). &merged;</para>
+
+    <para>Un dépassement dans &man.glob.3; permettant l'execution de code
+    dans le serveur de FTP a été corrigé. De plus, pour prévenir certaines 
+    formes d'attaques DOS, &man.glob.3; permet de limiter le nombre de 
+    répertoires qu'il retourne. &man.ftpd.8; utilise maintenant cette
+    fonctionnalité (voeyz l'avis de sécurité FreeBSD-SA-01:33). &merged;</para>
+
+    <para>L'initialisation des numéros de séquences TCP est plus
+    aléatoire (voyez l'avis de sécurité FreeBSD-SA-01:39). Suite
+    a des potentiels problèmes de compatiblité, cette fonctionalité
+     de sécurité peut etre activé ou désactivé via la variable sysctl
+    <varname>net.inet.tcp.tcp_seq_genscheme</varname>.&merged;</para>
+
+    <para>Un vulnérabilité dans les routines &man.fts.3; (utilisés par
+    des applications pour parcourir de façon récursive un système de fichier)
+    permet à un programme de lire des fichiers en dehors de la hiérarchie
+    de répertoire autorisé. Ce bogue a été corrigé voir l'avis de sécurité
+    FreeBSD-SA-01:40). &merged;</para>
+
+    <para>L'implémentation de la couche TCP de &os; a été rendue plus
+    résistante aux attaques SYN, en éliminant le segment RST envoyé 
+    normalement lors du nettoyage d'une connexion de la file 
+    d'attente</para>
+
+    <para><application>OpenSSH</application> prend, maintenant, l'UID
+    de l'utilisateur avant d'essayer d'effacer le fichier
+    d'authentification, annulant les effets d'une "race"</para>
+
+    <para>A flaw allowed some signal handlers to remain in effect in a
+    child process after being exec-ed from its parent.  This allowed
+    an attacker to execute arbitrary code in the context of a setuid
+    binary.  This flaw has been corrected (see security advisory
+    FreeBSD-SA-01:42). &merged;</para>
+
+    <para>Un dépassement de buffer à distance dans &man.tcpdump.1; a été 
+    corrigé (voir l'avis de sécurité FreeBSD-SA-01:48). &merged;</para>
+
+    <para>Un dépassement de buffer à distance dans &man.telnetd.8; a été
+    corrigé (voir l'avis de sécurité FreeBSD-SA-01:49). &merged;</para>
+
+    <para>Les nouvelles variables sysctl 
+    <varname>net.inet.ip.maxfragpackets</varname> 
+    et <varname>net.inet.ip6.maxfragpackets</varname> permettent 
+    de limiter la quantité de mémoire utilisée par les fragments des 
+    paquets IPv4 et IPv6; cela permet de mieux se prévenir contre les
+    attaques par déni de service (voyez l'avis de sécurité
+    FreeBSD-SA-01:52). &merged;</para>
+
+    <para>Tous les services dans <filename>inetd.conf</filename> sont
+    maintenant désactivés par défaut pour les nouvelles installations.
+    &man.sysinstall.8; done la possiblité d'activer ou désactiver 
+    &man.inetd.8; pour les nouvelles installation, comme l'édition
+    de <filename>inetd.conf</filename>. &merged;</para>
+
+    <para>Un bogue dans l'implémentation des règles de &man.ipfw.8;
+    comportant <literal>me</literal> sur les liens point à point a 
+    été corrigé. Les règles de filtrage comportant <literal>me</literal> 
+    matchaient l'adresse IP distante a la place de l'adresse IP
+    local (voyez l'avis de sécurité FreeBSD-SA-01:53). &merged;</para>
+
+    <para>Une vulnérabilité dans &man.procfs.5;, permettant a un 
+    processus de lire des informations sensibles depuis l'espace
+    mémoire d'un autre processus, a été corrigée (voyez l'avis 
+    de sécurité FreeBSD-SA-01:55). &merged;</para>
+
+    <para>La vérification d'un nom de machine en mode
+     <literal>PARANOID</literal> de <application>tcp_wrappers</application>
+     fonctionne maintenant correctement (voyez l'avis de sécurité 
+     FreeBSD-SA-01:56). &merged;</para>
+
+    <para>Un bogue permettant de passer root dans &man.sendmail.8; a
+    été corrigé(voyez l'avis de sécurité FreeBSD-SA-01:57). &merged;</para>
+    
+    <para>Un bogue permettant de passer root a distance dans &man.lpd.8;
+    a été corrigé (voyez l'avis de sécurité FreeBSD-SA-01:58). &merged;</para>
+
+    <para>Une "race condition" dans &man.rmuser.8; qui rendait brièvement
+    <filename>/etc/master.passwd</filename> lisible pour tout utilisateur
+    a été corrigée (voyez l'avis de sécurité FreeBSD-SA-01:59). &merged;</para>
+
+    <para>Un bogue dans <application>UUCP</application> a été
+    corrigé (voyez l'avis de sécurité FreeBSD-SA-01:62). Tous
+    les binaires n'appartenant pas a <username>root</username>
+    dans les "path" système standard ont maintenant le drapeau
+    <literal>schg</literal> permettant d'empecher l'exploitation
+    de bogues via &man.cron.8;, par <username>root</username>,
+    ou par un utilisateur autre que celui auquel appartient
+    le binaire. De plus &man.uustat.1; est lancé maintenant
+    via <filename>/etc/periodic/daily/410.status-uucp</filename> 
+    sous l'utilisateur <username>uucp</username>, et non
+    plus <username>root</username>. Dans &os; -CURRENT, 
+    <application>UUCP</application> ne fait plus partie des binaires
+    systèmes, et a été déplacé dans la collection des Ports. &merged;</para>
+
+    <para>Un trou de sécurité, sous la forme d'un dépassement de buffer, dans
+    l'appel système &man.semop.2; a été corrigé.&merged;</para>
+
+    <para>Un trou de sécurité dans <application>OpenSSH</application>,
+    permettant a un utilisateur d'executer du code avec des privilèges 
+    supplémentaires si <literal>UseLogin yes</literal> était activé, a été
+    corrigé. Notez que la valeur par défaut de ce paramètre est 
+    <literal>UseLogin no</literal>.  (Voyez l'avis de sécurité
+    FreeBSD-SA-01:63.) &merged;</para>
+
+    <para>L'utilisation de répertoire temporaire par &man.pkg.add.1; 
+    pouvait permettre a un attaquant local de modifier le contenu
+    des binaires distribués au moment ou ils allaient etre installé. Ce
+    bogue a été corrigé (voyez l'avis de sécurité FreeBSD-SA-02:01).
+     &merged;</para>
+
+    <para>Une "race condition" dans &man.pw.8;, permettant de lire
+    le contenu du fichier <filename>/etc/master.passwd</filename>, a
+    été corrigé (voyez l'avis de sécurité FreeBSD-SA-02:02.) &merged;</para>
+
+    <para>Un bogue dans &man.k5su.8; pouvait permettre a un processus
+    ayant obtenu des privilèges super-utilisateur de les ré-obtenir. Ce
+    bogue a été corrigé (voyez l'avis de sécurité FreeBSD-SA-02:07.)
+     &merged;</para>
   </sect2>
+
+
   <sect2 id="userland">
     <title>Changements dans les programmes utilisateurs</title>
     <sect3>

==== //depot/projects/ia64/release/picobsd/floppy.tree/etc/rc1#3 (text+ko) ====

@@ -1,5 +1,5 @@
 #!/bin/sh
-# $FreeBSD: src/release/picobsd/floppy.tree/etc/rc1,v 1.3 2002/03/10 20:47:26 luigi Exp $
+# $FreeBSD: src/release/picobsd/floppy.tree/etc/rc1,v 1.4 2002/04/07 20:41:09 luigi Exp $
 ### rc1, next stage 'rc' for PicoBSD -- THIS IS NOT THE NORMAL /etc/rc 
 
 . /etc/rc.conf.defaults		# Load default procedures
@@ -16,8 +16,9 @@
 
 ### Now use some variables to override files in /etc ###
 ( IFS=''
-[ -n ${host_conf} ] && echo ${host_conf} > /etc/host.conf
-[ -n ${resolv_conf} ] && echo ${resolv_conf} > /etc/resolv.conf
+[ -n "${host_conf}" ] && echo ${host_conf} > /etc/host.conf
+[ -n "${resolv_conf}" ] && echo ${resolv_conf} > /etc/resolv.conf
+[ -n "${rc_local}" ] && echo ${rc_local} > /etc/rc.local
 unset IFS
 )
 
@@ -43,6 +44,9 @@
 [ -n "$network_pass1_done" ] && network_pass2
 [ -n "$network_pass2_done" ] && network_pass3
 
+[ -f /etc/syslog.conf -a -f /stand/syslogd ] && \
+	{ echo "Starting syslogd."; syslogd ${syslogd_flags} ; }
+
 [ "${inetd_enable}" = "YES" -a -f /stand/inetd ] && \
 	{ echo "Starting inetd."; inetd ${inetd_flags} ; }
 

==== //depot/projects/ia64/release/picobsd/tinyware/simple_httpd/simple_httpd.c#2 (text+ko) ====

@@ -27,7 +27,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $FreeBSD: src/release/picobsd/tinyware/simple_httpd/simple_httpd.c,v 1.7 2001/07/09 09:23:43 brian Exp $
+ * $FreeBSD: src/release/picobsd/tinyware/simple_httpd/simple_httpd.c,v 1.12 2002/04/07 17:42:27 asmodai Exp $
  */
 
 #include <sys/stat.h>
@@ -99,12 +99,13 @@
 		perror("bind socket");
 		exit(1);
 	}
-        if (verbose) printf("simple_httpd\n",http_port);
+        if (verbose) printf("simple_httpd:%d\n",http_port);
 }
 
 /*
  * Wait here until we see an incoming http request
  */
+void
 wait_connection(void)
 {
 	int lg;
@@ -121,7 +122,8 @@
 /*
  * Print timestamp for HTTP HEAD and GET
  */
-http_date()
+void
+http_date(void)
 {
 	time_t	tl;
 	char	buff[50];
@@ -135,6 +137,7 @@
 /*
  * Send data to the open socket
  */
+void
 http_output(char *html)
 {
         write(con_sock, html, strlen(html));
@@ -146,6 +149,7 @@
  * Create and write the log information to file
  * Log file format is one line per entry
  */
+void
 log_line(char *req)
 {
         char            log_buff[256];
@@ -189,16 +193,15 @@
  * We have a connection.  Identify what type of request GET, HEAD, CGI, etc 
  * and do what needs to be done
  */
-http_request()
+void
+http_request(void)
 {
-	int             fd, lg, ld, i; 
+	int             fd, lg, i; 
 	int             cmd = 0;
-	int             http1 = 0;
 	char           *p, *par;
 	char           *filename, *c;
 	struct stat     file_status;
 	char            req[1024];
-        char            msg[1024];
 	char            buff[8192];
 
 	lg = read(con_sock, req, 1024);
@@ -309,7 +312,7 @@
 	http_output(httpd_server_ident);
 	http_date();
 
-	sprintf(buff, "Content-length: %d\r\n", file_status.st_size);
+	sprintf(buff, "Content-length: %lld\r\n", file_status.st_size);
 
 	if (strstr(filename,".txt")) {
 	  strcpy(buff,"Content-type: text/plain\r\n");
@@ -347,12 +350,12 @@
  * Should satisfy simple httpd needs.  For more demanding situations
  * apache is probably a better (but much larger) choice.
  */
+int
 main(int argc, char *argv[])
 {
         extern char *optarg;
         extern int optind;
-        int bflag, ch, fd, ld;
-        int             lg;
+        int ch, ld;
 	int             httpd_group = 65534;
         pid_t server_pid;
   

==== //depot/projects/ia64/sbin/disklabel/Makefile#3 (text+ko) ====

@@ -1,5 +1,5 @@
 #	@(#)Makefile	8.2 (Berkeley) 3/17/94
-# $FreeBSD: src/sbin/disklabel/Makefile,v 1.8 2001/12/04 02:19:45 obrien Exp $
+# $FreeBSD: src/sbin/disklabel/Makefile,v 1.10 2002/04/08 06:26:46 phk Exp $
 
 PROG=	disklabel
 SRCS=	disklabel.c
@@ -8,6 +8,5 @@
 .if ${MACHINE} == "pc98"
 CFLAGS+= -DPC98
 .endif
-WARNS=	0
 
 .include <bsd.prog.mk>

==== //depot/projects/ia64/sbin/disklabel/disklabel.c#8 (text+ko) ====

@@ -52,7 +52,7 @@
 /* from static char sccsid[] = "@(#)disklabel.c	1.2 (Symmetric) 11/28/85"; */
 #endif
 static const char rcsid[] =
-  "$FreeBSD: src/sbin/disklabel/disklabel.c,v 1.47 2002/04/04 20:22:15 phk Exp $";
+  "$FreeBSD: src/sbin/disklabel/disklabel.c,v 1.49 2002/04/07 10:57:00 phk Exp $";
 #endif /* not lint */
 
 #include <sys/param.h>
@@ -134,8 +134,6 @@
 struct	disklabel lab;
 char	bootarea[BBSIZE];
 
-/* partition 'c' is the full disk and is special */
-#define FULL_DISK_PART 2
 #define MAX_PART ('z')
 #define MAX_NUM_PARTS (1 + MAX_PART - 'a')
 char    part_size_type[MAX_NUM_PARTS];
@@ -159,12 +157,7 @@
 int	rflag;
 int	disable_write;   /* set to disable writing to disk label */
 
-#ifdef DEBUG
-int	debug;
-#define OPTIONS	"BNRWb:denrs:w"
-#else
 #define OPTIONS	"BNRWb:enrs:w"
-#endif
 
 int
 main(int argc, char *argv[])
@@ -220,11 +213,6 @@
 					usage();
 				op = WRITE;
 				break;
-#ifdef DEBUG
-			case 'd':
-				debug++;
-				break;
-#endif
 			case '?':
 			default:
 				usage();
@@ -628,11 +616,6 @@
 		}
 #endif
 	}
-#ifdef DEBUG
-	if (debug)
-		fprintf(stderr, "bootstraps: xxboot = %s, bootxx = %s\n",
-			xxboot, bootxx ? bootxx : "NONE");
-#endif
 
 	/*
 	 * Strange rules:
@@ -945,10 +928,11 @@
 int
 getasciilabel(FILE *f, struct disklabel *lp)
 {
-	char **cpp, *cp;
+	char *cp;
+	const char **cpp;
 	struct partition *pp;
 	unsigned int part;
-	char *tp, *s, line[BUFSIZ];
+	char *tp, line[BUFSIZ];
 	int v, lineno = 0, errors = 0;
 	int i;
 
@@ -973,7 +957,7 @@
 				tp = "unknown";
 			cpp = dktypenames;
 			for (; cpp < &dktypenames[DKMAXTYPES]; cpp++)
-				if ((s = *cpp) && streq(s, tp)) {
+				if (*cpp && streq(*cpp, tp)) {
 					lp->d_type = cpp - dktypenames;
 					goto next;
 				}
@@ -1216,7 +1200,7 @@
 					cp = tp, tp = word(cp);
 					cpp = fstypenames;
 					for (; cpp < &fstypenames[FSMAXTYPES]; cpp++)
-						if ((s = *cpp) && streq(s, cp)) {
+						if (*cpp && streq(*cpp, cp)) {
 							pp->p_fstype = cpp -
 							    fstypenames;
 							goto gottype;
@@ -1366,8 +1350,7 @@
 		pp = &lp->d_partitions[i];
 		if (part_set[i]) {
 			if (part_size_type[i] == '*') {
-				/* partition 2 ('c') is special */
-				if (i == FULL_DISK_PART) {
+				if (i == RAW_PART) {
 					pp->p_size = lp->d_secperunit;
 				} else {
 					if (hog_part != -1)
@@ -1416,8 +1399,7 @@
 						pp->p_size = size;
 					}
 					/* else already in sectors */
-					/* partition 2 ('c') is special */
-					if (i != FULL_DISK_PART)
+					if (i != RAW_PART)
 						total_size += size;
 				}
 			}
@@ -1427,7 +1409,7 @@
 	if (total_percent != 0) {
 		long free_space = lp->d_secperunit - total_size;
 		if (total_percent > 100) {
-			fprintf(stderr,"total percentage %d is greater than 100\n",
+			fprintf(stderr,"total percentage %lu is greater than 100\n",
 			    total_percent);
 			errors++;
 		}
@@ -1446,7 +1428,7 @@
 			}
 		} else {
 			fprintf(stderr,
-			    "%ld sectors available to give to '*' and '%' partitions\n",
+			    "%ld sectors available to give to '*' and '%%' partitions\n",
 			    free_space);
 			errors++;
 			/* fix?  set all % partitions to size 0? */
@@ -1466,8 +1448,7 @@
 		pp = &lp->d_partitions[i];
 		if (part_set[i]) {
 			if (part_offset_type[i] == '*') {
-				/* partition 2 ('c') is special */
-				if (i == FULL_DISK_PART) {
+				if (i == RAW_PART) {
 					pp->p_offset = 0;
 				} else {
 					pp->p_offset = current_offset;
@@ -1475,28 +1456,26 @@
 				}
 			} else {
 				/* allow them to be out of order for old-style tables */
-				/* partition 2 ('c') is special */
 				if (pp->p_offset < current_offset && 
-				    seen_default_offset && i != FULL_DISK_PART) {
+				    seen_default_offset && i != RAW_PART) {
 					fprintf(stderr,
-"Offset %ld for partition %c overlaps previous partition which ends at %ld\n",
-					    pp->p_offset,i+'a',current_offset);
+"Offset %ld for partition %c overlaps previous partition which ends at %lu\n",
+					    (long)pp->p_offset,i+'a',current_offset);
 					fprintf(stderr,
 "Labels with any *'s for offset must be in ascending order by sector\n");
 					errors++;
 				} else if (pp->p_offset != current_offset &&
-				    i != FULL_DISK_PART && seen_default_offset) {
+				    i != RAW_PART && seen_default_offset) {
 					/* 
 					 * this may give unneeded warnings if 
 					 * partitions are out-of-order
 					 */
 					Warning(
 "Offset %ld for partition %c doesn't match expected value %ld",
-					    pp->p_offset, i + 'a', current_offset);
+					    (long)pp->p_offset, i + 'a', current_offset);
 				}
 			}
-			/* partition 2 ('c') is special */
-			if (i != FULL_DISK_PART)
+			if (i != RAW_PART)
 				current_offset = pp->p_offset + pp->p_size; 
 		}
 	}
@@ -1534,7 +1513,7 @@
 			    part);
 			errors++;
 		}
-		if (i == FULL_DISK_PART)
+		if (i == RAW_PART)
 		{
 			if (pp->p_fstype != FS_UNUSED)
 				Warning("partition %c is not marked as unused!",part);
@@ -1553,8 +1532,7 @@
 		/* check for overlaps */
 		/* this will check for all possible overlaps once and only once */
 		for (j = 0; j < i; j++) {
-			/* partition 2 ('c') is special */
-			if (j != FULL_DISK_PART && i != FULL_DISK_PART &&
+			if (j != RAW_PART && i != RAW_PART &&
 			    part_set[i] && part_set[j]) {
 				pp2 = &lp->d_partitions[j];
 				if (pp2->p_offset < pp->p_offset + pp->p_size &&

==== //depot/projects/ia64/sbin/mount_std/mount_std.c#3 (text+ko) ====

@@ -43,13 +43,15 @@
 
 #ifndef lint
 static const char rcsid[] =
-  "$FreeBSD: src/sbin/mount_std/mount_std.c,v 1.12 2002/03/21 13:14:20 imp Exp $";
+  "$FreeBSD: src/sbin/mount_std/mount_std.c,v 1.13 2002/04/07 13:28:18 mux Exp $";
 #endif /* not lint */
 
 #include <sys/param.h>
 #include <sys/mount.h>
+#include <sys/uio.h>
 
 #include <err.h>
+#include <errno.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
@@ -74,6 +76,7 @@
 	int ch, mntflags;
 	char mntpath[MAXPATHLEN];
 	struct vfsconf vfc;
+	struct iovec iov[4];
 	int error;
 
 	/*
@@ -121,7 +124,25 @@
 	/* resolve the mountpoint with realpath(3) */
 	(void)checkpath(argv[1], mntpath);
 
-	if (mount(vfc.vfc_name, mntpath, mntflags, NULL))
+	error = mount(vfc.vfc_name, mntpath, mntflags, NULL);
+
+	/*
+	 * Try with the new mount syscall in the case
+	 * this filesystem has been converted.
+	 */
+	if (error && errno == EOPNOTSUPP) {
+		iov[0].iov_base = "fstype";
+		iov[0].iov_len = sizeof("fstype");
+		iov[1].iov_base = vfc.vfc_name;
+		iov[1].iov_len = strlen(vfc.vfc_name) + 1;
+		iov[2].iov_base = "fspath";
+		iov[2].iov_len = sizeof("fstype");
+		iov[3].iov_base = mntpath;
+		iov[3].iov_len = strlen(mntpath) + 1;
+		error = nmount(iov, 4, mntflags);
+	}
+
+	if (error)
 		err(EX_OSERR, NULL);
 	exit(0);
 }

==== //depot/projects/ia64/sbin/newfs/mkfs.c#8 (text+ko) ====

@@ -36,7 +36,7 @@
 static char sccsid[] = "@(#)mkfs.c	8.11 (Berkeley) 5/3/95";
 #endif
 static const char rcsid[] =
-  "$FreeBSD: src/sbin/newfs/mkfs.c,v 1.53 2002/04/04 09:45:11 bde Exp $";
+  "$FreeBSD: src/sbin/newfs/mkfs.c,v 1.54 2002/04/07 14:57:57 phk Exp $";
 #endif /* not lint */
 
 #include <err.h>
@@ -217,9 +217,9 @@
 	sblock.fs_nspf = sblock.fs_fsize / sectorsize;
 	sblock.fs_fsbtodb = ilog2(NSPF(&sblock));
 	sblock.fs_sblkno =
-	    roundup(howmany(bbsize + sbsize, sblock.fs_fsize), sblock.fs_frag);
+	    roundup(howmany(BBSIZE + SBSIZE, sblock.fs_fsize), sblock.fs_frag);
 	sblock.fs_cblkno = (daddr_t)(sblock.fs_sblkno +
-	    roundup(howmany(sbsize, sblock.fs_fsize), sblock.fs_frag));
+	    roundup(howmany(SBSIZE, sblock.fs_fsize), sblock.fs_frag));
 	sblock.fs_iblkno = sblock.fs_cblkno + sblock.fs_frag;
 	sblock.fs_cgoffset =
 	    roundup(howmany(sblock.fs_nsect, NSPF(&sblock)), sblock.fs_frag);
@@ -545,7 +545,7 @@
 	 */
 	fsinit(utime);
 	sblock.fs_time = utime;
-	wtfs((int)SBOFF / sectorsize, sbsize, (char *)&sblock);
+	wtfs((int)SBOFF / sectorsize, SBSIZE, (char *)&sblock);
 	for (i = 0; i < sblock.fs_cssize; i += sblock.fs_bsize)
 		wtfs(fsbtodb(&sblock, sblock.fs_csaddr + numfrags(&sblock, i)),
 			sblock.fs_cssize - i < sblock.fs_bsize ?
@@ -556,7 +556,7 @@
 	 */
 	for (cylno = 0; cylno < sblock.fs_ncg; cylno++)
 		wtfs(fsbtodb(&sblock, cgsblock(&sblock, cylno)),
-		    sbsize, (char *)&sblock);
+		    SBSIZE, (char *)&sblock);
 	wtfsflush();

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

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe p4-projects" in the body of the message




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