- added correct diskfree reporting error ENOSPC
[flfs:flfs.git] / test.pl
1 #!/usr/bin/perl -w
2 #
3 use strict; use warnings;
4
5
6 use Fcntl;
7 use Fcntl qw(SEEK_CUR);
8
9
10 my $mntpoint = $ARGV[0] or die "Usage: $0 <mountpount>\n";
11 my $file     = "$mntpoint/file";
12
13 my $fh;
14 my $r;
15
16 sysopen($fh, $file, O_CREAT|O_TRUNC|O_RDWR)
17     or die "Error opening $file: $!\n";
18
19 $r = syswrite($fh, 'x' x 10, 4, 4);
20 if(!defined $r){
21     die "Error syswrite: $!\n";
22 }
23
24 $r = syswrite($fh, 'x' x 10, 5, 4);
25 if(!defined $r){
26     die "Error syswrite: $!\n";
27 }
28
29 sysseek($fh, 4097, SEEK_CUR) or die "Error seek: $!\n";
30 $r = syswrite($fh, 'x' x 10, 5, 4);
31 if(!defined $r){
32     die "Error syswrite: $!\n";
33 }
34
35 $r = syswrite($fh, 'B' x 10_000_000, 10_000_000);
36 if(!defined $r){
37     die "Error syswrite: $!\n";
38 }
39
40 $r = truncate($fh, 10);
41 if(!defined $r){
42     die "Error truncate: $!\n";
43 }
44
45 $file = "$mntpoint/file2";
46
47 sysopen($fh, $file, O_CREAT|O_RDWR)
48     or die "Error opening $file: $!\n";
49
50 $r = syswrite($fh, 'x' x 4096, 4096, 0);
51 if(!defined $r){
52     die "Error syswrite: $!\n";
53 }
54 $r = syswrite($fh, 'y' x 4096, 4096, 0);
55 if(!defined $r){
56     die "Error syswrite: $!\n";
57 }
58 close($fh) or die "Error closing $file: $!\n";
59
60 sysopen($fh, $file, O_APPEND|O_RDWR)
61     or die "Error opening $file: $!\n";
62
63 $r = syswrite($fh, 'z' x 4096, 4096, 0);
64 if(!defined $r){
65     die "Error syswrite: $!\n";
66 }
67
68 close($fh) or die "Error closing $file: $!\n";