X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=main.ml;h=ac7a8cea88bccdc03c8a213e2b0bf27a8b2abfc6;hb=ff59db26ff8e6f8ba6969ed93bb4cca88a3b7c2d;hp=5ec2952cedcf273b04edec4dee1a8760c709571a;hpb=87c0dc3957634fe643267904d0cedfed80a03f68;p=vsys.git diff --git a/main.ml b/main.ml index 5ec2952..ac7a8ce 100644 --- a/main.ml +++ b/main.ml @@ -4,7 +4,6 @@ open Printf open Inotify open Backend open Frontend -open Fifowatcher open Conffile let input_file_list = ref [] @@ -18,13 +17,15 @@ let cmdspeclist = ("-conffile",Arg.Set_string(Globals.conffile), "Config file"); ("-backend",Arg.Set_string(Globals.backend), "Backend directory"); ("-frontend",Arg.Tuple[Arg.String(fun s->cur_dir:=s);Arg.String(fun s->cur_slice:=s;input_file_list:=(!cur_dir,!cur_slice)::!input_file_list)], "frontendN,slicenameN"); - ("-nochroot",Arg.Set(Globals.nochroot), "Run in non-chroot environment") + ("-nochroot",Arg.Set(Globals.nochroot), "Run in non-chroot environment"); + ("-failsafe",Arg.Set(Globals.failsafe), "Never crash. Be stupid, but never crash. Use at your own risk."); ] let cont = ref true let _ = printf "Vsys v%s\n" Globals.vsys_version;flush stdout; + fprintf logfd "Starting Vsys v%s\n" Globals.vsys_version;flush logfd; Arg.parse cmdspeclist (fun x->()) "Usage: vsys "; if (!Globals.backend == "") then printf "Try vsys --help\n" @@ -44,14 +45,15 @@ let _ = end; Dirwatcher.initialize (); - Fifowatcher.initialize (); + Directfifowatcher.initialize (); + if (!Globals.conffile <> "") then begin let frontends = Conffile.read_frontends !Globals.conffile in input_file_list:=List.concat [!input_file_list;frontends] end; - let felst = List.map (fun lst->let (x,y)=lst in printf "Slice %s (%s)\n" x y;flush logfd;new frontendHandler lst) !input_file_list in + let felst = List.map (fun lst->let (x,y)=lst in fprintf logfd "Slice %s (%s)\n" x y;flush logfd;new frontendHandler lst) !input_file_list in let _ = new backendHandler !Globals.backend felst in Fdwatcher.start_watch () end