ed [Sun, 14 Jun 2009 18:01:35 +0000 (18:01 +0000)]
Enable PRINTF_BUFR_SIZE on i386 and amd64 by default.
In the past there have been some reports of PRINTF_BUFR_SIZE not
functioning correctly. Instead of having garbled console messages, we
should just see whether the issues are still there and analyze them.
rmacklem [Sun, 14 Jun 2009 17:33:46 +0000 (17:33 +0000)]
When the KOBJMETHOD() macro was updated, it resulted in the
compiler doing argument type checking. Since the prototypes in
kgss_if.h used the generic gss_ctx_id_t for the context argument,
but the functions in sys/kgssapi/krb5/krb5_mech.c used the
KerberosV specific context argument, the file would no longer build.
This patch fixes it so it will build by replacing the argument with
a gss_ctx_id_t one and setting a local "struct krb5_context *" variable
to it for use by the function.
bz [Sun, 14 Jun 2009 17:15:18 +0000 (17:15 +0000)]
Add an optional callback function that will be invoked when a per-CPU
queue was drained. It will never fire for a directly dispatched packet.
You will most likely never want to use this for any ordinary netisr usage
and you will never blame netisr in case you try to use it and it does
not work as expected.
ed [Sun, 14 Jun 2009 17:00:35 +0000 (17:00 +0000)]
Fix the staircase issue properly this time.
Even though I thought this bug was somewhere in the TTY layer, it turns
out init(8) doesn't make sure /dev/console is opened initially properly.
I've added revoke() to two pieces of code:
- death(): Apart from killing the gettys on shutdown, this doesn't
guarantee the TTY to be closed immediately.
- runshutdown(): Just like setctty(), we should revoke /dev/console.
Applications like syslogd may have file descriptors to the console.
ed [Sun, 14 Jun 2009 12:04:34 +0000 (12:04 +0000)]
Add more entries to the Unicode-to-CP437 table.
Characters between 0x07 and 0x0d are now also mapped, which means we can
display almost 256 different characters. Also remap certain types of
dashes and quotes, which means we can finally read our manual pages
without red question marks in them.
edwin [Sun, 14 Jun 2009 07:02:50 +0000 (07:02 +0000)]
Add missing passthrough printing entries for VT100 and workalikes
in /etc/termcap:
VT100 spec indicates that passthrough printing can be enabled
by sending ESC[5i and disabled by sending ESC[4i These entries
should be listed as po and pf in /etc/termcap, but are absent.
See http://www.vt100.net/docs/vt102-ug/chapter5.html#S5.5.2.23
edwin [Sun, 14 Jun 2009 04:03:18 +0000 (04:03 +0000)]
Add missing terminal definition for Wyse 120 in termcap
Although the PR contains also the definitions of the Wyse 60, they
are not copied into it since there are already definition for them
in the termcap file since 1997.
Also, the PR didn't use the :tc=xxx: feature, so I've imploded them.
PR: conf/81882
Submitted by: Meister des Chaos <meister@netz00.com>
MFC after: 1 week
edwin [Sun, 14 Jun 2009 03:34:54 +0000 (03:34 +0000)]
Add missing termcap entry for rxvt-unicode.
The termcap database does not have an entry for rxvt-unicode.
This means that programs that need an entry such as vi fail
to work when connecting via ssh using this terminal emulator.
The added data is not the same as the PR submitted by Richard, it
uses the :tc=xxx: option to inherit everything from rxvt-mono.
edwin [Sun, 14 Jun 2009 03:29:14 +0000 (03:29 +0000)]
Tool to compare two (roughly similar) termcap entries (like rxvt-mono
and rxvt-unicode) so see which fields should don't need to be copied
if the :tc=xxx: option is used.
imp [Sun, 14 Jun 2009 02:58:56 +0000 (02:58 +0000)]
After Marcel's change to DEFAULTS, we were bringing in a bogus copy of
uart_8250. Remove it here since the UART on the ADM5120 isn't the
typical 16550: its completely different.
sam [Sat, 13 Jun 2009 23:43:00 +0000 (23:43 +0000)]
Rev IEEE80211_IOC_STA_INFO abi: ni_flags grew from 16 bits to 32
bits but isi_state did not follow; expand it to 32 bits and pad to
maintain alignment. Note this is an incompatible change that
requires rebuilding of user applications.
marius [Sat, 13 Jun 2009 23:27:04 +0000 (23:27 +0000)]
- Also probe DP83865, which is an is an ultra low power version
of the DP83861 and DP83891.
- Reset the PHY during attach so it's in a known state.
- Add a comment describing why we hardwire 10baseT support in
the BMSR.
- Always explicitly set IFM_HDX for half-duplex. [1]
rmacklem [Sat, 13 Jun 2009 23:16:40 +0000 (23:16 +0000)]
When a Solaris10 client does an NFS mount using krb5i or krb5p, the
server would crash because the Solaris10 client would attempt to use
Sun's NFSACL protocol, which FreeBSD doesn't support. When the server
generated the error reply via svcerr_noprog(), it would cause a crash
because it would try and wrap a NULL reply. According to RFC2203, no
wrapping is required for error cases. This one line change avoids
wrapping of NULL replies.
jilles [Sat, 13 Jun 2009 21:17:45 +0000 (21:17 +0000)]
Avoid leaving unnecessary waiting shells in many forms of sh -c COMMAND.
This change only affects strings passed to -c, when the -s
option is not used.
The approach is to check if there may be additional data
in the string after parsing each command. If there is none,
use the EV_EXIT flag so that a fork may be omitted in
specific cases.
If there are empty lines after the command, the check will
not see the end and forks will not be omitted. The same
thing seems to happen in bash.
Example:
sh -c 'ps lT'
No longer shows a shell process waiting for ps to finish.
PR: bin/113860
Reviewed by: stefanf
Approved by: ed (mentor)
alc [Sat, 13 Jun 2009 18:35:29 +0000 (18:35 +0000)]
Correct the method of waking the page daemon when the number of allocated
pv entries surpasses the high water mark. The problem was that the page
daemon would only be awakened the first time that the high water mark was
surpassed. (The variable "pagedaemon_waken" is a non-working vestige of
FreeBSD 4.x, in which it was external and reset by the page daemon whenever
it ran. This reset allowed subsequent wakeups by the pv entry allocator.)
jamie [Sat, 13 Jun 2009 15:39:12 +0000 (15:39 +0000)]
Rename the host-related prison fields to be the same as the host.*
parameters they represent, and the variables they replaced, instead of
abbreviated versions of them.
ed [Sat, 13 Jun 2009 12:23:31 +0000 (12:23 +0000)]
Make the proof-of-concept UTF-8 support in Syscons less useless.
Add a small Unicode-to-CP437 remapping table to at least demonstrate
that the terminal emulator is perfectly capable of handling UTF-8. This
will of course break if the user loads a different font map, but it at
least allows people to give it a try.
I can now see the box drawing in dialog(1) and the arrows in mutt(1)
correctly.
des [Sat, 13 Jun 2009 00:13:44 +0000 (00:13 +0000)]
Make the debugging macros expand to (void)0 instead of simply nothing
when debugging is turned off.
Rename debugging functions due to namespace violation.
edwin [Fri, 12 Jun 2009 23:43:19 +0000 (23:43 +0000)]
Fix typo in cons25l7 definition in etc/termcap.small and share/termcap
There is a minor typo in the cons25l7 (':' instead of '|') entry
in src/etc/termcap.small that causes syscons to complain about
bogus characters in /etc/termcap.db.
edwin [Fri, 12 Jun 2009 23:15:36 +0000 (23:15 +0000)]
Fix printing of some wide-characters by iswprint() on ja_JP.eucJP
and ja_JP.SJIS locale
The iswprint() function does not return non-zero if used for
some wide-character that it code was 0x824f-0x8258 on ja_JP.SJIS
and 0xa3b0-0xa3b9 on ja_JP.eucJP locale. But those are right
Japanese wide-character code.
edwin [Fri, 12 Jun 2009 22:53:49 +0000 (22:53 +0000)]
Add various new keymaps:
addition: danish syscons keymap with accents
There are two danish keymap files shipping with FreeBSD:
danish.iso.kbd and danish.cp865.kbd. None of these support
accents by use of dead keys, which isn't crucial to Danes but
often used. This is a new keymap, danish.iso.acc.kbd, that's
based on danish.iso.kbd with the accent part taken from
german.iso.acc.kbd.
pl_PL.dvorak keymap for syscons.
Polish dvorak keymap by Robert Sebastian Gerus (17:05 01-07-2006
CEST) <arachnist@gmail.com>. Based on pl_PL.ISO-8859-2 and
us.dvorak keymaps.
British English Dvorak keymap for syscons.
Attached is a Dvorak keymap for British English, with a
pound-sterling symbol on on Shift-3 and some other characters
in different places to the US Dvorak keymap. I've based the
layout on the X.org GB keymap, Dvorak variant.
PR: conf/72978, kern/99692, conf/117257
Submitted by: Kim Norgaard <jasen@jasen.dk>, Robert Sebastian Gerus <arachnist@gmail.com>, "Benjamin A'Lee" <bma@subvert.org.uk>
MFC after: 1 week
ed [Fri, 12 Jun 2009 21:21:17 +0000 (21:21 +0000)]
Revert my previous change, because it reintroduces an old regression.
Because our rc scripts also open the /etc/ttyv* nodes, it revokes the
console, preventing startup messages from being displayed.
I really have to think about this. Maybe we should just give the console
its own TTY and let it build on top of other TTYs. I'm still not sure
what to do with input handling there.
bz [Fri, 12 Jun 2009 20:46:36 +0000 (20:46 +0000)]
Move the kernel option FLOWTABLE chacking from the header file to the
actual implementation.
Remove the accessor functions for the compiled out case, just returning
"unavail" values. Remove the kernel conditional from the header file as
it is no longer needed, only leaving the externs.
Hide the improperly virtualized SYSCTL/TUNABLE for the flowtable size
under the kernel option as well.
ed [Fri, 12 Jun 2009 20:29:55 +0000 (20:29 +0000)]
Prevent yet another staircase effect bug in the console device.
Even though I thought I fixed the staircase issue (and I was no longer
able to reproduce it), I got some reports of the issue still being
there. It turns out the staircase effect still occurred when
/dev/console was kept open while killing the getty on the same TTY
(ttyv0).
For some reason I can't figure out how the old TTY code dealt with that,
so I assume the issue has always been there. I only exposed it more by
merging consolectl with ttyv0, which means that the issue was present,
even on systems without a serial console.
I'm now marking the console device as being closed when closing the
regular TTY device node. This means that when the getty shuts down,
init(8) will open /dev/console, which means the termios attributes will
always be reset in this case.
marcel [Fri, 12 Jun 2009 20:00:38 +0000 (20:00 +0000)]
Move the memory layout definitions and logic from mvreg.h to mvwin.h
so that it isn't exposured unless needed. In particular this means
that it's easier to tune the memory layout based on board details.
While here, remove inclusion of <machine/intr.h> from mvreg.h. This
also contains exposure to SoC specifics in MI drivers, because NIRQ
depends on the SoC.
thompsa [Fri, 12 Jun 2009 16:07:06 +0000 (16:07 +0000)]
Cleanup claim/release interface code, which is specific to libusb v0.1. Remove
claim and release interface support from libusb v2.0, because it is not useful.
vanhu [Fri, 12 Jun 2009 15:44:35 +0000 (15:44 +0000)]
Added support for NAT-Traversal (RFC 3948) in IPsec stack.
Thanks to (no special order) Emmanuel Dreyfus (manu@netbsd.org), Larry
Baird (lab@gta.com), gnn, bz, and other FreeBSD devs, Julien Vanherzeele
(julien.vanherzeele@netasq.com, for years of bug reporting), the PFSense
team, and all people who used / tried the NAT-T patch for years and
reported bugs, patches, etc...
rmacklem [Fri, 12 Jun 2009 14:18:13 +0000 (14:18 +0000)]
Update the content of the nfsv4.4 man page to reflect the final
choice of variable names for rc.conf and option name for the
experimental server.
Also replace the inaccurate description of the nfsv4 root lines
in /etc/exports, mostly with a reference to exports(5).
zec [Fri, 12 Jun 2009 09:20:31 +0000 (09:20 +0000)]
Assign ng_eiface nodes a netgraph name on instantiation, in a way which
is consistent with the current behavior of ng_iface, i.e. borrow the
same naming code from ng_iface.c.
avg [Fri, 12 Jun 2009 09:05:23 +0000 (09:05 +0000)]
KOBJMETHOD: throw the switch on kobj method signature checking
It seems that current code should pass the check.
This commit should not lead to any changes in compiled code.
From now on a warning shall be produced if kobj method implementation
function has a mismatching signature.