quotactl: add decoding of if_dqinfo.dqi_flags constants
* xlat/if_dqinfo_flags.in: New file.
* quota.c: Include "xlat/if_dqinfo_flags.h".
(decode_cmd_data): Print struct if_dqinfo.dqi_flags using printflags.
diff --git a/quota.c b/quota.c
index ec075f5..5926e2e 100644
--- a/quota.c
+++ b/quota.c
@@ -46,6 +46,7 @@
#include "xlat/xfs_quota_flags.h"
#include "xlat/xfs_dqblk_flags.h"
#include "xlat/if_dqblk_valid.h"
+#include "xlat/if_dqinfo_flags.h"
#include "xlat/if_dqinfo_valid.h"
struct if_dqblk
@@ -301,8 +302,9 @@
break;
tprintf("{bgrace=%" PRIu64 ", ", dq.dqi_bgrace);
tprintf("igrace=%" PRIu64 ", ", dq.dqi_igrace);
- tprintf("flags=%#x, ", dq.dqi_flags);
- tprints("valid=");
+ tprints("flags=");
+ printflags(if_dqinfo_flags, dq.dqi_flags, "DQF_???");
+ tprints(", valid=");
printflags(if_dqinfo_valid, dq.dqi_valid, "IIF_???");
tprints("}");
break;
@@ -318,8 +320,9 @@
break;
tprintf("{bgrace=%u, ", dq.dqi_bgrace);
tprintf("igrace=%u, ", dq.dqi_igrace);
- tprintf("flags=%#x, ", dq.dqi_flags);
- tprintf("blocks=%u, ", dq.dqi_blocks);
+ tprints("flags=");
+ printflags(if_dqinfo_flags, dq.dqi_flags, "DQF_???");
+ tprintf(", blocks=%u, ", dq.dqi_blocks);
tprintf("free_blk=%u, ", dq.dqi_free_blk);
tprintf("free_entry=%u}", dq.dqi_free_entry);
break;
diff --git a/xlat/if_dqinfo_flags.in b/xlat/if_dqinfo_flags.in
new file mode 100644
index 0000000..914532c
--- /dev/null
+++ b/xlat/if_dqinfo_flags.in
@@ -0,0 +1,2 @@
+DQF_ROOT_SQUASH (1 << 0)
+DQF_SYS_FILE (1 << 16)