summaryrefslogtreecommitdiff
path: root/source4/librpc/rpc/dcerpc.h
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2012-07-09 14:37:28 +1000
committerAndrew Bartlett <abartlet@samba.org>2012-07-18 09:32:53 +0200
commit02a356ea775a3ba589cb50af3c861ab86aaffa0b (patch)
tree315544ffb45cc6f2c5ccc2ef59500e057fd0855a /source4/librpc/rpc/dcerpc.h
parentfc36ebfa7861cf7e86aa3c2110a6ab213424e8c1 (diff)
downloadsamba-02a356ea775a3ba589cb50af3c861ab86aaffa0b.tar.gz
samba-02a356ea775a3ba589cb50af3c861ab86aaffa0b.tar.bz2
samba-02a356ea775a3ba589cb50af3c861ab86aaffa0b.zip
s4-librpc: Ensure we do not call call the decrpc timeout handler during gensec_update()
This avoids a situation where we could destroy pointers on the stack due to a nested event loop. This is certainly not a final, generic solution, but it is a minimal change while we work to make gensec and gensec_gssapi async. Andrew Bartlett
Diffstat (limited to 'source4/librpc/rpc/dcerpc.h')
-rw-r--r--source4/librpc/rpc/dcerpc.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/source4/librpc/rpc/dcerpc.h b/source4/librpc/rpc/dcerpc.h
index 359efdabc0..ef830865e8 100644
--- a/source4/librpc/rpc/dcerpc.h
+++ b/source4/librpc/rpc/dcerpc.h
@@ -124,6 +124,14 @@ struct dcerpc_pipe {
/** timeout for individual rpc requests, in seconds */
uint32_t request_timeout;
+
+ /*
+ * Set for the timeout in dcerpc_pipe_connect_b_send(), to
+ * allow the timeout not to destory the stack during a nested
+ * event loop caused by gensec_update()
+ */
+ bool inhibit_timeout_processing;
+ bool timed_out;
};
/* default timeout for all rpc requests, in seconds */