summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source3/torture/test_async_echo.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/source3/torture/test_async_echo.c b/source3/torture/test_async_echo.c
index 6f829394db..f1d44ee681 100644
--- a/source3/torture/test_async_echo.c
+++ b/source3/torture/test_async_echo.c
@@ -20,6 +20,7 @@
#include "includes.h"
#include "torture/proto.h"
#include "libsmb/libsmb.h"
+#include "async_smb.h"
#include "rpc_client/cli_pipe.h"
#include "librpc/gen_ndr/ndr_echo_c.h"
@@ -100,6 +101,15 @@ bool run_async_echo(int dummy)
tevent_req_set_callback(req, rpccli_sleep_done, &num_reqs);
num_reqs += 1;
+ /* Wait until the rpc operation arrives at the smb layer */
+ while (tevent_req_is_in_progress(req) &&
+ !cli_has_async_calls(cli)) {
+ if (tevent_loop_once(ev) != 0) {
+ printf("tevent_loop_once failed\n");
+ goto fail;
+ }
+ }
+
req = cli_echo_send(ev, ev, cli, 1, data_blob_const("hello", 5));
if (req == NULL) {
printf("cli_echo_send failed\n");