Replace eregi with preg_match

This commit is contained in:
John Crisp
2020-02-21 12:32:17 +01:00
parent 1b06a7e1c3
commit a92b6a5af9
2 changed files with 47 additions and 25 deletions

View File

@@ -160,28 +160,33 @@ function undo_magic_quotes(&$a) {
# Returns TRUE if argument contains only alphabetic characters. # Returns TRUE if argument contains only alphabetic characters.
# #
function is_alpha($v) { function is_alpha($v) {
return (eregi('[^A-Z]',$v) ? false : true) ; #return (eregi('[^A-Z]',$v) ? false : true) ;
#return (preg_match('/[^A-Z]'.'/i',$v,PCRE_CASELESS) ? false : true) ; # Replaced eregi() with preg_match()
return (preg_match('/[^A-Z]/i',$v) ? false : true) ;
} }
# #
# Returns TRUE if argument contains only numeric characters. # Returns TRUE if argument contains only numeric characters.
# #
function is_num($v) { function is_num($v) {
return (eregi('[^0-9]',$v) ? false : true) ; #return (eregi('[^0-9]',$v) ? false : true) ;
return (preg_match('/[^0-9]/',$v) ? false : true) ; # Replaced eregi() with preg_match()
} }
# #
# Returns TRUE if argument contains only alphanumeric characters. # Returns TRUE if argument contains only alphanumeric characters.
# #
function is_alnum($v) { function is_alnum($v) {
return (eregi('[^A-Z0-9]',$v) ? false : true) ; #return (eregi('[^A-Z0-9]',$v) ? false : true) ;
return (preg_match('/[^A-Z0-9]/i',$v) ? false : true) ; # Replaced eregi() with preg_match()
} }
# #
# Returns TRUE if argument is in proper e-mail address format. # Returns TRUE if argument is in proper e-mail address format.
# #
function is_email($v) { function is_email($v) {
return (eregi('^[^@ ]+\@[^@ ]+\.[A-Z]{2,4}$',$v) ? true : false); #return (eregi('^[^@ ]+\@[^@ ]+\.[A-Z]{2,4}$',$v) ? true : false);
return (preg_match('/^[^@ ]+\@[^@ ]+\.[A-Z]{2,4}$'.'/i',$v) ? true : false); # Replaced eregi() with preg_match()
} }
# #
@@ -214,14 +219,18 @@ function is_fqdn($FQDN) {
# Checks regexp in every element of an array, returns TRUE as soon # Checks regexp in every element of an array, returns TRUE as soon
# as a match is found. # as a match is found.
# #
function eregi_array($regexp, $a) {
foreach($a as $e) { function eregi_array($regexp, $arr) {
if (eregi($regexp,$e)) return true;
}
return false;
}
foreach ($arr as $elem) {
#if (eregi($regexp,$elem))
if (! preg_match('/^\/.*\/$/', $regexp)) # if it doesn't begin and end with '/'
$regexp = '/'.$regexp.'/'; # pad the $regexp with '/' to prepare for preg_match()
if (preg_match($regexp.'i',$elem)) # Replaced eregi() with preg_match()
return true;
}
return false;
}
# #
# Reads entire file into a string # Reads entire file into a string
# Same as file_get_contents in php >= 4.3.0 # Same as file_get_contents in php >= 4.3.0

View File

@@ -250,18 +250,22 @@ function CAdb_to_array($search = '.*') {
global $config; global $config;
# Prepend a default status to search string if missing. # Prepend a default status to search string if missing.
if (! ereg('^\^\[.*\]', $search)) $search = '^[VRE].*'.$search; #if (! ereg('^\^\[.*\]', $search)) $search = '^[VRE].*'.$search;
if (! preg_match("/^\^\[.*\]/", $search)) $search = '^[VRE].*'.$search;
# Include valid certs? # Include valid certs?
if (ereg('^\^\[.*V.*\]',$search)) $inclval = true; #if (ereg('^\^\[.*V.*\]',$search)) $inclval = true;
if (preg_match('/^\^\[.*V.*\]/',$search)) $inclval = true;
# Include revoked certs? # Include revoked certs?
if (ereg('^\^\[.*R.*\]',$search)) $inclrev = true; #if (ereg('^\^\[.*R.*\]',$search)) $inclrev = true;
if (preg_match('/^\^\[.*R.*\]/',$search)) $inclrev = true;
# Include expired certs? # Include expired certs?
if (ereg('^\^\[.*E.*\]',$search)) $inclexp = true; #if (ereg('^\^\[.*E.*\]',$search)) $inclexp = true;
if (preg_match('/^\^\[.*E.*\]/',$search)) $inclexp = true;
# There isn't really a status of 'E' in the openssl index. # There isn't really a status of 'E' in the openssl index.
# Change (E)xpired to (V)alid within the search string. # Change (E)xpired to (V)alid within the search string.
$search = ereg_replace('^(\^\[.*)E(.*\])','\\1V\\2',$search); #$search = ereg_replace('^(\^\[.*)E(.*\])','\\1V\\2',$search);
$search = preg_replace('/^(\^\[.*)E(.*\])/','${1}V${2}',$search);
$db = array(); $db = array();
exec('egrep -i '.escshellarg($search).' '.$config['index'], $x); exec('egrep -i '.escshellarg($search).' '.$config['index'], $x);
@@ -440,7 +444,9 @@ function CA_cert_subject($serial) {
// //
function CA_cert_cname($serial) { function CA_cert_cname($serial) {
global $config; global $config;
return(ereg_replace('^.*/CN=(.*)/.*','\\1',CA_cert_subject($serial))); #return(ereg_replace('^.*/CN=(.*)/.*','\\1',CA_cert_subject($serial)));
return(preg_replace('/^.*\/CN=(.*)\/.*/','${1}',CA_cert_subject($serial)));
} }
// //
@@ -786,25 +792,32 @@ function CA_cert_type($serial) {
$certtext = CA_cert_text($serial); $certtext = CA_cert_text($serial);
if (ereg('OpenSSL.* (E.?mail|Personal) .*Certificate', $certtext) && ereg('Code Signing', $certtest)) { #if (ereg('OpenSSL.* (E.?mail|Personal) .*Certificate', $certtext) && ereg('Code Signing', $certtest)) {
$cert_type = 'email_signing'; if (preg_match('~OpenSSL.* (E.?mail|Personal) .*Certificate~', $certtext) && preg_match('~Code Signing~', $certtest)) {
$cert_type = 'email_codesigning';
} }
if (ereg('OpenSSL.* (E.?mail|Personal) .*Certificate', $certtext)) { #if (ereg('OpenSSL.* (E.?mail|Personal) .*Certificate', $certtext)) {
if (preg_match('~OpenSSL.* (E.?mail|Personal) .*Certificate~', $certtext)) {
$cert_type = 'email'; $cert_type = 'email';
} }
elseif (ereg('OpenSSL.* Server .*Certificate', $certtext)) { #elseif (ereg('OpenSSL.* Server .*Certificate', $certtext)) {
elseif (preg_match('~OpenSSL.* Server .*Certificate~', $certtext)) {
$cert_type = 'server'; $cert_type = 'server';
} }
elseif (ereg('timeStamping|Time Stamping', $certtext)) { #elseif (ereg('timeStamping|Time Stamping', $certtext)) {
elseif (preg_match('~timeStamping|Time Stamping~', $certtext)) {
$cert_type = 'time_stamping'; $cert_type = 'time_stamping';
} }
elseif (ereg('TLS Web Client Authentication', $certtext) && ereg('TLS Web Server Authentication', $certtext)) { #elseif (ereg('TLS Web Client Authentication', $certtext) && ereg('TLS Web Server Authentication', $certtext)) {
elseif (preg_match('~TLS Web Client Authentication~', $certtext) && preg_match('~TLS Web Server Authentication~', $certtext)) {
$cert_type = 'vpn_client_server'; $cert_type = 'vpn_client_server';
} }
elseif (ereg('TLS Web Client Authentication', $certtext)) { #elseif (ereg('TLS Web Client Authentication', $certtext)) {
elseif (preg_match('~TLS Web Client Authentication~', $certtext)) {
$cert_type = 'vpn_client'; $cert_type = 'vpn_client';
} }
elseif (ereg('TLS Web Server Authentication', $certtext)) { #elseif (ereg('TLS Web Server Authentication', $certtext)) {
elseif (preg_match('~TLS Web Server Authentication~', $certtext)) {
$cert_type = 'vpn_server'; $cert_type = 'vpn_server';
} }
else { else {