Skip to content

Commit 1842beb

Browse files
author
Sebastiano Merlino
committed
Merge branch 'doc'
2 parents fbc8bd0 + 014a633 commit 1842beb

File tree

11 files changed

+11491
-2
lines changed

11 files changed

+11491
-2
lines changed

.travis.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ compiler:
44
- clang
55
# Change this to your needs
66
before_install:
7+
- sudo apt-get install texinfo
78
- wget http://199.231.187.83/resources/libmicrohttpd-0.9.26.tar.gz
89
- tar -xvzf libmicrohttpd-0.9.26.tar.gz
910
- cd libmicrohttpd-0.9.26

Makefile.am

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,8 @@ LIBTOOL_DEPS = @LIBTOOL_DEPS@
2424
AUTOMAKE_OPTIONS = foreign 1.4
2525
ACLOCAL_AMFLAGS = -I m4
2626

27-
SUBDIRS = src test
28-
DIST_SUBDIRS = src test
27+
SUBDIRS = src test doc
28+
DIST_SUBDIRS = src test doc
2929
EXTRA_DIST = libhttpserver.pc.in debian/changelog.in debian/control.in debian/copyright.in debian/rules.in debian/libhttpserver-dev.install.in debian/libhttpserver.install.in redhat/libhttpserver.SPEC.in $(DX_CONFIG)
3030

3131
MOSTLYCLEANFILES = $(DX_CLEANFILES) redhat/SOURCES/*

configure.ac

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -158,6 +158,7 @@ AC_SUBST(EXT_LIBS)
158158
AC_OUTPUT(
159159
libhttpserver.pc
160160
Makefile
161+
doc/Makefile
161162
src/Makefile
162163
test/Makefile
163164
debian/changelog

doc/Makefile.am

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
man_MANS = libhttpserver.3
2+
EXTRA_DIST = $(man_MANS)
3+
4+
DISTCLEANFILES = \
5+
libhttpserver.cps \
6+
libhttpserver.dvi \
7+
libhttpserver-tutorial.cps \
8+
libhttpserver-tutorial.dvi
9+
info_TEXINFOS = \
10+
libhttpserver.texi
11+
httpserver_TEXINFOS = \
12+
fdl-1.3.texi \
13+
lgpl.texi

doc/fdl-1.3.texi

Lines changed: 506 additions & 0 deletions
Large diffs are not rendered by default.

doc/lgpl.texi

Lines changed: 561 additions & 0 deletions
Large diffs are not rendered by default.

doc/libhttpserver.3

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
.TH LIBHTTPSERVER "3" "02 Mar 2013 "libhttpserver"
2+
.SH "NAME"
3+
libhttpserver \- C++ library for creating an embedded Rest HTTP server (and more)
4+
.SH "SYNOPSIS"
5+
6+
\fB#include <httpserver.hpp>
7+
8+
.SH "DESCRIPTION"
9+
.P
10+
libhttpserver is an api made with the intent to allow to easily realize Rest based webservers.
11+
.P
12+
The details of the API are described in a detailed documentation and in doxygen generated code reference.
13+
.P
14+
.SH "SEE ALSO"
15+
\fBcurl\fP(1), \fBlibcurl\fP(3), \fBlibmicrohttpd\fP(3)
16+
17+
.SH "LEGAL NOTICE"
18+
libhttpserver is released under the LGPL Version 2.1 or higher. For details on the license please read the appendix in the manual.
19+
20+
.SH "FILES"
21+
.TP
22+
httpserver.hpp
23+
libhttpserver include file
24+
.TP
25+
libhttpserver.so
26+
libhttpserver library
27+
28+
.SH "REPORTING BUGS"
29+
Report bugs by using github issue tracker <https://github.com/etr/libhttpserver/issues>.
30+
31+
.SH "AUTHORS"
32+
GNU libhttpserver is designed and realized by Sebastiano Merlino <electrictwister2000@gmail.com>.
33+
34+
.SH "AVAILABILITY"
35+
You can obtain the latest version from https://github.com/etr/libhttpserver .

doc/libhttpserver.md

Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
The libhttpserver (0.7.1) reference manual
2+
==========================================
3+
4+
Copying
5+
=======
6+
This manual is for libhttpserver, C++ library for creating an
7+
embedded Rest HTTP server (and more).
8+
9+
> Permission is granted to copy, distribute and/or modify this document
10+
> under the terms of the GNU Free Documentation License, Version 1.3
11+
> or any later version published by the Free Software Foundation;
12+
> with no Invariant Sections, no Front-Cover Texts, and no Back-Cover
13+
> Texts. A copy of the license is included in the section entitled GNU
14+
> Free Documentation License.
15+
16+
Contents
17+
========
18+
* Introduction.
19+
* Compilation.
20+
* Constants.
21+
* Structures and classes type definition.
22+
* Callback functions definition.
23+
* Create and work with server.
24+
* Registering resources.
25+
* Building responses to requests.
26+
* Whitelists and Blacklists.
27+
* Simple comet semantics.
28+
* Utilizing Authentication.
29+
* Obtaining and modifying status information.
30+
31+
Appendices
32+
----------
33+
* GNU-LGPL: The GNU Lesser General Public License says how you can copy and share almost all of libhttpserver.
34+
* GNU-FDL: The GNU Free Documentation License says how you can copy and share the documentation of libhttpserver.
35+
36+
Introduction
37+
============
38+
libhttpserver is meant to constitute an easy system to build HTTP
39+
servers with REST fashion.
40+
libhttpserver is based on libmicrohttpd and, like this, it is a
41+
daemon library.
42+
The mission of this library is to support all possible HTTP features
43+
directly and with a simple semantic allowing then the user to concentrate
44+
only on his application and not on HTTP request handling details.
45+
46+
The library is supposed to work transparently for the client Implementing
47+
the business logic and using the library itself to realize an interface.
48+
If the user wants it must be able to change every behavior of the library
49+
itself through the registration of callbacks.
50+
51+
Like the api is based on (libmicrohttpd), libhttpserver is able to decode
52+
certain body format a and automatically format them in object oriented
53+
fashion. This is true for query arguments and for *POST* and *PUT*
54+
requests bodies if *application/x-www-form-urlencoded* or
55+
*multipart/form-data* header are passed.
56+
57+
The header reproduce all the constants defined by libhttpserver.
58+
These maps various constant used by the HTTP protocol that are exported
59+
as a convenience for users of the library. Is is possible for the user
60+
to define their own extensions of the HTTP standard and use those with
61+
libhttpserver.
62+
63+
All functions are guaranteed to be completely reentrant and
64+
thread-safe (unless differently specified).
65+
Additionally, clients can specify resource limits on the overall
66+
number of connections, number of connections per IP address and memory
67+
used per connection to avoid resource exhaustion.
68+
69+
Compilation
70+
===========
71+
libhttpserver uses the standard system where the usual build process
72+
involves running
73+
> ./bootstrap
74+
> mkdir build
75+
> cd build
76+
> ./configure
77+
> make
78+
> make install
79+

0 commit comments

Comments
 (0)