Go to main content

man pages section 3: Extended Library Functions, Volume 1

Exit Print View

Updated: Wednesday, July 27, 2022
 
 

archive_write_blocksize (3archive)

Name

archive_write_blocksize - archive_write_get_bytes_per_block, archive_write_set_bytes_per_block, archive_write_get_bytes_in_last_block, functions for creating archives

Synopsis

#include <archive.h>
int
archive_write_get_bytes_per_block(struct archive *);
int
archive_write_set_bytes_per_block(struct archive *,
int bytes_per_block);
int
archive_write_get_bytes_in_last_block(struct archive *);
int
archive_write_set_bytes_in_last_block(struct archive *, int);

Description

                                             ARCHIVE_WRITE_BLOCKSIZE(3archive)



NAME
       archive_write_get_bytes_per_block, archive_write_set_bytes_per_block,
       archive_write_get_bytes_in_last_block,
       archive_write_set_bytes_in_last_block - functions for creating archives

LIBRARY
       Streaming Archive Library (libarchive, -larchive)

SYNOPSIS
       #include <archive.h>
       int
       archive_write_get_bytes_per_block(struct archive *);
       int
       archive_write_set_bytes_per_block(struct archive *,
       int bytes_per_block);
       int
       archive_write_get_bytes_in_last_block(struct archive *);
       int
       archive_write_set_bytes_in_last_block(struct archive *, int);

DESCRIPTION
            archive_write_set_bytes_per_block()
                   Sets the block size used for writing the archive data.
                   Every call to the write callback function, except possibly
                   the last one, will use this value for the length.  The
                   default is to use a block size of 10240 bytes.  Note that a
                   block size of zero will suppress internal blocking and
                   cause writes to be sent directly to the write callback as
                   they occur.

            archive_write_get_bytes_per_block()
                   Retrieve the block size to be used for writing.  A value of
                   -1 here indicates that the library should use default val-
                   ues.  A value of zero indicates that internal blocking is
                   suppressed.

            archive_write_set_bytes_in_last_block()
                   Sets the block size used for writing the last block.  If
                   this value is zero, the last block will be padded to the
                   same size as the other blocks.  Otherwise, the final block
                   will be padded to a multiple of this size.  In particular,
                   setting it to 1 will cause the final block to not be
                   padded.  For compressed output, any padding generated by
                   this option is applied only after the compression.  The
                   uncompressed data is always unpadded.  The default is to
                   pad the last block to the full block size (note that
                   archive_write_open_filename() will set this based on the
                   file type).  Unlike the other ``set'' functions, this func-
                   tion can be called after the archive is opened.

            archive_write_get_bytes_in_last_block()
                   Retrieve the currently-set value for last block size.  A
                   value of -1 here indicates that the library should use
                   default values.

RETURN VALUES
       archive_write_set_bytes_per_block() and
       archive_write_set_bytes_in_last_block() return ARCHIVE_OK on success,
       or ARCHIVE_FATAL.

       archive_write_get_bytes_per_block() and
       archive_write_get_bytes_in_last_block() return currently configured
       block size Po
           -1
       indicates the default block size Pc, or ARCHIVE_FATAL.

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


ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:


       +---------------+--------------------+
       |ATTRIBUTE TYPE |  ATTRIBUTE VALUE   |
       +---------------+--------------------+
       |Availability   | library/libarchive |
       +---------------+--------------------+
       |Stability      | Uncommitted        |
       +---------------+--------------------+

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



NOTES
       Source code for open source software components in Oracle Solaris can
       be found at https://www.oracle.com/downloads/opensource/solaris-source-
       code-downloads.html.

       This software was built from source available at
       https://github.com/oracle/solaris-userland.  The original community
       source was downloaded from
       https://github.com/libarchive/libarchive/releases/down-
       load/v3.6.1/libarchive-3.6.1.tar.gz.

       Further information about this software can be found on the open source
       community website at http://www.libarchive.org/.



                               February 2, 2012
                                             ARCHIVE_WRITE_BLOCKSIZE(3archive)