use $(LIBENSCVECTOR) instead of libensc_vector.a
[util-vserver.git] / util-vserver / src / fstool.c
index d732bc3..e5ceae2 100644 (file)
@@ -42,29 +42,6 @@ struct Arguments const *             global_args = 0;
 
 int wrapper_exit_code = 1;
 
-bool
-checkForRace(int fd, char const * name, struct stat const *exp_st)
-{
-  struct stat          st;
-  
-  if (fstat(fd, &st)==-1) {
-    perror("fstat()");
-    return false;
- }
-
-  if (st.st_dev  != exp_st->st_dev ||
-      st.st_ino  != exp_st->st_ino ||
-      st.st_mode != exp_st->st_mode) {
-    close(fd);
-    WRITE_MSG(2, "race while visiting '");
-    WRITE_STR(2, name);
-    WRITE_MSG(2, "'\n");
-    exit(2);
-  }
-
-  return true;
-}
-
 inline static bool
 isSpecialDir(char const *d)
 {
@@ -195,8 +172,6 @@ int main(int argc, char *argv[])
     .do_display_dot    =  false,
     .do_display_dir    =  false,
     .do_mapping                =  true,
-    .immutable         =  false,
-    .immulink          =  false,
     .ctx               =  VC_NOCTX,
     .is_legacy          =  false,
     .do_set             =  false,
@@ -215,12 +190,14 @@ int main(int argc, char *argv[])
     switch (c) {
       case CMD_HELP            :  showHelp(1, argv[0], 0);
       case CMD_VERSION         :  showVersion();
-      case CMD_IMMU            :  args.set_mask |= VC_IATTR_IUNLINK; break;
+      case CMD_IMMU            :  args.set_mask |= VC_IATTR_IMMUTABLE; /*@fallthrough@*/
+      case CMD_IMMUX           :  args.set_mask |= VC_IATTR_IUNLINK; break;
       case CMD_ADMIN           :  args.set_mask |= VC_IATTR_ADMIN;   break;
       case CMD_WATCH           :  args.set_mask |= VC_IATTR_WATCH;   break;
       case CMD_HIDE            :  args.set_mask |= VC_IATTR_HIDE;    break;
       case CMD_BARRIER         :  args.set_mask |= VC_IATTR_BARRIER; break;
-      case CMD_UNSET_IMMU      :  args.del_mask |= VC_IATTR_IUNLINK; break;
+      case CMD_UNSET_IMMU      :  args.del_mask |= VC_IATTR_IMMUTABLE; /*@fallthrough@*/
+      case CMD_UNSET_IMMUX     :  args.del_mask |= VC_IATTR_IUNLINK; break;
       case CMD_UNSET_ADMIN     :  args.del_mask |= VC_IATTR_ADMIN;   break;
       case CMD_UNSET_WATCH     :  args.del_mask |= VC_IATTR_WATCH;   break;
       case CMD_UNSET_HIDE      :  args.del_mask |= VC_IATTR_HIDE;    break;