function drupal_generate_test_ua
7.x bootstrap.inc | drupal_generate_test_ua($prefix) |
Generates a user agent string with a HMAC and timestamp for simpletest.
3 calls to drupal_generate_test_ua()
- DrupalWebTestCase::curlInitialize in drupal-7.x/
modules/ simpletest/ drupal_web_test_case.php - Initializes the cURL connection.
- drupal_http_request in drupal-7.x/
includes/ common.inc - Performs an HTTP request.
- SimpleTestFunctionalTest::testUserAgentValidation in drupal-7.x/
modules/ simpletest/ simpletest.test - Test validation of the User-Agent header we use to perform test requests.
File
- drupal-7.x/
includes/ bootstrap.inc, line 2546 - Functions that need to be loaded on every Drupal request.
Code
function drupal_generate_test_ua($prefix) {
static $key;
if (!isset($key)) {
// We use the salt from settings.php to make the HMAC key, since
// the database is not yet initialized and we can't access any Drupal variables.
// The file properties add more entropy not easily accessible to others.
$key = drupal_get_hash_salt() . filectime(__FILE__) . fileinode(__FILE__);
}
// Generate a moderately secure HMAC based on the database credentials.
$salt = uniqid('', TRUE);
$check_string = $prefix . ';' . time() . ';' . $salt;
return $check_string . ';' . drupal_hmac_base64($check_string, $key);
}