1.\" Copyright (c) 2003-2011 Tim Kientzle 2.\" All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. 9.\" 2. Redistributions in binary form must reproduce the above copyright 10.\" notice, this list of conditions and the following disclaimer in the 11.\" documentation and/or other materials provided with the distribution. 12.\" 13.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 14.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 15.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 16.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 17.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 18.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23.\" SUCH DAMAGE. 24.\" 25.\" $FreeBSD$ 26.\" 27.Dd February 14, 2013 28.Dt ARCHIVE_WRITE_FORMAT 3 29.Os 30.Sh NAME 31.Nm archive_write_set_format , 32.Nm archive_write_set_format_7zip , 33.Nm archive_write_set_format_ar , 34.Nm archive_write_set_format_ar_bsd , 35.Nm archive_write_set_format_ar_svr4 , 36.Nm archive_write_set_format_by_name , 37.Nm archive_write_set_format_cpio , 38.Nm archive_write_set_format_cpio_newc , 39.Nm archive_write_set_format_filter_by_ext , 40.Nm archive_write_set_format_filter_by_ext_def , 41.Nm archive_write_set_format_gnutar , 42.Nm archive_write_set_format_iso9660 , 43.Nm archive_write_set_format_mtree , 44.Nm archive_write_set_format_mtree_classic , 45.Nm archive_write_set_format_mtree_default , 46.Nm archive_write_set_format_pax , 47.Nm archive_write_set_format_pax_restricted , 48.Nm archive_write_set_format_raw , 49.Nm archive_write_set_format_shar , 50.Nm archive_write_set_format_shar_dump , 51.Nm archive_write_set_format_ustar , 52.Nm archive_write_set_format_v7tar , 53.Nm archive_write_set_format_warc , 54.Nm archive_write_set_format_xar , 55.Nm archive_write_set_format_zip 56.Nd functions for creating archives 57.Sh LIBRARY 58Streaming Archive Library (libarchive, -larchive) 59.Sh SYNOPSIS 60.In archive.h 61.Ft int 62.Fn archive_write_set_format "struct archive *" "int code" 63.Ft int 64.Fn archive_write_set_format_7zip "struct archive *" 65.Ft int 66.Fn archive_write_set_format_ar "struct archive *" 67.Ft int 68.Fn archive_write_set_format_ar_bsd "struct archive *" 69.Ft int 70.Fn archive_write_set_format_ar_svr4 "struct archive *" 71.Ft int 72.Fn archive_write_set_format_by_name "struct archive *" "const char *name" 73.Ft int 74.Fn archive_write_set_format_cpio "struct archive *" 75.Ft int 76.Fn archive_write_set_format_cpio_newc "struct archive *" 77.Ft int 78.Fn archive_write_set_format_filter_by_ext "struct archive *" "const char *filename" 79.Ft int 80.Fn archive_write_set_format_filter_by_ext_def "struct archive *" "const char *filename" "const char *def_ext" 81.Ft int 82.Fn archive_write_set_format_gnutar "struct archive *" 83.Ft int 84.Fn archive_write_set_format_iso9660 "struct archive *" 85.Ft int 86.Fn archive_write_set_format_mtree "struct archive *" 87.Ft int 88.Fn archive_write_set_format_pax "struct archive *" 89.Ft int 90.Fn archive_write_set_format_pax_restricted "struct archive *" 91.Ft int 92.Fn archive_write_set_format_raw "struct archive *" 93.Ft int 94.Fn archive_write_set_format_shar "struct archive *" 95.Ft int 96.Fn archive_write_set_format_shar_dump "struct archive *" 97.Ft int 98.Fn archive_write_set_format_ustar "struct archive *" 99.Ft int 100.Fn archive_write_set_format_v7tar "struct archive *" 101.Ft int 102.Fn archive_write_set_format_warc "struct archive *" 103.Ft int 104.Fn archive_write_set_format_xar "struct archive *" 105.Ft int 106.Fn archive_write_set_format_zip "struct archive *" 107.Sh DESCRIPTION 108These functions set the format that will be used for the archive. 109.Pp 110The library can write a variety of common archive formats. 111.Bl -tag -width indent 112.It Fn archive_write_set_format 113Sets the format based on the format code (see 114.Pa archive.h 115for the full list of format codes). 116In particular, this can be used in conjunction with 117.Fn archive_format 118to create a new archive with the same format as an existing archive. 119.It Fn archive_write_set_format_by_name 120Sets the corresponding format based on the common name. 121.It Xo 122.Fn archive_write_set_format_filter_by_ext , 123.Fn archive_write_set_format_filter_by_ext_def 124.Xc 125Sets both filters and format based on the output filename. 126Supported extensions: .7z, .zip, .jar, .cpio, .iso, .a, .ar, .tar, .tgz, .tar.gz, .tar.bz2, .tar.xz 127.It Xo 128.Fn archive_write_set_format_7zip 129.Fn archive_write_set_format_ar_bsd , 130.Fn archive_write_set_format_ar_svr4 , 131.Fn archive_write_set_format_cpio 132.Fn archive_write_set_format_cpio_newc 133.Fn archive_write_set_format_gnutar 134.Fn archive_write_set_format_iso9660 135.Fn archive_write_set_format_mtree 136.Fn archive_write_set_format_mtree_classic 137.Fn archive_write_set_format_pax 138.Fn archive_write_set_format_pax_restricted 139.Fn archive_write_set_format_raw 140.Fn archive_write_set_format_shar 141.Fn archive_write_set_format_shar_dump 142.Fn archive_write_set_format_ustar 143.Fn archive_write_set_format_v7tar 144.Fn archive_write_set_format_warc 145.Fn archive_write_set_format_xar 146.Fn archive_write_set_format_zip 147.Xc 148Set the format as specified. 149More details on the formats supported by libarchive can be found in the 150.Xr libarchive-formats 5 151manual page. 152.El 153.\" 154.Sh RETURN VALUES 155These functions return 156.Cm ARCHIVE_OK 157on success, or 158.Cm ARCHIVE_FATAL . 159.\" 160.Sh ERRORS 161Detailed error codes and textual descriptions are available from the 162.Fn archive_errno 163and 164.Fn archive_error_string 165functions. 166.\" 167.Sh SEE ALSO 168.Xr tar 1 , 169.Xr archive_write 3 , 170.Xr archive_write_set_options 3 , 171.Xr libarchive 3 , 172.Xr cpio 5 , 173.Xr libarchive-formats 5 , 174.Xr mtree 5 , 175.Xr tar 5 176