int virtual_servers_open(fr_schedule_t *sc)
{
size_t i, server_cnt = virtual_servers ? talloc_array_length(virtual_servers) : 0;
+ int opened = 0;
fr_assert(virtual_servers);
listeners = virtual_servers[i]->listeners;
listener_cnt = talloc_array_length(listeners);
- for (j = 0; j < listener_cnt; j++) {
+ for (j = 0; j < listener_cnt; j++) {
fr_virtual_listen_t *listener = listeners[j];
fr_assert(listener != NULL);
return -1;
}
+ opened++;
}
/*
}
}
+ if (!opened) {
+ ERROR("There are no 'listen' sections defined.");
+ ERROR("Refusing to start, as the server will never process any packets.");
+ return -1;
+ }
+
return 0;
}