<p>neels <strong>submitted</strong> this change.</p><p><a href="https://gerrit.osmocom.org/c/osmo-hlr/+/15912">View Change</a></p><div style="white-space:pre-wrap">Approvals:
Jenkins Builder: Verified
pespin: Looks good to me, but someone else must approve
laforge: Looks good to me, approved
</div><pre style="font-family: monospace,monospace; white-space: pre-wrap;">add --db-check option<br><br>This allows starting osmo-hlr to merely open the database, do upgrades if<br>necessary, and quit, without opening any ports.<br><br>So that no ports are opened, move the telnet VTY startup to below the database<br>check.<br><br>Needed for upcoming patch that introduces a db_upgrade test, in<br>I0961bab0e17cfde5b030576c5bc243c2b51d9dc4.<br><br>Change-Id: I1a4b3360690acd2cd3cffdadffbb00a28d421316<br>---<br>M src/hlr.c<br>1 file changed, 23 insertions(+), 6 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/src/hlr.c b/src/hlr.c</span><br><span>index 8b9dff1..6bfc141 100644</span><br><span>--- a/src/hlr.c</span><br><span>+++ b/src/hlr.c</span><br><span>@@ -706,6 +706,7 @@</span><br><span> printf(" -T --timestamp Prefix every log line with a timestamp.\n");</span><br><span> printf(" -e --log-level number Set a global loglevel.\n");</span><br><span> printf(" -U --db-upgrade Allow HLR database schema upgrades.\n");</span><br><span style="color: hsl(120, 100%, 40%);">+ printf(" -C --db-check Quit after opening (and upgrading) the database.\n");</span><br><span> printf(" -V --version Print the version of OsmoHLR.\n");</span><br><span> }</span><br><span> </span><br><span>@@ -714,6 +715,7 @@</span><br><span> const char *db_file;</span><br><span> bool daemonize;</span><br><span> bool db_upgrade;</span><br><span style="color: hsl(120, 100%, 40%);">+ bool db_check;</span><br><span> } cmdline_opts = {</span><br><span> .config_file = "osmo-hlr.cfg",</span><br><span> .db_file = NULL,</span><br><span>@@ -735,6 +737,7 @@</span><br><span> {"log-level", 1, 0, 'e'},</span><br><span> {"timestamp", 0, 0, 'T'},</span><br><span> {"db-upgrade", 0, 0, 'U' },</span><br><span style="color: hsl(120, 100%, 40%);">+ {"db-check", 0, 0, 'C' },</span><br><span> {"version", 0, 0, 'V' },</span><br><span> {0, 0, 0, 0}</span><br><span> };</span><br><span>@@ -773,6 +776,9 @@</span><br><span> case 'U':</span><br><span> cmdline_opts.db_upgrade = true;</span><br><span> break;</span><br><span style="color: hsl(120, 100%, 40%);">+ case 'C':</span><br><span style="color: hsl(120, 100%, 40%);">+ cmdline_opts.db_check = true;</span><br><span style="color: hsl(120, 100%, 40%);">+ break;</span><br><span> case 'V':</span><br><span> print_version(1);</span><br><span> exit(0);</span><br><span>@@ -856,12 +862,6 @@</span><br><span> return rc;</span><br><span> }</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">- /* start telnet after reading config for vty_get_bind_addr() */</span><br><span style="color: hsl(0, 100%, 40%);">- rc = telnet_init_dynif(hlr_ctx, NULL, vty_get_bind_addr(),</span><br><span style="color: hsl(0, 100%, 40%);">- OSMO_VTY_PORT_HLR);</span><br><span style="color: hsl(0, 100%, 40%);">- if (rc < 0)</span><br><span style="color: hsl(0, 100%, 40%);">- return rc;</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span> LOGP(DMAIN, LOGL_NOTICE, "hlr starting\n");</span><br><span> </span><br><span> rc = rand_init();</span><br><span>@@ -879,6 +879,23 @@</span><br><span> exit(1);</span><br><span> }</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+ if (cmdline_opts.db_check) {</span><br><span style="color: hsl(120, 100%, 40%);">+ LOGP(DMAIN, LOGL_NOTICE, "Cmdline option --db-check: Database was opened successfully, quitting.\n");</span><br><span style="color: hsl(120, 100%, 40%);">+ db_close(g_hlr->dbc);</span><br><span style="color: hsl(120, 100%, 40%);">+ log_fini();</span><br><span style="color: hsl(120, 100%, 40%);">+ talloc_free(hlr_ctx);</span><br><span style="color: hsl(120, 100%, 40%);">+ talloc_free(tall_vty_ctx);</span><br><span style="color: hsl(120, 100%, 40%);">+ talloc_disable_null_tracking();</span><br><span style="color: hsl(120, 100%, 40%);">+ exit(0);</span><br><span style="color: hsl(120, 100%, 40%);">+ }</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+ /* start telnet after reading config for vty_get_bind_addr() */</span><br><span style="color: hsl(120, 100%, 40%);">+ rc = telnet_init_dynif(hlr_ctx, NULL, vty_get_bind_addr(),</span><br><span style="color: hsl(120, 100%, 40%);">+ OSMO_VTY_PORT_HLR);</span><br><span style="color: hsl(120, 100%, 40%);">+ if (rc < 0)</span><br><span style="color: hsl(120, 100%, 40%);">+ return rc;</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> g_hlr->gs = osmo_gsup_server_create(hlr_ctx, g_hlr->gsup_bind_addr, OSMO_GSUP_PORT,</span><br><span> read_cb, &g_lu_ops, g_hlr);</span><br><span> if (!g_hlr->gs) {</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmo-hlr/+/15912">change 15912</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://gerrit.osmocom.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://gerrit.osmocom.org/c/osmo-hlr/+/15912"/><meta itemprop="name" content="View Change"/></div></div>
<div style="display:none"> Gerrit-Project: osmo-hlr </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-Change-Id: I1a4b3360690acd2cd3cffdadffbb00a28d421316 </div>
<div style="display:none"> Gerrit-Change-Number: 15912 </div>
<div style="display:none"> Gerrit-PatchSet: 2 </div>
<div style="display:none"> Gerrit-Owner: neels <nhofmeyr@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: Jenkins Builder </div>
<div style="display:none"> Gerrit-Reviewer: laforge <laforge@osmocom.org> </div>
<div style="display:none"> Gerrit-Reviewer: neels <nhofmeyr@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: pespin <pespin@sysmocom.de> </div>
<div style="display:none"> Gerrit-CC: fixeria <axilirator@gmail.com> </div>
<div style="display:none"> Gerrit-MessageType: merged </div>