]>
git.ipfire.org Git - thirdparty/xfsprogs-dev.git/blob - db/type.h
1 // SPDX-License-Identifier: GPL-2.0
3 * Copyright (c) 2000-2001,2005 Silicon Graphics, Inc.
9 #define szof(x,y) sizeof(((x *)0)->y)
10 #define szcount(x,y) (szof(x,y) / szof(x,y[0]))
14 TYP_AGF
, TYP_AGFL
, TYP_AGI
, TYP_ATTR
, TYP_BMAPBTA
,
15 TYP_BMAPBTD
, TYP_BNOBT
, TYP_CNTBT
, TYP_RMAPBT
, TYP_REFCBT
, TYP_DATA
,
16 TYP_DIR2
, TYP_DQBLK
, TYP_INOBT
, TYP_INODATA
, TYP_INODE
,
17 TYP_LOG
, TYP_RTBITMAP
, TYP_RTSUMMARY
, TYP_SB
, TYP_SYMLINK
,
18 TYP_TEXT
, TYP_FINOBT
, TYP_NONE
25 typedef void (*opfunc_t
)(const struct field
*fld
, int argc
, char **argv
);
26 typedef void (*pfunc_t
)(int action
, const struct field
*fld
, int argc
, char **argv
);
33 const struct field
*fields
;
34 const struct xfs_buf_ops
*bops
;
35 unsigned long crc_off
;
36 #define TYP_F_NO_CRC_OFF (-1UL)
37 #define TYP_F_CRC_FUNC (-2UL)
38 void (*set_crc
)(struct xfs_buf
*);
40 extern const typ_t
*typtab
, *cur_typ
;
42 extern void type_init(void);
43 extern void type_set_tab_crc(void);
44 extern void type_set_tab_spcrc(void);
45 extern void handle_block(int action
, const struct field
*fields
, int argc
,
47 extern void handle_string(int action
, const struct field
*fields
, int argc
,
49 extern void handle_struct(int action
, const struct field
*fields
, int argc
,
51 extern void handle_text(int action
, const struct field
*fields
, int argc
,