Set FD_CLOEXEC in a little convenience function that does the right thing
[sgt/putty] / windows / winstuff.h
index 5f974dc..4436972 100644 (file)
@@ -373,7 +373,7 @@ void dp_cleanup(struct dlgparam *dp);
  * Exports from wincfg.c.
  */
 void win_setup_config_box(struct controlbox *b, HWND *hwndp, int has_help,
-                         int midsession);
+                         int midsession, int protocol);
 
 /*
  * Exports from windlg.c.
@@ -408,17 +408,23 @@ void init_ucs(Config *, struct unicode_data *);
 /*
  * Exports from winhandl.c.
  */
+#define HANDLE_FLAG_OVERLAPPED 1
+#define HANDLE_FLAG_IGNOREEOF 2
+#define HANDLE_FLAG_UNITBUFFER 4
 struct handle;
 typedef int (*handle_inputfn_t)(struct handle *h, void *data, int len);
 typedef void (*handle_outputfn_t)(struct handle *h, int new_backlog);
-struct handle *handle_input_new(HANDLE handle, handle_inputfn_t gotdata);
-struct handle *handle_output_new(HANDLE handle, handle_outputfn_t sentdata);
+struct handle *handle_input_new(HANDLE handle, handle_inputfn_t gotdata,
+                               void *privdata, int flags);
+struct handle *handle_output_new(HANDLE handle, handle_outputfn_t sentdata,
+                                void *privdata, int flags);
 int handle_write(struct handle *h, const void *data, int len);
 HANDLE *handle_get_events(int *nevents);
 void handle_free(struct handle *h);
 void handle_got_event(HANDLE event);
 void handle_unthrottle(struct handle *h, int backlog);
 int handle_backlog(struct handle *h);
+void *handle_get_privdata(struct handle *h);
 
 /*
  * pageantc.c needs to schedule callbacks for asynchronous agent
@@ -432,4 +438,9 @@ void agent_schedule_callback(void (*callback)(void *, void *, int),
                             void *callback_ctx, void *data, int len);
 #define FLAG_SYNCAGENT 0x1000
 
+/*
+ * Exports from winser.c.
+ */
+extern Backend serial_backend;
+
 #endif