<p style="white-space: pre-wrap; word-wrap: break-word;">Thanks for reviewing this.</p><p style="white-space: pre-wrap; word-wrap: break-word;">I have fixed the easy parts. Unfortunately I did not notice the handover commands on network level. I will have another look at this tomorrow.</p><p><a href="https://gerrit.osmocom.org/c/osmo-bsc/+/24600">View Change</a></p><p>7 comments:</p><ul style="list-style: none; padding: 0;"><li style="margin: 0; padding: 0;"><p><a href="https://gerrit.osmocom.org/c/osmo-bsc/+/24600/1/doc/manuals/chapters/control.adoc">File doc/manuals/chapters/control.adoc:</a></p><ul style="list-style: none; padding: 0;"><li style="margin: 0; padding: 0 0 0 16px;"><p style="margin-bottom: 4px;"><a href="https://gerrit.osmocom.org/c/osmo-bsc/+/24600/1/doc/manuals/chapters/control.adoc@41">Patch Set #1, Line 41:</a> <code style="font-family:monospace,monospace">|handover_ho_active|RW|No|"0","1","default"|Enable/disable handover.</code></p><p><blockquote style="border-left: 1px solid #aaa; margin: 10px 0; padding: 0 10px;">be aware that (almost?) all handover, handover1 and handover2 vty commands exist on the 'network' no […]</blockquote></p><p style="white-space: pre-wrap; word-wrap: break-word;">I did not notice that. This probably means that I have dig a bit deeper. I only noticed the handover commands on network level.</p></li></ul></li><li style="margin: 0; padding: 0;"><p><a href="https://gerrit.osmocom.org/c/osmo-bsc/+/24600/1/src/osmo-bsc/handover_ctrl.c">File src/osmo-bsc/handover_ctrl.c:</a></p><ul style="list-style: none; padding: 0;"><li style="margin: 0; padding: 0 0 0 16px;"><p style="margin-bottom: 4px;"><a href="https://gerrit.osmocom.org/c/osmo-bsc/+/24600/1/src/osmo-bsc/handover_ctrl.c@33">Patch Set #1, Line 33:</a> <code style="font-family:monospace,monospace">bool verify_vty_cmd_arg(void *ctx, const char *range, const char *value)</code></p><p><blockquote style="border-left: 1px solid #aaa; margin: 10px 0; padding: 0 10px;">i understand: the macros that were invented for VTY are now used for CTRL. […]</blockquote></p><p style="white-space: pre-wrap; word-wrap: break-word;">The function cmd_match is a bit strange, I could not make it work, but I from the code I can see that it uses cmd_range_match() to match the range. This works fine for me. However, even in cmd_match, I did not see any code that matches the choice strings ("test1|test2|test3").</p></li><li style="margin: 0; padding: 0 0 0 16px;"><p style="margin-bottom: 4px;"><a href="https://gerrit.osmocom.org/c/osmo-bsc/+/24600/1/src/osmo-bsc/handover_ctrl.c@88">Patch Set #1, Line 88:</a> <code style="font-family:monospace,monospace">               cmd->reply = talloc_asprintf(cmd, VTY_WRITE_FMT, VTY_WRITE_CONV(val)); \</code></p><p><blockquote style="border-left: 1px solid #aaa; margin: 10px 0; padding: 0 10px;">the HO_CFG_ONE_MEMBER() has arguments called VTY_WRITE_FMT and VTY_WRITE_CONV. […]</blockquote></p><p style="white-space: pre-wrap; word-wrap: break-word;">I think putting a comment might sufficient.</p></li><li style="margin: 0; padding: 0 0 0 16px;"><p style="margin-bottom: 4px;"><a href="https://gerrit.osmocom.org/c/osmo-bsc/+/24600/1/src/osmo-bsc/handover_ctrl.c@98">Patch Set #1, Line 98:</a> <code style="font-family:monospace,monospace">     if (strcmp(cmd->value, "default") == 0)    \</code></p><p><blockquote style="border-left: 1px solid #aaa; margin: 10px 0; padding: 0 10px;">(before '\' should be space, not tab)</blockquote></p><p style="white-space: pre-wrap; word-wrap: break-word;">Done</p></li><li style="margin: 0; padding: 0 0 0 16px;"><p style="margin-bottom: 4px;"><a href="https://gerrit.osmocom.org/c/osmo-bsc/+/24600/1/src/osmo-bsc/handover_ctrl.c@114">Patch Set #1, Line 114:</a> <code style="font-family:monospace,monospace">#undef HO_CFG_ONE_MEMBER</code></p><p><blockquote style="border-left: 1px solid #aaa; margin: 10px 0; padding: 0 10px;">please insert spacing here. […]</blockquote></p><p style="white-space: pre-wrap; word-wrap: break-word;">Done</p></li><li style="margin: 0; padding: 0 0 0 16px;"><p style="margin-bottom: 4px;"><a href="https://gerrit.osmocom.org/c/osmo-bsc/+/24600/1/src/osmo-bsc/handover_ctrl.c@161">Patch Set #1, Line 161:</a> <code style="font-family:monospace,monospace">   rc |= ctrl_cmd_install(CTRL_NODE_ROOT, &cmd_##NAME);\</code></p><p><blockquote style="border-left: 1px solid #aaa; margin: 10px 0; padding: 0 10px;">(usually no '\' on last line; if you want to keep it maybe add a space before it)</blockquote></p><p style="white-space: pre-wrap; word-wrap: break-word;">Done</p></li><li style="margin: 0; padding: 0 0 0 16px;"><p style="margin-bottom: 4px;"><a href="https://gerrit.osmocom.org/c/osmo-bsc/+/24600/1/src/osmo-bsc/handover_ctrl.c@163">Patch Set #1, Line 163:</a> <code style="font-family:monospace,monospace">HO_CFG_ALL_MEMBERS</code></p><p><blockquote style="border-left: 1px solid #aaa; margin: 10px 0; padding: 0 10px;">@pespin i don't understand what you mean […]</blockquote></p><p style="white-space: pre-wrap; word-wrap: break-word;">Probably we should list the manually defined commands first and then proceed with the auto generated commands.</p></li></ul></li></ul><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmo-bsc/+/24600">change 24600</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-bsc/+/24600"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: osmo-bsc </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-Change-Id: I12f143906818fd6b16e8783157cbb1eb51e49ffc </div>
<div style="display:none"> Gerrit-Change-Number: 24600 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: dexter <pmaier@sysmocom.de> </div>
<div style="display:none"> Gerrit-Assignee: neels <nhofmeyr@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: Jenkins Builder </div>
<div style="display:none"> Gerrit-Reviewer: fixeria <vyanitskiy@sysmocom.de> </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-Comment-Date: Mon, 14 Jun 2021 20:15:03 +0000 </div>
<div style="display:none"> Gerrit-HasComments: Yes </div>
<div style="display:none"> Gerrit-Has-Labels: No </div>
<div style="display:none"> Comment-In-Reply-To: neels <nhofmeyr@sysmocom.de> </div>
<div style="display:none"> Comment-In-Reply-To: laforge <laforge@osmocom.org> </div>
<div style="display:none"> Comment-In-Reply-To: pespin <pespin@sysmocom.de> </div>
<div style="display:none"> Gerrit-MessageType: comment </div>