+ let fqp = String.concat "/" [root_dir;rel] in
+ Directfifowatcher.del_dir_watch fqp;
+ try
+ Unix.rmdir fqp
+ with _ ->
+ logprint "Hm. %s disappeared or not empty. Looks like slice %s shot itself in the foot\n" fqp (this#get_slice_name ())
+
+ initializer
+ (
+ try
+ let s = Unix.stat root_dir in
+ if (s.st_kind<>S_DIR) then
+ begin
+ Unix.unlink root_dir;
+ Unix.mkdir root_dir 0o700
+ end
+ else if (s.st_perm <> 0o700) then
+ begin
+ Unix.rmdir root_dir;
+ Unix.mkdir root_dir 0o700
+ end;
+ with Unix.Unix_error(_,_,_) ->
+ begin
+ try
+ Unix.mkdir root_dir 0o700;
+ with _ -> ();
+ end);
+ Directfifowatcher.add_dir_watch root_dir