Commit Graph

8394 Commits

Author SHA1 Message Date
cube
437f8925a6 Introduce versioning to config(1). This will allow us to provide a way to
error out in a bit more friendly way when the user is trying to use
config(1) on a too old or too recent source tree.

To achieve that, introduce the "version NUMBER" statement which can be use
about anywhere in the config files.  Also, use two defines, CONFIG_VERSION
(which is the actual version of binary), and CONFIG_MINVERSION, which is
the minimum version the binary supports.

Allowing a range of versions serves several purposes:  first it allows me
to introduce the versioning without requiring it to be used right away in
the kernel tree, which means it will be possible to introduce new features
of config(1) rather progressively in the future.  E.g., using 'no pci' in
a config file could only require the new version in that config file, so
that the rest remains compatible.

In the end, an actual bump of the main config system (i.e., in conf/files)
will only be required when e.g., ioconf.c semantics change.

(Mostly-)silently accepted on tech-kern.  Error messages turned into
correct and meaningful English thanks to Tracy and Perry.
2005-10-12 01:17:43 +00:00
kleink
7031652201 Exit with 2 on usage errors as documented. Noted by Christian Biere in
PR bin/21933.
2005-10-10 22:13:20 +00:00
rpaulo
b17222de0e Mention uptime display. 2005-10-10 10:09:17 +00:00
christos
fbec9f21a4 - Exit with non-zero on errors (from Liam Foy)
- Pass lint.
2005-10-09 18:23:52 +00:00
aymeric
e6da8880e8 bump for latest changes:
. reintroduce ^V as a valid quoting character
. don't swallow quoting characters which are not followed by anything
2005-10-08 13:02:32 +00:00
aymeric
ca7788ba21 accept ^V again as a quoting character. At least one person uses it. (hi abs!)
While there, fix a bug that would swallow a quoting character if it were the
last one.
2005-10-08 12:41:48 +00:00
aymeric
7107bc131e remove the hack that changed backslaches to ^V's when the command is "set" (!).
Now backslashes are understood by argv_exp3().
2005-10-08 12:38:45 +00:00
kleink
a050a27360 Downgrade failure to kill(2) (other than ESRCH) from fatal error to a
warning; otherwise processing aborts and possibly matching killees would
remain unsignalled.  This makes pkill match the Solaris behavior.
2005-10-08 12:05:55 +00:00
drochner
de89d2ef8d s|expr|eval|g, to make the test portable 2005-10-06 17:38:09 +00:00
drochner
a908ca7d51 merge in FreeBSD's rev.1.14:
Fix m4 to properly handle bitwise operators &, ^, and |. Fix operator
precedence. Add short-circuit evaluation.
2005-10-06 17:28:33 +00:00
drochner
04e008c8e1 import a test for arithmetic expressions from FreeBSD 2005-10-06 17:23:23 +00:00
christos
c2bd98ebb5 From Liam Foy:
- Check for errno being set to ENOTDIR from execvp. This
  will stop an incorrect value being returned if a component
  of the new process image file's path is not a directory.
- Cleanup and KNF
2005-10-05 21:20:46 +00:00
hubertf
8457054037 Make it clear where this program can be found.
Requested by wiz.
2005-10-05 17:38:49 +00:00
hubertf
e533c36a54 Add locate.updatedb(8).
Discovered missing while sorting things out for BSDcertification.org.
Ran through wizd(8).
2005-10-05 06:29:03 +00:00
cube
b7505c1571 Stop walking the tree when two conditions are met: we've seen the device
already (one of its instances has been changed), and we have made no change
on any of the instances.

Previously, it stopped as soon as it detected the device had been seen.
While all the instances of the device at stake were eventually seen, the
same wasn't true for its children...

Fixes hpcmips's GENERIC.
2005-10-04 23:00:34 +00:00
cube
a31ff6b408 - Make sure to try aliases of removed device instances when walking
deaddevitab.
- Record the position in the config file of device instances so it is
  possible to tell if a device instance was declared before or after its
  parent's removal.

  E.g.:

     child* at parent?
     no parent

   will have the child instance ignored as an explicit orphan, while

     no parent
     child* at parent?

   will error out because now the child instance is a real orphan.

  That let the POSTPONED_ORPHAN regression test pass.
2005-10-04 20:13:39 +00:00
cube
9ea755eb2f Remove extra new line. 2005-10-04 13:33:20 +00:00
cube
5ec393e9ef Add a flag to mark broken instances. That might happen when there is a
syntax error in the file, yet we want to somehow gracefully go on in order
to print out all the errors in the file, which means we have to take
special care with those structures.

