<p>laforge <strong>submitted</strong> this change.</p><p><a href="https://gerrit.osmocom.org/c/pysim/+/23837">View Change</a></p><div style="white-space:pre-wrap">Approvals:
  Jenkins Builder: Verified
  laforge: Looks good to me, approved
  dexter: Looks good to me, but someone else must approve

</div><pre style="font-family: monospace,monospace; white-space: pre-wrap;">ts_31_102: Define DF_WLAN, DF_ProSe and DF_HNB with their EFs<br><br>Change-Id: I2d4662dc021e286a1c3293ab36aaa845b1251388<br>---<br>M pySim/ts_31_102.py<br>1 file changed, 58 insertions(+), 3 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/pySim/ts_31_102.py b/pySim/ts_31_102.py</span><br><span>index 3497dee..2de3948 100644</span><br><span>--- a/pySim/ts_31_102.py</span><br><span>+++ b/pySim/ts_31_102.py</span><br><span>@@ -636,6 +636,61 @@</span><br><span>         super().__init__(fid=fid, sfid=sfid, name=name, desc=desc, rec_len={10,None})</span><br><span>         self._construct = Struct('tai'/Bytes(9), 'pnn_record_id'/Int8ub)</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+# TS 31.102 Section 4.4.5</span><br><span style="color: hsl(120, 100%, 40%);">+class DF_WLAN(CardDF):</span><br><span style="color: hsl(120, 100%, 40%);">+    def __init__(self, fid='5f40', name='DF.WLAN', desc='Files for WLAN purpose'):</span><br><span style="color: hsl(120, 100%, 40%);">+        super().__init__(fid=fid, name=name, desc=desc)</span><br><span style="color: hsl(120, 100%, 40%);">+        files = [</span><br><span style="color: hsl(120, 100%, 40%);">+            TransparentEF('4f41', 0x01, 'EF.Pseudo', 'Pseudonym'),</span><br><span style="color: hsl(120, 100%, 40%);">+            TransparentEF('4f42', 0x02, 'EF.UPLMNWLAN', 'User controlled PLMN selector for I-WLAN Access'),</span><br><span style="color: hsl(120, 100%, 40%);">+            TransparentEF('4f43', 0x03, 'EF.OPLMNWLAN', 'Operator controlled PLMN selector for I-WLAN Access'),</span><br><span style="color: hsl(120, 100%, 40%);">+            LinFixedEF('4f44', 0x04, 'EF.UWSIDL', 'User controlled WLAN Specific Identifier List'),</span><br><span style="color: hsl(120, 100%, 40%);">+            LinFixedEF('4f45', 0x05, 'EF.OWSIDL', 'Operator controlled WLAN Specific Identifier List'),</span><br><span style="color: hsl(120, 100%, 40%);">+            TransparentEF('4f46', 0x06, 'EF.WRI', 'WLAN Reauthentication Identity'),</span><br><span style="color: hsl(120, 100%, 40%);">+            LinFixedEF('4f47', 0x07, 'EF.HWSIDL', 'Home I-WLAN Specific Identifier List'),</span><br><span style="color: hsl(120, 100%, 40%);">+            TransparentEF('4f48', 0x08, 'EF.WEHPLMNPI', 'I-WLAN Equivalent HPLMN Presentation Indication'),</span><br><span style="color: hsl(120, 100%, 40%);">+            TransparentEF('4f49', 0x09, 'EF.WHPI', 'I-WLAN HPLMN Priority Indication'),</span><br><span style="color: hsl(120, 100%, 40%);">+            TransparentEF('4f4a', 0x0a, 'EF.WLRPLMN', 'I-WLAN Last Registered PLMN'),</span><br><span style="color: hsl(120, 100%, 40%);">+            TransparentEF('4f4b', 0x0b, 'EF.HPLMNDAI', 'HPLMN Direct Access Indicator'),</span><br><span style="color: hsl(120, 100%, 40%);">+            ]</span><br><span style="color: hsl(120, 100%, 40%);">+        self.add_files(files)</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+# TS 31.102 Section 4.4.6</span><br><span style="color: hsl(120, 100%, 40%);">+class DF_HNB(CardDF):</span><br><span style="color: hsl(120, 100%, 40%);">+    def __init__(self, fid='5f50', name='DF.HNB', desc='Files for HomeNodeB purpose'):</span><br><span style="color: hsl(120, 100%, 40%);">+        super().__init__(fid=fid, name=name, desc=desc)</span><br><span style="color: hsl(120, 100%, 40%);">+        files = [</span><br><span style="color: hsl(120, 100%, 40%);">+            LinFixedEF('4f01', 0x01, 'EF.ACSGL', 'Allowed CSG Lists'),</span><br><span style="color: hsl(120, 100%, 40%);">+            LinFixedEF('4f02', 0x02, 'EF.CSGTL', 'CSG Types'),</span><br><span style="color: hsl(120, 100%, 40%);">+            LinFixedEF('4f03', 0x03, 'EF.HNBN', 'Home NodeB Name'),</span><br><span style="color: hsl(120, 100%, 40%);">+            LinFixedEF('4f04', 0x04, 'EF.OCSGL', 'Operator CSG Lists'),</span><br><span style="color: hsl(120, 100%, 40%);">+            LinFixedEF('4f05', 0x05, 'EF.OCSGT', 'Operator CSG Type'),</span><br><span style="color: hsl(120, 100%, 40%);">+            LinFixedEF('4f06', 0x06, 'EF.OHNBN', 'Operator Home NodeB Name'),</span><br><span style="color: hsl(120, 100%, 40%);">+            ]</span><br><span style="color: hsl(120, 100%, 40%);">+        self.add_files(files)</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+# TS 31.102 Section 4.4.8</span><br><span style="color: hsl(120, 100%, 40%);">+class DF_ProSe(CardDF):</span><br><span style="color: hsl(120, 100%, 40%);">+    def __init__(self, fid='5f90', name='DF.ProSe', desc='Files for ProSe purpose'):</span><br><span style="color: hsl(120, 100%, 40%);">+        super().__init__(fid=fid, name=name, desc=desc)</span><br><span style="color: hsl(120, 100%, 40%);">+        files = [</span><br><span style="color: hsl(120, 100%, 40%);">+            LinFixedEF('4f01', 0x01, 'EF.PROSE_MON', 'ProSe Monitoring Parameters'),</span><br><span style="color: hsl(120, 100%, 40%);">+            LinFixedEF('4f02', 0x02, 'EF.PROSE_ANN', 'ProSe Announcing Parameters'),</span><br><span style="color: hsl(120, 100%, 40%);">+            LinFixedEF('4f03', 0x03, 'EF.PROSEFUNC', 'HPLMN ProSe Function'),</span><br><span style="color: hsl(120, 100%, 40%);">+            TransparentEF('4f04', 0x04, 'EF.PROSE_RADIO_COM', 'ProSe Direct Communication Radio Parameters'),</span><br><span style="color: hsl(120, 100%, 40%);">+            TransparentEF('4f05', 0x05, 'EF.PROSE_RADIO_MON', 'ProSe Direct Discovery Monitoring Radio Parameters'),</span><br><span style="color: hsl(120, 100%, 40%);">+            TransparentEF('4f06', 0x06, 'EF.PROSE_RADIO_ANN', 'ProSe Direct Discovery Announcing Radio Parameters'),</span><br><span style="color: hsl(120, 100%, 40%);">+            LinFixedEF('4f07', 0x07, 'EF.PROSE_POLICY', 'ProSe Policy Parameters'),</span><br><span style="color: hsl(120, 100%, 40%);">+            LinFixedEF('4f08', 0x08, 'EF.PROSE_PLMN', 'ProSe PLMN Parameters'),</span><br><span style="color: hsl(120, 100%, 40%);">+            TransparentEF('4f09', 0x09, 'EF.PROSE_GC', 'ProSe Group Counter'),</span><br><span style="color: hsl(120, 100%, 40%);">+            TransparentEF('4f10', 0x10, 'EF.PST', 'ProSe Service Table'),</span><br><span style="color: hsl(120, 100%, 40%);">+            TransparentEF('4f11', 0x11, 'EF.UIRC', 'ProSe UsageInformationReportingConfiguration'),</span><br><span style="color: hsl(120, 100%, 40%);">+            LinFixedEF('4f12', 0x12, 'EF.PROSE_GM_DISCOVERY', 'ProSe Group Member Discovery Parameters'),</span><br><span style="color: hsl(120, 100%, 40%);">+            LinFixedEF('4f13', 0x13, 'EF.PROSE_RELAY', 'ProSe Relay Parameters'),</span><br><span style="color: hsl(120, 100%, 40%);">+            TransparentEF('4f14', 0x14, 'EF.PROSE_RELAY_DISCOVERY', 'ProSe Relay Discovery Parameters'),</span><br><span style="color: hsl(120, 100%, 40%);">+            ]</span><br><span style="color: hsl(120, 100%, 40%);">+        self.add_files(files)</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> class DF_USIM_5GS(CardDF):</span><br><span>     def __init__(self, fid='5FC0', name='DF.5GS', desc='5GS related files'):</span><br><span>         super().__init__(fid=fid, name=name, desc=desc)</span><br><span>@@ -762,9 +817,9 @@</span><br><span>           # FIXME: DF_SoLSA</span><br><span>           # FIXME: DF_PHONEBOOK</span><br><span>           # FIXME: DF_GSM_ACCESS</span><br><span style="color: hsl(0, 100%, 40%);">-          # FIXME: DF_WLAN</span><br><span style="color: hsl(0, 100%, 40%);">-          # FIXME: DF_HNB</span><br><span style="color: hsl(0, 100%, 40%);">-          # FIXME: DF_ProSe</span><br><span style="color: hsl(120, 100%, 40%);">+          DF_WLAN(),</span><br><span style="color: hsl(120, 100%, 40%);">+          DF_HNB(),</span><br><span style="color: hsl(120, 100%, 40%);">+          DF_ProSe(),</span><br><span>           # FIXME: DF_ACDC</span><br><span>           # FIXME: DF_TV</span><br><span>           DF_USIM_5GS(),</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/pysim/+/23837">change 23837</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://gerrit.osmocom.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://gerrit.osmocom.org/c/pysim/+/23837"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: pysim </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-Change-Id: I2d4662dc021e286a1c3293ab36aaa845b1251388 </div>
<div style="display:none"> Gerrit-Change-Number: 23837 </div>
<div style="display:none"> Gerrit-PatchSet: 3 </div>
<div style="display:none"> Gerrit-Owner: laforge <laforge@osmocom.org> </div>
<div style="display:none"> Gerrit-Reviewer: Jenkins Builder </div>
<div style="display:none"> Gerrit-Reviewer: dexter <pmaier@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: herlesupreeth <herlesupreeth@gmail.com> </div>
<div style="display:none"> Gerrit-Reviewer: laforge <laforge@osmocom.org> </div>
<div style="display:none"> Gerrit-MessageType: merged </div>