the new/open/close/free lifecycle terminology.
SVN-Revision: 2004
r = ((a->format_finish_entry)(a));
/* Finish off the archive. */
- /* TODO: Rename format_finish to format_close, have
- * format closers invoke compression close. */
- if (a->format_finish != NULL) {
- r1 = (a->format_finish)(a);
+ /* TODO: have format closers invoke compression close. */
+ if (a->format_close != NULL) {
+ r1 = (a->format_close)(a);
if (r1 < r)
r = r1;
}
r = archive_write_close(&a->archive);
/* Release format resources. */
- /* TODO: Rename format_destroy to format_free */
- if (a->format_destroy != NULL) {
- r1 = (a->format_destroy)(a);
+ if (a->format_free != NULL) {
+ r1 = (a->format_free)(a);
if (r1 < r)
r = r1;
}
int (*format_init)(struct archive_write *);
int (*format_options)(struct archive_write *,
const char *key, const char *value);
- int (*format_finish)(struct archive_write *);
- int (*format_destroy)(struct archive_write *);
int (*format_finish_entry)(struct archive_write *);
int (*format_write_header)(struct archive_write *,
struct archive_entry *);
ssize_t (*format_write_data)(struct archive_write *,
const void *buff, size_t);
+ int (*format_close)(struct archive_write *);
+ int (*format_free)(struct archive_write *);
};
/*
struct archive_entry *);
static ssize_t archive_write_ar_data(struct archive_write *,
const void *buff, size_t s);
-static int archive_write_ar_destroy(struct archive_write *);
-static int archive_write_ar_finish(struct archive_write *);
+static int archive_write_ar_free(struct archive_write *);
+static int archive_write_ar_close(struct archive_write *);
static int archive_write_ar_finish_entry(struct archive_write *);
static const char *ar_basename(const char *path);
static int format_octal(int64_t v, char *p, int s);
struct ar_w *ar;
/* If someone else was already registered, unregister them. */
- if (a->format_destroy != NULL)
- (a->format_destroy)(a);
+ if (a->format_free != NULL)
+ (a->format_free)(a);
ar = (struct ar_w *)malloc(sizeof(*ar));
if (ar == NULL) {
a->format_name = "ar";
a->format_write_header = archive_write_ar_header;
a->format_write_data = archive_write_ar_data;
- a->format_finish = archive_write_ar_finish;
- a->format_destroy = archive_write_ar_destroy;
+ a->format_close = archive_write_ar_close;
+ a->format_free = archive_write_ar_free;
a->format_finish_entry = archive_write_ar_finish_entry;
return (ARCHIVE_OK);
}
}
static int
-archive_write_ar_destroy(struct archive_write *a)
+archive_write_ar_free(struct archive_write *a)
{
struct ar_w *ar;
}
static int
-archive_write_ar_finish(struct archive_write *a)
+archive_write_ar_close(struct archive_write *a)
{
struct ar_w *ar;
int ret;
static ssize_t archive_write_cpio_data(struct archive_write *,
const void *buff, size_t s);
-static int archive_write_cpio_finish(struct archive_write *);
-static int archive_write_cpio_destroy(struct archive_write *);
+static int archive_write_cpio_close(struct archive_write *);
+static int archive_write_cpio_free(struct archive_write *);
static int archive_write_cpio_finish_entry(struct archive_write *);
static int archive_write_cpio_header(struct archive_write *,
struct archive_entry *);
ARCHIVE_STATE_NEW, "archive_write_set_format_cpio");
/* If someone else was already registered, unregister them. */
- if (a->format_destroy != NULL)
- (a->format_destroy)(a);
+ if (a->format_free != NULL)
+ (a->format_free)(a);
cpio = (struct cpio *)malloc(sizeof(*cpio));
if (cpio == NULL) {
a->format_write_header = archive_write_cpio_header;
a->format_write_data = archive_write_cpio_data;
a->format_finish_entry = archive_write_cpio_finish_entry;
- a->format_finish = archive_write_cpio_finish;
- a->format_destroy = archive_write_cpio_destroy;
+ a->format_close = archive_write_cpio_close;
+ a->format_free = archive_write_cpio_free;
a->archive.archive_format = ARCHIVE_FORMAT_CPIO_POSIX;
a->archive.archive_format_name = "POSIX cpio";
return (ARCHIVE_OK);
}
static int
-archive_write_cpio_finish(struct archive_write *a)
+archive_write_cpio_close(struct archive_write *a)
{
int er;
struct archive_entry *trailer;
}
static int
-archive_write_cpio_destroy(struct archive_write *a)
+archive_write_cpio_free(struct archive_write *a)
{
struct cpio *cpio;
static ssize_t archive_write_newc_data(struct archive_write *,
const void *buff, size_t s);
-static int archive_write_newc_finish(struct archive_write *);
-static int archive_write_newc_destroy(struct archive_write *);
+static int archive_write_newc_close(struct archive_write *);
+static int archive_write_newc_free(struct archive_write *);
static int archive_write_newc_finish_entry(struct archive_write *);
static int archive_write_newc_header(struct archive_write *,
struct archive_entry *);
ARCHIVE_STATE_NEW, "archive_write_set_format_cpio_newc");
/* If someone else was already registered, unregister them. */
- if (a->format_destroy != NULL)
- (a->format_destroy)(a);
+ if (a->format_free != NULL)
+ (a->format_free)(a);
cpio = (struct cpio *)malloc(sizeof(*cpio));
if (cpio == NULL) {
a->format_write_header = archive_write_newc_header;
a->format_write_data = archive_write_newc_data;
a->format_finish_entry = archive_write_newc_finish_entry;
- a->format_finish = archive_write_newc_finish;
- a->format_destroy = archive_write_newc_destroy;
+ a->format_close = archive_write_newc_close;
+ a->format_free = archive_write_newc_free;
a->archive.archive_format = ARCHIVE_FORMAT_CPIO_SVR4_NOCRC;
a->archive.archive_format_name = "SVR4 cpio nocrc";
return (ARCHIVE_OK);
}
static int
-archive_write_newc_finish(struct archive_write *a)
+archive_write_newc_close(struct archive_write *a)
{
int er;
struct archive_entry *trailer;
}
static int
-archive_write_newc_destroy(struct archive_write *a)
+archive_write_newc_free(struct archive_write *a)
{
struct cpio *cpio;
static ssize_t iso9660_write_data(struct archive_write *,
const void *, size_t);
static int iso9660_finish_entry(struct archive_write *);
-static int iso9660_finish(struct archive_write *);
-static int iso9660_destroy(struct archive_write *);
+static int iso9660_close(struct archive_write *);
+static int iso9660_free(struct archive_write *);
static void get_system_identitier(char *, size_t);
static void set_str(unsigned char *, const char *, size_t, char,
ARCHIVE_STATE_NEW, "archive_write_set_format_iso9660");
/* If another format was already registered, unregister it. */
- if (a->format_destroy != NULL)
- (a->format_destroy)(a);
+ if (a->format_free != NULL)
+ (a->format_free)(a);
iso9660 = malloc(sizeof(*iso9660));
if (iso9660 == NULL) {
a->format_write_header = iso9660_write_header;
a->format_write_data = iso9660_write_data;
a->format_finish_entry = iso9660_finish_entry;
- a->format_finish = iso9660_finish;
- a->format_destroy = iso9660_destroy;
+ a->format_close = iso9660_close;
+ a->format_free = iso9660_free;
a->archive.archive_format = ARCHIVE_FORMAT_ISO9660;
a->archive.archive_format_name = "ISO9660";
}
static int
-iso9660_finish(struct archive_write *a)
+iso9660_close(struct archive_write *a)
{
struct iso9660 *iso9660;
int ret, blocks;
}
static int
-iso9660_destroy(struct archive_write *a)
+iso9660_free(struct archive_write *a)
{
struct iso9660 *iso9660;
int i, ret;
}
static int
-archive_write_mtree_finish(struct archive_write *a)
+archive_write_mtree_close(struct archive_write *a)
{
struct mtree_writer *mtree= a->format_data;
}
static int
-archive_write_mtree_destroy(struct archive_write *a)
+archive_write_mtree_free(struct archive_write *a)
{
struct mtree_writer *mtree= a->format_data;
archive_check_magic(_a, ARCHIVE_WRITE_MAGIC,
ARCHIVE_STATE_NEW, "archive_write_set_format_mtree");
- if (a->format_destroy != NULL)
- (a->format_destroy)(a);
+ if (a->format_free != NULL)
+ (a->format_free)(a);
if ((mtree = malloc(sizeof(*mtree))) == NULL) {
archive_set_error(&a->archive, ENOMEM,
archive_string_init(&mtree->ebuf);
archive_string_init(&mtree->buf);
a->format_data = mtree;
- a->format_destroy = archive_write_mtree_destroy;
+ a->format_free = archive_write_mtree_free;
a->pad_uncompressed = 0;
a->format_name = "mtree";
a->format_options = archive_write_mtree_options;
a->format_write_header = archive_write_mtree_header;
- a->format_finish = archive_write_mtree_finish;
+ a->format_close = archive_write_mtree_close;
a->format_write_data = archive_write_mtree_data;
a->format_finish_entry = archive_write_mtree_finish_entry;
a->archive.archive_format = ARCHIVE_FORMAT_MTREE;
const char *key, const wchar_t *wvalue);
static ssize_t archive_write_pax_data(struct archive_write *,
const void *, size_t);
-static int archive_write_pax_finish(struct archive_write *);
-static int archive_write_pax_destroy(struct archive_write *);
+static int archive_write_pax_close(struct archive_write *);
+static int archive_write_pax_free(struct archive_write *);
static int archive_write_pax_finish_entry(struct archive_write *);
static int archive_write_pax_header(struct archive_write *,
struct archive_entry *);
archive_check_magic(_a, ARCHIVE_WRITE_MAGIC,
ARCHIVE_STATE_NEW, "archive_write_set_format_pax");
- if (a->format_destroy != NULL)
- (a->format_destroy)(a);
+ if (a->format_free != NULL)
+ (a->format_free)(a);
pax = (struct pax *)malloc(sizeof(*pax));
if (pax == NULL) {
a->format_name = "pax";
a->format_write_header = archive_write_pax_header;
a->format_write_data = archive_write_pax_data;
- a->format_finish = archive_write_pax_finish;
- a->format_destroy = archive_write_pax_destroy;
+ a->format_close = archive_write_pax_close;
+ a->format_free = archive_write_pax_free;
a->format_finish_entry = archive_write_pax_finish_entry;
a->archive.archive_format = ARCHIVE_FORMAT_TAR_PAX_INTERCHANGE;
a->archive.archive_format_name = "POSIX pax interchange";
/* Write two null blocks for the end of archive */
static int
-archive_write_pax_finish(struct archive_write *a)
+archive_write_pax_close(struct archive_write *a)
{
return (write_nulls(a, 512 * 2));
}
static int
-archive_write_pax_destroy(struct archive_write *a)
+archive_write_pax_free(struct archive_write *a)
{
struct pax *pax;
struct archive_string quoted_name;
};
-static int archive_write_shar_finish(struct archive_write *);
-static int archive_write_shar_destroy(struct archive_write *);
+static int archive_write_shar_close(struct archive_write *);
+static int archive_write_shar_free(struct archive_write *);
static int archive_write_shar_header(struct archive_write *,
struct archive_entry *);
static ssize_t archive_write_shar_data_sed(struct archive_write *,
ARCHIVE_STATE_NEW, "archive_write_set_format_shar");
/* If someone else was already registered, unregister them. */
- if (a->format_destroy != NULL)
- (a->format_destroy)(a);
+ if (a->format_free != NULL)
+ (a->format_free)(a);
shar = (struct shar *)malloc(sizeof(*shar));
if (shar == NULL) {
a->pad_uncompressed = 0;
a->format_name = "shar";
a->format_write_header = archive_write_shar_header;
- a->format_finish = archive_write_shar_finish;
- a->format_destroy = archive_write_shar_destroy;
+ a->format_close = archive_write_shar_close;
+ a->format_free = archive_write_shar_free;
a->format_write_data = archive_write_shar_data_sed;
a->format_finish_entry = archive_write_shar_finish_entry;
a->archive.archive_format = ARCHIVE_FORMAT_SHAR_BASE;
}
static int
-archive_write_shar_finish(struct archive_write *a)
+archive_write_shar_close(struct archive_write *a)
{
struct shar *shar;
int ret;
}
static int
-archive_write_shar_destroy(struct archive_write *a)
+archive_write_shar_free(struct archive_write *a)
{
struct shar *shar;
static ssize_t archive_write_ustar_data(struct archive_write *a, const void *buff,
size_t s);
-static int archive_write_ustar_destroy(struct archive_write *);
-static int archive_write_ustar_finish(struct archive_write *);
+static int archive_write_ustar_free(struct archive_write *);
+static int archive_write_ustar_close(struct archive_write *);
static int archive_write_ustar_finish_entry(struct archive_write *);
static int archive_write_ustar_header(struct archive_write *,
struct archive_entry *entry);
ARCHIVE_STATE_NEW, "archive_write_set_format_ustar");
/* If someone else was already registered, unregister them. */
- if (a->format_destroy != NULL)
- (a->format_destroy)(a);
+ if (a->format_free != NULL)
+ (a->format_free)(a);
/* Basic internal sanity test. */
if (sizeof(template_header) != 512) {
a->format_name = "ustar";
a->format_write_header = archive_write_ustar_header;
a->format_write_data = archive_write_ustar_data;
- a->format_finish = archive_write_ustar_finish;
- a->format_destroy = archive_write_ustar_destroy;
+ a->format_close = archive_write_ustar_close;
+ a->format_free = archive_write_ustar_free;
a->format_finish_entry = archive_write_ustar_finish_entry;
a->archive.archive_format = ARCHIVE_FORMAT_TAR_USTAR;
a->archive.archive_format_name = "POSIX ustar";
}
static int
-archive_write_ustar_finish(struct archive_write *a)
+archive_write_ustar_close(struct archive_write *a)
{
return (write_nulls(a, 512*2));
}
static int
-archive_write_ustar_destroy(struct archive_write *a)
+archive_write_ustar_free(struct archive_write *a)
{
struct ustar *ustar;
};
static ssize_t archive_write_zip_data(struct archive_write *, const void *buff, size_t s);
-static int archive_write_zip_finish(struct archive_write *);
-static int archive_write_zip_destroy(struct archive_write *);
+static int archive_write_zip_close(struct archive_write *);
+static int archive_write_zip_free(struct archive_write *);
static int archive_write_zip_finish_entry(struct archive_write *);
static int archive_write_zip_header(struct archive_write *, struct archive_entry *);
static unsigned int dos_time(const time_t);
ARCHIVE_STATE_NEW, "archive_write_set_format_zip");
/* If another format was already registered, unregister it. */
- if (a->format_destroy != NULL)
- (a->format_destroy)(a);
+ if (a->format_free != NULL)
+ (a->format_free)(a);
zip = (struct zip *) calloc(1, sizeof(*zip));
if (zip == NULL) {
a->format_write_header = archive_write_zip_header;
a->format_write_data = archive_write_zip_data;
a->format_finish_entry = archive_write_zip_finish_entry;
- a->format_finish = archive_write_zip_finish;
- a->format_destroy = archive_write_zip_destroy;
+ a->format_close = archive_write_zip_close;
+ a->format_free = archive_write_zip_free;
a->archive.archive_format = ARCHIVE_FORMAT_ZIP;
a->archive.archive_format_name = "ZIP";
}
static int
-archive_write_zip_finish(struct archive_write *a)
+archive_write_zip_close(struct archive_write *a)
{
struct zip *zip;
struct zip_file_header_link *l;
}
static int
-archive_write_zip_destroy(struct archive_write *a)
+archive_write_zip_free(struct archive_write *a)
{
struct zip *zip;
struct zip_file_header_link *l;