Commit Graph

4736 Commits

Author SHA1 Message Date
jmc adf8bd3435 Ugg...Turn LIST_FOREACH into a while loop around LIST_NEXT...
The *_FOREACH macros got added post 1.5 and were pulled up into 1.5.2. This
makes it impossible to compile mtree local on a 1.5-release box as a cross
toolchain bit for bootstrapping to -current. (and why I never saw this problem
on my 1.5.2 machine)

This whole thing is solved via a compat lib for the tools for all netbsd bits
and/or trimming down a version of mtree to just the bits needed for building
the snapshots.
2001-11-11 05:07:20 +00:00
lukem 7c6d79f87c provide the ability to remove support for generating or checking various
digests by #define-ing NO_MD5, NO_RMD160, or NO_SHA1.  the keywords are
still parsed.
2001-11-10 14:58:20 +00:00
lukem 9a07d795e3 need <stdio.h> and <time.h> for mtree.h 2001-11-10 07:13:07 +00:00
lukem 17d6712ceb replace <sys/time.h> with <time.h> (for consistency) 2001-11-10 07:11:14 +00:00
lukem 911a933fe1 with local crc.c, don't need usr.bin/cksum in .PATH any more 2001-11-10 07:10:11 +00:00
mycroft 23b6355049 Add a separate version of the CRC routine that listens to sflag. 2001-11-10 05:10:22 +00:00
lukem bae654cfa1 When used without -F, search for `special' in fstab and use the raw version
of the fs_spec. In any case, use opendisk(3) to open the device.

When used with -F just open `special' as-is.
2001-11-09 12:01:13 +00:00
lukem 704b08b696 Generally don't need the extra byte in MAXPATHLEN sized buffers, because
pathnames are guaranteed by POSIX to be MAXPATHLEN-1 bytes long.
Kindly pointed out by Warner Losh in private email.
2001-11-09 06:55:56 +00:00
christos 22002034fe Now that vnconfig uses opendisk(3) update it's usage encouraging use
of "vnd0" instead of "/dev/rvnd0{c,d}". Noted by tron.
2001-11-08 15:41:55 +00:00
simonb c71f9f2709 Include <limits.h> to get LLONG_{MIN,MAX}. 2001-11-08 12:24:12 +00:00
itojun e6ccd47666 use strncpy() to set ifname arg to ioctl. 2001-11-08 09:45:34 +00:00
tron 4c61cd90ba Don't abuse opendisk(3) to open PCI bus devices which are no disks. This
fixes PR bin/14468 by Valeriy E. Ushakov.
2001-11-08 08:05:05 +00:00
tron 316d7126f6 Try to open the file before configuring a vnode disk device to avoid silly
error messages when the file cannot be opened for some reason. This fixes
PR bin/12445 by <knotwell@ix.netcom.com>.
2001-11-08 07:44:32 +00:00
lukem 68b8babd26 sync with ufs/ufs/ufs_bmap.c rev 1.14:
- assert that ufs_getlbns() is only called for blocks which involve indirects
- use a shift instead of a multiply in one place
2001-11-08 06:10:13 +00:00
christos 271dd3ace8 Revert previous change that accepts non-raw devices as argument. The
distrib Makefiles have been adjusted appropriately. This change made
block devices and char devices look the same to the naive user, and
it is not appropriate.
2001-11-08 02:14:09 +00:00
tron 73ec93c7eb Invoke "opendisk" with "iscooked = 1" because existing makefiles and the
manual page used the block device.
2001-11-07 16:18:03 +00:00
lukem e8b2f3326f User interface changes from (or inspired by) FreeBSD:
- Add -L to walk the tree `logically', by following symbolic links in
  the heirarchy.
- Add -P to walk the tree `physically'. This is the current behaviour,
  and the default.
- Add "-X excludes-file" to give mtree the ability to exclude files and
  directories from its traversal.  excludes-file contains fnmatch(3)
  patterns to exclude from the walk.
