diff options
-rw-r--r-- | Makefile.am | 9 | ||||
-rw-r--r-- | README | 60 | ||||
-rw-r--r-- | configure.ac | 2 |
3 files changed, 67 insertions, 4 deletions
diff --git a/Makefile.am b/Makefile.am index 6ba0ee8..ea3b3b9 100644 --- a/Makefile.am +++ b/Makefile.am | |||
@@ -1,5 +1,8 @@ | |||
1 | EXTRA_DIST = m4/outoforder.m4 m4/apache.m4 m4/libgnutls.m4 m4/libmemcache.m4 \ | 1 | EXTRA_DIST = m4/outoforder.m4 m4/apache.m4 \ |
2 | include/mod_gnutls.h include/memcache.h \ | 2 | m4/libgnutls.m4 m4/apr_memcache.m4 \ |
3 | m4/apache_test.m4 \ | ||
4 | include/mod_gnutls.h.in \ | ||
5 | README \ | ||
3 | NOTICE LICENSE autogen.sh | 6 | NOTICE LICENSE autogen.sh |
4 | 7 | ||
5 | SUBDIRS = src | 8 | SUBDIRS = src data |
@@ -0,0 +1,60 @@ | |||
1 | mod_gnutls | ||
2 | |||
3 | This module started back in September of 2004 because I was tired of trying to | ||
4 | fix bugs in mod_ssl. mod_ssl is a giant beast of a module -- no offense to it's | ||
5 | authors is intended -- but I believe it has fallen prey to massive feature bloat. | ||
6 | |||
7 | When I started hacking on httpd, mod_ssl remained a great mystery to me, and | ||
8 | when I actually looked at it, I ran away. The shear ammount code is huge, and it | ||
9 | does not conform to the style guidelines. It was painful to read, and even harder | ||
10 | to debug. I wanted to understand how it worked, and I had recently heard about | ||
11 | GnuTLS, so long story short, I decided to implement a mod_gnutls. | ||
12 | |||
13 | Lines of Code in mod_ssl: 15,324 | ||
14 | Lines of Code in mod_gnutls: 1,886 | ||
15 | |||
16 | Because of writing mod_gnutls, I now understand how input and output filters work, | ||
17 | better than I ever thought possible. It was a little painful at times, and some parts | ||
18 | lift code and ideas directly from mod_ssl. Kudos to the original authors of mod_ssl. | ||
19 | |||
20 | ---------------------------- | ||
21 | |||
22 | Author: Paul Querna <chip force-elite.com | ||
23 | |||
24 | License: Apache Software License v2.0. (see the LICENSE file for details) | ||
25 | |||
26 | Current Status: | ||
27 | - SSL and TLS connections with all popular browsers work! | ||
28 | - Sets some enviromental vars for scripts | ||
29 | - Supports Memcached as a distributed SSL Session Cache | ||
30 | - Supports DBM as a local SSL Session Cache | ||
31 | |||
32 | Future Development: | ||
33 | - Support for Server Name Indication (partial support is in, but disabled) | ||
34 | - Support for Client Certificates | ||
35 | |||
36 | Basic Configuration: | ||
37 | |||
38 | LoadModule gnutls_module modules/mod_gnutls.so | ||
39 | |||
40 | # mod_gnutls can optionaly use a memcached server to store it's SSL Sessions. | ||
41 | # This is useful in a cluster enviroment, where you want all of your servers | ||
42 | # to share a single SSL Session Cache. | ||
43 | #GnuTLSCache memcache "127.0.0.1 server2.example.com server3.example.com" | ||
44 | |||
45 | # The Default method is to use a DBM backed Cache. It isn't super fast, but | ||
46 | # it is portable and does not require another server to be running like memcached. | ||
47 | GnuTLSCache dbm conf/gnutls_cache | ||
48 | |||
49 | <VirtualHost 1.2.3.4:443> | ||
50 | # insert other directives ... here ... | ||
51 | |||
52 | # This enables the mod_gnutls Handlers for this Virtual Host | ||
53 | GnuTLSEnable On | ||
54 | |||
55 | # This is the Private key for your server. | ||
56 | GnuTLSKeyFile conf/server.key | ||
57 | |||
58 | # This is the Server Certificate. | ||
59 | GnuTLSCertificateFile conf/server.cert | ||
60 | </VirtualHost> | ||
diff --git a/configure.ac b/configure.ac index 772177c..abeefc9 100644 --- a/configure.ac +++ b/configure.ac | |||
@@ -38,7 +38,7 @@ MODULE_LIBS="${APR_MEMCACHE_LIBS} ${LIBGNUTLS_LIBS}" | |||
38 | AC_SUBST(MODULE_CFLAGS) | 38 | AC_SUBST(MODULE_CFLAGS) |
39 | AC_SUBST(MODULE_LIBS) | 39 | AC_SUBST(MODULE_LIBS) |
40 | 40 | ||
41 | AC_CONFIG_FILES([Makefile src/Makefile include/mod_gnutls.h]) | 41 | AC_CONFIG_FILES([Makefile src/Makefile include/mod_gnutls.h data/Makefile]) |
42 | AC_OUTPUT | 42 | AC_OUTPUT |
43 | 43 | ||
44 | echo "---" | 44 | echo "---" |