bug 1184: Quick workaround for name collission on hex2bin on recent PHP versions bug-1184
authorBenny Baumann <BenBE@cacert.org>
Wed, 19 Mar 2014 11:04:35 +0000 (12:04 +0100)
committerBenny Baumann <BenBE@cacert.org>
Wed, 19 Mar 2014 11:04:35 +0000 (12:04 +0100)
includes/general.php
scripts/gpgfillmissingemail.php
www/gpg.php

index d89c0e6..95ed64a 100644 (file)
                return(0);
        }
 
-       function hex2bin($data)
+       function gpg_hex2bin($data)
        {
                while(strstr($data, "\\x"))
                {
index f328876..39f9d8f 100644 (file)
@@ -18,7 +18,7 @@
        require_once("../includes/mysql.php"); //general.php");
        //include "../includes/general.php";
 
-function hex2bin($data)
+function gpg_hex2bin($data)
        {
                while(strstr($data, "\\x"))
                {
@@ -69,7 +69,7 @@ echo "Found:\n";
                                if (preg_match("/<([\w.-]*\@[\w.-]*)>/", $bits[9],$match)) 
                                {
                                   //echo "Found: ".$match[1];
-                                   $mail = trim(hex2bin($match[1]));
+                                   $mail = trim(gpg_hex2bin($match[1]));
 
 
                                echo "EMail: *$mail**\n";
index 829bbcf..263c1d3 100644 (file)
@@ -187,18 +187,18 @@ function verifyEmail($email)
                        // Name (Comment) <Email>
                        if(preg_match("/^([^\(\)\[@<>]+) \(([^\(\)@<>]*)\) <([\w=\/%.-]*\@[\w.-]*|[\w.-]*\![\w=\/%.-]*)>/",$bits[9],$matches))
                        {
-                         $name=trim(hex2bin($matches[1]));
+                         $name=trim(gpg_hex2bin($matches[1]));
                          $nocomment=0;
-                         $comm=trim(hex2bin($matches[2]));
-                         $mail=trim(hex2bin($matches[3]));
+                         $comm=trim(gpg_hex2bin($matches[2]));
+                         $mail=trim(gpg_hex2bin($matches[3]));
                        }
                        // Name <EMail>
                        elseif(preg_match("/^([^\(\)\[@<>]+) <([\w=\/%.-]*\@[\w.-]*|[\w.-]*\![\w=\/%.-]*)>/",$bits[9],$matches))
                        {
-                         $name=trim(hex2bin($matches[1]));
+                         $name=trim(gpg_hex2bin($matches[1]));
                          $nocomment=1;
                          $comm="";
-                         $mail=trim(hex2bin($matches[2]));
+                         $mail=trim(gpg_hex2bin($matches[2]));
                        }
                        // Unrecognized format
                        else
@@ -357,13 +357,13 @@ function verifyEmail($email)
                                        $pos = strlen($bits[9]);
                                }
 
-                               $name = trim(hex2bin(trim(substr($bits[9], 0, $pos))));
+                               $name = trim(gpg_hex2bin(trim(substr($bits[9], 0, $pos))));
                                $nameok=verifyName($name);
                                if($nocomment == 0)
                                {
                                        $pos += 2;
                                        $pos2 = strpos($bits[9], ")");
-                                       $comm = trim(hex2bin(trim(substr($bits[9], $pos, $pos2 - $pos))));
+                                       $comm = trim(gpg_hex2bin(trim(substr($bits[9], $pos, $pos2 - $pos))));
                                        if($comm != "")
                                                $comment[] = $comm;
                                        $pos = $pos2 + 3;
@@ -374,7 +374,7 @@ function verifyEmail($email)
                                $mail="";
                                if (preg_match("/<([\w.-]*\@[\w.-]*)>/", $bits[9],$match)) {
                                        //echo "Found: ".$match[1];
-                                       $mail = trim(hex2bin($match[1]));
+                                       $mail = trim(gpg_hex2bin($match[1]));
                                }
                                else
                                {