- Add "md5digest" synonym for "md5".
- Add "rmd160" keyword for RMD-160 message digest, and "rmd160digest" synonym.
- Add "sha1" keyword for SHA-1 message digest, and "sha1digest" synonym.
- Don't try to compare() other attributes if the type doesn't match;
  it's nothing but trouble, and no use anyway.
- In -c, only emit "/set" records if something has changed since the
  previous one.

User interface changes by me:
- Check a device's parameters before checking uid/gid/mode.
- If updating (-u), modify the following to match the specification:
	- Device type (retaining existing ownership).
	- Symlink target.

Fixes from (or inspired by) FreeBSD:
- Use p->ftslevel instead of own code to keep track of the level ourself.
  The previous code got majorly confused if fts(3) couldn't descend
  into a subdir, resulting in leaf nodes getting attached to the wrong
  directory.
  XXX: This new method is much much more robust, even though it's not 100%
  perfect; it might result in a couple of following entries in the spec
  to be incorrectly tagged as missing.
- Pass a useful pathname to rlink(), so that logical (-L) traversal
  doesn't confuse symlink checking.
- Consistently use MAXPATHLEN+1 sized buffers for pathnames, so that
  there's room for the NUL.
- Use mtree_err() and strerror(p->fts_errno) to report errors during
  the fts(3) walk.

Fixes by me:
- Remove now-unused `const char *name' argument from compare().
- Change crc_total from an int to a u_int32_t, to match usr.bin/cksum/crc.c.
- Remove trailing whitespace.
- Remove unnecessary (void) casts on functions.
- Reorder entries in the getopt() switch.
- Replace strtoq() with strtoll(), and use strtoul() appropriately.
- Renumber F_ flags to be in alphabetical order.
2001-11-07 08:01:51 +00:00
lukem 272e588400 - KNF & whitespace cleanup
- use fparseln() instead of fgetln()
2001-11-07 01:36:50 +00:00
lukem e491f8950f Code from FreeBSD to give mtree the ability to exclude items from its traversal 2001-11-07 01:16:00 +00:00
augustss 5d206b8d31 Correct a comment. Pointed out by Michael.Eriksson@era-t.ericsson.se. 2001-11-06 22:56:02 +00:00
kim d561c70b4b None of the other calls to logerror() include a newline at the end of the
message, and it causes an unnecessary empty line in the syslog output.
2001-11-06 05:39:27 +00:00
atatat f5d592cf44 Add support for printing the AS number associated with the address at
each hop.
2001-11-04 23:14:35 +00:00
lukem c55aa0f9cb - move "Wflag" global from mtree.c to spec.c, and reinstate the functionality
of tv's previous code, which skips uname or gname parsing if -W is enabled.
- rename "lineno" to "mtree_lineno", to reduce possibility of name
  clashes in code that yanks in spec.c & misc.c (unlikely, but you never know)
2001-11-03 12:51:40 +00:00
lukem 1226af2bc4 tweak copyright 2001-11-02 03:12:48 +00:00
augustss 87faac94d7 Avoid opening /dev/ws{mouse,kbd}0; use stat() instead. 2001-11-01 19:06:08 +00:00
tv 70a4e4b481 Revert previous until it's fixed a more generic way ... I didn't realize
this was pulled in via reachover from elsewhere.
2001-11-01 02:15:41 +00:00
tv 8e97329393 Don't try to do uid or gid lookups from a supplied spec file if -W is given;
the numerical IDs won't be used anyway.
2001-10-31 20:41:17 +00:00
augustss 854fbc7c6b Oops, commit a version that actually works. :-) 2001-10-29 23:38:42 +00:00
wiz bc1878475f Standardise section headers, sort sections. 2001-10-29 23:27:14 +00:00
augustss cf866544bb Add moused, a daemon to take input from a serial mouse and feed it to
a wsmux.  This way serial mice can be accessed via /dev/wsmouse like all
other mice.
This program is heavily based on the FreeBSD moused program.
2001-10-29 23:23:41 +00:00
drochner 371be6ad2b update for loading into "wsfont" 2001-10-29 17:59:00 +00:00
drochner b03606ed0a change default device to "/dev/wsfont" - the vga driver likes it that
way now
2001-10-29 17:58:19 +00:00
lukem ae963680ea cast time_t values to long if printing as %ld to appease the sparc64 port 2001-10-29 07:30:07 +00:00
lukem d1270f6de8 - apply_specdir(): when adding a new symlink from the specfile, do the assert
check on the correct node
- apply_specentry(): if this node is a duplicate of another, apply the
  changes to the `master' entry instead of this one.
