Make WordPress Core


Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/wp-includes/compat.php

    r29384 r18404  
    9595    }
    9696}
    97 
    98 if ( ! function_exists( 'hash_equals' ) ) :
    99 /**
    100  * Compare two strings in constant time.
    101  *
    102  * This function was added in PHP 5.6.
    103  * It can leak the length of a string.
    104  *
    105  * @since 3.9.2
    106  *
    107  * @param string $a Expected string.
    108  * @param string $b Actual string.
    109  * @return bool Whether strings are equal.
    110  */
    111 function hash_equals( $a, $b ) {
    112     $a_length = strlen( $a );
    113     if ( $a_length !== strlen( $b ) ) {
    114         return false;
    115     }
    116     $result = 0;
    117 
    118     // Do not attempt to "optimize" this.
    119     for ( $i = 0; $i < $a_length; $i++ ) {
    120         $result |= ord( $a[ $i ] ) ^ ord( $b[ $i ] );
    121     }
    122 
    123     return $result === 0;
    124 }
    125 endif;
Note: See TracChangeset for help on using the changeset viewer.