]> Zhao Yanbai Git Server - minix.git/log
minix.git
17 years agofix packman cd/net quirks v3.1.3
Ben Gras [Fri, 13 Apr 2007 17:13:53 +0000 (17:13 +0000)]
fix packman cd/net quirks

17 years agomore removing of warning and debug messages.
Ben Gras [Fri, 13 Apr 2007 14:00:31 +0000 (14:00 +0000)]
more removing of warning and debug messages.

17 years agoupdate boot message for prerelease
Ben Gras [Fri, 13 Apr 2007 10:00:29 +0000 (10:00 +0000)]
update boot message for prerelease

17 years agoverbose message out
Ben Gras [Thu, 12 Apr 2007 17:01:54 +0000 (17:01 +0000)]
verbose message out

17 years ago . leave out hardware-fp code from library
Ben Gras [Thu, 12 Apr 2007 16:45:00 +0000 (16:45 +0000)]
 . leave out hardware-fp code from library
 . minor packman usage tweaks
 . kernel feature for printing version number
 . removed some verbose debug messages from vfs/mfs

17 years agodelete redundant source
Ben Gras [Thu, 12 Apr 2007 16:30:59 +0000 (16:30 +0000)]
delete redundant source

17 years agoleave out debug message
Ben Gras [Thu, 12 Apr 2007 15:24:45 +0000 (15:24 +0000)]
leave out debug message

17 years agofeature to display svn version on kernel boot
Ben Gras [Thu, 12 Apr 2007 15:13:10 +0000 (15:13 +0000)]
feature to display svn version on kernel boot

17 years agoThis will become 3.1.3
Ben Gras [Thu, 12 Apr 2007 14:31:16 +0000 (14:31 +0000)]
This will become 3.1.3

17 years agoput the zoneinfo library files directly in the lib/stdtime dir
Ben Gras [Thu, 12 Apr 2007 14:29:30 +0000 (14:29 +0000)]
put the zoneinfo library files directly in the lib/stdtime dir

17 years agoDon't always update CMOS on shutdown.
Ben Gras [Tue, 10 Apr 2007 13:40:09 +0000 (13:40 +0000)]
Don't always update CMOS on shutdown.

17 years agoremove debug message
Ben Gras [Thu, 5 Apr 2007 13:58:35 +0000 (13:58 +0000)]
remove debug message

17 years agoBigger shell
Ben Gras [Thu, 5 Apr 2007 12:30:24 +0000 (12:30 +0000)]
Bigger shell

17 years agono /usr/gnu/man in base system
Ben Gras [Thu, 5 Apr 2007 10:52:20 +0000 (10:52 +0000)]
no /usr/gnu/man in base system

17 years agoas needs more.
Ben Gras [Thu, 5 Apr 2007 10:47:04 +0000 (10:47 +0000)]
as needs more.

17 years ago . add /usr/share for zoneinfo
Ben Gras [Thu, 5 Apr 2007 10:37:22 +0000 (10:37 +0000)]
 . add /usr/share for zoneinfo
 . throw out non-base /usr/gnu stuff

17 years ago/bin/echo is used during early bootstrap too.
Ben Gras [Wed, 4 Apr 2007 13:05:13 +0000 (13:05 +0000)]
/bin/echo is used during early bootstrap too.

17 years agofix packman sort col, and make sort case-insensitive
Ben Gras [Mon, 2 Apr 2007 16:23:55 +0000 (16:23 +0000)]
fix packman sort col, and make sort case-insensitive

17 years agoversion /usr/lib/crontab too
Ben Gras [Mon, 2 Apr 2007 16:18:46 +0000 (16:18 +0000)]
version /usr/lib/crontab too

17 years agoexplanations with common test3 errors.
Ben Gras [Mon, 2 Apr 2007 16:00:06 +0000 (16:00 +0000)]
explanations with common test3 errors.

17 years agofix some compiler warnings.
Ben Gras [Mon, 2 Apr 2007 15:10:07 +0000 (15:10 +0000)]
fix some compiler warnings.

17 years agofix for warning
Ben Gras [Mon, 2 Apr 2007 14:45:56 +0000 (14:45 +0000)]
fix for warning

17 years agoaccept 'q' to exit.
Ben Gras [Mon, 2 Apr 2007 14:44:16 +0000 (14:44 +0000)]
accept 'q' to exit.

