+extern void release_listen_threads (void);
+extern void init_ntproc (int);
+extern void term_ntproc (int);
+extern HANDLE maybe_load_unicows_dll (void);
+extern void globals_of_w32 (void);
+
+extern void term_timers (void);
+extern void init_timers (void);
+
+extern int _sys_read_ahead (int fd);
+extern int _sys_wait_accept (int fd);
+
+extern Lisp_Object QCloaded_from;
+extern HMODULE w32_delayed_load (Lisp_Object);
+
+extern int (WINAPI *pMultiByteToWideChar)(UINT,DWORD,LPCSTR,int,LPWSTR,int);
+extern int (WINAPI *pWideCharToMultiByte)(UINT,DWORD,LPCWSTR,int,LPSTR,int,LPCSTR,LPBOOL);
+
+extern void init_environment (char **);
+extern void check_windows_init_file (void);
+extern void syms_of_ntproc (void);
+extern void syms_of_ntterm (void);
+extern void dostounix_filename (register char *);
+extern void unixtodos_filename (register char *);
+extern int filename_from_ansi (const char *, char *);
+extern int filename_to_ansi (const char *, char *);
+extern int filename_from_utf16 (const wchar_t *, char *);
+extern int filename_to_utf16 (const char *, wchar_t *);
+extern Lisp_Object ansi_encode_filename (Lisp_Object);
+extern int w32_copy_file (const char *, const char *, int, int, int);
+
+extern BOOL init_winsock (int load_now);
+extern void srandom (int);
+extern int random (void);
+
+extern int fchmod (int, mode_t);
+extern int sys_rename_replace (char const *, char const *, BOOL);
+extern int pipe2 (int *, int);
+
+extern void set_process_dir (char *);
+extern int sys_spawnve (int, char *, char **, char **);
+extern void register_child (pid_t, int);
+
+extern void sys_sleep (int);
+extern int sys_link (const char *, const char *);
+
+#ifdef HAVE_GNUTLS
+#include <gnutls/gnutls.h>
+
+/* GnuTLS pull (read from remote) interface. */
+extern ssize_t emacs_gnutls_pull (gnutls_transport_ptr_t p,
+ void* buf, size_t sz);
+
+/* GnuTLS push (write to remote) interface. */
+extern ssize_t emacs_gnutls_push (gnutls_transport_ptr_t p,
+ const void* buf, size_t sz);
+#endif /* HAVE_GNUTLS */