summaryrefslogtreecommitdiffstats
path: root/lib/libarchive/archive_write_set_compression_bzip2.c
diff options
context:
space:
mode:
authorkientzle <kientzle@FreeBSD.org>2004-03-09 19:50:41 +0000
committerkientzle <kientzle@FreeBSD.org>2004-03-09 19:50:41 +0000
commit90072dfae070d180d3c16e0f229fb392b4b910b5 (patch)
treecdb30a1bca796a2ba7a0c712682c923cc981d32c /lib/libarchive/archive_write_set_compression_bzip2.c
parent63f793ca249823f0c3812457a8342dd6702d0548 (diff)
downloadFreeBSD-src-90072dfae070d180d3c16e0f229fb392b4b910b5.zip
FreeBSD-src-90072dfae070d180d3c16e0f229fb392b4b910b5.tar.gz
Many fixes.
Portability: Thanks to Juergen Lock, libarchive now compiles cleanly on Linux. Along the way, I cleaned up a lot of error return codes and reorganized some code to simplify conditional compilation of certain sections. Bug fixes: * pax format now actually stores filenames that are 101-154 characters long. * pax format now allows newline characters in extended attributes (this fixes a long-standing bug in ACL handling) * mtime/atime are now restored for directories * directory list is now sorted prior to fix-up to permit correct restore of non-writable dir heirarchies
Diffstat (limited to 'lib/libarchive/archive_write_set_compression_bzip2.c')
-rw-r--r--lib/libarchive/archive_write_set_compression_bzip2.c22
1 files changed, 12 insertions, 10 deletions
diff --git a/lib/libarchive/archive_write_set_compression_bzip2.c b/lib/libarchive/archive_write_set_compression_bzip2.c
index 23828a2..ed6ebb4 100644
--- a/lib/libarchive/archive_write_set_compression_bzip2.c
+++ b/lib/libarchive/archive_write_set_compression_bzip2.c
@@ -24,10 +24,10 @@
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-#include <sys/cdefs.h>
+#include "archive_platform.h"
__FBSDID("$FreeBSD$");
-#ifdef DMALLOC
+#ifdef HAVE_DMALLOC
#include <dmalloc.h>
#endif
#include <errno.h>
@@ -122,7 +122,7 @@ archive_compressor_bzip2_init(struct archive *a)
}
/* Library setup failed: clean up. */
- archive_set_error(a, -1,
+ archive_set_error(a, ARCHIVE_ERRNO_MISC,
"Internal error initializing compression library");
free(state->compressed);
free(state);
@@ -130,17 +130,17 @@ archive_compressor_bzip2_init(struct archive *a)
/* Override the error message if we know what really went wrong. */
switch (ret) {
case BZ_PARAM_ERROR:
- archive_set_error(a, -1,
+ archive_set_error(a, ARCHIVE_ERRNO_MISC,
"Internal error initializing compression library: "
"invalid setup parameter");
break;
case BZ_MEM_ERROR:
- archive_set_error(a, -1,
+ archive_set_error(a, ENOMEM,
"Internal error initializing compression library: "
"out of memory");
break;
case BZ_CONFIG_ERROR:
- archive_set_error(a, -1,
+ archive_set_error(a, ARCHIVE_ERRNO_MISC,
"Internal error initializing compression library: "
"mis-compiled library");
break;
@@ -161,7 +161,7 @@ archive_compressor_bzip2_write(struct archive *a, const void *buff,
state = a->compression_data;
if (!a->client_writer) {
- archive_set_error(a, EINVAL,
+ archive_set_error(a, ARCHIVE_ERRNO_PROGRAMMER,
"No write callback is registered? "
"This is probably an internal programming error.");
return (ARCHIVE_FATAL);
@@ -194,7 +194,7 @@ archive_compressor_bzip2_finish(struct archive *a)
state = a->compression_data;
ret = ARCHIVE_OK;
if (a->client_writer == NULL) {
- archive_set_error(a, EINVAL,
+ archive_set_error(a, ARCHIVE_ERRNO_PROGRAMMER,
"No write callback is registered?\n"
"This is probably an internal programming error.");
ret = ARCHIVE_FATAL;
@@ -256,7 +256,8 @@ cleanup:
case BZ_OK:
break;
default:
- archive_set_error(a, -1, "Failed to clean up compressor");
+ archive_set_error(a, ARCHIVE_ERRNO_PROGRAMMER,
+ "Failed to clean up compressor");
ret = ARCHIVE_FATAL;
}
@@ -319,7 +320,8 @@ drive_compressor(struct archive *a, struct private_data *state, int finishing)
return (ARCHIVE_OK);
default:
/* Any other return value indicates an error */
- archive_set_error(a, -1, "Bzip2 compression failed");
+ archive_set_error(a, ARCHIVE_ERRNO_PROGRAMMER,
+ "Bzip2 compression failed");
return (ARCHIVE_FATAL);
}
}
OpenPOWER on IntegriCloud