11791 Commits

Author SHA1 Message Date
Tim Kientzle
8a4ce0fb38 MfP4: Joerg Sonnenberg's extensions to the mtree support for more
complete quoting.  In particular, this handles escaped newlines
and common C-style escapes.
2008-06-21 19:06:37 +00:00
Tim Kientzle
be5eb9821c A security-check failure here should be ARCHIVE_FAILED (cannot continue this
operation) and not ARCHIVE_WARN, since we don't actually open the file.
Both bsdtar and bsdcpio will try to copy file contents after an ARCHIVE_WARN,
which will fail loudly.
2008-06-21 19:05:29 +00:00
Poul-Henning Kamp
20067a6892 Add Xr to getsockname(2) 2008-06-20 14:47:06 +00:00
David Schultz
f2dc0faad0 Implement fmodl.
Document fmodl and fix some errors in the fmod manpage.
2008-06-19 22:39:53 +00:00
David Xu
8e9a8a6c78 Process spawn attributes in POSIX document order. 2008-06-19 02:42:50 +00:00
Ed Schouten
e3580e9d91 Don't export the unused __use_pts() routine.
The __use_pts() routine was once probably used by libutil to determine
if we are using BSD or UNIX98 style PTY device names. It doesn't seem to
be used outside grantpt.c, which means we can make it static and remove
it from the Symbol.map.

Reviewed by:	cognet, kib
Approved by:	philip (mentor)
2008-06-17 14:05:03 +00:00
David Xu
fdbeb80a2b Style fix. 2008-06-17 08:23:45 +00:00
Ed Schouten
d1b2bd213c Change my email address to the one from the FreeBSD project.
Approved by:	philip (mentor, implicit), davidxu
2008-06-17 07:09:58 +00:00
David Xu
947aa542e9 Add POSIX routines called posix_spawn() and posix_spawnp(), which
can be used as replacements for exec/fork in a lot of cases. This
change also added execvpe() which allows environment variable
PATH to be used for searching executable file, it is used for
implementing posix_spawnp().

PR: standards/122051
2008-06-17 06:26:29 +00:00
Tony Finch
0cf1d3bf73 Make it clearer that privilege is needed to reduce as well as
increase group membership.
2008-06-16 14:50:21 +00:00
Tim Kientzle
d984a6e000 Rework the my_mbtowc_utf8() support function to fully match the mbtowc()
calling convention, not the mbrtowc() convention.
2008-06-15 11:28:56 +00:00
Tim Kientzle
4a9c863c87 Since wctomb() returns int, temporaries should be int, not size_t. 2008-06-15 11:15:12 +00:00
Tim Kientzle
936d273c3a A number of minor corrections to the support for external compression
programs:
  * Support platforms that have fork() but not vfork()
  * Don't write(), select(), or poll() against closed file descriptors
2008-06-15 10:45:57 +00:00
Tim Kientzle
dff2641a67 Be a little more careful about closing file descriptors that may not exist. 2008-06-15 10:43:59 +00:00
Tim Kientzle
c8390967f2 MfP4: test harness improvements. 2008-06-15 10:35:22 +00:00
Tim Kientzle
8d86da5715 Fix a bad cast. 2008-06-15 10:26:08 +00:00
Tim Kientzle
bfc29cb4d3 Fix reading TOC from zip archives with unsupported
compression.  We can't read the body, but we
shouldn't try to skip the body twice.
2008-06-15 05:15:53 +00:00
Tim Kientzle
693f6cf97c Mark hardlinks that lack any other interesting filetype information
with an 'h'.
2008-06-15 05:14:01 +00:00
Tim Kientzle
a64ca54afc Portability: We can get away with the older and better-supported
wctomb() here; we don't need wcrtomb().  In particular, this fixes
libarchive building on FreeBSD 4.
2008-06-15 05:12:47 +00:00
Tim Kientzle
8dd058b03d Portability: wchar_t is defined in stdlib.h on some systems. 2008-06-15 05:11:08 +00:00
Tim Kientzle
f9fe0a0abb archive.h is no longer constructed from archive.h.in,
so we can rename it and drop some no-longer-necessary
build magic from the Makefile.
2008-06-15 05:05:53 +00:00
Tim Kientzle
546c9253a3 Fix the new generic link resolver in libarchive to never match
dirs as hardlinks.  In particular, this fixes some recent ports
build failures.

