+ } else if (!rc) {
+ rc = stat(filename, &st);
+ if (rc) {
+ fprintf(stderr, "%s: stat(%s) failed: rc %d: %s\n",
+ prog, filename, errno, strerror(errno));
+ return 3;
+ }
+
+ if (st.st_mtime < before_mknod || st.st_mtime > after_mknod) {
+ fprintf(stderr,
+ "%s: bad mknod(%s) times %lu <= %lu <= %lu false\n",
+ prog, filename, before_mknod, st.st_mtime,
+ after_mknod);
+ return 4;
+ }
+
+ printf("%s: good mknod times %lu%s <= %lu <= %lu for %s\n",
+ prog, before_mknod,
+ before_mknod == st.st_mtime ? "*" : "",
+ st.st_mtime, after_mknod, filename);
+
+ if (secname) {
+ sleep(1);
+ rc = stat(secname, &st2);
+ if (rc) {
+ fprintf(stderr,
+ "%s: stat(%s) failed: rc %d: %s\n",
+ prog, secname, errno, strerror(errno));
+ return 5;
+ }
+
+ if (st2.st_mtime < before_mknod ||
+ st2.st_mtime > after_mknod) {
+ fprintf(stderr,
+ "%s: bad mknod(%s) times %lu <= %lu <= %lu false\n",
+ prog, filename, before_mknod,
+ st2.st_mtime, after_mknod);
+ return 6;
+ }
+
+ printf("%s: good mknod times %lu%s <= %lu <= %lu for %s\n",
+ prog, before_mknod,
+ before_mknod == st.st_mtime ? "*" : "",
+ st2.st_mtime, after_mknod, secname);
+ }