X-Git-Url: http://git.silcnet.org/gitweb/?a=blobdiff_plain;f=lib%2Fsilcutil%2Ftests%2Ftest_silcasync.c;h=92ff6669157fbb2cd22aa91fec59c3c5f6751d41;hb=e7b6c157b80152bf9fb9266e6bdd93f9fb0db776;hp=836daecbee1d8ec840f8d53b85227148dc9f47c7;hpb=0f0340b9fbce9704cc7171f8f0104ce9103d2de6;p=silc.git diff --git a/lib/silcutil/tests/test_silcasync.c b/lib/silcutil/tests/test_silcasync.c index 836daecb..92ff6669 100644 --- a/lib/silcutil/tests/test_silcasync.c +++ b/lib/silcutil/tests/test_silcasync.c @@ -1,6 +1,6 @@ /* SilcAsyncOperation tests */ -#include "silcincludes.h" +#include "silc.h" #include "silcfsm.h" #include "silcasync.h" @@ -10,11 +10,11 @@ SilcSchedule schedule; typedef struct { SilcFSM fsm; - SilcFSMSemaStruct sema; + SilcFSMEventStruct sema; SilcAsyncOperation op; Callback cb; void *cb_context; - bool aborted; + SilcBool aborted; } *Foo; SILC_FSM_STATE(test_st_start); @@ -59,7 +59,7 @@ static void async_call_cb(void *context) Foo f = context; SILC_LOG_DEBUG(("*******Callback, signal and continue to next state")); f->op = NULL; - SILC_FSM_SEMA_POST(&f->sema); + SILC_FSM_EVENT_SIGNAL(&f->sema); SILC_FSM_CALL_CONTINUE(f->fsm); } @@ -69,7 +69,7 @@ SILC_FSM_STATE(test_st_start) SILC_LOG_DEBUG(("test_st_start")); - silc_fsm_sema_init(&f->sema, fsm, 0); + silc_fsm_event_init(&f->sema, fsm); /** Wait async callback */ SILC_LOG_DEBUG(("Call async call")); @@ -80,14 +80,17 @@ SILC_FSM_STATE(test_st_start) SILC_FSM_STATE(test_st_second) { Foo f = fsm_context; + SilcBool timedout; SILC_LOG_DEBUG(("test_st_second")); - SILC_FSM_SEMA_TIMEDWAIT(&f->sema, 0, 1); + SILC_FSM_EVENT_TIMEDWAIT(&f->sema, 0, 1, &timedout); - SILC_LOG_DEBUG(("Sema timedout, aborting async operation")); - if (f->op) - silc_async_abort(f->op, NULL, NULL); + if (timedout == TRUE) { + SILC_LOG_DEBUG(("Sema timedout, aborting async operation")); + if (f->op) + silc_async_abort(f->op, NULL, NULL); + } /** Finish */ silc_fsm_next_later(fsm, test_st_finish, 2, 0); @@ -112,18 +115,18 @@ static void destructor(SilcFSM fsm, void *fsm_context, int main(int argc, char **argv) { - bool success = FALSE; + SilcBool success = FALSE; SilcFSM fsm; Foo f; if (argc > 1 && !strcmp(argv[1], "-d")) { silc_log_debug(TRUE); silc_log_debug_hexdump(TRUE); - silc_log_set_debug_string("*async*"); + silc_log_set_debug_string("*async*,*errno*"); } SILC_LOG_DEBUG(("Allocating scheduler")); - schedule = silc_schedule_init(0, NULL); + schedule = silc_schedule_init(0, NULL, NULL); f = silc_calloc(1, sizeof(*f)); if (!f)