]> granicus.if.org Git - strace/blob - fetch_struct_xfs_quotastat.c
Add support for long options
[strace] / fetch_struct_xfs_quotastat.c
1 /*
2  * Copyright (c) 2018 The strace developers.
3  * All rights reserved.
4  *
5  * SPDX-License-Identifier: LGPL-2.1-or-later
6  */
7
8 #include "defs.h"
9
10 #include DEF_MPERS_TYPE(struct_xfs_dqstats)
11
12 #include "xfs_quota_stat.h"
13 typedef struct xfs_dqstats struct_xfs_dqstats;
14
15 #include MPERS_DEFS
16
17 MPERS_PRINTER_DECL(bool, fetch_struct_quotastat, struct tcb *const tcp,
18                    const kernel_ulong_t data, void *p)
19 {
20         struct xfs_dqstats *dq = p;
21         struct_xfs_dqstats dqstat;
22
23         if (umove_or_printaddr(tcp, data, &dqstat))
24                 return false;
25
26         dq->qs_version = dqstat.qs_version;
27         dq->qs_flags = dqstat.qs_flags;
28         dq->qs_pad = dqstat.qs_pad;
29         dq->qs_uquota.qfs_ino = dqstat.qs_uquota.qfs_ino;
30         dq->qs_uquota.qfs_nblks = dqstat.qs_uquota.qfs_nblks;
31         dq->qs_uquota.qfs_nextents = dqstat.qs_uquota.qfs_nextents;
32         dq->qs_gquota.qfs_ino = dqstat.qs_gquota.qfs_ino;
33         dq->qs_gquota.qfs_nblks = dqstat.qs_gquota.qfs_nblks;
34         dq->qs_gquota.qfs_nextents = dqstat.qs_gquota.qfs_nextents;
35         dq->qs_incoredqs = dqstat.qs_incoredqs;
36         dq->qs_btimelimit = dqstat.qs_btimelimit;
37         dq->qs_itimelimit = dqstat.qs_itimelimit;
38         dq->qs_rtbtimelimit = dqstat.qs_rtbtimelimit;
39         dq->qs_bwarnlimit = dqstat.qs_bwarnlimit;
40         dq->qs_iwarnlimit = dqstat.qs_iwarnlimit;
41         return true;
42 }