blob: cc3ee935d524b8e1333478032010ceeed9fdad54 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
|
#include "typeConvert.h"
void
operator<<(struct stat & s, const AttrSource & a)
{
s.st_dev = a.attr.dev;
s.st_ino = a.attr.inode;
s.st_mode = a.attr.mode;
s.st_nlink = a.attr.links;
a.user(a.attr.uid, &s.st_uid);
a.group(a.attr.gid, &s.st_gid);
s.st_rdev = a.attr.rdev;
s.st_size = a.attr.size;
s.st_blksize = a.attr.blockSize;
s.st_blocks = a.attr.blocks;
s.st_atime = a.attr.atime;
s.st_mtime = a.attr.mtime;
s.st_ctime = a.attr.ctime;
}
void
operator<<(struct statvfs & vfs, const NetFS::VFS & v)
{
vfs.f_bsize = v.blockSize;
vfs.f_frsize = v.fragmentSize;
vfs.f_blocks = v.blocks;
vfs.f_bfree = v.freeBlocks;
vfs.f_bavail = v.availBlocks;
vfs.f_files = v.files;
vfs.f_ffree = v.freeFiles;
vfs.f_favail = v.availFiles;
vfs.f_fsid = v.FSID;
vfs.f_flag = v.flags;
vfs.f_namemax = v.maxNameLen;
}
void
operator<<(NetFS::Attr & a, const struct StatSource & s)
{
a.dev = s.stat.st_dev;
a.inode = s.stat.st_ino;
a.mode = s.stat.st_mode;
a.links = s.stat.st_nlink;
s.user(s.stat.st_uid, &a.uid);
s.group(s.stat.st_gid, &a.gid);
a.rdev = s.stat.st_rdev;
a.size = s.stat.st_size;
a.blockSize = s.stat.st_blksize;
a.blocks = s.stat.st_blocks;
a.atime = s.stat.st_atime;
a.mtime = s.stat.st_mtime;
a.ctime = s.stat.st_ctime;
}
void
operator<<(NetFS::VFS & t, const struct statvfs & s)
{
t.blockSize = s.f_bsize;
t.fragmentSize = s.f_frsize;
t.blocks = s.f_blocks;
t.freeBlocks = s.f_bfree;
t.availBlocks = s.f_bavail;
t.files = s.f_files;
t.freeFiles = s.f_ffree;
t.availFiles = s.f_favail;
t.FSID = s.f_fsid;
t.flags = s.f_flag;
t.maxNameLen = s.f_namemax;
}
|