Tree [3ae6d0] master /
 History



File Date Author Commit
 docs 2009-04-08 JSterling JSterling [81f689] oops, added some backup and svn files. removin...
 example 2012-05-09 sterling sterling [9aa2a5] fix 2 things: 1 aggressive -Werror with new li...
 include 2012-05-08 sterling sterling [574583] put updates for filter tests
 src 2012-05-09 sterling sterling [3ae6d0] remove the error log - convert to debug in prot...
 test 2012-05-09 sterling sterling [9aa2a5] fix 2 things: 1 aggressive -Werror with new li...
 AUTHORS 2009-03-30 JSterling JSterling [047f11] initial load
 COPYING 2009-03-30 JSterling JSterling [047f11] initial load
 ChangeLog 2009-03-30 JSterling JSterling [047f11] initial load
 Doxyfile 2009-03-30 JSterling JSterling [047f11] initial load
 INSTALL 2009-03-30 JSterling JSterling [047f11] initial load
 Makefile.am 2009-03-30 JSterling JSterling [047f11] initial load
 NEWS 2009-03-30 JSterling JSterling [047f11] initial load
 README 2009-03-30 JSterling JSterling [047f11] initial load
 autogen.sh 2009-03-30 JSterling JSterling [047f11] initial load
 commit.pl 2009-03-30 JSterling JSterling [047f11] initial load
 configure.in 2009-03-30 JSterling JSterling [047f11] initial load
 mod_cplusplus.dsp 2009-03-30 JSterling JSterling [047f11] initial load
 mod_cplusplus.kdevprj 2009-03-30 JSterling JSterling [047f11] initial load
 mod_cplusplus.vcproj 2009-03-30 JSterling JSterling [047f11] initial load

Read Me

mod_cplusplus is a proper apache module which allows you to load cpp objects 
as handlers for Apache-2.0.  It differs from other modules i've seen in that 
it manages the loading and calling of separate shared objects containing your
handler classes.  This allows you to easily and cleanly run an entire site
with c++ handlers.

Simply subclass from ApacheHandler and implement whichever methods you are interested in:

    virtual int handler()
    virtual int fixups()
    virtual int post_read_request() 
    virtual int translate_name() 
    virtual int header_parser()
    virtual int check_user_id()
    virtual int access_checker()
    virtual int auth_checker()
    virtual int type_checker()
    virtual int logger()

there is also a built in utility to fetch config directives (passed using 
PassCPPVar directive):
    char *get_cpp_var(r, name)

You only need to override the methods you want to handle for the given object, 
otherwise that phase will be declined.