The NetBSD Foundation Quarterly Report: July - September 2004
NetBSD is an actively developed operating system. With binary support of over 40 architectures in our last official release (NetBSD 1.6.2), our widely portable Packages Collection and large userbase there is a lot going on within the project. In order to allow our users to follow the most important changes over the last few months, we provide a brief summary in these official status reports on a regular basis. These status reports are suitable for reproduction and publication in part or in whole as long as the source is clearly indicated.
In the third quarter of 2004, the NetBSD Project has moved closer and closer to the much anticipated release of NetBSD 2.0. The equally impatiently awaited publication of the new NetBSD Logo is also imminent, delayed only by a few legal processes concerning the transfer of the copyright etc. Aside from these two high-profile issues, there were, of course, a lot of other important and interesting news during the last three months.
The third quarter of 2004 within NetBSD in details:
- NetBSD Logo Design Contest update 
- New Developers 
- buildlink2 retired 
- New stable branch: pkgsrc-2004Q3 
- pkgsrc documentation moved to website 
- Non-NetBSD bulk-builds improving 
- hpcarm: Thumb code working on NetBSD 
- macppc: COMPAT_DARWIN update 
- sgimips: wscons support for Indigo in-tree 
- sgimips: Working driver for on-board MACE MAC-110 Ethernet on O2 
- sgimips: New snapshot 
- Security Advisory 
- Support for SHA1 hashed passwords 
- Miscellaneous updates
- IPv4 PIM support integrated 
- Work-in-progress "wedges" implementation 
- NetBSD Version Numbering Scheme Changes 
As announced in the last quarterly status report, the NetBSD Project has reviewed all of the entries submitted to the international competition for the creation of a new logo. Members of the NetBSD Foundation voted for the new logo from a short-list of six submitted designs selected by the logo committee. Characteristics important for the new logo were simplicity, appealing form and color choice, and identification with the project.
At this point, a new logo has been selected the last formal step -- the process of transferring the Intellectual Property from the artist to the NetBSD Foundation (which includes the time-consuming but important careful review of some legal documents by a lawyer to ensure that everything is done correctly and appropriately) -- is virtually completed. Updating the website and creating imagery from the master copy are the last steps that need to be resolved. It is unfortunate that this procedure has delayed the official announcement of the new logo even further; the NetBSD Project would like to thank all users for their patience.
The publication of the new logo, part of the NetBSD Foundations effort to create a new, recognizable and differentiated NetBSD identity, is expected within the next two weeks, coincidentally (though not entirely inappropriately) heralding the release of NetBSD 2.0 soon thereafter.
The NetBSD project is pleased to welcome the following new developers during the third quarter of 2004:
At the end of September, the NetBSD Releng Team announced that the first Release Candidate for NetBSD 2.0 (ie NetBSD-2.0_RC1) has been tagged. This is a major milestone in the much anticipated release of NetBSD 2.0: from now on, any pullups must address some form of show-stopping issue to even be considered.
Soon after, during the first days of October, a number of important pullups were incorporated to fix some issues with Linux emulation under NetBSD/i386 as well as some installation problems under some of the arm-based ports, and NetBSD-2.0_RC2 was tagged, followed soon after by RC3, which includes an important NFS fix. This pushes the anticipated release date of NetBSD 2.0 tentatively near the end of October.
The NetBSD Project encourages all users to test the binary snapshots that will soon be available on the release engineering ftp server (ftp://releng.NetBSD.org).
One of the last items to make it into this quarterly status report is the good news that NetBSD did it again: after the original Internet2 Land Speed Record set by NetBSD in May 2004 was broken, NetBSD shines again: Once more researchers at the Swedish University Network (SUNET) have broken the Internet2 Land Speed Record, using the upcoming version of NetBSD 2.0.
The new records are 124.935 Pbmps in a single stream (was 69.073 Pbmps), and 122.367 Pbmps in multiple streams. NetBSD was used once more due to the ``scalability of it's TCP code''.
More information about this record including the NetBSD configuration can be found at http://proj.sunet.se/LSR3-s/ for single stream and http://proj.sunet.se/LSR3-m/ for multiple streams. The website of the Internet2 Land Speed Record (I2-LSR) competition is located at: http://lsr.internet2.edu/.
At the end of September, the NetBSD Packages collection contained 5018 packages. Since July 2004, 1014 packages were updated, 250 new packages added and 30 removed, leading to an overall increase of 220 packages in 3 months (73.3 packages added per month, or 2.4 new packages per day).
Some of the most visible additions and updates include gcc-3.4.2, gnome-2.8, kde-3.3.0, mozilla-1.7.3, suse91_* and the X.org based packages. In addition, the following items show some aspects of the activity related to the NetBSD Packages Collection since July 2004:
buildlink2 is dead; long live buildlink3! After the first stable pkgsrc branch was cut in March 2004, Alistair G. Crooks (login: agc) announced that one of the goals of subsequent pkgsrc branches would be the move to the buildlink3 framework, and on July 6th, Thomas Klausner (login: wiz) announced that buildlink2 is now officially retired.
On behalf of the pkgsrc team, Alistair G. Crooks (login: agc) announced on September 20th, 2004, that a new pkgsrc-2004Q3 branch was created after a two-week freeze on the pkgsrc trunk. This branch, which includes a total of 4959 actively-maintained and supported packages, deprecates the last stable pkgsrc branch (pkgsrc-2004Q2); all maintenance will take place on this new pkgsrc-2004Q3 branch. Please see Alistair's message to the tech-pkg mailing list and our online documentation of the NetBSD Packages Collection for details.
In an effort to avoid unneccesary duplication of documentation, the main pkgsrc documentation was finally moved into the htdocs module, making it available in full on the NetBSD website as the authoritative source. The existing XML documentation was updated by Hubert Feyrer (login: hubertf) and Grant Beattie (login: grant) and is available at http://www.NetBSD.org/docs/pkgsrc/.
Jonathan Perkin (login: sketch), who has been running pkgsrc bulk-builds on SunOS 5.9 reports that after Johnny C. Lam's (login: jlam) new wrapper framework was committed, he was able to instantly build some 500 binary packages more than previously. His bulk-build results for successful packages jumped from 545 to 1190.
Jan Schaumann (login: jschauma) also reported significant progress on another non-NetBSD platform. His latest IRIX 6.5 bulk-build completed an impressive 1354 binary packages built with the SGI MIPSPro compiler chain using SGIs n32 ABI; a 64bit bulk build for IRIX 6.5 was still busy compiling packages at the time of this writing. Binary packages for IRIX 6.5/n32 are now available from ftp://ftp.NetBSD.org/pub/pkgsrc/packages/IRIX-6.5/n32/pkgsrc-2004Q3/All/.
Due to the large number of supported platforms, this status report will only point out the very significant changes to some of the ports. For a full list of port-specific changes, please refer to http://www.NetBSD.org/changes/changes-2.0.html#port_specific and http://www.NetBSD.org/changes/changes-3.0.html#port_specific.
Richard Earnshaw (login: rearnsha) announced that he was able to commit code that supports applications compiled as Thumb code, resulting in an impressive decrease in the size of binaries (30.2% smaller for the cc1 binary, as an example).
``Thumb is an extension to the 32-bit ARM architecture. The Thumb instruction set features a subset of the most commonly used 32-bit ARM instructions which have been compressed into 16-bit wide opcodes. On execution, these 16-bit instructions are decompressed transparently to full 32-bit ARM instructions in real time without performance loss.'' (http://www.arm.com/products/CPUs/archi-thumb.html)
See Richard's posting to the port-hpcarm and port-arm mailing lists for details.
Emmanuel Dreyfus (login: manu) gave a detailed update of the status of COMPAT_DARWIN development, a binary compatibility option in the NetBSD kernel that enable Mac OS X binaries to run on NetBSD/powerpc, in the middle of August. He summarizes that command-line applications do work, and X11 applications should work, while the current focus is to run QuartzDisplay. See his message to the port-macppc mailinglist for details.
Chris Kobayashi (login: sekiya) committed code to provide wscons support with GR2 graphics controllers and z8530 based keyboard/mouse on IP20/IP12 (i.e. Indigo machines). His message to the port-sgimips mailinglist is at http://mail-index.NetBSD.org/port-sgimips/2004/07/09/0000.html.
Izumi Tsutsui (login: tsutsui) has added a working driver for O2 (IP32) on-board MACE MAC-110 Ethernet. As much of this driver was derived from trial-and-error, he encourages all users to report problems using send-pr(1), as usual. His message to the port-sgimips mailinglist is at http://mail-index.NetBSD.org/port-sgimips/2004/07/11/0001.html.
Chris Kobayashi (login: sekiya) has made available an updated 2.0 snapshot for NetBSD/sgimips. This snapshot includes the dynamic X server (backported from -current). Christopher's message to the port-sgimips mailinglist is at http://mail-index.NetBSD.org/port-sgimips/2004/08/05/0003.html.
The NetBSD Security-Officer team released one security advisory in the third quarter of 2004:
- NetBSD-SA2004-009: ftpd root escalation
More information on previous Security Advisories is available at http://www.NetBSD.org/support/security/.
Simon J. Gerraty (login: sjg) has been working on support for sha1 hashed passwords as discussed on the tech-userlevel mailinglist earlier this year. At the beginning of July, he committed the necessary code to the libcrypt library.
The algorithm used is essentially PBKDF1 from RFC 2898 but using hmac_sha1 rather than SHA1 directly (a suggestion Simon took from Steven M. Bellovin (login: smb)). The code implements HMAC as defined in RFC 2104 and includes a unit test for both hmac_sha1 and hmac_sha1 using a selection of the Known Answer Tests from RFC 2202. It is worth noting that to be FIPS compliant the hmac key (password) should be 10-20 chars.
- texinfo updated to version 4.7 : Thomas Klausner (login: wiz) upgraded texinfo to version 4.7 in the middle of July.
- IPFilter updated to version 4.1.3 : Martti Kuparinen (login: martti) upgraded IPFilter to version 4.1.3 near the end of July.
- groff updated to version 1.19.1 : Thomas Klausner (login: wiz) upgraded groff to version 1.19.1 at the end of July.
Emmanuel Dreyfus (login: manu) announced that he integrated IPv4 PIM support from Pavlin Radoslavov and Hitoshi Asaeda. Part of this work has been supported by the XORP project.
PIM is multicast routing protocol aimed as a replacement for DVRMP. pimd and XORP routing daemons should be able to work with IPv4 multicast on NetBSD now, provided the MROUTING and PIM kernel options are enabled. Documentation is available from newly imported multicast(4) and pim(4). XORP is available from the NetBSD Packages collection.
Jason Thorpe (login: thorpej) has proposed a new way of representing disk partitions in the NetBSD kernel, called ``wedges''. This approach decouples the internal representation of disk partitions from the on-disk representation. Currently, the NetBSD kernel uses "struct disklabel" (a.k.a. BSD disklabel) for both in-core and on-disk representation, and operates on this structure exclusively.
His detailed proposal, which spawned a lively discussion on the tech-kern mailing list, can be found at http://mail-index.NetBSD.org/tech-kern/2004/09/22/0009.html, which also contains a link to the suggested patches.
Christos Zoulas (login: christos) announced that the NetBSD Core Team ratified the proposed changes to the NetBSD version numbering scheme to clarify the relationship between ``current'' and ``release'' versions of NetBSD. The major version number will from now on be used to indicate a major release and the minor version number to indicate a minor release.
A detailed explanation of why these changes were necessary and how they are implemented can be found in Christos' message to the tech-kern mailing list.
Back to the NetBSD Foundation Inc. page