$continue = 1; //Checking for Thawte Freemail members, who aren´t notaries if($_SERVER['SSL_CLIENT_S_DN_CN'] == 'Thawte Freemail Member') { $continue = 0; echo _("I wasn't able to locate your name on your certificate, as such you can't continue with this process."); } //Extracting the Email address from the certificate that is presented, looking up the email in the database to find the user that has registered it. if($continue == 1) { $addy = array(); $emails = explode("/", trim($_SERVER['SSL_CLIENT_S_DN'])); foreach($emails as $email) { $bits = explode("=", $email); if($bits['0'] == "emailAddress") { $query = "select * from `email` where `email`='".$bits['1']."' and `deleted`=0 and hash=''"; $account = mysql_query($query); if(mysql_num_rows($account)) $addy[] = $bits['1']; } } } //Verifying that we found a record with that email address if(count($addy) <= 0 && $continue == 1) { $continue = 0; echo _("I wasn't able to match any email accounts on your certificate to any accounts in our database, as such I can't continue with this process."); } //If we found one, we extract the member-id from the sql result of the query we did above, and fetch the name of that user if($continue == 1) { $row = mysql_fetch_assoc($account); $memid = $row['memid']; $tverifybits = explode(" ", trim(strtr($_SERVER['SSL_CLIENT_S_DN_G'],",.","")), 2); //Fetching the name of the user we have in the database: $query = "select `fname`, `mname`, `lname`, `suffix` from `users` where `id`='$memid' and `deleted`=0"; $res = mysql_query($query); $row = mysql_fetch_assoc($res); //Building the user´s name, and ignoring punctuation $cacert_name=$row['fname']." ".$row['mname']." ".$row['lname']." ".$row['suffix']; $cacert_name=strtr($cacert_name,",.",""); $cacert_name=trim(str_replace(" ", " ", $cacert_name)); //Generate a short name form without the middle name $cacert_short_name=$row['fname']." ".$row['lname']." ".$row['suffix']; $cacert_short_name=strtr($cacert_short_name,",.",""); $cacert_short_name=trim(str_replace(" ", " ", $cacert_short_name)); $firstname = trim($tverifybits['0']); $lastname = trim($_SERVER['SSL_CLIENT_S_DN_S']); $tverify_name=strtr("$firstname $lastname",",.",""); if(($cacert_name != $tverify_name) and ($cacert_short_name == $tverify_name)) { $continue = 0; printf(_("Your CAcert account contains a middle name (%s), but we cannot verify this middle name with the certificate."),$row['mname']); } if($cacert_name != $tverify_name) { $continue = 0; printf(_("The name and email address on your certificate (%s) could not be exactly matched to any stored in our database (%s), as such I'm not able to continue with this process."),$tverify_name,$cacert_name); } } if($_SERVER['SSL_CLIENT_VERIFY'] == "SUCCESS" && $continue == 1) { $_SESSION['_config']['uid'] = $row['memid']; $_SESSION['_config']['CN'] = trim($_SERVER['SSL_CLIENT_S_DN']); ?>
=_("By just submitting your Thawte certificate you can be issued 50 points automatically to any matching account in the system that you operate.")?>
=_("To receive an additional 40 points you must also include a valid link to your notary listing on the Thawte website.")?>
=_("If you meet the above criteria you are also elligible to receive an additional 60 points by submitting a legible government issued copy of your photo ID. If details on your photo ID aren't legible you may be excluded from receiving these points.")?>
echo $_SESSION['_config']['errmsg']."
"; unset($_SESSION['_config']['errmsg']); } ?> } else if($continue == 1) { echo _("1I'm sorry, I couldn't verify your certificate"); } ?>