tor

The Tor anonymity network
git clone https://git.dasho.dev/tor.git
Log | Files | Refs | README | LICENSE

commit b867e97ce6825e3d7f33a3c3dce8c65f11fe15ec
parent 48be9221609ceafa259db6f4c32cf947e9395e30
Author: Nick Mathewson <nickm@torproject.org>
Date:   Wed,  9 Oct 2019 10:34:43 -0400

With COCCI defined, avoid PERIODIC_EVENT.

Coccinelle doesn't understand the particular pattern of token
pasting we have going on here.

Diffstat:
Msrc/core/mainloop/mainloop.c | 4+++-
Msrc/core/mainloop/periodic.h | 2++
Msrc/core/or/or_periodic.c | 2++
Msrc/feature/dirauth/dirauth_periodic.c | 2++
Msrc/feature/relay/relay_periodic.c | 2++
5 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/src/core/mainloop/mainloop.c b/src/core/mainloop/mainloop.c @@ -1363,8 +1363,10 @@ CALLBACK(second_elapsed); #undef CALLBACK /* Now we declare an array of periodic_event_item_t for each periodic event */ -#define CALLBACK(name, r, f) \ +#ifndef COCCI +#define CALLBACK(name, r, f) \ PERIODIC_EVENT(name, PERIODIC_EVENT_ROLE_ ## r, f) +#endif #define FL(name) (PERIODIC_EVENT_FLAG_ ## name) STATIC periodic_event_item_t mainloop_periodic_events[] = { diff --git a/src/core/mainloop/periodic.h b/src/core/mainloop/periodic.h @@ -71,8 +71,10 @@ typedef struct periodic_event_item_t { } periodic_event_item_t; /** events will get their interval from first execution */ +#ifndef COCCI #define PERIODIC_EVENT(fn, r, f) { fn##_callback, 0, NULL, #fn, r, f, 0 } #define END_OF_PERIODIC_EVENTS { NULL, 0, NULL, NULL, 0, 0, 0 } +#endif /* Return true iff the given event was setup before thus is enabled to be * scheduled. */ diff --git a/src/core/or/or_periodic.c b/src/core/or/or_periodic.c @@ -20,11 +20,13 @@ #include "feature/relay/routermode.h" +#ifndef COCCI #define DECLARE_EVENT(name, roles, flags) \ static periodic_event_item_t name ## _event = \ PERIODIC_EVENT(name, \ PERIODIC_EVENT_ROLE_##roles, \ flags) +#endif #define FL(name) (PERIODIC_EVENT_FLAG_ ## name) diff --git a/src/feature/dirauth/dirauth_periodic.c b/src/feature/dirauth/dirauth_periodic.c @@ -18,11 +18,13 @@ #include "core/mainloop/periodic.h" +#ifndef COCCI #define DECLARE_EVENT(name, roles, flags) \ static periodic_event_item_t name ## _event = \ PERIODIC_EVENT(name, \ PERIODIC_EVENT_ROLE_##roles, \ flags) +#endif #define FL(name) (PERIODIC_EVENT_FLAG_##name) diff --git a/src/feature/relay/relay_periodic.c b/src/feature/relay/relay_periodic.c @@ -31,11 +31,13 @@ #include "feature/nodelist/routerinfo_st.h" #include "feature/control/control_events.h" +#ifndef COCCI #define DECLARE_EVENT(name, roles, flags) \ static periodic_event_item_t name ## _event = \ PERIODIC_EVENT(name, \ PERIODIC_EVENT_ROLE_##roles, \ flags) +#endif #define FL(name) (PERIODIC_EVENT_FLAG_##name)