+ return Qnil;
+}
+
+DEFUN ("w32-unload-winsock", Fw32_unload_winsock, Sw32_unload_winsock,
+ 0, 0, 0,
+ "Unload the Windows socket library `winsock' if loaded.\n\
+This is provided to allow dial-up socket connections to be disconnected\n\
+when no longer needed. Returns nil without unloading winsock if any\n\
+socket connections still exist.")
+ ()
+{
+ return term_winsock () ? Qt : Qnil;
+}
+
+#endif /* HAVE_SOCKETS */
+
+\f
+syms_of_ntproc ()
+{
+#ifdef HAVE_SOCKETS
+ defsubr (&Sw32_has_winsock);
+ defsubr (&Sw32_unload_winsock);
+#endif
+
+ DEFVAR_LISP ("w32-quote-process-args", &Vw32_quote_process_args,
+ "Non-nil enables quoting of process arguments to ensure correct parsing.\n\
+Because Windows does not directly pass argv arrays to child processes,\n\
+programs have to reconstruct the argv array by parsing the command\n\
+line string. For an argument to contain a space, it must be enclosed\n\
+in double quotes or it will be parsed as multiple arguments.\n\
+\n\
+However, the argument list to call-process is not always correctly\n\
+constructed (or arguments have already been quoted), so enabling this\n\
+option may cause unexpected behavior.");
+ Vw32_quote_process_args = Qnil;
+
+ DEFVAR_LISP ("w32-start-process-show-window",
+ &Vw32_start_process_show_window,
+ "When nil, processes started via start-process hide their windows.\n\
+When non-nil, they show their window in the method of their choice.");
+ Vw32_start_process_show_window = Qnil;
+
+ DEFVAR_INT ("w32-pipe-read-delay", &Vw32_pipe_read_delay,
+ "Forced delay before reading subprocess output.\n\
+This is done to improve the buffering of subprocess output, by\n\
+avoiding the inefficiency of frequently reading small amounts of data.\n\
+\n\
+If positive, the value is the number of milliseconds to sleep before\n\
+reading the subprocess output. If negative, the magnitude is the number\n\
+of time slices to wait (effectively boosting the priority of the child\n\
+process temporarily). A value of zero disables waiting entirely.");
+ Vw32_pipe_read_delay = 50;
+
+ DEFVAR_LISP ("w32-downcase-file-names", &Vw32_downcase_file_names,
+ "Non-nil means convert all-upper case file names to lower case.\n\
+This applies when performing completions and file name expansion.");
+ Vw32_downcase_file_names = Qnil;