Thanks to: Kris Kennaway
2008-06-15 04:31:43 +00:00
Ed Schouten
45792eb9b8 Turn sgtty into a binary-only compatibility interface.
sgtty was the original interface to configure terminal attributes on my
UNIX-like operating systems. It has been deprecated by the POSIX termios
interface, which is implemented in almost any modern system.

An advantage of turning this into a binary compatibility interface, is
that we can now eventually remove the COMPAT_43TTY switch from kernel
configurations. This removes many ioctl()'s from the TTY layer.

While there, increase the __FreeBSD_version, which may be useful for the
people working on the Ports tree.

Reviewed by:	kib
Approved by:	philip (mentor)
2008-06-14 10:42:18 +00:00
Andrew Thompson
cbb0775d1a Fix spelling.
PR:		docs/124561
Submitted by:	Sam Banks
2008-06-13 21:49:21 +00:00
Wojciech A. Koszek
98fbfcd632 Bring missing getsockopt(2) options: SO_LABEL SO_PEERLABEL SO_LISTENQLIMIT
SO_LISTENQLEN SO_LISTENINCQLEN to the manual page.

Till now those were only present in sys/socket.h file.

Reviewed by:	rwatson, gnn, keramida (with mdoc hat)
2008-06-12 22:58:35 +00:00
Jason Evans
b1c8b30f55 In the error path through base_alloc(), release base_mtx [1].
Fix bit vector initialization for run headers.

Submitted by:	[1] Mike Schuster <schuster@adobe.com>
2008-06-10 15:46:18 +00:00
Colin Percival
7254457b50 Don't store a pointer in "next" if we're never going to use it.
Fix typo in checking results of strchr.

Found by:	Coverity Prevent
2008-06-09 14:44:56 +00:00
David Xu
83a0758789 Make pthread_cleanup_push() and pthread_cleanup_pop() as a pair of macros,
use stack space to keep cleanup information, this eliminates overhead of
calling malloc() and free() in thread library.

Discussed on: thread@
2008-06-09 01:14:10 +00:00
Doug Rabson
cd7d66a21f Call the fcntl compatiblity wrapper from the thread library fcntl wrappers
so that they get the benefit of the (limited) forward ABI compatibility.

MFC after: 1 week
2008-05-30 14:47:42 +00:00
David Xu
1b3418b2dc Eliminate global mutex by using pthread_once's state field as
a semaphore.
2008-05-30 00:02:59 +00:00
David Xu
850f4d66cb - Reduce function call overhead for uncontended case.
- Remove unused flags MUTEX_FLAGS_* and their code.
- Check validity of the timeout parameter in mutex_self_lock().
2008-05-29 07:57:33 +00:00
Doug Rabson
2da0808aec Make fcntl() a weak symbol so that it can be overridden by thread libraries.
MFC after: 2 days
2008-05-27 14:03:32 +00:00
Tim Kientzle
40715dc446 Minor code hardening: Verify the final bytes of the string
are actually accessible before trying to use them.
2008-05-27 04:46:12 +00:00
Tim Kientzle
a212de8851 Until the old archive.h.in gets renamed to archive.h in the repository,
we still need some Makefile trickery to ensure archive.h is
correctly built for the test harness.
2008-05-27 04:12:17 +00:00
Tim Kientzle
fa07de5eeb MFp4: libarchive 2.5.4b. (Still 'b' until I get a bit more
feedback, but the 2.5 branch is shaping up nicely.)

In addition to many small bug fixes and code improvements:
 * Another iteration of versioning; I think I've got it right now.
 * Portability:  A lot of progress on Windows support (though I'm
   not committing all of the Windows support files to FreeBSD CVS)
 * Explicit tracking of MBS, WCS, and UTF-8 versions of strings
   in archive_entry; the archive_entry routines now correctly return
   NULL only when something is unset, setting NULL properly clears
   string values.  Most charset conversions have been pushed down to
   archive_string.
 * Better handling of charset conversion failure when writing or
   reading UTF-8 headers in pax archives
 * archive_entry_linkify() provides multiple strategies for
   hardlink matching to suit different format expectations
 * More accurate bzip2 format detection
 * Joerg Sonnenberger's extensive improvements to mtree support
 * Rough support for self-extracting ZIP archives.  Not an ideal
   approach, but it works for the archives I've tried.
 * New "sparsify" option in archive_write_disk converts blocks of nulls
   into seeks.
 * Better default behavior for the test harness; it now reports
   all failures by default instead of coredumping at the first one.
