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