Hello, I am running Apache 2.0.49 with mod_perl, mod_ssl, on Windows 2000. The problem that I am trying to solve is to take a user's certificate, find out that information, and rewrite that information in the Apache Environment table.
When the page I have finally loads, the client machine never receives the updated information and still gets the old information from the cert. Is there some scope of the perl module that I need to worry about? My only guess would be I need to do something special to modify the stuff in Apache through perl. How do I override that information in Apache? -Richard D. For debugging purposes, I print the information in Apache's standard error log. for example, here's some of my code: package Apache::Certmachine; use strict; use mod_perl(); use Apache(); use Apache::Constants qw(:common); use Net::LDAP; use Text::ParseWords; use MIME::Base64; use CGI qw(:standard); sub handler{ my $r =shift; return OK unless $r->is_main; my $key=""; # print the env variables foreach $key (sort(keys(%ENV)) { print STDERR "Before:$key = $ENV{$key}; } my $cn = $subr->subprocess_env('SSL_CLIENT_DN_CN'); my $dn = $subr->subprocess_env('SSL_CLIENT_DN'); #print the CN and DN from cert print STDERR "SSL_CLIENT_DN_CN: $CN"; print STDERR "SSL_CLIENT_DN: $DN"; #now try to reset the DN and CN with values $dn = "C=US, O=DISNEYLAND, CN=ETHAN MICHEAL HUNT"; $cn = "CN=ETHAN MICHEAL HUNT"; $subr - >subprocess_env->set(SSL_CLIENT_S_DN=>$dn); $subr - >subprocess_env->set(SSL_CLIENT_S_DN_CN=>$cn); #i can pull out this info again, and it appears to be # reset, but the client never gets this info. my $temp_dn = $subr->subprocess_env('SSL_CLIENT_S_DN'); print STDERR "new dn: $temp_dn"; my $temp_cn = $subr->subprocess_env('SSL_CLIENT_S_DN_CN'); print STDERR "new Cn: $temp_cn"; #print out all the std variables after the modssl $subr->subprocess_env(); foreach $key(sort keys(%ENV)) { print STDERR "After:$key = $ENV{$KEY} \N"; } } __________________________________ Do you Yahoo!? Vote for the stars of Yahoo!'s next ad campaign! http://advision.webevents.yahoo.com/yahoo/votelifeengine/ -- Report problems: http://perl.apache.org/bugs/ Mail list info: http://perl.apache.org/maillist/modperl.html List etiquette: http://perl.apache.org/maillist/email-etiquette.html