&os;/&arch; &release.current; notes de version $FreeBSD$ Le Projet FreeBSD 2000 2001 2002 Projet de Documentation de FreeBSD Les notes de version pour &os; &release.current; contiennent un résumé des Les changements concernant le noyau et les programmes utilisateurs sont mentionnés ainsi que les avis de sécurité applicables au système de base qui ont été découverts depuis la dernière version. Ces notes contiennent également quelques brèves remarques sur la mise à jour. Introduction Ce document contient les notes de version pour &os; &release.current; sur plate-forme &arch.print;. Il décrit les nouvelles fonctions de &os; qui ont été ajoutées, modifiées ou retirées dans &os;. Il contient également quelques notes sur la mise à jour depuis la version précédente de &os;. La distribution snapshot à laquelle s'applique ces notes de version représente une étape sur la branche de développement &release.branch; entre &release.prev; et la future &release.next;. Quelques distributions binaires pré-compilées de la version snapshot pour cette branche sont présentes sur . ]]> Cette distribution de &os; &release.current; est une distribution de type &release.type;. Elle est disponible à ou sur un des mirroirs. Pour plus d'informations sur la façon d'obtenir cette (ou une autre) distribution &release.type; de &os; voyez le chapitre Obtenir FreeBSD du guide de référence de FreeBSD. ]]> Les nouveautés Cette section décrit les fonctions nouvelles ou les modifications les plus visibles pour l'utilisateur sous &os; depuis la version &release.prev;. Il s'agit typiquement de nouveaux gestionnaires de périphériques ou du support de matériels, de nouvelles commandes ou options, de corrections de bugs majeurs, ou de mise à jour de logiciels. Les avis de sécurité pour le système de base découverts après la &release.prev; sont égalements mentionnés. De nombreux changements supplémentaires apportés à &os; ne sont pas mentionnés ici par faute de place. Par exemple, la documentation a été corrigée et améliorée, des bugs mineurs ont été corrigés, du code potentiellement dangereux pour la sécurité a été audité et corrigé et le code source a été remis au propre. Changements concernant le noyau L'éxécution des programmes en format &man.a.out.5; nécessite l'option COMPAT_AOUT dans le noyau ou le chargement du module noyau aout.ko. &man.acct.2; a été modifié pour ouvrir le fichier d'accounting en mode ajout, comme cela &man.accton.8; peut être utilisé pour activer l'accounting dans un fichier en mode ajout.&merged; Le gestionnaire de périphérique &man.amdpm.4; a été ajouté pour permettre d'accéder aux fonctions du système de surveillance des puces AMD756 chipset.&merged; Le gestionnaire de périphérique &man.agp.4; pour les périphériques AGS a été ajouté.&merged; Une nouvelle commande show pcpu ajoutée a &man.ddb.4;, permet d'obtenir la liste des données par processeur. Deux nouvelles commandes a &man.ddb.4;, hwatch et dhwatch, ont été introduites. Parallèlement a watch et dwatch, elles permettent d'installer des points de vérification matériels (en opposition aux point de vérification logiciels) si l'architecture matérielle le supporte. &merged; &man.devfs.5;, permet de créer automatiquement les entrées nécessaires dans le répertoire /dev et le support des périphériques a attachement variable, a été longuement revu. &man.devfs.5; est maintenant activé par défaut et peut etre désactivé par l'option du noyau NODEVFS. Le sous système de règles &man.devfs.5; a été introduit. Les règles DEVFS permettent à l'administrateur de définir certaines propriétés pour chaque noeud de périphérique avant qu'ils soient visibles en mode utilisateur. Les noeuds statiques (ex:/dev/speaker) et dynamiques (e.g./dev/bpf*, certains périphériques démontables) sont supportés. Chaque montage de &man.devfs.5; peut disposer de règles différentes, permettant d'implémenter des politiques différentes pour implémenter dans des jails par ex. Les règles et les ensembles de règles se manipulent avec l'utilitaire &man.devfs.8; Le gestionnaire de périphérique dgm a été retiré en faveur du gestionnaire digi. Un nouveau gestionnaire de périphérique digi a été ajouté pour supporter les cartes Digiboard PCI Xr et ISA Xem. Un nouveau programme, &man.digictl.8;, permet de ré-initialiser les cartes qui ont des modules de ports externes attachés comme les PC/Xem. Un nouvel appel système &man.eaccess.2; a été ajouté, similaire à &man.access.2; excepté qu'il utilise les identités effective au lieu des identités réelles. Le support pour les périphériques basés sur EBus a été ajouté. Le gestionnaire de périphérique &man.ichsmb.4; pour les cartes controleur Intel 82801AA (ICH) SMBus et compatibles a été ajouté. &merged; Chaque environnement &man.jail.2; peut maintenant tourner dans son niveau de sécurité personnel. Les variables sysctl pour&man.jail.2; ont été déplacées de la hiérarchie jail.* a security.*. Les autres variable sysctl ayant un rapport avec la sécurité ont été déplacées de la hiérarchie kern.security.* a security.*. La variable kern.maxvnodes limite maintenant propremement le nombre de vnodes utilisés. Précédemment uniquement les vnodes n'utilisant pas les pages de cache pouvaient etre libérés; cela pouvait conduire a un nombre croissant de vnodes sans limitation mémoire sur des machines accédant a beaucoup de petits fichiers. Un thread noyau, vnlru, permet d'aider a libérer et réutiliser les vnodes &merged; Le tampon des messages noyau est maintenant accessible (de façon indépendante de l'architecture) via la variable sysctl kern.msgbuf; &man.dmesg.8; n'a plus besoin d'être SGID kmem.&merged; L'environnement du noyau est maintenant dynamique, et peut être changé via l'appel système &man.kenv.2;. L'appel système &man.kqueue.2; a été ajouté au noyau &os;. C'est une nouvelle interface qui remplace &man.poll.2;/&man.select.2;, qui offre de mailleurs performances ainsi que la possiblité de rapporter différents type d'événements. Il supporte la supervision des changements dans les sockets, les pipes, les fifos, les fichiers, les signaux et les processus.&merged; une nouvelle option du noyau KVA_SPACE permet de reconfigurer la taille de l'espace adressable virtuel du noyau. &merged; Le gestionnaire de périphérique &man.labpc.4; a été retirer du a bitrot. Le chargeur et le linker du noyau vérifient via la présence du fichier linker.hints dans chaque répertoire des modules chargeables par le noyau du nom du module et de la version du fichier KLD. L'utilitaire &man.kldxref.8; permet de générer ces fichiers. L'émulation Linux supporte maintenant les fonctionnalités noyau nécessaires au port emulators/linux_base-7 (émulation RedHat 7.X). &merged; L'émulation linux nécessite maintenant l'option options SYSVSEM dans le fichier de configuration du noyau. &merged; **&man.lomac.4;, a Low-Watermark Mandatory Access Control security facility, has been added as a kernel module. It provides a drop-in security mechanism in addition to the traditional UID-based security facilities, requiring no additional configuration from the administrator. Work on this feature was sponsored by DARPA and NAI Labs. &os; supporte maintenant un environnement extensible de Mandatory Access Control. Il permet aux modules chargeables de noyau d'être lier au noyau au moment de la compilation, du démarrage ou de l'exécution et augmente donc la politique de sécurité du système. L'implémentation de l'environnement MAC est en cours. Les enregistrements d'architecture machine de vérification sont maintenant collectés au moment du démarrage et sont disponibles via les variables sysctl hw.mca.*. La variable de configuration du noyau maxusers est maintenant paramétrable au moment du démarrage. Les autres paramètres dépendant de maxusers sont maintenant modifiables au démarrage. Le paramètre hz est lui aussi modifiable.&merged; Une valeur de 0 pour la variable noyau maxusers indique de calculer, au moment du démarrage, une valeur apropriée (entre 32 et 384, en fonction de la quantité de mémoire). C'est la valeur par défaut du noyau GENERIC. &merged; L'option noyau MAXMEM , couplée a la variable hw.physmem permet de réduire, de façon articielle, la quantité de mémoire présente sur une machine pour les tests (ou d'autres choses).&merged; Les parametres noyau MAXTSIZ, DFLDSIZ, MAXDSIZ, DFLSSIZ, MAXSSIZ, et SGROWSIZ sont maintenant des variable modifiables (kern.maxtsiz, kern.maxdfldsiz, etc.). &merged; Le code de profiling de &man.mutex.9; a été ajouté et est activable via l'option de configuration du noyau MUTEX_PROFILING. Cela permet d'activer la hiérarchie des variables sysctl debug.mutex.prof.*. Les options de configuration du noyau NCPU, NAPIC, NBUS, et NINTR, permettant de configurer les noyaux SMP, ont été retirés. L'option NCPU est maintenant fixée a 16 et les autres options sus-mentionnées sont dynamiques. &merged; Un gestionnaire de périphérique null-modem, &man.nmdm.4; a été ajouté. &merged; L'option O_DIRECT a été ajoutée a &man.open.2; et &man.fcntl.2;. L'ajout de cette option au moment de l'ouverture de fichiers tente de minimiser les effects du cache en lecture et en écriture &merged; Le gestionnaire de périphérique &man.orm.4; a été ajouté permettant d'utiliser la ROM optionnel dans l'espace mémoire ISA des I/O, cela permet de prévenir d'autres gestionnaires de périphériques de réclamer cette espace mémoire et donc d'entrer en conflit avec.&merged; Le support PECOFF (format d'éxécution Win32) a été ajouté. Le gestionnaire de périphérique pcm supporte maintenant la gestion d'énergie de the NEC PC-98NOTE.&merged; Les objets de mémoire partagés POSIX.1b sont maintenant supportés. L'implémentation utilise des fichiers, mais active automatiquement l'option MAP_NOSYNC lorsqu'ils sont &man.mmap.2;-ed. &merged; Les différentes options PQ_*CACHE ont été remplacées par une seule option PQ_CACHESIZE permettant de fixer la taille du cache en kilobytes. Les anciennes options sont toujours supportées pour la compatibilité.&merged; Le gestionnaire de périphérique &man.puc.4; (PCI Universal Communications) a été ajouté, permettant de connecter les ports séries PCI au gestionnaire &man.sio.4;. Le gestionnaire de périphérique &man.random.4; a été réécrit pour utiliser l'algorithme Yarrow. Il permet d'obtenir une meilleur entropy, depuis différentes sources, incluant la console, les interfaces réseaux Ethernet et PPP, et les périphériques de stockage. L'entropy de &man.random.4; est maintenant périodiquement sauvegardé dans des fichiers dans le répertoire /var/db/entropy, ainsi que au moment de l'arret du système. La sémantique de /dev/random a changé; il ne bloque plus en attendant des bits d'entropy, mais génére un flux de pseudo données aléatoires exactement comme /dev/urandom. Une nouvelle option du noyau, options REGRESSION, active les interfaces et les fonctionnalités utiles lors des phases de regression et de correction. Le supportRLIMIT_VMEM support a été ajouté. Cette fonctionnalité définit une nouvelle ressource limite qui couvre l'ensemble de l'espace mémoire virtuel d'un processus, incluant l'espace &man.mmap.2;. Cette limite peut être configurée via la nouvelle variable vmemoryuse de &man.login.conf.5;. &merged; Le support pour les périphériques basés sur le bus SBus a été ajouté. Le périphérique se, permettant de supporter le controleur série Siemens SAB82532, que l'on trouve sur les nouvelles machines Ultra Sparc, a été ajouté. Le périphérique &man.snp.4; n'est plus statique et peut maintenant être compilé en module. &merged; Un gestionnaire de périodiquement &man.spic.4;, permettant d'accéder au périphérique d'appel de certains portable Sony, a été ajouté. Le gestionnaire de périphérique &man.syscons.4; supporte maintenant le copier-coller via le clavier, par défaut via les touches Shift-Insert. Le timer de retransmission du protocole &man.tcp.4; peut maintenant etre manipulé via les variables sysctl: net.inet.tcp.rexmit_min et net.inet.tcp.rexmit_slop. Le procotole &man.tcp.4; dispose de la possibilité de limiter dynamiquement la fenêtre d'envoi pour maximiser la bande passante et réduire les temps de transit. Cette fonctionnalité est activable via la variable sysctl net.inet.tcp.inflight_enable Le support des périphériques USB a été ajouté au noyau GENERIC et au programme d'installation pour permettre de supporte les périphériques USB par défaut. Notez que SRM ne supporte pas tous les périphériques USB actuellement, et donc vous devez utilisez un clavier AT si vous n'utilisez pas une console série.&merged; Le gestionnaire de périphérique uaudio, permettant de supporter les périphériques audio USB a été ajouté. &merged; Un gestionnaire de périphériques &man.umodem.4; pour les modems USB a été ajouté. Il supporte les modems 3Com 5605 et Metricom Ricochet GS wireless USB modems. &merged; Un gestionnaire de périphériques &man.uscanner.4; permettant le support basique de scanner USB utilisant SANE a été ajouté. Référez vous a la page SANE pour la liste des scanners supportés Les scanners HP ScanJet 4100C, 5200C et 6300C sont supportés. &merged; Pour augmenter la sécurité, l'option de configuration du noyau UCONSOLE a été retiré. La fonctionnalité UserConfig lors du démarrage du noyau, utilisé pour activer, désactiver, ou configurer les périphériques ISA, a été retiré. Cette fonctionnalité a été remplacée par le fichier hints du noyau dans /boot/device.hints. L'option du noyau USER_LDT est maintenant activée par défaut. Le gestionnaire de périphériques &man.uvisor.4; permettant de connecter les Handspring Visors via USB a été ajouté. &merged; Un gestionnaire de périphériques VESA S3 linear framebuffer a été ajouté. Le gestionnaire de périphérique &man.viapm.4; permettant de gérer l'énergie sur les controleurs VIA SMBus a été ajouté. &merged; **Write combining for crashdumps has been implemented. This feature is useful when write caching is disabled on both SCSI and IDE disks, where large memory dumps could take up to an hour to complete. &merged; L'infrastructure de gestion des crash noyau a été revue, pour supporter les nouvelles plateformes. L'implication principale est que le format du fichier des crash sur disque a été modifié, et est maintenant indépendant de l'ordre des octets. Les très grands swap (>67 GB) ne panique plus le système. Le support pour les threads en émulation Linux a été ajouté. La cible buildkernel prend en compte la variable KERNCONF et non plus KERNEL pour savoir quel fichier du noyau créer. Il n'est plus nécessaire, dans certains cas, de faire précéder un buildkernel par un buildworld. (Un buildworld est nécessaire pour la mise à jour lors des version majeures, ou de la mise à jour de binutil et lors de changements dans &man.config.8;.) &merged; Le code de terminaison des processus lorsqu'il n'y a plus de swap commence maintenant a terminer plus tot les processus, pour empecher les deadlocks; il prend en compte la quantité d'espace de swap utilisé par les processus lors du calcul de la taille des processus.&merged; Les définitions du linker sont maintenant inclues par défaut; &man.gensetdefs.8; n'est donc plus nécessaire et a donc été retiré. Le clonage de périphérique réseau a été implémenté, et le périphérique &man.gif.4; a été modifié pour en tirer parti. Donc maintenant au lieu de spécifié le nombre d'interfaces &man.gif.4; disponibles dans le fichier de configuration du noyau, L'option de &man.ifconfig.8; doit etre utilisée lorsqu'une autre instance de périphérique est désirée. &merged; Il est maintenant possible de rajouter des variables d'environnement directement dans le noyau au moment de la compilation en utilisant la directiveENV de &man.config.8; . **Idle zeroing of pages can be enabled with the vm.idlezero_enable sysctl variable. Les adresses de chargement du noyau sont maintenant exportées dans une table de symboles et différentes constantes anciennement codées en dur ont été retirées, ce qui permet a certains programmes, comme &man.ps.1;, de fonctionner avec des noyaux compilés a différentes adresses. &merged; Le vidage de mémoire des gros processus (ou d'un nombre importantde processus) ne bloque plus la machine pour un long moment. &merged; The &os; kernel scheduler now supports Kernel-Scheduled Entities (KSEs), which provides support for multiple threads of execution per process similar to Schedular Activations. At this point, the kernel has most of the changes needed to support threading. The kernel scheduler can schedule multiple threads per process, but only on a single CPU at a time. Support for userland programs to create and utilize multiple threads is not yet completed. KSE is a work in progress. Le noyau prend en compte maintenant le concept que il y a des unités plus petites que un processus a gérer (mais il ne peut avoir plus d'un thread par processus autorisé a un moment précis). Le noyau supporte maintenant plusieurs périphériques bas-niveau pour la console. Le nouvel utilitaire &man.conscontrol.8; permet de gérer ces différentes consoles.. Le gestionnaire de périphériques des console supporte maintenant les cartes graphiques de type TGA. Le noyau se trouvant sur les CDs d'installation est maintenant séparé de l'image mfsroot. Cela permet d'utiliser un noyau complet lors de l'installation sur des machines permettant de démarrer sur les CDs (plutot que d'avoir le noyau restreint utilisé sur les disquettes). &merged; **The system load average computation now adds some jitter to the timing of samples, in order to avoid synchronization with processes that run periodically. &merged; Si vous créez un noyau de déboggage (en utilisant par ex makeoptions DEBUG=-g),les modules chargeables a la demande seront aussi compiler avec le support de déboggage. Le seul problème engendré sera que les modules construits avec un noyau de déboggage prendront plus de place disque de précedemment. &merged; Le périphérique de dump noyau peut maintenant etre activé via le module chargeur dumpdev. Cela permet dorénavant d'obtenir des informations sur les crashs du a des panic aux derniers moments d'initialisation du noyau (avant que le système ne passe en mode mono-utilisateur). &merged; L'allocateur de mémoire du noyau est maintenant un distributeur "galettes" de mémoire, similaire à celui de celui qui est utilisé dans Solaris. C'est un système d'allocation mémoire compatible SMP, qui a une performance quasi-linéaire lorsque le nombre de CPUs augmente. Il réduit aussi la fragmentation mémoire. Support des cartes mères et des processeurs Le support multi-processeur SMP a été largement revu, et le code de BSD/OS 5.0 a été incorporé. Une des fonctionnalités importantes de SNMPng ((SMP Next Generation) est de permettre a plus de processus de fonctionner en mode noyau, tout en ne nécessitant pas de "spin locks" qui réduisent énormément l'utilité des systèmes multi-processeurs. Les "handlers" d'interruptions ont maintenant leur propre contexte, ce qui permet de les bloquer et donc qui permet de réduire le besoin de poser des "locks" sur les interruptions. Le support des processeurs 80386 a été retiré du noyau GENERIC car ce code réduisait la performance sur les autres processeurs IA32. L'option noyauI386_CPU permettant le support des processeurs 80386 est maintenant exclusive par rapport au support des autres processeurs IA32; cela devrait sérieusement augmenter la performance sur les 80386 du a l'élimination des vérifications du type de processeur au moment de l'éxécution. Les noyaux devant tournés sur des 80386 peuvent etre construits en ne rajoutant dans les options CPU du noyau uniquement I386_CPU. Les serveurs AlphaServer 1200 (Tincup) ont été testés et fonctionnent. Pour l'instant il n'est pas possible de démarrer depuis un CD ou un lecteur de disquette, mais en prenant un disque venant d'un autre server Alpha cela fonctionne.&merged; La carte mère API UP1100 est validée . Les serveurs API CS20 1U sont validés. Le support pour les AlphaServer 2100A (Lynx) a été ajouté. Du code dans le noyau a été ajouté pour permettre a de vieilles générations de processeurs Alpha(EV4 et EV5) d'émuler les instructions pour les nouvelles générations de processeurs Alphas. Cela permet d'utiliser certains programmes, disponibles uniquement en binaire, comme Adobe Acrobat 4 sur des processeurs EV4 et EV5. Le support SMP sur Alpha est maintenant opérationnel. La détection des nouveaux processeurs, comme FC-PGA2 Pentium III (Tualatin), Transmeta Crusoe, et Transmeta Crusoe LongRun, a été ajouté. &merged; Le support du matériel suivant a été retirer du noyau d'installation pour permettre d'obtenir une disquette 1.44.Mb: Multia, NoName, PC64, EB64, Aspen Alpine, sa (SCSI tape), amr, support du port parallel, vx (3c590, 3c595), pcn (AMD Am79C97x PCI 10/100), sf (Adaptec AIC-6915), sis (SiS 900/SiS 7016), ste (Sundance ST201 (D-Link DFE-550TX)), wb (Winbond W89C840F). Le support pour Streaming SIMD Extensions (SSE) a été introduit. L'option du noyau CPU_ENABLE_SSE controle l'intégration dans le noyau.&merged; L'option du noyau CPU_ATHLON_SSE_HACK a été ajouté, permettant d'activer la fonctionnalité SSE sur les nouveaux CPU Athlon si le BIOS oubliait de l'activer. &merged; La plateforme UltraSPARC est maintenant supportée par &os;. Les machines suivantes sont supportée jusqu'à un certain niveau: Ultra 1/2/5/10/30/60, Enterprise 220R/420R, Netra T1 AC200/DC200, Netra T 105, et Blade 100. Le multi-processeur est supporté, et a été testé sur Ultra 2, Ultra 60, Enterprise 220R, et Enterprise 420R. Sur certains systèmes, le BIOS n'active par les ports d'entrée/sortie et la mémoire des périphériques PC, ce qui les rend inutilisables. La variable sysctl hw.pci.enable_io_modes (par défaut à 1, pour activé) force &os; à activer ces périphériques, et ils peuvent donc être utilisés. Le support pour les Alpha TurboChannel Alphas a été retiré. Le support pour les AMD Élan SC520 a été ajouté; cela nécessite l'option CPU_ELAN dans le fichier de configuration du noyau. Gestionnaire de démarrage boot2 supporte maintenant l'option pour désactiver l'interruption du démarrage par l'appui sur des touches. &merged; Un nouvel utilitaire cdboot pour les CDROMs donne une meilleur compatibilité avec certains BIOS qui ne respectait pas totalement l'implémentation standard des CDROM bootable El Torito . Le nouveau gestionnaire de démarrage supporte le mode no emulation de démarrage qui permet d'éliminer le besoin d'émulation d'une image mémoire d'une disquette pour un CDROM bootable. &merged; Le gestionnaire de démarrage i386 supporte maintenant un nouveau type de console,nullconsole, permettant d'utiliser un système sans carte vidéo et sans port série. &merged; Le programme &man.loader.8; dispose maintenant du support optionnel (activer a la compilation, désactivé par défaut) pour charger des noyaux et des modules compressés en bzip2. &merged; Le support Intel's Wired for Management 2.0 (PXE) a été ajouté au gestionnaire de démarrage de &os;. Du a des différences d'API, l'ancienne version de PXI n'est plus supportée. Cela permet de démarrer en réseau en utilisant le DHCP.&merged; Le gestionnaire de démarrage de &os; contient maintenant un correctif permettant de supporte le démarrage sur un CDROM sur certains BIOS IBM qui s'attendaient a ce que le premier secteur de l'émulation des disquette contiennt un BPB MS-DOS valide pour qu'ils puissent le modifier. &merged; Le gestionnaire de démarrage de &os; dispose maintenant d'une option permettant de forcer le noyau a faire une pause entre chaque ligne d'affichage au moment de la phase de détection. &merged; Le gestionnaire de démarrage de &os; est maintenant capable de démarrer depuis des systèmes de fichier ayant des tailles de block de plus de 8K.&merged; Le noyau et les modules ont été déplacés dans le répertoire /boot/kernel, pour permettre de les manipuler ensemble de façon plus simple. Le gestionnaire de démarrage a été mise à jour pour refléter ce changement. Support des interfaces réseau Le gestionnaire de périphériques &man.an.4; pour les cartes Cisco Aironet supporte maintenant le chiffrement "Wired Equivalent Privacy" (WEP), et est controlable via &man.ancontrol.8;.&merged; Le gestionnaire de périphériques &man.an.4; supporte maintenant les séries Cisco Aironet 350. &merged; Le gestionnaire de périphériques &man.an.4; supporte le mode monitor controlable via l'option de &man.ancontrol.8;. &merged; Le gestionnaire de périphériques &man.an.4; supporte maintenant Cisco LEAP aussi bien que les clefs WEP. Les utilitaires Aironet Linux sont supportés sous l'émulation. &merged; Le support générique pour les réseaux à jetons de type ARCNET a été ajouté. &merged; Le gestionnaire de périphériques &man.bge.4; a été ajouté et permet de gérer les cartes de la famille des controleurs Gigabit Ethernet Broadcom BCM570x, cela inclut les cartes 3Com 3c996-T, SysKonnect SK-9D21 et SK-9D41, et les cartes Gigabit Ethernet des serveurs Dell PowerEdge 2550. Les "jumbo frames", le marquage des VLAN et le controle de sortie "TCP/IP offload" sont supportés, tout comme la moderation des interruptions.&merged; Le gestionnaire de périphériques cm a été ajouté et permet de supporter les cartes ARCNET SMC COM90cx6 ARCNET. &merged; Le gestionnaire de périphériques &man.dc.4; supporte désormais les cartes à base de composants Xircom 3201 et Conexant LANfinity RS7112. Le gestionnaire de périphériques &man.dc.4; supporte maintenant les VLAN. Le gestionnaire de périphériques &man.de.4; effectue maintenant une arbitration à base de "round-robin" entre les réceptions et les transmissions du 21143 à la place de donner la priorité a l'unité de reception. Cela permet de gagner 10–15% de performances lors des gros transferts. &merged; Le gestionnaire de périphériques &man.ed.4; est supporté. Les cartes Fast Ethernet Linksys PCCARD supportés via le gestionnaire de périphériques &man.ed.4; nécessite maintenant l'ajout du drapeau 0x80000 à la ligne de configuration de &man.pccard.conf.5;. Ce drapeau n'est pas optionnel. Les cartes Linksys ne serait pas reconnues sans lui. &merged; Un problème avec le gestionnaire de périphériques &man.ed.4; qui pouvait résulter en un "panic" du système avec les très petits paquets et les BPF ou le pontage activé a été fixé. &merged; Le gestionnaire de périphériques &man.ed.4; supporte maintenant les composants D-Link DL10022 chips, nécessaires pour certaines cartes dont la carte NetGear FA-410TX. Le gestionnaire miibus est maintenant nécessaire dans la configuration du noyau pour le gestionnaire de périphériques &man.ed.4;. &merged; Le gestionnaire de périphériques &man.el.4; peut maintenant etre chargé en module. Le gestionnaire de périphériques &man.em.4; supporte maintenant les cartes basées sur les composants controleurs Gigabit Ethernet Intel 82544, 82542, et 82543. Le gestionnaire supporte les "jumbo frames" et les "checksum offload" en émission/réception sur les cartes basées sur les composants 82543 et 82544. &merged; Le périphérique &man.faith.4; est maintenant chargeable, déchargeable et clonable. &merged; Le support des cartes Ethernet Fujitsu MB86960A/MB86965A PC-Cards a été de nouveau rajouté au gestionnaire de périphériques &man.fe.4;. &merged; Le gestionnaire de périphériques &man.fpa.4; supporte maintenant les cartes DEFPA FDDI Digital sur les architectures Alpha. &merged; Le gestionnaire de périphériques &man.fxp.4; nécessite maintenant l'entrée device miibus dans le fichier de configuration du noyau. &merged; Le gestionnaire de périphériques &man.fxp.4; contient maintenant un correctif pour la violation de protocole PCI causé sur certains systèmes basés sur des composants Intel ICH2/ICH2-M. Le correctif consiste à lécriture dans l'EEPROM de l'interface a désactiver pour le mode "Dynamic Standby"; une fois l'EEPROM modifiée, le système doit etre redémarré pour que les modifications soient prises en compte. &merged; **The &man.fxp.4; driver now supports Intel's loadable microcode to implement receive-side interrupt coalescing and packet bundling, on NICs that support these features. This support can be activated by the use of the option to &man.ifconfig.8;. &merged; Le gestionnaire de périphériques gem a été ajouté pour supporté les cartes Sun GEM Gigabit Ethernet et ERI Fast Ethernet. Le gestionnaire de périphériques &man.gx.4; a été ajouté et permet de gérer les cartes basées sur les controleurs Gigabit Ethernet Intel 82542 et 82543. Les versions fibres et cuivre sont supportées. Les deux cartes supportent l'insertion de VLAN et le taggage de VLAN, les cartes 82543 supportent un plus les "checksum offload" TCP/IP. &merged; Le gestionnaire de périphériques hme a été ajouté pour ajouter le support des cartes Sun HME Fast Ethernet, que l'on trouve sur beaucoup de cartes mères des séries de machines Sun Ultra. The &man.lge.4; driver has been added to support the Level 1 LXT1001 NetCellerator Gigabit Ethernet controller chip. This device is used on some fiber optic GigE cards from SMC, D-Link and Addtron. Jumbograms and TCP/IP checksum offload on receive are supported, although hardware VLAN filtering is not. &merged; Le gestionnaire de périphériques my, permettant le support des cartes Myson Fast et Gigabit Ethernet, a été ajouté. &merged; Le gestionnaire de périphériques &man.nge.4; a été ajouté et supporte les cartes PCI Gigabit Ethernet basées sur les controleurs National Semiconductor DP83820 et DP83821, incluant les controleurs D-Link DGE-500T, SMC EZ Card 1000 (SMC9462TX), Asante FriendlyNet GigaNIC 1000TA et 1000TPC et Addtron AEG320T. Ce gestionnaire de périphériques supporte le déchargement des sommes de controle en émission et en réception. &merged; Le gestionnaire de périphériques &man.pcn.4; a été ajouté et supporte les cartes AMD PCnet/FAST, PCnet/FAST+, PCnet/FAST III, PCnet/PRO, PCnet/Home, et HomePNA. Ces cartes sont toujours supportées par le gestionnaire &man.lnc.4;, le gestionnaire &man.pcn.4; permet de faire fonctionner ces composants en mode 32bits et utilise la fonction d'alignement RX pour permettre de recevoir sans effectuer de copie. Ce gestionnaire est indépendant de l'architecture, il fonctionne donc aussi bien sur I386 que sur Alpha. Le gestionnaire &man.lnc.4; continue a etre nécessaire pour les cartes non PCI. &merged; Le gestionnaire de périphériques &man.ray.4;, supportant les cartes réseau sans-fil Webgear Aviator a été ajouté. Les opération sur l'interfaces &man.ray.4; s'effectue via &man.raycontrol.8;. &merged; Le gestionnaire de périphériques &man.rp.4; a été mis à jour en version 3.02 et peut être compilé en module. &merged; Le gestionnaire de périphériques sbni, permettant de supporter les interfaces de comunications Granch SBNI12, point a point ISA et PCI a été ajouté. Le port sysutils/sbniconfig contenu dans la collection des ports de &os; peut etre utilisé pour configurer ces périphériques.&merged; Le support des cartes PCI Ethernet basées sur les controleurs SiS 900 et SiS 7016 Fast Ethernet (par exemple, les composants se trouvant sur les cartes mères SiS 635 and 735), et les composants National Semiconductor DP83815 (incluant NetGear FA311-TX et FA312-TX) a été ajouté via le gestionnaire de périphériques &man.sis.4;. Ce gestionnaire supporte les VLANs. &merged; Le gestionnaire de périphériques snc pour les controleurs de cartes Ethernet National Semiconductor DP8393X (SONIC) a été ajouté. Actuellement ce gestionnaire est uniquement utilisé sur les architectures PC-98.&merged; Le périphérique &man.stf.4; est maintenant clonable. Le gestionnaire de périphériques &man.tap.4;, un gestionnaire de périphériques virtuel Ethernet nécessaire pour les configuration en point, a été ajouté. Ce périphérique est clonable. &merged; Le gestionnaire de périphériques &man.ti.4; supporte maintenant les cartes Gigabit Ethernet Alteon AceNIC 1000baseT et Netgear GA620T 1000baseT . &merged; Le gestionnaire de périphériques &man.ti.4; masque maintenant correctement le marquage de VLAN. &merged; Le gestionnaire de périphériques &man.tx.4; supporte maintenant réellement le filtrage multicast. Le gestionnaire de périphériques &man.txp.4; a été ajouté et supporte les cartes basées sur le composant 3Com 3XP Typhoon/Sidewinder (3CR990). &merged; Le périphérique &man.vlan.4; est maintenant chargeable, déchargeable et clonable. &merged; Le gestionnaire de périphériques &man.wi.4; supporte maintenant les cartes Prism II et Prism 2.5. Le WEP 104/128-bit fonctionne maintenant correctement sur les cartes Prism. &merged; Le gestionnaire de périphériques &man.wi.4; supporte l'utilisation de &os; comme point d'accès sans fil. Cette fonction peut être activée avec l'option mediaopt hostap de &man.ifconfig.8;. Cette fonctionnalitée nécessaite une carte basée sur un controlleur Prism II. &merged; Le gestionnaire de périphériques &man.wi.4; supporte maintenant les bsd-airtools. &merged; Le gestionnaire de périphériques xe peut maintenant être compilé en module. &merged; Le gestionnaire de périphériques &man.xl.4; supporte maintenant les cartes 3Com 3C556 and 3C556B MiniPCI utilisées sur certains ordinateurs portables. &merged; Le gestionnaire de périphériques &man.xl.4; supporte maintenant les trames de VLAN marqués en réception(sur les cartes a base de composants Cyclone ou plus récents). &merged; Le gestionnaire de périphériques &man.xl.4; supporte maintenant le déchargement des sommes de controles TCP/IP en réception et en émission sur les cartes implémentant cette fonctionnalité, comme les cartes 3C905B, 3C905C, et 3C980C. &merged; Un bogue dans le gestionnaire &man.xl.4;, relatif a un débordement de statistiques lors de la gestion des interruptions, pouvant causer des ralentissements lors de taux de traitements plus ou moins importants de paquets, a été résolu. &merged; La structure de données ifnet d'une interface, peut maintenant indiquer les fonctions supportées par une carte réseau, et lesquelles sont activées. &man.ifconfig.8; d'obtenir ces informations. &merged; Les performances pour les serveurs ayant un grand nombre d'alias IP ont été augmentées, en remplacant la liste linéaire if_inaddr par un tableau de hashage. &merged; Les périphériques réseaux apparaissent maintenant automatiquement comme des fichiers spéciaux dans /dev/net. Des ioctls matériels su les interfaces ( en excluant le protocol ou le routage) peut etre effectué sur ces périphériques. L'ioctl SIOCGIFCONF peut etre effectué sur le fichier /dev/network. Certains gestionnaires de périphériques implémentent maintenant un mode semi-interrogation, qui permet aux systèmes d'etre plus robustes aux attaques et surcharges. Pour activer l'interrogation, les options suivantes sont nécessaires dans le fichier de configuration du noyau: options DEVICE_POLLING options HZ=1000 # pas obligatoire, mais fortemment recommandé La variable sysctl kern.polling.enable activera ensuite le mode d'interrogation; la variable sysctl kern.polling.user_frac indiquant le pourcentage de temps CPU à reserver dans le mode utilisateur. Les gestionnaires supportant cette fonctionnalité sont &man.dc.4;, &man.fxp.4;, et &man.sis.4;. Plus de détails peuvent etre trouvé a la page de manuel de &man.polling.4;. &merged; La perfomance de certains gestionnaires de périphériques réseaux (spécifiquement &man.dc.4; et &man.sis.4;) a été améliorée par l'élimination d'inutiles copies de tampons.&merged; Protocoles réseau Le fonctionnalité noyau &man.accept.filter.9;, permettant de réduire le temps d'acceptation et de lecture sur les nouvelles connexions sur les sockets en attente a été ajoutée. &merged; La valeur proxy de l'option de &man.arp.8; a été renommé en pub, pour la cohérence avec l'option . Le mot clef only a été ajouté a l'option et l'option , pour permettre de créer des entrées publiées en proxy-only. &merged; La fonctionnalité de temporisation de lecture de &man.bpf.4; fonctionne maintenant correctement avec &man.select.2;/&man.poll.2;, et aussi avec les "pthreads". &merged; &man.bridge.4; et &man.dummynet.4; ont recus des améliorations et des corrections de bogues, et sont maintenant des modules chargeables. &merged; &man.bridge.4; a maintenant un support amélioré pour les clusters multi-bridge indépendant et est maintenant plus stable lors de la présence d'attachements et de détachements dynamique. Les VLANs sont aussi supportés. &merged; Un gestionnaire de périphériques &man.gre.4;, qui encapsule les adresses IP en utilisant GRE (RFC 1701) ou l'encapsulation minimale pour IP mobile (RFC 2004), a été ajouté. Les réponses ICMP ECHO et TSTAMPsont maintenant limitées. Les RSTs TCP générés du a des ports ouverts et semi-ouverts sont maintenant limités par des compteurs séparés. Chaque taux de file de limitation a maintenant sa propre description. Les messages ICMP UNREACH_FILTER_PROHIB peuvent maintenant ré-initialisés des connexions TCP dans l'état SYN_SENT si le numéro de séquence correct est renvoyé. Cette fonctionnalité est controllée par la variable sysctl net.inet.tcp.icmp_may_rst. IP multicast fonctionne mainetant sur les périphériques VLAN. Plusieurs autres bogues dans le code des VLAN ont été corrigés. &man.ipfw.4; filtre maintenant correctement sur la présence de bits ECN dans les segments TCP. &merged; Un nouveau noeud netgraph &man.ng.etf.4; permet au paquets de type Ethernet d'etre filtrés sur différents critères sur les "ethertype". Les noeuds netgraph &man.ng.gif.4; et &man.ng.gif.demux.4; opérants sur les gestionnaires de périphériques &man.gif.4; ont été ajoutés. Le noeud netgraph &man.ng.ip.input.4;, permettant de créer des files d'attentes des paquets IP dans le code d'execution principal de la couche IP a été ajouté. Les type de noeud &man.ng.mppc.4; et &man.ng.bridge.4; ont été ajouté au sous-système &man.netgraph.4;. Le noeud &man.ng.ether.4; est maintenant chargeable dynamiquement. Différents bogues et améliorations ont été effectuées. &merged; Un nouveau noeud netgraph; &man.ng.one2many.4;, permettant de multiplexer et démultiplexer les paquets sur plusieurs liens a été ajouté.&merged; Une nouvelle variable sysctl net.inet.ip.check_interface, activée par défaut, permet de vérifier que le paquet arrivant sur une interface a une addresse correspondante à l'addresse de destination du paquet. &merged; Une nouvelle variable sysctl net.link.ether.inet.log_arp_wrong_iface a été ajoutée et permet de supprimer le log des requetes ARP lorsque le retour d'une paquet ARP arrive sur la mauvaise interface&merged; Une nouvelle option noyau options RANDOM_IP_ID permet au champ ID des paquets IP d'etre aléatoire. Cela permet d'empecher a un observateur distant de calculer a quelle vitesse la machine génère des paquets. Précédemment a chaque paquet un compteur était incrémenter.&merged; SLIP a été retiré de l'image disquette mfsroot. TCP a recu différentes corrections de bogues pour les ACK retardés. &merged; TCP supporte maintenant la modification "NewReno" sur l'algorithme " TCP Fast Recovery". Cette fonctionnalité est controlable via la variable sysctlnet.inet.tcp.newreno. &merged; TCP utilise maintenant une minuterie plus agressive pour les SYN initiaux; cela permet de dropper de façon plus rapide les tentatives de connexions. &merged; L'option noyau TCP_COMPAT_42 a été retirée. &merged; L'option noyau TCP_RESTRICT_RST a été retirée. Une fonctionnalité similaire peut etre trouvée via la variable sysctl net.inet.tcp.blackhole. &merged; Les extensions du RFC 1323 de TCP sont maintenant activées par defaut dans &man.rc.conf.5;. &merged; Les extensions des RFC 1323 et TFC 1644 de TCP sont maintenant désactivées si aucune réponse au 3eme SYN envoyé n'est reçue lors d'une demande de connexion. Cette fonctionnalité permet de travailler avec les (tres vieux) serveurs de terminaux ayant une implémentation de l'entete VJ de compression boggué. &merged; L'implémentation TCP de nécessite plus l'allocation d'une structure TCP pour chaque connexion; cela permet de réduire le nombre de tampons utilisés sur des systèmes ayant énormément de connexions. &merged; La taille des tampons TCP par défaut, controllée par les variables sysctl net.inet.tcp.sendspace et net.inet.tcp.recvspace, a été augmentée respectivement à 32K et 64K. Précedemment cette valeur était de 16K pour chaque tampon. Pour essayer d'éviter l'augmentation de la congestion, la valeur par défaut de net.inet.tcp.local_slowstart_flightsize a été changée de l'infini a 4. &merged; Sur des machines très chargées, la nouvelle valeur de la taille des tampons peut nécessiter une augmentation manuelle du paramètre NMBCLUSTERS, soit dans le fichier de configuration du noyau, ou via la variable kern.ipc.nmbclusters. netstat -mb permet de monitorer l'etat des clusters mbuf. TCP supporte maintenant le RFC 1948(Defending Against Sequence Number Attacks). Cette fonctionnalité est controlable via les variables sysctl net.inet.tcp.strict_rfc1948 et net.inet.tcp.isn_reseed_interval. &merged; L'implémentation TCP de &os; comporte maintenant un cache en réception des segments SYN. L'arrivé d'un segmentSYN ajoute alors une entrée dans le cache en attendant la fin de la séquence d'initialisation des 3 états TCP, a chaque point la mémoire est alloué comme auparavant. En plus touts les numéros de séquences initiale TCP (ISN) sont utilisés comme "cookies", permettant a chaque entrée du cache d'etre détruite, tout en ayant leur ACK correspondant accepté plus tard. La combinaison de ces fonctionnalités appelées syncache et syncookies permet a une machine d'etre plus resistante aux attaques par déni de services TCP. Cette fonctionnalité est fournie grace au sponsor du DARPA et NAI Labs. &merged; Un bogue dans l'implémentation TCP, figeant une connexion si l'emetteur fixait une fenetre de zero, a été corrigé.. &merged; Disques et Stockage Le support des cartes de la famille Adaptec FSA des contrtoleurs RAID PCI-SCSI a été ajouté sous la forme du gestionnaire de périphériques &man.aac.4;. Ce gestionnaire gére correctement les commandes suivantes initiées par la carte, ajout/retrait des disques, la fonction de "crashdump" et les commandes &man.ioctl.2; nécessaires pour la gestion CLI. Ce gestionnaire a été vérifié par Adaptec.&merged; Le gestionnaire de périphériques &man.ahc.4; a reçu de nombreuses modifications, corrections de bogues et améliorations. Parmi les différentes améliorations il dispose d'une meilleur compatibilité avec les puces en mode RAID Port et les systèmes comportant des cartes AAA et/ou ARO, et des améliorations de la performance. Des bogues ont été fixés, comme celui qui figeait les controleurs Ultra2/U160. &merged; Le gestionnaire de périphériques &man.asr.4; permettant de supporter les cartes controleurs Adaptec SCSI RAID et les familles DPT SmartRAID V et VI, a été ajouté.&merged; Le gestionnaire de périphériques &man.asr.4; supporte maintenant les controleurs RAID Adaptec 2000S et 2005S Zero-Channel. &merged; Le gestionnaire de périphériques &man.ata.4; supporte maintenant les controleurs ATA100. En plus il supporte maintenant les puces ServerWorks ROSB4 ATA33, CMD 648 ATA66 et CMD 649 ATA100 et Cyrix 5530. &merged; Pour une configuration plus fexible, les différentes options du gestionnaire &man.ata.4; sont maintenant modifiables via le gestionnaire de démarrage, plutot que au niveau du fichier de configuration du noyau.&merged; Le gestionnaire de périphériques &man.ata.4; supporte maintenant le mécanisme de marquage de file, qui est activable via la variable de démarrage hw.ata.tags. &merged; Le gestionnaire de périphériques &man.ata.4; supporte maintenant les pseudo controleurs RAID ATA comme les controleurs Promise Fasttrak et HighPoint HPT370.&merged; Le gestionnaire de périphériques &man.ata.4; supporte maintenant un grand nombre de puces SiS, listé dans les Notes Matérielles. &merged; La fonctionnalité BurnProof(TM), disponible sur les graveurs de CDROM ATAPI et maintenant disponible.&merged; Le gestionnaire de périphériques &man.ata.4; supporte dispose du support d'adressage 48-bit. Les périphériques de plus de 137GB sont maintenant supportés. &merged; Le gestionnaire de périphériques &man.ata.4; est maintenant corrigé pour les systèmes utilisant les puces VIA 82C686B Southbridge, qui entrainait une corruption des données. &merged; Les erreurs de récupération CAM ont été mises à jour. Le gestionnaire de périphériques &man.cd.4; supporte maintenant les écritures. Cela permet d'écrire sur les DVD-RAM, PD et d'autres lecteurs qui sont signalés comme des périphériques CD. Notez que cette modification affecte uniquement les périphériques a accès en écriture aléatoire, et pas les périphériques a accès en écriture séquentielle comme les lecteurs CD-R, qui sont eux supportés par &man.cdrecord.1; (via sysutils/cdrtools de la collection des Ports. &merged; Le gestionnaire ciss, pour les périphériques utilisant l'interface standard d'accès SCSI-3, a été ajouté. Le gestionnaire supporte la famille des controleurs RAID Compaq SmartRAID 5* (5300, 532, 5i)&merged; Le gestionnaire de périphériques de disquette &man.fdc.4; a subit de nombreuses améliorations. La sélection de la densité est maintenant automatique; le gestionnaire est aussi plus souple sur la selection de la densité de différents sous- périphériques. Le gestionnaire de périphériques de disque ida, supporte maintenant la focntion de "crashdump". &merged; Le gestionnaire de périphériques iir a été ajouté pour supporter les controleurs RAID intégrés d'Intel, et les controleurs Vortex ICP. Le bogue qui ne permettait pas d'attacher certains lecteurs de CDROM lorsqu'ils étaient connectés sur une carte SCSI gérée par &man.isp.4; a été corrigé.. &merged; Le gestionnaire de périphériques &man.isp.4; permet maintenant de découvrir de façon pro-active les changements de topologie Fibre Channel. Le gestionnaire de périphériques &man.isp.4; supporte maintenant le mode cible pour les cartes SCSI Qlogic, dont les cartes Ultra2 et Ultra3 et les cartes double bus.. Le gestionnaire de périphériques &man.isp.4; supporte maintenant les cartes PCI Qlogic 2300 et 2312 Fibre Channel.&merged; &man.md.4;, le gestionnaire de périphériques de disque mémoire, comporte maintenant les fonctionnalités de &man.vn.4; Les périphériques &man.md.4; peuvent maintenant etre configurés via &man.mdconfig.8;. &man.vn.4; a été retiré. Le système de fichiers mémoire (MFS) a été retiré aussi.. Le gestionnaire de périphériques &man.mly.4; pour les controleurs Mylex PCI to SCSI AccelRAID et eXtremeRAID comportant un micro-code 6.X ou supérieur a été ajouté. &merged; Les gestionnaires de périphériques ncv, nsp et stg ont été portés depuis le code NetBSD/pc98. Ils supportent les cartes controleurs NCR 53C50 /Workbit Ninja SCSI-3 / TMC 18C30, et les cartes basées sur les controleurs 18C50 PC-Card/ISA SCSI. Ces trois gestionnaires peuvent etre compilés et chargés en modules. &merged; Différents problèmes dans la gestion des erreurs de &man.sa.4; ont été corrigés, de meme que le problème tape drive spinning indefinitely upon &man.mt.1; . Le gestionnaire de périphériques &man.twe.4; 3ware ATA RAID a été ajouté. &merged; Le gestionnaire de volume &man.vinum.4; a reçu des corrections de bogues et des améliorations. La compatibilité des gestionnaires de périphériques &man.wd.4; a été retirée des gestionnaires de périphériques &man.ata.4;. &merged; Systèmes de fichier Le support des attributs étendus a été ajouté au noyau de &os; Cela permet au noyau, et certains processus utilisateurs privilégiés, de marqué des fichiers et des répertoires avec des données supplémentaires. Les attributs étendus ont été ajoutés pour supporter le projet TrustedBSD, en particulier les ACL, l'accès via des jetons (voyez le fichier /usr/src/sys/ufs/ufs/README.extattr pour plus de détails). Suite a un changement dans sa license, les "softupdates" ont été intégrés dans la portion principale des sources du noyau. Cela a pour conséquence de permettre aux "softupdates" de pouvoir etre disponible dans le noyau GENERIC. &merged; La capacité d'effectuer un snapshot a été ajouté a FFS. Plus de détails peuvent etre trouvé dans le fichier /usr/src/sys/ufs/ffs/README.snapshot. Les "softupdates" pour FFS ont reçus de nombreux correctifs et améliorations. Lors de l'utilisation des "softupdates" et &man.statfs.2;, &man.df.1; affiche le nombre de blocs et de fichiers qui sont pret a etre nettoyés. Le bogue dans FFS corrompant les superblock sur de grands systèmes de fichier a été corrigé.&merged; Le système de fichier Inode (IFS) a été ajouté; plus d'informations sont disponible dans le fichier /usr/src/sys/ufs/ifs/README. Le système de fichiers ISO-9660 dispose maintenant d'une routine chargeable a la demande de convertion de caractères. Le port sysutils/cd9660_unicode comporte un ensemble de base de conversions. &man.kernfs.5; est obsolète et a été retiré. Un bogue dans le client NFS causant un temps d'accès faux sur les fichiers ouverts par O_EXCL|O_CREAT a été corrigé &merged; Une nouvelle fonction de hashage NFS (basé sur l'algorithme de hashage Fowler/Noll/Vo) a été implémentée et améliore les performances NFS en augmentant l'efficience des tables de hashage de nfsnode. &merged; Les locks NFS coté client on été implémentés. Le code NFS coté client et serveur dans le noyau a été croisé de manière complexe. Ils ont été séparés pour une meilleure maintenance et de futurs développements.. Le support des listes de controle d'accès (ACLs) sur le système de fichiers a été introduit, permettant de controler de façon plus fine l'accès aux fichiers et répertoires. Ce support vient du projet TrustedBSD. Plus de détails sont disponibles dans le fichier /usr/src/sys/ufs/ufs/README.acls. L'algorithme préféré de schéma des répertoires pour FFS (dirprefs) a changé. Plutot que de couper les blocs de répertoires a travers un disque, il essaie de grgouper les blocs de répertoire ensemble. Les opérations de traversé de larges structures de répertoire, comme les ports de &os;, a démontré plus de rapidité. Ce changement est transparent et automatique pour les nouveaux répertoires. &merged; Le support de smbfs(CIFS) a été ajouté au noyau. Les programmes utilisateurs &man.smbutil.1; et &man.mount.smbfs.8; peuvent etre utilisés pour se servir des partages SMB. Notez que &man.mount.smbfs.8; charge automatiquement le module smbfs.ko dans le noyau, meme si LIBMCHAIN et LIBICONV ne sont pas compilé dans le noyau. &merged; Pour rester cohérent les systèmes de fichiers fdesc, fifo, null, msdos, portal, umap et union ont été renommés en fdescfs, fifofs, msdosfs, nullfs, portalfs, umapfs, et unionfs. Les modules et programmes mount_* possibles ont été aussi renommés. La compatiblité avec l'entrée du système de fichiers msdos dans &man.fstab.5; a été ajoutée a &man.mount.8; permettant de fonctionner sans changement. pseudofs, un canevas pour des pseudo-systèmes de fichiers, a été ajouté. &man.linprocfs.5; et &man.procfs.5; ont été modifiés pour permettre l'utilisation de pseudofs. Une optimisation très simple sur la recherche de hashage de gros répertoires, appelé dirhash, a été ajouté. Conditionné par l'option noyau UFS_DIRHASH (activé par défaut dans le noyau GENERIC), permet d'augmenter la rapidité de traitement dans les gros répertoires tout en consommant un peu plus de mémoire. &merged; Le sous-système de mémoire virtuel supporte maintenant les nécessités mémoire des répertoires UFS par défaut (cette fonction est controler via la variable sysctl vfs.vmiodirenable). &merged; Un bogue empéchant le montage du système de fichier "root" depuis un CDROM SCSI a été corrigé (les CDROM ATAPI ont toujours été supportés). &merged; Des bogues dans le code des systèmes de fichiers, découvert en utilisant l'utilitaire fsxde test des systèmes de fichiers, ont été corrigés. Dans certaines cas (principalement lors de l'utilisation de NFS) certains bogues causaient la corruption des données ou des paniques du noyau. &merged; Les systèmes de fichiers réseaux (comme NFS et smbfs) listés dans le fichier /etc/fstab peuvent maintenant etre montés au moment de l'initialisation du système; le montage est alors suspendu jusqu'à l'initialisation finale du réseau. Support PCCARD Le gestionnaires de périphériques pccard et &man.pccardc.8; supporte maintenant différents types de sons lors de l'insertion et l'ejection des cartes&merged; Sur les machines modernes, les périphériques PCCARD peuvent etre configurés pour envoyer indifféremment leurs interruptions via les interruptions PCI ou ISA. Le gestionnaire de périphériques &man.pcic.4; a été modifié pour supporter ces deux modes d'interruptions (précedemment juste le mode ISA était supporté). &merged; Dans la plupart des cas, la configuration des périphériques PCMCIA sur des ordinateurs portables est simplifié et plus flexible. De plus, plus de ponts de cartes PCI Cardbus ( comme ceux utilisés par les cartes Orinoco PCI) sont supportés. Certaines machines peuvent poser des problèmes, comme des paniques ou des arrets, avec le routage des interruptions PCI; elles peuvent la plupart du temps fonctionner en forçant l'ancien mode de routage des interruptions via le bus ISA. Les lignes suivantes placées dans le fichier /boot/loader.conf, permettent de résoudre ce problème: hw.pcic.intr_path="1" hw.pcic.irq="0" Lors de l'installation de &os;, taper les lignes suivantes au moment du prompt du gestionnaire de démarrage peut etre très utile pour démarrer pour la première fois &os : ok set hw.pcic.intr_path="1" ok set hw.pcic.irq="0" Le support préliminaire de Cardbus sous NEWCARD a été ajouté. Ce code supporte les cartes TI113X, TI12XX, TI125X, Ricoh 5C46/5C47, Topic 95/97/100 et Cirrus Logic PD683X. Le support 16-bit PC Card n'est pas encore fonctionnel. Support Multimédia Le gestionnaire de périphériques &man.pcm.4; supporte maintenant les cartes sons ESS Solo 1, Maestro-1, Maestro-2, et Maestro-2e; Forte Media fm801, ESS Maestro-2e, et VIA Technologies VT82C686A, et a reçu de nombreuses modifications. Des gestionnaires séparés pour les cartes SoundBlaster 8 et SoundBlaster 16 remplacent l'ancien gestionnaire unifié. Un gestionnaire pour les cartes CMedia CMI8338/CMI8738 a été ajouté. Un gestionnaire pour les cartes a base de S3 SonicVibes a été ajouté.&merged; Un gestionnaire de périphériques pour les cartes Avance Logic ALS4000 a été ajouté.. &merged; Un gestionnaire de périphériques pour les cartes ESS Maestro-3/Allegro a été ajouté, mais suite a des restrrictions sur la license, il ne peut etre compilé dans le noyau. &merged; Pour utiliser ce gestionnaire, ajoutez la ligne suivante au fichier /boot/loader.conf: snd_maestro3_load="YES" Le gestionnaire de périphériques &man.bktr.4; a été mis à jour en version 2.18. Cette mise à jour fournit de nombreuses nouvelles fonctionnalités. De nouveaux types de tuner ont été joutés et des améliorations dans les modules KLD et l'allocation mémoire ont été effectués. Des bogues dans &man.devfs.5; lors du chargement et déchargement ont été corrigés. Le support pour les nouvelles cartes Hauppauge Model 44xxx WinTV a été ajouté. &merged; Lorsque les modules sons sont compilés, un seul suffit a charger tous les gestionnaires et l'infrastructure par la commande kldload snd. &merged; Une nouvelle API a été ajoutée pour les cartes sons ayant un controleur de volume matériel. Un gestionnaire de périphériques pour les cartes sons intégrées Intel 443MX, 810, 815, et 815E a été ajouté. Logiciels externes Le language de commande inspiré sur Forth (FICL) du gestionnaire de démarrage a été mis à jour en version 2.05. Le supporte pour la configuration avancée de gestion d'énergie (ACPI), un standard multi-constructeurs sur la gestion d'énergie, a été ajouté. Cette fonctionnalité est fournié par le projet Intel ACPI Component Architecture, depuis le snapshot ACPI CA 20020214. Une certaine compatibilité pour les applications utilisant l'ancien standard APM est fourni. IPFilter IPFilter a été mis a jour en version 3.4.20. &merged; IPFilter supporte maintenant IPv6. &merged; isdn4bsd isdn4bsd a été mis à jour en version 1.0.1. Ceci oblige les utilisateurs du gestionnaire de périphériques &man.i4bisppp.4; (PPP noyau sur ISDN) à utiliser &man.ispppcontrol.8; au lieu de &man.spppcontrol.8; pour configurer et controler leurs interfaces réseaux. &merged; Le gestionnaire de périphériques &man.ifpi.4; permettant le support des cartes AVM Fritz!Card PCI version 2 a été ajouté. Le gestionnaire de périphériques &man.ihfc.4; permettant la gestion des périphériques Cologne Chip Designs HFC sous isdn4bsd a été ajouté. &merged; Le gestionnaire de périphériques &man.itjc.4; permettant la gestion des périphériques NETjet-S / Teles PCI-TJ sous isdn4bsd a été ajouté. &merged; Le support expérimental des cartes Eicon.Diehl DIVA 2.0 et 2.02 ISA PnP ISDN a été ajouté au via le gestionnaire de périphériques &man.isic.4; de isdn4bsd . &merged; Le gestionnaire de périphériques &man.isic.4; supporte les cartes Compaq Microcom 610 ISDN ISA PnP. &merged; Les cartes ISDN basées sur Active CAPI fabriquées par AVM sont maintenant supportées par les gestionnaires de périphériques &man.i4bcapi.4; et &man.iavc.4;. Les cartes supportées sont les cartes AVM B1 PCI et AVM B1 ISA Basic Rate et AVM T1 Primary Rate.&merged; Un nouveau mot clef,maxconnecttime, est accepté dans le fichier &man.isdnd.rc.5; et permet de limiter le temps maximum ou une connexion peut rester ouverte. &merged; &man.isdnphone.8; supporte maintenant l'option pour envoyer des messages via le clavier numérique d'un PABX &merged; KAME La couche IPv6 est maintenant basée sur la snapshot du projet KAME IPv6 en date du 28 Mai 2001. La plupart des ajouts de cette section résultent de cet import. La liste les modifications dans les programmes utilisateurs de la couche KAME IPv6 . &merged; &man.gif.4; est maintenant basé sur le RFC 2893 et non plus sur le RFC 1933. Le drapeau d'interface IFF_LINK2 permet de controler le fitrage.&merged; IPSec a reçu de nombreuses améliorations, comme la capacité d'utiliser les algorithmes SHA2 et Rijndael. Le support de IPSec RC5 a été retiré du a des problèmes de license. &merged; &man.stf.4; est maintenant conforme au RFC 3056; le drapeau d'interface IFF_LINK2 permet de controler le fitrage.&merged; IPv6 vérifie mieux les adresses illégales (comme l'adresse de bouclage) sur les réseaux physique. &merged; L'option socket IPV6_V6ONLY est maintenant completement supporté. La façon dont le noyau respecte cette option est controler par la variable sysctl net.inet6.ip6.v6only. &merged; Le RFC 3041 (Privacy Extensions for Stateless Address Autoconfiguration) est supporté. Il peut etre activé par la variable sysctl net.inet6.ip6.use_tempaddr. &merged; Changements liés a la sécurité &man.sysinstall.8; permet maintenant a un utilisateur de choisir un des deux profils de sécurité 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; 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; Un trou de sécurité dans l'émulation Linux a été corrigé (voir l'avis de sécuritéFreeBSD-SA-00:42). &merged; 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; 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; 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; Le trou de sécurité de &man.top.1; a été corrigé (voir l'avis de sécurité FreeBSD-SA-00:62). &merged; 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; 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; 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; La commande nat deny_incoming de &man.ppp.8; fonctionne maintenant correctement (voir l'avis de sécurité FreeBSD-SA-00:70). &merged; 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; Le binaire &man.ssh.1; n'est plus SUID root par défaut. &merged; 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; &man.telnet.1; nettoie maintenant mieux son environnement.&merged; Différentes vulnérabilités dans &man.procfs.5; ont été corrigées (voir l'avis de sécurité FreeBSD-SA-00:77). &merged; Un bogue dans OpenSSH dans lesquel un serveur n'etait pas capable de désactivé &man.ssh-agent.1; ou X11Forwarding a été corrigé (voir l'avis de sécurité FreeBSD-SA-01:01). &merged; Un bogue dans &man.ipfw.8; et &man.ip6fw.8; traitant des segments TCP entrants comme des connexions établies a été corrigé (voir l'avis de sécurité FreeBSD-SA-01:08). &merged; 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; La vulnérabilité dans &man.inetd.8; permettant l'accès en lecture aux 16 bytes initiaux des fichiers accessibles par le groupe wheel a été corrigé(voir l'avis de sécrurité FreeBSD-SA-01:11). &merged; 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; 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; OpenSSH 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; 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; Plusieurs programmes utilisants des fichiers temporaires les utilisent maintenant de façon plus sécurisée. &merged; Un bogue dans ICMP premettant a un attaquant de perturber les sessions TCP et UDP a été corrigé. &merged; 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; 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; 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; 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; Un trou de sécurité dans le mécanisme de "cache" des fragments IP d'IPFilter a été corrigé (voir l'avis de sécurité FreeBSD-SA-01:32). &merged; 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; 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 net.inet.tcp.tcp_seq_genscheme.&merged; 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; 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 OpenSSH prend, maintenant, l'UID de l'utilisateur avant d'essayer d'effacer le fichier d'authentification, annulant les effets d'une "race" 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; Un dépassement de buffer à distance dans &man.tcpdump.1; a été corrigé (voir l'avis de sécurité FreeBSD-SA-01:48). &merged; Un dépassement de buffer à distance dans &man.telnetd.8; a été corrigé (voir l'avis de sécurité FreeBSD-SA-01:49). &merged; Les nouvelles variables sysctl net.inet.ip.maxfragpackets et net.inet.ip6.maxfragpackets 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; Tous les services dans inetd.conf 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 inetd.conf. &merged; Un bogue dans l'implémentation des règles de &man.ipfw.8; comportant me sur les liens point à point a été corrigé. Les règles de filtrage comportant me matchaient l'adresse IP distante a la place de l'adresse IP local (voyez l'avis de sécurité FreeBSD-SA-01:53). &merged; 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; La vérification d'un nom de machine en mode PARANOID de tcp_wrappers fonctionne maintenant correctement (voyez l'avis de sécurité FreeBSD-SA-01:56). &merged; Un bogue permettant de passer root dans &man.sendmail.8; a été corrigé(voyez l'avis de sécurité FreeBSD-SA-01:57). &merged; 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; Une "race condition" dans &man.rmuser.8; qui rendait brièvement /etc/master.passwd lisible pour tout utilisateur a été corrigée (voyez l'avis de sécurité FreeBSD-SA-01:59). &merged; Un bogue dans UUCP a été corrigé (voyez l'avis de sécurité FreeBSD-SA-01:62). Tous les binaires n'appartenant pas a root dans les "path" système standard ont maintenant le drapeau schg permettant d'empecher l'exploitation de bogues via &man.cron.8;, par root, ou par un utilisateur autre que celui auquel appartient le binaire. De plus &man.uustat.1; est lancé maintenant via /etc/periodic/daily/410.status-uucp sous l'utilisateur uucp, et non plus root. Dans &os; -CURRENT, UUCP ne fait plus partie des binaires systèmes, et a été déplacé dans la collection des Ports. &merged; 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; Un trou de sécurité dans OpenSSH, permettant a un utilisateur d'executer du code avec des privilèges supplémentaires si UseLogin yes était activé, a été corrigé. Notez que la valeur par défaut de ce paramètre est UseLogin no. (Voyez l'avis de sécurité FreeBSD-SA-01:63.) &merged; 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; Une "race condition" dans &man.pw.8;, permettant de lire le contenu du fichier /etc/master.passwd, a été corrigé (voyez l'avis de sécurité FreeBSD-SA-02:02.) &merged; 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; Changements dans les programmes utilisateurs Si le premier argument de &man.ancontrol.8; ou de &man.wicontrol.8; ne commence pas par un -, il est considéré comme une inteface. &man.apmd.8; peut maintenant monitorer les niveaux des batteries et executer des commandes basées sur le pourcentage ou le nombre de minutes restantes via la directive de configuration apm_battery. Voyez les exemples commentés dans le fichier /etc/apmd.conf pour la syntaxe. &merged; &man.arp.8; affiche maintenant le nom de l'interface correspondante à chaque entrée ARP. &merged &man.arp.8; affiche maintenant [fddi] ou [atm] pour les adresses d'interfaces de ce type. &man.atacontrol.8; a été ajouté pour permettre de controler de nombreux aspects du gestionnaire de périphérique &man.ata.4;. &man.boot98cfg.8;, un utilitaire de gestionnaire de démarrage PC-98, d'installation et de configuration a été ajouté. &merged; &man.burncd.8; supporte maintenant l'option pour la création en mode multi-session (par défaut les disques sont fermés en mono-session). Une option, , a été ajoutée et permet de prendre une liste des images depuis un fichier. - peut etre utilisé comme un nom de fichier et correspond a l'entrée standard stdin. &merged; &man.burncd.8; supporte maintenant le mode "Disk At Once (DAO)", sélectionnable via l'option . &man.burncd.8; peut maintenant écrire sur les VCDs/SVCDs. &man.c89.1; a été converti en binaire et certains bogues mineurs ont été fixés. &merged; Une version minimaliste de &man.camcontrol.8; est maintenant disponible sur la disquette d'installation. Cela permet de détecter les périphériques connectés après le démarrage ou d'afficher les périphériques attachés aux bus SCSI (par ex, depuis un shell d'urgence). &merged; &man.cat.1; dispose maintenant de la capacité de lire depuis des sockets de type UNIX-domain. &merged; &man.cdcontrol.1; supporte maintenant une commande cdid qui permet de calculer et d'afficher le numéro de série du Cd, en utilisant le meme algorithme que la base CDDB. &merged; &man.cdcontrol.1; utilise maintenant la variable d'environnement CDROM pour choisir le périphérique par défaut. &merged; &man.cdcontrol.1; supporte maintenant les commandes next et prev pour avancer et reculer d'une piste sur un CD audio.&merged; &man.chflags.1; a été déplacé de /usr/bin vers /bin. &man.chio.1; a maintenant la possibilité de spécifier les élements par volume a la place de leur emplacement physique tout comme la possibilité de remettre un éléments a son emplacement précédent. &merged; &man.chmod.1; supporte maintenant l'option pour changer le mode d'un lien symbolique. &man.chown.8; suit maintenant correctement les liens symboliques s'ils sont spécifiés en arguments de la ligne de commande meme sans l'option . &merged; &man.chown.8; n'utilise plus . comme délimiteur utilisateur/groupe. Cette modification a été faite pour permettre de supporter les noms d'utilisateurs contenant un .. L'inclusion de <sys/param.h> n'est plus obligatoire pour l'utilisation des macros CSMG_*. &man.col.1; dispose maintenant de l'option permettant, dans le cas d'une sequence de controle inconnue, de ne pas en tenir compte. &merged; La distribution compat3x a été mise à jour pour inclure les librairies présentes dans &os; 3.5.1-RELEASE. &merged; Une distribution compat4x a été ajoutée pour la compatibilité avec &os; 4-STABLE. &man.config.8; convertit maintenant plus de "warnings" qui devaient etre des erreurs en des erreurs fatales avec un code de sortie. Cela permet à make buildkernel de ne plus les ignorer et de générer un noyau boggué dans le cas d'une compilation automatique.&merged; Différents dépassement de buffer dans &man.config.8; ont été corrigés. &merged; La programme &man.daemon.8;, une interface en ligne de commande a &man.daemon.3;, a été ajouté. Il se détache lui meme du terminal et execute le programme passé en ligne de commande. Cela permet a un utilisateur de lancer un programme comme s'il avait été écrit en démon. devinfo, un outil permettant d'afficher l'arbre des périphériques et l'utilisation des ressources par périphériques, a été ajouté. &man.df.1; dispose maintenant de l'option permettant d'afficher uniquement les systèmes de fichiers localement montés. &merged; &man.disklabel.8; supporte maintenant l'expression des tailles de partitions en kilobytes, megabytes, ou gigabytes, en plus des secteurs. &merged; &man.dmesg.8; dispose maintenant de l'option permettant d'afficher la totalité du message de démarrage, incluant les messages &man.syslogd.8; et l'affichage /dev/console.&merged; &man.du.1; dispose maintenant d'une option permettant d'ignorer les fichiers et les sous-répertoires correspondant à un masque spécifié. &merged; &man.dump.8; supporte maintenant l'héritage du drapeau nodump a travers une hiérarchie. &merged; L'option de &man.dump.8; n'attend plus forcément un argument supplémentaire. &merged; &man.dump.8; dispose maintenant d'une option , permettant de changer le nom du fichier /etc/dumpdates. &merged; &man.dump.8; affiche maintenant une information de progression dans le titre du processus, très utile pour la supervision des sauvegardes automatisées. &man.edquota.8; dispose maintenant de l'option , permettant de limiter la modification du fichier des quotas (spécifié via l'option )a un seul système de fichiers. &merged; &man.fbtab.5; accepte maintenant des expressions régulières pour les périphériques cibles, et non plus juste des noms de périphériques ou de répertoires individuels. &man.fdisk.8; n'essaie plus de rechercher un périphérique si aucun n'a été spécifié en ligne de commande, mais utilise a la place le nom du périphérique par défaut ou se trouve le périphérique racine. &man.fdread.1;, a program to read data from floppy disks, has been added. It is a counterpart to &man.fdwrite.1; and is designed to provide a means of recovering at least some data from bad media, and to obviate for a complex invocation of &man.dd.1;. &man.find.1; supporte maintenant l'option qui retourne vrai si le fichier ou le répertoire est vide. &merged; &man.find.1; supporte maintenant les options et principalement pour ne pas tenir compte de la casse et les options et correspondant aux correpondances par expressions régulières. L'option permet maintenant d'activer le support des expressions régulières étendues. &merged; &man.find.1; dispose maintenant des options , , , , et permettant la comparaison des dates et heures des fichiers. La dernière option permet de spécifier la valeur en différentes unités de temps. &merged; &man.finger.1; dispose de la possiblité de comparer le nom aux aliases, via le fichier &man.finger.conf.5;. &merged; &man.finger.1; dispose maintenant du support du fichier .pubkey. &man.fmt.1; a été réécrit; la réécriture a permis de corriger un certain nombre de bugs. &merged; &man.fmtcheck.3;, une fonction permettant de vérifier la consistence des arguments de formatage de chaine, a été ajoutée. &merged; L'infrastructure de &man.fsck.8; permettant a &man.fsck.8; de travailler sur différents types de systèmes de fichiers (comme &man.mount.8;). La façon dont &man.fsck.8; gère plusieurs passes (a la /etc/fstab), a été modifié pour lui permettre de s'accomoder des systèmes de fichiers sur plusieurs disques. &man.fsck.8; dispose maintenant du support de vérification en avant plan() et en arrière plan(). Traditionnellement &man.fsck.8;est invoqué avant le montage des systèmes de fichierset toutes les vérifications sont faites a ce moment. Si la vérification en arrière plan est disponible, &man.fsck.8; est invoqué deux fois. Il est invoqué en premier de façon traditionnelle, avant de monter les systèmes de fichier, avec l'option pour vérifier les systèmes de fichiers ne pouvant etre vérifier en arrière plan. Il est invoqué une seconde fois, après que le systèmes soit passé en mode multi-utilisateur, avec l'option pour vérifier tous les autres systèmes de fichiers pouvant être vérifié en arrière plan. Contrairement à la vérification en avant-plan, la vérification en arrière plan est démarré de façon asynchrone, cela permet donc de permettre à d'autres processus système de démarrer pendant que les systèmes de fichiers sont vérifiés. L'activation de cette fonctionnalité est controllée par la variable background_fsck du fichier &man.rc.conf.5;. Immédiatement avec la réception d'un signal SIGINFO (souvent un control-T depuis le tty de controle), &man.fsck.ffs.8; affiche maintenant une ligne indiquant le numéro et l'information de progression de la phase en cours.&merged; &man.fsck.ffs.8; supporte maintenant la vérification en arrière plan des systèmes de fichiers FFS montés grace a l'option (les softupdates doivent être activés sur ces systèmes de fichiers). L'option permet de spécifier que le système de fichier doit être vérifier en avant-plan. Un nouvel utilitaire &man.fsck.msdosfs.8; a été ajouté pour vérifier la consistence des systèmes de fichiers MS-DOS. &merged; &man.ftpd.8; dispose maintenant de l'option permettant le mode lecture seule, et l'option permettant de désactiver la commande EPSV. Il dispose aussi de plusieurs fixes permettant de réduire la diffusion d'information et la possibilitée de sépcifier un interval de ports au moment de sa compilation. &merged; &man.ftpd.8; supporte maintenant les options et permettant de désactiver la commande RETR; la première pour tout le monde et la deuxième juste pour les invités. Couplé a l'option et des permissions appropriées sur les fichiers, cela permet de créer un FTP anonyme assez propre permettant a d'autres de déposer des fichiers.. &man.gdb.1; supporte maintenant des points d'arrets matériel (en utilisant les registres de déboggage du noyau qui a été introduit dans &os 4.0). &merged; Les fonctions &man.getprogname.3; et &man.setprogname.3; ont été ajoutée pour permettre de manipuler le nom du programme courant. Elles sont utilisées par les routines de gestion d'erreurs pour afficher des messages consistents.&merged; &man.gprof.1; dispose maintenant de l'option pour résoudre de façon dynamique les symboles du noyau en cours d'execution. Avec cette fonctionnalité, les modules chargeables peuvent maintenant etre profilés. &man.growfs.8;, un utilitaire pour augmenter la taille des systèmes de fichiers FFS a été ajouté. &man.ffsinfo.8;, un utilitaire pour afficher les méta-informations d'un système de fichier a été aussi ajouté. &merged; Les scripts shells &man.groups.1; et &man.whoami.1; ne sont plus nécessaires; leur fonctionnalités sont maintenant intégrées dans &man.id.1;. &merged; Les scripts &man.ibcs2.8;, &man.linux.8;, &man.osf1.8;, et &man.svr4.8;, qui chargeaient les modules d'émulation, ont été retirés. Le système de module actuel charge maintenant les modules nécessaires à la demande en vérifiant les dépendances. &man.indent.1; dispose de nouvelles options de formattage. &merged; &man.ifconfig.8; peut maintenant affecter l'adresse au niveau de la couche lien d'une interface via le paramètre .&merged; &man.ifconfig.8; accepte maintenant la notation au format CIDR.&merged; &man.ifconfig.8; supporte maintenant l'affectation de paramètres sur les interfaces sans fil IEEE802.11. Les interfaces supportées sont &man.wi.4; et &man.an.4; ainsi que partiellement &man.awi.4;. &merged; &man.ifconfig.8; n'affiche plus la liste des média supportés par défaut. Elle est affichée avec l'option . &merged; La syntaxe de &man.inetd.8; avec le support de &man.faithd.8; est maintenant compatible avec les autres BSDs. &merged; Le support du protocol ident dans &man.inetd.8; a été vérifié et mise a jour. &merged; &man.inetd.8; peut maintenant gérer les sockets de type UNIX-domain. &merged; &man.install.1; dispose de plusieurs nouveautés, comme les options et pour sauvegarder les fichiers cibles existants et l'option pour copier de façon attentive. L'option (copie) est maintenant active par défaut et l'option (debug) a été retirée. &man.install.1; affiche maintenant un warning si l'option (créer les répertoires) et l'option (copie des fichiers modifiés uniquement) sont utilisées ensemble. &merged; IP Filter est maintenant supporté par le fichier de configuration du démarrage &man.rc.conf.5;&merged; &man.ipfstat.8; supporte maintenant l'option pour lui permettre un affichage à la &man.top.1;. &merged; &man.ipfw.8; n'affiche plus les règles dynamiques sauf si on lui passe l'option . L'option permet d'afficher la liste des règles dynamiques expirées. &merged; &man.ipfw.8; permet de vérifier les paquets sur les interfaces ayant des adresses IP dynamiques (via me). &merged; &man.ipfw.8; dispose du type limit pour les règles, qui permet de limitter le nombre de sessions entre deux adresses. &merged; Les règles de filtrage de &man.ipfw.8; peuvent maintenant vérifier la valeur du champ de précédencee IPv4. &man.ip6fw.8; peut maintenant utiliser un pré-processeur et dispose de l'option (quiet) pour la lecture depuis un fichier. &merged; &man.kenv.1;, une commande permettant d'afficher l'environnement noyau, a été ajouté. &merged; &man.keyinfo.1; est maintenant un programme C, plutot qu'un script Perl. &merged; &man.killall.1; est maintenant un programme C plutot qu'un script Perl. L'option utilise donc maintenant la syntaxe des expressions de &man.regex.3; a la place de celles de &man.perl.1;. &merged; &man.killall.1; permet maintenant aux utilisateurs non-root de tuer les processus SUID root qu'ils ont lancé, de la meme façon que la version Perl. &merged; L'utilitaire &man.kldconfig.8; a été ajouté pour permettre de manipuler plus facilement le path de recherche des modules noyau. &merged; &man.last.1; implémente maintenant l'option qui permet de voir qui s'est logguer a une date et a une heure spécifique.. &merged; L'utilitaire &man.lastlogin.8;, permettant d'afficher le dernier login d'un utilisateur, a été importé de NetBSD. &merged; &man.ldconfig.8; vérifie maintenant le propriétaire du répertoire et les permissions pour plus de sécurité; ces vérifications peuvent etre désactivés via l'option . &merged; &man.ldd.1; peut maintenant etre utilisé sur les librairies partagées, en plus des executables. &merged; &man.ldd.1; dispose maintenant de l'option pour lister l'ensemble des objets nécessaire pour chaque objet chargeable. libc est maintenant thread-safe par défaut; libc_r contient uniquement des fonctions "thread-able". libcrypt et libdescrypt ont été unifié pour fournir une fonction de hashage d'authentification des mots de passe configurable. Les méthodes de hashage des et md5 sont fournies sauf si la fonction de hashage des est spécifiquement retirée. &merged; libcrypt supporte maintenant l'algorithme Blowfish pour le hashage des mots de passe. &merged; libdisk peut maintenant configurer lors de l'installation le gestionnaire de démarrage boot0. &merged; libstand supporte maintenant les fichiers compressés en bzip2 dans les systèmes de fichiers. &merged; libstand peut maintenant écraser le contenu d'un fichier sur des systèmes de fichiers UFS (il ne peut pas élargir ou tronquer des fichiers, car le système de fichiers ne serait pas consistent). L'intervalle par défaut des ports TCP utilisés par libfetch lors de FTP passifs a changé; cela affecte les fonctionnalités de &man.fetch.1;, qui dispose maintenant de l'option pour utiliser l'ancien intervalle. &merged; libfetch supporte maintenant l'authentification. &merged; libfetch peut maintenant utiliser la variable d'environnement HTTP_USER_AGENT. &merged; libgmp a été remplacé par libmp. Les fonctions de libposix1e ont été intégrés dans libc. &man.ln.1; dispose maintenant de l'option pour demander a l'utilisateur la confirmation avant d'écraser un fichier existant. &merged; &man.ln.1; supporte maintenant l'option pour empécher de suivre une cible qui est un lien, l'option a été ajoutée pour la compatibilité. &merged; &man.logger.1; peut maintenant envoyer des messages directement a un syslog distant. &merged; &man.login.1; exporte maintenant les variables d'environnements mis en place par les modules PAM. &merged; &man.lpc.8; a été amélioré; lpc clean est maintenant plus sur, et une nouvelle commande lpc tclean permettant de vérifier quels fichiers seront effacés par lpc clean a été ajoutée. &merged; &man.lpd.8; dispose de deux nouvelles options: qui loggue toutes les erreurs de connexion dans &man.syslogd.8;, et qui permet d'autoriser les connexions depuis des ports non réservés. &merged; &man.lpd.8; supporte maintenant dans ses fichiers de controle des actions d'impressions le type o, qui lui permet d'imprimer les fichiers PostScript générés par MacOS 10.1. &merged; &man.lpr.1;, &man.lpq.1;, et &man.lpd.8; ont reçus certaines améliorations. &merged; &man.lpr.1;, &man.lpd.8;, &man.syslogd.8;, et &man.logger.1; sont maintenant compatible IPv6, comme d'autres utilitaires réseaux du système de base. &merged; lprm - supporte maintenant la gestions des files d'impressions distantes. &merged; &man.ls.1; peut maintenant produire une sortie en couleur lorsque l'option lui est passé (et que le terminal supporte cette fonction). La variable d'environnement CLICOLOR peut etre mise en place pour activer par défaut cette fonctionnalité. &merged; &man.mail.1; supporte maintenant l'option pour éviter d'envoyer des messages avec le corps vide. &merged; &man.make.1; dispose des modificateurs de variables :C/// (substitution des expressions régulières), :L (minuscule), and :U (majuscule). Ils ont été ajouté pour réduire les différences entre &os; et OpenBSD/NetBSD. &merged; Différents bogues dans &man.make.1;, comme ceux incluant les suffixes vide, mauvaises suppositions sur les permissions des répertoires, et certains dépassements de tampon potentiels, ont été fixés. &merged; La nouvelle variable CPUTYPE dans make.conf permet de controler les optimisations spécifiques à certains processeurs dans différentes parties du code, comme dans OpenSSL. &merged; L'infrastructure de Makefile de &os; supporte maintenant la directive WARNS venant de NetBSD. Cette directive controle l'addition des options de warnings au compilateur via CFLAGS de façon neutre. &merged; &man.man.1; n'est plus installé SUID man, dans le but de réduire les vulnérabilités associées lors de la génération de catpages (les pages de manuel cachées pour leur lecture répétées). Comme résultat &man.man.1; ne peut plus créer des pages de manuels cachées pour un utilisateur. Il peut continuer a le faire si l'utilisateur à la possibilité d'écrire dans le répertoire des catpages ( par ex une page de manuel lui appartenant) ou si l'utilisateur le lancant est root. La commande &man.mdmfs.8; a été ajoutée; c'est un wrapper de &man.mdconfig.8;, &man.disklabel.8;, &man.newfs.8; et &man.mount.8; qui permet d'utiliser les options de en ligne de commande de &man.mount.mfs.8;. &man.mergemaster.8; inclut maintenant le fichier et /etc/mergemaster.rc et demande maintenant a l'utilisateur de lancer les commandes recommandées (comme newaliases)) si nécessaires. &merged; &man.moused.8; supporte maintenant l'option pour controler l'accélération de la souris. &merged; &man.mtree.8; peut utiliser un fichier comportant la liste des répertoires à exclure lorsqu'il crée ou vérifie les prototypes. Cela permet d'utiliser plus facilement &man.mtree.8; comme outil de détection d'intrusion système.&merged; &man.natd.8; dispose maintenant de l'option pour logguer les paquets qui ne peuvent etre ré-injectés suite a des règles de &man.ipfw.8;. &merged; Le pourcentage d'utilisation affiché par &man.netstat.1; reflète maintenant correctement le pourcentage de mbufs réseaux utilisés&merged; &man.netstat.1; dispose maintenant du paramètre de ligne de commande qui lui permet de ne pas tronquer les adresses, meme si elles sont trop longue pour s'afficher dans la colonne nécessaire. &merged; &man.netstat.1; garde maintenant une trace des paquets en entrée et en sortie par adresse pour chaque interface. &merged; &man.netstat.1; dispose maintenant du paramètre de ligne de commande permettant la remise à zéro des statistiques. &merged; &man.netstat.1; dispose maintenant du paramètre de ligne de commande permettant d'afficher les adresse en format numérique tout en gardant les noms symbolique des ports. &merged; &man.newfs.8; implémente maintenant les écritures combinées, cela permet la création des nouveaux systèmes de fichiers jusqu'a sept fois plus rapidement. &merged; &man.newfs.8; dispose maintenant de l'option , permettant l'activation des softupdates sur un nouveau système de fichiers. &merged; Le nombre de cylindres par groupe de &man.newfs.8; est maintenant calculé pour etre égal au nombre maximum donné par les paramètres du système de fichiers courant. Ce nombre peut etre forcé via l'option . De base, la valeur par défaut a été fixée à 16. Cela augmente les performances de &man.fsck.8; tout en réduisant la fragmentation. &merged; La taille des blocs et des fragments lors de la création de systèmes de fichiers par &man.newfs.8; sont respectivement de 16384 bytes et 2048 bytes (les anciennes valeurs étaient de 8192 bytes et 1024 bytes). Ce changement augmente la performance en contrepartie de réduire la taille disponible. &merged; &man.newsyslog.8; peut maintenant compresser les fichiers de log en utilisant &man.bzip2.1;. &merged; NFS supporte maintenant IPv6. &man.ngctl.8; now supports a command to send a data packet down a given hook. &merged; &man.nl.1;, un filtre de numérotation des lignes a été ajouté. &merged; Le support de nsswitch a éré ajouté depuis NetBSD. En créant un fichier &man.nsswitch.conf.5;, différentes bases de données du système, comme &man.passwd.5; et &man.group.5;, peuvent se trouver dans des fichiers plats, des bases NIS ou Hesiod. L'ancien fichier hosts.conf n'est plus utilisé. Le support PAM pour la gestion des comptes et des sessions a été ajouté. La configuration PAM se trouve maintenant dans le répertoire /etc/pam.d/ au lieu du seul fichier /etc/pam.d/. Voyez le fichier /etc/pam.d/README pour plus de détails. &man.passwd.1; et &man.pw.8; sélectionnent l'algorithme de hashage à la volée. Voyez l'attribut passwd_format dans /etc/login.conf. &merged; &man.pax.1; a reçu différentes améliorations, comme la compatibilité avec &man.tar.1;, la fonctionnalité &man.cpio.1;, les options et pour la compression en &man.gzip.1; et &man.compress.1; , et différentes corrections de bogues. &man.pciconf.8; dispose maintenant de l'option permettant d'afficher les informations sur le composant configuré, en complément de l'option option. La base de données par défaut peut etre trouvé dans le fichier /usr/share/misc/pci_vendors. &merged; Le comportement de &man.periodic.8; est maintenant controller par les fichiers /etc/defaults/periodic.conf et /etc/periodic.conf. &merged; &man.ping.8; dispose maintenant de l'option permettant d'imposer le TTL des paquets de sortie. &merged; &man.ping.8; dispose maintenant de l'option permettant d'émettre un son lorsque des paquets sont perdus. &merged; La partie utilisateur de &man.ppp.8; a reçu de nombreuses modifications et de corrections de bogues. &merged; &man.ppp.8; dispose de l'option tcpmssfixup qui permet d'ajuster les paquets TCP SYN en entrée et en sortie, permettant alors que la taille de réception de segment ne soit pas plus importante que le MTU de l'interface. &merged; &man.ppp.8; supporte maintenant IPv6. &man.pppd.8; (le programme controlant au niveau noyau PPP) est maintenant installé en mode 4550 et root:dialer, plutot que en mode 4555 (en d'autre termes, cela veut dire qu'il n'est plus executable par tout le monde.) Les utilisateurs de &man.pppd.8; doivent donc changer leur configuration de groupes. &merged; L'option de &man.ps.1; (permettant d'extraire les informations depuis un périphérique de swap spécifique) a été returé. &merged; &man.pwd.1; can now double as &man.realpath.1;, a program to resolve pathnames to their underlying physical paths. &merged; Le générateur de nombre pseudo aléatoire implémenté par &man.rand.3; a été amélioré . &man.rc.8; dispose maintenant d'un environnement permettant de vérifier les dépendances entre les variables de &man.rc.conf.5;. &merged; &man.rc.8; efface maintenant tous les fichiers qui ne sont pas des répertoires dans /var/run et /var/spool/lock au moment du démarrage. &merged; &man.rcmd.3; supporte maintenant la variable d'environnement RSH permettant de spécifier quel programme autre que &man.rsh.1; utiliser pour l'execution a distance de commande. Cela permet donc a des programmes comme &man.dump.8; d'utiliser &man.ssh.1; pour transporter les données. &man.rdist.1; a été retiré du système de base, mais reste disponible dans la collection des Ports sous net/44bsd-rdist. Le &man.resolver.3; de &os; implémente maintenant le support EDNS0, qui est nécessaire lorsque l'on utilise des serveurs DNS/resolveurs supportant IPv6. &merged; L'appel système &man.rfork.thread.3; a été ajouté comme fonction d'aide à &man.rfork.2;. Cela permet d'utiliser cette fonction sans implémenter des mécanismes complexes de swap de stack. &merged; L'option de &man.rm.1; affiche maintenant l'ensemble du répertoire ou se trouve le fichier à effacer. &man.route.8; est maintenat plus verbeux lors du changement de routes indirectes, dans le cas ou la passerelle de la route modifiée est la meme que la route existante. &merged; &man.route.8; utilise maintenant la syntax host/bits plutot que la syntaxe net/bits syntax, pour la compatibilité avec &man.netstat.1;. &merged; &man.route.8; peut maintenant créer des entrée ARP proxy only. &merged; La commande de &man.route.8; dispose des options and . &merged; &man.rpcbind.8; a remplacé &man.portmap.8;. &man.rpcgen.1; utilise /usr/bin/cpp (comme dans NetBSD), et non plus /usr/libexec/cpp. &man.rpc.lockd.8; a été importé depuis NetBSD. Ce démon permet d'activer les verrous sur les systèmes de fichiers NFS. Les performances du linkeur dynamique ELF &man.rtld.1; ont été améliorées. &merged; RSA Security a libéré les droits sur l'algorithme RSA. Cela permet d'activer par défaut dans OpenSSL l'algorithme RSA. Cela permet de libérer le port security/rsaref des dépendences des librairies librsaUSA et librsaINTL repectivement pour les résidents américains et non américains. &merged; &man.rtld.1; affiche maintenant le nom de tous les objets nécessaires à charger lorsque la variable d'environnement LD_TRACE_LOADED_OBJECTS_ALL est définie. &man.savecore.8; dispose de l'option permettant de nettoyer le fichier de crash après l'avoir sauvegardé. Il essaie aussi d'éviter d'écrire de grandes séries de zéro dans le fichier de crash pour sauver de l'espace disque et du temps. &merged; &man.savecore.8; fonctionne correctement sur les machines disposant de 2GB ou plus de RAM. &merged; &man.sed.1; dispose de l'option pour le support des expressions régulières étendues. &merged; &man.send-pr.1; dispose maintenant de l'option permettant d'inclure un fichier dans la section Fix: d'un rapport de bogue. &merged; Les commandes &man.setfacl.1; et &man.getfacl.1; ont été joutées pour gérer les listes de controles d'accès (ACL) sur les systèmes de fichiers. &man.setproctitle.3; a été déplacer de libutil vers libc. &merged; &man.sh.1; implémente test comme une built-in pour améliorer son éfficience. &merged; &man.sh.1; n'implémente plus printf comme une built-in car elle a été considérée peu intéressante comparée aux autres built-ins (cette fonctionnalité est toujours disponible via l'executable &man.printf.1;). &man.sockstat.1; dispose de l'option et permettant repectivement de lister les sockets connectées et à l'écoute. &merged; &man.split.1; peut maintenant couper les fichiers de plus de 2GB. &merged; Dans le but d'etre compatible SUSv2/POSIX pour <sys/select.h>, struct selinfo et les fonctions associées ont été déplacées dans <sys/selinfo.h>. Les variantes &man.strnstr.3; et &man.strcasestr.3; de &man.strstr.3; ont été implémentées. &merged; &man.stty.1; dispose d'un charactère de controle erase2, donc, par exemple, les touches Delete et Backspace peuvent etre utilisés pour effacer des caractères. &merged; &man.style.perl.7;, un guide de style pour les développeurs de code Perl dans le système de base de &os; a été ajouté. &merged; &man.su.1; peut maintenant utiliser l'authentification PAM. La configuration de démarragede &man.syscons.4; a été déplacer dans le fichier, indépendant de l'architecture, /etc/rc.syscons. &merged; &man.sysctl.8; dispose de l'option pour afficher juste le nom des variables. &merged; Les options et de &man.sysctl.8; ont été remplacées respectivement par et ; les anciennes options sont maintenant dépréciées. L'option est elle aussi dépréciée. &merged; &man.sysctl.8; dispose maintenant de l'option pour séparer les noms des variables et leur valeur par = plutot que :. Cette option est très pratique pour renvoyer des valeurs à &man.sysctl.8;. &merged; &man.sysinstall.8; préserve maintenant proprement /etc/mail lors d'une mise à jour via les binaires. &merged; La taille par défaut de la partition principale dans &man.sysinstall.8; est maintenant de 100MB sur i386 et 120MB sur Alpha. &man.sysinstall.8; se trouve maintenant dans /usr/sbin, ce qui simplifie le processus d'installation. La page de manuel de &man.sysinstall.8; a été installé de façon consistente. &man.sysinstall.8; peut maintenant charger des KLDs au moment de l'installation. &merged; Lors de l'installation, &man.sysinstall.8; charge automatiquement tous les gestionnaires de périphériques du répertoire /stand/modulesde la disquette mfsroot ou du système de fichier image. Il faut noter que les gestionnaires alors chargés n'apparaitront pas dans les messages de démarrage du noyau; l'écran de débogguage de &man.sysinstall.8; fournira lui, plus d'informations. &merged; &man.sysinstall.8; active maintenant automatiquement les Soft Updates sur tous les systèmes de fichiers qu'il crée, excepté pour le système de fichiers racine. &merged; &man.sysinstall.8; a reçu des mises à jour sur le mode auto de partitionnement qui permet de donner des valeurs plus raisonnables à la taille des partitions qu'il crée; ces partitions automatiquement taillées peuvent ré-utiliser l'espace qui devient disponible lorsque d'autres partitions sont effacées. &merged; &man.syslogd.8; support l'option pour désactiver les résolutions DNS lors de chaque requete. &merged; &man.syslogd.8; dispose maintenant d'un facilité LOG_CONSOLE (désactivée par défaut), qui permet de logguer les messages de /dev/console. &merged; &man.syslogd.8; dispose de la possibilité de s'attacher sur une adresse spécifique (plutot que d'utiliser toutes celles disponibles) grace à l'option . &merged; &man.syslogd.8; dispose de l'option pour désactiver la compression des lignes répétitives. &merged; &man.tail.1; peut utiliser les fichiers de plus de 2GB. &merged; &man.tar.1; peut utiliser la variable TAR_RSH principalement pour tuiliser &man.ssh.1; comme transport. &merged; &man.telnet.1; supporte l'autologin et le cryptage par défaut; une nouvelle option, , désactive ce cryptage. &man.telnet.1; dispose de l'option de ligne de commande pour autoriser les connexions depuis les sockets de domaine UNIX (AF_UNIX). &merged; &man.tftpd.8; dispose des options et permettant de &man.chroot.2;er le serveur an fonction de l'adresse IP du client se connectant. &man.tftp.1; et &man.tftpd.8; peut maintenant transféer des fichiers plus gros que 65535 blocks. &merged; &man.tftpd.8; supporte maintenant le RFC 2349 (TFTP Timeout Interval and Transfer Size Options); cette fonctionnalité est nécessaire pour certains firmware de gestionnaire de démarrage EFI (les serveurs HP i2000 Itanium le nécessite) pour démarrer sur une image de démarrage en utilisant TFTP. &man.timed.8; fonctionnent maintenant sur alpha. Une version de Transport Independent RPC (TI-RPC) a été importée. &man.tmpnam.3; utilise maintenant la variable d'environnement TMPDIR, si elle est positionnée, pour spécifié l'emplacement des fichiers temporaires. &merged; &man.tip.1; a été mis à jour depuis OpenBSD, et dispose de la possibilité d'etre utilisé comme &man.cu.1;. &man.top.1; utilise maintenant la totalité de la largeur du tty. &man.touch.1; dispose maintenant de l'option lui permettant d'utiliser les liens symboliques. L'utilitaire &man.truncate.1;, permettant de réduire ou d'augmenter la taille d'un fichier, a été ajouté. &merged; Le support Ukrainian a été ajouté à la console &os;. &merged; UUCP a été retiré du système de base. Il se trouve maintenant dans la collection des Ports, dans net/freebsd-uucp. &man.units.1; a reçu différentes corrections de bogues et mise à jour. &merged; &man.usbdevs.8; dispose de l'option de ligne de commande pour afficher le gestionnaire de périphérique associé avec chaque périphérique. &man.uudecode.1; dispose de l'option permettant de définir le fichier de sortie. &man.vidcontrol.1; dispose du paramètre permettant de selectionnerune géométrie personnelle de text dans le mode texte VESA_800x600. &merged; &man.vidcontrol.1; permet maintenant à l'utilisateur d'oublier de spécifier la taille des fontes lors de leur chargement, et il dispose aussi d'une meilleur gestion des erreurs. &merged; &man.vidcontrol.1; dispose de l'option permettant d'obtenir une copie du tampon vidéo de &man.syscons.4;. Ces copies peuvent ensuite etre utilisées avec l'utilitaire graphics/scr2png de la collection des Ports. &merged; &man.vidcontrol.1; dispose maintenant de l'option permettant de nettoyer l'historique du tampon pour un tty, et de l'option pour affecter la taille de l'historique du tampon. &merged; The default stripe size in &man.vinum.8; has been changed from 256KB to 279KB, to spread out superblocks more evenly between stripes. &man.wall.1; supporte maintenant de l'option de ligne de commande permttant d'écrire un message a tous les utilisateurs d'un groupe donné. &merged; &man.watch.8; dispose de l'option permettant de spécifier le périphérique &man.snp.4; à utiliser. &man.which.1; est maintenant un programme C plutot qu'un script Perl. &man.whois.1; interroge maintenant directement l'ARIN pour les demandes d'adresses IP. Si la requète à l'ARIN référence l'APNIC ou le RIPE, le serveur aproprié est appelé, dans le cas ou l'option n'est pas spécifiée. &merged; &man.whois.1; dispose de l'option permettant de spécifier le code pays dans le but d'aider les requètes directes vers un serveur whois particulier. &merged; &man.xargs.1; dispose de l'option replstr permettant de demander à l'utilisateur les données à insérées depuis l'entrée standard à certains points, plutot que de prendre ces données à la fin des arguments La chaine de compilation utilise maintenant le code d'initialisation fourni par le compilateur C/C++ de la FSF. Ce changement permet d'obtenir une meilleur compatibilité avec les différentes version de egcs et gcc des ports, comme avec les sources publiques de la FSF. &merged; La Libraire des threads a recu un certain nombre de mises à jour dans la gestion des signaux, des corrections de bogues, et des améliorations de la performance. Le support des thread dans &man.gdb.1; a été mis à jour en conséquence. &merged; Différents ajouts ont été effectués dans le support international: &os; dispose maintenant d'un support total des catégories LC_MONETARY, LC_NUMERIC, et LC_MESSAGES. Un certain nombre d'applications ont été mises à jour pour supporter ces ajouts. Les noms locaux ont été changés pour augementer la compatibilité avec les noms de X11R6, tout comme avec d'autres version UNIX. Comme exemple le nom local en_US.ISO_8859-1 a été changé en en_US.ISO8859-1. Les valeurs dans /etc/locale.alias permettent la compatibilité descendante.&merged; /usr/src/share/examples/BSD_daemon/ dispose d'une version graphique de Beastie. &merged; Parmi l'ensemble du processus, de nombreuses pages de manuel ont été améliorées, que cela soit dans les termes ou dans le formattage de leur contenu. &merged; Logiciels externes am-utils a été mis à jour en version 6.0.7. bc a été mis à jour de la version 1.04 à la 1.06. &merged; La distribution de la librairie ISC BIND est maintenant compilé sous libisc.&merged; BIND est maintenant compilé avec l'option NOADDITIONAL, permettant à &man.named.8; de fonctionner de façon plus consistente lors de certaines mauvaises configurations. &merged; BIND a été mis à jour en version 8.3.1-REL. &merged; Binutils ont été mis à jour en version du 21 Février 2002 depuis la branche FSF 2.12. bzip2 1.0.2 a été importé; cela permet d'avoir le programme &man.bzip2.1; et la librairie libbz2 dans le système de base. &merged; L'éditeur &man.ee.1; a été mis à jour en version 1.4.2. &merged; file a été mis à jour en version 3.37. gcc a été mis à jour en version 2.95.3. &merged; &man.gcc.1; utilise maintenant une version unifié de libgcc plutot qu'une version séparées pour les programmes supportant les thread et ceux ne les supportant pas. /usr/lib/libgcc_r.a peut donc être retiré. &merged; &man.gcc.1; supporte maintenant la variable d'environnement GCC_OPTIONS, qui permet de positionner les options par défaut pour GCC. &merged; GNATS a été mis à jour en version 3.113. &merged; GNU awk a été mis à jour en version 3.1.0. gperf a été mis à jour en version 2.7.2. groff et l'ensemble des utilitaires associés ont été mis à jour en version FSF 1.17.2. Cet import inclu la nouvelle macro &man.mdoc.7; (anciennement mdocNG), qui élimine beaucoup des anciennes limitations de son prédécesseur. &merged; Heimdal a été mis à jour en version 0.3f. La version de IPFilter fournie avec &os; inclue maintenant le programme &man.ipfs.8;, permettant d'obtenir des informations sur l'état des entrées NAT et des règles "stateful" à sauvegarder sur disque et a restaurer après un redémarrage. La fonctionnalité a été rajouté dans &man.rc.conf.5;. &merged; Le client ISC DHCP a été mis à jour en version 3.0.1RC6. Kerberos IV a été mis à jour en version 1.0.5. &merged; La commande &man.more.1; a été remplacée par &man.less.1;, bien sur il est toujours possible de lancer une commande more. &merged; La version 371 de less a été importé. libpcap a été mis à jour en version 0.6.2. &merged; libreadline a été mis à jour en version 4.2. Linux-PAM a été mis à jour en version 0.75. &merged; Un certain nombre de nouveaux modules Linux-PAM ont été ajoutés, ceux-ci incluent: pam_ftp, pam_krb5, pam_nologin, pam_rootok, pam_securetty, pam_wheel. lukemftp a remplacé le programme &man.ftp.1; de &os;. Parmis les nouvelles fonctionnalités on trouve; plus d'automatisation, meilleur conformitée aux standards, augmentation du taux de trtansfert et la possibilité de configurer des la ligne de commande. Certaines variables d'environnement et d'arguments de ligne de commande ont changés. ncurses a été mis à jour en version 5.2-20010512. La suite de programme NTP a été mis à jour en version 4.1.0. &merged; La suite OPIE, de mot de passe unique, a été mis à jour en version 2.32. &merged; Elle a complètement remplacé les fonctionnalités de S/Key. Perl a été mis à jour en version 5.6.0. &man.routed.8; a été mis à jour en version 2.22. &merged; La version 1.4.3 des utilitaires smbfs en mode utilisateur ont été importés. &merged; tcpdump a été mis à jour en version 3.6.3. &merged; Le shell &man.csh.1; a été remplacé par &man.tcsh.1;, bien sur il est lanceable sous le nom csh. tcsh a été mis à jour en version 6.11. &merged; La version contribuée de tcp_wrappers inclue maintenant le démon &man.tcpd.8; helper daemon. Ce programme n'est pas nécessaire pour une installation standard de &os; (car &man.inetd.8; inclue cette fonction), mais peut être nécessaire pour des remplacants à &man.inetd.8;, comme par exemple xinetd. top a été mis à jour en version 3.5b12. &man.traceroute.8; obtient maintenant la valeur maximum du TTL depuis la variable sysctl net.inet.ip.ttl. &merged; La base de données des zones de temps à été mis à jour en version tzdata2001d.&merged; CVS cvs a été mis à jour en version 1.11.1p1. &merged; La valeur par défaut de la variable &man.cvs.1; CVS_RSH est maintenant ssh plutot que rsh. &merged; &man.cvs.1; support maintenant l'option permettant de mettre à jour le fichier CVS/Template du répertoire des sources. &merged; &man.cvs.1; diff dispose maintenant de l'option permettant de gérer les différences entre les révision de plusieurs branches. &merged; CVSup CVSup, un utilitaire fréquemment utilisé dans la collection des ports de &os;, était installable précedemment via plusieurs ports et pacquetages. Les ports ou pacquetages net/cvsup-bin et net/cvsupd-bin ne sont plus nécessaires ou plus disponibles; il faut utilisé le port net/cvsup à la place. &merged; CVSup a été mis à jour en version 16.1_3, qui est disponible dans la collection des ports de &os; sous net/cvsup. Cette mise à jour fixe le très vieux bogue (mais rencontré que très récemment) qui affecte les marquages de temps après le dimanche 9 Septembre 2001 01:46:40 UTC (1,000,000,000 seconds après la naissance d'UNIX). &merged; KAME La couche IPv6 est maintenant basée sur la snapshot du projet KAME IPv6 en date du 28 Mai 2001. La plupart des ajouts de cette section résultent de cet import. La liste les modifications dans le noyau de la couche KAME IPv6 . &merged; &man.faithd.8; dispose d'un fichier de configuration de liste de controle d'accès. &merged; &man.ifconfig.8; peut maintenant effectuer les opérations de &man.gifconfig.8;. &merged; &man.ifconfig.8; peut maintenant effectuer les fonctions de &man.prefix.8;. &man.prefix.8; est maintenant un script shell pour permettre une certaine compatibilité ascendante. &merged; &man.ndp.8; implémente maintenant un nettoyage des entrées NDP, comme décrit dans le RFC 2461 (Neighbor Discovery for IP Version 6 (IPv6)). &merged; &man.pim6dd.8; et &man.pim6sd.8; ont été retirés du a des conditions de restrictions de license. Ces progrgammes sont disponibles dans la collections des ports sous net/pim6dd et net/pim6sd. &merged; &man.route6d.8; dispose maintenant d'une option permettant d'empécher de mettre à jour la table de routage du noyau. &merged; L'option (numérotation de router) de &man.rtadvd.8; est actuellement ignorée. &merged; OpenSSH OpenSSH a été mis à jour en version 2.9, qui permet le support du protocole SSH2 (par défaut maintenant) et la gestion des clefs DSA. &man.ssh-add.1; et &man.ssh-agent.1; peuvent maintenant utilisé les clefs DSA, et supporté l'authentification distante. Les utilisateurs de OpenSSH aux USA n'ont plus besoin de se basé sur la license restrictive de la boite à outils RSAREF utilisée pour les clefs RSA. Parmis les nouvelles fonctionnalités ajouté on trouve: un client et un serveur sftp. &man.scp.1; peut maintenant travailler sur des fichiers de plus de 2 GBytes. Une limite sur le nombre de connections non authentifiés que &man.sshd.8; peut supporté a été ajouté. Le support à l'algorithme de cryptage Rijndael a été ajouté. Un proxy expérimental SOCKS4 a été ajouté à &man.ssh.1;. OpenSSH peut utiliser les mots de passes OPIE pour l'authentification en mode SSH1. Le support pour le mode SSH2 , n'est pas encore disponible. &merged; Le support de PAM pour OpenSSH a été ajouté. Un très vieux bogue de OpenSSH, qui résultait par une fermeture de la session lorsqu'un client X11 tunnelisé était fermé a été corrigé. La compatibilité Kerberos a été ajoutée à OpenSSH. &merged; OpenSSH a été modifié pour etre plus résistant aux attaques par écoute de trafic, en obligeant que les caractères non affichés soit quand même affichés dans un paquet vide, comme ils le sont lors du bourrage des mots de passe envoyés, ce qui permet de ne pas avoir d'informations sur la longueur du mot de passe. &merged; &man.sshd.8; est activé par défaut lors d'une nouvelle installation. &merged; &man.sshd.8; X11Forwarding est maintenant activé par défaut au niveau du serveur (tous les risques sont sur le client, ou il est désactivé par défaut). &merged; Le paramètre ConnectionsPerPeriod dans /etc/ssh/sshd_config, a été remplacé par MaxStartups. &merged; Le fichier de configuration de OpenSSH dispose du paramètre VersionAddendum, permettant de changer la chaine de caractères de version affichée après la version principale de OpenSSH au niveau de &man.sshd.8;. OpenSSL OpenSSL a été mis à jour en version 0.9.6c. OpenSSL dispose maintenant d'un support d'optimisation ASM indépendant de la machine, activé par les nouvelles variables MACHINE_CPU et/ou CPUTYPE de make.conf. &merged; sendmail sendmail a été mis à jour de la version 8.9.3 vers la version 8.12.2. Les changements importants incluent : &man.sendmail.8; n'est plus installé set-user-ID root (mais en set-group-ID smmsp); un nouveau répertoire où se trouvent les fichiers par défaut (voir /usr/src/contrib/sendmail/cf/README); &man.newaliases.1; est limité à root et aux utilisateurs identifiés; le cryptage STARTTLS ; le port MSA (587) est activé par défaut. Voyez le fichier /usr/src/contrib/sendmail/RELEASE_NOTES pour plus d'informations. &merged; &man.mail.local.8; n'est plus installé par défaut set-user-ID bin. Si vous utilisez un fichier /etc/mail/sendmail.cf de la configuration par défaut sendmail.cf inclue avec &os; d'une version supérieure à 3.1.0, tout va bien. Si vous utilisez une version personnalisée de sendmail.cf et mail.local pour la distribution, vérifiez bien que l'option F=S est mise à la ligne Mlocal. Les personnes utilisant des fichiers .mc qui doivent ajouter cette option, peuvent le faire en ajoutant la ligne suivante au fichier .mc et en regénèrant le fichier sendmail.cf: MODIFY_MAILER_FLAGS(`LOCAL',`+S')dnl Notez que FEATURE(`local_lmtp') le fait automatiquement . &merged; La configuration par défaut de /etc/mail/sendmail.cf désactive les commandes SMTP EXPN et VRFY. &merged; &man.vacation.1; a été mis à jour en version inclue dans sendmail.&merged; Les outils de configuration de sendmail sont installés dans /usr/share/sendmail/cf/. &merged; De nouvelles options sont disponibles dans make.conf : SENDMAIL_MC et SENDMAIL_ADDITIONAL_MC. Voyez /usr/share/examples/etc/make.conf pour plus d'informations. &merged; /etc/mail/Makefile; utilise la nouvelle option SENDMAIL_MC de make.conf; peut générer les fichiers .cf depuis les fichiers .mc; généralise la reconstruction des tables de hashage; peut reconstruire le fichier des alias; et peut arreter, démarrer ou relancer sendmail. &merged; Les utilisateurs smmsp et mailnull ont été ajoutés dans /etc/master.passwd. En l'absence de valeur confDEF_USER_ID, l'utilisateur mailnull sera utilisé par défaut pour augmenter le niveau de sécurité. Précédemment, si l'utilisateur mailnull était inexistant, l'utilisateur daemon était utilisé. Cette modification peut générer des problèmes de droits lors de l'envoi de courrier a des programmes (comme pour mail/majordomo).&merged; L'ancienne fonctionnalité peut être réactivée en ajoutant la ligne define(`confDEF_USER_ID', `daemon') aux fichiers *.mc de configuration. Collection des Ports/Packages BSDPAN, une collection de modules permettant une meilleur intégration de Perl dans la collection des Ports de &os;, a été ajoutée. &man.pkg.create.1; et &man.pkg.add.1; peuvent maintenant utiliser les pacquetages compressés avec &man.bzip2.1;. &man.pkg.add.1; utilise la variable d'environnement PACKAGEROOT pour déterminer le site mirroir à utiliser pour les nouveaux pacquetages. &merged; &man.pkg.create.1; écrit les dépendences dans l'ordre de ces dépendences plutot que dans l'ordre spécifié en ligne de commande. Cela permet d'améliorer le fonctionnement de pkg_add -r. &merged; &man.pkg.create.1; supporte l'option permettant de créer un fichier de pacquetage depuis un pacquetage installé localement. &merged; Lors de l'effacement de plusieurs pacquetages, &man.pkg.delete.1; essaie de les effacer dans l'ordre des dépendences plutôt que dans celui passé en ligne de commande. &merged; &man.pkg.delete.1; peut maintenant fonctionner avec des expressions régulières sur le nom des pacquetages. En plus, il supporte l'option pour effacer tous les pacquetages et l'option pour la confirmation dans le style de &man.rm.1;. &merged; &man.pkg.delete.1; supporte l'option , pour un effacement récursif des pacquetages. &merged; &man.pkg.info.1; supporte le "globbing" dans le nom des pacquetages installés. L'option désactive cette fonctionnalité, et l'option permet d'utiliser les expressions régulières à la place.. &merged; &man.pkg.info.1; dispose de l'option permettant de vérifier le pacquetage installé avec sa somme de controle (pour vérifier s'il a été modifié depuis son installation). Bien sur, ce mécanisme n'est pas plus sécurisé que le contenu de /var/db/pkg s'il est utilisé à des fins d'audit. &merged; &man.pkg.sign.1; et &man.pkg.check.1; ont été ajoutés pour permettre de signer et de vérifier les signatures des pacquetages binaires. &merged; &man.pkg.update.1;, un utilitaire pour mettre à jour les pacquetages installés et leurs dépendences, a été ajouté. &merged; &man.pkg.version.1; dispose d'une routine de comparaison des numéros de versions, correspondant au Porters Handbook. Il dispose aussi d'une option permettant de tester. &merged; &man.pkg.version.1; supporte l'option pour limiter ses opérations aux pacquetages vérifiant une chaine donnée. &merged; Les numéros de version des pacquetages installés ont une nouvelle syntaxe, qui permet de supporter les variables PORTREVISION et PORTEPOCH des Makefiles de la collection des Ports. Ces changements permettent de vérifier les modifications dans les entrées de la collection des ports, comme les patches de sécurité ou les changements spécifiques à &os;, qui ne sont pas reflètés dans les distributions des logiciels originaux. &man.pkg.version.1; peut comparer ces numéros de versions. &merged; Pour améliorer les performances et l'utilisation des disques, les squelettes de ports de la collection des ports de &os; ont été restructurés. Les ports et pacquetages installés ne doivent pas être affectés par ce changement. &merged; Tous les ports et pacquetages contiennent maintenant une directive origin, qui permet de déterminer de façon plus simple, pour les programmes comme &man.pkg.version.1;, le répertoire de compilation du pacquetages.. &merged; Mise a jour depuis une version précedente de &os; Si vous effectuez une mise à jour depuis une version antérieure de &os;, vous avez généralement 3 options : Utiliser l'option de mise à jour binaire de &man.sysinstall.8;.Cette option est sans doute la plus rapide mais elle suppose que votre installation de &os; n'utilise aucune option spéciale de compilation. Faire une réinstallation complète de &os;. Techniquement, ce n'est pas une méthode de mis à jour et, dans tous les cas, elle est moins pratique qu'une mise à jour binaire dans le sens ou elle nécessite de sauvegarder et de restaurer manuellement le contenu du répertoire /etc. Cependant, cela peut être utile si vous désirez (ou si vous devez) modifier le partitionnement de vos disques. A partir du code source du répertoire /usr/src. Cette option est plus souple mais demande plus d'espace disque, plus de temps et plus de compétences techniques. Faire une mise à jour depuis une très ancienne version de &os; peut être problématique; dans de tels cas, il est généralement plus efficace de réaliser une mise à jour binaire ou une réinstallation complète. Veuillez lire le fichier INSTALL.TXT pour plus d'informations, de préférence avant de commencer une mise à jour. Si vous effectuez une mise à jour depuis les sources, veuillez également consulter le fichier /usr/src/UPDATING. Enfin, si vous désirez utiliser un des moyens de suivre les branches -STABLE ou -CURRENT de &os;, veuillez consulter la section -CURRENT vs. -STABLE du manuel de référence de FreeBSD. Important: La mise à jour de &os; devrait, bien évidemment, être réalisée uniquement après avoir effectué une sauvegarde de toutes les données et des fichiers de configuration.