]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
fr_event_timer_delete doesn't need to take el
authorArran Cudbard-Bell <a.cudbardb@freeradius.org>
Fri, 31 Jan 2020 22:35:52 +0000 (17:35 -0500)
committerArran Cudbard-Bell <a.cudbardb@freeradius.org>
Fri, 31 Jan 2020 22:35:52 +0000 (17:35 -0500)
We should probably figure out something for the file descriptors too

15 files changed:
src/bin/radsniff.c
src/lib/io/load.c
src/lib/io/master.c
src/lib/server/connection.c
src/lib/server/trunk.c
src/lib/unlang/module.c
src/lib/unlang/xlat.c
src/lib/util/event.c
src/lib/util/event.h
src/modules/proto_bfd/proto_bfd.c
src/modules/proto_detail/proto_detail_file.c
src/modules/proto_radius/proto_radius_load.c
src/modules/rlm_radius/rlm_radius_udp.c
src/modules/rlm_rest/io.c
src/modules/rlm_unbound/io.c

index 169d669385e74161593416fbc953ebed704fa1ad..19092a5e4fa4e39a44d58a048552319c1a9be17a 100644 (file)
@@ -1011,7 +1011,7 @@ static int _request_free(rs_request_t *request)
        if (request->event) {
                int rcode;
 
-               rcode = fr_event_timer_delete(events, &request->event);
+               rcode = fr_event_timer_delete(&request->event);
                if (rcode < 0) {
                        fprintf(stderr, "Failed deleting timer: %s\n", fr_strerror());
                        RS_ASSERT(0 == 1);
@@ -1457,7 +1457,7 @@ static void rs_packet_process(uint64_t count, rs_event_t *event, struct pcap_pkt
                                original->rt_rsp++;
 
                                fr_radius_packet_free(&original->linked);
-                               fr_event_timer_delete(event->list, &original->event);
+                               fr_event_timer_delete(&original->event);
                        /*
                         *      ...nope it's the first response to a request.
                         */
@@ -1666,7 +1666,7 @@ static void rs_packet_process(uint64_t count, rs_event_t *event, struct pcap_pkt
                        original->expect = talloc_steal(original, search.expect);
 
                        /* Disarm the timer for the cleanup event for the original request */
-                       fr_event_timer_delete(event->list, &original->event);
+                       fr_event_timer_delete(&original->event);
                /*
                 *      ...nope it's a new request.
                 */
index 93b0d44470d0b8ad832ce11e9c659f370d597f9e..09042e9c68b7dc3ab777720226d7c9c0facb9083 100644 (file)
@@ -238,7 +238,7 @@ int fr_load_generator_stop(fr_load_t *l)
 {
        if (!l->ev) return 0;
 
-       return fr_event_timer_delete(l->el, &l->ev);
+       return fr_event_timer_delete(&l->ev);
 }
 
 
index 6957d41fa1a8be4e4770e2221db123e8a5dd17c2..09d94f462869a0093302d7f1e3d1d7f5b8fe517c 100644 (file)
@@ -916,7 +916,7 @@ static void track_free(fr_io_track_t *track)
 {
        fr_io_thread_t *thread = track->client->thread;
 
-       if (track->ev) (void) fr_event_timer_delete(thread->el, &track->ev);
+       if (track->ev) (void) fr_event_timer_delete(&track->ev);
 
        talloc_free_children(track);
 
index 961898b2267ab1ed04781235e77e7db52bf8103c..17f3a89149e87cbf6df50ad314ca0bb202b74100 100644 (file)
@@ -526,7 +526,7 @@ static void connection_state_closed_enter(fr_connection_t *conn)
 
        STATE_TRANSITION(FR_CONNECTION_STATE_CLOSED);
 
-       fr_event_timer_delete(conn->el, &conn->connection_timer);
+       fr_event_timer_delete(&conn->connection_timer);
 
        /*
         *      If there's a close callback, call it, so that the
@@ -638,7 +638,7 @@ static void connection_state_failed_enter(fr_connection_t *conn)
        /*
         *      Explicit error occurred, delete the connection timer
         */
-       fr_event_timer_delete(conn->el, &conn->connection_timer);
+       fr_event_timer_delete(&conn->connection_timer);
 
        /*
         *      Record what state the connection is currently in
@@ -776,7 +776,7 @@ static void connection_state_halted_enter(fr_connection_t *conn)
 {
        rad_assert(conn->is_closed);
 
-       fr_event_timer_delete(conn->el, &conn->connection_timer);
+       fr_event_timer_delete(&conn->connection_timer);
 
        STATE_TRANSITION(FR_CONNECTION_STATE_HALTED);
        WATCH_PRE(conn);
@@ -804,7 +804,7 @@ static void connection_state_connected_enter(fr_connection_t *conn)
 
        STATE_TRANSITION(FR_CONNECTION_STATE_CONNECTED);
 
-       fr_event_timer_delete(conn->el, &conn->connection_timer);
+       fr_event_timer_delete(&conn->connection_timer);
        WATCH_PRE(conn);
        if (conn->open) {
                HANDLER_BEGIN(conn, conn->open);
index 2886ba0f3979cececd20ad86a4864273617065d9..ce44647980483fe136f64b53869af7fb21a6fd4b 100644 (file)
@@ -2523,7 +2523,7 @@ static void _trunk_connection_on_closed(UNUSED fr_connection_t *conn, UNUSED fr_
        /*
         *      Remove the reconnect event
         */
-       if (trunk->conf.lifetime > 0) fr_event_timer_delete(trunk->el, &tconn->lifetime_ev);
+       if (trunk->conf.lifetime > 0) fr_event_timer_delete(&tconn->lifetime_ev);
 }
 
 /** Connection failed
@@ -3613,7 +3613,7 @@ static int _trunk_free(fr_trunk_t *trunk)
         *      We really don't want this firing after
         *      we've freed everything.
         */
-       fr_event_timer_delete(trunk->el, &trunk->manage_ev);
+       fr_event_timer_delete(&trunk->manage_ev);
 
        /*
         *      Now free the connections in each of the lists.
index 98e6f7fce13f81a9ab507a5dadab96de9b9ea2ce..4c7f36ffe11b63bfb1e4ed77f3c29518059f36a9 100644 (file)
@@ -81,7 +81,7 @@ static void unlang_event_fd_read_handler(UNUSED fr_event_list_t *el, int fd, UNU
 static int _unlang_event_free(unlang_module_event_t *ev)
 {
        if (ev->ev) {
-               (void) fr_event_timer_delete(ev->request->el, &(ev->ev));
+               (void) fr_event_timer_delete(&(ev->ev));
                return 0;
        }
 
index 778ca2a18c64a46ba52660551a148c1d42516bd6..d0ca01f3cc0f113adb17ea8300811957dd0bed64 100644 (file)
@@ -107,7 +107,7 @@ static unlang_t xlat_instruction = {
 static int _unlang_xlat_event_free(unlang_xlat_event_t *ev)
 {
        if (ev->ev) {
-               (void) fr_event_timer_delete(ev->request->el, &(ev->ev));
+               (void) fr_event_timer_delete(&(ev->ev));
                return 0;
        }
 
index 3b38d2d2148ae259fff4d45678d5e6f35db17a54..7103e8058557c891ae5db2b6b02e1ae6e59ac0d3 100644 (file)
@@ -965,18 +965,16 @@ int fr_event_fd_insert(TALLOC_CTX *ctx, fr_event_list_t *el, int fd,
 
 /** Delete a timer event from the event list
  *
- * @param[in] el       to delete event from.
  * @param[in] ev_p     of the event being deleted.
  * @return
  *     - 0 on success.
  *     - -1 on failure.
  */
-int fr_event_timer_delete(fr_event_list_t *el, fr_event_timer_t const **ev_p)
+int fr_event_timer_delete(fr_event_timer_t const **ev_p)
 {
        fr_event_timer_t *ev;
 
        if (unlikely(!*ev_p)) return 0;
-       if (!fr_cond_assert((*ev_p)->el == el)) return -1;
 
        memcpy(&ev, ev_p, sizeof(ev));
        return talloc_free(ev);
@@ -1410,7 +1408,7 @@ int fr_event_timer_run(fr_event_list_t *el, fr_time_t *when)
        /*
         *      Delete the event before calling it.
         */
-       fr_event_timer_delete(el, ev->parent);
+       fr_event_timer_delete(ev->parent);
 
        callback(el, *when, uctx);
 
@@ -1867,7 +1865,7 @@ static int _event_list_free(fr_event_list_t *el)
 {
        fr_event_timer_t const *ev;
 
-       while ((ev = fr_heap_peek(el->times)) != NULL) fr_event_timer_delete(el, &ev);
+       while ((ev = fr_heap_peek(el->times)) != NULL) fr_event_timer_delete(&ev);
 
        talloc_free_children(el);
 
index 4876b5dbbb02e3643d23f9fe3da948c27ae65369..5d702fb211433dce0ac9de68e4b5e8fcb41fa621 100644 (file)
@@ -224,7 +224,7 @@ int         fr_event_timer_at(TALLOC_CTX *ctx, fr_event_list_t *el, fr_event_timer_t co
                                  fr_time_t when, fr_event_timer_cb_t callback, void const *uctx);
 int            fr_event_timer_in(TALLOC_CTX *ctx, fr_event_list_t *el, fr_event_timer_t const **ev,
                                  fr_time_delta_t delta, fr_event_timer_cb_t callback, void const *uctx);
-int            fr_event_timer_delete(fr_event_list_t *el, fr_event_timer_t const **ev);
+int            fr_event_timer_delete(fr_event_timer_t const **ev);
 int            fr_event_timer_run(fr_event_list_t *el, fr_time_t *when);
 
 uintptr_t              fr_event_user_insert(fr_event_list_t *el, fr_event_user_handler_t user, void *uctx) CC_HINT(nonnull(1,2));
index 8dbb90ae1fe202a0bfc0f1ed2f28538c598bc589..74cf28448e86ba7182704aae6bff945e89ca71f1 100644 (file)
@@ -917,7 +917,7 @@ static int bfd_start_packets(bfd_state_t *session)
        /*
         *      Reset the timers.
         */
-       fr_event_timer_delete(session->el, &session->ev_packet);
+       fr_event_timer_delete(&session->ev_packet);
 
        session->last_sent = fr_time();
 
@@ -956,7 +956,7 @@ static void bfd_set_timeout(bfd_state_t *session, fr_time_t when)
 {
        fr_time_t now = when;
 
-       fr_event_timer_delete(session->el, &session->ev_timeout);
+       fr_event_timer_delete(&session->ev_timeout);
 
        now += fr_time_delta_from_usec(session->detection_time);
 
@@ -1003,8 +1003,8 @@ static int bfd_start_control(bfd_state_t *session)
 
 static int bfd_stop_control(bfd_state_t *session)
 {
-       fr_event_timer_delete(session->el, &session->ev_timeout);
-       fr_event_timer_delete(session->el, &session->ev_packet);
+       fr_event_timer_delete(&session->ev_timeout);
+       fr_event_timer_delete(&session->ev_packet);
        return 1;
 }
 
index b6ce90653e978ffe1134f11ce7f7083df4ab16c3..50ca0f3411ba1e866c41c3115c87fc3f895e4351 100644 (file)
@@ -117,7 +117,7 @@ static void mod_vnode_extend(fr_listen_t *li, UNUSED uint32_t fflags)
 
        if (has_worker) return;
 
-       if (thread->ev) fr_event_timer_delete(thread->el, &thread->ev);
+       if (thread->ev) fr_event_timer_delete(&thread->ev);
 
        work_init(thread);
 }
index 6335b495cf86fbd82d78edfff69192ae37fe64e8..1671a9229ca19a9beaf74c80d1d43c0354c4aa17 100644 (file)
@@ -185,7 +185,7 @@ static ssize_t mod_write(fr_listen_t *li, UNUSED void *packet_ctx, fr_time_t req
         */
        state = fr_load_generator_have_reply(thread->l, request_time);
        if (state == FR_LOAD_DONE) {
-               fr_event_timer_delete(thread->el, &thread->ev);
+               fr_event_timer_delete(&thread->ev);
                fr_exit_now(1);
        }
 
index 544131cfc4ee1abf311a0c7fc19017e0f560b172..2fcad9c1bb7d52069c9ca44399da9080002500ea 100644 (file)
@@ -1188,7 +1188,7 @@ static void status_check_reply(udp_request_t *u)
 
        if (u->num_replies < 3) return;
 
-       if (u->ev) (void) fr_event_timer_delete(h->c->el, &u->ev);
+       if (u->ev) (void) fr_event_timer_delete(&u->ev);
        DEBUG("Have enough replies to status check, marking connection as active - %s", h->name);
        fr_trunk_connection_signal_active(h->c->tconn);
 
@@ -1292,7 +1292,7 @@ drain:
        (void) rr_track_delete(h->id, rr);
        u->rr = NULL;
 
-       if (u->ev) (void) fr_event_timer_delete(c->el, &u->ev);
+       if (u->ev) (void) fr_event_timer_delete(&u->ev);
        h->last_reply = fr_time();
 
        code = h->buffer[0];
@@ -1465,7 +1465,7 @@ static void request_cancel(UNUSED fr_connection_t *conn, fr_trunk_request_t *tre
 
                if (u->packet) TALLOC_FREE(u->packet);
 
-               if (u->ev) (void) fr_event_timer_delete(h->c->el, &u->ev);
+               if (u->ev) (void) fr_event_timer_delete(&u->ev);
 
                u->rcode = RLM_MODULE_FAIL;
                u->h = NULL;
@@ -1622,7 +1622,7 @@ static int udp_request_free(udp_request_t *u)
         */
        if (!u->h) return 0;
 
-       if (u->ev) (void) fr_event_timer_delete(u->h->c->el, &u->ev);
+       if (u->ev) (void) fr_event_timer_delete(&u->ev);
 
        /*
         *      The module is doing async proxying, we don't need to
@@ -1635,7 +1635,7 @@ static int udp_request_free(udp_request_t *u)
        /*
         *      Don't perform zombie checks on Status-Server
         */
-       if (u == u->h->status_u) return NULL;
+       if (u == u->h->status_u) return 0;
 
        /*
         *      The module is doing synchronous proxying.  i.e. where
index 5b47e02f06cbcdef3cc77a136480ab8cdaf7cbab..5d79b2eee556e92a4b37f38c92d10a483197c909 100644 (file)
@@ -266,7 +266,7 @@ static int _rest_io_timer_modify(CURLM *mandle, long timeout_ms, void *ctx)
        }
 
        if (timeout_ms < 0) {
-               if (fr_event_timer_delete(t->el, &t->ev) < 0) {
+               if (fr_event_timer_delete(&t->ev) < 0) {
                        PERROR("Failed deleting multi-handle timer");
                        return -1;
                }
index 66d66b0f313bbfac8e47d4aba9713a9f62a26922..6810b243c739a602c54ae764d8eee529021eec66 100644 (file)
@@ -230,7 +230,7 @@ static void _unbound_io_service_errored(UNUSED fr_event_list_t *el,
         *      that it fired.  This is imperfect but unbound
         *      doesn't have a callback for receiving errors.
         */
-       if (fr_event_timer_delete(ev->ev_b->el, &ev->timer) < 0) {
+       if (fr_event_timer_delete(&ev->timer) < 0) {
                PERROR("ubound event %p - Failed disarming timeout", ev);
        }
 
@@ -345,7 +345,7 @@ static int _unbound_io_event_deactivate(struct ub_event *ub_ev)
        if (ev->events & UB_EV_TIMEOUT) {
                DEBUG4("unbound event %p - Disarming timeout", ev);
 
-               if (ev->timer && (fr_event_timer_delete(ev->ev_b->el, &ev->timer) < 0)) {
+               if (ev->timer && (fr_event_timer_delete(&ev->timer) < 0)) {
                        PERROR("ubound event %p - Failed disarming timeout", ev);
 
                        ret = -1;
@@ -380,7 +380,7 @@ static int _unbound_io_timer_modify(struct ub_event *ub_ev, UNUSED struct ub_eve
                       ev, uctx, ev->uctx);
                ev->uctx = uctx;
        }
-       if (ev->timer && (fr_event_timer_delete(ev->ev_b->el, &ev->timer) < 0)) {
+       if (ev->timer && (fr_event_timer_delete(&ev->timer) < 0)) {
                PERROR("ubound event %p - Failed disarming timeout", ev);
 
                ret = -1;       /* Continue ? */
@@ -411,7 +411,7 @@ static int _unbound_io_timer_deactivate(struct ub_event *ub_ev)
 
        DEBUG4("unbound event %p - Disarming timeout", ev);
 
-       if (ev->timer && (fr_event_timer_delete(ev->ev_b->el, &ev->timer) < 0)) {
+       if (ev->timer && (fr_event_timer_delete(&ev->timer) < 0)) {
                PERROR("unbound event %p - Failed disarming timeout", ev);
 
                return -1;