Disable RPC exponential back-off for FreeBSD.org systems (IE. hidden
behind _FREEFALL_CONFIG). This is done mainly to make NIS even more
resistant to packet loss.
This is not enabled by default for "normal" FreeBSD since it might cause
the server providing the RPC service to be hit heavily with RPC traffic
in case of problems. freefall.FreeBSD.org and hub.FreeBSD.org have been
running with a patch similar to this for a couple of weeks.
MFC after: 1 week
Discussed with: peter
- Bump _yplib_timeout limit from 10 to 20 seconds to better handle
packet loss when talking to a NIS server.
- Set 1 second retry timeout to further realistically handle UDP
packet loss for yp_next packet bursts. If the packet hasn't come
back within 1 second its rather unlikely to come back at all. There
is still back-off mechanism in RPC so if there is another reason
than packet loss for the lack of response within 1 second, the NIS
server will not be totally bombarded with requests.
This reduces the risk of NIS failing with:
yp_next: clnt_call: RPC: Timed out
considerably. This is mainly a problem if you have larger NIS maps
(like at FreeBSD.org) since enumerations of the lists will cause a UDP
packet bursts where a few packets being lost once in a while do
happen.
Discussed with: peter
Problem mainly diagnosed by: peter
Don't reference a NULL pointer.
MFC archive_read_support_compression_none.c rev. 1.14:
Print off_t by casting to intmax_t and using %jd.
Ask the client skipper to handle requests > SSIZE_MAX if the API works.
the following:
* License updates.
* Fixes for FreeBSD/arm
* New read_open_filename, read_open_memory
* New write_open_filename, write_open_memory
* Write-blocking cleanup (cperciva@)
* Adjust API so read_open/write_open funcs only need public API
* Portability improvements (casts, include guards, etc.)
* Properly pad sparse archive entries with blocks of zero bytes (cperciva@)
* Correct copy of data to file when very large reads are possible
* Be more flexible about dir permissions to avoid some fixups
* Correct skip handling for entries over 2G (cperciva@)
* ISO9660: skip entries faster, support entries over 2G
* Tar: correct position accounting when skipping large entries (cperciva@)
* Support unbuffered write as a special case (blocksize=0) (cperciva@)
* Documentation corrections, improvements
* Spelling corrections (cperciva@)
* Improve some internal error returns
A few of these changes break the API/ABI and are therefore conditional
on the version number. FreeBSD 6 will continue to use libarchive 1.x,
which will continue to use the old API/ABI. When all of these changes
are ready, the libarchive version number will be changed in -CURRENT
to enable the new API. Hopefully, this will allow the actual source
to remain identical between FreeBSD 6 and 7; only the version
parameters in the Makefile will be different.
Fix a typo in __fpu_ftox() that caused long double to long (and long long)
conversion of negative numbers to always result in -1.
While at it, rearrange the nearby comment so it fits in 80 chars per line,
like the rest of this file does.
PR: 107130
Previous history of ldexpf()'s existence in FreeBSD:
2005/03/07 s_scalbnf.c 1.8: first implemented (for all arches)
i387 s_scalbnf.S 1.1: i386 MD implementation at same time
2005/04/16 amd64 s_scalbnf.S 1.1: missing here, and thus missing for amd64
2005/09/12 amd64 s_scalbnf.S 1.2: fixed in -current
2005/12/06 e_scalbnf.c 1.10: misimplemented for all arches (accidentally has
no effect except for amd64)
2006/07/05 e_scalbnf.c 1.11: backed out misimplementation
2006/07/05 e_scalbnf.c 1.12: attempt to fix log message in 1.11
The log message in e_scalbnf.c 1.12 still got the main detail wrong.
1.10 actually succeeded in misimplementing ldexpf() for amd64 only,
since for amd64 only there is no strong reference to hide the broken
weak reference. For most arches, there is a strong reference in
s_scalbnf.c; for i386, there is a strong reference in s_scalbnf.S; for
amd64 there is supposed to be a strong reference in s_scalbnf.S but
it was missing.
So the problem mainly affected all versions of RELENG_6 on amd64. -current
has ldexpf() and versions before 6.0 aren't supposed to have it.
Debugging completed by: Kael Fischer, Steve Kargl
Document return values for res_query and res_search.
h_errno is not an extern int, just a macro providing an integer lvalue.
PR: doc/50573
Submitted by: Ronald F.Guilmette <rfg at monkeys.com>
Reviewed by: trhodes
Approved by: re (bmah)
o Note the value from getenv() should not be modified by applications[1];
o getenv.3: Put "is" on a line with other words. [2]
o getobjformat.3: "takes precedence over" is not an envrionment variable. [2]
[1]: PR: 60544 Reviewed by: ru
[2]: PR: 75545 Submitted by: n-kogane@syd.odn.ne.jp
Approved by: re (hrs)