open Unix;;
      let main () =
        let () =
          if Array.length Sys.argv < 2 && not (Seek.seekable stdinthen
            let descr = Seek.create_file_descr () in
            Misc.retransmit stdin descr;
            ignore (lseek descr 0 SEEK_SET);
            dup2 descr stdin;
            close descr in
        execvp "prog" Sys.argv in
      handle_unix_error main();;