forsyth20121205-174063a80cc13 years agoHistory
1030 lines · 23.5 KB · Text
RawDownload
.TLInferno 3rd Edition \- 28 June 2002 Update.brRelease Notes.AIVita Nuovasupport@vitanuova.com.br28 June 2002.SP 4.NH 1Base for update.LPThis set of updates applies to the 18 June 2001 base.The installed software must therefore be that of 18 June 2001, whether installed directly,or the result of updating the original July 2000 release with update packages to the18 June 2001 level.This set of updates can be applied, however, whether or not the previous updateof 3 October 2001 was installed; this package includes all those changes too..NH 1Contents.LPThis update offers the following, compared to the 3 October 2001 release..LPThe following sections provide shortsummaries of the more interesting or important changes.There are many more minor or cosmetic changes..SH.I "New commands and modules".IP \(bu.I Fc (1)is a floating-point calculator..IP \(buA new page.I man (6)describes the formatting commands used in manual pages..IP \(buSupport for system-level memory monitoring has been made availableas an optional component of.CW emu ,with the interface provided by a new driver.CW /emu/devmem.c .It is not compiled in by default,since it is relatively intrusive.Details of how to enable it will be provided with the applications that use it..IP \(bu.I Strings (1)extracts strings from a file..IP \(bu.CW 9export(see.I export (4))serves a name space to a 9P client (mainly useful forinteracting with Third Edition Plan 9 systems at the moment)..IP \(bu.CW cdfs ,which was described by.I dossrv (4)but not actually shipped is now included..IP \(bu.CW csquery ,described in.I cs (8),queries the connection service and prints the result..IP \(bu.CW newer ,described by.I ftest (1),is a shell predicate that compares the modification times on two files..IP \(bu.I Print (2)is a new module that provides an interface to directly-driven printers..SH.I "Repairs and changes".IP \(bu.CW cphas been reworked extensively; amongst other things, it can now safely traversearbitrary name spaces without becoming confused bycomplex mounts..IP \(bu.I Listen (1)and.CW dialboth accept a.CW -Aoption to cause it to authenticate a connection..IP \(bu.I Diff (1)compares binary files and also does not quit (during recursive diffs) when it findsa file it cannot open..IP \(bu.I Ls (1)implements the.CW -uand.CW -tsorting operations properly.A new.CW -eoption prints the time as a decimal integer (seconds since the system Epoch)..IP \(bu.I Shregards all of `../', `./', and `#' at the front of a command name as a request to use the name as-is..IP \(bu.I Tailhas been changed to avoid some boundary cases..IP \(bu.I Touchuses standard argument processing and returns an error exit status if it fails..IP \(bu.I Zerosaccepts new options.CW -rto generate random bytesand.CW -vto produce blocks with a given value..IP \(buThe network games software in.CW /appl/gamesuses port 6660 for its signer, not the standard Inferno signer's port..IP \(bu.I Charon :disguises itself as Mozilla to satisfy agent-name probes; retries fetches on error; supports multiple windows;detects HTML vs plain text correctly; has many Javascript fixes, including fixing a day one bugin operator precedence (!).In general, ithas undergone extensive changes,particularly to the cookies and Javascript implementation.It also insists that it be run under the window manager.I wm (1).It can be set to plumb schemes that it does not implement internally..IP \(buThe installation software now uses the numeric time as-is to name output packages;the temporary fix introduced in Ocotober of converting  leading.CW 10to.CW Ahas been removed..IP \(bu.CW /appl/lib/dis.bprints offsets from.CW MPcorrectly (it previously printed themas offsets from.CW FP )..IP \(bu.CW /appl/lib/parseman.baccounts for enough extra.I troffcommands to display.I man (6)correctly..IP \(bu.CW /appl/lib/profile.bbinds.CW #Ponly if needed..IP \(bu.CW /appl/lib/translate.b.I translate (2)) (now computes the right hash value..IP \(buSeveral run-time checks that were missing or incomplete for array access and slicing have been added..IP \(bu.CW lib/isrvno longer starts a new shell..IP \(bu.I Wm-ftree (1)has several new options:.CW -E ,.CW -pand.CW -d ..IP \(bu.CW wm/rtnow correctly updates stack size (if set)..IP \(bu.I Xd (1)correctly implements.CW -rto suppress repeated lines..IP \(bu.I gettar (1)documents the.B lstaroutput format.IP \(bu.I man (6)describes the manual page documentation format.SH.I "Interface changes and extensions".IP \(bu.I Security-password (2)provides a new entry.CW setpwfileto allow the default name.CW /keydb/passwordto be changed..IP \(bu.I Dossrv (4)has changed extensively, to support rename and long names in FAT format correctly.It uses a smaller number of IO buffers..IP \(bu.I Createsignerkey (8)has a completely different invocation, documented in that manual page,with a conventional option structure replacing a rather idiosyncratic chainof optional arguments.The old syntax is temporarily secretly still supported, but onlyfor the benefit of any shell scripts that might so use it; if you have any,please change them to use the new syntax before the old usage finally vanishes in a later release..IP \(bu.I Sum (1)documents the new.CW sha1sumcommand..IP \(bu.I Bufio (2)returns an error if a seek fails rather than stopping the process(!)..IP \(bu.CW /lib/convcshas several more character sets:.CW koi8-r ,.CW windows-1250and.CW windows-1252 ..IP \(bu.I Keyring-sha (2)documents two new functions,.CW hmac_sha1and.CW hmac_md5 ,which are keyed versions of the corresponding secure hashing functions,as defined by RFC2104.The new definitions are in.CW /module/keyring.m ..IP \(bu.I Keyring-getstring (2)makes it clear that it does not.I providedelimited I/O but rather.I requiresit (eg, as provided by.I ssl (3))for successful operation..IP \(bu.I Security-ssl (2)no longer requires.CW #Dto be bound into the name space (since it can only be used locally in any case).Consequently,.CW bindcalls have been removed from several modules that used SSL..IP \(bu.CW /appl/lib/crypt/ssl3.bhas several critical bug fixes, allowing secure connections to work correctly in Charon;an important bug fix was also made to.CW /appl/lib/crypt/x509.b ..IP \(bu.I Imageremaphas been changed to allow concurrent use..IP \(bu.I Translate (6)and.CW /appl/lib/translate.bhave changed as required to put the locale-specific dictionaries in directory\f(CW/locale/\fP\fIlocale\f(CW/dict\fP;the directory for a chosen.I localeis then normally bound onto.CW /locale/dict ,where.CW translatelooks by default..IP \(buThe documentation for.I button (9)no longer claims that.CW -padxand.CW -padyare supported options for that widget..IP \(bu.CW sys.mhas some new constants defined for use by a later Styx revision..SH.I "Tk changes and extensions".IP \(buThe canvas code provides extensions to Tk:.CW "grab set tag" ,.CW "grab release tag" ,and.CW "grab ifunset tag" .See.I canvas (9)for details..IP \(buAlso in canvases, object-specific hit tests have been added, rather than using a bounding boxin most cases..IP \(buBorderwidth defaults to zero in the entry widget..IP \(buTk multiplexes the cursor amongst top-level windows..IP \(buText and other items selected use foreground/background colours.SH.I "Limbo compiler".IP \(buConstant tuple and adt values can be used as values in.CW conconstant declarations..IP \(buIn an array value, the use of reference values for different.CW pickalternatives of the same adt no longer draws a diagnosticbut causes the array value to be an array of.CW refto the adt, not a particular pick alternative..IP \(buThe C language stub declarations support.CW pickadts..IP \(buThe alignment of.CW bigand.CW realis now correct in C stubs..IP \(buThe string escape.CW \efis form-feed (to simplify translation of C programs)..SH.I "Compilers and utilities".IP \(bu.I Iar 'ssource directory has been renamed from.CW arto.CW iar ..IP \(bu.CW mkunderstands the long-name table in Windows' archive files, preventingspurious out-of-date status and other confusing results in builds..IP \(bu.CW sqzand.CW zqscan compress larger ARM and PowerPC executables..IP \(bu.CW kprofuses a table now provided by.CW /dev/kprofto provide profiling results to the resolution selected by a given platform..SH.I "Hosted and Native Inferno".LPChanges common to hosted and native kernels:.IP \(buThe.CW HOSTMODELand.CW TARGMODELfor Plan 9 are now.CW Plan9not, rather confusingly,.CW Inferno .A good few source files have been renamed accordingly..IP \(buThe memory allocation functions have been modified slightly to support the addition ofmemory monitoring and profiling.Some functions have also been added to the C library supporting.I emuand the kernels,with an eye to starting the revision of Styx, based on the current 9P2000.Consequently, theinclude file.CW lib9.hfor all platforms has been modified:to add new functions such as.CW setmalloctag ;to make the types of parameters to the.CW malloccalls uniform (and reflect the documentation, as it happens),so that sizes are always unsigned;to change the type of a parameter to.CW strchrand.CW strrchrfrom.CW charto.CW int ;to remove obsolete definitions such as.CW UMFILEand.CW UMDIR ;and to add new functions for use inside the kernels.Several new functions are strictly for internal use(and thus might change in future), andthey have not been added to section 10.One exception is the new function.CW tokenize ,documented in.I getfields (10.2)and used by.I parsecmd (10.2)..I Getfieldsreplaces the function called.CW parsefields ,which has been removed, and all calls to it changed to use.CW getfields .The higher aim of some of these otherwise fussy changes isto work towards making Inferno and Plan 9 drivers interchangeable(as best we can)..IP \(buTo help decouple authentication methods from identity setting, two new files.CW caphashand.CW capusehave been added to.CW #c(a temporary location for them), supported by code in.CW auth.c.CW /os/port/auth.c ). (Their use will soon replace the.CW setidfunctionality of.I keyring-auth .They will not be documented until then..IP \(bu.CW /emu/exception.cand.CW /os/port/exception.cno longer trap the use of the.CW exitstatement (by accident of implementation)..CW \(bu.CW /emu/dis.cand.CW /os/port/dis.cdo not leave a process in Broken state when itreceives an exception because a kernel memory allocation failed..IP \(buThe JIT compilation of case statements has fixed a day one bugthat caused a degenerate form of.CW case(with only a default arm) to be compiled incorrectly..IP \(buThe 386 JIT will allow rescheduling, and the scheduling is finer grained on the ARM..IP \(buARM code generation produces correct code for some list accesses that were previously wrong(the Dis operator HEADM).IP \(bu.I Emuhas the following changes specific to it:.RS.IP \-The mouse event queue in.CW devcon.cis now a circular queue without locks as in the native kernel;this prevents a scheduling problem under Linux..IP \-The.CW READSTRconstant defined by the native kernels is now also defined by.CW emu ..IP \-The function previously called.CW rendezvousis now called.CW erendezvousto avoid a type clash with a library function on Plan 9(its `rendezvous' function takes an unsigned long as first parameter, not.CW void* )..CW lib9.hhas changed accordingly where required..IP \-.CW devcon.cacquires.CW caphashand.CW capuse ..IP \-A new file.CW auth.cmust be included in every build..IP \-Several drivers in.CW emuhave been changed to use.RS.P1	switch((ulong)c->qid.path ...).P2.REto force 32-bit operations to be used when.CW patheventually becomes 64 bits..IP \-

Lines 1–500 of 1030.