mobile: few fixes, wrap all capabilities IEs, align Id/PTI naming for (E)PS

This commit is contained in:
mitshell 2018-01-02 14:51:01 +01:00
parent cbf80f3f64
commit 5b84e8280f
6 changed files with 11 additions and 11 deletions

View File

@ -58,7 +58,7 @@ class Layer3(Envelope):
if 'sec' in kw:
# used within the NAS LTE EMM stack of corenet
sec = kw['sec']
del kw['nosec']
del kw['sec']
else:
sec = None
Envelope.__init__(self, *args, **kw)

View File

@ -89,7 +89,7 @@ class GMMAttachRequest(Layer3):
Type4LV('MSNetCap', val={'V':b'\0\0'}, IE=MS_network_capability_value_part),
Uint('CKSN', bl=4, dic=CKSN_dict),
AttachType(),
DRXParam(),
Type3V('DRXParam', val={'V':b'\0\0'}, bl={'V':16}, IE=DRXParam()),
Type4LV('ID', val={'V':b'\xf4\0\0\0\0'}, IE=ID()),
RAI('OldRAI'),
Type4LV('MSRACap', val={'V':5*b'\0'}, IE=MS_RA_capability_value_part),

View File

@ -575,7 +575,7 @@ class ID(Envelope):
else:
if not hasattr(self, '_IDNone'):
self._IDNone = IDNone()
log('WNG: ID type unhandled, %i' % type)
log('WNG: ID, type unhandled, %i' % type)
self._content = self._IDNone._content
self._by_id = self._IDNone._by_id
self._by_name = self._IDNone._by_name

View File

@ -291,7 +291,7 @@ class MMLocationUpdatingRequest(Layer3):
Uint('CKSN', bl=4, dic=CKSN_dict),
LocUpdateType(),
LAI(),
MSCm1(),
Type3V('MSCm1', val={'V':b'\0'}, bl={'V':8}, IE=MSCm1()),
Type4LV('ID', val={'V':b'\xf4\0\0\0\0'}, IE=ID()),
Type4TLV('MSCm2', val={'T':0x33, 'V':b'@\0\0'}, IE=MSCm2()),
Type1TV('AddUpdateParams', val={'T':0xC, 'V':0}, IE=AddUpdateParams()),

View File

@ -88,9 +88,9 @@ _ESM_dict = {
class ESMHeader(Envelope):
_GEN = (
Uint('EPSBearerID', bl=4),
Uint('EPSBearerId', bl=4),
Uint('ProtDisc', val=2, bl=4),
Uint8('TransID'),
Uint8('PTI'),
Uint8('Type', val=232, dic=_ESM_dict)
)
@ -130,7 +130,7 @@ class ESMActDediEPSBearerCtxtReject(Layer3):
class ESMActDediEPSBearerCtxtRequest(Layer3):
_GEN = tuple(ESMHeader(val={'Type':197})._content) + (
Uint('spare', bl=4),
Uint('LinkedEPSBearerID', bl=4),
Uint('LinkedEPSBearerId', bl=4),
Type4LV('EPSQoS', val={'V':b'\x09'}, IE=EPSQoS()),
Type4LV('TFT', val={'V':b'\0'}, IE=TFT()),
Type4TLV('TransId', val={'T':0x5D, 'V':b'\0'}, IE=TransId()),
@ -222,7 +222,7 @@ class ESMBearerResourceAllocReject(Layer3):
class ESMBearerResourceAllocRequest(Layer3):
_GEN = tuple(ESMHeader(val={'Type':212})._content) + (
Uint('spare', bl=4),
Uint('LinkedEPSBearerID', bl=4),
Uint('LinkedEPSBearerId', bl=4),
Type4LV('TFAggregate', val={'V':b'\0'}, IE=TFAggregate()),
Type4LV('EPSQoS', val={'V':b'\x09'}, IE=EPSQoS()),
Type4TLV('ProtConfig', val={'T':0x27, 'V':b'\x80'}, IE=ProtConfig()),
@ -256,7 +256,7 @@ class ESMBearerResourceModifReject(Layer3):
class ESMBearerResourceModifRequest(Layer3):
_GEN = tuple(ESMHeader(val={'Type':214})._content) + (
Uint('spare', bl=4),
Uint('LinkedEPSBearerID', bl=4),
Uint('LinkedEPSBearerId', bl=4),
Type4LV('TFAggregate', val={'V':b'\0'}, IE=TFAggregate()),
Type4TLV('EPSQoS', val={'T':0x5B, 'V':b'\x09'}, IE=EPSQoS()),
Type3TV('ESMCause', val={'T':0x58, 'V':b'\0'}, bl={'V':8}, IE=ESMCause()),
@ -455,7 +455,7 @@ class ESMPDNDisconnectReject(Layer3):
class ESMPDNDisconnectRequest(Layer3):
_GEN = tuple(ESMHeader(val={'Type':210})._content) + (
Uint('spare', bl=4),
Uint('LinkedEPSBearerID', bl=4),
Uint('LinkedEPSBearerId', bl=4),
Type4TLV('ProtConfig', val={'T':0x27, 'V':b'\x80'}, IE=ProtConfig()),
Type6TLVE('ExtProtConfig', val={'T':0x7B, 'V':b'\0'})
)

View File

@ -756,7 +756,7 @@ class TAIList(Envelope):
.format(self._name, err)))
elif isinstance(ptail, dict):
try:
PTaiL = self._PTailListLUT[ptail['Type']](val=ptail)
PTaiL = self._PTaiListLUT[ptail['Type']](val=ptail)
except Exception as err:
raise(PycrateErr('{0}: unable to set partial TAI list value, {1}'\
.format(self._name, err)))