xref: /titanic_51/usr/src/common/getgen/getgen.h (revision 372a60c34a6075464eaab2e7e079cbbc781f9215)
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