1) What's the correct way to check that a given apr_file_info_t was populated via stat and doesn't contain random garbage. I suppose I could query some bits of apr_file_info_get(), but since all struct members aren't simple types they could all contain garbage when uninitilized. Why there is no function that does this testing for me? there is some mentioning of testing the protection bit, to see whether the file exists? I suppose that this is a suggestion for what I want? If so, can we have an API apr_file_info_is_valid(), so that if in the future this protection bit changes our code will still work.
2) Assuming that I have an API that answers to (1), how do I know that finfo.filehand is a valid filehandle? It's possible that apr_file_info_t is valid after calling stat, but filehand may still contain a garbase. I see that implementations have a bit ->isopen in apr_file_t, but there is no API to test that bit.
FWIW, here is a dump of r->finfo during one of the executions reported by one of the users... it looks like it was stat'ed but filehand is bogus.
$2 = {pool = 0x819fe80, valid = 7598448, protection = 1877,
filetype = APR_REG, user = 48, group = 48, inode = 410325, device = 774,
nlink = 1, size = 7123, csize = 1077577583, atime = 1068909622000000,
mtime = 1027905783000000, ctime = 1068307947000000,
fname = 0x81a1818 "/usr/local/lxr/source", name = 0x0, filehand = 0x1}Thanks.
__________________________________________________________________ Stas Bekman JAm_pH ------> Just Another mod_perl Hacker http://stason.org/ mod_perl Guide ---> http://perl.apache.org mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com http://modperlbook.org http://apache.org http://ticketmaster.com