2008-05-26 17:00:24 +00:00
Pawel Jakub Dawidek
037dab5792 Use _WANT_FILE to make struct file visible from userland. This is
similar to _WANT_UCRED and _WANT_PRISON and seems to be much nicer than
defining _KERNEL.
It is also needed for my sys/refcount.h change going in soon.
2008-05-26 15:12:47 +00:00
Robert Watson
e4372ceba0 Remove netatm from HEAD as it is not MPSAFE and relies on the now removed
NET_NEEDS_GIANT.  netatm has been disconnected from the build for ten
months in HEAD/RELENG_7.  Specifics:

- netatm include files
- netatm command line management tools
- libatm
- ATM parts in rescue and sysinstall
- sample configuration files and documents
- kernel support as a module or in NOTES
- netgraph wrapper nodes for netatm
- ctags data for netatm.
- netatm-specific device drivers.

MFC after:	3 weeks
Reviewed by:	bz
Discussed with:	bms, bz, harti
2008-05-25 22:11:40 +00:00
John Birrell
9445f413ee Relax the strict type check because gcc as distributed doesn't create
debug strtabs with type SHT_STRTAB. Although we could change FreeBSD's
gcc, we really need to play nicely with gcc as distributed by the FSF.
2008-05-23 07:35:36 +00:00
John Birrell
7d15d0a9c6 Change the alignment of the NOTE to match what gcc does. 2008-05-23 07:33:45 +00:00
John Birrell
c4607eb7ad Add the case for SHT_AMD64_UNWIND. 2008-05-23 07:32:19 +00:00
Colin Percival
b011a14a0a Check that lseek(2) succeeds and puts us where we expect. [1]
While we're here, fix a long-standing bug in the handling of write(2)
errors: The API changed from "return # of bytes written" to "return
status code" almost 4 years ago, so instead of returning (-1) we need
to return ARCHIVE_FATAL.

Found by:	Coverity Prevent [1]
2008-05-23 05:01:29 +00:00
Colin Percival
ca42a8e225 We only use the string "?rwxrwxrwx " once, so inline it rather than
declaring a variable which points to it.  Aside from eliminating a
line of code and one level of unnecessary indirection, this eliminates
a false positive in Coverity.
2008-05-23 04:57:28 +00:00
John Birrell
0cb540ce61 Hook libdwarf and libproc into the build. 2008-05-22 04:22:43 +00:00
John Birrell
6433849359 Add a BSD licensed DWARF library for use by the DTrace clients.
The API for this library is deliberately different to the GPL'd
libdwarf to avoid licensing problems.
2008-05-22 02:14:23 +00:00
John Birrell
2acd18806c Add the Makefile for the process library which was missed in the previous
commit.
2008-05-22 02:10:14 +00:00
John Birrell
2c633af461 Add a process library with some stubs that the DTrace client needs.
These will be fleshed out as part of the DTrace userland tracing
development.

For now, the kernel tracing part of DTrace requires minimal functionality
for this library.

The API for this library is deliberately different from the libproc in
OpenSolaris due to licensing restrictions.
2008-05-22 02:09:21 +00:00
Pawel Jakub Dawidek
9ac6b8ae23 Use 'dowrite' as an argument name instead of too general 'write'. 2008-05-20 11:45:05 +00:00
Colin Percival
ee99deabac Return ARCHIVE_FATAL if we can't allocate memory instead of going ahead and
dereferencing NULL.

Found by:	Coverity Prevent
2008-05-19 18:06:48 +00:00
Greg Lehey
b98d401185 Clarify that "ante meridiem" and "post meridiem" mean the same thing
as the more commonly used "a.m." and "p.m.".

Tripped over by:  Callum Gibson.

MFC after:  2 weeks
2008-05-16 04:33:04 +00:00
Doug Rabson
c24d228096 Add new heimdal-1.1 library. 2008-05-15 15:28:18 +00:00