OsmoBSC> enable

OsmoBSC# configure terminal
OsmoBSC(config)# msc 0

OsmoBSC(config-msc)# codec-list?
  codec-list  Set the allowed audio codecs and their order of preference
OsmoBSC(config-msc)# codec-list ?
  LIST  List of audio codecs in order of preference, e.g. 'codec-list fr3 fr2 fr1 hr3 hr1'. (fr3: AMR-FR, hr3: AMR-HR, fr2: GSM-EFR, fr1: GSM-FR, hr1: GSM-HR)

OsmoBSC(config-msc)# # Default list -- should match the default in osmo_msc_data_alloc()
OsmoBSC(config-msc)# show running-config
...
msc 0
...
 codec-list fr1 hr1 fr2 fr3 hr3
...

OsmoBSC(config-msc)# # Change order
OsmoBSC(config-msc)# codec-list fr3 hr3 fr2 fr1 hr1
OsmoBSC(config-msc)# show running-config
...
msc 0
...
 codec-list fr3 hr3 fr2 fr1 hr1
...
OsmoBSC(config-msc)# codec-list hr1 hr3 fr1 fr2 fr3
OsmoBSC(config-msc)# show running-config
...
msc 0
...
 codec-list hr1 hr3 fr1 fr2 fr3
...

OsmoBSC(config-msc)# codec-list foo
"foo" is not a valid codec version

OsmoBSC(config-msc)# codec-list fr10
"fr10" is not a valid codec version

OsmoBSC(config-msc)# codec-list hr10
"hr10" is not a valid codec version

OsmoBSC(config-msc)# codec-list FR1
"FR1" is not a valid codec version

OsmoBSC(config-msc)# # Ensure the codec-list with wrong args did not change the config
OsmoBSC(config-msc)# show running-config
...
msc 0
...
 codec-list hr1 hr3 fr1 fr2 fr3
...

OsmoBSC(config-msc)# codec-list fr1 fr1
duplicate entry in 'msc' / 'codec-list': fr1
OsmoBSC(config-msc)# show running-config
...
msc 0
...
 codec-list hr1 hr3 fr1 fr2 fr3
...

OsmoBSC(config-msc)# codec-list fr0 fr1
"fr0" is not a valid codec version
OsmoBSC(config-msc)# show running-config
...
msc 0
...
 codec-list hr1 hr3 fr1 fr2 fr3
...

OsmoBSC(config-msc)# codec-list hr0 hr1
"hr0" is not a valid codec version
OsmoBSC(config-msc)# show running-config
...
msc 0
...
 codec-list hr1 hr3 fr1 fr2 fr3
...

OsmoBSC(config-msc)# codec-list fr8 fr9
"fr8" is not a valid codec version
OsmoBSC(config-msc)# show running-config
...
msc 0
...
 codec-list hr1 hr3 fr1 fr2 fr3
...

OsmoBSC(config-msc)# codec-list hr8 hr9
"hr8" is not a valid codec version
OsmoBSC(config-msc)# show running-config
...
msc 0
...
 codec-list hr1 hr3 fr1 fr2 fr3
...

OsmoBSC(config-msc)# codec-list fr2 hr2
"hr2" is not a valid codec version
OsmoBSC(config-msc)# show running-config
...
msc 0
...
 codec-list hr1 hr3 fr1 fr2 fr3
...

OsmoBSC(config-msc)# codec-list fr1 fr2 fr3 fr4
OsmoBSC(config-msc)# show running-config
...
msc 0
...
 codec-list fr1 fr2 fr3 fr4
...
OsmoBSC(config-msc)# # TODO: should fr4 thru fr7 be rejected

OsmoBSC(config-msc)# codec-list fr1 fr1 fr1 fr1 fr1 fr1 fr1 fr1 fr1 fr1 fr1 fr1 fr1 fr1 fr1 fr1 fr1
Too many items in 'msc' / 'codec-list': 17. There can be at most 16 entries.
