Manpages - tar_append_file.3

Table of Contents

NAME

tar_append_file, tar_append_eof, tar_append_regfile - append data to tar archives

SYNOPSIS

#include <libtar.h>

int tar_append_file(TAR **/t/, char */realname/,* char **/savename/);*

int tar_append_regfile(TAR **/t/, char */realname/);*

int tar_append_eof(TAR **/t/);*

VERSION

This man page documents version 1.2 of libtar.

DESCRIPTION

The *tar_append_file*() function creates a tar file header block describing the file named by the realname argument, but with the encoded filename of savename. It then sets the current header associated with the TAR handle t to the newly created header block, and writes this block to the tar archive associated with t. If the file named by realname is a regular file (and is not encoded as a hard link), *tar_append_file*() will call *tar_append_regfile*() to append the contents of the file.

The *tar_append_regfile*() function appends the contents of a regular file to the tar archive associated with t. Since this function is called by *tar_append_file*(), it should only be necessary for applications that construct and write the tar file header on their own.

The *tar_append_eof*() function writes an EOF marker (two blocks of all zeros) to the tar file associated with t.

RETURN VALUES

On successful completion, these functions will return 0. On failure, they will return -1 and set errno to an appropriate value.

ERRORS

The *tar_append_**() functions will fail if:

EINVAL
Less than T_BLOCKSIZE bytes were written to the tar archive.
EINVAL
Less than T_BLOCKSIZE bytes were read from the realname file.

They may also fail if any of the following functions fail: *lstat*(), *malloc*(), *open*(), *read*(), *th_write*(), or the write function for the file type associated with the TAR handle t.

SEE ALSO

*read*(2), *open*(2), *lstat*(2), *th_write*(3)

Author: dt

Created: 2022-02-20 Sun 18:57