#include "trevent.h" /* tr_runInEventThread() */
#include "utils.h"
-static struct event dht_timer;
+static struct event *dht_timer = NULL;
static unsigned char myid[20];
static tr_session *session = NULL;
cl->len6 = len6;
tr_threadNew( dht_bootstrap, cl );
- evtimer_set( &dht_timer, timer_callback, session );
- tr_timerAdd( &dht_timer, 0, tr_cryptoWeakRandInt( 1000000 ) );
+ dht_timer = evtimer_new( NULL, timer_callback, session );
+ tr_timerAdd( dht_timer, 0, tr_cryptoWeakRandInt( 1000000 ) );
tr_ndbg( "DHT", "DHT initialized" );
tr_ndbg( "DHT", "Uninitializing DHT" );
- event_del( &dht_timer );
+ event_free( dht_timer );
+ dht_timer = NULL;
/* Since we only save known good nodes, avoid erasing older data if we
don't know enough nodes. */
/* Being slightly late is fine,
and has the added benefit of adding some jitter. */
- tr_timerAdd( &dht_timer, tosleep, tr_cryptoWeakRandInt( 1000000 ) );
+ tr_timerAdd( dht_timer, tosleep, tr_cryptoWeakRandInt( 1000000 ) );
}
static void
#include <unistd.h>
#include <assert.h>
-#include <event.h>
+#include <event2/event.h>
#include "transmission.h"
#include "net.h"
goto ipv6;
}
- ss->udp_event = tr_new0(struct event, 1);
- if(ss->udp_event == NULL) {
- tr_nerr("UDP", "Couldn't allocate IPv4 event");
- close(ss->udp_socket);
- ss->udp_socket = -1;
- goto ipv6;
- }
-
memset(&sin, 0, sizeof(sin));
sin.sin_family = AF_INET;
memcpy(&sin.sin_addr, &addr->addr.addr4, sizeof (struct in_addr));
ss->udp_socket = -1;
goto ipv6;
}
-
- event_set(ss->udp_event, ss->udp_socket, EV_READ | EV_PERSIST,
- event_callback, ss);
+ ss->udp_event =
+ event_new(NULL, ss->udp_socket, EV_READ | EV_PERSIST,
+ event_callback, ss);
+ tr_nerr("UDP", "Couldn't allocate IPv4 event");
+ /* Don't bother recovering for now. */
ipv6:
if(tr_globalIPv6())
rebind_ipv6(ss, TRUE);
if(ss->udp6_socket >= 0) {
- ss->udp6_event = tr_new0(struct event, 1);
- if(ss->udp6_event == NULL) {
- tr_nerr("UDP", "Couldn't allocate IPv6 event");
- } else {
- event_set(ss->udp6_event, ss->udp6_socket, EV_READ | EV_PERSIST,
+ ss->udp6_event =
+ event_new(NULL, ss->udp6_socket, EV_READ | EV_PERSIST,
event_callback, ss);
- }
+ if(ss->udp6_event == NULL)
+ tr_nerr("UDP", "Couldn't allocate IPv6 event");
}
if(ss->isDHTEnabled)
}
if(ss->udp_event) {
- event_del(ss->udp_event);
- free(ss->udp_event);
+ event_free(ss->udp_event);
ss->udp_event = NULL;
}
}
if(ss->udp6_event) {
- event_del(ss->udp6_event);
- free(ss->udp6_event);
+ event_free(ss->udp6_event);
ss->udp6_event = NULL;
}