+ while (argc > 0) {
+ fd = open(*argv, (create == FALSE) ? O_RDWR : O_RDWR | O_CREAT,
+ S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH);
+ if (fd < 0) {
+ if (create == FALSE && errno == ENOENT)
+ return EXIT_SUCCESS;
+ else {
+ perror_msg_and_die("%s", *argv);
+ }
+ }
+ close(fd);
+ if (utime(*argv, NULL)) {
+ perror_msg_and_die("%s", *argv);
+ }
+ argc--;
+ argv++;
+ }