OpenBSD: 3.3. Released

Submitted by Jeremy
on May 1, 2003 - 8:10am

The OpenBSD project has released OpenBSD 3.3 with an impressive array of exciting new features. A complete list of changes can be found here. Todd C. Miller summarizes in his release announcement:

"We believe this is our best release ever with cool new features including ProPolice stack protection in the compiler [story], queue support for pf (traffic shaping) [story], an hppa (pa-risc) port, W^X for some platforms (sparc, sparc64, alpha and hppa) [story], privilege separation in the X server and xconsole, fewer setuid binaries, a new spam deferral daemon and much, much more."

OpenBSD 3.3 can be freely downloaded from a local FTP mirror, or purchased as an inexpensive 3-CD set, which includes images for i386, MacPPC, Vax, Sparc, and Sparc64. Versions for Alpha, HP300, HPPA, Mac68k and MVME68k are available by FTP. The project's homepage states, "OpenBSD is developed by volunteers. The project funds development and releases by selling Cd's and T-shirts, as well as receiving donations. Organizations and individuals donate and thus ensure that OpenBSD will continue to exist, and will remain free for everyone to use and reuse as they see fit." For a detailed description of the new features found in 3.3, read on.


From: Todd C. Miller
Subject: OpenBSD 3.3 released
Date: Wed, 30 Apr 2003 20:03:24 -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
(http://www.trl.ibm.com/projects/security/ssp/), 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            (http://www.OpenBSD.org/security.html)

  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             (http://www.OpenBSD.org/plat.html)

  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                 (http://www.OpenBSD.org/plus33.html)

- The "ports" tree is greatly improved  (http://www.OpenBSD.org/ports.html)

  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

        http://www.OpenBSD.org/plus33.html

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

        http://www.OpenBSD.org/security.html
and
	http://www.OpenBSD.org/errata.html

Security patch announcements are sent to the security-announce@OpenBSD.org
mailing list.  For information on OpenBSD mailing lists, please see:

	http://www.OpenBSD.org/mail.html

------------------------------------------------------------------------
- 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:
    http://www.OpenBSD.org/lyrics.html#33

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:

        http://www.OpenBSD.org/orders.html

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:

        https://https.OpenBSD.org/cgi-bin/order

or, for European orders:

	https://https.OpenBSD.org/cgi-bin/order.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:

        http://www.OpenBSD.org/goals.html#funding

------------------------------------------------------------------------
- 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:

        https://https.OpenBSD.org/cgi-bin/order

and for Europe: 

	https://https.OpenBSD.org/cgi-bin/order.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:

        http://www.OpenBSD.org/ftp.html
        ftp://ftp.OpenBSD.org/pub/OpenBSD/3.3/ftplist

   As of May 1, 2003, the following ftp sites have the 3.3 release:

	ftp://ftp.ca.openbsd.org/pub/OpenBSD/3.3/	Alberta, Canada
	ftp://ftp.usa.openbsd.org/pub/OpenBSD/3.3/	Boulder, CO, USA
	ftp://ftp7.usa.openbsd.org/pub/os/OpenBSD/3.3/	West Lafayette, IN, USA
	ftp://openbsd.wiretapped.net/pub/OpenBSD/3.3/	Sydney, Australia
	ftp://ftp.kd85.com/pub/OpenBSD/3.3/		Ghent, Belgium
	ftp://ftp.calyx.nl/pub/OpenBSD/3.3/		Amsterdam, Netherlands
	ftp://ftp.se.openbsd.org/pub/OpenBSD/3.3/	Stockholm, Sweden
	ftp://ftp.linux.org.tr/pub/OpenBSD/3.3/		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    INSTALL.pt     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:

        http://www.OpenBSD.org/errata.html

   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 (ftp://ftp.OpenBSD.org/pub/OpenBSD/PACKAGES) for more details.

------------------------------------------------------------------------
- SYSTEM SOURCE CODE ---------------------------------------------------

The CD-ROMs contain source code for all the subsystems explained
above, and the README (ftp://ftp.OpenBSD.org/pub/OpenBSD/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.

not good !

Anonymous
on
May 1, 2003 - 9:03am

Installation (with official CD) crash with I/O timeout error when it copy the files on my hard disk (IDE cdrom and hdisk) ... This is really secure ... I can't install it !

Wow you got your CD already?

Anonymous
on
May 1, 2003 - 1:39pm

I thought it just started shipping today.

re: Wow you got your CD already?

on
May 1, 2003 - 3:21pm

Mine just arrived in the mail today. 8^)

So you have a scratched CD

Anonymous
on
May 2, 2003 - 9:13am

So you have a scratched CD or broken hardware.

how typical...

Anonymous
on
May 2, 2003 - 11:07am

Our OS is perfect, is you that cause problems. It your hardware that is faulty.

Common brains,...

Anonymous
on
May 2, 2003 - 12:36pm

... are too small to understand the perfection that is OpenBSD.

It's everyone/everything else that is lacking.

Ha ha ha !

Anonymous
on
May 3, 2003 - 2:51am

My hardware works perfectly with
- Windows (I know, this is not a reference ...)
- Linux (Debian, slackware, mandrake)
- BeOs
- NetBSD
- FreeBSD
- Hurd

I had tried these systems on my hardware. I also use Unix at work (sysadmin) since 1982 ... And I beleve that your Os is faulty in this case. I really hate OpenBSD's mentallity. Why you don't accept that your system can have bug ... and even security bugs ? There is no perfect Os. The OpenBSD guys do there best to produce a good Os, but they can do mistakes !

Possibly due to UDMA problems with CDROM drive

Anonymous
on
May 5, 2003 - 5:16am

For a quick test try disabling pciide (the isa drivers do not have UDMA)

enter '-c' at boot> prompt and
enter boot time kernel configuration
UKC> disable pciide
UKC> exit

if this succeeds, you can disable UDMA only for atapiscsi (ide cdrom driver) using

UKC> change atapiscsi

and entering 0x0f00 for the 'flags' value.

if you like these settings, you can change your kernel (after installation) using 'config -e ...'

see boot(8) boot_config(8) atapiscsi(4) config(8) for details

Most of it is described in the FAQ, man pages (available in web)
and mailing list archives. A "sysadmin since '82" should have searched better.

Most 'popular' Operating Systems _disable_ UDMA on CDROM devices
by _default_ to workaround these buggy drives. OpenBSD prefers
not to reduce the performance of good devices to 'fix' possible
bugs in others.

I had the same I/O timeout pr

Anonymous
on
May 2, 2003 - 1:03pm

I had the same I/O timeout problems when installing OpenBSD 2.2 on my Sun IPX workstation. I tried NetBSD and it installed without any problems!

check your scsi termination.

Anonymous
on
May 2, 2003 - 4:38pm

check your scsi termination. alot of the sparcs are extremely fickle about it. solaris has workarounds that really trash disk performance to deal with scsi errors. openbsd does not. netbsd might.

Rubbish

Anonymous
on
May 2, 2003 - 5:21pm

Rubbish - sparcs aren't fickle about SCSI any more than anyone else is. Have you even got a SCSI machine? SCSI termination ain't got sh*te to do with the OS.

Re: Rubbish

Anonymous
on
May 9, 2003 - 10:21pm

You have just demonstrated your ignorance, there are many ways a driver can mitigate poor signal to/from drives (most of them inimical to performance).

grow up

Anonymous
on
May 5, 2003 - 5:07am

So, you have a problem .. buhu it doesn’t work
Lets go to kerneltrap and complain with a comment.
Grow up

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.