Attention is currently required from: falconia.
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/libosmocore/+/32961 )
Change subject: gsm0503_tch_hr_encode(): accept both TS101318 and RFC5993 payloads
......................................................................
Patch Set 3: Code-Review+1
--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/32961
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Change-Id: I13eaad366f9f68615b9e9e4a5f87396a0e9dea0f
Gerrit-Change-Number: 32961
Gerrit-PatchSet: 3
Gerrit-Owner: falconia <falcon(a)freecalypso.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: falconia <falcon(a)freecalypso.org>
Gerrit-Comment-Date: Tue, 23 May 2023 17:19:55 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
laforge has uploaded this change for review. ( https://gerrit.osmocom.org/c/pysim/+/32963 )
Change subject: ts_51_011: Add sst_service_[de]{activate,allocate} shell commands
......................................................................
ts_51_011: Add sst_service_[de]{activate,allocate} shell commands
Just like the existing commands for UST/IST: Allow the user to
activate/deactivate individual services. As EF.SST also contains
information about "allocation" of a service, let's have commands for
allocation and activation.
Change-Id: If959d06248cb1a9d2c0a21cdd40d438726cbc5f0
---
M docs/shell.rst
M pySim/ts_51_011.py
2 files changed, 67 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/pysim refs/changes/63/32963/1
diff --git a/docs/shell.rst b/docs/shell.rst
index 9ffbac3..8f440c2 100644
--- a/docs/shell.rst
+++ b/docs/shell.rst
@@ -555,6 +555,22 @@
~~~~~~~~~~~~~~~~~~~~~~~~
Read + decode all EF.ARR records in flattened, human-friendly form.
+DF.GSM/EF.SST: sst_service_allocate
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Mark a given single service as allocated in EF.SST. Requires service number as argument.
+
+DF.GSM/EF.SST: sst_service_activate
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Mark a given single service as activated in EF.SST. Requires service number as argument.
+
+DF.GSM/EF.SST: sst_service_deallocate
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Mark a given single service as deallocated in EF.SST. Requires service number as argument.
+
+DF.GSM/EF.SST: sst_service_deactivate
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Mark a given single service as deactivated in EF.SST. Requires service number as argument.
+
ADF.USIM/EF.EST: est_service_enable
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Enables a single service in EF.EST. Requires service number as argument.
diff --git a/pySim/ts_51_011.py b/pySim/ts_51_011.py
index e9f0945..15ddc54 100644
--- a/pySim/ts_51_011.py
+++ b/pySim/ts_51_011.py
@@ -643,6 +643,7 @@
def __init__(self, fid, sfid, name, desc, size, table):
super().__init__(fid, sfid=sfid, name=name, desc=desc, size=size)
self.table = table
+ self.shell_commands += [self.AddlShellCommands()]
@staticmethod
def _bit_byte_offset_for_service(service: int) -> Tuple[int, int]:
@@ -686,6 +687,42 @@
out[byte_offset] |= ((bits & 3) << bit_offset)
return out
+ @with_default_category('File-Specific Commands')
+ class AddlShellCommands(CommandSet):
+ def _adjust_service(self, service_nr: int, allocate: Optional[bool] = None, activate : Optional[bool] = None):
+ (byte_offset, bit_offset) = EF_ServiceTable._bit_byte_offset_for_service(service_nr)
+ hex_data, sw = self._cmd.lchan.read_binary(length=1, offset=byte_offset)
+ data = h2b(hex_data)
+ if allocate != None:
+ if allocate:
+ data[0] |= (1 << bit_offset)
+ else:
+ data[0] &= ~(1 << bit_offset)
+ if activate != None:
+ if activate:
+ data[0] |= (2 << bit_offset)
+ else:
+ data[0] &= ~(2 << bit_offset)
+ total_data, sw = self._cmd.lchan.update_binary(b2h(data), offset=byte_offset)
+ return sw
+
+ def do_sst_service_allocate(self, arg):
+ """Allocate a service within EF.SST"""
+ self._adjust_service(int(arg), allocate = True)
+
+ def do_sst_service_deallocate(self, arg):
+ """Deallocate a service within EF.SST"""
+ self._adjust_service(int(arg), allocate = False)
+
+ def do_sst_service_activate(self, arg):
+ """Activate a service within EF.SST"""
+ self._adjust_service(int(arg), activate = True)
+
+ def do_sst_service_deactivate(self, arg):
+ """Deactivate a service within EF.SST"""
+ self._adjust_service(int(arg), activate = False)
+
+
# TS 51.011 Section 10.3.11
class EF_SPN(TransparentEF):
_test_de_encode = [
--
To view, visit https://gerrit.osmocom.org/c/pysim/+/32963
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: pysim
Gerrit-Branch: master
Gerrit-Change-Id: If959d06248cb1a9d2c0a21cdd40d438726cbc5f0
Gerrit-Change-Number: 32963
Gerrit-PatchSet: 1
Gerrit-Owner: laforge <laforge(a)osmocom.org>
Gerrit-MessageType: newchange
Attention is currently required from: pespin.
Hello Jenkins Builder, pespin,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/libosmocore/+/32961
to look at the new patch set (#3).
Change subject: gsm0503_tch_hr_encode(): accept both TS101318 and RFC5993 payloads
......................................................................
gsm0503_tch_hr_encode(): accept both TS101318 and RFC5993 payloads
The original design of gsm0503_tch_hr_{en,de}code() functions contains
a mistake in that a pseudo-RFC5993 format was chosen for HR codec frame
input and output, instead of "pure" (agnostic to outer RTP encoding)
form of 14 bytes. We would like to change this design so that we can
feed pure 14-byte HR codec frames to the channel coding function and
get such frames back from the channel decoding function - however,
we cannot break libosmocoding API for existing users. In the encoding
direction, make the new format our preferred one, but support the
extra-octet format for backward compatibility.
Related: OS#5688
Change-Id: I13eaad366f9f68615b9e9e4a5f87396a0e9dea0f
---
M src/coding/gsm0503_coding.c
1 file changed, 27 insertions(+), 6 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/61/32961/3
--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/32961
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Change-Id: I13eaad366f9f68615b9e9e4a5f87396a0e9dea0f
Gerrit-Change-Number: 32961
Gerrit-PatchSet: 3
Gerrit-Owner: falconia <falcon(a)freecalypso.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: newpatchset