Reported by Simon Burge in private mail.
2005-10-04 13:06:45 +00:00
cube
0dbd1c0e04 - Keep track of the file in which we find the device instance
- Introduce xwarn() for delayed warnings
- Use xerror() and xwarn() in fixdevis() to notify about orphans

That way the correct file is printed when listing orphaned devices.

Reported by Juergen Hannken-Illjes in private mail.
2005-10-04 12:35:00 +00:00
wiz
5219255abf getfsent(3) does not contain any information about the (nonexisting)
function getfstype(), so don't MLINK it. Remove getfstype from other
places that reference it too.

Noted by jmc@openbsd.
2005-10-03 14:56:32 +00:00
christos
180fd9f68f PR/31452: Zafer Aydogan: Show uptime in top display (written by Simon Burge) 2005-10-03 05:34:51 +00:00
cube
2fb411a123 Don't return immediately when detecting that a devbase has already been
seen:  aliases might have to be activated, too.  Fixes GENERIC of alpha
and amiga.
2005-10-02 21:22:56 +00:00
chs
9c47d944e4 optimize pool_caches similarly to how I optimized pools before:
split the single list of pool cache groups into three lists:
completely full, partially full, and completely empty.
use LIST instead of TAILQ where appropriate.
2005-10-02 17:29:31 +00:00
cube
895e5687a9 Allow 'maxusers' redefinition. 'maxusers 0' will cancel the existing
value and make config(1) use the machine-dependent default.
2005-10-02 00:18:09 +00:00
cube
7aa6070d4e o Keep track of negated devices in deaddevitab
o  Rework do_kill_orphans() to use that information and mark explicitely
   orphaned devices (i.e., the ones whose missing ancestor has been
   negated)
o  Make a distinction between erroneous orphans and explicit orphans.
   Error out on the former, ignore the later (but print a warning when -v
   is used)

Yes, now config(1) will actually stop if you comment out a parent.  That
should help people still hoping adjustkernel is relevant these days :)
2005-10-01 23:30:37 +00:00
christos
c05266af8a fix setmode error handling. 2005-10-01 20:23:54 +00:00
he
92c0ed8788 The nusers variable is actually a size_t, so print with %zd, not %d. 2005-10-01 13:33:21 +00:00
wiz
57f7dd924d Sort option descriptions. Use more macros. New sentence, new line.
Add missing .El.
2005-10-01 00:03:47 +00:00
cube
7b7c582a4f Introduce two new statements:
no device at <attachment>

     <attachment> can take two forms:  either numbered/wildcarded, in which
     case only exactly matching instances will be removed, or plain (with
     no number or wildcard), in which case all matching instances will be
     removed.

     When <attachment> is a plain interface attribute, all instances using
     that attribute (either directly or through an explicit device) will be
     removed.

     E.g.:
             auich* at pci? dev ? function ?
             audio0 at audiobus?
             audio1 at auich?
             audio* at auich0

             no device at auich0     -> removes audio*
             no device at auich?     -> removes audio1
             no device at auich      -> removes audio1 _and_ audio*
             no device at audiobus?  -> removes audio0
             no device at audiobus   -> removes audio0, audio1 and audio*

  no <device>

     As in the previous case, <device> can either be numbered/starred, in
     which case all exactly matching instances are removed, or plain, in
     which case all instances of the device are removed.

    E.g.: (continuing previous example)

             no audio* -> removes 'audio* at auich0'
             no audio  -> removes all audio instances
2005-09-30 22:51:46 +00:00
cube
c130d400ba Rework the way orphan device instances are handled. To achieve that, keep
track of instances attaching at root, and walk down the tree of active
device instances.  Then, all instances that are not marked active are
found as orphans.

Doing it that way allows us to simply ignore orphan devices, instead of
warning about them and still keep them in the configuration.  Now, orphaned
instances are considered as never having existed.

In the end, this allows 'no <device> at <attachment>' to be much more
efficient, as the user doesn't have to negate all descendents of the
instance s/he actually wants to negate.  Warnings are still emitted,
though.

While there, make official a side-effect of the previous lack of action
against orphaned instances:  config(1) used to warn about instances that
attach at a numbered device when no instance of that device with that
number existed, even though there was a starred instance of the device.

E.g. (provided by Alan Barrett):

    pciide* at pci? dev ? function ? flags 0x0000
    wdc0    at isa? port 0x1f0 irq 14 flags 0x00
    wdc1    at isa? port 0x170 irq 15 flags 0x00
    atabus* at ata?
    wd0     at atabus0 drive 0

