Eric Andersen | 766c012 | 2000-06-21 22:43:07 +0000 | [diff] [blame] | 1 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd"> |
| 2 | |
| 3 | <HTML> |
| 4 | <HEAD> |
| 5 | <TITLE>BusyBox</TITLE> |
| 6 | </HEAD> |
| 7 | |
| 8 | <body text="#000000" alink="#660000" link="#660000" bgcolor="#dee2de" vlink="#660000"> |
| 9 | |
| 10 | <basefont face="lucida, helvetica, arial" size="3"> |
| 11 | |
| 12 | |
| 13 | <CENTER> |
| 14 | <TABLE BORDER=0 CELLSPACING=1 CELLPADDING=2> |
| 15 | <TR> |
| 16 | <td bgcolor="#000000"> |
| 17 | <FONT FACE="lucida, helvetica" COLOR="#ccccc0"> |
| 18 | <B>B u s y B o x</B> |
| 19 | </FONT> |
| 20 | </TD> |
| 21 | </TR> |
| 22 | </TABLE> |
| 23 | <a href="/"><IMG SRC="images/busybox2.jpg" alt="BusyBox" border="0" width="360" height="230"</a><BR> |
| 24 | |
| 25 | |
| 26 | <TABLE WIDTH=95% CELLSPACING=1 CELLPADDING=4 BORDER=1> |
| 27 | |
| 28 | <!-- Begin Older News section --> |
| 29 | |
| 30 | <TR><TD BGCOLOR="#ccccc0" ALIGN=center> |
| 31 | <A NAME="news"> |
| 32 | <BIG><B> |
| 33 | Older BusyBox News</A> |
| 34 | </B></BIG> |
| 35 | </A> |
| 36 | </TD></TR> |
| 37 | <TR><TD BGCOLOR="#eeeee0"> |
| 38 | |
| 39 | <ul> |
| 40 | |
| 41 | <p> <li> <b>Take me back to the <a href="http://busybox.lineo.com/">BusyBox</a> web site.</b> |
| 42 | <hr> |
| 43 | |
Eric Andersen | ceece81 | 2001-07-07 09:38:30 +0000 | [diff] [blame] | 44 | <li> <b>10 April 2001 -- BusyBox 0.51 released</b> |
| 45 | <br> |
| 46 | |
| 47 | BusyBox 0.51 (the "rock-solid release") is now out there. This |
| 48 | release adds only 2 new applets: env and vi. The vi applet, |
| 49 | contributed by Sterling Huxley, is very functional, and is only |
| 50 | 22k. This release fixes 3 critical bugs in the 0.50 release. |
| 51 | There were 2 potential segfaults in lash (the busybox shell) in |
| 52 | the 0.50 release which are now fixed. Another critical bug in |
| 53 | 0.50 which is now fixed: syslogd from 0.50 could potentially |
| 54 | deadlock the init process and thereby break your entire system. |
| 55 | <p> |
| 56 | |
| 57 | There are a number of improvements in this release as well. For |
| 58 | one thing, the wget applet is greatly improved. Dmitry Zakharov |
| 59 | added FTP support, and Laurence Anderson make wget fully RFC |
| 60 | compliant for HTTP 1.1. The mechanism for including utility |
| 61 | functions in previous releases was clumsy and error prone. Now |
| 62 | all utility functions are part of a new libbb library, which makes |
| 63 | maintaining utility functions much simpler. And BusyBox now |
| 64 | compiles on itanium systems (thanks to the Debian itanium porters |
| 65 | for letting me use their system!). |
| 66 | <p> |
| 67 | You can read the |
| 68 | <a href="ftp://oss.lineo.com/busybox/Changelog">changelog</a> for |
| 69 | complete details. BusyBox 0.51 can be downloaded from |
| 70 | <a href="ftp://oss.lineo.com/busybox">ftp://oss.lineo.com/busybox</a>. |
| 71 | <p>Have Fun! |
| 72 | <p> |
| 73 | |
| 74 | <li> <b>Busybox Boot-Floppy Image</b> |
| 75 | |
| 76 | <p>Because you asked for it, we have made available a <a href= |
| 77 | "ftp://opensource.lineo.com/busybox/busybox.floppy.img"> Busybox boot floppy |
| 78 | image</a>. Here's how you use it: |
| 79 | |
| 80 | <ol> |
| 81 | |
| 82 | <li> <a href= "ftp://opensource.lineo.com/busybox/busybox.floppy.img"> |
| 83 | Download the image</a> |
| 84 | |
| 85 | <li> dd it onto a floppy like so: <tt> dd if=busybox.floppy.img |
| 86 | of=/dev/fd0 ; sync </tt> |
| 87 | |
| 88 | <li> Pop it in a machine and boot up. |
| 89 | |
| 90 | </ol> |
| 91 | |
| 92 | <p> If you want to look at the contents of the initrd image, do this: |
| 93 | |
| 94 | <pre> |
| 95 | mount ./busybox.floppy.img /mnt -o loop -t msdos |
| 96 | cp /mnt/initrd.gz /tmp |
| 97 | umount /mnt |
| 98 | gunzip /tmp/initrd.gz |
| 99 | mount /tmp/initrd /mnt -o loop -t minix |
| 100 | </pre> |
| 101 | |
| 102 | |
Eric Andersen | 7b2dfc6 | 2001-07-07 08:44:25 +0000 | [diff] [blame] | 103 | <li> <b>15 March 2001 -- BusyBox 0.50 released</b> |
| 104 | <br> |
| 105 | |
| 106 | This release adds several new applets including ifconfig, route, pivot_root, stty, |
| 107 | and tftp, and also fixes tons of bugs. Tab completion in the |
| 108 | shell is now working very well, and the shell's environment variable |
| 109 | expansion was fixed. Tons of other things were fixed or made |
| 110 | smaller. For a fairly complete overview, see the |
| 111 | <a href="ftp://oss.lineo.com/busybox/Changelog">changelog</a>. |
| 112 | <p> |
| 113 | lash (the busybox shell) is still with us, fixed up a bit so it |
| 114 | now behaves itself quite nicely. It really is quite usable as |
| 115 | long as you don't expect it to provide Bourne shell grammer. |
| 116 | Standard things like pipes, redirects, command line editing, and |
| 117 | environment variable expansion work great. But we have found that |
| 118 | this shell, while very usable, does not provide an extensible |
| 119 | framework for adding in full Bourne shell behavior. So the first order of |
| 120 | business as we begin working on the next BusyBox release will be to merge in the new shell |
| 121 | currently in progress at |
| 122 | <a href="http://doolittle.faludi.com/~larry/parser.html">Larry Doolittle's website</a>. |
| 123 | <p> |
| 124 | |
| 125 | |
| 126 | <li> <b>27 January 2001 -- BusyBox 0.49 released</b> |
| 127 | <br> |
| 128 | |
| 129 | Several new applets, lots of bug fixes, cleanups, and many smaller |
| 130 | things made nicer. Several cleanups and improvements to the shell. |
| 131 | For a list of the most interesting changes |
| 132 | you might want to look at the <a href="ftp://oss.lineo.com/busybox/Changelog">changelog</a>. |
| 133 | <p> |
| 134 | Special thanks go out to Matt Kraai and Larry Doolittle for all their |
| 135 | work on this release, and for keeping on top of things while I've been |
| 136 | out of town. |
| 137 | <p> |
| 138 | <em>Special Note</em><br> |
| 139 | |
| 140 | BusyBox 0.49 was supposed to have replaced lash, the BusyBox |
| 141 | shell, with a new shell that understands full Bourne shell/Posix shell grammer. |
| 142 | Well, that simply didn't happen in time for this release. A new |
| 143 | shell that will eventually replace lash is already under |
| 144 | construction. This new shell is being developed by Larry |
| 145 | Doolittle, and could use all of our help. Please see the work in |
| 146 | progress on <a href="http://doolittle.faludi.com/~larry/parser.html">Larry's website</a> |
| 147 | and help out if you can. This shell will be included in the next |
| 148 | release of BusyBox. |
| 149 | <p> |
| 150 | |
| 151 | <li> <b>13 December 2000 -- BusyBox 0.48 released</b> |
| 152 | <br> |
| 153 | |
| 154 | This release fixes lots and lots of bugs. This has had some very |
| 155 | rigorous testing, and looks very, very clean. The usual tar |
| 156 | update of course: tar no longer breaks hardlinks, tar -xzf is |
| 157 | optionally supported, and the LRP folks will be pleased to know |
| 158 | that 'tar -X' and 'tar --exclude' are both now in. Applets are |
| 159 | now looked up using a binary search making lash (the busybox |
| 160 | shell) much faster. For the new debian-installer (for Debian |
| 161 | woody) a .udeb can now be generated. |
| 162 | <p> |
| 163 | The curious can get a list of some of the more interesting changes by reading |
| 164 | the <a href="ftp://oss.lineo.com/busybox/Changelog">changelog</a>. |
| 165 | <p> |
| 166 | Many thanks go out to the many many people that have contributed to |
| 167 | this release, especially Matt Kraai, Larry Doolittle, and Kent Robotti. |
| 168 | <p> |
Eric Andersen | 8ec10a9 | 2001-01-27 09:33:39 +0000 | [diff] [blame] | 169 | <p> <li> <b>26 September 2000 -- BusyBox 0.47 released</b> |
| 170 | <br> |
| 171 | |
| 172 | This release fixes lots of bugs (including an ugly bug in 0.46 |
| 173 | syslogd that could fork-bomb your system). Added several new |
| 174 | apps: rdate, wget, getopt, dos2unix, unix2dos, reset, unrpm, |
| 175 | renice, xargs, and expr. syslogd now supports network logging. |
| 176 | There are the usual tar updates. Most apps now use getopt for |
| 177 | more correct option parsing. |
| 178 | See the <a href="ftp://oss.lineo.com/busybox/Changelog">changelog</a> |
| 179 | for complete details. |
| 180 | |
| 181 | |
Eric Andersen | 4362200 | 2000-12-13 18:30:13 +0000 | [diff] [blame] | 182 | <p> <li> <b>11 July 2000 -- BusyBox 0.46 released</b> |
| 183 | <br> |
| 184 | |
| 185 | This release fixes several bugs (including a ugly bug in tar, |
| 186 | and fixes for NFSv3 mount support). Added a dumpkmap to allow |
| 187 | people to dump a binary keymaps for use with 'loadkmap', and a |
| 188 | completely reworked 'grep' and 'sed' which should behave better. |
| 189 | BusyBox shell can now also be used as a login shell. |
| 190 | See the <a href="ftp://oss.lineo.com/busybox/Changelog">changelog</a> |
| 191 | for complete details. |
| 192 | |
| 193 | |
| 194 | <p> <li> <b>21 June 2000 -- BusyBox 0.45 released</b> |
| 195 | <br> |
| 196 | |
| 197 | This release has been slow in coming, but is very solid at this |
| 198 | point. BusyBox now supports libc5 as well as GNU libc. This |
| 199 | release provides the following new apps: cut, tr, insmod, ar, |
| 200 | mktemp, setkeycodes, md5sum, uuencode, uudecode, which, and |
| 201 | telnet. There are bug fixes for just about every app as well (see |
| 202 | the <a href="ftp://oss.lineo.com/busybox/Changelog">changelog</a> for |
| 203 | details). |
| 204 | <p> |
| 205 | Also, some exciting infrastructure news! Busybox now has its own |
| 206 | <a href="http://opensource.lineo.com/lists/busybox/">mailing list</a>, |
| 207 | publically browsable |
| 208 | <a href="http://opensource.lineo.com/cgi-bin/cvsweb/busybox/">CVS tree</a>, |
| 209 | anonymous |
| 210 | <a href="http://opensource.lineo.com/cvs_anon.html">CVS access</a>, and |
| 211 | for those that are actively contributing there is even |
| 212 | <a href="http://opensource.lineo.com/cvs_write.html">CVS write access</a>. |
| 213 | I think this will be a huge help to the ongoing development of BusyBox. |
| 214 | <p> |
| 215 | Also, for the curious, there is no 0.44 release. Somehow 0.44 got announced |
| 216 | a few weeks ago prior to its actually being released. To avoid any confusion |
| 217 | we are just skipping 0.44. |
| 218 | <p> |
| 219 | Many thanks go out to the many people that have contributed to this release |
| 220 | of BusyBox (esp. Pavel Roskin)! |
| 221 | |
| 222 | |
Eric Andersen | 766c012 | 2000-06-21 22:43:07 +0000 | [diff] [blame] | 223 | <p> <li> <b>19 April 2000 -- syslogd bugfix</b> |
| 224 | <br> |
| 225 | Turns out that there was still a bug in busybox syslogd. |
| 226 | For example, with the following test app: |
| 227 | <pre> |
| 228 | #include <syslog.h> |
| 229 | |
| 230 | int do_log(char* msg, int delay) |
| 231 | { |
| 232 | openlog("testlog", LOG_PID, LOG_DAEMON); |
| 233 | while(1) { |
| 234 | syslog(LOG_ERR, "%s: testing one, two, three\n", msg); |
| 235 | sleep(delay); |
| 236 | } |
| 237 | closelog(); |
| 238 | return(0); |
| 239 | }; |
| 240 | |
| 241 | int main(void) |
| 242 | { |
| 243 | if (fork()==0) |
| 244 | do_log("A", 2); |
| 245 | do_log("B", 3); |
| 246 | } |
| 247 | </pre> |
| 248 | it should be logging stuff from both "A" and "B". As released in 0.43 only stuff |
| 249 | from "A" would have been logged. This means that if init tries to log something |
| 250 | while say ppp has the syslog open, init would block (which is bad, bad, bad). |
| 251 | <p> |
| 252 | Karl M. Hegbloom has created a |
| 253 | <a href="ftp://ftp.lineo.com/pub/busybox/busybox-0.43-syslog_patch">fix for the problem</a>. |
| 254 | Thanks Karl! |
| 255 | |
| 256 | |
| 257 | <p> <li> <b>18 April 2000 -- BusyBox 0.43 released (finally!)</b> |
| 258 | <br> |
| 259 | I have finally gotten everything into a state where I feel pretty |
| 260 | good about things. This is definitely the most stable, solid release |
| 261 | so far. A lot of bugs have been fixed, and the following new apps |
| 262 | have been added: sh, basename, dirname, killall, uptime, |
| 263 | freeramdisk, tr, echo, test, and usleep. Tar has been completely |
| 264 | rewritten from scratch. Bss size has also been greatly reduced. |
| 265 | More details are available in the |
| 266 | <a href="ftp://ftp.lineo.com/pub/busybox/Changelog">changelog</a>. |
| 267 | Oh, and as a special bonus, I wrote some fairly comprehensive |
| 268 | <em>documentation</em>, complete with examples and full usage information. |
| 269 | |
| 270 | <p> |
| 271 | Many thanks go out to the fine people that have helped by submitting patches |
| 272 | and bug reports; particularly instrumental in helping for this release were |
| 273 | Karl Hegbloom, Pavel Roskin, Friedrich Vedder, Emanuele Caratti, |
| 274 | Bob Tinsley, Nicolas Pitre, Avery Pennarun, Arne Bernin, John Beppu, and Jim Gleason. |
| 275 | There were others so if I somehow forgot to mention you, I'm very sorry. |
| 276 | <p> |
| 277 | |
| 278 | You can grab BusyBox 0.43 tarballs <a href="ftp://ftp.lineo.com/pub/busybox/">here</a>. |
| 279 | |
| 280 | <p> <li> <b>9 April 2000 -- BusyBox 0.43 pre release</b> |
| 281 | <br> |
| 282 | Unfortunately, I have not yet finished all the things I want to |
| 283 | do for BusyBox 0.43, so I am posting this pre-release for people |
| 284 | to poke at. This contains my complete rewrite of tar, which now weighs in at |
| 285 | 5k (7k with all options turned on) and works for reading and writing |
| 286 | tarballs (which it does correctly for everything I have been able to throw |
| 287 | at it). Tar also (optionally) supports the "--exclude" option (mainly because |
| 288 | the Linux Router Project folks asked for it). This also has a pre-release |
| 289 | of the micro shell I have been writing. This pre-release should be stable |
| 290 | enough for production use -- it just isn't a release since I have some structural |
| 291 | changes I still want to make. |
| 292 | <p> |
| 293 | The pre-release can be found <a href="ftp://ftp.lineo.com/pub/busybox/">here</a>. |
| 294 | Please let me know ASAP if you find <em>any</em> bugs. |
| 295 | |
| 296 | <p> <li> <b>28 March 2000 -- Andersen Baby Boy release</b> |
| 297 | <br> |
| 298 | I am pleased to announce that on Tuesday March 28th at 5:48pm, weighing in at 7 |
| 299 | lbs. 12 oz, Micah Erik Andersen was born at LDS Hospital here in Salt Lake City. |
| 300 | He was born in the emergency room less then 5 minutes after we arrived -- and |
| 301 | it was such a relief that we even made it to the hospital at all. Despite the |
| 302 | fact that I was driving at an amazingly unlawful speed and honking at everybody |
| 303 | and thinking decidedly unkind thoughts about the people in our way, my wife |
| 304 | (inconsiderate of my feelings and complete lack of medical training) was lying |
| 305 | down in the back seat saying things like "I think I need to start pushing now" |
| 306 | (which she then proceeded to do despite my best encouraging statements to the |
| 307 | contrary). |
| 308 | <p> |
| 309 | Anyway, I'm glad to note that despite the much-faster-than-we-were-expecting |
| 310 | labor, both Shaunalei and our new baby boy are doing wonderfully. |
| 311 | <p> |
| 312 | So now that I am done with my excuse for the slow release cycle... |
| 313 | Progress on the next release of BusyBox has been slow but steady. I expect |
| 314 | to have a release sometime during the first week of April. This release will |
| 315 | include a number of important changes, including the addition of a shell, a |
| 316 | re-write of tar (to accommodate the Linux Router Project), and syslogd can now |
| 317 | accept multiple concurrent connections, fixing lots of unexpected blocking |
| 318 | problems. |
| 319 | |
| 320 | |
| 321 | <p> <li> <b>11 February 2000 -- BusyBox 0.42 released</b> |
| 322 | <br> |
| 323 | |
| 324 | This is the most solid BusyBox release so far. Many, many |
| 325 | bugs have been fixed. See the |
| 326 | <a href="ftp://ftp.lineo.com/pub/busybox/Changelog">changelog</a> for details. |
| 327 | |
| 328 | Of particular interest, init will now cleanly unmount |
| 329 | filesystems on reboot, cp and mv have been rewritten and |
| 330 | behave much better, and mount and umount no longer leak |
| 331 | loop devices. Many thanks go out to Randolph Chung, |
| 332 | Karl M. Hegbloom, Taketoshi Sano, and Pavel Roskin for |
| 333 | their hard work on this release of BusyBox. Please pound |
| 334 | on it and let me know if you find any bugs. |
| 335 | |
| 336 | <p> <li> <b>19 January 2000 -- BusyBox 0.41 released</b> |
| 337 | <br> |
| 338 | |
| 339 | This release includes bugfixes to cp, mv, logger, true, false, |
| 340 | mkdir, syslogd, and init. New apps include wc, hostid, |
| 341 | logname, tty, whoami, and yes. New features include loop device |
| 342 | support in mount and umount, and better TERM handling by init. |
| 343 | The changelog can be found <a href="ftp://ftp.lineo.com/pub/busybox/Changelog">here</a>. |
| 344 | |
| 345 | <p> <li> <b>7 January 2000 -- BusyBox 0.40 released</b> |
| 346 | <br> |
| 347 | |
| 348 | This release includes bugfixes to init (now includes inittab support), |
| 349 | syslogd, head, logger, du, grep, cp, mv, sed, dmesg, ls, kill, gunzip, and mknod. |
| 350 | New apps include sort, uniq, lsmod, rmmod, fbset, and loadacm. |
| 351 | In particular, this release fixes an important bug in tar which |
| 352 | in some cases produced serious security problems. |
| 353 | As always, the changelog can be found <a href="ftp://ftp.lineo.com/pub/busybox/Changelog">here</a>. |
| 354 | |
| 355 | <p> <li> <b>11 December 1999 -- BusyBox Website</b> |
| 356 | <br> |
| 357 | I have received permission from Bruce Perens (the original author of BusyBox) |
| 358 | to set up this site as the new primary website for BusyBox. This website |
| 359 | will always contain pointers to the latest and greatest, and will also |
| 360 | contain the latest documentation on how to use BusyBox, what it can do, |
| 361 | what arguments its apps support, etc. |
| 362 | |
| 363 | <p> <li> <b>10 December 1999 -- BusyBox 0.39 released</b> |
| 364 | <br> |
| 365 | This release includes fixes to init, reboot, halt, kill, and ls, and contains |
| 366 | the new apps ping, hostname, mkfifo, free, tail, du, tee, and head. A full |
| 367 | changelog can be found <a href="ftp://ftp.lineo.com/pub/busybox/Changelog">here</a>. |
| 368 | <p> <li> <b>5 December 1999 -- BusyBox 0.38 released</b> |
| 369 | <br> |
| 370 | This release includes fixes to tar, cat, ls, dd, rm, umount, find, df, |
| 371 | and make install, and includes new apps syslogd/klogd and logger. |
| 372 | </ul> |
| 373 | |
| 374 | |
| 375 | <!-- Begin Links section --> |
| 376 | |
| 377 | <TR><TD BGCOLOR="#ccccc0" ALIGN=center> |
| 378 | <A NAME="links"> |
| 379 | <BIG><B> |
| 380 | Important Links</A> |
| 381 | </B></BIG> |
| 382 | </A> |
| 383 | </TD></TR> |
| 384 | <TR><TD BGCOLOR="#eeeee0"> |
| 385 | |
| 386 | <ul> |
| 387 | |
| 388 | <li> <a href="http://busybox.lineo.com/">Take me back to http://busybox.lineo.com/</a>. |
| 389 | <p> |
| 390 | |
| 391 | <li> <A HREF="http://perens.com/FreeSoftware/"> |
| 392 | Free Software from Bruce Perens</A><br> |
| 393 | The original idea for BusyBox, and all versions up to 0.26 were written |
| 394 | by <A HREF="mailto:bruce@perens.com">Bruce Perens</a>. This is his BusyBox website. |
| 395 | <p> |
| 396 | |
| 397 | <li> <A HREF="http://freshmeat.net/appindex/1999/04/11/923859921.html"> |
| 398 | Freshmeat AppIndex record for BusyBox</A> |
| 399 | <p> |
| 400 | |
| 401 | <li> <a href="http://opensource.lineo.com/software.html">Other cool embedded software</a>. |
| 402 | <p> |
| 403 | |
| 404 | <li> <a href="http://opensource.lineo.com/">opensource.lineo.com</a>. |
| 405 | <p> |
| 406 | |
| 407 | <li> <A HREF="http://www.lineo.com/">Lineo</A> is sponsoring BusyBox development. |
| 408 | <p> |
| 409 | |
| 410 | </ul> |
| 411 | |
| 412 | |
| 413 | <!-- End of Table --> |
| 414 | |
| 415 | </TD></TR> |
| 416 | </TABLE> |
| 417 | </P> |
| 418 | |
| 419 | |
| 420 | |
| 421 | <!-- Footer --> |
| 422 | <HR> |
| 423 | <TABLE WIDTH="100%"> |
| 424 | <TR> |
| 425 | <TD> |
| 426 | <font size="-1" face="arial, helvetica, sans-serif"> |
| 427 | Mail all comments, insults, suggestions and bribes to |
| 428 | <a href="mailto:andersen@lineo.com">Erik Andersen</a><BR> |
| 429 | The Busybox logo is copyright 1999,2000, Erik Andersen. |
| 430 | </font> |
| 431 | </TD> |
| 432 | |
| 433 | <TD> |
| 434 | <a href="http://www.vim.org"><img border=0 width=88 height=32 |
| 435 | src="images/anim.written.in.vi.gif" |
| 436 | alt="This site created with the vi editor"></a> |
| 437 | </TD> |
| 438 | |
| 439 | <TD> |
| 440 | <a href="http://www.gimp.org/"><img border=0 width=88 height=38 |
| 441 | src="images/gfx_by_gimp.gif" alt="Graphics by GIMP"></a> |
| 442 | </TD> |
| 443 | |
| 444 | <TD> |
| 445 | <a href="http://www.linuxtoday.com"><img width=90 height=36 |
| 446 | src="images/ltbutton2.jpg" alt="Linux Today"></a> |
| 447 | </TD> |
| 448 | |
| 449 | <TD> |
| 450 | <p><a href="http://slashdot.org"><img width=90 height=36 |
| 451 | src="images/sdsmall.gif" alt="Slashdot"></a> |
| 452 | </TD> |
| 453 | |
| 454 | <TD> |
| 455 | <a href="http://freshmeat.net"><img width=90 height=36 |
| 456 | src="images/fm.mini.jpg" alt="Freshmeat"></a> |
| 457 | </TD> |
| 458 | |
| 459 | </TR> |
| 460 | </TABLE> |
| 461 | |
| 462 | |
| 463 | </BODY> |
| 464 | </HTML> |
| 465 | |