Skip to content
Snippets Groups Projects
Commit 2d3f88f6 authored by cypherpunks's avatar cypherpunks Committed by Nick Mathewson
Browse files

Remove casting of void pointers when handling signals.

parent f4b03f93
No related branches found
No related tags found
No related merge requests found
......@@ -2227,7 +2227,8 @@ run_main_loop_until_done(void)
static void
signal_callback(int fd, short events, void *arg)
{
uintptr_t sig = (uintptr_t)arg;
const int *sigptr = arg;
const int sig = *sigptr;
(void)fd;
(void)events;
......@@ -2237,7 +2238,7 @@ signal_callback(int fd, short events, void *arg)
/** Do the work of acting on a signal received in <b>sig</b> */
void
process_signal(uintptr_t sig)
process_signal(int sig)
{
switch (sig)
{
......@@ -2482,9 +2483,10 @@ handle_signals(int is_parent)
static struct event *signal_events[16]; /* bigger than it has to be. */
if (is_parent) {
for (i = 0; signals[i] >= 0; ++i) {
signal_events[i] = tor_evsignal_new(
tor_libevent_get_base(), signals[i], signal_callback,
(void*)(uintptr_t)signals[i]);
signal_events[i] = tor_evsignal_new(tor_libevent_get_base(), signals[i],
signal_callback,
/* Cast away const */
(int*)&signals[i]);
if (event_add(signal_events[i], NULL))
log_warn(LD_BUG, "Error from libevent when adding event for signal %d",
signals[i]);
......
......@@ -60,7 +60,7 @@ MOCK_DECL(long,get_uptime,(void));
unsigned get_signewnym_epoch(void);
void handle_signals(int is_parent);
void process_signal(uintptr_t sig);
void process_signal(int sig);
int try_locking(const or_options_t *options, int err_if_locked);
int have_lockfile(void);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment