Lines Matching full:module

43 	struct module_radius		*module;
71 struct module_radius *module;
127 err(1, "Could not create a module instance");
148 module_radius_init(struct module_radius *module)
150 memset(module, 0, sizeof(struct module_radius));
151 TAILQ_INIT(&module->req);
160 struct module_radius *module = ctx;
165 SYNTAX_ASSERT(module->nserver < (int)nitems(module->server),
170 memcpy(&module->server[module->nserver].addr, res->ai_addr,
173 if (ntohs(module->server[module->nserver].addr.sin4.sin_port)
175 module->server[module->nserver].addr.sin4.sin_port
178 module->server[module->nserver].sock = -1;
179 module->nserver++;
184 module->req_timeout = (int)strtonum(paramvalv[0], 0,
186 if (module->req_timeout == 0 && errmsg != NULL) {
187 module_send_message(module->base, IMSG_NG,
194 module->max_tries = (int)strtonum(paramvalv[0], 0,
196 if (module->max_tries == 0 && errmsg != NULL) {
197 module_send_message(module->base, IMSG_NG,
205 module->max_failovers = (int)strtonum(paramvalv[0], 0,
207 if (module->max_failovers == 0 && errmsg != NULL) {
208 module_send_message(module->base, IMSG_NG,
215 if (strlcpy(module->secret, paramvalv[0],
216 sizeof(module->secret)) >= sizeof(module->secret)) {
217 module_send_message(module->base, IMSG_NG,
219 (u_long) sizeof(module->secret) - 1);
227 module_send_message(module->base, IMSG_NG,
231 module_send_message(module->base, IMSG_OK, NULL);
235 module_send_message(module->base, IMSG_NG, "%s", errmsg);
242 struct module_radius *module = ctx;
244 if (module->nserver <= 0) {
245 module_send_message(module->base, IMSG_NG,
250 if (module->secret[0] == '\0') {
251 module_send_message(module->base, IMSG_NG,
256 for (i = 0; i < module->nserver; i++) {
257 module->server[i].module = module;
258 if (radius_server_start(&module->server[i]) != 0) {
259 module_send_message(module->base, IMSG_NG,
260 "module `radius' failed to start one of "
265 module_send_message(module->base, IMSG_OK, NULL);
267 module_notify_secret(module->base, module->secret);
275 struct module_radius *module = ctx;
277 TAILQ_FOREACH_SAFE(req, &module->req, next, treq)
280 for (i = 0; i < module->nserver; i++)
281 radius_server_stop(&module->server[i]);
288 struct module_radius *module = ctx;
295 module_radius_log(module, LOG_WARNING,
301 req->module = module;
304 module_radius_log(module, LOG_WARNING,
309 TAILQ_INSERT_TAIL(&req->module->req, req, next);
321 module->secret);
333 module_accsreq_aborted(module->base, q_id);
348 module_radius_log(server->module, LOG_WARNING,
354 module_radius_log(server->module, LOG_WARNING,
363 module_radius_log(server->module, LOG_WARNING,
367 module_radius_log(server->module, LOG_INFO,
377 module_radius_log(server->module, LOG_WARNING,
414 module_radius_log(server->module, LOG_WARNING,
420 module_radius_log(server->module, LOG_WARNING,
427 TAILQ_FOREACH(req, &server->module->req, next) {
432 module_radius_log(server->module, LOG_WARNING,
441 server->module->secret) != 0) {
442 module_radius_log(server->module, LOG_WARNING,
452 server->module->secret) != 0) {
453 module_radius_log(server->module, LOG_WARNING,
461 module_radius_log(server->module, LOG_INFO,
480 if (server->module->nserver <= 1) {
481 module_radius_log(server->module, LOG_WARNING,
487 server->module->curr_server++;
488 server->module->curr_server %= server->module->nserver;
490 &server->module->server[server->module->curr_server].addr;
492 module_radius_log(server->module, LOG_WARNING,
511 module_radius_log(req->module, LOG_WARNING,
517 module_radius_log(req->module, LOG_INFO,
532 if (req->module->req_timeout != 0)
533 tv.tv_sec = req->module->req_timeout;
541 module_radius_log(req->module, LOG_WARNING,
557 if (req->module->max_tries <= req->ntry) {
562 if (++req->nfailover >= req->module->max_failovers) {
563 module_radius_log(req->module,
579 module_accsreq_answer(req->module->base, req->q_id, pkt, pktlen);
586 module_accsreq_aborted(req->module->base, req->q_id);
595 TAILQ_REMOVE(&req->module->req, req, next);
604 req->server = &req->module->server[req->module->curr_server];
617 radius_put_message_authenticator(req->q_pkt, req->module->secret);
621 module_radius_log(struct module_radius *module, int pri, const char *fmt, ...)