aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2013-08-12 21:51:47 +0000
committerChristian Grothoff <christian@grothoff.org>2013-08-12 21:51:47 +0000
commit9569a609edc067b018be8182424e54de41df2fdc (patch)
tree95753a63f4cd9b71b87995d554e1632583e4284c /doc
parent40f884cbb9c51975c1ea4a655c8c1813376ff788 (diff)
downloadlibmicrohttpd-9569a609edc067b018be8182424e54de41df2fdc.tar.gz
libmicrohttpd-9569a609edc067b018be8182424e54de41df2fdc.zip
-document select/shutdown issue on W32, move z/os documentation into manual
Diffstat (limited to 'doc')
-rw-r--r--doc/libmicrohttpd.texi38
1 files changed, 36 insertions, 2 deletions
diff --git a/doc/libmicrohttpd.texi b/doc/libmicrohttpd.texi
index 30e0355d..3c5664c5 100644
--- a/doc/libmicrohttpd.texi
+++ b/doc/libmicrohttpd.texi
@@ -13,7 +13,7 @@ This manual is for GNU libmicrohttpd
13(version @value{VERSION}, @value{UPDATED}), a library for embedding 13(version @value{VERSION}, @value{UPDATED}), a library for embedding
14an HTTP(S) server into C applications. 14an HTTP(S) server into C applications.
15 15
16Copyright @copyright{} 2007--2012 Christian Grothoff 16Copyright @copyright{} 2007--2013 Christian Grothoff
17 17
18@quotation 18@quotation
19Permission is granted to copy, distribute and/or modify this document 19Permission is granted to copy, distribute and/or modify this document
@@ -267,9 +267,9 @@ specifies path to libgcrypt installation
267specifies path to libgnutls installation 267specifies path to libgnutls installation
268 268
269 269
270
271@end table 270@end table
272 271
272
273@section Including the microhttpd.h header 273@section Including the microhttpd.h header
274@cindex portability 274@cindex portability
275@cindex microhttpd.h 275@cindex microhttpd.h
@@ -358,6 +358,40 @@ to define both in "platform.h" if you need to change the definition
358for the specific platform. 358for the specific platform.
359 359
360 360
361@section Portability to W32
362
363On W32, GNUnet requires PlibC, a lightweight library to provide some
364more POSIX-like calls on W32. While PlibC takes care of most issues,
365it is unable to make @code{select} (or equivalent alternative socket
366calls) unblock when a socket is @code{shutdown}. This can be
367problematic if MHD is used in ``one thread per connection'' mode. In
368this case, an inactive TCP connection may block @code{MHD_stop_daemon}
369until the connection times out. You may be able to mitigate the issue
370by setting a reasonably low timeout, but in general we of course
371recommend migrating away from Windows. Using MHD with other types of
372event loops is unaffected by this issue.
373
374
375@section Portability to z/OS
376
377To compile MHD on z/OS, extract the archive and run
378
379@verbatim
380iconv -f UTF-8 -t IBM-1047 contrib/ascebc > /tmp/ascebc.sh
381chmod +x /tmp/ascebc.sh
382for n in `find * -type f`
383do
384 /tmp/ascebc.sh $n
385done
386@end verbatim
387to convert all source files to EBCDIC. Note that you must run
388@code{configure} from the directory where the configure script is
389located. Otherwise, configure will fail to find the
390@code{contrib/xcc} script (which is a wrapper around the z/OS c89
391compiler).
392
393
394
361@c ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 395@c ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
362 396
363@c ------------------------------------------------------------ 397@c ------------------------------------------------------------