#include <freeradius-devel/io/application.h>
#include <freeradius-devel/io/track.h>
#include <freeradius-devel/io/listen.h>
+#include <freeradius-devel/io/schedule.h>
#include <freeradius-devel/rad_assert.h>
#include "proto_radius.h"
int sockfd;
fr_event_list_t *el; //!< for cleanup timers on Access-Request
+ fr_network_t *nr; //!< for fr_network_listen_read();
fr_ipaddr_t ipaddr; //!< Ipaddr to listen on.
inst->dynamic_clients.num_pending_clients--;
// @todo - update the client definition, etc...
- // @todo - call fr_network_read()
- // @todo - cache 'nr' in inst, too.. like proto_detail_file / proto_detail_work
/*
* Move the packets over to the pending list.
}
rad_assert(0 == 1);
+
+ /*
+ * Tell the network side to call mod_read()
+ */
+ fr_network_listen_read(inst->nr, talloc_parent(inst));
return buffer_len;
}
* @param[in] el the event list
* @param[in] nr_ctx context from the network side
*/
-static void mod_event_list_set(void *instance, fr_event_list_t *el, UNUSED void *nr_ctx)
+static void mod_event_list_set(void *instance, fr_event_list_t *el, void *nr)
{
proto_radius_udp_t *inst;
}
inst->el = el;
+ inst->nr = nr;
}