]> git.proxmox.com Git - mirror_frr.git/blobdiff - lib/frr_zmq.c
*: Convert thread_cancelXXX to event_cancelXXX
[mirror_frr.git] / lib / frr_zmq.c
index 2673d576052eeb2982edfa42f03bceef3a487d67..4a860fe253f589584730adefe5e9a20160e6ce36 100644 (file)
@@ -15,7 +15,7 @@
 #include <zebra.h>
 #include <zmq.h>
 
-#include "thread.h"
+#include "event.h"
 #include "memory.h"
 #include "frr_zmq.h"
 #include "log.h"
@@ -43,7 +43,7 @@ void frrzmq_finish(void)
        }
 }
 
-static void frrzmq_read_msg(struct thread *t)
+static void frrzmq_read_msg(struct event *t)
 {
        struct frrzmq_cb **cbp = THREAD_ARG(t);
        struct frrzmq_cb *cb;
@@ -138,8 +138,8 @@ static void frrzmq_read_msg(struct thread *t)
        if (read)
                frrzmq_check_events(cbp, &cb->write, ZMQ_POLLOUT);
 
-       thread_add_read(t->master, frrzmq_read_msg, cbp,
-                       cb->fd, &cb->read.thread);
+       event_add_read(t->master, frrzmq_read_msg, cbp, cb->fd,
+                      &cb->read.thread);
        return;
 
 out_err:
@@ -149,14 +149,13 @@ out_err:
                cb->read.cb_error(cb->read.arg, cb->zmqsock);
 }
 
-int _frrzmq_thread_add_read(const struct xref_threadsched *xref,
-                           struct thread_master *master,
-                           void (*msgfunc)(void *arg, void *zmqsock),
-                           void (*partfunc)(void *arg, void *zmqsock,
-                                            zmq_msg_t *msg, unsigned partnum),
-                           void (*errfunc)(void *arg, void *zmqsock),
-                           void *arg, void *zmqsock,
-                           struct frrzmq_cb **cbp)
+int _frrzmq_event_add_read(const struct xref_threadsched *xref,
+                          struct thread_master *master,
+                          void (*msgfunc)(void *arg, void *zmqsock),
+                          void (*partfunc)(void *arg, void *zmqsock,
+                                           zmq_msg_t *msg, unsigned partnum),
+                          void (*errfunc)(void *arg, void *zmqsock), void *arg,
+                          void *zmqsock, struct frrzmq_cb **cbp)
 {
        int fd, events;
        size_t len;
@@ -191,17 +190,17 @@ int _frrzmq_thread_add_read(const struct xref_threadsched *xref,
        cb->in_cb = false;
 
        if (events & ZMQ_POLLIN) {
-               thread_cancel(&cb->read.thread);
+               event_cancel(&cb->read.thread);
 
-               thread_add_event(master, frrzmq_read_msg, cbp, fd,
-                                 &cb->read.thread);
-       } else
-               thread_add_read(master, frrzmq_read_msg, cbp, fd,
+               event_add_event(master, frrzmq_read_msg, cbp, fd,
                                &cb->read.thread);
+       } else
+               event_add_read(master, frrzmq_read_msg, cbp, fd,
+                              &cb->read.thread);
        return 0;
 }
 
-static void frrzmq_write_msg(struct thread *t)
+static void frrzmq_write_msg(struct event *t)
 {
        struct frrzmq_cb **cbp = THREAD_ARG(t);
        struct frrzmq_cb *cb;
@@ -247,8 +246,8 @@ static void frrzmq_write_msg(struct thread *t)
        if (written)
                frrzmq_check_events(cbp, &cb->read, ZMQ_POLLIN);
 
-       thread_add_write(t->master, frrzmq_write_msg, cbp,
-                        cb->fd, &cb->write.thread);
+       event_add_write(t->master, frrzmq_write_msg, cbp, cb->fd,
+                       &cb->write.thread);
        return;
 
 out_err:
@@ -258,11 +257,11 @@ out_err:
                cb->write.cb_error(cb->write.arg, cb->zmqsock);
 }
 
-int _frrzmq_thread_add_write(const struct xref_threadsched *xref,
-                            struct thread_master *master,
-                            void (*msgfunc)(void *arg, void *zmqsock),
-                            void (*errfunc)(void *arg, void *zmqsock),
-                            void *arg, void *zmqsock, struct frrzmq_cb **cbp)
+int _frrzmq_event_add_write(const struct xref_threadsched *xref,
+                           struct thread_master *master,
+                           void (*msgfunc)(void *arg, void *zmqsock),
+                           void (*errfunc)(void *arg, void *zmqsock),
+                           void *arg, void *zmqsock, struct frrzmq_cb **cbp)
 {
        int fd, events;
        size_t len;
@@ -297,13 +296,13 @@ int _frrzmq_thread_add_write(const struct xref_threadsched *xref,
        cb->in_cb = false;
 
        if (events & ZMQ_POLLOUT) {
-               thread_cancel(&cb->write.thread);
+               event_cancel(&cb->write.thread);
 
-               _thread_add_event(xref, master, frrzmq_write_msg, cbp, fd,
-                                 &cb->write.thread);
-       } else
-               thread_add_write(master, frrzmq_write_msg, cbp, fd,
+               _event_add_event(xref, master, frrzmq_write_msg, cbp, fd,
                                 &cb->write.thread);
+       } else
+               event_add_write(master, frrzmq_write_msg, cbp, fd,
+                               &cb->write.thread);
        return 0;
 }
 
@@ -312,7 +311,7 @@ void frrzmq_thread_cancel(struct frrzmq_cb **cb, struct cb_core *core)
        if (!cb || !*cb)
                return;
        core->cancelled = true;
-       thread_cancel(&core->thread);
+       event_cancel(&core->thread);
 
        /* If cancelled from within a callback, don't try to free memory
         * in this path.
@@ -345,13 +344,13 @@ void frrzmq_check_events(struct frrzmq_cb **cbp, struct cb_core *core,
        if ((events & event) && core->thread && !core->cancelled) {
                struct thread_master *tm = core->thread->master;
 
-               thread_cancel(&core->thread);
+               event_cancel(&core->thread);
 
                if (event == ZMQ_POLLIN)
-                       thread_add_event(tm, frrzmq_read_msg,
-                                        cbp, cb->fd, &core->thread);
+                       event_add_event(tm, frrzmq_read_msg, cbp, cb->fd,
+                                       &core->thread);
                else
-                       thread_add_event(tm, frrzmq_write_msg,
-                                        cbp, cb->fd, &core->thread);
+                       event_add_event(tm, frrzmq_write_msg, cbp, cb->fd,
+                                       &core->thread);
        }
 }