<p>Harald Welte <strong>merged</strong> this change.</p><p><a href="https://gerrit.osmocom.org/12718">View Change</a></p><div style="white-space:pre-wrap">Approvals:
  Jenkins Builder: Verified
  Vadim Yanitskiy: Looks good to me, but someone else must approve
  Pau Espin Pedrol: Looks good to me, but someone else must approve
  Harald Welte: Looks good to me, approved

</div><pre style="font-family: monospace,monospace; white-space: pre-wrap;">Added support for daemonize to osmo-pcu.<br><br>Change-Id: Ia889544e0a350b6bab55da4e4201a617e0241ea2<br>---<br>M src/pcu_main.cpp<br>1 file changed, 16 insertions(+), 1 deletion(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/src/pcu_main.cpp b/src/pcu_main.cpp</span><br><span>index 7480842..fe85160 100644</span><br><span>--- a/src/pcu_main.cpp</span><br><span>+++ b/src/pcu_main.cpp</span><br><span>@@ -60,6 +60,7 @@</span><br><span> extern void *bv_tall_ctx;</span><br><span> static int quit = 0;</span><br><span> static int rt_prio = -1;</span><br><span style="color: hsl(120, 100%, 40%);">+static bool daemonize = false;</span><br><span> static const char *gsmtap_addr = "localhost"; // FIXME: use gengetopt's default value instead</span><br><span> </span><br><span> static void print_help()</span><br><span>@@ -75,6 +76,8 @@</span><br><span>             "  -V   --version  print version\n"</span><br><span>                "  -r   --realtime PRIO Use SCHED_RR with the specified "</span><br><span>                  "priority\n"</span><br><span style="color: hsl(120, 100%, 40%);">+                "  -D      --daemonize     Fork the process into a background"</span><br><span style="color: hsl(120, 100%, 40%);">+                      "daemon\n"</span><br><span>                 "  -i      --gsmtap-ip     The destination IP used for GSMTAP.\n"</span><br><span>          );</span><br><span> }</span><br><span>@@ -91,12 +94,13 @@</span><br><span>                        { "mnc", 1, 0, 'n' },</span><br><span>                      { "version", 0, 0, 'V' },</span><br><span>                  { "realtime", 1, 0, 'r' },</span><br><span style="color: hsl(120, 100%, 40%);">+                  { "daemonize", 0, 0, 'D' },</span><br><span>                        { "exit", 0, 0, 'e' },</span><br><span>                     { "gsmtap-ip", 1, 0, 'i' },</span><br><span>                        { 0, 0, 0, 0 }</span><br><span>               };</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-          c = getopt_long(argc, argv, "hc:m:n:Vr:e:i:",</span><br><span style="color: hsl(120, 100%, 40%);">+               c = getopt_long(argc, argv, "hc:m:n:Vr:De:i:",</span><br><span>                             long_options, &option_idx);</span><br><span>              if (c == -1)</span><br><span>                         break;</span><br><span>@@ -130,6 +134,9 @@</span><br><span>                 case 'r':</span><br><span>                    rt_prio = atoi(optarg);</span><br><span>                      break;</span><br><span style="color: hsl(120, 100%, 40%);">+                case 'D':</span><br><span style="color: hsl(120, 100%, 40%);">+                     daemonize = true;</span><br><span style="color: hsl(120, 100%, 40%);">+                     break;</span><br><span>               case 'e':</span><br><span>                    fprintf(stderr, "Warning: Option '-e' is deprecated!\n");</span><br><span>                  break;</span><br><span>@@ -329,6 +336,14 @@</span><br><span>                }</span><br><span>    }</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+ if (daemonize) {</span><br><span style="color: hsl(120, 100%, 40%);">+              rc = osmo_daemonize();</span><br><span style="color: hsl(120, 100%, 40%);">+                if (rc < 0) {</span><br><span style="color: hsl(120, 100%, 40%);">+                      perror("Error during daemonize");</span><br><span style="color: hsl(120, 100%, 40%);">+                   exit(1);</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%);">+</span><br><span>  while (!quit) {</span><br><span>              osmo_gsm_timers_check();</span><br><span>             osmo_gsm_timers_prepare();</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/12718">change 12718</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/12718"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: osmo-pcu </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-MessageType: merged </div>
<div style="display:none"> Gerrit-Change-Id: Ia889544e0a350b6bab55da4e4201a617e0241ea2 </div>
<div style="display:none"> Gerrit-Change-Number: 12718 </div>
<div style="display:none"> Gerrit-PatchSet: 2 </div>
<div style="display:none"> Gerrit-Owner: Rafael Diniz <rafael@rhizomatica.org> </div>
<div style="display:none"> Gerrit-Reviewer: Harald Welte <laforge@gnumonks.org> </div>
<div style="display:none"> Gerrit-Reviewer: Jenkins Builder (1000002) </div>
<div style="display:none"> Gerrit-Reviewer: Max <msuraev@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: Pau Espin Pedrol <pespin@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: Rafael Diniz <rafael@rhizomatica.org> </div>
<div style="display:none"> Gerrit-Reviewer: Vadim Yanitskiy <axilirator@gmail.com> </div>
<div style="display:none"> Gerrit-CC: Keith Whyte <keith@rhizomatica.org> </div>