abis_nm: Add support to parse some nanoBTS Attribute Response attributes

nanoBTS actually supports regular formatting. There are a few differences
with spec though:
* The attributes are listed directly in the message instead of being inside
  the Get Attributes Response Info after the unsupported attribute ID list.
* The Get Attributes Response Info can be at any position in the
  attribute list, and it only contains the unsupported attribute ID list.

As a result, parsing is currently split into 3 main parts or functions:
* Parsing regular (per spec) Get Attributes Response Info attr and get a
  pointer to the list of attributes.
* A function that parses the list of attributes, called directly in case
  of nanoBTS, and called by the former parser of Get Attributes Response
  Info for regular (per spec) OML endpoints.
* A function to parse the unsupported attribute ID list, also used in the
  first function to get a pointer to the list of attributes.

Related: OS#3624
Change-Id: I52e9f177c14fec1ec3f5c4ddb244594409008357
This commit is contained in:
Pau Espin 2018-11-08 16:34:04 +01:00
parent 363941223f
commit 6597b54bd5
1 changed files with 2 additions and 1 deletions

View File

@ -569,7 +569,8 @@ static int abis_nm_rx_get_attr_resp(struct msgb *mb, const struct gsm_bts_trx *t
/* nanoBTS doesn't send Get Attribute Response Info, uses its own format */
if (bts->type != GSM_BTS_TYPE_NANOBTS)
return parse_attr_resp_info(bts, trx, foh, &tp);
return 0;
else
return parse_attr_resp_info_attr(bts, trx, foh, &tp);
}
/* 3GPP TS 52.021 §6.2.5 */