Revert "TODO epan/dissectors/asn1/kerberos/packet-kerberos-template.c new GSS flags"
[wireshark-sm.git] / epan / dissectors / asn1 / ulp / ULP-Components.asn
blob50997cb949568daf973de6d76c649de3ebda2418
1 -- ULP-Components.asn
2 -- Taken from OMA UserPlane Location Protocol
3 -- http://member.openmobilealliance.org/ftp/Public_documents/LOC/Permanent_documents/OMA-TS-ULP-V2_0_5-20191028-A.zip
5 --
6 -- 11.5 Common elements (SUPL Version 1)
7 --
8 ULP-Components DEFINITIONS AUTOMATIC TAGS ::=
9 BEGIN
11 EXPORTS Version, SessionID, IPAddress, SLPAddress, LocationId, Position, StatusCode, Velocity, QoP, PosMethod, Ver, SETId, PrimaryCPICH-Info, CellParametersID, FQDN;
13 IMPORTS
14         Ver2-CellInfo-extension
15 FROM Ver2-ULP-Components;
17 -- protocol version expressed as x.y.z (e.g., 5.1.0)
18 Version ::= SEQUENCE {
19   maj      INTEGER(0..255),
20   min      INTEGER(0..255),
21   servind  INTEGER(0..255)}
23 SessionID ::= SEQUENCE {
24   setSessionID  SetSessionID OPTIONAL, -- the semantics of OPTIONAL applies to the encoding only. The parameter itself is MANDATORY. This is introduced only to minimize bandwidth for the SUPL INIT message. Since the setSessionID is allocated by the SET, there is no setSessionID to be transmitted in the SUPL INIT message.
25   slpSessionID  SlpSessionID OPTIONAL -- the semantics of OPTIONAL applies to the encoding only. The parameter itself is MANDATORY. This is introduced only to minimize bandwidth for the SUPL START, SUPL TRIGGERED START and SUPL SET INIT messages. Since the slpSessionID is allocated by the SLP, there is no slpSessionID to be transmitted in these messages (with the exception described in section 10.14).
28 SetSessionID ::= SEQUENCE {sessionId  INTEGER(0..65535),
29                            setId      SETId}
31 SETId ::= CHOICE {
32   msisdn     OCTET STRING(SIZE (8)),
33   mdn        OCTET STRING(SIZE (8)),
34   min        BIT STRING(SIZE (34)), -- coded according to TIA-553
35   imsi       OCTET STRING(SIZE (8)),
36   nai        IA5String(SIZE (1..1000)),
37   iPAddress  IPAddress,
38   ...,
39   ver2-imei  OCTET STRING(SIZE(8))}
40 -- msisdn, mnd, imsi and imei are a BCD (Binary Coded Decimal) string
41 -- represent digits from 0 through 9,
42 -- two digits per octet, each digit encoded 0000 to 1001 (0 to 9)
43 -- bits 8765 of octet n encoding digit 2n
44 -- bits 4321 of octet n encoding digit 2(n-1) +1
45 -- not used digits in the string shall be filled with 1111
46 -- imei SHALL NOT be used unless the SLP indicates support for SUPL ver 2.0.3
47 -- or greater
49 SlpSessionID ::= SEQUENCE {
50   sessionID  OCTET STRING(SIZE (4)),
51   slpId      SLPAddress}
53 IPAddress ::= CHOICE {
54   ipv4Address  OCTET STRING(SIZE (4)),
55   ipv6Address  OCTET STRING(SIZE (16))}
57 SLPAddress ::= CHOICE {iPAddress  IPAddress,
58                        fqdn       FQDN,
59                        ...}
61 FQDN ::=
62   VisibleString(FROM ("a".."z" | "A".."Z" | "0".."9" |".-"))(SIZE (1..255))
64 Ver ::= BIT STRING(SIZE (64))
66 LocationId ::= SEQUENCE {cellInfo  CellInfo,
67                          status    Status,
68                          ...}
70 Status ::= ENUMERATED {stale(0), current(1), unknown(2), ...}
72 CellInfo ::= CHOICE {
73   gsmCell    GsmCellInformation,
74   wcdmaCell  WcdmaCellInformation, --WCDMA Cell Information/TD-SCDMA Cell Information
75   cdmaCell   CdmaCellInformation,
76   ...,
77   ver2-CellInfo-extension       Ver2-CellInfo-extension}
79 Position ::= SEQUENCE {
80   timestamp         UTCTime, -- shall include seconds and shall use UTC time.
81   positionEstimate  PositionEstimate,
82   velocity          Velocity OPTIONAL,
83   ...}
85 PositionEstimate ::= SEQUENCE {
86   latitudeSign  ENUMERATED {north, south},
87   latitude      INTEGER(0..8388607),
88   longitude     INTEGER(-8388608..8388607),
89   uncertainty
90     SEQUENCE {uncertaintySemiMajor  INTEGER(0..127),
91               uncertaintySemiMinor  INTEGER(0..127),
92               orientationMajorAxis  INTEGER(0..180)} OPTIONAL, -- angle in degree between major axis and North
93   confidence    INTEGER(0..100) OPTIONAL,
94   altitudeInfo  AltitudeInfo OPTIONAL,
95   ...} -- Coding as in [3GPP GAD]
97 AltitudeInfo ::= SEQUENCE {
98   altitudeDirection  ENUMERATED {height, depth},
99   altitude           INTEGER(0..32767),
100   altUncertainty     INTEGER(0..127),
101   ... } -- based on [3GPP GAD]
103 CdmaCellInformation ::= SEQUENCE {
104   refNID         INTEGER(0..65535), -- Network Id
105   refSID         INTEGER(0..32767), -- System Id
106   refBASEID      INTEGER(0..65535), -- Base Station Id
107   refBASELAT     INTEGER(0..4194303), -- Base Station Latitude
108   reBASELONG     INTEGER(0..8388607), -- Base Station Longitude
109   refREFPN       INTEGER(0..511), -- Base Station PN Code
110   refWeekNumber  INTEGER(0..65535), -- GPS Week Number
111   refSeconds     INTEGER(0..4194303), -- GPS Seconds
112   ...}
114 GsmCellInformation ::= SEQUENCE {
115   refMCC  INTEGER(0..999), -- Mobile Country Code
116   refMNC  INTEGER(0..999), -- Mobile Network Code
117   refLAC  INTEGER(0..65535), -- Location area code
118   refCI   INTEGER(0..65535), -- Cell identity
119   nmr     NMR OPTIONAL,
120   ta      INTEGER(0..255) OPTIONAL, --Timing Advance
121   ...}
123 WcdmaCellInformation ::= SEQUENCE {
124   refMCC                 INTEGER(0..999), -- Mobile Country Code
125   refMNC                 INTEGER(0..999), -- Mobile Network Code
126   refUC                  INTEGER(0..268435455), -- Cell identity
127   frequencyInfo          FrequencyInfo OPTIONAL,
128   primaryScramblingCode  INTEGER(0..511) OPTIONAL, -- Not applicable for TDD
129   measuredResultsList    MeasuredResultsList OPTIONAL,
130   ...,
131   cellParametersId       INTEGER(0..127) OPTIONAL, -- Not applicable for FDD
132   timingAdvance    TimingAdvance OPTIONAL -- Not applicable for FDD
135 TimingAdvance ::= SEQUENCE {
136  ta     INTEGER (0..8191),
137  tAResolution    TAResolution OPTIONAL, --If missing, resolution is 0.125 chips
138  chipRate        ChipRate OPTIONAL, --If missing, chip rate is 1.28 Mchip/s
139 ...}
141 TAResolution ::= ENUMERATED {res10chip(0),res05chip(1),res0125chip(2), ...} -- Corresponding to 1.0-chip, 0.5-chip and 0.125-chip resolutions, respectively
143 ChipRate ::= ENUMERATED {tdd128(0),tdd384(1), tdd768(2), ...} --Corresponding to 1.28-Mchips/s, 3.84-Mchips/s and 7.68-Mchips/s chip rates, respectively
146 FrequencyInfo ::= SEQUENCE {
147   modeSpecificInfo  CHOICE {fdd  FrequencyInfoFDD,
148                             tdd  FrequencyInfoTDD,
149                             ...},
150   ...}
152 FrequencyInfoFDD ::= SEQUENCE {
153   uarfcn-UL  UARFCN OPTIONAL,
154   uarfcn-DL  UARFCN,
155   ...}
157 FrequencyInfoTDD ::= SEQUENCE {uarfcn-Nt  UARFCN,
158                                ...}
160 UARFCN ::= INTEGER(0..16383)
162 NMR ::= SEQUENCE (SIZE (1..15)) OF NMRelement
164 NMRelement ::= SEQUENCE {
165   arfcn  INTEGER(0..1023),
166   bsic   INTEGER(0..63),
167   rxLev  INTEGER(0..63),
168   ...}
170 MeasuredResultsList ::= SEQUENCE (SIZE (1..maxFreq)) OF MeasuredResults
172 MeasuredResults ::= SEQUENCE {
173   frequencyInfo            FrequencyInfo OPTIONAL,
174   utra-CarrierRSSI         UTRA-CarrierRSSI OPTIONAL,
175   cellMeasuredResultsList  CellMeasuredResultsList OPTIONAL}
177 CellMeasuredResultsList ::=
178   SEQUENCE (SIZE (1..maxCellMeas)) OF CellMeasuredResults
180 -- SPARE: UTRA-CarrierRSSI, Max = 76
181 -- Values above Max are spare
182 UTRA-CarrierRSSI ::= INTEGER(0..127)
184 CellMeasuredResults ::= SEQUENCE {
185   cellIdentity      INTEGER(0..268435455) OPTIONAL,
186   modeSpecificInfo
187     CHOICE {fdd
188               SEQUENCE {primaryCPICH-Info  PrimaryCPICH-Info,
189                         cpich-Ec-N0        CPICH-Ec-N0 OPTIONAL,
190                         cpich-RSCP         CPICH-RSCP OPTIONAL,
191                         pathloss           Pathloss OPTIONAL},
192             tdd
193               SEQUENCE {cellParametersID   CellParametersID,
194                         proposedTGSN       TGSN OPTIONAL,
195                         primaryCCPCH-RSCP  PrimaryCCPCH-RSCP OPTIONAL,
196                         pathloss           Pathloss OPTIONAL,
197                         timeslotISCP-List  TimeslotISCP-List OPTIONAL --NOTE: TimeSlotISCP measurement list cannot be interpreted without the knowledge of Cell Info as defined in [3GPP RRC]
200 CellParametersID ::= INTEGER(0..127)
202 TGSN ::= INTEGER(0..14)
204 PrimaryCCPCH-RSCP ::= INTEGER(0..127)
206 -- SPARE: TimeslotISCP, Max = 91
207 -- Values above Max are spare
208 TimeslotISCP ::= INTEGER(0..127)
210 TimeslotISCP-List ::= SEQUENCE (SIZE (1..maxTS)) OF TimeslotISCP
212 PrimaryCPICH-Info ::= SEQUENCE {primaryScramblingCode  INTEGER(0..511)}
214 -- SPARE: CPICH-Ec-No, Max = 49
215 -- Values above Max are spare
216 CPICH-Ec-N0 ::= INTEGER(0..63)
218 -- SPARE: CPICH- RSCP, data range from 0 to 91 and from 123 to 127.
219 -- Values from 92 to 122 are spare
220 -- the encoding of cpich-RSCP is (as per [3GPP RRC] V5.11.0)
222 -- cpich-RSCP = 123    CPICH RSCP <-120 dBm
223 -- cpich-RSCP = 124    -120 ? CPICH RSCP < -119 dBm
224 -- cpich-RSCP = 125    -119 ? CPICH RSCP < -118 dBm
225 -- cpich-RSCP = 126    -118 ? CPICH RSCP < -117 dBm
226 -- cpich-RSCP = 127    -117 ? CPICH RSCP < -116 dBm
227 -- cpich-RSCP = 0      -116 ? CPICH RSCP < -115 dBm
228 -- cpich-RSCP = 1      -115 ? CPICH RSCP < -114 dBm
229 -- ...       ...      ...
230 -- cpich-RSCP = 89     -27 ? CPICH RSCP < -26 dBm
231 -- cpich-RSCP = 90     -26 ? CPICH RSCP < -25 dBm
232 -- cpich-RSCP = 91     -25 ? CPICH RSCP       dBm
234 CPICH-RSCP ::= INTEGER(0..127)
236 -- SPARE: Pathloss, Max = 158
237 -- Values above Max are spare
238 Pathloss ::= INTEGER(46..173)
240 maxCellMeas INTEGER ::= 32
242 maxFreq INTEGER ::= 8
244 maxTS INTEGER ::= 14
246 StatusCode ::= ENUMERATED {
247   unspecified(0), systemFailure(1), unexpectedMessage(2), protocolError(3),
248   dataMissing(4), unexpectedDataValue(5), posMethodFailure(6),
249   posMethodMismatch(7), posProtocolMismatch(8), targetSETnotReachable(9),
250   versionNotSupported(10), resourceShortage(11), invalidSessionId(12),
251   nonProxyModeNotSupported(13), proxyModeNotSupported(14),
252   positioningNotPermitted(15), authNetFailure(16), authSuplinitFailure(17), consentDeniedByUser(100), consentGrantedByUser(101), ..., ver2-incompatibleProtectionLevel(18), ver2-serviceNotSupported(19), ver2-insufficientInterval(20), ver2-noSUPLCoverage(21), ver2-sessionStopped(102), ver2-appIdDenied(103)}
254 QoP ::= SEQUENCE {
255   horacc     INTEGER(0..127),
256   veracc     INTEGER(0..127) OPTIONAL, -- as defined in [3GPP GAD] "uncertainty altitude"
257   maxLocAge  INTEGER(0..65535) OPTIONAL,
258   delay      INTEGER(0..7) OPTIONAL, -- as defined in [3GPP RRLP]
259   ...,
260   ver2-responseTime     INTEGER (1..128) OPTIONAL}
262 Velocity ::= CHOICE { -- velocity definition as per [3GPP GAD]
263   horvel           Horvel,
264   horandvervel     Horandvervel,
265   horveluncert     Horveluncert,
266   horandveruncert  Horandveruncert,
267   ...}
269 Horvel ::= SEQUENCE {
270   bearing   BIT STRING(SIZE (9)),
271   horspeed  BIT STRING(SIZE (16)),
272   ...}
274 Horandvervel ::= SEQUENCE {
275   verdirect  BIT STRING(SIZE (1)),
276   bearing    BIT STRING(SIZE (9)),
277   horspeed   BIT STRING(SIZE (16)),
278   verspeed   BIT STRING(SIZE (8)),
279   ...}
281 Horveluncert ::= SEQUENCE {
282   bearing      BIT STRING(SIZE (9)),
283   horspeed     BIT STRING(SIZE (16)),
284   uncertspeed  BIT STRING(SIZE (8)),
285   ...}
287 Horandveruncert ::= SEQUENCE {
288   verdirect       BIT STRING(SIZE (1)),
289   bearing         BIT STRING(SIZE (9)),
290   horspeed        BIT STRING(SIZE (16)),
291   verspeed        BIT STRING(SIZE (8)),
292   horuncertspeed  BIT STRING(SIZE (8)),
293   veruncertspeed  BIT STRING(SIZE (8)),
294   ...}
296 PosMethod ::= ENUMERATED {
297 agpsSETassisted(0), agpsSETbased(1), agpsSETassistedpref(2), agpsSETbasedpref(3), autonomousGPS(4), aflt(5), ecid(6), eotd(7), otdoa(8), noPosition(9), ..., ver2-historicalDataRetrieval(10), ver2-agnssSETassisted(11), ver2-agnssSETbased(12), ver2-agnssSETassistedpref(13), ver2-agnssSETbasedpref(14), ver2-autonomousGNSS(15), ver2-sessioninfoquery(16), ver2-mbs(17)}
302 -- 11.6 Common elements (SUPL Version 2)
304 Ver2-ULP-Components DEFINITIONS AUTOMATIC TAGS ::=
305 BEGIN
307 EXPORTS Ver2-CellInfo-extension, MultipleLocationIds, SupportedNetworkInformation, CauseCode, UTRAN-GPSReferenceTimeAssistance, UTRAN-GPSReferenceTimeResult, SPCSETKey, SPCTID, SPCSETKeylifetime, UTRAN-GANSSReferenceTimeAssistance, UTRAN-GANSSReferenceTimeResult, GNSSPosTechnology, GANSSSignals, ThirdParty, ApplicationID, ReportingCap, Coordinate, CircularArea, EllipticalArea, PolygonArea, Ver2-HighAccuracyPosition;
309 IMPORTS
310         LocationId, PrimaryCPICH-Info, CellParametersID, FQDN, Velocity
311 FROM ULP-Components;
313 MultipleLocationIds ::= SEQUENCE SIZE (1..maxLidSize) OF LocationIdData
315 LocationIdData ::= SEQUENCE {
316 locationId      LocationId,
317 relativetimestamp       RelativeTime OPTIONAL, -- if relativetimestamp is present, then data represents historical measurement, if absent, data represents current measurements
318 servingFlag     BOOLEAN, -- if "true" measurements represent serving cell
319 ...}
321 RelativeTime ::= INTEGER (0..65535) -- relative time to "current" Location Id in multiples of 0.01sec
323 maxLidSize      INTEGER ::= 64
325 SupportedNetworkInformation ::= SEQUENCE {
326   wlan                          BOOLEAN,
327   supportedWLANInfo             SupportedWLANInfo OPTIONAL,
328   supportedWLANApsList          SupportedWLANApsList OPTIONAL,
329   gsm                           BOOLEAN,
330   wcdma                         BOOLEAN,
331   supportedWCDMAInfo    SupportedWCDMAInfo OPTIONAL,
332   cdma                          BOOLEAN,
333   hrdp                          BOOLEAN,
334   umb                           BOOLEAN,
335   lte                           BOOLEAN,
336   wimax                         BOOLEAN,
337   historic                      BOOLEAN,
338   nonServing                    BOOLEAN,
339   uTRANGPSReferenceTime         BOOLEAN,
340   uTRANGANSSReferenceTime       BOOLEAN,
341   ...,
342   nr                            BOOLEAN OPTIONAL}
344 SupportedWLANInfo ::= SEQUENCE {
345   apTP        BOOLEAN, -- AP transmit power
346   apAG        BOOLEAN, -- AP antenna gain
347   apSN        BOOLEAN, -- AP S/N received at SET
348   apDevType   BOOLEAN, -- Device type
349   apRSSI      BOOLEAN, -- AP signal strength at SET
350   apChanFreq  BOOLEAN, -- AP channel/frequency of Tx/Rx
351   apRTD       BOOLEAN, -- Round Trip Delay between SET and AP
352   setTP       BOOLEAN, -- SET transmit power
353   setAG       BOOLEAN, -- SET antenna gain
354   setSN       BOOLEAN, -- SET S/N received at AP
355   setRSSI     BOOLEAN, -- SET signal strength at AP
356   apRepLoc    BOOLEAN, -- AP Location as reported by AP (legacy encoding)
357   ...,
358   apRL        BOOLEAN OPTIONAL,  -- AP Location as reported by AP (as per IEEE802.11)
359   opClass     BOOLEAN OPTIONAL,  -- operating class as defined in IEEE 802.11
360   apSSID      BOOLEAN OPTIONAL,  -- SSID of the wireless network served by AP
361   apPHYType   BOOLEAN OPTIONAL,  -- AP PHY Type as defined in IEEE 802.11
362   setMACAddress BOOLEAN OPTIONAL   -- SET MAC Address as known to the WLAN AP
365 maxWLANApDataSize    INTEGER ::= 128
367 SupportedWLANApsList ::= SEQUENCE {
368  supportedWLANApDataList     SEQUENCE (SIZE (1..maxWLANApDataSize)) OF SupportedWLANApData,
369  supportedWLANapsChannel11a  SupportedWLANApsChannel11a  OPTIONAL,
370  supportedWLANapsChannel11bg SupportedWLANApsChannel11bg OPTIONAL,
371  ...
374 SupportedWLANApsChannel11a ::= SEQUENCE {
375  ch34   BOOLEAN,
376  ch36   BOOLEAN,
377  ch38   BOOLEAN,
378  ch40   BOOLEAN,
379  ch42   BOOLEAN,
380  ch44   BOOLEAN,
381  ch46   BOOLEAN,
382  ch48   BOOLEAN,
383  ch52   BOOLEAN,
384  ch56   BOOLEAN,
385  ch60   BOOLEAN,
386  ch64   BOOLEAN,
387  ch149  BOOLEAN,
388  ch153  BOOLEAN,
389  ch157  BOOLEAN,
390  ch161  BOOLEAN
393 SupportedWLANApsChannel11bg ::= SEQUENCE {
394  ch1  BOOLEAN,
395  ch2  BOOLEAN,
396  ch3  BOOLEAN,
397  ch4  BOOLEAN,
398  ch5  BOOLEAN,
399  ch6  BOOLEAN,
400  ch7  BOOLEAN,
401  ch8  BOOLEAN,
402  ch9  BOOLEAN,
403  ch10 BOOLEAN,
404  ch11 BOOLEAN,
405  ch12 BOOLEAN,
406  ch13 BOOLEAN,
407  ch14 BOOLEAN
410 SupportedWLANApData ::= SEQUENCE {
411  apMACAddress  BIT STRING (SIZE (48)),
412  apDevType  ENUMERATED {wlan802-11a(0), wlan802-11b(1), wlan802-11g(2), ...},
413  ...}
415 SupportedWCDMAInfo ::= SEQUENCE {
416   mrl    BOOLEAN, -- Measured Results List
417   ...}
419 Ver2-CellInfo-extension ::= CHOICE {
420   hrpdCell   HrpdCellInformation,
421   umbCell    UmbCellInformation,
422   lteCell    LteCellInformation,
423   wlanAP     WlanAPInformation,
424   wimaxBS    WimaxBSInformation,
425   ...,
426   nrCell     NRCellInformation}
428 HrpdCellInformation ::= SEQUENCE {
429   refSECTORID    BIT STRING(SIZE (128)) OPTIONAL, -- HRPD Sector Id
430   refBASELAT     INTEGER(0..4194303), -- Base Station Latitude
431   reBASELONG     INTEGER(0..8388607), -- Base Station Longitude
432   refWeekNumber  INTEGER(0..65535), -- GPS Week Number
433   refSeconds     INTEGER(0..4194303), -- GPS Seconds
434   ...}
436 UmbCellInformation ::= SEQUENCE {
437   refSECTORID           BIT STRING(SIZE (128)), -- UMB Sector Id
438   refMCC        INTEGER(0..999), -- Mobile Country Code
439   refMNC        INTEGER(0..999), -- Mobile Network Code
440   refBASELAT            INTEGER(0..4194303), -- Base Station Latitude
441   reBASELONG            INTEGER(0..8388607), -- Base Station Longitude
442   refWeekNumber         INTEGER(0..65535), -- GPS Week Number
443   refSeconds            INTEGER(0..4194303), -- GPS Seconds
444   ...}
446 -- LTE Cell info per 3GPP TS 36.331.
447 -- If not otherwise stated info is related to serving cell
449 LteCellInformation ::= SEQUENCE {
450   cellGlobalIdEUTRA             CellGlobalIdEUTRA,
451   physCellId            PhysCellId,
452   trackingAreaCode              TrackingAreaCode,
453   rsrpResult            RSRP-Range      OPTIONAL,
454   rsrqResult            RSRQ-Range      OPTIONAL,
455   ta      INTEGER(0..1282) OPTIONAL, -- Currently used Timing Advance value (N_TA/16 as per [3GPP 36.213])
456   measResultListEUTRA   MeasResultListEUTRA OPTIONAL, --Neighbour measurements
457   ...,
458   earfcn        INTEGER(0..65535) OPTIONAL, -- see Table 37
459   earfcn-ext INTEGER (65536..262143) OPTIONAL, -- see Table 37
460   rsrpResult-ext        RSRP-Range-Ext  OPTIONAL,
461   rsrqResult-ext        RSRQ-Range-Ext  OPTIONAL,
462   rs-sinrResult RS-SINR-Range           OPTIONAL,
463   servingInformation5G  ServingInformation5G    OPTIONAL
465 -- If rsrpResult-ext is included, rsrpResult shall be excluded or set to 0
466 -- If rsrqResult-ext is included and in the range 0 to 34, rsrqResult shall
467 --   be included and set equal to rsrqResult-ext
468 -- If rsrqResult-ext is included and outside the range 0 to 34, rsrqResult shall
469 --   be excluded or set to 0 when rsrqResult-ext is negative or to 34 when
470 --   rsrqResult-ext is positive
471 -- servingInformation5G shall be included for a serving cell connected to 5GCN
473 -- Measured results of neighbours cells per 3GPP TS 36.331
475 MeasResultListEUTRA ::= SEQUENCE (SIZE (1..maxCellReport)) OF MeasResultEUTRA
477 MeasResultEUTRA ::=     SEQUENCE {
478  physCellId PhysCellId,
479  cgi-Info SEQUENCE {
480         cellGlobalId    CellGlobalIdEUTRA,
481         trackingAreaCode TrackingAreaCode
482 } OPTIONAL,
483  measResult SEQUENCE {
484         rsrpResult      RSRP-Range      OPTIONAL,  -- Mapping to measured values
485         rsrqResult      RSRQ-Range      OPTIONAL,  -- in 3GPP TS 36.133
486         ...,
487         earfcn  INTEGER(0..65535) OPTIONAL, -- see Table 37
488 earfcn-ext      INTEGER (65536..262143) OPTIONAL, -- see Table 37
489   rsrpResult-ext        RSRP-Range-Ext  OPTIONAL,
490   rsrqResult-ext        RSRQ-Range-Ext  OPTIONAL,
491   rs-sinrResult RS-SINR-Range           OPTIONAL,
492   neighbourInformation5G        NeighbourInformation5G  OPTIONAL
495 -- If rsrpResult-ext is included, rsrpResult shall be excluded or set to 0
496 -- If rsrqResult-ext is included and in the range 0 to 34, rsrqResult shall
497 --   be included and set equal to rsrqResult-ext
498 -- If rsrqResult-ext is included and outside the range 0 to 34, rsrqResult shall
499 --   be excluded or set to 0 when rsrqResult-ext is negative or to 34 when
500 --   rsrqResult-ext is positive
501 -- neighbourInformation5G may only be included for a cell connected to 5GCN
503 PhysCellId ::=   INTEGER (0..503)
505 TrackingAreaCode ::=    BIT STRING (SIZE (16))
507 CellGlobalIdEUTRA ::= SEQUENCE {
508  plmn-Identity  PLMN-Identity,
509  cellIdentity   CellIdentity,
510  ...
513 PLMN-Identity ::= SEQUENCE {
514  mcc MCC OPTIONAL,
515  mnc MNC
518 CellIdentity ::= BIT STRING (SIZE (28))
520 MCC ::= SEQUENCE (SIZE (3)) OF MCC-MNC-Digit
522 MNC ::= SEQUENCE (SIZE (2..3)) OF MCC-MNC-Digit
524 MCC-MNC-Digit ::= INTEGER (0..9)
526 RSRP-Range ::= INTEGER(0..97)
527 RSRQ-Range ::= INTEGER(0..34)
528 RSRP-Range-Ext ::= INTEGER(-17..-1)
529 RSRQ-Range-Ext ::= INTEGER(-30..46)
530 RS-SINR-Range ::= INTEGER(0..127)
532 ServingInformation5G ::= SEQUENCE {
533   trackingAreaCode              TrackingAreaCodeNR,
534   ...
537 NeighbourInformation5G ::= SEQUENCE {
538   trackingAreaCode              TrackingAreaCodeNR      OPTIONAL,
539   ...
542 maxCellReport INTEGER ::= 8
544 WlanAPInformation ::= SEQUENCE { -- as per [IEEE 802.11]
545   apMACAddress       BIT STRING(SIZE (48)), -- AP MAC Address
546   apTransmitPower    INTEGER(-127..128) OPTIONAL, -- AP transmit power in dbm
547   apAntennaGain      INTEGER(-127..128) OPTIONAL, -- AP antenna gain in dBi
548   apSignaltoNoise    INTEGER(-127..128) OPTIONAL, -- AP S/N received at SET
549   apDeviceType       ENUMERATED {wlan802-11a(0), wlan802-11b(1), wlan802-11g(2), ..., wlan802-11n(3), wlan802-11ac(4), wlan802-11ad(5)} OPTIONAL,
550   apSignalStrength   INTEGER(-127..128) OPTIONAL, -- AP signal strength at SET
551   apChannelFrequency INTEGER(0..256) OPTIONAL, -- AP channel/frequency of Tx/Rx
552   apRoundTripDelay   RTD OPTIONAL, -- Round Trip Delay between SET and AP
553   setTransmitPower   INTEGER(-127..128) OPTIONAL, -- SET transmit power in dBm
554   setAntennaGain     INTEGER (-127..128) OPTIONAL, -- SET antenna gain in dBi
555   setSignaltoNoise   INTEGER (-127..128) OPTIONAL, -- SET S/N received at AP
556   setSignalStrength  INTEGER(-127..128) OPTIONAL, -- SET signal strength at AP
557   apReportedLocation ReportedLocation OPTIONAL, -- AP Location reported by AP (legacy encoding)
558   ...,
559   apRepLocation   RepLocation OPTIONAL, -- AP Location reported by AP
560   apSignalStrengthDelta INTEGER (0..1) OPTIONAL, -- see Table 41
561   apSignaltoNoiseDelta  INTEGER (0..1) OPTIONAL, -- see Table 41
562   setSignalStrengthDelta        INTEGER (0..1) OPTIONAL, -- see Table 41
563   setSignaltoNoiseDelta INTEGER (0..1) OPTIONAL, -- see Table 41
564   operatingClass                INTEGER (0..255) OPTIONAL,
565   apSSID                OCTET STRING (SIZE (1..32)) OPTIONAL,
566   apPHYType     ENUMERATED {unknown(0), any(1), fhss(2), dsss(3), irbaseband(4), ofdm(5), hrdsss(6), erp(7), ht(8), ihv(9), ...} OPTIONAL,
567   setMACAddress   BIT STRING(SIZE (48)) OPTIONAL -- MAC Address used by SET to connect to AP
570 RTD ::= SEQUENCE { -- as per [IEEE 802.11]
571   rTDValue     INTEGER(0..16777216), -- measured RTD value corresponding to
572 -- about 500km in units of 1/10 of nanoseconds
573   rTDUnits     RTDUnits, -- units of RTD
574   rTDAccuracy  INTEGER(0..255) OPTIONAL, -- RTD accuracy
575   ...}
577 RTDUnits ::= ENUMERATED {
578   microseconds(0), hundredsofnanoseconds(1), tensofnanoseconds(2), nanoseconds(3), tenthsofnanoseconds(4), ...}
580 ReportedLocation ::= SEQUENCE { -- as per [IEEE 802.11v]
581   locationEncodingDescriptor  LocationEncodingDescriptor,
582   locationData        LocationData, -- location data field
583   ...}
585 LocationEncodingDescriptor ::= ENUMERATED {
586   lci(0), asn1(1), ...}
588 LocationData ::= SEQUENCE {
589   locationAccuracy   INTEGER(0..4294967295) OPTIONAL,
590   locationValue      OCTET STRING (SIZE(1..128)),
591   ...}
593 RepLocation ::= CHOICE {
594   lciLocData            LciLocData, -- location data field as per [IEEE 802.11] and [RFC 3825]
595   ...   -- future formats may be added here
598 LciLocData ::= SEQUENCE {
599    locationDataLCI  LocationDataLCI  OPTIONAL,
600 ...}
602 LocationDataLCI ::= SEQUENCE {
603   latitudeResolution            BIT STRING (SIZE (6)),
604   latitude              BIT STRING (SIZE (34)),
605   longitudeResolution           BIT STRING (SIZE (6)),
606   longitude             BIT STRING (SIZE (34)),
607   altitudeType          BIT STRING (SIZE (4)),
608   altitudeResolution            BIT STRING (SIZE (6)),
609   altitude              BIT STRING (SIZE (30)),
610   datum                 BIT STRING (SIZE (8)),
611 ...}
613 WimaxBSInformation ::= SEQUENCE {
614   wimaxBsID     WimaxBsID,      -- WiMax serving base station ID
615   wimaxRTD      WimaxRTD        OPTIONAL, -- Round Trip Delay measurements
616   wimaxNMRList  WimaxNMRList    OPTIONAL, -- Network measurements
617   ...}
619 WimaxBsID ::= SEQUENCE {
620   bsID-MSB      BIT STRING (SIZE(24)) OPTIONAL,
621   bsID-LSB      BIT STRING (SIZE(24)),
622 ...}
623 -- if only LSB is present, MSB is assumed to be identical to the current serving BS or clamped on network value
625 WimaxRTD ::= SEQUENCE {
626   rtd   INTEGER (0..65535), -- Round trip delay of serving BS in units of 10 ns
627   rTDstd        INTEGER (0..1023) OPTIONAL, -- Standard deviation of round trip delay in units of 10 ns
628 ...}
630 WimaxNMRList ::= SEQUENCE  (SIZE (1..maxWimaxBSMeas)) OF WimaxNMR
632 WimaxNMR ::= SEQUENCE {
633   wimaxBsID   WimaxBsID,        -- WiMax BS ID for the measurement
634   relDelay    INTEGER (-32768..32767) OPTIONAL, -- Relative delay for this neighbouring BSs to the serving cell in units of 10 ns
635   relDelaystd  INTEGER (0..1023) OPTIONAL, -- Standard deviation of Relative delay in units of 10 ns
636   rssi        INTEGER (0..255) OPTIONAL, -- RSSI in 0.25 dBm steps, starting from -103.75 dBm
637   rSSIstd     INTEGER (0..63) OPTIONAL, -- Standard deviation of RSSI in dB
638   bSTxPower   INTEGER (0..255) OPTIONAL, -- BS transmit power in 0.25 dBm steps, starting from -103.75 dBm
639   cinr        INTEGER (0..255) OPTIONAL, -- in dB
640   cINRstd     INTEGER (0..63) OPTIONAL, -- Standard deviation of CINR in dB
641   bSLocation  ReportedLocation OPTIONAL, -- Reported location of the BS
642 ...}
644 maxWimaxBSMeas INTEGER ::= 32
646 NRCellInformation ::= SEQUENCE {
647   servingCellInformation        ServingCellInformationNR, --Serving cell information
648   measuredResultsListNR   MeasResultListNR      OPTIONAL, --Neighbour measurements
649   ...
652 -- Information for serving cells per 3GPP TS 38.331
654 ServingCellInformationNR ::= SEQUENCE (SIZE (1..maxNRServingCell)) OF ServCellNR
655 -- The first listed serving cell shall be the primary cell
657 ServCellNR ::= SEQUENCE {
658   physCellId                    PhysCellIdNR,
659   arfcn-NR                      ARFCN-NR,
660   cellGlobalId          CellGlobalIdNR,
661   trackingAreaCode              TrackingAreaCodeNR,
662   ssb-Measurements              NR-Measurements OPTIONAL,
663   csi-rs-Measurements           NR-Measurements OPTIONAL,
664   ta                    INTEGER(0..3846) OPTIONAL, --Timing Advance value
665   ...
668 -- Measured results of neighbours cells per 3GPP TS 38.331
670 MeasResultListNR ::= SEQUENCE (SIZE (1..maxCellReportNR)) OF MeasResultNR
672 MeasResultNR ::= SEQUENCE {
673   physCellId            PhysCellIdNR,
674   arfcn-NR              ARFCN-NR,
675   cellGlobalId          CellGlobalIdNR  OPTIONAL,
676   trackingAreaCode              TrackingAreaCodeNR      OPTIONAL,
677   ssb-Measurements              NR-Measurements OPTIONAL,
678   csi-rs-Measurements           NR-Measurements OPTIONAL,
679   ...
682 PhysCellIdNR ::= INTEGER (0..1007)
684 ARFCN-NR ::= INTEGER (0.. 3279165)
686 TrackingAreaCodeNR ::= BIT STRING (SIZE (24))
688 CellGlobalIdNR ::= SEQUENCE {
689  plmn-Identity  PLMN-Identity,
690  cellIdentityNR CellIdentityNR,
691  ...
694 CellIdentityNR ::= BIT STRING (SIZE (36))
696 NR-Measurements ::=     SEQUENCE {
697   rsrp-Range    INTEGER (0..127)        OPTIONAL,
698   rsrq-Range    INTEGER (0..127)        OPTIONAL,
699   sinr-Range    INTEGER (0..127)        OPTIONAL,
700   ...
703 maxNRServingCell INTEGER ::= 32
704 maxCellReportNR INTEGER ::= 32
705 UTRAN-GPSReferenceTimeAssistance ::= SEQUENCE {
706 utran-GPSReferenceTime  UTRAN-GPSReferenceTime,
707 gpsReferenceTimeUncertainty     INTEGER (0..127) OPTIONAL,
708 utranGPSDriftRate               UTRANGPSDriftRate OPTIONAL}
710 UTRAN-GPSReferenceTime ::= SEQUENCE {
711 -- For utran-GPSTimingOfCell values above 2322431999999 are not used in this version of the specification. Actual value utran-GPSTimingOfCell = (ms-part * 4294967296) + ls-part used on the downlink i.e. sent from the SLP to the SET
712      utran-GPSTimingOfCell      SEQUENCE {
713         ms-part         INTEGER (0..1023),
714         ls-part INTEGER (0..4294967295)},
715             modeSpecificInfo    CHOICE {
716                  fdd    SEQUENCE {
717                    referenceIdentity    PrimaryCPICH-Info},
718                  tdd    SEQUENCE {
719                    referenceIdentity    CellParametersID}} OPTIONAL,
720             sfn INTEGER (0..4095)}
722 UTRANGPSDriftRate ::= ENUMERATED {
723       utran-GPSDrift0, utran-GPSDrift1, utran-GPSDrift2,
724       utran-GPSDrift5, utran-GPSDrift10, utran-GPSDrift15,
725       utran-GPSDrift25, utran-GPSDrift50, utran-GPSDrift-1,
726       utran-GPSDrift-2, utran-GPSDrift-5, utran-GPSDrift-10,
727       utran-GPSDrift-15, utran-GPSDrift-25, utran-GPSDrift-50}
729 UTRAN-GPSReferenceTimeResult ::= SEQUENCE {
730 -- For ue-GPSTimingOfCell values above 37158911999999 are not used in this version of the specification. Actual value utran-GPSTimingOfCell = (ms-part * 4294967296) + ls-part used on the uplink i.e. reported by the SET to the SLP
731      set-GPSTimingOfCell        SEQUENCE {
732         ms-part         INTEGER (0.. 16383),
733         ls-part INTEGER (0..4294967295)},
734             modeSpecificInfo    CHOICE {
735                  fdd    SEQUENCE {
736                    referenceIdentity    PrimaryCPICH-Info},
737                  tdd    SEQUENCE {
738                    referenceIdentity    CellParametersID}} OPTIONAL,
739             sfn INTEGER (0..4095),
740      gpsReferenceTimeUncertainty        INTEGER (0..127) OPTIONAL,
741      ...}
743 UTRAN-GANSSReferenceTimeAssistance ::= SEQUENCE {
744 ganssDay INTEGER (0..8191) OPTIONAL,
745 ganssTimeID     INTEGER (0..15),
746 utran-GANSSReferenceTime        UTRAN-GANSSReferenceTime,
747 utranGANSSDriftRate     UTRANGANSSDriftRate     OPTIONAL}
749 UTRAN-GANSSReferenceTime ::= SEQUENCE {
751      ganssTOD INTEGER (0..86399),
752      utran-GANSSTimingOfCell    INTEGER (0..3999999)OPTIONAL,
753             modeSpecificInfo    CHOICE {
754                  fdd    SEQUENCE {
755                    referenceIdentity    PrimaryCPICH-Info},
756                  tdd    SEQUENCE {
757                    referenceIdentity    CellParametersID}} OPTIONAL,
758             sfn INTEGER (0..4095),
759             ganss-TODUncertainty INTEGER (0..127) OPTIONAL,
760 ...}
762 UTRANGANSSDriftRate ::= ENUMERATED {
763       utran-GANSSDrift0, utran-GANSSDrift1, utran-GANSSDrift2,
764       utran-GANSSDrift5, utran-GANSSDrift10, utran-GANSSDrift15,
765       utran-GANSSDrift25, utran-GANSSDrift50, utran-GANSSDrift-1,
766       utran-GANSSDrift-2, utran-GANSSDrift-5, utran-GANSSDrift-10,
767       utran-GANSSDrift-15, utran-GANSSDrift-25, utran-GANSSDrift-50}
769 UTRAN-GANSSReferenceTimeResult ::= SEQUENCE {
770      ganssTimeID        INTEGER (0..15),
771      set-GANSSReferenceTime     SET-GANSSReferenceTime,
772             ...}
774 SET-GANSSReferenceTime ::= SEQUENCE {
775 -- Actual value [ns] = (ms-Part * 4294967296 + ls-Part) * 250
776 -- Actual values [ns] > 86399999999750 are reserved and are considered a
777 -- protocol error
778             set-GANSSTimingOfCell       SEQUENCE {
779                  ms-part        INTEGER (0..80),
780                  ls-part        INTEGER (0..4294967295)} OPTIONAL,
781             modeSpecificInfo    CHOICE {
782                  fdd    SEQUENCE {
783                    referenceIdentity    PrimaryCPICH-Info},
784                  tdd    SEQUENCE {
785                    referenceIdentity    CellParametersID}} OPTIONAL,
786             sfn INTEGER (0..4095),
787             ganss-TODUncertainty INTEGER (0..127) OPTIONAL,
788 ...}
790 GNSSPosTechnology ::= SEQUENCE {
791   gps           BOOLEAN,
792   galileo       BOOLEAN,
793   sbas          BOOLEAN,
794   modernized-gps        BOOLEAN,
795   qzss          BOOLEAN,
796   glonass       BOOLEAN,
797 ...,
798   bds           BOOLEAN OPTIONAL,
799   rtk-osr       BOOLEAN OPTIONAL}
801 -- indicates MS support for particular GANSS signals and frequencies coding according to parameter definition in section 10.9
803 GANSSSignals ::= BIT STRING {
804   signal1 (0),
805   signal2 (1),
806   signal3 (2),
807   signal4 (3),
808   signal5 (4),
809   signal6 (5),
810   signal7 (6),
811   signal8 (7)} (SIZE (1..8))
813 SPCSETKey ::= BIT STRING(SIZE (128))
815 SPCTID ::= SEQUENCE {
816   rand          BIT STRING(SIZE (128)),
817   slpFQDN       FQDN,
818         ...}
820 SPCSETKeylifetime ::= INTEGER (1..24) -- units in hours
822 CauseCode ::= ENUMERATED {
823 servingNetWorkNotInAreaIdList(0), sETCapabilitiesChanged(1), noSUPLCoverage(2), ...}
825 ThirdParty ::= SEQUENCE (SIZE (1..64)) OF ThirdPartyID
827 ThirdPartyID ::= CHOICE {
828         logicalName     IA5String(SIZE (1..1000)),
829         msisdn  OCTET STRING(SIZE (8)),
830         emailaddr       IA5String(SIZE (1..1000)),
831 --      sip-uri VisibleString(FROM ("a".."z" | "A".."Z" | "0".."9" | ":./-_~%#@?")) (SIZE (1..255)),
832 --      ims-public-identity     VisibleString(FROM ("a".."z" | "A".."Z" | "0".."9" | ":./-_~%#@?")) (SIZE (1..255)),
833 -- # asn2wrs does not handle '%' in the restricted string
834         sip-uri VisibleString(FROM ("a".."z" | "A".."Z" | "0".."9" | ":./-_~#@?")) (SIZE (1..255)),
835         ims-public-identity     VisibleString(FROM ("a".."z" | "A".."Z" | "0".."9" | ":./-_~#@?")) (SIZE (1..255)),
836         min     BIT STRING(SIZE (34)), -- coded according to TIA-553
837         mdn     OCTET STRING(SIZE (8)),
838 --      uri     VisibleString(FROM ("a".."z" | "A".."Z" | "0".."9" | "./-_~%#")) (SIZE (1..255)),
839         uri     VisibleString(FROM ("a".."z" | "A".."Z" | "0".."9" | "./-_~#")) (SIZE (1..255)),
840 ...}
842 ApplicationID ::= SEQUENCE {
843         appProvider IA5String(SIZE (1..24)), -- The application provider
844         appName IA5String(SIZE (1..32)), -- The application name
845         appVersion IA5String(SIZE (1..8)) OPTIONAL,  -- The application version
846 ...}
848 ReportingCap ::= SEQUENCE {
849   minInt        INTEGER (1..3600), -- units in seconds
850   maxInt        INTEGER (1..1440) OPTIONAL, -- units in minutes
851 repMode RepMode,
852 batchRepCap     BatchRepCap OPTIONAL, -- only used for batch and quasi real time reporting
853 ...}
855 RepMode ::= SEQUENCE {
856 realtime        BOOLEAN,
857 quasirealtime   BOOLEAN,
858 batch           BOOLEAN,
859 ...}
861 BatchRepCap ::= SEQUENCE {
862 report-position BOOLEAN, -- set to "true" if reporting of position is supported
863 report-measurements     BOOLEAN, -- set to "true" if reporting of measurements is supported
864 max-num-positions       INTEGER (1..1024) OPTIONAL,
865 max-num-measurements INTEGER (1..1024) OPTIONAL,
866 ...}
868 Coordinate::= SEQUENCE {
869  latitudeSign   ENUMERATED {north(0), south(1)},
870  latitude       INTEGER(0..8388607),
871  longitude      INTEGER(-8388608..8388607)} -- Coding as in [3GPP GAD]
873 CircularArea ::= SEQUENCE {
874  coordinate     Coordinate,
875  radius         INTEGER(1..1000000), -- radius in meters
876  radius-min     INTEGER(1..1000000) OPTIONAL, -- hysteresis minimum radius
877  radius-max     INTEGER(1..1500000) OPTIONAL} -- hysteresis maximum radius
879 EllipticalArea ::= SEQUENCE {
880  coordinate     Coordinate,
881  semiMajor      INTEGER(1..1000000), -- units in meters
882  semiMajor-min  INTEGER(1..1000000) OPTIONAL, -- hysteresis minimum semiMajor
883  semiMajor-max  INTEGER(1..1500000) OPTIONAL, -- hysteresis maximum semiMajor
884  semiMinor      INTEGER(1..1000000), -- units in meters
885  semiMinor-min  INTEGER(1..1000000) OPTIONAL, -- hysteresis minimum semiMinor
886  semiMinor-max  INTEGER(1..1500000) OPTIONAL, -- hysteresis maximum semiMinor
887  angle          INTEGER(0.. 179)} -- units in degrees. The angle is defined as the angle between the semi-major axis and North, increasing in a clockwise direction. An angle of 0 represents an ellipse with the semi-major axis pointing North/South while an angle of 90 represents an ellipse with the semi-major axis pointing East/West.
889 PolygonArea ::= SEQUENCE {
890  polygonDescription     PolygonDescription,
891  polygonHysteresis      INTEGER(1..100000) OPTIONAL} --units in meters
893 PolygonDescription ::= SEQUENCE (SIZE (3..15)) OF Coordinate
895 Ver2-HighAccuracyPosition ::= SEQUENCE {
896   timestamp         UTCTime, -- shall include seconds and shall use UTC time.
897   highAccuracyPositionEstimate  HighAccuracyPositionEstimate,
898   velocity          Velocity OPTIONAL,
899 ...}
901 HighAccuracyPositionEstimate ::= SEQUENCE {
902   degreesLatitude               INTEGER(-2147483648..2147483647),
903   degreesLongitude              INTEGER(-2147483648..2147483647),
904   uncertaintySemiMajor  INTEGER (0..255),
905   uncertaintySemiMinor  INTEGER (0..255),
906   orientationMajorAxis  INTEGER (0..179),
907   horizontalConfidence  INTEGER (0..100),
908   highAccuracyAltitudeInfo      HighAccuracyAltitudeInfo OPTIONAL,
909 ...} -- Coding as in [3GPP GAD]
911 HighAccuracyAltitudeInfo ::= SEQUENCE {
912   altitude              INTEGER(64000..1280000),
913   uncertaintyAltitude           INTEGER (0..255),
914   verticalConfidence            INTEGER (0..100),
915 ...} -- Coding as in [3GPP GAD]