| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
Notes:
svn path=/head/; revision=37515
|
| |
|
|
| |
Notes:
svn path=/head/; revision=37513
|
| |\
| |
| |
| |
| |
| |
| | |
which included commits to RCS files with non-trunk default branches.
Notes:
svn path=/head/; revision=37511
|
| | |
| |
| |
| |
| |
| |
| | |
Obtained from: NetBSD (author: Klaus Klein)
Notes:
svn path=/vendor/NetBSD/dist/; revision=37510
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
more cleanly integrated with stdio. This should be faster and cleaner
since it doesn't memcpy() the data into a seperate buffer. This lets
stdio allocate and manage the buffer and then hand it over to the user.
Obtained from: Todd Miller <Todd.Miller@courtesan.com> via OpenBSD
Notes:
svn path=/head/; revision=37487
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
references sp. The free needs to follow ISSET
PR: 7148
Reviewed by: phk
Submitted by: Ken Mayer <kmayer@freegate.com>
Notes:
svn path=/head/; revision=37349
|
| | |
| |
| |
| | |
Notes:
svn path=/head/; revision=37319
|
| | |
| |
| |
| | |
Notes:
svn path=/head/; revision=37301
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
compatible. I think small negative uids are handled compatibly but
other out of bounds ones are truncated differently for certain sizes of
uid_t.
Notes:
svn path=/head/; revision=37300
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
Obtained from: partial merge of ADO version tzcode96h (was fully merged
in 1.10 but backed out in 1.11; the FreeBSD code for %s
was earlier, prettier but buggier).
Notes:
svn path=/head/; revision=37299
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
PR: 7009
Obtained from: http://www.sleepycat.com/update/patch.185.html, patches 1.2,
1.3 and 1.4
Notes:
svn path=/head/; revision=37155
|
| | |
| |
| |
| |
| |
| |
| | |
errno during a successful malloc() call.
Notes:
svn path=/head/; revision=37048
|
| | |
| |
| |
| |
| |
| |
| |
| | |
so much a "fix", rather a bandaid to buy time to fix it properly
within the thread engine.
Notes:
svn path=/head/; revision=36967
|
| | |
| |
| |
| | |
Notes:
svn path=/head/; revision=36962
|
| | |
| |
| |
| | |
Notes:
svn path=/head/; revision=36919
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
getXXXXbyYYYY() interfaces yet.
Obtained from: diff relative to bind-8.1.2 sources
Notes:
svn path=/head/; revision=36891
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
friend shmget().
PR: closes misc/6763
Notes:
svn path=/head/; revision=36859
|
| | |
| |
| |
| | |
Notes:
svn path=/head/; revision=36854
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
copy to bring these files into libc from libcompat. I will enable
them and kill off the libcompat versions on the main branch soon.
PR: step one toward closing misc/6763
Notes:
svn path=/head/; revision=36836
|
| | |
| |
| |
| | |
Notes:
svn path=/head/; revision=36825
|
| | |
| |
| |
| | |
Notes:
svn path=/head/; revision=36824
|
| | |
| |
| |
| | |
Notes:
svn path=/head/; revision=36823
|
| | |
| |
| |
| | |
Notes:
svn path=/head/; revision=36822
|
| | |
| |
| |
| | |
Notes:
svn path=/head/; revision=36821
|
| | |
| |
| |
| |
| |
| |
| | |
to destroy the RPC CLIENT handle before returning.
Notes:
svn path=/head/; revision=36816
|
| | |
| |
| |
| | |
Notes:
svn path=/head/; revision=36808
|
| | |
| |
| |
| | |
Notes:
svn path=/head/; revision=36807
|
| | |
| |
| |
| |
| |
| |
| | |
to avoid recursive locking.
Notes:
svn path=/head/; revision=36806
|
| | |
| |
| |
| | |
Notes:
svn path=/head/; revision=36805
|
| | |
| |
| |
| | |
Notes:
svn path=/head/; revision=36804
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
Simplify the atomic lock prototype, removing the lock value.
Delete the unlock prototypes that are not required.
Notes:
svn path=/head/; revision=36803
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
Also be consistent about usage of #if ...
Pointed out by: bde
Notes:
svn path=/head/; revision=36706
|
| | |
| |
| |
| |
| |
| |
| |
| | |
PR: 6868
Submitted by: Josh Gilliam <josh@quick.net>
Notes:
svn path=/head/; revision=36692
|
| | |
| |
| |
| |
| |
| |
| | |
Pointed out by: Sue Blake <sue@welearn.com.au>
Notes:
svn path=/head/; revision=36688
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
Misc. cleanup
PR: 6825
Submitted by: Sergey Gershtein <sg@mplik.ru>
Notes:
svn path=/head/; revision=36665
|
| | |
| |
| |
| | |
Notes:
svn path=/head/; revision=36664
|
| | |
| |
| |
| |
| |
| |
| |
| | |
PR: 6856
Submitted by: Josh Gilliam <josh@quick.net>
Notes:
svn path=/head/; revision=36649
|
| | |
| |
| |
| |
| |
| |
| |
| | |
PR: 4043
Submitted by: Joe Orthoefer <j_orthoefer@tia.net>
Notes:
svn path=/head/; revision=36603
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
available and the kernel MIB setting is zero.
Return the result from getpagesize() if the p1003_1b.pagesize MIB
value is zero.
Suggested by: Joerg Schilling <schilling@fokus.gmd.de>
Notes:
svn path=/head/; revision=36577
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
parameter is optional except where:
cmd == {IPC_SET || IPC_STAT || GETALL || SETVAL || SETALL}
PR: 2448
Reviewed by: bde
Submitted by: Tim Singletary <tsingle@sunland.gsfc.nasa.gov>
Minor tweaks by: steve
Notes:
svn path=/head/; revision=36482
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
as it has its own manpage.
Discussed with: bde
Notes:
svn path=/head/; revision=36474
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
slipped in on the previous commit.
Submitted by: bde
Notes:
svn path=/head/; revision=36388
|
| | |
| |
| |
| | |
Notes:
svn path=/head/; revision=36381
|
| | |
| |
| |
| |
| |
| |
| |
| | |
also exists here (the timeout can expire much sooner than it's supposed
to).
Notes:
svn path=/head/; revision=36280
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
size we receive here should fit into the receive buffer. Unfortunately,
there's no 100% foolproof way to distinguish a ridiculously large record
size that a client actually meant to send us from a ridiculously large
record size that was sent as a spoof attempt.
The one value that we can positively identify as bogus is zero. A
zero-sized record makes absolutely no sense, and sending an endless
supply of zeroes will cause the server to loop forever trying to
fill its receive buffer.
Note that the changes made to readtcp() make it okay to revert this
sanity test since the deadlock case where a client can keep the server
occupied forever in the readtcp() select() loop can't happen anymore.
This solution is not ideal, but is relatively easy to implement. The
ideal solution would be to re-arrange the way dispatching is handled
so that the select() loop in readtcp() can be eliminated, but this is
difficult to implement. I do plan to implement the complete solution
eventually but in the meantime I don't want to leave the RPC library
totally vulnerable.
That you very much Sun, may I have another.
Notes:
svn path=/head/; revision=36257
|
| | |
| |
| |
| | |
Notes:
svn path=/head/; revision=36165
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
uses readtcp() to gather data from the network; readtcp() uses select(),
with a timeout of 35 seconds. The problem with this is that if you
connect to a TCP server, send two bytes of data, then just pause, the
server will remain blocked in readtcp() for up to 35 seconds, which is
sort of a long time. If you keep doing this every 35 seconds, you can
keep the server occupied indefinitely.
To fix this, I modified readtcp() (and its cousin, readunix() in svc_unix.c)
to monitor all service transport handles instead of just the current socket.
This allows the server to keep handling new connections that arrive while
readtcp() is running. This prevents one client from potentially monopolizing
a server.
Also, while I was here, I fixed a bug in the timeout calculations. Someone
attempted to adjust the timeout so that if select() returned EINTR and the
loop was restarted, the timeout would be reduced so that rather than waiting
for another 35 seconds, you could never wait for more than 35 seconds total.
Unfortunately, the calculation was wrong, and the timeout could expire much
sooner than 35 seconds.
Notes:
svn path=/head/; revision=36156
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
self reference in sigaction(2) man page.
Submitted by: Josh Gilliam <josh@quick.net>
PR: 6617
Notes:
svn path=/head/; revision=36143
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
recently in BUGTRAQ. The set_input_fragment() routine in the XDR record
marking code blindly trusts that the first two bytes it sees will in fact
be an actual record header and that the specified size will be sane. In
fact, if you just telnet to a listening port of an RPC service and send a
few carriage returns, set_input_fragment() will obtain a ridiculously large
record size and sit there for a long time trying to read from the network.
A sanity test is required: if the record size is larger than the receive
buffer, punt.
Notes:
svn path=/head/; revision=36087
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
recently in BUGTRAQ. If a stream oriented transport fails to properly decode
an RPC message header structure where there should be one, it should mark
the stream as dead so that the connection will be dropped.
Notes:
svn path=/head/; revision=36086
|