diff --git a/src/bankd.h b/src/bankd.h index 4c53c74..6278a93 100644 --- a/src/bankd.h +++ b/src/bankd.h @@ -83,6 +83,7 @@ struct bankd_worker { struct bankd { struct { uint16_t bank_id; + uint16_t num_slots; } cfg; struct app_comp_id comp_id; diff --git a/src/bankd_main.c b/src/bankd_main.c index 6ebb74e..349236d 100644 --- a/src/bankd_main.c +++ b/src/bankd_main.c @@ -76,6 +76,10 @@ static void bankd_init(struct bankd *bankd) INIT_LLIST_HEAD(&bankd->workers); pthread_mutex_init(&bankd->workers_mutex, NULL); + /* set some defaults, overridden by commandline/config */ + bankd->cfg.bank_id = 1; + bankd->cfg.num_slots = 8; + bankd->comp_id.type = ComponentType_remsimBankd; OSMO_STRLCPY_ARRAY(bankd->comp_id.name, "fixme-name"); OSMO_STRLCPY_ARRAY(bankd->comp_id.software, "remsim-bankd"); @@ -187,8 +191,8 @@ int main(int argc, char **argv) exit(1); g_bankd->accept_fd = rc; - /* create worker threads. FIXME: one per reader/slot! */ - for (i = 0; i < 10; i++) { + /* create worker threads: One per reader/slot! */ + for (i = 0; i < g_bankd->cfg.num_slots; i++) { struct bankd_worker *w; w = bankd_create_worker(g_bankd, i); if (!w)