Annotation of www/plus.html, Revision 1.17
1.14 deraadt 1: <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML Strict//EN">
2: <html>
3: <head>
4: <title>OpenBSD changes</title>
5: <link rev=made href=mailto:www@openbsd.org>
6: <meta name="resource-type" content="document">
7: <meta name="description" content="the main OpenBSD page">
8: <meta name="keywords" content="openbsd,main">
9: <meta name="distribution" content="global">
10: <meta name="copyright" content="This document copyright 1996 by OpenBSD, Inc.">
11: </head>
12:
13: <body>
14:
15: <h1>OpenBSD</h1>
16: <hr>
17: <h3>Changes Relative to other *BSD's.</h3>
18:
19: <p>
20: OpenBSD looks a lot like NetBSD (from which it is derived, following
21: the 4.4BSD roots), but is now being developed seperately. Good changes
22: from other free operating systems will be merged in (of course, depending
23: on various factors like developer time for example.) OpenBSD tracks
24: NetBSD changes very closely; say anywhere between 2 to 10 days
25: behind the state of NetBSD-current all the time. Hence you can truly
26: say that OpenBSD is NetBSD <b>PLUS MORE STUFF</b>.
27:
28: <p>
29: Compared to NetBSD, various additions have been made. This is a
30: partial list of the major machine independent changes (ie. these are the
31: changes people ask about most often). Check the page of the specific port
32: you are interested in for further port-specific details. Note that many ports
33: have had architecture-specific enhancements.
34:
1.17 ! deraadt 35: <p>
! 36: <h3>Life for the OpenBSD project begins...</h3>
! 37: <p>
1.14 deraadt 38: <ul>
39: <li>Many many NetBSD PR's fixed (which NetBSD has not yet fixed)
40: <li>New curses library, including libform, libpanel and libmenu.
41: <li>a termlib library which understands termcap.db, needed for new curses.
42: <li>The FreeBSD ports subsystem was integrated and is usable by you!
43: <li>ipfilter for filtering dangerous packets
44: <li>better ELF support
45: <li>nlist() that understands ELF, ECOFF, and a.out, allowing non-a.out ports
46: to use kvm utilies
47: <li>Verbatim integration of the GNU tools (using a wrapper Makefile)
48: <li>All the pieces needed for cross compilation are in the source tree.
49: <li>Some LKM support in the tree.
50: <li>ATAPI support (should work on all ISA busses)
51: <li>new scsi, md5, pkg_* commands
52: <li>Numerous security related fixes
53: <li>Kerberos and other crypto in the source tree that is exportable
54: <li>Solid YP master, server, and client capabilities.
55: <li>/dev/*random -- a device driver providing some kinds of random data
56: <li>In-kernel update(8) with an adaptive algorithm
57: <li>Some ddb improvements and extensions
58: <li>Numerous scsi fixes
59: <li>ncheck utility for ffs
60: <li>/sbin/init now deals with non-existant ttys, no longer spins gettys madly.
61: <li>new system calls: rfork(), minherit(), poll().
62: <li>select() that can handle any amount of file descriptors.
63: <li>kernfs extensions
64: <li>ATM support (support for one company's sparc & i386 cards available)
65: <li>Boot kernels with "-c" to edit/enable/disable device configuration tables
66: <li>pax as tar, gnutar is toast
67: <li>using AT&T awk, gawk is toast
68: <li>Even more security fixes.
69: <li>Accepts FreeBSD MD5 passwords in password maps, soon will be able to
70: generate them too
71: <li>Linux ext2fs and BSD4.4 LFS support being worked on.
72: <li>Working ATAPI audio support for multiple architectures.
73: <li>terminfo database support.
74: <li>Fortran in the tree.
75: <li>The most secure rdist support anywhere.
76: <li>randomized port allocation in bind(), bindresvport(), and rresvport() --
77: security via unpredictability.
78: <li>Protection from the udp spamming and ftp bounce attacks.
79: <li>Significantly improved ftp daemon.
80: <li>Numerous more security policy and implimentation improvements (OpenBSD
81: defaults to installing in a very secure mode)
82: <li>zlib (non-GPL'd gzip-compatible library)
83: <li>Newest version of pppd.
84: <li>_POSIX_SAVED_IDS behaviour with permitted BSD extensions.
85: <li>Fixed long-standing vm swap-leak.
86: <li>FreeBSD malloc() that uses mmap() and is able to free unused memory.
87: <li>Numerous FreeBSD userland fixes and improvements incorporated.
88: <li>new rdisc Router Discovery daemon
89: <li>generic protection against the bind() takeover problem.
90: <li>at -f security fix.
91: <li>20 or so more security fixes
92: <li>install now supports -C, -p, and -S flags.
93: <li>a real adduser program, which can even be used uninteractively.
94: <li>POSIX & C2 requirement; lose setuid/setgid bits if owner/group changed
95: by chown(). This can be turned off with sysctl.
96: <li>partial protection against tcp SYN attacks.
97: <li>added /etc/fbtab support to login & init.
98: <li>RCS version 5.7
99: <li>much newer join command (4.4lite2 with other fixes)
100: <li>scsi subsystem security fix
101: <li>Kerberos is much more silent if not configured
102: <li>arc4-based random support in kernel
103: <li>ncr53cXXX scsi scripts assembler
104: <li>Numerous ftpd improvements and fixes, including multihomed and skey support.
105: <li>`lsof'-style features in fstat.
106: <li>rudimentary support for ISA Plug-and-Play cards
107: <li>Fixed timeout support in RPC library, and also fixed it to support more
108: than FD_SETSIZE file descriptors.
109: <li>improved locate command
110: <li>a good start at NETIPX support
111: <li>vim version 4.5
112: <li>gcc 2.7.2.1 (to get closer to native alpha support ar gcc
113: bugs).
114: <li>latest version of perl, and a lndir command.
115: <li>Even more security fixes.
116: <li>cdio command for using CD audio.
117: <li>Kernel warns f /dev/ces not ebooting ated /de<li>libgis gone; our malloc() is better.
118: <li>FreeBSD pipe() system call; quite a bit faster.
119: <li>Some serial driver support for /dev/cuaXX devices to support transparent
120: out+dial
121: <li>DDcess symrom LKM es
122: <li>Say goodbye to dump, restore, and mt security holes: They are no longer
123: setuid.
124: <li>*Hobbit*'s netcat utility. The crackers use it, so should you.
125: <li>New routed from SGI.
126: <li>Complete in-tree development for MIPS/Alpha systems (ie. binutils).
127: <li>ftp command modified for easily scripted ftp & http downloads.
128: <li>And of course... more security related bugfixes... (ie. dump,
129: restore, mt).
130: <li>vim is replacing nvi, since nvi does not have a pure BSD license, and vim
131: also works better.
132: <li>16 partitions working on sparc and i386 (yipee!)
133: <li>Nice sample files in /etc
134: <li>sendmail gecos hole fixed (in a number of ways; other programs in the
135: source tree were also vulnerable.)
136: <li>secure multicast tools against possible security problems.
137: <li>latest GNU groff, incorporated in a clean wrapperized form.
138: <li>mopd for networking booting Digital machines
139: <li>less version 2.90
140: <li>deal with the SYN bomb problem (denial of service attack) as well known.
141: <li>Another kerberos security fix.
142: <li>Almost a hundred more security fixes, including /tmp races because of strncpy.
143: <li>Compile time option to compile the source tree almost completely dynamic.
144: <li>A 7% reduction in size of static binaries.
145: <li>FreeBSD's adduser(8) command. Also an rmuser(8) command.
146: <li>We have completed security reviews of almost all userland programs and
147: libraries except for the gnu stuff (where, based on preliminary
148: inspection there is poor handling of temp files).
149: <li>Working Linux ext2fs.
150: <li>Added sudo (which is maintained by one of our developers)
151: <li>CTM is now a supported way of obtaining OpenBSD source code.
1.17 ! deraadt 152: </ul>
! 153: <p>
! 154: <h3>OpenBSD 2.0 released.</h3>
! 155: <p>
1.15 deraadt 156: <ul>
1.14 deraadt 157: <li>The NIST Posix test suite became free. As a result we have been correcting
158: numerous problems in the source tree, and expect to be completely
159: POSIX compliant very soon.
160: <li>upgrade to CVS version 1.9.
161: <li>A number of security fixes to the way coredumping works.
162: <li>The /dev/*random devices are now default on all architectures.
163: <li>Add stack tracebacks to Arc port's kernel debugger.
164: <li>Skey revamped into full OTP (RFC1938) support, including sha1 and
165: md5 support.
166: <li>GPL i387 emulator added.
167: <li>Crank kvm space on the i386 port, also limit buffer cache useage
168: so that 512MB machines may work (untested :-)
169: <li>Numerous fixes to the lpr suite, including security.
170: <li>More ftpd raging paranoia security fixes.
171: <li>The NIST suite showed numerous errors in libraries and the kernel.
172: Only a few small errors remain now, mostly regarding serial
173: ports.
174: <li>In numerous utilities: prefer $LOGNAME, but also accept $USER.
175: <li>OLF binary type added. This is like ELF, but includes an OS-dependent
176: tag. elf2olf(1) converts an elf binary to a tagged OLF binary which
177: the kernel can recognize correctly.
178: <li>Beware $HOME overflows throughout the source tree.
179: <li>Integration of the pmax port.
180: <li>Import of ctm.
181: <li>Various repairs to the scsi scanner support.
182: <li>Numerous more difficult-to-exploit-but-possible-if-someone-really-wanted-to
183: buffer overflows found in system utilities..
184: <li>Memory leak paranoia in cron.
185: <li>Make login get more consistantly upset about failed logins, and tell user
186: about these failures at the next successfull login.
187: <li>pdksh version is now 5.2.11
188: <li>New bsd.*.mk feature: DEBUG=-g. Try it, you'll like it.
189: <li>The Arc port family has a new member: The rPC44 works!
190: <li>lpt driver is now bus-independent.
191: <li>com driver is now bus-independent.
192: <li>Numerous small security fixes again...
193: <li>Use pdksh as our /bin/sh. This provides excellent POSIX compliance.
194: <li>Prevent generic users from mounting filesystems by default.
195: <li>Added -C option to pax/tar. Also made -z support compressed files too.
196: <li>Increased compatibility in the pccons driver with BSDi features.
197: <li>Imported FreeBSD's calendar.
198: <li>GNU gdb works on the mips-based platforms.
199: <li>Add FreeBSD md5 diffs to mtree(8). This can be used to implement a
200: tripwire-like system.
201: <li>Some YP and bootparamd security changes.
202: <li>Hundreds of little fixes all over the place.
203: <li>Multiple updates for GNU software
204: <li>Add disklabels to the floppy device drivers.
205: <li>At boottime, have (*mountroot)() look at the root device's disklabel
206: to determine which filesystem type is to be mounted.
207: <li>If disklabel reading code discovers an ISOFS filesystem underlying,
208: spoof a nice disklabel (enough to fool mountroot).
209: <li>tcpdump 3.3
210: <li>Fix information gathering attack in ping(8).
211: <li>Add NetBSD's "route show" implementation, and at the samet time fix
212: the new buffer overflows that this provided.
213: <li>Fix a few setgroups() related security holes.
214: <li>sendmail 8.8.4
215: <li>texinfo 3.9
216: <li>f77 0.5.19
217: <li>Repair some more KerberosIV buffer overflows. Hard to believe this is
218: supposed to be security software.
219: <li>Add XCASE/IUCLC/OLCUC/OCRNL/ONOCR/ONLRET tty subsystem flags for
220: backwards compatibility.
221: <li>Permit NFS attribute cache to be configured on a per-mount basis.
222:
223: <li>Properly split fsck, mount, and newfs into multiple pieces. Use
224: disklabel information if it is available.
225: <li>Add disklabels to the vnd device driver.
226: <li>Change the games to be run setgid games, not setuid games. This closes
227: a whole slew of fascinating security holes.
228: <li>Import of the powerpc port.
229: <li>Properly use _POSIX_SAVED_IDS throughout the source tree.
230: <li>Permit building of kernels without a.out support.
231: <li>ppp 2.3b3
232: <li>libcrypt goes away. We do not need this stub library anymore. Do not link
233: against it on OpenBSD, all the pieces you need are in libc.
234: </ul>
1.17 ! deraadt 235: <p>
! 236: <h3>Development is rapidly continuing...</h3>
! 237: <p>
1.14 deraadt 238:
239: This list only mentions platform-independent changes. For a list of changes
240: made in a particular platform, please check the page for that platform.<br><br>
241:
242: <hr>
243: <a href="index.html"><img src=back.gif border=0 alt=OpenBSD></a>
244: <a href=mailto:www@openbsd.org>www@openbsd.org</a>
1.17 ! deraadt 245: <br><small>$OpenBSD: plus.html,v 1.16 1996/12/24 08:39:55 deraadt Exp $</small>
1.14 deraadt 246:
247: </body>
248: </html>