diff options
author | Jan Kara <jack@suse.cz> | 2013-10-02 23:10:49 +0200 |
---|---|---|
committer | Jan Kara <jack@suse.cz> | 2013-10-03 11:48:39 +0200 |
commit | a58761459f7485f275ecca5fd26b9a63c33f1089 (patch) | |
tree | 2104160ece046eec6589809e0ac22d5f6118b62e /quotasys.c | |
parent | 246dd4960e6878f3ff2e1fe34ef978bcb21e8d03 (diff) |
Add support for CVS and XML output formats to repquota(8)
JK: Fixup localization and handling of multiple output filesystems /
types.
Signed-off-by: Jonathan Overholt <jonathan@overholt.org>
Signed-off-by: Jan Kara <jack@suse.cz>
Diffstat (limited to 'quotasys.c')
-rw-r--r-- | quotasys.c | 31 |
1 files changed, 31 insertions, 0 deletions
@@ -37,6 +37,7 @@ #define min(x,y) (((x) < (y)) ? (x) : (y)) #define QFMT_NAMES 5 +#define QOFMT_NAMES 3 static char extensions[MAXQUOTAS + 2][20] = INITQFNAMES; static char *basenames[] = INITQFBASENAMES; @@ -46,6 +47,10 @@ static char *fmtnames[] = { "vfsold", "rpc", "xfs", }; +static char *ofmtnames[] = { "default", + "csv", + "xml" +}; /* * Check for various kinds of NFS filesystem @@ -240,6 +245,32 @@ char *fmt2name(int fmt) } /* + * Convert output format name to number + */ +int name2ofmt(char *str) +{ + int fmt; + + for (fmt = 0; fmt < QOFMT_NAMES; fmt++) + if (!strcmp(str, ofmtnames[fmt])) + return fmt; + errstr(_("Unknown output format: %s\nSupported formats are:\n\ + default - default\n\ + csv - comma-separated values\n\ + xml - simple XML\n"), str); + return QOF_ERROR; +} + +/* + * Convert output format number to name + */ +char *ofmt2name(int fmt) +{ + return ofmtnames[fmt]; +} + + +/* * Convert kernel to utility quota format number */ static int kern2utilfmt(int kernfmt) |