You are here

function file_upload_secure_validator_upload_validate in File Upload Secure Validator 7.2

Same name and namespace in other branches
  1. 7 file_upload_secure_validator.module \file_upload_secure_validator_upload_validate()

Validation callback for 'file_upload_secure_validator_upload_validate'.

Parameters

object $file: The file to be uploaded.

1 call to file_upload_secure_validator_upload_validate()
FileUploadSecureValidatorUnitTestCase::testExtensions in tests/file_upload_secure_validator.test
Basic test function for testing the extension.

File

./file_upload_secure_validator.module, line 37
Provides file upload extension validation through php fileinfo.

Code

function file_upload_secure_validator_upload_validate($file) {
  $errors = array();
  $error_message = t("There was a problem with this file's extension.");

  // Get mime type from filename.
  $mime_by_filename = file_get_mimetype($file->filename);

  // FILEINFO_MIME_TYPE - pre-defined constant in fileinfo library.
  // Used to inform the library that we want Mime-type information of a file.
  // Refer http://php.net/manual/en/fileinfo.constants.php for more information.
  $finfo = finfo_open(FILEINFO_MIME_TYPE);
  $real_mime = finfo_file($finfo, $file->uri);
  if ($mime_by_filename !== $real_mime) {
    $errors[] = $error_message;
  }
  finfo_close($finfo);
  return $errors;
}