17 years agomount needs more memory to do system() for rs_down in the event a mount fails.
Ben Gras [Mon, 2 Apr 2007 14:41:06 +0000 (14:41 +0000)]
mount needs more memory to do system() for rs_down in the event a mount fails.

17 years agofix off-by-one error in 'all'
Ben Gras [Mon, 2 Apr 2007 12:09:43 +0000 (12:09 +0000)]
fix off-by-one error in 'all'

17 years agoremove debug line
Ben Gras [Fri, 30 Mar 2007 15:55:36 +0000 (15:55 +0000)]
remove debug line

17 years agoreplace library time handling functions
Ben Gras [Fri, 30 Mar 2007 15:36:49 +0000 (15:36 +0000)]
replace library time handling functions
mktime, tzset, asctime, ctime, gmtime, localtime, strftime
with zoneinfo implementations in src/commands/zoneinfo, referenced
from src/lib/stdtime/Makefile.in.

17 years agofix for filenames with paths
Ben Gras [Fri, 30 Mar 2007 15:35:15 +0000 (15:35 +0000)]
fix for filenames with paths

17 years ago . added zoneinfo to build, with fixes for minix
Ben Gras [Fri, 30 Mar 2007 15:32:55 +0000 (15:32 +0000)]
 . added zoneinfo to build, with fixes for minix
 . now using zoneinfo date command, instead of commands/simple/date.c

17 years agorename svn revision variable to one with underscore, to not pollute
Ben Gras [Fri, 30 Mar 2007 15:17:32 +0000 (15:17 +0000)]
rename svn revision variable to one with underscore, to not pollute
application namespace

17 years agoremove debug message
Ben Gras [Fri, 30 Mar 2007 15:17:03 +0000 (15:17 +0000)]
remove debug message

17 years agomove date(1) to minix manual page place.
Ben Gras [Mon, 26 Mar 2007 11:24:13 +0000 (11:24 +0000)]
move date(1) to minix manual page place.

17 years agotz database is in /usr/share/zoneinfo.
Ben Gras [Mon, 26 Mar 2007 11:22:20 +0000 (11:22 +0000)]
tz database is in /usr/share/zoneinfo.

17 years agomake way for new date(1).
Ben Gras [Mon, 26 Mar 2007 11:21:54 +0000 (11:21 +0000)]
make way for new date(1).

17 years agoImport of original zoneinfo code and database - tzcode
Ben Gras [Mon, 26 Mar 2007 10:55:16 +0000 (10:55 +0000)]
Import of original zoneinfo code and database - tzcode
old-tzcode-32-bit-output and tzdata2007d.

17 years agoMinor corrections by ASW.
Ben Gras [Thu, 22 Mar 2007 16:24:06 +0000 (16:24 +0000)]
Minor corrections by ASW.

17 years agolet tty do sys_physcopy; needed for loadfont.
Ben Gras [Thu, 22 Mar 2007 16:15:33 +0000 (16:15 +0000)]
let tty do sys_physcopy; needed for loadfont.

17 years agoinclude svn revision number in <minix/sys_config.h>, printed by kernel
Ben Gras [Wed, 21 Mar 2007 13:35:06 +0000 (13:35 +0000)]
include svn revision number in <minix/sys_config.h>, printed by kernel
at startup, to easily identify releases.

17 years agoLet user exit without pressing ^C
Ben Gras [Wed, 21 Mar 2007 09:54:09 +0000 (09:54 +0000)]
Let user exit without pressing ^C

17 years agoafter enqueue()ing a process, only pick_proc() a new one if the current
Ben Gras [Wed, 21 Mar 2007 09:45:01 +0000 (09:45 +0000)]
after enqueue()ing a process, only pick_proc() a new one if the current
process is not PREEMPTIBLE (or it's not ready, or there isn't a current
process yet). This fixes a case where a process that isn't
PREEMPTIBLE actually gets preempted. (This solves a race condition
between CLOCK and SYSTEM.)

17 years agoa script to decode stack traces.
Ben Gras [Wed, 21 Mar 2007 09:33:39 +0000 (09:33 +0000)]
a script to decode stack traces.

17 years agoslightly more accurate and verbose sanity checking
Ben Gras [Thu, 15 Mar 2007 10:57:39 +0000 (10:57 +0000)]
slightly more accurate and verbose sanity checking

