summaryrefslogtreecommitdiff
path: root/touch.c
blob: ca4b981081143b8bda4e2d98e07874dadafb19f7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include "internal.h"
#include <sys/types.h>
#include <stdio.h>
#include <utime.h>

const char	touch_usage[] = "touch [-c] file [file ...]\n"
"\n"
"\tUpdate the last-modified date on the given file[s].\n";

extern int
touch_fn(const struct FileInfo * i)
{
	if ( (utime(i->source, 0) != 0) && (i->create != 1) ) {
		if ( fopen(i->source, "w") == NULL ) {
			name_and_error(i->source);
			return 1;
		}
	}
	return 0;
}