With this commit, config(1) will no longer warn about 'wd0 at atabus0'.
2005-09-30 22:36:20 +00:00
christos
ae3dca21e8 Patches from Liam Foy to:
- Use realloc instead of allocating 1000 structures.
- Remove NUSERS nonsense. If this is kept, shouldn't
  who(1) comply with it too?
- Be consistent with who(1). Add two identical options
  from who(1). These are -q and -H.
- General Cleans:
	- Move globals into local scope
	- Re-write a macro to remove an uneccessary
	  variable.
	- Use UT_NAMESIZE.
	- Remove unecessary header etc.

And from me, KNF, pass lint.
2005-09-30 17:58:24 +00:00
wiz
179b01d905 Fix typo reported by David A. Holland in PR 31422. 2005-09-30 13:46:56 +00:00
rpaulo
b04eff3537 ANSIfy. de-P(). Syle nits. 2005-09-25 18:56:33 +00:00
rpaulo
ff2bab1c59 tcp_callrpc(): bring in the FreeBSD version of this call. It uses the
"new" rpc functions and works with IPv6.
2005-09-25 18:50:28 +00:00
elad
851adad0b8 Use crypto/rmd160.h. 2005-09-25 14:34:54 +00:00
elad
a375b7cdb7 Use crypto/rmd160.h. 2005-09-24 22:40:32 +00:00
christos
c4445bc71c rename osockaddr to talkd_sockaddr and use that instead. 2005-09-24 16:40:01 +00:00
perry
cb4a630e29 in several comments:
implizit -> implicit
  explizit -> explicit
2005-09-24 15:30:35 +00:00
christos
c9f5645213 use getgrnam_r; from Jon Nemeth 2005-09-21 12:24:11 +00:00
he
c8a9612d27 Initialize pw to placate -Wuninitialized for sh3. 2005-09-20 15:48:17 +00:00
mrg
1a05f328bc apply a patch from christian biere:
- if we have an open fd, use it instead and, eg, fstat(2), of the file name
and stat(2).
- signed/unsigned variable fixes
- misc. cleanup
2005-09-20 05:12:15 +00:00
wiz
f38e8b27b1 Sync usage with man page. 2005-09-19 22:43:21 +00:00
elad
f36ecf9e54 Document -k and -p.
Noted by wiz@, perry@.
2005-09-19 15:12:09 +00:00
elad
f6deb21161 Add -k key and -p password.
Slightly modified diff from V. Hari.
PR/15736.
2005-09-18 21:50:20 +00:00
elad
c8399f93d6 Fix buffer overflow. We don't really care about trimming the filename here.
PR/28739, from Michael Santos.
2005-09-17 19:18:31 +00:00
chs
7bdb7511a0 fix build problems with parallel make: always descend into the tools dir
and add some .WAITs to avoid deciding to build a tool again before
the previous instance finishes.
2005-09-17 16:52:02 +00:00
mrg
84cb5f3013 oops. fix previous by keeping the stat() inside #ifndef SMALL. pointed
out by dsl.
2005-09-15 18:51:33 +00:00
mrg
bdc7967496 in file_compress() always stat() the input file. this patch avoids
reading from uninitialised space as provided by John Hein in PR#28995.
2005-09-15 09:30:21 +00:00
mrg
5c0ab9e0af fix signed/unsigned mismatch reported by Christian Biere in PR#31180
using his provided patch.
2005-09-15 09:11:30 +00:00
rpaulo
caaefabc19 Don't print a warning about stale utmp{,x} entries if security.curtain
sysctl is equal to 1. We can still detect stale utmp entries if that
knob is off.
2005-09-15 00:58:49 +00:00
drochner
360dbbc86f make bpf stats #ifndef SMALL,
fixes build of x_netstat
2005-09-14 15:35:26 +00:00
wiz
2f0ee62bbb According to rwhod(8), file names are actually /var/rwho/whod.* 2005-09-12 18:35:32 +00:00
christos
e64d9da627 Rewrite a macro in order to eliminate an unused global variable (Liam Foy) 2005-09-12 16:16:23 +00:00
wiz
aa81fc094a Use better section header. From YOMURA Masanori in private mail. 2005-09-11 23:30:20 +00:00
wiz
a56a69295c Remove unneeded macro default arguments. From YOMURA Masanori in private mail. 2005-09-11 23:29:44 +00:00
wiz
013b8f4ef7 Use .Nm instead of the verbose program name. From YOMURA Masanori in private mail. 2005-09-11 23:28:55 +00:00
wiz
17d58c1431 Argument is address_family, not "address family". From YOMURA Masanori in private mail. 2005-09-11 23:26:35 +00:00
wiz
2e504179eb Mark up authors with .An. From YOMURA Masanori in private mail. 2005-09-11 23:26:14 +00:00
wiz
30fa9d9a04 Mark up authors with .An. From YOMURA Masanori in private mail.
While here, replace Xrefs to itself with .Nm.
2005-09-11 23:25:32 +00:00
wiz
3c0c4bb078 Fix typos in file names. From YOMURA Masanori in private mail. 2005-09-11 23:23:56 +00:00
wiz
9a30a26518 We have spell again, xref it. From YOMURA Masanori in private mail. 2005-09-11 23:22:03 +00:00
wiz
b5e0c3219f Punctuation fix. From YOMURA Masanori in private mail. 2005-09-11 23:20:12 +00:00
wiz
ad44d18838 Argument is address_family, not "address family". From YOMURA Masanori in private mail. 2005-09-11 23:19:27 +00:00
wiz
60bf82edce Fix Xref. End sentence with a dot. From YOMURA Masanori in private mail. 2005-09-11 23:18:42 +00:00
wiz
c825c1ecf5 When marking up "C", use .Tn consisntently. From YOMURA Masanori in private mail. 2005-09-11 23:17:34 +00:00
wiz
2ae4fd55cf It is "home_dir:shell", not "home_dir_shell". From YOMURA Masanori in private mail. 2005-09-11 23:16:15 +00:00
wiz
01d8cf4ba8 Use more markup. From YOMURA Masanori in private mail.
While here: new sentence, new line; |fmt; s/.br/.Pp/
2005-09-11 23:15:20 +00:00
wiz
3025498c62 Use correct macro. From YOMURA Masanori in private mail. 2005-09-11 23:11:48 +00:00
wiz
775247d100 Punctuation nits. 2005-09-10 22:14:52 +00:00
jmmv
ec93365612 Initial addition of tmpfs, an efficient memory file-system. This project
was developed as part of Google's Summer of Code 2005 program.  This
change adds the kernel code, the mount_tmpfs utility, a regression test
suite and does all other related changes to integrate these.