17 years agoremove extra arg
Ben Gras [Thu, 15 Mar 2007 10:54:35 +0000 (10:54 +0000)]
remove extra arg

17 years agoSlightly more flexible packman.
Ben Gras [Mon, 12 Mar 2007 16:55:02 +0000 (16:55 +0000)]
Slightly more flexible packman.

17 years agoFor /dev/mem, map in memory to be copied to memory's own address space
Ben Gras [Fri, 9 Mar 2007 16:03:19 +0000 (16:03 +0000)]
For /dev/mem, map in memory to be copied to memory's own address space
one page at a time, and use safecopies to copy it to the requesting
process.

This lets /dev/mem access the entire physical address space, as the minix
page tables only allow access by default to physical RAM, which breaks
e.g. the VESA X driver in some cases.

17 years agooutput CRLF instead of just LF to serial
Ben Gras [Fri, 9 Mar 2007 15:45:35 +0000 (15:45 +0000)]
output CRLF instead of just LF to serial

17 years agoMake /dev/mouse an alias for /dev/kbdaux for X
Ben Gras [Thu, 8 Mar 2007 16:04:59 +0000 (16:04 +0000)]
Make /dev/mouse an alias for /dev/kbdaux for X

17 years ago . let kernel use read_tsc() from sysutil library
Ben Gras [Thu, 8 Mar 2007 15:39:14 +0000 (15:39 +0000)]
 . let kernel use read_tsc() from sysutil library
 . read_tsc() in sysutil library saves edx and eax now
 . added read_tsc_64() by Antonio Mancina to load tsc into
   a 64-bit data type directly
 . deleted read_tsc.h in favour of a prototype in <minix/syslib.h>

17 years agoRussian setup document contributed by Roman Ignatov.
Ben Gras [Thu, 8 Mar 2007 15:18:57 +0000 (15:18 +0000)]
Russian setup document contributed by Roman Ignatov.

17 years agocorrect references to manpage section 9 to 1x.
Ben Gras [Mon, 5 Mar 2007 16:43:03 +0000 (16:43 +0000)]
correct references to manpage section 9 to 1x.

17 years agomove manpages in section 9 to new section 1x.
Ben Gras [Mon, 5 Mar 2007 16:36:40 +0000 (16:36 +0000)]
move manpages in section 9 to new section 1x.

17 years agoRename section 9 to section 1x
Ben Gras [Mon, 5 Mar 2007 16:32:30 +0000 (16:32 +0000)]
Rename section 9 to section 1x

17 years agoMerge of kjb's update to man system to move section 9 to 1x.
Ben Gras [Mon, 5 Mar 2007 16:31:39 +0000 (16:31 +0000)]
Merge of kjb's update to man system to move section 9 to 1x.

17 years agoMinor change to path lookup that fixes the bug that creating a file
Ben Gras [Wed, 28 Feb 2007 13:13:39 +0000 (13:13 +0000)]
Minor change to path lookup that fixes the bug that creating a file
as a first component of an absolute path failed (e.g. 'touch /file'),
due to leading slashes not being skipped in the processed path counter
in that case, causing create to fail.

17 years agoexplicitly mask byte i/o values to bytes.
Ben Gras [Mon, 26 Feb 2007 11:52:04 +0000 (11:52 +0000)]
explicitly mask byte i/o values to bytes.

17 years agoUninitialized vector entry?
Ben Gras [Fri, 23 Feb 2007 20:58:10 +0000 (20:58 +0000)]
Uninitialized vector entry?

