Hi Alexander, I may just have broken your patch-set accidentially by converting mncc_names to value_string, sorry for that :/ Regarding your patch, I have to disagree about several topics: On Wed, Nov 25, 2015 at 03:31:04PM -0500, Alexander Chemeris wrote:
-static struct mncc_names { +struct name_value { char *name; int value; -} mncc_names[] = { +};
Is there a specific reason to introduce a new structure rather than use struct value_string from libosmocore, which is used all over the Osmo* code for this kind of name-value mapping? All code should use that infrastructure, and the occasional separate implementation should bec converted to value_string.
+static struct name_value mncc_locations[] = { + {"GSM48_CAUSE_LOC_USER", 0x00},
1) The cause values and cause locations are GSM 04.08, not MNCC specific. As such, they belong into libosmogsm, not OsmoNITB. Also, they shouldn't be called 'mncc_locations' if in fact they are GSM 04.08 locations. 2) Also, rather than introducing magic numbers, the defnitions from <osmocmo/gsm/protocol/gsm_04_08.h> should be used, making the above an struct value_string gsm48_cause_loc_names[] = { { GSM48_CAUSE_LOC_USER, "GSM48_CAUSE_LOC_USER" }, 3) And finally, the string should be more user-readable than the cryptic #define/enum value, i.e. struct value_string gsm48_cause_loc_names[] = { { GSM48_CAUSE_LOC_USER, "User" }, Regards, Harald -- - Harald Welte <laforge@gnumonks.org> http://laforge.gnumonks.org/ ============================================================================ "Privacy in residential applications is a desirable marketing option." (ETSI EN 300 175-7 Ch. A6)