private file downloads don't work with IE8 only when using hook_file_download I am trying to allow files that are within the /sites/default/files/private/ directory to available to users with correct role and this is working correctly within all browsers (including IE9) except for the IE8 browser.  It does not appear to be a particular file type since it does not work with either .pdf's or .doc's extension.  It their something special that I need to do to the "mime type" so that IE8 will successfully download these files?
I have listed below hook_file_download which determines when a requested file download is allowed based on a combination of the page $url and the requesting users role and I highlighted in bold the bottom of the function where it determines the mime type that is returned.  

function atf_retirees_file_download($uri) {
  $user = $GLOBALS['user'];
  $roles = $user-&gt;roles;
  $pos_inside_atf_alias = stripos($uri, '/inside-atf/');
  $pos_nibin_alias = stripos($uri, '/nibin-user-area/');
  if (($pos_inside_atf_alias === false &amp;&amp; $pos_nibin_alias === false) || ($pos_inside_atf_alias !== false &amp;&amp; !(in_array('ATF Retirees', $roles) || in_array('administrator', $roles))) || ($pos_nibin_alias !== false &amp;&amp; !(in_array('NIBIN User Area', $roles) || in_array('administrator', $roles)))) {
    return -1;  
  } else {
    **$mime_type = file_get_mimetype($uri);
    return array('Content-Type' =&gt; $mime_type);**
  }
}
I found that if I added "'Cache-Control' => 'private, must-revalidate'" to the returned array within hook_file_download that the file also downloads for IE8 (see below section).

$mime_type = file_get_mimetype($uri);
return array('Content-Type' =&gt; $mime_type, 'Cache-Control' =&gt; 'private, must-revalidate');