17 years agoExplicitly mask off 8-bit values (so new sanity check doesn't trip)
Ben Gras [Fri, 23 Feb 2007 20:53:32 +0000 (20:53 +0000)]
Explicitly mask off 8-bit values (so new sanity check doesn't trip)

17 years ago. service tells you which device it couldn't stat
Ben Gras [Fri, 23 Feb 2007 18:22:46 +0000 (18:22 +0000)]
. service tells you which device it couldn't stat
. bigger rs and ramdisk for drivers
. sanity check for pv_set macro for oversized arguments

17 years agoSlew of debugging / sanity check features.
Ben Gras [Fri, 23 Feb 2007 18:21:19 +0000 (18:21 +0000)]
Slew of debugging / sanity check features.

17 years agoDon't allow sys_kill to SELF alltogether.
Ben Gras [Fri, 23 Feb 2007 13:01:55 +0000 (13:01 +0000)]
Don't allow sys_kill to SELF alltogether.

17 years agoIf a process does sys_kill on SELF (such as in panic() of servers and drivers
Ben Gras [Fri, 23 Feb 2007 12:55:29 +0000 (12:55 +0000)]
If a process does sys_kill on SELF (such as in panic() of servers and drivers
if a PM exit fails, until they are compiled with the new panic() function that
is), don't reply to it as the endpoint has been cleared.

17 years agoDon't sys_kill SELF if a PM exit fails; just generate a fault to get
Ben Gras [Fri, 23 Feb 2007 12:54:02 +0000 (12:54 +0000)]
Don't sys_kill SELF if a PM exit fails; just generate a fault to get
us killed through the kernel with PM finding out.

This makes it unnecessary for servers and drivers to be able to do
sys_kill generally, so KILL can go out of /etc/drivers.conf.

17 years agoChanged logic checking for valid device.
Ben Gras [Fri, 23 Feb 2007 10:21:55 +0000 (10:21 +0000)]
Changed logic checking for valid device.

17 years agoNote about mkfs needing more memory after r2751.
Ben Gras [Fri, 23 Feb 2007 08:33:33 +0000 (08:33 +0000)]
Note about mkfs needing more memory after r2751.

17 years agoadd/re-enable at_wini debug output
Ben Gras [Wed, 21 Feb 2007 17:49:35 +0000 (17:49 +0000)]
add/re-enable at_wini debug output

17 years agoCopypaste bug.
Ben Gras [Wed, 21 Feb 2007 17:01:43 +0000 (17:01 +0000)]
Copypaste bug.

17 years agoTypo reported by Al Woodhull.
Ben Gras [Wed, 21 Feb 2007 15:17:28 +0000 (15:17 +0000)]
Typo reported by Al Woodhull.

17 years agoat_wini also needs a pci_reserve() for the pci compatability device, if
Ben Gras [Tue, 20 Feb 2007 18:42:43 +0000 (18:42 +0000)]
at_wini also needs a pci_reserve() for the pci compatability device, if
present, for dma.

17 years ago. pci driver now returns devices, even when they have been pci_reserve()d
Ben Gras [Tue, 20 Feb 2007 17:09:19 +0000 (17:09 +0000)]
. pci driver now returns devices, even when they have been pci_reserve()d
. pci_reserve() returns an error on devices that have already been reserved,
  instead of panic()ing; the pci_reserve() library call still panics,
  pci_reserve_ok() returns an int.
. this allows at_wini to use the instance value as intended, as all devices
  are seen, even reserved ones
. only devices actually used by at_wini are pci_reserve()d
. pci doesn't release devices based on argv[0], as at_wini both have the
  same name and multiple instances won't work together properly

17 years agoTZ update for new US/Canadian DST rules, fixed by Al Woodhull.
Ben Gras [Tue, 20 Feb 2007 16:29:26 +0000 (16:29 +0000)]
TZ update for new US/Canadian DST rules, fixed by Al Woodhull.

17 years agoInclude svn revision number in iso filename when doing build
Ben Gras [Mon, 19 Feb 2007 16:40:33 +0000 (16:40 +0000)]
Include svn revision number in iso filename when doing build
based on svn export.

17 years agoRemoved args debugging line
Ben Gras [Fri, 16 Feb 2007 15:58:05 +0000 (15:58 +0000)]
Removed args debugging line

17 years agodon't let /dev/mem read beyond top of physical memory
Ben Gras [Fri, 16 Feb 2007 15:57:05 +0000 (15:57 +0000)]
don't let /dev/mem read beyond top of physical memory

17 years agomade default wakeup time correct
Ben Gras [Fri, 16 Feb 2007 15:56:00 +0000 (15:56 +0000)]
made default wakeup time correct

17 years ago . use library function to parse memory string
Ben Gras [Fri, 16 Feb 2007 15:55:20 +0000 (15:55 +0000)]
 . use library function to parse memory string
 . remove unused variables and some other gcc warnings

17 years ago . made memory parsing function into a library call
Ben Gras [Fri, 16 Feb 2007 15:54:28 +0000 (15:54 +0000)]
 . made memory parsing function into a library call
   (moved 'struct memory' to <minix/type.h> for this library call)
 . removed some debugging messages from pci library

17 years agoremoved some verbose messages
Ben Gras [Fri, 16 Feb 2007 15:53:10 +0000 (15:53 +0000)]
removed some verbose messages

17 years agoUpdate CMOS time at shutdown time.
Ben Gras [Fri, 16 Feb 2007 15:52:39 +0000 (15:52 +0000)]
Update CMOS time at shutdown time.

17 years agoremoved/optionalized debugging messages
Ben Gras [Fri, 16 Feb 2007 15:50:49 +0000 (15:50 +0000)]
removed/optionalized debugging messages

17 years agoremoved or optionalized verbose/debugging messages
Ben Gras [Fri, 16 Feb 2007 15:50:30 +0000 (15:50 +0000)]
removed or optionalized verbose/debugging messages

17 years agoset 'w_testing' during w_identify(). this means 0-tolerance to
Ben Gras [Mon, 12 Feb 2007 13:35:33 +0000 (13:35 +0000)]
set 'w_testing' during w_identify(). this means 0-tolerance to
timeouts, and an ATA_IDENTIFY timeout will cause the ATAPI_IDENTIFY
to be skipped, making the cd probe a lot faster.

17 years agomkfs needs more memory for the boot ramdisk.
Ben Gras [Mon, 12 Feb 2007 13:10:06 +0000 (13:10 +0000)]
mkfs needs more memory for the boot ramdisk.

17 years agoTypo's.
Ben Gras [Mon, 12 Feb 2007 12:27:43 +0000 (12:27 +0000)]
Typo's.

17 years agoDon't complain about missing ip address.
Ben Gras [Fri, 9 Feb 2007 16:28:34 +0000 (16:28 +0000)]
Don't complain about missing ip address.

17 years agoMemory requirements a bit more now with mfs processes
Ben Gras [Fri, 9 Feb 2007 16:27:59 +0000 (16:27 +0000)]
Memory requirements a bit more now with mfs processes

17 years agouse shorter ata timeout for identify commands when running from cd
Ben Gras [Fri, 9 Feb 2007 15:58:33 +0000 (15:58 +0000)]
use shorter ata timeout for identify commands when running from cd
to shorten probe time.

17 years agoFixes for /usr/xbin binaries bootstrap dir.
Ben Gras [Thu, 8 Feb 2007 17:41:40 +0000 (17:41 +0000)]
Fixes for /usr/xbin binaries bootstrap dir.

17 years agoinclude /usr/xbin bootstrap dir in $PATH
Ben Gras [Thu, 8 Feb 2007 16:48:34 +0000 (16:48 +0000)]
include /usr/xbin bootstrap dir in $PATH

17 years agodon't call mkdep with an absolute path
Ben Gras [Thu, 8 Feb 2007 16:26:20 +0000 (16:26 +0000)]
don't call mkdep with an absolute path

17 years agoUse temporary binary directory as bootstrap
Ben Gras [Thu, 8 Feb 2007 16:18:48 +0000 (16:18 +0000)]
Use temporary binary directory as bootstrap

17 years agoExtend cdprobe probe list to c1, and reorder minors to do most-likely
Ben Gras [Thu, 8 Feb 2007 15:56:58 +0000 (15:56 +0000)]
Extend cdprobe probe list to c1, and reorder minors to do most-likely
first.

Make at_wini include instance number in error messages.

17 years agosupply instance to 2nd at_wini instance.
Ben Gras [Thu, 8 Feb 2007 14:23:03 +0000 (14:23 +0000)]
supply instance to 2nd at_wini instance.
requires a little cooperation from at_wini.

17 years agoStart a 2nd copy of at_wini, for /dev/c1*. This requires a slightly
Ben Gras [Thu, 8 Feb 2007 14:04:59 +0000 (14:04 +0000)]
Start a 2nd copy of at_wini, for /dev/c1*. This requires a slightly
larger rs.

17 years agoMake /dev/c1* device nodes on disk and on the boot ramdisk.
Ben Gras [Thu, 8 Feb 2007 13:51:35 +0000 (13:51 +0000)]
Make /dev/c1* device nodes on disk and on the boot ramdisk.

 . include c1* nodes in std in MAKEDEV
 . this requires a slightly larger shell
 . this requires a larger blocksize on the boot ramdisk (to fit
   /dev/ in direct blocks for mkfs with a proto file)
 . also more inodes and kB's on the boot ramdisk

17 years agoSanity check in clock - process is supposed to be runnable when it's
Ben Gras [Thu, 8 Feb 2007 12:59:29 +0000 (12:59 +0000)]
Sanity check in clock - process is supposed to be runnable when it's
interrupted.

17 years agoRetired DEV_{READ,WRITE,GATHER,SCATTER,IOCTL} (safe versions *_S are to
Ben Gras [Wed, 7 Feb 2007 16:22:19 +0000 (16:22 +0000)]
Retired DEV_{READ,WRITE,GATHER,SCATTER,IOCTL} (safe versions *_S are to
be used and drivers should never receieve these 'unsafe' variants
any more).

17 years agoMostly bugfixes of bugs triggered by the test set.
Ben Gras [Thu, 1 Feb 2007 17:50:02 +0000 (17:50 +0000)]
Mostly bugfixes of bugs triggered by the test set.

bugfixes:
 SYSTEM:
 . removed
        rc->p_priv->s_flags = 0;
   for the priv struct shared by all user processes in get_priv(). this
   should only be done once. doing a SYS_PRIV_USER in sys_privctl()
   caused the flags of all user processes to be reset, so they were no
   longer PREEMPTIBLE. this happened when RS executed a policy script.
   (this broke test1 in the test set)

 VFS/MFS:
 . chown can change the mode of a file, and chmod arguments are only
   part of the full file mode so the full filemode is slightly magic.
   changed these calls so that the final modes are returned to VFS, so
   that the vnode can be kept up-to-date.
   (this broke test11 in the test set)

 MFS:
 . lookup() checked for sizeof(string) instead of sizeof(user_path),
   truncating long path names
   (caught by test 23)
 . truncate functions neglected to update ctime
   (this broke test16)

 VFS:
 . corner case of an empty filename lookup caused fields of a request
   not to be filled in in the lookup functions, not making it clear
   that the lookup had failed, causing messages to garbage processes,
   causing strange failures.
   (caught by test 30)
 . trust v_size in vnode when doing reads or writes on non-special
   files, truncating i/o where necessary; this is necessary for pipes,
   as MFS can't tell when a pipe has been truncated without it being
   told explicitly each time.
   when the last reader/writer on a pipe closes, tell FS about
   the new size using truncate_vn().
   (this broke test 25, among others)
 . permission check for chdir() had disappeared; added a
   forbidden() call
   (caught by test 23)

new code, shouldn't change anything:
 . introduced RTS_SET, RTS_UNSET, and RTS_ISSET macro's, and their
   LOCK variants. These macros set and clear the p_rts_flags field,
   causing a lot of duplicated logic like

       old_flags = rp->p_rts_flags;            /* save value of the flags */
       rp->p_rts_flags &= ~NO_PRIV;
       if (old_flags != 0 && rp->p_rts_flags == 0) lock_enqueue(rp);

   to change into the simpler

       RTS_LOCK_UNSET(rp, NO_PRIV);

   so the macros take care of calling dequeue() and enqueue() (or lock_*()),
   as the case may be). This makes the code a bit more readable and a
   bit less fragile.
 . removed return code from do_clocktick in CLOCK as it currently
   never replies
 . removed some debug code from VFS
 . fixed grant debug message in device.c

preemptive checks, tests, changes:
 . added return code checks of receive() to SYSTEM and CLOCK
 . O_TRUNC should never arrive at MFS (added sanity check and removed
   O_TRUNC code)
 . user_path declared with PATH_MAX+1 to let it be null-terminated
 . checks in MFS to see if strings passed by VFS are null-terminated

 IS:
 . static irq name table thrown out

17 years agoAlso exclude /home
Ben Gras [Thu, 1 Feb 2007 17:10:03 +0000 (17:10 +0000)]
Also exclude /home

17 years agosimpler /usr/bin/vi check
Ben Gras [Thu, 1 Feb 2007 17:09:49 +0000 (17:09 +0000)]
simpler /usr/bin/vi check

17 years agoOnly install /usr/bin/vi as a hardlink to elvis if there's nothing already
Ben Gras [Wed, 31 Jan 2007 13:00:39 +0000 (13:00 +0000)]
Only install /usr/bin/vi as a hardlink to elvis if there's nothing already
there (so e.g. nvi isn't overwritten).