Add zip_source(3) and use instead of links to all implementations.
These lists are not updated often, it seems.
diff --git a/man/Makefile.am b/man/Makefile.am
index 0ab45e9..f2c4c99 100644
--- a/man/Makefile.am
+++ b/man/Makefile.am
@@ -48,6 +48,7 @@
zip_set_default_password.mdoc \
zip_set_file_comment.mdoc \
zip_set_file_compression.mdoc \
+ zip_source.mdoc \
zip_source_buffer.mdoc \
zip_source_file.mdoc \
zip_source_filep.mdoc \
diff --git a/man/libzip.mdoc b/man/libzip.mdoc
index 6955d78..e9862af 100644
--- a/man/libzip.mdoc
+++ b/man/libzip.mdoc
@@ -1,5 +1,5 @@
.\" libzip.mdoc -- general overview of available functions
-.\" Copyright (C) 2005-2012 Dieter Baron and Thomas Klausner
+.\" Copyright (C) 2005-2014 Dieter Baron and Thomas Klausner
.\"
.\" This file is part of libzip, a library to manipulate ZIP archives.
.\" The authors can be contacted at <libzip@nih.at>
@@ -29,7 +29,7 @@
.\" OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
.\" IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.Dd June 23, 2012
+.Dd August 2, 2014
.Dt LIBZIP 3
.Os
.Sh NAME
@@ -81,9 +81,9 @@
.Xr zip_source_buffer 3
.Xr zip_source_file 3
.Xr zip_source_filep 3
+.Xr zip_source_free 3
.Xr zip_source_function 3
.Xr zip_source_zip 3
-.Xr zip_source_free 3
.Ss rename files
.Xr zip_rename 3
.Ss delete files
@@ -105,6 +105,7 @@
.Ss miscellaneous
.Xr zip_set_archive_comment 3
.Xr zip_set_archive_flag 3
+.Xr zip_source 3
.Sh ERROR HANDLING
.Xr zip_error_to_str 3
.Xr zip_strerror 3
diff --git a/man/zip_file_add.mdoc b/man/zip_file_add.mdoc
index 06b70aa..c653258 100644
--- a/man/zip_file_add.mdoc
+++ b/man/zip_file_add.mdoc
@@ -1,5 +1,5 @@
.\" zip_file_add.mdoc -- add files to zip archive
-.\" Copyright (C) 2004-2012 Dieter Baron and Thomas Klausner
+.\" Copyright (C) 2004-2014 Dieter Baron and Thomas Klausner
.\"
.\" This file is part of libzip, a library to manipulate ZIP archives.
.\" The authors can be contacted at <libzip@nih.at>
@@ -29,7 +29,7 @@
.\" OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
.\" IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.Dd October 6, 2012
+.Dd August 2, 2014
.Dt ZIP_FILE_ADD 3
.Os
.Sh NAME
@@ -89,11 +89,8 @@
.El
The data is obtained from the
.Ar source
-argument.
-See the
-.Fn zip_source_*
-functions cited in
-.Sx SEE ALSO .
+argument, see
+.Xr zip_source 3 .
.Sh RETURN VALUES
Upon successful completion,
.Fn zip_file_add
@@ -145,10 +142,7 @@
.El
.Sh SEE ALSO
.Xr libzip 3 ,
-.Xr zip_source_file 3 ,
-.Xr zip_source_filep 3 ,
-.Xr zip_source_function 3 ,
-.Xr zip_source_zip 3
+.Xr zip_source 3
.Sh AUTHORS
.An -nosplit
.An Dieter Baron Aq Mt dillo@nih.at
diff --git a/man/zip_source.mdoc b/man/zip_source.mdoc
new file mode 100644
index 0000000..bb768a6
--- /dev/null
+++ b/man/zip_source.mdoc
@@ -0,0 +1,78 @@
+.\" zip_source.mdoc -- description of zip data source
+.\" Copyright (C) 2014 Dieter Baron and Thomas Klausner
+.\"
+.\" This file is part of libzip, a library to manipulate ZIP archives.
+.\" The authors can be contacted at <libzip@nih.at>
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in
+.\" the documentation and/or other materials provided with the
+.\" distribution.
+.\" 3. The names of the authors may not be used to endorse or promote
+.\" products derived from this software without specific prior
+.\" written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS ``AS IS'' AND ANY EXPRESS
+.\" OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+.\" WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY
+.\" DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+.\" GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
+.\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+.\" OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
+.\" IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+.\"
+.Dd August 2, 2014
+.Dt ZIP_SOURCE 3
+.Os
+.Sh NAME
+.Nm zip_source
+.Nd zip data source structure
+.Sh LIBRARY
+libzip (-lzip)
+.Sh SYNOPSIS
+.In zip.h
+.Vt struct zip_source *zs ;
+.Sh DESCRIPTION
+A
+.Vt struct zip_source
+is a data source used by
+.Xr libzip 3
+for adding or replacing file contents for a file in a zip archive.
+It is created by calling one of
+.Xr zip_source_buffer 3 ,
+.Xr zip_source_file 3 ,
+.Xr zip_source_filep 3 ,
+.Xr zip_source_free 3 ,
+.Xr zip_source_function 3 ,
+or
+.Xr zip_source_zip 3
+and passed to
+.Xr zip_file_add 3
+or
+.Xr zip_file_replace 3 .
+These functions will free the
+.Vt struct zip_source
+when they are done using it, so
+.Xr zip_source_free 3
+only needs to be called when these functions return an error.
+.Sh SEE ALSO
+.Xr libzip 3 ,
+.Xr zip_source_buffer 3 ,
+.Xr zip_source_file 3 ,
+.Xr zip_source_filep 3 ,
+.Xr zip_source_free 3 ,
+.Xr zip_source_function 3 ,
+.Xr zip_source_zip 3
+.Sh AUTHORS
+.An -nosplit
+.An Dieter Baron Aq Mt dillo@nih.at
+and
+.An Thomas Klausner Aq Mt tk@giga.or.at
diff --git a/man/zip_source_buffer.mdoc b/man/zip_source_buffer.mdoc
index 3bb9bc6..cdd09de 100644
--- a/man/zip_source_buffer.mdoc
+++ b/man/zip_source_buffer.mdoc
@@ -29,8 +29,8 @@
.\" OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
.\" IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.Dd April 27, 2014
-.Dt ZIP_SOURCE_DATA 3
+.Dd August 2, 2014
+.Dt ZIP_SOURCE_BUFFER 3
.Os
.Sh NAME
.Nm zip_source_buffer
@@ -78,11 +78,7 @@
.Xr libzip 3 ,
.Xr zip_add 3 ,
.Xr zip_replace 3 ,
-.Xr zip_source_file 3 ,
-.Xr zip_source_filep 3 ,
-.Xr zip_source_free 3 ,
-.Xr zip_source_function 3 ,
-.Xr zip_source_zip 3
+.Xr zip_source 3
.Sh AUTHORS
.An -nosplit
.An Dieter Baron Aq Mt dillo@nih.at
diff --git a/man/zip_source_file.mdoc b/man/zip_source_file.mdoc
index 0f3ba20..5d13436 100644
--- a/man/zip_source_file.mdoc
+++ b/man/zip_source_file.mdoc
@@ -1,5 +1,5 @@
.\" zip_source_file.mdoc -- create data source from a file
-.\" Copyright (C) 2004-2008 Dieter Baron and Thomas Klausner
+.\" Copyright (C) 2004-2014 Dieter Baron and Thomas Klausner
.\"
.\" This file is part of libzip, a library to manipulate ZIP archives.
.\" The authors can be contacted at <libzip@nih.at>
@@ -29,7 +29,7 @@
.\" OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
.\" IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.Dd August 1, 2008
+.Dd August 2, 2014
.Dt ZIP_SOURCE_FILE 3
.Os
.Sh NAME
@@ -89,11 +89,7 @@
.Xr libzip 3 ,
.Xr zip_add 3 ,
.Xr zip_replace 3 ,
-.Xr zip_source_buffer 3 ,
-.Xr zip_source_filep 3 ,
-.Xr zip_source_free 3 ,
-.Xr zip_source_function 3 ,
-.Xr zip_source_zip 3
+.Xr zip_source 3
.Sh AUTHORS
.An -nosplit
.An Dieter Baron Aq Mt dillo@nih.at
diff --git a/man/zip_source_filep.mdoc b/man/zip_source_filep.mdoc
index 1a7347a..4ca9a69 100644
--- a/man/zip_source_filep.mdoc
+++ b/man/zip_source_filep.mdoc
@@ -1,5 +1,5 @@
.\" zip_source_filep.mdoc -- create data source from a file stream
-.\" Copyright (C) 2004-2008 Dieter Baron and Thomas Klausner
+.\" Copyright (C) 2004-2014 Dieter Baron and Thomas Klausner
.\"
.\" This file is part of libzip, a library to manipulate ZIP archives.
.\" The authors can be contacted at <libzip@nih.at>
@@ -29,7 +29,7 @@
.\" OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
.\" IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.Dd August 1, 2008
+.Dd August 2, 2014
.Dt ZIP_SOURCE_FILEP 3
.Os
.Sh NAME
@@ -81,11 +81,7 @@
.Xr libzip 3 ,
.Xr zip_add 3 ,
.Xr zip_replace 3 ,
-.Xr zip_source_buffer 3 ,
-.Xr zip_source_file 3 ,
-.Xr zip_source_free 3 ,
-.Xr zip_source_function 3 ,
-.Xr zip_source_zip 3
+.Xr zip_source 3
.Sh AUTHORS
.An -nosplit
.An Dieter Baron Aq Mt dillo@nih.at
diff --git a/man/zip_source_free.mdoc b/man/zip_source_free.mdoc
index e820705..c264491 100644
--- a/man/zip_source_free.mdoc
+++ b/man/zip_source_free.mdoc
@@ -1,5 +1,5 @@
.\" zip_source_free.mdoc -- free zip data source
-.\" Copyright (C) 2004, 2005, 2006 Dieter Baron and Thomas Klausner
+.\" Copyright (C) 2004-2014 Dieter Baron and Thomas Klausner
.\"
.\" This file is part of libzip, a library to manipulate ZIP archives.
.\" The authors can be contacted at <libzip@nih.at>
@@ -29,7 +29,7 @@
.\" OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
.\" IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.Dd April 23, 2006
+.Dd August 2, 2014
.Dt ZIP_SOURCE_FREE 3
.Os
.Sh NAME
@@ -62,11 +62,7 @@
call.
.Sh SEE ALSO
.Xr libzip 3 ,
-.Xr zip_source_buffer 3 ,
-.Xr zip_source_file 3 ,
-.Xr zip_source_filep 3 ,
-.Xr zip_source_function 3 ,
-.Xr zip_source_zip 3
+.Xr zip_source 3
.Sh AUTHORS
.An -nosplit
.An Dieter Baron Aq Mt dillo@nih.at
diff --git a/man/zip_source_function.mdoc b/man/zip_source_function.mdoc
index 81403aa..ae00975 100644
--- a/man/zip_source_function.mdoc
+++ b/man/zip_source_function.mdoc
@@ -1,5 +1,5 @@
.\" zip_source_function.mdoc -- create data source from function
-.\" Copyright (C) 2004-2013 Dieter Baron and Thomas Klausner
+.\" Copyright (C) 2004-2014 Dieter Baron and Thomas Klausner
.\"
.\" This file is part of libzip, a library to manipulate ZIP archives.
.\" The authors can be contacted at <libzip@nih.at>
@@ -29,7 +29,7 @@
.\" OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
.\" IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.Dd September 22, 2013
+.Dd August 2, 2014
.Dt ZIP_SOURCE_FUNCTION 3
.Os
.Sh NAME
@@ -154,11 +154,7 @@
.Xr libzip 3 ,
.Xr zip_add 3 ,
.Xr zip_replace 3 ,
-.Xr zip_source_buffer 3 ,
-.Xr zip_source_file 3 ,
-.Xr zip_source_filep 3 ,
-.Xr zip_source_free 3 ,
-.Xr zip_source_zip 3 ,
+.Xr zip_source 3 ,
.Xr zip_stat_init 3
.Sh AUTHORS
.An -nosplit
diff --git a/man/zip_source_zip.mdoc b/man/zip_source_zip.mdoc
index 712a9ba..9ccbb52 100644
--- a/man/zip_source_zip.mdoc
+++ b/man/zip_source_zip.mdoc
@@ -1,5 +1,5 @@
.\" zip_source_zip.mdoc -- create data source from zip file
-.\" Copyright (C) 2004-2012 Dieter Baron and Thomas Klausner
+.\" Copyright (C) 2004-2014 Dieter Baron and Thomas Klausner
.\"
.\" This file is part of libzip, a library to manipulate ZIP archives.
.\" The authors can be contacted at <libzip@nih.at>
@@ -29,7 +29,7 @@
.\" OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
.\" IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.Dd July 22, 2012
+.Dd August 2, 2014
.Dt ZIP_SOURCE_ZIP 3
.Os
.Sh NAME
@@ -110,11 +110,7 @@
.Xr libzip 3 ,
.Xr zip_add 3 ,
.Xr zip_replace 3 ,
-.Xr zip_source_buffer 3 ,
-.Xr zip_source_file 3 ,
-.Xr zip_source_filep 3 ,
-.Xr zip_source_free 3 ,
-.Xr zip_source_function 3
+.Xr zip_source 3
.Sh AUTHORS
.An -nosplit
.An Dieter Baron Aq Mt dillo@nih.at