blob: 66c6edc5af4b0a2d420b4228041cda5da593f89f (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
|
About
=====
libmicrohttpd is a library written in C that provides a compact
API and implementation of an HTTP 1.1 web server. libmicrohttpd
only implements the HTTP 1.1 protocol. The main application must
still provide the content.
Installation
============
If you are using Subversion, run "autoreconf -fi" to create configure.
In order to run the testcases, you need a recent version of libcurl.
libcurl is not required if you just want to install the library.
Configure options
=================
Especially for development, use "--enable-messages" to enable error
reporting (and use MHD_USE_DEBUG). Error reporting is not enabled by
default to reduce the size of the library (error messages take
space!). If you are concerned about space, you should set "CFLAGS" to
"-Os --fomit-frame-pointer" to have gcc generate tight code. The
resulting binary should be less than 25k (on x86).
Development Status
==================
This is a beta release. Below we list things that should be
implemented (in order of importance) before we can claim to be
reasonably complete. #XXXX refers to the respective Mantis bug report
(or feature request). ARCH indicates that implementing this feature
may require non-trivial ARCHitectural changes in the code. API
indicates that implementing the feature will require API changes.
TRIV indicates that implementing this feature should be TRIVial. TEST
indicates that a testcase should be written before implementing the
feature.
For http/1.1-compliance:
========================
connection.c:
- support chunked requests from clients (#1260, ARCH, TEST)
For POST:
=========
- add support to decode multipart/form-data with
nesting (used for files) -- #1221, TEST
For SSL:
========
microhttpd.h:
- define appropriate MHD_OPTIONs (#1225, API)
- actual implementation (#1225, ARCH)
Missing Testcases:
==================
- add testcases for http/1.1 pipelining (need
to figure out how to ensure curl pipelines)
- add testcases for resource limit enforcement
Documentation:
==============
- manual (texinfo, man)
- tutorial
|