- fix inotype() to DTRT
- comment out some debugging info that is too verbose
2001-10-29 05:38:09 +00:00
lukem 751eb87e65 typographical cleanups 2001-10-29 05:18:25 +00:00
lukem cafb53fc3d add __RCSID() 2001-10-28 13:14:05 +00:00
lukem 1450efa805 a possible feature... 2001-10-28 13:12:50 +00:00
christos ffea4be4c7 - KNF
- use syslog after we become a daemon to write error messages.
- failure to open a device is not fatal.
- copy timeval, because select is allowed to change it.
- if we failed to blank all the devices we are monitoring, exit
2001-10-28 01:32:46 +00:00
lukem 16257ef5fc fix manual page building 2001-10-26 16:12:30 +00:00
lukem c431c1e4f0 add makefs(8) 2001-10-26 16:06:57 +00:00
lukem 8e9dab2d53 fix potential sparc compiler warning (if DEBUG was defined, that is...) 2001-10-26 16:01:46 +00:00
lukem de8b3ad2c7 makefs - create a file system image from a directory tree.
It doesn't need any special privileges or kernel devices.

Only ffs image creation is supported at this time, although makefs has been
designed to allow the addition of other file system formats by writing new
back-ends.

This program was designed & implemented by Luke Mewburn of Wasabi Systems.
2001-10-26 06:50:48 +00:00
lukem 6325773eff makefs - create a file system image from a directory tree.
It doesn't need any special privileges or kernel devices.

Only ffs image creation is supported at this time, although makefs has been
designed to allow the addition of other file system formats by writing new
back-ends.

This program was designed & implemented by Luke Mewburn of Wasabi Systems.
2001-10-26 06:16:19 +00:00
lukem 99147a7648 remove #include <ufs/ufs/quota.h> where it was just to appease
<ufs/ufs/inode.h>, since the latter now includes the former.  leave the former
in source that obviously uses specific bits of it (for completeness.)
2001-10-26 05:56:06 +00:00
lukem 009121cf2c makefs - create a file system image from a directory tree.
It doesn't need any special privileges or kernel devices.

Only ffs image creation is supported at this time, although makefs has been
designed to allow the addition of other file system formats by writing new
back-ends.

This program was designed & implemented by Luke Mewburn of Wasabi Systems.
2001-10-26 05:11:42 +00:00
lukem 1e617f29fb Add -W: don't attempt to change the perms/time/flags on existing entries, nor
set them when creating new directories. (AKA the ``don't whack'' option).
Concept suggested by Todd Vierling.
2001-10-25 14:47:39 +00:00
lukem 68a03bad5d - add lineno field to NODE
- move inotype() prototype into mtree.h from extern.h
2001-10-25 03:00:14 +00:00
thorpej a830755714 Don't descend into this mdsetimage -- we now use the BFD'ified
version in src/gnu/usr.sbin.
2001-10-24 23:59:40 +00:00
augustss 87c42c4d3f Improve language. 2001-10-24 18:33:52 +00:00
augustss 6a51bdd2f2 Update usage message. 2001-10-24 18:31:16 +00:00