void inossize(struct ext2fs_dinode *dp, u_int64_t size) { if ((letoh16(dp->e2di_mode) & IFMT) == IFREG) { dp->e2di_size_hi = htole32(size >> 32); if (size >= 0x80000000U) if (!setlarge()) return; } else if (size >= 0x80000000U) {
void inossize(struct ext2fs_dinode *dp, u_int64_t size) { if ((fs2h16(dp->e2di_mode) & IFMT) == IFREG) { dp->e2di_size_high = h2fs32(size >> 32); if (size > INT32_MAX) if (!setlarge()) return; } else if (size > INT32_MAX) {
u_int64_t inosize(struct ext2fs_dinode *dp) { u_int64_t size = letoh32(dp->e2di_size); if ((letoh16(dp->e2di_mode) & IFMT) == IFREG) size |= (u_int64_t)letoh32(dp->e2di_size_hi) << 32; if (size >= 0x80000000U) (void)setlarge(); return size; }
u_int64_t inosize(struct ext2fs_dinode *dp) { u_int64_t size = fs2h32(dp->e2di_size); if ((fs2h16(dp->e2di_mode) & IFMT) == IFREG) size |= (u_int64_t)fs2h32(dp->e2di_size_high) << 32; if (size > INT32_MAX) (void)setlarge(); return size; }