• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2 @! # TESTCASE DESCRIPTION:
3 @! # 	Purpose: to create an input file of any size
4 @! # 	Command: none
5 @! # 	Subcommand: none
6 @! # 	Design: Write an array the size of BUFSIZ to created file until
7 @! # 		the file size matches the file size required
8 @! # SPEC. EXEC. REQS:  This  program is used by ctatcdt3.c and ctatcet3.c
9 */
10 
11 #include <sys/types.h>
12 #include <sys/stat.h>
13 #include <fcntl.h>
14 #include <stdio.h>
15 #include <stdlib.h>
16 #include <unistd.h>
17 
main(int argc,char * argv[])18 int main(int argc, char *argv[])
19 {
20 
21 	int fd;
22 	int fsize;
23 	int count = 0;
24 	int n, remain;
25 	static char buf[BUFSIZ];
26 
27 	for (fsize = 0; fsize < BUFSIZ; fsize++) {
28 		if ((fsize % 2) == 0)
29 			buf[fsize++] = 'U';
30 		else
31 			buf[fsize++] = '\n';
32 	}
33 
34 	fsize = strtol(argv[1], NULL, 10);
35 
36 	if ((fd = creat(argv[2], 0644)) == -1)
37 		perror("createfile");
38 	if (fsize >= BUFSIZ) {
39 		count = fsize / BUFSIZ;
40 		remain = fsize % BUFSIZ;
41 	} else
42 		remain = fsize;
43 	while (count-- != 0) {
44 		if ((n = write(fd, buf, BUFSIZ)) != BUFSIZ)
45 			perror("createfile");
46 	}
47 	if ((n = write(fd, buf, remain)) != remain)
48 		perror("createfile");
49 	close(fd);
50 
51 	return 0;
52 }
53