[vty] First set of fixes for the oml/rsl con dropping
The code had wrong documentation in the VTY, it crashed
when OML or RSL was not up yet. These issues are fixed
right now.
diff --git a/openbsc/src/bsc_vty.c b/openbsc/src/bsc_vty.c
index b77d4dd..541e3cc 100644
--- a/openbsc/src/bsc_vty.c
+++ b/openbsc/src/bsc_vty.c
@@ -2266,8 +2266,9 @@
DEFUN(drop_bts,
drop_bts_cmd,
- "drop bts connection [nr] (oml|rsl)",
- SHOW_STR "Debug/Simulation command to drop ipaccess BTS\n")
+ "drop bts connection <0-65535> (oml|rsl)",
+ "Debug/Simulation command to drop ipaccess BTS\n"
+ "BTS NR\n" "Connection Type\n")
{
struct gsm_network *gsmnet;
struct gsm_bts_trx *trx;
@@ -2297,11 +2298,13 @@
/* close all connections */
if (strcmp(argv[1], "oml") == 0) {
- close(bts->oml_link->ts->driver.ipaccess.fd.fd);
+ if (bts->oml_link)
+ close(bts->oml_link->ts->driver.ipaccess.fd.fd);
} else if (strcmp(argv[1], "rsl") == 0) {
/* close all rsl connections */
llist_for_each_entry(trx, &bts->trx_list, list) {
- close(trx->rsl_link->ts->driver.ipaccess.fd.fd);
+ if (trx->rsl_link)
+ close(trx->rsl_link->ts->driver.ipaccess.fd.fd);
}
} else {
vty_out(vty, "Argument must be 'oml# or 'rsl'.%s", VTY_NEWLINE);