Add Windows API man pages.
diff --git a/man/zip_source_win32handle.mdoc b/man/zip_source_win32handle.mdoc
new file mode 100644
index 0000000..dc93c88
--- /dev/null
+++ b/man/zip_source_win32handle.mdoc
@@ -0,0 +1,112 @@
+.\" zip_source_handle.mdoc -- create data source from a Windows file handle
+.\" Copyright (C) 2015 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 March 11, 2015
+.Dt ZIP_SOURCE_WIN32HANDLE 3
+.Os
+.Sh NAME
+.Nm zip_source_win32handle ,
+.Nm zip_source_win32handle_create
+.Nd create data source from a Windows file handle
+.Sh LIBRARY
+libzip (-lzip)
+.Sh SYNOPSIS
+.Ft zip_source_t *
+.Fn zip_source_win32handle "zip_t *archive" "HANDLE h" \
+"zip_uint64_t start" "zip_int64_t len"
+.Ft zip_source_t *
+.Fn zip_source_win32handle_create "HANDLE h" \
+"zip_uint64_t start" "zip_int64_t len" "zip_error_t *error"
+.Sh DESCRIPTION
+The functions
+.Fn zip_source_win32handle
+and
+.Fn zip_source_win32handle_create
+create a zip source from a Windows file handle.
+They open
+.Ar fname
+and read
+.Ar len
+bytes from offset
+.Ar start
+from it.
+If
+.Ar len
+is 0 or \-1, the whole file (starting from
+.Ar start )
+is used.
+.Pp
+If the file supports seek, the source can be used to open a zip archive from.
+.Pp
+The file is opened and read when the data from the source is used, usually by
+.Fn zip_close
+or
+.Fn zip_open_from_source .
+.Sh RETURN VALUES
+Upon successful completion, the created source is returned.
+Otherwise,
+.Dv NULL
+is returned and the error code in
+.Ar archive
+or
+.Ar error
+is set to indicate the error.
+.Sh ERRORS
+.Fn zip_source_w32handle
+and
+.Fn zip_source_w32handle_create
+fail if:
+.Bl -tag -width Er
+.It Bq Er ZIP_ER_INVAL
+.Ar fname ,
+.Ar start ,
+or
+.Ar len
+are invalid.
+.It Bq Er ZIP_ER_MEMORY
+Required memory could not be allocated.
+.It Bq Er ZIP_ER_OPEN
+Opening
+.Ar fname
+failed.
+.El
+.Sh SEE ALSO
+.Xr libzip 3 ,
+.Xr zip_add 3 ,
+.Xr zip_replace 3 ,
+.Xr zip_source 3 ,
+.Xr zip_source_win32a 3 ,
+.Xr zip_source_win32w 3
+.Sh AUTHORS
+.An -nosplit
+.An Dieter Baron Aq Mt dillo@nih.at
+and
+.An Thomas Klausner Aq Mt tk@giga.or.at