The file-system is still *experimental*.  Therefore, it is disabled by
default in all kernels.  However, as typically done, a commented-out
entry is added in them to ease its setup.

Note that I haven't commited the required mountd(8) changes to be able
to export tmpfs file-systems because NFS support is still very unstable
and because, before enabling it, I'd like to do some other changes.

OK'ed by my project mentor, William Studenmund (wrstuden@).
2005-09-10 19:20:48 +00:00
martin
6fd5c01546 Move package/cinclude/include handling from the parser to the scanner,
where it belongs. This has the side effect of fixing PR toolchain/30903.
2005-09-10 15:38:46 +00:00
blymn
9e306bafdf Remove message when no tape drives found 2005-09-10 11:10:21 +00:00
rpaulo
d900564544 PR misc/31280: man 8 modstat is referencing itself. By Stefan Schumacher. 2005-09-09 22:47:26 +00:00
wiz
685850e192 Grammar fix. 2005-09-09 20:27:26 +00:00
aymeric
377bb2d9d8 bump to nb15:
. we now handle ^C correctly in all cases
. blanks and alnum chars are ignored in the shellmeta option, as the code
  brokenly said it should
. \ can be used to escape any (special) character in file names
2005-09-06 21:54:10 +00:00
aymeric
44208cd8f1 In argv_exp3() where we cut a line into args, check for '\' as the escape
character instead of using the IS_ESCAPE() macro which tests for ^V because the
former is mandated by the standards, and the latter is insane.
This is a very small part in addressing PR bin/26046 by lukem@.
Before, in order to escape a special character, you had to use a literal ^V,
which is type ^V twice before the character; whereas now, you use \.
Because the fix will remain partial for a while, you have to remove \ from
your shellmeta option otherwise the \ is swallowed by the invoked shell that
handles arguments expansion.
Please complain if you want ^V^V to also work, but please don't call me a
heretic.
2005-09-06 21:50:51 +00:00
aymeric
3065f3379c From code inspection, nvi had the undocumented and non-working functionality
of ignoring alphanumerical and blank characters from the shellmeta option.
The former code was using a character pointed to by a pointer as a boolean
to check whether to enable this functionality, but in the meantime the pointer
was used for something else. Introduce a variable for this boolean so that
the functionality actually works.
2005-09-06 21:36:10 +00:00
aymeric
0eceae0438 Finally handle ^C the correct way. This indeed requires to separate the case
of text-recording input (usually text in insert mode) from the other cases
(e.g. ex command input). If recording, morph to escape key so that the input
is correctly finished for a potential replay; if not, simply bail out and
notify that something wrong occurs. Callers will cope.
The previous fix could make ^C sometimes produce a file completion
or a command edition, depending on the settings of the user.
I think this is the correct fix for since closed PR bin/11544 by pooka@. ;-)
2005-09-06 21:30:36 +00:00
aymeric
68d2948889 when reading an ex command within visual mode with v_tcmd(), check that
the termination value of v_tcmd() is alright. Abort the command otherwise.
Until the next commit in vi/v_txt.c, this is a noop.
2005-09-06 21:21:25 +00:00
hubertf
105b456cb7 Mention pwhash(1) in a few places,
suggested in PR 31125 by Stefan Schumacher.
2005-09-05 03:37:14 +00:00
elad
cf3a38f563 Revert previous commit. I forgot we already do that. :) 2005-09-04 21:18:33 +00:00
elad
e93911118f Use sysctl to fetch process information if reading live kernel. 2005-09-04 19:02:08 +00:00
elad
4c70438790 Use sysctl to fetch AF_LOCAL PCB lists if reading live kernel. 2005-09-04 18:59:57 +00:00
rpaulo
f20c174719 Place the sysctl code under an if block and print an error message if the
user tries to fetch information via kvm.

