Add fopen64 wrapper.
The wrapper reuses the internal uniyfs_fopen function, which was implemented for fopen wrapper, with the exception of adding the O_LARGEFILE flag when creating new files.
Motivation and Context
Several 64-bit version wrappers are missing, including fopen64, stat64, fstat64, etc. One known application, Montage, uses those functions (https://github.com/LLNL/UnifyFS/issues/769).
The documentation on adding new wrappers is outdated. So this PR adds only one wrapper and tries to make sure all necessary files are modified. We can update the doc later if everything works fine.
Types of changes
[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Performance enhancement (non-breaking change which improves efficiency)
[ ] Code cleanup (non-breaking change which makes code smaller or more readable)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Testing (addition of new tests or update to current tests)
[ ] Documentation (a change to man pages or other documentation)
Checklist:
[x] My code follows the UnifyFS code style requirements.
Description
Add fopen64 wrapper. The wrapper reuses the internal
uniyfs_fopen
function, which was implemented for fopen wrapper, with the exception of adding the O_LARGEFILE flag when creating new files.Motivation and Context
Several 64-bit version wrappers are missing, including fopen64, stat64, fstat64, etc. One known application, Montage, uses those functions (https://github.com/LLNL/UnifyFS/issues/769). The documentation on adding new wrappers is outdated. So this PR adds only one wrapper and tries to make sure all necessary files are modified. We can update the doc later if everything works fine.
Types of changes
Checklist: