1a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin/*
2a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin * Copyright (c) 2016 Dmitry V. Levin <ldv@altlinux.org>
339bac055674d23770b9a724221b728e443196ea7Elliott Hughes * Copyright (c) 2016-2017 The strace developers.
4a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin * All rights reserved.
5a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin *
6a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin * Redistribution and use in source and binary forms, with or without
7a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin * modification, are permitted provided that the following conditions
8a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin * are met:
9a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin * 1. Redistributions of source code must retain the above copyright
10a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin *    notice, this list of conditions and the following disclaimer.
11a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin * 2. Redistributions in binary form must reproduce the above copyright
12a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin *    notice, this list of conditions and the following disclaimer in the
13a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin *    documentation and/or other materials provided with the distribution.
14a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin * 3. The name of the author may not be used to endorse or promote products
15a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin *    derived from this software without specific prior written permission.
16a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin *
17a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
18a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
19a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
20a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
21a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
22a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
26a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin */
28a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin
29a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin#ifndef STRACE_STAT_H
30a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin#define STRACE_STAT_H
31a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin
32a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levinstruct strace_stat {
33a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin	unsigned long long	dev;
34a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin	unsigned long long	ino;
35a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin	unsigned long long	rdev;
36a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin	unsigned long long	size;
37a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin	unsigned long long	blocks;
38a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin	unsigned long long	blksize;
39a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin	unsigned long long	mode;
40a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin	unsigned long long	nlink;
41a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin	unsigned long long	uid;
42a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin	unsigned long long	gid;
43a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin	long long		atime;
44a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin	long long		ctime;
45a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin	long long		mtime;
46a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin	unsigned long long	atime_nsec;
47a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin	unsigned long long	ctime_nsec;
48a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin	unsigned long long	mtime_nsec;
4939bac055674d23770b9a724221b728e443196ea7Elliott Hughes	bool			has_nsec;
50a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin};
51a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin
52a7c4ee41ff52f9971c32203e4112467fdd608250Dmitry V. Levin#endif /* !STRACE_STAT_H */
53