1 #ifndef __GETGEN_H__ 2 #define __GETGEN_H__ 3 4 #include <sys/types.h> 5 #include <sys/param.h> 6 7 #define GGIOC ('g' << 8) 8 #define GG_IOC_GET_GENERATION (GGIOC | 1) 9 #define GG_IOC_GET_TXG (GGIOC | 2) 10 11 #pragma pack(1) 12 typedef struct gg_ioc_get_generation { 13 /* input */ 14 uint64_t inode; 15 uint32_t fd; /* open fd to any object on the same fs */ 16 /* noput */ 17 uint32_t padding; 18 /* output */ 19 uint64_t generation; 20 uint64_t crtime; 21 uint64_t guid; 22 char dataset[MAXPATHLEN]; 23 } gg_ioctl_get_generation_t; 24 #pragma pack() 25 26 #pragma pack(1) 27 typedef struct gg_ioc_get_txg { 28 /* output */ 29 uint64_t txg; 30 /* input */ 31 char dataset[MAXPATHLEN]; 32 } gg_ioctl_get_txg_t; 33 #pragma pack() 34 35 #endif 36 37