types.hh (fstransform-0.9.3-src) | : | types.hh (fstransform-0.9.4) | ||
---|---|---|---|---|
/* | /* | |||
* fstransform - transform a file-system to another file-system type, | * common types for fsattr, fsmove, fsremap | |||
* preserving its contents and without the need for a backup | ||||
* | * | |||
* Copyright (C) 2011-2012 Massimiliano Ghilardi | * Copyright (C) 2011-2012 Massimiliano Ghilardi | |||
* | * | |||
* This program is free software: you can redistribute it and/or modify | * This program is free software: you can redistribute it and/or modify | |||
* it under the terms of the GNU General Public License as published by | * it under the terms of the GNU General Public License as published by | |||
* the Free Software Foundation, either version 3 of the License, or | * the Free Software Foundation, either version 2 of the License, or | |||
* (at your option) any later version. | * (at your option) any later version. | |||
* | * | |||
* This program is distributed in the hope that it will be useful, | * This program is distributed in the hope that it will be useful, | |||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |||
* GNU General Public License for more details. | * GNU General Public License for more details. | |||
* | * | |||
* You should have received a copy of the GNU General Public License | * You should have received a copy of the GNU General Public License | |||
* along with this program. If not, see <http://www.gnu.org/licenses/>. | * along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
* | * | |||
skipping to change at line 59 | skipping to change at line 58 | |||
# include <unistd.h> // " " " | # include <unistd.h> // " " " | |||
#endif | #endif | |||
#include <string> // for std::string | #include <string> // for std::string | |||
#include "traits.hh" // for FT_TYPE_TO_UNSIGNED | #include "traits.hh" // for FT_TYPE_TO_UNSIGNED | |||
// ft_size is the type used to represent number of items in memory. when size_t exists, they must be the same type | // ft_size is the type used to represent number of items in memory. when size_t exists, they must be the same type | |||
typedef size_t ft_size; | typedef size_t ft_size; | |||
// ft_ssize is the signed version of ft_size. when ssize_t exists, they must be | ||||
the same type | ||||
typedef ssize_t ft_ssize; | ||||
// ft_off is the type used to represent files length and block devices length. w hen off_t exists, they must be the same type | // ft_off is the type used to represent files length and block devices length. w hen off_t exists, they must be the same type | |||
typedef off_t ft_off; | typedef off_t ft_off; | |||
// ft_u64 must be exactly 64-bit unsigned integer. only used for ioctl(FS_IOC_FI EMAP), ioctl(BLKGETSIZE64) | // ft_u64 must be exactly 64-bit unsigned integer. used for ioctl(FS_IOC_FIEMAP) , ioctl(BLKGETSIZE64), e4_cpu2fs() and e4_fs2cpu() | |||
typedef uint64_t ft_u64; | typedef uint64_t ft_u64; | |||
// ft_u32 must be exactly 32-bit unsigned integer. only used for ioctl(FS_IOC_FI EMAP) | // ft_u32 must be exactly 32-bit unsigned integer. used for ioctl(FS_IOC_FIEMAP) , e4_cpu2fs() and e4_fs2cpu() | |||
typedef uint32_t ft_u32; | typedef uint32_t ft_u32; | |||
// ft_i32 must be exactly 32-bit signed integer. used for ft_rope_impl | ||||
typedef int32_t ft_i32; | ||||
// ft_u16 must be exactly 16-bit unsigned integer. only used for e4_cpu2fs() and | ||||
e4_fs2cpu() | ||||
typedef uint16_t ft_u16; | ||||
// ft_u8 must be exactly 8-bit unsigned integer. only used for e4_cpu2fs() and e | ||||
4_fs2cpu() | ||||
typedef uint8_t ft_u8; | ||||
// ft_dev is the type used for ID of block devices. when dev_t exists, they must be the same type | // ft_dev is the type used for ID of block devices. when dev_t exists, they must be the same type | |||
typedef dev_t ft_dev; | typedef dev_t ft_dev; | |||
// ft_mode is the type used for file/directory permissions. when mode_t exists, they must be the same type | // ft_mode is the type used for file/directory permissions. when mode_t exists, they must be the same type | |||
typedef mode_t ft_mode; | typedef mode_t ft_mode; | |||
// ft_inode is the type used for inode numbers. when ino_t exists, they must be the same type | // ft_inode is the type used for inode numbers. when ino_t exists, they must be the same type | |||
typedef ino_t ft_inode; | typedef ino_t ft_inode; | |||
// ft_nlink is the type used for inode link count. when nlink_t exists, they mus | ||||
t be the same type | ||||
typedef nlink_t ft_nlink; | ||||
// ft_uoff is the unsigned variant of ft_off (in case ft_off is unsigned, they w ill be the same type) | // ft_uoff is the unsigned variant of ft_off (in case ft_off is unsigned, they w ill be the same type) | |||
typedef FT_TYPE_TO_UNSIGNED(ft_off) ft_uoff; | typedef FT_TYPE_TO_UNSIGNED(ft_off) ft_uoff; | |||
// ft_uint is a medium-size unsigned integer: smaller than ft_uoff, | // ft_uint is a medium-size unsigned integer: smaller than ft_uoff, | |||
// but large enough to store blocks count for many devices | // but large enough to store blocks count for many devices | |||
typedef unsigned int ft_uint; | typedef unsigned int ft_uint; | |||
// ft_ull must be the largest unsigned integer type existing on the platform | // ft_ull must be the largest unsigned integer type existing on the platform | |||
#ifdef FT_HAVE_LONG_LONG | #ifdef FT_HAVE_LONG_LONG | |||
typedef unsigned long long ft_ull; | typedef unsigned long long ft_ull; | |||
End of changes. 7 change blocks. | ||||
5 lines changed or deleted | 23 lines changed or added |