OpenBSD 3.3 has been released and is now available from select ftp mirrors. We believe this is our best release ever with cool new features including ProPolice stack protection in the compiler (, queue support for pf (traffic shaping), an . . .
OpenBSD 3.3 has been released and is now available from select ftp mirrors. We believe this is our best release ever with cool new features including ProPolice stack protection in the compiler (, queue support for pf (traffic shaping), an hppa (pa-risc) port, W^X for some platforms (sparc, sparc64, alpha and hppa), privilege separation in the X server and xconsole, fewer setuid binaries, a new spam deferral daemon and much, much more.
From: "Todd C. Miller"
Subject: OpenBSD 3.3 released
Date: Wed, 30 Apr 2003 20:02:46 -0600

 OpenBSD 3.3 has been released and is now available from select ftp mirrors.  We believe this is our best release ever with cool new features including ProPolice stack protection in the compiler (, queue support for pf (traffic shaping), an hppa (pa-risc) port, W^X for some platforms (sparc, sparc64, alpha and hppa), privilege separation in the X server and xconsole, fewer setuid binaries, a new spam deferral daemon and much, much more.  Full release announcement follows:  ------------------------------------------------------------------------ - OpenBSD 3.3 RELEASED -------------------------------------------------  May 1, 2003.  We are pleased to announce the official release of OpenBSD 3.3. This is our 13th release on CD-ROM (and 14th via FTP).  We remain proud of OpenBSD's record of seven years with only a single remote hole in the default install.  As in our previous releases, 3.3 provides significant improvements, including new features, in nearly all areas of the system:  - Ever-improving security            (OpenBSD: Security)    o Integration of the ProPolice stack protection technology, by     Hiroaki Etoh, into the system compiler.  This protection is     enabled by default.  With this change, function prologues are     modified to rearrange the stack: a random canary is placed     before the return address, and buffer variables are moved closer     to the canary so that regular variables are below, and harder     to smash.  The function epilogue then checks if the canary is     still intact.  If it is not, the process is terminated.  This     change makes it very hard for an attacker to modify the return     address used when returning from a function.    o W^X (pronounced: "W xor X") on architectures capable of pure     execute-bit support in the MMU (sparc, sparc64, alpha, hppa).     This is a fine-grained memory permissions layout, ensuring     that memory which can be written to by application programs can     not be executable at the same time and vice versa. This raises     the bar on potential buffer overflows and other attacks: as a     result, an attacker is unable to write code anywhere in memory     where it can be executed. (NOTE: i386 and powerpc do not support     W^X in 3.3; however, 3.3-current already supports it on i386,     and both these processors are expected to support this change     in 3.4.)    o Further reduction of the number of setuid and setgid binaries     and more use of chroot(2) throughout the system.  While some     programs are still setuid or setgid, most allocate a resource     and then quickly revoke privilege.    o The X window server and xconsole now use privilege separation,     for better security. Also, xterm has been modified to do privilege     revocation. xdm runs as a special user and group, to further     constrain what might go wrong.    o RSA blinding is now on by default in OpenSSL.    o Many occurrences of strcpy(), strcat() and sprintf() have been changed     to strlcpy(), strlcat(), and snprintf() or asprintf().    o A process will now have the P_SUGIDEXEC flag set if any of the     real, effective, or saved uid/gid are mismatched.  Previously     only the real and effective uid/gid were checked.    o ptrace(2) is now disabled for processes with the P_SUGIDEXEC flag     set.  - Improved hardware support             (OpenBSD: Platforms)    o The xl(4), sis(4) and vr(4) ethernet drivers are more robust.    o The ahc(4) and bktr(4) drivers now work on macppc.    o Vlan tagging now works properly in the ti(4) driver.    o The cac(4) driver is now more stable.    o Media handling has been improved in the hme(4) driver.    o Bugs have been fixed in the gem(4) driver to make it more stable     on the sparc64 platform.    o Several fixes for the ami(4) driver.    o New LZS compression support for the hifn(4) driver.    o Support for new IDE controllers from Promise, VIA, NVIDIA and ServerWorks.    o siop(4) driver improvements.    o The sparc64 platform is now supported on several more models and     is much more stable.  - Major improvements in the pf packet filter, including:    o pf now supports altq-style queueing via the new "queue"     directive.  Packets are assigned to queues based on filter     rules.  This allows for very flexible queue settings, including     quality of service bandwidth shaping.    o New support for "anchors," which allows the use of sub-rulesets     which can be loaded and modified independently.    o A new "table" facility provides a mechanism for increasing the     performance and flexibility of rules with large numbers of source     or destination addresses.    o Address pools, redirect/NAT to multiple addresses and thus load     balancing.    o The scrub option 'no-df' has been changed to better handle fragments     with DF set, such as those sent by Linux NFS.    o There is a new 'random-id' option for the scrub rules.  This randomizes     outbound IP IDs and helps defeat NAT detection.    o TCP state inspection is now RFC 763 compliant; we now send a     reset when presented with SYN-cookie schemes that send out-of-window     ACKs during the TCP handshake.    o TCP window scaling support.    o Full support for CIDR addresses.    o Early checksum verification return on invalid packets.    o The configuration language has been made much more flexible.    o Large rulesets now load much more quickly.  - New subsystems included with 3.3    o spamd, a spam deferral daemon, can be used to tie up resources     on a spammer's machine.  spamd uses the new pf(4) table facility     to redirect connections from a blacklist such as SPEWS or DIPS.    o OpenBSD 3.3 includes the hppa port for HP PA-RISC machines.     This should be considered a work in progress; users are advised     to install the most recent snapshot instead of the formal 3.3     hppa release.  - Many other bugs fixed                 (OpenBSD 3.3 Changelog)  - The "ports" tree is greatly improved  ( )    o The 3.3 CD-ROMs ship with many pre-built packages for the common     architectures.  The FTP site contains hundreds more packages     (for the important architectures) which we could not fit onto     the CD-ROMs (or which had prohibitive licenses).  - Many subsystems improved and updated since the last release:    o XFree86 4.2.1 (+ patches).    o gcc 2.95.3 (+ patches and ProPolice).    o Sendmail 8.12.9.    o Apache 1.3.27 and mod_ssl 2.8.12, DSO support (+ patches).    o OpenSSL 0.9.7beta3 (+ patches).    o Stable version of KAME IPv6.    o OpenSSH 3.6 (now 100% compliant with the secsh drafts).    o Bind 9.2.2 (+ patches).    o Perl 5.8.0    o Sudo 1.6.7.    o Latest ISC cron (+ patches and atrun integration).    o Improved vlan(4) robustness.    o FreeBSD emulation now recognizes newer FreeBSD ELF binaries.    o Significant improvements to the pthread library.    o Many, many man page improvements.  If you'd like to see a list of what has changed between OpenBSD 3.2 and 3.3, look at          OpenBSD 3.3 Changelog  Even though the list is a summary of the most important changes made to OpenBSD, it still is a very very long list.  ------------------------------------------------------------------------ - SECURITY AND ERRATA --------------------------------------------------  We provide patches for known security threats and other important issues discovered after each CD release.  As usual, between the creation of the OpenBSD 3.3 FTP/CD-ROM binaries and the actual 3.3 release date, our team found and fixed some new reliability problems (note: most are minor, and in subsystems that are not enabled by default).  Our continued research into security means we will find new security problems -- and we always provide patches as soon as possible.  Therefore, we advise regular visits to          OpenBSD: Security and 	OpenBSD: Errata and Patches  Security patch announcements are sent to the mailing list.  For information on OpenBSD mailing lists, please see:  	OpenBSD: Mailing Lists  ------------------------------------------------------------------------ - CD-ROM SALES ----------------------------------------------------------  OpenBSD 3.3 is also available on CD-ROM.  The 3-CD set costs $40USD (EUR 45) and is available via mail order and from a number of contacts around the world.  The set includes a colorful booklet which carefully explains the installation of OpenBSD.  A new set of cute little stickers are also included (sorry, but our FTP mirror sites do not support STP, the Sticker Transfer Protocol).  As an added bonus, the second CD contains an exclusive audio track, "Puff the Barbarian."  Lyrics for the song may be found at:     OpenBSD: Release Songs  Profits from CD sales are the primary income source for the OpenBSD project -- in essence selling these CD-ROM units ensures that OpenBSD will continue to make another release six months from now.  The OpenBSD 3.3 CD-ROMs are bootable on the following four platforms:   o i386   o macppc   o sparc   o sparc64 (UltraSPARC)  (Other platforms must boot from floppy, network, or other method).  For more information on ordering CD-ROMs, see:             The above web page lists a number of places where OpenBSD CD-ROMs can be purchased from.  For our default mail order, go directly to:             or, for European orders:  	 .eu  All of our developers strongly urge you to buy a CD-ROM and support our future efforts.  Additionally, donations to the project are highly appreciated, as described in more detail at:          OpenBSD: Project Goals   ------------------------------------------------------------------------ - T-SHIRT SALES --------------------------------------------------------  The project continues to expand its funding base by selling t-shirts and polo shirts.  And our users like them too.  We have a variety of shirts available, with the new and old designs, from our web ordering system at:             and for Europe:   	 .eu  The OpenBSD 3.3 and OpenSSH t-shirts are available now!  ------------------------------------------------------------------------ - FTP INSTALLS ---------------------------------------------------------  If you choose not to buy an OpenBSD CD-ROM, OpenBSD can be easily installed via FTP.  Typically you need a single small piece of boot media (e.g., a boot floppy) and then the rest of the files can be installed from a number of locations, including directly off the Internet.  Follow this simple set of instructions to ensure that you find all of the documentation you will need while performing an install via FTP.  With the CD-ROMs, the necessary documentation is easier to find.  1) Read either of the following two files for a list of ftp    mirrors which provide OpenBSD, then choose one near you:          OpenBSD: Mirrors               As of May 1, 2003, the following ftp sites have the 3.3 release:  	 	Alberta, Canada 	 	Boulder, CO, USA 	 	West Lafayette, IN, USA 	 	Sydney, Australia 	 		Ghent, Belgium 	 		Amsterdam, Netherlands 	 	Stockholm, Sweden 	 		Turkey     Other mirrors will take a day or two to update.  2) Connect to that ftp mirror site and go into the directory    pub/OpenBSD/3.3/ which contains these files and directories.    This is a list of what you will see:  	ANNOUNCEMENT   XF4.tar.gz     mac68k/        sparc/ 	Changelogs/    alpha/         macppc/        sparc64/ 	HARDWARE       ftplist        mvme68k/       src.tar.gz  	PACKAGES       hp300/         packages/      srcsys.tar.gz  	PORTS          hppa/          ports.tar.gz   tools/ 	README         i386/          root.mail      vax/     It is quite likely that you will want at LEAST the following    files which apply to all the architectures OpenBSD supports.          README          - generic README         HARDWARE        - list of hardware we support         PORTS           - description of our "ports" tree         PACKAGES        - description of pre-compiled packages         root.mail       - a copy of root's mail at initial login. 			  (This is really worthwhile reading).  3) Read the README file.  It is short, and a quick read will make    sure you understand what else you need to fetch.  4) Next, go into the directory that applies to your architecture,    for example, i386.  This is a list of what you will see:  	CKSUM          INSTALL.os2br  cdrom33.fs     index.txt  	INSTALL.ata     comp33.tgz     man33.tgz  	INSTALL.chs    MD5            etc33.tgz      misc33.tgz  	INSTALL.dbr    base33.tgz     floppy33.fs    xbase33.tgz  	INSTALL.i386   bsd            floppyB33.fs   xfont33.tgz  	INSTALL.linux  bsd.rd         floppyC33.fs   xserv33.tgz  	INSTALL.mbr    cd33.iso       game33.tgz     xshare33.tgz      If you are new to OpenBSD, fetch _at least_ the file INSTALL.i386    and the appropriate floppy*.fs or cd33.iso file.  Consult the    INSTALL.i386 file if you don't know which of the floppy images    you need (or simply fetch all of them).  5) If you are an expert, follow the instructions in the file called    README; otherwise, use the more complete instructions in the    file called INSTALL.i386.  INSTALL.i386 may tell you that you    need to fetch other files.  6) Just in case, take a peek at:          OpenBSD: Errata and Patches     This is the page where we talk about the mistakes we made while    creating the 3.3 release, or the significant bugs we fixed    post-release which we think our users should have fixes for.    Patches and workarounds are clearly described there.  Note: If you end up needing to write a raw floppy using Windows,       you can use "fdimage.exe" located in the pub/OpenBSD/3.3/tools       directory to do so.  ------------------------------------------------------------------------ - XFree86 FOR MOST ARCHITECTURES ---------------------------------------  XFree86 has been integrated more closely into the system.  This release contains XFree86 4.2.1.  Most of our architectures ship with XFree86, including sparc, sparc64 and macppc.  During installation, you can install XFree86 quite easily.  Be sure to try out xdm(1) and see how we have customized it for OpenBSD.  On the i386 platform a few older X servers are included from XFree86 3.3.6.  These can be used for cards that are not supported by XFree86 4.2.1 or where XFree86 4.2.1 support is buggy.  Please read the /usr/X11R6/README file for post-installation information.  ------------------------------------------------------------------------ - PORTS TREE -----------------------------------------------------------  The OpenBSD ports tree contains automated instructions for building third party software.  The software has been verified to build and run on the various OpenBSD architectures.  The 3.3 ports collection, including many of the distribution files, is included on the 3-CD set.  Please see the PORTS file for more information.  Note: some of the most popular ports, e.g., the Apache web server and several X applications, come standard with OpenBSD.  Also, many popular ports have been pre-compiled for those who do not desire to build their own binaries (see PACKAGES, below).  ------------------------------------------------------------------------ - BINARY PACKAGES WE PROVIDE -------------------------------------------  A large number of binary packages are provided.  Please see the PACKAGES file ( ) for more details.  ------------------------------------------------------------------------ - SYSTEM SOURCE CODE ---------------------------------------------------  The CD-ROMs contain source code for all the subsystems explained above, and the README ( ) file explains how to deal with these source files.  For those who are doing an FTP install, the source code for all four subsystems can be found in the pub/OpenBSD/3.3/ directory:          XF4.tar.gz     ports.tar.gz   src.tar.gz     srcsys.tar.gz  ------------------------------------------------------------------------ - THANKS ---------------------------------------------------------------  OpenBSD 3.3 includes artwork and CD artistic layout by Ty Semaka, who also wrote the lyrics and arranged an audio track on the OpenBSD 3.3 CD set.  Ports tree and package building by Christian Weisgerber, David Lebel and Peter Valchev.  System builds by Theo de Raadt, Henning Brauer, Todd Fries and Miod Vallat.  ISO-9660 filesystem layout by Theo de Raadt.  We would like to thank all of the people who sent in bug reports, bug fixes, donation cheques, and hardware that we use.  We would also like to thank those who pre-ordered the 3.3 CD-ROM or bought our previous CD-ROMs.  Those who did not support us financially have still helped us with our goal of improving the quality of the software.  Our developers are:      Aaron Campbell, Alexander Yurchenko, Angelos D. Keromytis,     Anil Madhavapeddy, Artur Grabowski, Ben Lindstrom, Bjorn Sandell,     Bob Beck, Brad Smith, Brandon Creighton, Brian Caswell, Brian Somers,     Bruno Rohee, Camiel Dobbelaar, Cedric Berger, Chad Loder,     Chris Cappuccio, Christian Weisgerber, Constantine Sapuntzakis,     Dale Rahn, Damien Couderc, Damien Miller, Dan Harnett,     Daniel Hartmeier, David B Terrell, David Krause, David Lebel,     David Leonard, Dug Song, Eric Jackson, Federico G. Schwindt,     Grigoriy Orlov, Hakan Olsson, Hans Insulander, Heikki Korpela,     Henning Brauer, Henric Jungheim, Hiroaki Etoh, Horacio Menezo Ganau,     Hugh Graham, Ian Darwin, Jakob Schlyter, Jan-Uwe Finck, Jason Ish,     Jason McIntyre, Jason Peel, Jason Wright, Jean-Baptiste Marchand,     Jean-Jacques Bernard-Gundol, Jim Rees, Joshua Stein,     Jun-ichiro itojun Hagino, Kenjiro Cho, Kenneth R Westerback,     Kevin Lo, Kevin Steves, Kjell Wooding, Louis Bertrand, Marc Espie,     Marc Matteo, Marco S Hyman, Marcus Watts, Margarida Sequeira,     Mark Grimes, Markus Friedl, Mats O Jansson, Matt Behrens,     Matt Smart, Matthew Jacob, Matthieu Herrb, Michael Shalayeff,     Michael T. Stolarchuk, Mike Frantzen, Mike Pechkin, Miod Vallat,     Nathan Binkert, Nick Holland, Niels Provos, Niklas Hallqvist,     Nikolay Sturm, Nils Nordman, Oleg Safiullin, Paul Janzen,     Peter Galbavy, Peter Stromberg, Peter Valchev, Philipp Buehler,     Reinhard J. Sammer, Ryan Thomas McBride, Shell Hin-lik Hung,     Steve Murphree, Ted Unangst, Theo de Raadt, Thierry Deval,     Thomas Nordin, Thorsten Lockert, Tobias Weingartner,     Todd C. Miller, Todd T. Fries, Vincent Labrecque, Wilbern Cobb,     Wim Vandeputte.