Discussed with Elad Efrat.
2005-09-02 22:52:24 +00:00
rpaulo
d65009381e Request process information using sysctl(3) and not kvm(3) since bpf(4)
statistics and peers are only available using the former.
2005-09-02 22:23:13 +00:00
elad
6383828527 Avoid defining max. hash length ugliness simply by passing NULL for the
buffer to the File routines.

Noted by pooka@.
2005-09-02 17:39:23 +00:00
elad
871155c6cf Forgot +1 for NUL termination. 2005-09-02 16:52:34 +00:00
elad
50b96d774b Use MAXHASHLEN to indicate largest possible hash.
Fixes buffer overflow found by xtraeme@.
2005-09-02 16:52:03 +00:00
rpaulo
95abecf761 We already pass WARNS=3. 2005-09-01 18:27:24 +00:00
drochner
9b39088e5c id(1) didn't check the return value of getgrouplist(3) and used memory
outside the group array in the case that a user is member of more than
_SC_NGROUPS_MAX groups.
(This is probably also the problem behind PR bin/31069 by Zafer Aydogan.)
So check the return value and retry with sufficiently allocated memory
in case the initial _SC_NGROUPS_MAX groups are not enough.
2005-08-30 16:47:47 +00:00
rpaulo
c5a8fe81ae Use net.inet6.{ip6,udp6,pim6,raw6}.stats for live systems.
Reviewed by Elad Efrat.
2005-08-28 21:06:57 +00:00
rpaulo
51345e62d3 Use net.inet6.tcp6.pcblist, net.inet6.tcp6.stats (not implemented yet) and
net.inet6.icmp6.stats if we are gathering information from a live system.

Reviewed by Elad Efrat.
2005-08-28 16:12:35 +00:00
mrg
cde2923d5b avoid an infinite loop while decompressing invalid gzip files.
some minor CSE.  compare stat return value consistently.

thanks to tron for testing the first change.
2005-08-28 10:17:50 +00:00
christos
efc9df200f PR/31077: Wil L: /usr/bin/make can read off of end of buffer 2005-08-27 08:04:26 +00:00
rpaulo
e606ac2d9a PR bin/31068: whatis doesn't find /bin/[ by Zafer Aydogan.
Patch provided by Jukka Salmi. I just added a comment.
2005-08-25 16:29:15 +00:00
drochner
f46880afbf in locators.h, also emit definitions about the number of locators per
interface attribute
2005-08-25 15:02:18 +00:00
drochner
0d6cb6f10c Replace the "locnames", attached to cfdata, which was solely good for
userconf, by more complete information (including default values) about
interface attributes, attached to the drivers which provide them.
2005-08-25 15:01:07 +00:00
tron
a73f6299d6 Fix host tool build which got broken when SHA2 support was added. 2005-08-25 09:51:23 +00:00
rpaulo
fcf2b555d7 If the specificed MIB doesn't exist, then it's probably a kernel without
that socket type (AF_INET, AF_INET6, etc.). That's a normal condition, so
don't bail out.

Reviewed by Andrew Brown.
2005-08-24 21:33:57 +00:00
rpaulo
f16cc5d95a Don't break each name in the AUTHORS section. 2005-08-24 21:31:45 +00:00