Annotation of www/plus22.html, Revision 1.57
1.17 naddy 1: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
1.1 deraadt 2: <html>
3: <head>
1.57 ! tj 4: <title>OpenBSD 2.2 Changelog</title>
1.42 schwarze 5: <meta name="description" content="OpenBSD 2.2 changes">
6: <meta name="copyright" content="This document copyright 1996-1997 by OpenBSD.">
1.56 deraadt 7: <meta name="viewport" content="width=device-width, initial-scale=1">
8: <link rel="stylesheet" type="text/css" href="openbsd.css">
9: <meta name="viewport" content="width=device-width, initial-scale=1">
10: <link rel="stylesheet" type="text/css" href="openbsd.css">
1.52 sthen 11: <link rel="canonical" href="http://www.openbsd.org/plus22.html">
1.1 deraadt 12: </head>
13:
1.21 david 14: <body bgcolor="#ffffff" text="#000000" link="#23238E">
1.1 deraadt 15:
1.56 deraadt 16: <h2>
17: <a href="index.html">
18: <font color="#0000ff"><i>Open</i></font><font color="#000084">BSD</font></a>
1.57 ! tj 19: <font color="#e00000">2.2 Changelog</font>
! 20: </h2>
1.17 naddy 21: <hr>
1.1 deraadt 22:
23: <p>
24: This is a partial list of the major machine independent changes
1.35 sobrado 25: (i.e., these are the changes people ask about most often). Machine
1.1 deraadt 26: specific changes have also been made, and are sometimes mentioned
1.35 sobrado 27: in the pages for the specific <a href=plat.html>platforms</a> if you
1.1 deraadt 28: are interested in further port-specific details. Many ports
29: have had architecture-specific enhancements relative to NetBSD,
30: but when they do not they certainly have plenty of platform-independent
31: changes, starting with those listed below..
32:
33: <p>
1.17 naddy 34: Note: <font color="#e00000">Problems for which patches exist are marked in red</font>.
1.1 deraadt 35:
36: <p>
1.16 deraadt 37: For changes in other releases, click below:<br>
38: <a href="plus20.html">2.0</a>,
39: <a href="plus21.html">2.1</a>,
40: <a href="plus23.html">2.3</a>,
41: <a href="plus24.html">2.4</a>,
42: <a href="plus25.html">2.5</a>,
43: <a href="plus26.html">2.6</a>,
44: <a href="plus27.html">2.7</a>,
45: <a href="plus28.html">2.8</a>,
46: <a href="plus29.html">2.9</a>,
47: <a href="plus30.html">3.0</a>,
48: <a href="plus31.html">3.1</a>,
49: <a href="plus32.html">3.2</a>,
1.19 deraadt 50: <a href="plus33.html">3.3</a>,
1.20 david 51: <a href="plus34.html">3.4</a>,
1.23 deraadt 52: <a href="plus35.html">3.5</a>,
1.25 miod 53: <a href="plus36.html">3.6</a>,
1.48 deraadt 54: <a href="plus37.html">3.7</a>,
1.34 deraadt 55: <br>
1.27 deraadt 56: <a href="plus38.html">3.8</a>,
1.28 deraadt 57: <a href="plus39.html">3.9</a>,
1.29 deraadt 58: <a href="plus40.html">4.0</a>,
1.30 deraadt 59: <a href="plus41.html">4.1</a>,
1.31 deraadt 60: <a href="plus42.html">4.2</a>,
1.33 deraadt 61: <a href="plus43.html">4.3</a>,
1.34 deraadt 62: <a href="plus44.html">4.4</a>,
1.36 deraadt 63: <a href="plus45.html">4.5</a>,
1.37 deraadt 64: <a href="plus46.html">4.6</a>,
1.38 deraadt 65: <a href="plus47.html">4.7</a>,
1.39 deraadt 66: <a href="plus48.html">4.8</a>,
1.40 deraadt 67: <a href="plus49.html">4.9</a>,
1.41 nick 68: <a href="plus50.html">5.0</a>,
1.42 schwarze 69: <a href="plus51.html">5.1</a>,
1.43 nick 70: <a href="plus52.html">5.2</a>,
1.44 deraadt 71: <a href="plus53.html">5.3</a>,
1.45 deraadt 72: <a href="plus54.html">5.4</a>,
1.46 deraadt 73: <br>
1.48 deraadt 74: <a href="plus55.html">5.5</a>,
1.50 brett 75: <a href="plus56.html">5.6</a>,
1.51 deraadt 76: <a href="plus57.html">5.7</a>,
1.54 deraadt 77: <a href="plus58.html">5.8</a>,
1.55 deraadt 78: <a href="plus59.html">5.9</a>,
1.16 deraadt 79: <a href="plus.html">current</a>.
1.1 deraadt 80: <br>
81:
1.49 deraadt 82: <p>
83: <h3><font color="#0000e0">Changes made between OpenBSD 2.1 and 2.2</font></h3>
84: <p>
1.1 deraadt 85:
86: <ul>
87: <li>Prevent open(2) with wrong flag modes.
88: <li><strong>The new afterboot(8) man page. Everyone should look at this</strong>.
89: <li>Addition of 'kbus' port for the Solbourne Series5 sparc-based machines.
90: <li>Make clri(8) mark the filesystem dirty.
91: <li>Add per-host locking support to supfilesrv.
92: <li>Make the ncr scsi driver work on big-endian machines too.
93: <li>Fix a select/read race in identd(8) which would make it spin wildly.
94: <li>Make ac(8) use the correct timestamp if the user specifies a different wtmp file.
1.18 david 95: <li>Fix mktemp() to work correctly when specified against non-existent directories.
1.1 deraadt 96: <li>Fix a memory leak in libdes.
97: <li>Fix one last little problem case in the fts(3) library routine. This is a very complicated piece of code...
98: <li>Some minor tftpd bug fixes.
99: <li>Another lpd security fix.
100: <li>Repair the msdosfs timestamping code so that NT/Win95 do not complain.
101: <li>Make disklabel -E always succeed at writing a label. Now you can load a fictitious label, edit it, and write it out.
102: <li>In fmt(1), support backslashed whitespace inside words better.
103: <li>Support 'q' modifier in kernel vsprintf/kprintf
104: <li>Implementation of the new disklabel -E mode.
105: <li>Handle creation of /var/tmp/vi.recover more securely.
106: <li>Quirks for two kinds of hitachi dk515 scsi drives and the Cipher ST150S tape drive.
107: <li>Handle a potential crash in the bpf driver.
108: <li>Rewrite of fdisk(8).
109: <li>Make /etc/security handle blowfish-a passwd entries.
110: <li>Ignore bogus hostnames in the /etc/exports file.
111: <li>Fix prompting code in pw_edit(3)
112: <li>The random(6) tool (game?) now uses arc4random(3).
113: <li>A few pppd fixes.
114: <li>More IPSEC improvements after the Interop ANX bakeoff.
115: <li>Add -f option to readlink which does a realpath(3).
116: <li>Fix a bug in libform.
117: <li>Add support for FNM_LEADING_DIR, FNM_CASEFOLD, FNM_IGNORECASE to fnmatch(3).
118: <li>Fix a network performance problem introduced with IPSEC.
119: <li>Fix the : and . support in chown so that usernames can have . in them.
120: <li>Make execle() use alloca() instead of malloc(); to ensure execle() can be safely called in a signal hander.
121: <li>Fix an ifconfig bug related to interfaces that do not exist.
122: <li>In struct sigaction, split sa_handler and the new sa_sigaction function pointers as is being done on newer POSIX systems. This permits proper prototyping of signal handlers.
123: <li>Ignore SIGPIPE in inetd(8).
124: <li>Fixed a pstat -s related bug in pcvt.
125: <li>Do not init pgid in /dev/log's logopen().
126: <li>Make ls -d sort directories with files.
127: <li>Fix a few small problems in rarpd(8).
128: <li>Shrink most of the install floppies ;-)
129: <li>Fix tar to deal better with one more kind of strange tar file.
130: <li>Make top(1) work better on very small screens.
131: <li>Deal with some possible buffer overflows in sup.
132: <li>Fixed various MAKEDEV bugs on lots of architectures.
133: <li>Fix ftime(3).
134: <li>Another important disk-full check in pwd_mkdb(8).
1.22 deraadt 135: <li>Run calendar -a in the background. (Points to whoever figures out why.)
1.1 deraadt 136: <li>Add mkisofs(8).
137: <li>Add sigaction(2) SA_NOCLDWAIT support.
138: <li>Don't error out of MDTM fails.
139: <li>Fix SA_* sigaction(2) fields in the OS compat code.
140: <li>Some syslogd fixes.
141: <li>Permit a longer path buffer in tgetent(3).
142: <li>Fix a ksh(1) bug.
143: <li>Added ex (EtherExpress Pro/10) driver ported from FreeBSD
144: <li>Always set the SCSI-1 LUN field correctly in all transfers.
145: <li>Make popen(3) safe if vfork(2) does real parent address space borrowing.
146: <li>Some fsck_msdos(8) fixes.
147: <li>Made indent(1) handle unlimited number of -T options.
148: <li>Fixed small pathname buffer in man(1).
149: <li>Some setlogin() and getlogin() fixes in the tree.
150: <li>Make ddb not think 'h' means hangman.
151: <li>Ignore trailing spaces on priority in /etc/syslogd.conf.
152: <li>Fix a long-standing and minor problem with ld.so on m68k.
153: <li>Preliminary manual pages for the IPSEC utils.
154: <li>Fix a coredumping problem in tip(1).
155: <li>Extend buffer lengths in patch(1).
156: <li>make bpfread() return ENXIO for uninitialized descriptors.
157: <li>Cleaned up verbose scsi error reporting.
1.17 naddy 158: <li>make mail(1) be permissive about <CR><LF> pairs in mailbox files.
1.1 deraadt 159: <li>Update ftp(1) to new NetBSD changes.
160: <li>Print system call emulation in ps(1) output. Try "ps -axO emul".
161: <li>New COMPAT_BSDOS binary compatibility subsystem.
162: <li>Another tip(1) overflow fix.
163: <li>ppp 2.3.1...
164: <li>make glob(3) XPG4.2 compliant, which means use GLOB_ABORT.
165: <li>Fix first directory handling in "find -execdir"
166: <li>Some FreeBSD m4(1) fixes.
1.11 jsyn 167: <li>Do permission checking at delivery time for pgids derived from TIOCSPGRP, F_SETOWN, or FIOSETOWN.
1.1 deraadt 168: <li>Correct some remaining small inetd bugs.
169: <li>Handle SIGCHLD better in rlogin.
170: <li>Kill "union wait" in a few more places.
171: <li>More SysVR4 emulation: sockets, NTP, POSIX time functions, pread(2)/pwrite(2).
172: <li>In calendar(1), support "-t date" to let you see the calendar for other days.
173: <li>Further IPSEC enhancement (but still no man pages for it though).
174: <li>Fix a crash in systat(8).
175: <li>Handle setgid lossage in tip(1).
1.5 rohee 176: <li>Lucent Technologies (formerly AT&T) awk version 970821.
1.1 deraadt 177: <li>Correct 'sync' option to dd(1).
178: <li>In dump(8), do not consider tape changing time in the timing estimates.
179: <li>In join(1), require compat options start with '-'.
180: <li>A few fixes to tip(1).
181: <li>Various fixes to battlestar(6).
182: <li>Few more 64 bit fixes in userland, in some rarely used system tools.
183: <li>Don't print duplicate fields in ps(1) when called with silly arguments.
184: <li>basename(1) and dirname(1) no longer give an error for paths starting with '-'.
185: <li>Document a64l(3) and l64a(3).
186: <li>The group vector could end up with duplicates esp. with YP. Now it won't.
187: <li>ash is gone gone gone.
188: <li>Fixed a bug where the kernel could lie about how many file descriptors are available and cause a panic.
189: <li>shutdown(8) now gets its own session as it deserves.
190: <li>Fixed err(3)/warn(3) argument usage in the tree.
191: <li>Buffer overflow fixes in tip(1).
192: <li>XPG4 compatibility for ps(1) format options.
193: <li>Added basename(3) and dirname(3) for XPG4. dirname(1) is now trivial.
194: <li>Verbose SCSI warnings are now available and on by default.
195: <li>Fixed a bug in cp(1) when the -r option is used and the source dir ends in a '/'.
196: <li>Changed realloc(foo,0) semantics to be like malloc(0), not free(foo).
197: <li>More user-friendly error messages from mount_* when the filesystem is not in the kernel.
198: <li>New PCMCIA Wavelan driver.
199: <li>Be more careful about YP groups in getgrouplist().
200: <li>Support simple add/delete operations on ports in the baddynamic masks via sysctl(8)
201: <li>More 1003.2 conformance: cal, cksum, sleep, compress, expr, etc.
202: <li>We are starting to pay attention to good things found in the XPG4 standard. We hope to never be compliant, because XPG4 goes way too far.
203: <li>Put hostname in root crontab mailout subjects.
204: <li>Attempt to deal with archive timestamp and filemode problems in texinfo...
205: <li>ATAPI quirk for MATSHITA CR-574.
206: <li>Fix another procfs security hole.
207: <li>Add top(1) to the source tree. Fix some problems.
208: <li>Be even more paranoid (if it can be believed) in mail.local(8).
209: <li>In mountd(8), handle ext2fs specially, like most exported filesystems.
210: <li>Fix pcap_inject(3) in libpcap.
211: <li>Make gzexe(1) use mktemp to avoid races.
212: <li>Make bad random allocation ports settable via sysctl(8).
213: <li>Import ypserv performance.
214: <li>Optional TCP syn cookie support enabled via TCPCOOKIE kernel option.
215: <li>Change the bounds_check_with_label() API to handle a cpu_disklabel too.
216: <li>Support -n better in pstat(8).
217: <li>Make bsd.doc.mk use DOCDIR.
218: <li>Fix vacation(1) properly.
219: <li>Fix a memory leak in grep(1).
220: <li>Seriously rework the identd daemon even further, to avoid even more input parsing problems and race conditions.
221: <li>Work has started to fix the remainder of the signal handlers in the source tree with respect to errno clobbering.
222: <li>Fix another race condition in identd.
1.11 jsyn 223: <li>Fix pdksh bugs: closed too many fds on exec, fix handling of (( )) to be compatible with POSIX sh spec without breaking $((, and explain how IFS works when splitting text after a substitution.
1.1 deraadt 224: <li>Make 127.0.0.1 assumed OK if /var/yp/securenet is in use.
225: <li>save errno in most of the tree's SIGCHLD handlers, just in case.
226: <li>More mdoc pages.
227: <li>Cyclades driver fixed. Works on alpha, too.
228: <li>Fixed getnetbyaddr() 'always tried DNS' resolution problem from 2.1.
229: <li>Sendmail 8.8.7.
230: <li>Fix a kernel bug regarding double m_freem()..
231: <li>Make if_tun to prefix address family as a host byte order u_int32_t instead of a u_char, so that bpf can deal with the interface.
232: <li>Deal nicer with rfork/execve interactions.
233: <li>Attempt to cleanup identd. A long road left.
234: <li>FSF GNU texinfo 3.11.
235: <li>More fixes to the alpha vga driver. Curses-based programs now work on it.
236: <li>Radius support in tcpdump.
237: <li>Todd Miller is on a rampage, and making every single buffer inside mail(1) dynamically allocated...
238: <li>Support fpx cards with i82555 PHY.
239: <li>routed(8) is now disabled by default.
240: <li>Various fixes and improvements to the 3cXXX ethernet drivers.
241: <li>More buffer overflow fixes in mail(1).
242: <li>An ugly identd race fixed.
243: <li>Fix systat manpage.
244: <li>Man page improvements in many areas.
245: <li>Allocate reserved ports for NFS inside the kernel randomly.
246: <li>Support -H flag in who(1).
247: <li>More mail(1) fixes.... It's amazing Todd hasn't broken it.
248: <li>stime(2) support for SunOS emulation.
249: <li>Switch back to nvi; vim has copyright licensing issues.
250: <li>mremap(2) support for Linux emulation.
251: <li>Use sendmail -t instead of other invocation forms inside lots of programs in the source tree.
252: <li>Hardcode a list of reserved ports that random port allocation should not reuse.
253: <li>Support YP map mail.aliases set of maps.
254: <li>Support lpc(8) "all" keyword option.
255: <li>-d flag for shutdown(8).
256: <li>Add -T support to last(1).
257: <li>Fix pax to not need getcwd(3).
258: <li>Implement IFF_NOARP handling in netinet.
259: <li>make amd(8) use /tmp_mnt by default.
260: <li>Do not use tempnam(3) in mail(1).
1.22 deraadt 261: <li>All Makefile.bsd-wrapper files can now strip GNU binaries during install (pr 188).
1.1 deraadt 262: <li>Some cribbage(6) fixes.
263: <li>permit ftp(1) to download http pages without Content-Length.
264: <li>Appletalk networking support.
265: <li>S/Key keyfile is now readable only by root. skeyinfo(1) and skeyaudit(1) have been enhanced and rewritten as C programs.
266: <li>mail(1) supports "inc" command.
267: <li>mail(1) behaves correctly when interrupted while getting headers from the user.
268: <li>IPSEC Photuris daemon is integrated into the source tree.
269: <li>make ctags operate a bit better in the presence of extra spacing.
270: <li>Add <strong>-d date</strong> support to last(1).
271: <li>Import of the IPSEC photuris daemon.
272: <li>Add rmd160 hash support throughout the source tree.
273: <li>lpd security fixes.
274: <li>man page cleanups.
275: <li>Updated <a href="http://www.sendmail.org/">Sendmail</a> to 8.8.6.
276: <li>cua devices, new <strong>MAKEDEV</strong> script in the hp300 port.
277: <li>More mail(1) fixes, particularly regarding long lines.
278: <li>Add sha1 digest support to mtree(8).
279: <li>Add sha1 support to md5(1).
280: <li>Lots more IPSEC improvements.
281: <li>Repair symbolic link handling during coredumps (correctly, this time).
282: <li>Replace libc sha1 code with another version that is better in some respects.
283: <li>Fix passive buffer overflow in rusers.
284: <li>Make ed(1) work properly on a non-tty.
285: <li>make compress(1) do gzip support too.
286: <li>Maintain process size stats in forkstat struct for "vmstat -f".
1.32 tobias 287: <li>Fix ruptime output for machines up > 99 days.
1.1 deraadt 288: <li>Amended issetugid(2) man page to be quite a bit more clear.
289: <li>ATAPI devices may now reside in a kernel without wd (disk) devices.
290: <li>Intel EtherExpress Pro/100B PCI driver.
1.24 pedro 291: <li>More IPSEC changes. IPSEC is almost fully usable now.
1.1 deraadt 292: <li>Fix a number of rtld dynamic loading problems.
293: <li>split ifconfig -a into -a/-A: -A prints ifaliases, -a does not.
294: <li>Repaired nfs handling in tcpdump.
295: <li>Fixed highscore handling in battlestar(6).
296: <li>Fixed all(?) Makefile wrappers for GNU software to not build and install manpages when NOMAN is set.
297: <li>libedit update with lots of fixes.
298: <li>Many more 64 bit fixes for the alpha, in about 20 more programs.
299: <li>Move libdes out of the kerberos tree so that it can be used by other parts of the system too.
300: <li>Make sleep(1) handle fractions of seconds. This is a nice extension.
301: <li>New kprop/kpropd man pages.
302: <li>Permit tftpd to provide files over 32K blocks in size.
303: <li>Fix readlink(1).
304: <li>Import of cvs-1.9.10.
305: <li>A few more minor netinet problems fixed.
306: <li>Modify inetd to accept a "hostname,[hostname,...]:" token to added to the front of any line in /etc/inetd.conf. This permits services to be supplied only on certain interfaces.
307: <li>Import of the gnu multi-precision math library, libgmp. This will be used by an IPSEC key daemon soon.
308: <li>Support IP option handling in IPSEC packets.
309: <li>Race fix to amd(8).
310: <li>Y2K enhancement to date(1).
311: <li>Repaired hundreds of long != int problems (in a bunch of programs) that affect the alpha.
312: <li>Clip setsockopt SO_SND*/SO_RCV parameters.
313: <li>Use O_EXLOCK for passwd locking to avoid a class of localhost denial of service attacks.
314: <li>Fix a minor problem in popen().
315: <li>IPF 3.1.11 + Darren's patches + 64-bit cleanup.
316: <li>Added automatic power down framework at halt(8) time, currently only supported on sun4m machines with the <i>power</i> device.
317: <li>Slightly improve ftpd log file.
318: <li>More paranoia in procfs.
319: <li>Add ELOOP error handling to realpath(3).
320: <li>Some NLS improvements, notably some more language catalogs.
321: <li>Change mount(2) to return EFTYPE for invalid filesystem.
322: <li>More ipsec changes!
1.11 jsyn 323: <li>add -insecure flag to ypbind(8) so that it can bind to very old ypservs.
1.1 deraadt 324: <li>Make ifconfig(8) print full information about the full set of interface aliases.
325: <li>Support "-d dir" in rpc.yppasswdd(8).
326: <li>Fix some more /tmp races in various programs.
327: <li>add per-interface bindings to inetd(8).
328: <li>Better support for unmounted filesystems in df(1).
329: <li>Correct -n behaviour in sort(1).
330: <li>In newfs(8), fix -o and -m to work better.
331: <li>Add tsearch(3) to libc.
332: <li>Fix /tmp races in make(1).
333: <li>Deal with atapi drives that cannot lock their doors.
334: <li>Improved performance in /dev/*random.
335: <li>Fixed a few netinet bugs as pointed out by TCP/IP Illustrated Vol.2.
336: <li>Add tsearch(3) and friends to libc, as required by XPG3(?).
337: <li>Repair many cross-references and other documentation problems in the section 2 and 3 man pages, and also fix a few minor other bugs discovered by analysis of recent changes in FreeBSD's and NetBSD's libc.
338: <li>Implement hex/octal offsets in cmp(1), as documented.
339: <li>Addition of readlink(1).
340: <li>Move named tmp files to /etc/named/tmp/ to avoid localhost race attacks.
341: <li>document the ddb hangman.
342: <li>tftpd -c flag.
343: <li>Use dynamic fd_set allocation in more places, particularly setuid programs.
344: <li>Use /etc/namedb/tmp/ to avoid /var/tmp race conditions.
345: <li>Ensure TCP RST is within window.
346: <li>fix disklabel support in vnd/svnd.
347: <li>add sysctl net.inet.tcp.{keepidle,keepintvl,slowhz}
348: <li>fix SO_SNDTIMEO.
349: <li>Add <strong>-P proto</strong> support to traceroute.
350: <li>Some more security and robustness changes to traceroute and ping.
351: <li>A few netinet fixes.
352: <li>Kernel now generates random pid values in fork().
1.10 pvalchev 353: <li>fix sendmsg() credential passing on 64 bit machines.
1.1 deraadt 354: <li>kill process timers if execve'ing a setuid/setgid executable.
355: <li>Few more fixes to pax(1).
1.11 jsyn 356: <li>Fix lots more NetBSD PRs.
1.1 deraadt 357: <li>tcp wrappers 7.6
358: <li>Add some more malloc options to malloc(3)
1.4 rohee 359: <li>In ar(1), truncate uid & gid if too large.
1.1 deraadt 360: <li>getpgid(2) from XPG3(?)
361: <li>tail(1) can now notice if the file been replaced or truncated.
362: <li>Fix more overflows and other bugs in mail(1).
363: <li>Lots of man page fixes.
364: <li>New named root.cache from Internic.
365: <li>Support SIGINFO in ping; also add more complete icmp reporting capabilities.
366: <li>Make adduser understand /etc/passwd.conf
367: <li>Newer version of ext2fs that is reliable for read/write operation. This is essentially FULLY OPERATIONAL.
368: <li>Import newer version of vax port.
369: <li>Fix a few more libc functions to generate very large fd_set's properly for select(2).
370: <li>Few quirky changes to the way ISO9660 disklabel spoofing works in some ports.
371: </ul>
372: <p>
373:
374: </body>
375: </html>