ARCHIVE_WRITE_DATA(3)	 BSD Library Functions Manual	 ARCHIVE_WRITE_DATA(3)

NAME
     archive_write_data, archive_write_data_block — functions for creating ar‐
     chives

LIBRARY
     Streaming Archive Library (libarchive, -larchive)

SYNOPSIS
     #include <archive.h>

     la_ssize_t
     archive_write_data(struct archive *, const void *, size_t);

     la_ssize_t
     archive_write_data_block(struct archive *, const void *, size_t size,
	 int64_t offset);

DESCRIPTION
     archive_write_data()
	     Write data corresponding to the header just written.

     archive_write_data_block()
	     Write data corresponding to the header just written.  This is
	     like archive_write_data() except that it performs a seek on the
	     file being written to the specified offset before writing the
	     data.  This is useful when restoring sparse files from archive
	     formats that support sparse files.	 Returns number of bytes writ‐
	     ten or -1 on error.  (Note: This is currently not supported for
	     archive_write handles, only for archive_write_disk handles.

RETURN VALUES
     This function returns the number of bytes actually written, or a negative
     error code on error.

ERRORS
     Detailed error codes and textual descriptions are available from the
     archive_errno() and archive_error_string() functions.

BUGS
     In libarchive 3.x, this function sometimes returns zero on success in‐
     stead of returning the number of bytes written.  Specifically, this oc‐
     curs when writing to an archive_write_disk handle.	 Clients should treat
     any value less than zero as an error and consider any non-negative value
     as success.

SEE ALSO
     tar(1), archive_write_finish_entry(3), archive_write_set_options(3),
     libarchive(3), cpio(5), mtree(5), tar(5)

BSD			       February 28, 2017			   BSD
