NAME
    Apache2::ModSSL - a Perl Interface to mod_ssl functions

SYNOPSIS
     use Apache2::ModSSL;

     my $c=$r->connection;
     if( $c->is_https ) {
       $dn=$c->ssl_var_lookup('SSL_SERVER_S_DN');
       $nsComment=$c->ssl_ext_lookup(0, '2.16.840.1.113730.1.13');
     }

ABSTRACT
    "Apache2::ModSSL" adds a few functions that are exported from "mod_ssl"
    to the "Apache2::Connection" class.

METHODS
    $c->is_https
        "is_https()" returns 1 if the connection is SSL-encrypted, 0 if it
        is not encrypted but mod_ssl is available in the apache binary or
        "undef" if mod_ssl is not loaded.

    $c->ssl_var_lookup(NAME)
        "ssl_var_lookup()" returns the value of an SSL variable. If mod_ssl
        is not loaded "undef" is returned. A query for an unknown variable
        returns an empty string.

        For a list of known variables please refer to the mod_ssl
        documentation or mod_ssl source code
        ("httpd-2.0.52/modules/ssl/ssl_engine_vars.c"). At the time of this
        writing this list includes (not complete):

        HTTPS
        API_VERSION
        SSL_VERSION_PRODUCT
        SSL_VERSION_INTERFACE
        SSL_VERSION_LIBRARY
        SSL_PROTOCOL
        SSL_SESSION_ID
        SSL_CIPHER
        SSL_CLIENT_CERT_CHAIN_n (where n is a number)
        SSL_CLIENT_VERIFY
        SSL_(CLIENT|SERVER)_M_VERSION
        SSL_(CLIENT|SERVER)_M_SERIAL
        SSL_(CLIENT|SERVER)_V_START
        SSL_(CLIENT|SERVER)_V_END
        SSL_(CLIENT|SERVER)_(S|I)_DN
        SSL_(CLIENT|SERVER)_(S|I)_DN_C
        SSL_(CLIENT|SERVER)_(S|I)_DN_ST
        SSL_(CLIENT|SERVER)_(S|I)_DN_SP
        SSL_(CLIENT|SERVER)_(S|I)_DN_L
        SSL_(CLIENT|SERVER)_(S|I)_DN_O
        SSL_(CLIENT|SERVER)_(S|I)_DN_OU
        SSL_(CLIENT|SERVER)_(S|I)_DN_CN
        SSL_(CLIENT|SERVER)_(S|I)_DN_T
        SSL_(CLIENT|SERVER)_(S|I)_DN_I
        SSL_(CLIENT|SERVER)_(S|I)_DN_G
        SSL_(CLIENT|SERVER)_(S|I)_DN_S
        SSL_(CLIENT|SERVER)_(S|I)_DN_D
        SSL_(CLIENT|SERVER)_(S|I)_DN_UID
        SSL_(CLIENT|SERVER)_(S|I)_DN_Email
        SSL_(CLIENT|SERVER)_A_SIG
        SSL_(CLIENT|SERVER)_A_KEY
        SSL_(CLIENT|SERVER)_CERT

    $c->ssl_ext_lookup(WHERE, OID)
        "ssl_ext_lookup()" returns the value of an SSL certificate
        extension. "WHERE" specifies whether to look in the WEB server
        certificate ("WHERE==0") or in the client certificate ("WHERE==1").
        "OID" is the Object Identifier for the extension in dotted notation,
        e.g. 2.16.840.1.11330.1.13 for "Netscape Comment" or 2.5.29.19 for
        "X509v3 Basic Constraints".

EXPORTS
    none.

SEE ALSO
    <http://perl.apache.org/docs/2.0/api/Apache2/Connection.html>,
    <http://httpd.apache.org/docs-2.0/mod/mod_ssl.html>

AUTHOR
    Torsten Foertsch, <torsten.foertsch@gmx.net>

COPYRIGHT AND LICENSE
    Copyright (C) 2004-2008 by Torsten Foertsch

    This library is free software; you can redistribute it and/or modify it
    under the same terms as Perl itself.

INSTALLATION
     perl Makefile.PL -apxs /path/to/apxs
     make
     make test
     make install

DEPENDENCIES
    mod_perl 2.0.0-RC5, httpd 2.0.52, perl 5.8.0