ported ext/fileinfo