1 /* Do not modify this file. Changes will be overwritten. */
2 /* Generated automatically by the ASN.1 to Wireshark dissector compiler */
4 /* asn2wrs.py -q -L -p ulp -c ./ulp.cnf -s ./packet-ulp-template -D . -O ../.. ULP.asn SUPL.asn ULP-Components.asn */
7 * Routines for OMA UserPlane Location Protocol packet dissection
8 * Copyright 2006, Anders Broman <anders.broman@ericsson.com>
9 * Copyright 2014-2019, Pascal Quantin <pascal@wireshark.org>
10 * Copyright 2020, Stig Bjorlykke <stig@bjorlykke.org>
12 * Wireshark - Network traffic analyzer
13 * By Gerald Combs <gerald@wireshark.org>
14 * Copyright 1998 Gerald Combs
16 * SPDX-License-Identifier: GPL-2.0-or-later
18 * ref OMA-TS-ULP-V2_0_5-20191028-A
19 * http://www.openmobilealliance.org
26 #include <epan/packet.h>
27 #include <epan/prefs.h>
28 #include <epan/asn1.h>
30 #include <epan/unit_strings.h>
31 #include <wsutil/array.h>
33 #include "packet-per.h"
34 #include "packet-tcp.h"
35 #include "packet-e164.h"
36 #include "packet-e212.h"
38 #define PNAME "OMA UserPlane Location Protocol"
42 void proto_register_ulp(void);
44 static dissector_handle_t rrlp_handle
;
45 static dissector_handle_t lpp_handle
;
47 /* IANA Registered Ports
48 * oma-ulp 7275/tcp OMA UserPlane Location
49 * oma-ulp 7275/udp OMA UserPlane Location
53 /* Initialize the protocol and registered fields */
57 #define ULP_HEADER_SIZE 2
59 static bool ulp_desegment
= true;
61 static int hf_ulp_ULP_PDU_PDU
; /* ULP_PDU */
62 static int hf_ulp_length
; /* INTEGER_0_65535 */
63 static int hf_ulp_version
; /* Version */
64 static int hf_ulp_sessionID
; /* SessionID */
65 static int hf_ulp_message
; /* UlpMessage */
66 static int hf_ulp_msSUPLINIT
; /* SUPLINIT */
67 static int hf_ulp_msSUPLSTART
; /* SUPLSTART */
68 static int hf_ulp_msSUPLRESPONSE
; /* SUPLRESPONSE */
69 static int hf_ulp_msSUPLPOSINIT
; /* SUPLPOSINIT */
70 static int hf_ulp_msSUPLPOS
; /* SUPLPOS */
71 static int hf_ulp_msSUPLEND
; /* SUPLEND */
72 static int hf_ulp_msSUPLAUTHREQ
; /* SUPLAUTHREQ */
73 static int hf_ulp_msSUPLAUTHRESP
; /* SUPLAUTHRESP */
74 static int hf_ulp_msSUPLTRIGGEREDSTART
; /* Ver2_SUPLTRIGGEREDSTART */
75 static int hf_ulp_msSUPLTRIGGEREDRESPONSE
; /* Ver2_SUPLTRIGGEREDRESPONSE */
76 static int hf_ulp_msSUPLTRIGGEREDSTOP
; /* Ver2_SUPLTRIGGEREDSTOP */
77 static int hf_ulp_msSUPLNOTIFY
; /* Ver2_SUPLNOTIFY */
78 static int hf_ulp_msSUPLNOTIFYRESPONSE
; /* Ver2_SUPLNOTIFYRESPONSE */
79 static int hf_ulp_msSUPLSETINIT
; /* Ver2_SUPLSETINIT */
80 static int hf_ulp_msSUPLREPORT
; /* Ver2_SUPLREPORT */
81 static int hf_ulp_posMethod
; /* PosMethod */
82 static int hf_ulp_notification
; /* Notification */
83 static int hf_ulp_sLPAddress
; /* SLPAddress */
84 static int hf_ulp_qoP
; /* QoP */
85 static int hf_ulp_sLPMode
; /* SLPMode */
86 static int hf_ulp_mac
; /* MAC */
87 static int hf_ulp_keyIdentity
; /* KeyIdentity */
88 static int hf_ulp_ver2_SUPL_INIT_extension
; /* Ver2_SUPL_INIT_extension */
89 static int hf_ulp_notificationType
; /* NotificationType */
90 static int hf_ulp_encodingType
; /* EncodingType */
91 static int hf_ulp_requestorId
; /* T_requestorId */
92 static int hf_ulp_requestorIdType
; /* FormatIndicator */
93 static int hf_ulp_clientName
; /* T_clientName */
94 static int hf_ulp_clientNameType
; /* FormatIndicator */
95 static int hf_ulp_ver2_Notification_extension
; /* Ver2_Notification_extension */
96 static int hf_ulp_sETCapabilities
; /* SETCapabilities */
97 static int hf_ulp_locationId
; /* LocationId */
98 static int hf_ulp_ver2_SUPL_START_extension
; /* Ver2_SUPL_START_extension */
99 static int hf_ulp_posTechnology
; /* PosTechnology */
100 static int hf_ulp_prefMethod
; /* PrefMethod */
101 static int hf_ulp_posProtocol
; /* PosProtocol */
102 static int hf_ulp_ver2_SETCapabilities_extension
; /* Ver2_SETCapabilities_extension */
103 static int hf_ulp_agpsSETassisted
; /* BOOLEAN */
104 static int hf_ulp_agpsSETBased
; /* BOOLEAN */
105 static int hf_ulp_autonomousGPS
; /* BOOLEAN */
106 static int hf_ulp_aflt
; /* BOOLEAN */
107 static int hf_ulp_ecid
; /* BOOLEAN */
108 static int hf_ulp_eotd
; /* BOOLEAN */
109 static int hf_ulp_otdoa
; /* BOOLEAN */
110 static int hf_ulp_ver2_PosTechnology_extension
; /* Ver2_PosTechnology_extension */
111 static int hf_ulp_tia801
; /* BOOLEAN */
112 static int hf_ulp_rrlp
; /* BOOLEAN */
113 static int hf_ulp_rrc
; /* BOOLEAN */
114 static int hf_ulp_ver2_PosProtocol_extension
; /* Ver2_PosProtocol_extension */
115 static int hf_ulp_sETAuthKey
; /* SETAuthKey */
116 static int hf_ulp_keyIdentity4
; /* KeyIdentity4 */
117 static int hf_ulp_ver2_SUPL_RESPONSE_extension
; /* Ver2_SUPL_RESPONSE_extension */
118 static int hf_ulp_shortKey
; /* BIT_STRING_SIZE_128 */
119 static int hf_ulp_longKey
; /* BIT_STRING_SIZE_256 */
120 static int hf_ulp_requestedAssistData
; /* RequestedAssistData */
121 static int hf_ulp_position
; /* Position */
122 static int hf_ulp_suplpos
; /* SUPLPOS */
123 static int hf_ulp_ver
; /* Ver */
124 static int hf_ulp_ver2_SUPL_POS_INIT_extension
; /* Ver2_SUPL_POS_INIT_extension */
125 static int hf_ulp_almanacRequested
; /* BOOLEAN */
126 static int hf_ulp_utcModelRequested
; /* BOOLEAN */
127 static int hf_ulp_ionosphericModelRequested
; /* BOOLEAN */
128 static int hf_ulp_dgpsCorrectionsRequested
; /* BOOLEAN */
129 static int hf_ulp_referenceLocationRequested
; /* BOOLEAN */
130 static int hf_ulp_referenceTimeRequested
; /* BOOLEAN */
131 static int hf_ulp_acquisitionAssistanceRequested
; /* BOOLEAN */
132 static int hf_ulp_realTimeIntegrityRequested
; /* BOOLEAN */
133 static int hf_ulp_navigationModelRequested
; /* BOOLEAN */
134 static int hf_ulp_navigationModelData
; /* NavigationModel */
135 static int hf_ulp_ver2_RequestedAssistData_extension
; /* Ver2_RequestedAssistData_extension */
136 static int hf_ulp_gpsWeek
; /* INTEGER_0_1023 */
137 static int hf_ulp_gpsToe
; /* INTEGER_0_167 */
138 static int hf_ulp_nsat
; /* INTEGER_0_31 */
139 static int hf_ulp_toeLimit
; /* INTEGER_0_10 */
140 static int hf_ulp_satInfo
; /* SatelliteInfo */
141 static int hf_ulp_SatelliteInfo_item
; /* SatelliteInfoElement */
142 static int hf_ulp_satId
; /* INTEGER_0_63 */
143 static int hf_ulp_iode
; /* INTEGER_0_255 */
144 static int hf_ulp_posPayLoad
; /* PosPayLoad */
145 static int hf_ulp_velocity
; /* Velocity */
146 static int hf_ulp_ver2_SUPL_POS_extension
; /* Ver2_SUPL_POS_extension */
147 static int hf_ulp_tia801payload
; /* OCTET_STRING_SIZE_1_8192 */
148 static int hf_ulp_rrcPayload
; /* OCTET_STRING_SIZE_1_8192 */
149 static int hf_ulp_rrlpPayload
; /* T_rrlpPayload */
150 static int hf_ulp_ver2_PosPayLoad_extension
; /* Ver2_PosPayLoad_extension */
151 static int hf_ulp_statusCode
; /* StatusCode */
152 static int hf_ulp_ver2_SUPL_END_extension
; /* Ver2_SUPL_END_extension */
153 static int hf_ulp_sPCSETKey
; /* SPCSETKey */
154 static int hf_ulp_spctid
; /* SPCTID */
155 static int hf_ulp_sPCSETKeylifetime
; /* SPCSETKeylifetime */
156 static int hf_ulp_notificationResponse
; /* NotificationResponse */
157 static int hf_ulp_targetSETID
; /* SETId */
158 static int hf_ulp_applicationID
; /* ApplicationID */
159 static int hf_ulp_multipleLocationIds
; /* MultipleLocationIds */
160 static int hf_ulp_thirdParty
; /* ThirdParty */
161 static int hf_ulp_triggerType
; /* TriggerType */
162 static int hf_ulp_triggerParams
; /* TriggerParams */
163 static int hf_ulp_reportingCap
; /* ReportingCap */
164 static int hf_ulp_causeCode
; /* CauseCode */
165 static int hf_ulp_periodicParams
; /* PeriodicParams */
166 static int hf_ulp_areaEventParams
; /* AreaEventParams */
167 static int hf_ulp_numberOfFixes
; /* INTEGER_1_8639999 */
168 static int hf_ulp_intervalBetweenFixes
; /* INTEGER_1_8639999 */
169 static int hf_ulp_startTime
; /* INTEGER_0_2678400 */
170 static int hf_ulp_areaEventType
; /* AreaEventType */
171 static int hf_ulp_locationEstimate
; /* BOOLEAN */
172 static int hf_ulp_repeatedReportingParams
; /* RepeatedReportingParams */
173 static int hf_ulp_stopTime
; /* INTEGER_0_11318399 */
174 static int hf_ulp_geographicTargetAreaList
; /* GeographicTargetAreaList */
175 static int hf_ulp_areaIdLists
; /* SEQUENCE_SIZE_1_maxAreaIdList_OF_AreaIdList */
176 static int hf_ulp_areaIdLists_item
; /* AreaIdList */
177 static int hf_ulp_minimumIntervalTime
; /* INTEGER_1_604800 */
178 static int hf_ulp_maximumNumberOfReports
; /* INTEGER_1_1024 */
179 static int hf_ulp_GeographicTargetAreaList_item
; /* GeographicTargetArea */
180 static int hf_ulp_circularArea
; /* CircularArea */
181 static int hf_ulp_ellipticalArea
; /* EllipticalArea */
182 static int hf_ulp_polygonArea
; /* PolygonArea */
183 static int hf_ulp_areaIdSet
; /* AreaIdSet */
184 static int hf_ulp_areaIdSetType
; /* AreaIdSetType */
185 static int hf_ulp_geoAreaMappingList
; /* GeoAreaMappingList */
186 static int hf_ulp_AreaIdSet_item
; /* AreaId */
187 static int hf_ulp_gSMAreaId
; /* GSMAreaId */
188 static int hf_ulp_wCDMAAreaId
; /* WCDMAAreaId */
189 static int hf_ulp_cDMAAreaId
; /* CDMAAreaId */
190 static int hf_ulp_hRPDAreaId
; /* HRPDAreaId */
191 static int hf_ulp_uMBAreaId
; /* UMBAreaId */
192 static int hf_ulp_lTEAreaId
; /* LTEAreaId */
193 static int hf_ulp_wLANAreaId
; /* WLANAreaId */
194 static int hf_ulp_wiMAXAreaId
; /* WimaxAreaId */
195 static int hf_ulp_nRAreaId
; /* NRAreaId */
196 static int hf_ulp_refMCC
; /* INTEGER_0_999 */
197 static int hf_ulp_refMNC
; /* INTEGER_0_999 */
198 static int hf_ulp_refLAC
; /* INTEGER_0_65535 */
199 static int hf_ulp_refCI
; /* INTEGER_0_65535 */
200 static int hf_ulp_refUC
; /* INTEGER_0_268435455 */
201 static int hf_ulp_refSID
; /* INTEGER_0_65535 */
202 static int hf_ulp_refNID
; /* INTEGER_0_32767 */
203 static int hf_ulp_refBASEID
; /* INTEGER_0_65535 */
204 static int hf_ulp_refSECTORID
; /* BIT_STRING_SIZE_128 */
205 static int hf_ulp_refCI_01
; /* BIT_STRING_SIZE_29 */
206 static int hf_ulp_apMACAddress
; /* T_apMACAddress */
207 static int hf_ulp_bsID_MSB
; /* BIT_STRING_SIZE_24 */
208 static int hf_ulp_bsID_LSB
; /* BIT_STRING_SIZE_24 */
209 static int hf_ulp_refCI_02
; /* BIT_STRING_SIZE_36 */
210 static int hf_ulp_GeoAreaMappingList_item
; /* GeoAreaIndex */
211 static int hf_ulp_supportedNetworkInformation
; /* SupportedNetworkInformation */
212 static int hf_ulp_reportingMode
; /* ReportingMode */
213 static int hf_ulp_gnssPosTechnology
; /* GNSSPosTechnology */
214 static int hf_ulp_repMode
; /* RepModee */
215 static int hf_ulp_batchRepConditions
; /* BatchRepConditions */
216 static int hf_ulp_batchRepType
; /* BatchRepType */
217 static int hf_ulp_num_interval
; /* INTEGER_1_1024 */
218 static int hf_ulp_num_minutes
; /* INTEGER_1_2048 */
219 static int hf_ulp_endofsession
; /* NULL */
220 static int hf_ulp_reportPosition
; /* BOOLEAN */
221 static int hf_ulp_reportMeasurements
; /* BOOLEAN */
222 static int hf_ulp_intermediateReports
; /* BOOLEAN */
223 static int hf_ulp_discardOldest
; /* BOOLEAN */
224 static int hf_ulp_sessionList
; /* SessionList */
225 static int hf_ulp_reportDataList
; /* ReportDataList */
226 static int hf_ulp_moreComponents
; /* NULL */
227 static int hf_ulp_SessionList_item
; /* SessionInformation */
228 static int hf_ulp_ReportDataList_item
; /* ReportData */
229 static int hf_ulp_positionData
; /* PositionData */
230 static int hf_ulp_resultCode
; /* ResultCode */
231 static int hf_ulp_timestamp
; /* TimeStamp */
232 static int hf_ulp_ganssSignalsInfo
; /* GANSSsignalsInfo */
233 static int hf_ulp_GANSSsignalsInfo_item
; /* GANSSSignalsDescription */
234 static int hf_ulp_ganssId
; /* INTEGER_0_15 */
235 static int hf_ulp_gANSSSignals
; /* GANSSSignals */
236 static int hf_ulp_absoluteTime
; /* UTCTime */
237 static int hf_ulp_relativeTime
; /* INTEGER_0_31536000 */
238 static int hf_ulp_notificationMode
; /* NotificationMode */
239 static int hf_ulp_e_SLPAddress
; /* SLPAddress */
240 static int hf_ulp_historicReporting
; /* HistoricReporting */
241 static int hf_ulp_protectionLevel
; /* ProtectionLevel */
242 static int hf_ulp_minimumMajorVersion
; /* INTEGER_0_255 */
243 static int hf_ulp_allowedReportingType
; /* AllowedReportingType */
244 static int hf_ulp_reportingCriteria
; /* ReportingCriteria */
245 static int hf_ulp_timeWindow
; /* TimeWindow */
246 static int hf_ulp_maxNumberofReports
; /* INTEGER_1_65536 */
247 static int hf_ulp_minTimeInterval
; /* INTEGER_1_86400 */
248 static int hf_ulp_startTime_01
; /* INTEGER_M525600_M1 */
249 static int hf_ulp_stopTime_01
; /* INTEGER_M525599_0 */
250 static int hf_ulp_protlevel
; /* ProtLevel */
251 static int hf_ulp_basicProtectionParams
; /* BasicProtectionParams */
252 static int hf_ulp_keyIdentifier
; /* OCTET_STRING_SIZE_8 */
253 static int hf_ulp_basicReplayCounter
; /* INTEGER_0_65535 */
254 static int hf_ulp_basicMAC
; /* BIT_STRING_SIZE_32 */
255 static int hf_ulp_initialApproximateposition
; /* Position */
256 static int hf_ulp_utran_GPSReferenceTimeResult
; /* UTRAN_GPSReferenceTimeResult */
257 static int hf_ulp_utran_GANSSReferenceTimeResult
; /* UTRAN_GANSSReferenceTimeResult */
258 static int hf_ulp_utran_GPSReferenceTimeAssistance
; /* UTRAN_GPSReferenceTimeAssistance */
259 static int hf_ulp_utran_GANSSReferenceTimeAssistance
; /* UTRAN_GANSSReferenceTimeAssistance */
260 static int hf_ulp_ver2_HighAccuracyPosition
; /* Ver2_HighAccuracyPosition */
261 static int hf_ulp_emergencyCallLocation
; /* NULL */
262 static int hf_ulp_serviceCapabilities
; /* ServiceCapabilities */
263 static int hf_ulp_supportedBearers
; /* SupportedBearers */
264 static int hf_ulp_servicesSupported
; /* ServicesSupported */
265 static int hf_ulp_reportingCapabilities
; /* ReportingCap */
266 static int hf_ulp_eventTriggerCapabilities
; /* EventTriggerCapabilities */
267 static int hf_ulp_sessionCapabilities
; /* SessionCapabilities */
268 static int hf_ulp_periodicTrigger
; /* BOOLEAN */
269 static int hf_ulp_areaEventTrigger
; /* BOOLEAN */
270 static int hf_ulp_geoAreaShapesSupported
; /* GeoAreaShapesSupported */
271 static int hf_ulp_maxNumGeoAreaSupported
; /* INTEGER_0_maxNumGeoArea */
272 static int hf_ulp_maxAreaIdListSupported
; /* INTEGER_0_maxAreaIdList */
273 static int hf_ulp_maxAreaIdSupportedPerList
; /* INTEGER_0_maxAreaId */
274 static int hf_ulp_ellipticalArea_01
; /* BOOLEAN */
275 static int hf_ulp_polygonArea_01
; /* BOOLEAN */
276 static int hf_ulp_maxNumberTotalSessions
; /* INTEGER_1_128 */
277 static int hf_ulp_maxNumberPeriodicSessions
; /* INTEGER_1_32 */
278 static int hf_ulp_maxNumberTriggeredSessions
; /* INTEGER_1_32 */
279 static int hf_ulp_gsm
; /* BOOLEAN */
280 static int hf_ulp_wcdma
; /* BOOLEAN */
281 static int hf_ulp_lte
; /* BOOLEAN */
282 static int hf_ulp_cdma
; /* BOOLEAN */
283 static int hf_ulp_hprd
; /* BOOLEAN */
284 static int hf_ulp_umb
; /* BOOLEAN */
285 static int hf_ulp_wlan
; /* BOOLEAN */
286 static int hf_ulp_wiMAX
; /* BOOLEAN */
287 static int hf_ulp_nr
; /* BOOLEAN */
288 static int hf_ulp_lpp
; /* BOOLEAN */
289 static int hf_ulp_posProtocolVersionRRLP
; /* PosProtocolVersion3GPP */
290 static int hf_ulp_posProtocolVersionRRC
; /* PosProtocolVersion3GPP */
291 static int hf_ulp_posProtocolVersionTIA801
; /* PosProtocolVersion3GPP2 */
292 static int hf_ulp_posProtocolVersionLPP
; /* PosProtocolVersion3GPP */
293 static int hf_ulp_lppe
; /* BOOLEAN */
294 static int hf_ulp_posProtocolVersionLPPe
; /* PosProtocolVersionOMA */
295 static int hf_ulp_majorVersionField
; /* INTEGER_0_255 */
296 static int hf_ulp_technicalVersionField
; /* INTEGER_0_255 */
297 static int hf_ulp_editorialVersionField
; /* INTEGER_0_255 */
298 static int hf_ulp_PosProtocolVersion3GPP2_item
; /* Supported3GPP2PosProtocolVersion */
299 static int hf_ulp_revisionNumber
; /* BIT_STRING_SIZE_6 */
300 static int hf_ulp_pointReleaseNumber
; /* INTEGER_0_255 */
301 static int hf_ulp_internalEditLevel
; /* INTEGER_0_255 */
302 static int hf_ulp_minorVersionField
; /* INTEGER_0_255 */
303 static int hf_ulp_gANSSPositionMethods
; /* GANSSPositionMethods */
304 static int hf_ulp_additionalPositioningMethods
; /* AdditionalPositioningMethods */
305 static int hf_ulp_GANSSPositionMethods_item
; /* GANSSPositionMethod */
306 static int hf_ulp_ganssSBASid
; /* T_ganssSBASid */
307 static int hf_ulp_gANSSPositioningMethodTypes
; /* GANSSPositioningMethodTypes */
308 static int hf_ulp_rtk
; /* RTK */
309 static int hf_ulp_osr
; /* BOOLEAN */
310 static int hf_ulp_setAssisted
; /* BOOLEAN */
311 static int hf_ulp_setBased
; /* BOOLEAN */
312 static int hf_ulp_autonomous
; /* BOOLEAN */
313 static int hf_ulp_AdditionalPositioningMethods_item
; /* AddPosSupport_Element */
314 static int hf_ulp_addPosID
; /* T_addPosID */
315 static int hf_ulp_addPosMode
; /* T_addPosMode */
316 static int hf_ulp_ganssRequestedCommonAssistanceDataList
; /* GanssRequestedCommonAssistanceDataList */
317 static int hf_ulp_ganssRequestedGenericAssistanceDataList
; /* GanssRequestedGenericAssistanceDataList */
318 static int hf_ulp_extendedEphemeris
; /* ExtendedEphemeris */
319 static int hf_ulp_extendedEphemerisCheck
; /* ExtendedEphCheck */
320 static int hf_ulp_ganssReferenceTime
; /* BOOLEAN */
321 static int hf_ulp_ganssIonosphericModel
; /* BOOLEAN */
322 static int hf_ulp_ganssAdditionalIonosphericModelForDataID00
; /* BOOLEAN */
323 static int hf_ulp_ganssAdditionalIonosphericModelForDataID11
; /* BOOLEAN */
324 static int hf_ulp_ganssEarthOrientationParameters
; /* BOOLEAN */
325 static int hf_ulp_ganssAdditionalIonosphericModelForDataID01
; /* BOOLEAN */
326 static int hf_ulp_GanssRequestedGenericAssistanceDataList_item
; /* GanssReqGenericData */
327 static int hf_ulp_ganssId_01
; /* T_ganssId */
328 static int hf_ulp_ganssSBASid_01
; /* T_ganssSBASid_01 */
329 static int hf_ulp_ganssRealTimeIntegrity
; /* BOOLEAN */
330 static int hf_ulp_ganssDifferentialCorrection
; /* DGANSS_Sig_Id_Req */
331 static int hf_ulp_ganssAlmanac
; /* BOOLEAN */
332 static int hf_ulp_ganssNavigationModelData
; /* GanssNavigationModelData */
333 static int hf_ulp_ganssTimeModels
; /* T_ganssTimeModels */
334 static int hf_ulp_ganssReferenceMeasurementInfo
; /* BOOLEAN */
335 static int hf_ulp_ganssDataBits
; /* GanssDataBits */
336 static int hf_ulp_ganssUTCModel
; /* BOOLEAN */
337 static int hf_ulp_ganssAdditionalDataChoices
; /* GanssAdditionalDataChoices */
338 static int hf_ulp_ganssAuxiliaryInformation
; /* BOOLEAN */
339 static int hf_ulp_ganssExtendedEphemeris
; /* ExtendedEphemeris */
340 static int hf_ulp_ganssExtendedEphemerisCheck
; /* GanssExtendedEphCheck */
341 static int hf_ulp_bds_DifferentialCorrection
; /* BDS_Sig_Id_Req */
342 static int hf_ulp_bds_GridModelReq
; /* BOOLEAN */
343 static int hf_ulp_ganssWeek
; /* T_ganssWeek */
344 static int hf_ulp_ganssToe
; /* T_ganssToe */
345 static int hf_ulp_t_toeLimit
; /* T_t_toeLimit */
346 static int hf_ulp_satellitesListRelatedDataList
; /* SatellitesListRelatedDataList */
347 static int hf_ulp_SatellitesListRelatedDataList_item
; /* SatellitesListRelatedData */
348 static int hf_ulp_iod
; /* INTEGER_0_1023 */
349 static int hf_ulp_ganssTODmin
; /* INTEGER_0_59 */
350 static int hf_ulp_reqDataBitAssistanceList
; /* ReqDataBitAssistanceList */
351 static int hf_ulp_gnssSignals
; /* GANSSSignals */
352 static int hf_ulp_ganssDataBitInterval
; /* INTEGER_0_15 */
353 static int hf_ulp_ganssDataBitSatList
; /* T_ganssDataBitSatList */
354 static int hf_ulp_ganssDataBitSatList_item
; /* INTEGER_0_63 */
355 static int hf_ulp_orbitModelID
; /* INTEGER_0_7 */
356 static int hf_ulp_clockModelID
; /* INTEGER_0_7 */
357 static int hf_ulp_utcModelID
; /* INTEGER_0_7 */
358 static int hf_ulp_almanacModelID
; /* INTEGER_0_7 */
359 static int hf_ulp_validity
; /* INTEGER_1_256 */
360 static int hf_ulp_beginTime
; /* GPSTime */
361 static int hf_ulp_endTime
; /* GPSTime */
362 static int hf_ulp_beginTime_01
; /* GANSSextEphTime */
363 static int hf_ulp_endTime_01
; /* GANSSextEphTime */
364 static int hf_ulp_gPSWeek
; /* INTEGER_0_1023 */
365 static int hf_ulp_gPSTOWhour
; /* INTEGER_0_167 */
366 static int hf_ulp_gANSSday
; /* INTEGER_0_8191 */
367 static int hf_ulp_gANSSTODhour
; /* INTEGER_0_23 */
368 static int hf_ulp_lPPPayload
; /* T_lPPPayload */
369 static int hf_ulp_lPPPayload_item
; /* T_lPPPayload_item */
370 static int hf_ulp_tia801Payload
; /* T_tia801Payload */
371 static int hf_ulp_tia801Payload_item
; /* OCTET_STRING_SIZE_1_60000 */
372 static int hf_ulp_maj
; /* INTEGER_0_255 */
373 static int hf_ulp_min
; /* INTEGER_0_255 */
374 static int hf_ulp_servind
; /* INTEGER_0_255 */
375 static int hf_ulp_setSessionID
; /* SetSessionID */
376 static int hf_ulp_slpSessionID
; /* SlpSessionID */
377 static int hf_ulp_sessionId
; /* INTEGER_0_65535 */
378 static int hf_ulp_setId
; /* SETId */
379 static int hf_ulp_msisdn
; /* T_msisdn */
380 static int hf_ulp_mdn
; /* T_mdn */
381 static int hf_ulp_minsi
; /* BIT_STRING_SIZE_34 */
382 static int hf_ulp_imsi
; /* T_imsi */
383 static int hf_ulp_nai
; /* IA5String_SIZE_1_1000 */
384 static int hf_ulp_iPAddress
; /* IPAddress */
385 static int hf_ulp_ver2_imei
; /* OCTET_STRING_SIZE_8 */
386 static int hf_ulp_sessionSlpID
; /* OCTET_STRING_SIZE_4 */
387 static int hf_ulp_slpId
; /* SLPAddress */
388 static int hf_ulp_ipv4Address
; /* OCTET_STRING_SIZE_4 */
389 static int hf_ulp_ipv6Address
; /* OCTET_STRING_SIZE_16 */
390 static int hf_ulp_fqdn
; /* FQDN */
391 static int hf_ulp_cellInfo
; /* CellInfo */
392 static int hf_ulp_status
; /* Status */
393 static int hf_ulp_gsmCell
; /* GsmCellInformation */
394 static int hf_ulp_wcdmaCell
; /* WcdmaCellInformation */
395 static int hf_ulp_cdmaCell
; /* CdmaCellInformation */
396 static int hf_ulp_ver2_CellInfo_extension
; /* Ver2_CellInfo_extension */
397 static int hf_ulp_timestamp_01
; /* UTCTime */
398 static int hf_ulp_positionEstimate
; /* PositionEstimate */
399 static int hf_ulp_latitudeSign
; /* T_latitudeSign */
400 static int hf_ulp_latitude
; /* INTEGER_0_8388607 */
401 static int hf_ulp_longitude
; /* INTEGER_M8388608_8388607 */
402 static int hf_ulp_uncertainty
; /* T_uncertainty */
403 static int hf_ulp_uncertaintySemiMajor
; /* INTEGER_0_127 */
404 static int hf_ulp_uncertaintySemiMinor
; /* INTEGER_0_127 */
405 static int hf_ulp_orientationMajorAxis
; /* INTEGER_0_180 */
406 static int hf_ulp_confidence
; /* INTEGER_0_100 */
407 static int hf_ulp_altitudeInfo
; /* AltitudeInfo */
408 static int hf_ulp_altitudeDirection
; /* T_altitudeDirection */
409 static int hf_ulp_altitude
; /* INTEGER_0_32767 */
410 static int hf_ulp_altUncertainty
; /* INTEGER_0_127 */
411 static int hf_ulp_refNID_01
; /* INTEGER_0_65535 */
412 static int hf_ulp_refSID_01
; /* INTEGER_0_32767 */
413 static int hf_ulp_refBASELAT
; /* INTEGER_0_4194303 */
414 static int hf_ulp_reBASELONG
; /* INTEGER_0_8388607 */
415 static int hf_ulp_refREFPN
; /* INTEGER_0_511 */
416 static int hf_ulp_refWeekNumber
; /* INTEGER_0_65535 */
417 static int hf_ulp_refSeconds
; /* INTEGER_0_4194303 */
418 static int hf_ulp_nmr
; /* NMR */
419 static int hf_ulp_ta
; /* INTEGER_0_255 */
420 static int hf_ulp_frequencyInfo
; /* FrequencyInfo */
421 static int hf_ulp_primaryScramblingCode
; /* INTEGER_0_511 */
422 static int hf_ulp_measuredResultsList
; /* MeasuredResultsList */
423 static int hf_ulp_cellParametersId
; /* INTEGER_0_127 */
424 static int hf_ulp_timingAdvance
; /* TimingAdvance */
425 static int hf_ulp_ta_01
; /* INTEGER_0_8191 */
426 static int hf_ulp_tAResolution
; /* TAResolution */
427 static int hf_ulp_chipRate
; /* ChipRate */
428 static int hf_ulp_modeSpecificFrequencyInfo
; /* FrequencySpecificInfo */
429 static int hf_ulp_fdd_fr
; /* FrequencyInfoFDD */
430 static int hf_ulp_tdd_fr
; /* FrequencyInfoTDD */
431 static int hf_ulp_uarfcn_UL
; /* UARFCN */
432 static int hf_ulp_uarfcn_DL
; /* UARFCN */
433 static int hf_ulp_uarfcn_Nt
; /* UARFCN */
434 static int hf_ulp_NMR_item
; /* NMRelement */
435 static int hf_ulp_arfcn
; /* INTEGER_0_1023 */
436 static int hf_ulp_bsic
; /* INTEGER_0_63 */
437 static int hf_ulp_rxLev
; /* INTEGER_0_63 */
438 static int hf_ulp_MeasuredResultsList_item
; /* MeasuredResults */
439 static int hf_ulp_utra_CarrierRSSI
; /* UTRA_CarrierRSSI */
440 static int hf_ulp_cellMeasuredResultsList
; /* CellMeasuredResultsList */
441 static int hf_ulp_CellMeasuredResultsList_item
; /* CellMeasuredResults */
442 static int hf_ulp_cellIdentity
; /* INTEGER_0_268435455 */
443 static int hf_ulp_modeSpecificInfo
; /* T_modeSpecificInfo */
444 static int hf_ulp_fdd
; /* T_fdd */
445 static int hf_ulp_primaryCPICH_Info
; /* PrimaryCPICH_Info */
446 static int hf_ulp_cpich_Ec_N0
; /* CPICH_Ec_N0 */
447 static int hf_ulp_cpich_RSCP
; /* CPICH_RSCP */
448 static int hf_ulp_pathloss
; /* Pathloss */
449 static int hf_ulp_tdd
; /* T_tdd */
450 static int hf_ulp_cellParametersID
; /* CellParametersID */
451 static int hf_ulp_proposedTGSN
; /* TGSN */
452 static int hf_ulp_primaryCCPCH_RSCP
; /* PrimaryCCPCH_RSCP */
453 static int hf_ulp_timeslotISCP_List
; /* TimeslotISCP_List */
454 static int hf_ulp_TimeslotISCP_List_item
; /* TimeslotISCP */
455 static int hf_ulp_horacc
; /* INTEGER_0_127 */
456 static int hf_ulp_veracc
; /* INTEGER_0_127 */
457 static int hf_ulp_maxLocAge
; /* INTEGER_0_65535 */
458 static int hf_ulp_delay
; /* INTEGER_0_7 */
459 static int hf_ulp_ver2_responseTime
; /* INTEGER_1_128 */
460 static int hf_ulp_horvel
; /* Horvel */
461 static int hf_ulp_horandvervel
; /* Horandvervel */
462 static int hf_ulp_horveluncert
; /* Horveluncert */
463 static int hf_ulp_horandveruncert
; /* Horandveruncert */
464 static int hf_ulp_bearing
; /* T_bearing */
465 static int hf_ulp_horspeed
; /* T_horspeed */
466 static int hf_ulp_verdirect
; /* T_verdirect */
467 static int hf_ulp_bearing_01
; /* T_bearing_01 */
468 static int hf_ulp_horspeed_01
; /* T_horspeed_01 */
469 static int hf_ulp_verspeed
; /* T_verspeed */
470 static int hf_ulp_bearing_02
; /* T_bearing_02 */
471 static int hf_ulp_horspeed_02
; /* T_horspeed_02 */
472 static int hf_ulp_uncertspeed
; /* T_uncertspeed */
473 static int hf_ulp_verdirect_01
; /* T_verdirect_01 */
474 static int hf_ulp_bearing_03
; /* T_bearing_03 */
475 static int hf_ulp_horspeed_03
; /* T_horspeed_03 */
476 static int hf_ulp_verspeed_01
; /* T_verspeed_01 */
477 static int hf_ulp_horuncertspeed
; /* T_horuncertspeed */
478 static int hf_ulp_veruncertspeed
; /* T_veruncertspeed */
479 static int hf_ulp_MultipleLocationIds_item
; /* LocationIdData */
480 static int hf_ulp_relativetimestamp
; /* RelativeTime */
481 static int hf_ulp_servingFlag
; /* BOOLEAN */
482 static int hf_ulp_supportedWLANInfo
; /* SupportedWLANInfo */
483 static int hf_ulp_supportedWLANApsList
; /* SupportedWLANApsList */
484 static int hf_ulp_supportedWCDMAInfo
; /* SupportedWCDMAInfo */
485 static int hf_ulp_hrdp
; /* BOOLEAN */
486 static int hf_ulp_wimax
; /* BOOLEAN */
487 static int hf_ulp_historic
; /* BOOLEAN */
488 static int hf_ulp_nonServing
; /* BOOLEAN */
489 static int hf_ulp_uTRANGPSReferenceTime
; /* BOOLEAN */
490 static int hf_ulp_uTRANGANSSReferenceTime
; /* BOOLEAN */
491 static int hf_ulp_apTP
; /* BOOLEAN */
492 static int hf_ulp_apAG
; /* BOOLEAN */
493 static int hf_ulp_apSN
; /* BOOLEAN */
494 static int hf_ulp_apDevType
; /* BOOLEAN */
495 static int hf_ulp_apRSSI
; /* BOOLEAN */
496 static int hf_ulp_apChanFreq
; /* BOOLEAN */
497 static int hf_ulp_apRTD
; /* BOOLEAN */
498 static int hf_ulp_setTP
; /* BOOLEAN */
499 static int hf_ulp_setAG
; /* BOOLEAN */
500 static int hf_ulp_setSN
; /* BOOLEAN */
501 static int hf_ulp_setRSSI
; /* BOOLEAN */
502 static int hf_ulp_apRepLoc
; /* BOOLEAN */
503 static int hf_ulp_apRL
; /* BOOLEAN */
504 static int hf_ulp_opClass
; /* BOOLEAN */
505 static int hf_ulp_apSSID
; /* BOOLEAN */
506 static int hf_ulp_apPHYType
; /* BOOLEAN */
507 static int hf_ulp_setMACAddress
; /* BOOLEAN */
508 static int hf_ulp_supportedWLANApDataList
; /* SEQUENCE_SIZE_1_maxWLANApDataSize_OF_SupportedWLANApData */
509 static int hf_ulp_supportedWLANApDataList_item
; /* SupportedWLANApData */
510 static int hf_ulp_supportedWLANapsChannel11a
; /* SupportedWLANApsChannel11a */
511 static int hf_ulp_supportedWLANapsChannel11bg
; /* SupportedWLANApsChannel11bg */
512 static int hf_ulp_ch34
; /* BOOLEAN */
513 static int hf_ulp_ch36
; /* BOOLEAN */
514 static int hf_ulp_ch38
; /* BOOLEAN */
515 static int hf_ulp_ch40
; /* BOOLEAN */
516 static int hf_ulp_ch42
; /* BOOLEAN */
517 static int hf_ulp_ch44
; /* BOOLEAN */
518 static int hf_ulp_ch46
; /* BOOLEAN */
519 static int hf_ulp_ch48
; /* BOOLEAN */
520 static int hf_ulp_ch52
; /* BOOLEAN */
521 static int hf_ulp_ch56
; /* BOOLEAN */
522 static int hf_ulp_ch60
; /* BOOLEAN */
523 static int hf_ulp_ch64
; /* BOOLEAN */
524 static int hf_ulp_ch149
; /* BOOLEAN */
525 static int hf_ulp_ch153
; /* BOOLEAN */
526 static int hf_ulp_ch157
; /* BOOLEAN */
527 static int hf_ulp_ch161
; /* BOOLEAN */
528 static int hf_ulp_ch1
; /* BOOLEAN */
529 static int hf_ulp_ch2
; /* BOOLEAN */
530 static int hf_ulp_ch3
; /* BOOLEAN */
531 static int hf_ulp_ch4
; /* BOOLEAN */
532 static int hf_ulp_ch5
; /* BOOLEAN */
533 static int hf_ulp_ch6
; /* BOOLEAN */
534 static int hf_ulp_ch7
; /* BOOLEAN */
535 static int hf_ulp_ch8
; /* BOOLEAN */
536 static int hf_ulp_ch9
; /* BOOLEAN */
537 static int hf_ulp_ch10
; /* BOOLEAN */
538 static int hf_ulp_ch11
; /* BOOLEAN */
539 static int hf_ulp_ch12
; /* BOOLEAN */
540 static int hf_ulp_ch13
; /* BOOLEAN */
541 static int hf_ulp_ch14
; /* BOOLEAN */
542 static int hf_ulp_apMACAddress_01
; /* T_apMACAddress_01 */
543 static int hf_ulp_apDevType_01
; /* T_apDevType */
544 static int hf_ulp_mrl
; /* BOOLEAN */
545 static int hf_ulp_hrpdCell
; /* HrpdCellInformation */
546 static int hf_ulp_umbCell
; /* UmbCellInformation */
547 static int hf_ulp_lteCell
; /* LteCellInformation */
548 static int hf_ulp_wlanAP
; /* WlanAPInformation */
549 static int hf_ulp_wimaxBS
; /* WimaxBSInformation */
550 static int hf_ulp_nrCell
; /* NRCellInformation */
551 static int hf_ulp_cellGlobalIdEUTRA
; /* CellGlobalIdEUTRA */
552 static int hf_ulp_physCellId
; /* PhysCellId */
553 static int hf_ulp_trackingAreaCode
; /* TrackingAreaCode */
554 static int hf_ulp_rsrpResult
; /* RSRP_Range */
555 static int hf_ulp_rsrqResult
; /* RSRQ_Range */
556 static int hf_ulp_ta_02
; /* INTEGER_0_1282 */
557 static int hf_ulp_measResultListEUTRA
; /* MeasResultListEUTRA */
558 static int hf_ulp_earfcn
; /* INTEGER_0_65535 */
559 static int hf_ulp_earfcn_ext
; /* INTEGER_65536_262143 */
560 static int hf_ulp_rsrpResult_ext
; /* RSRP_Range_Ext */
561 static int hf_ulp_rsrqResult_ext
; /* RSRQ_Range_Ext */
562 static int hf_ulp_rs_sinrResult
; /* RS_SINR_Range */
563 static int hf_ulp_servingInformation5G
; /* ServingInformation5G */
564 static int hf_ulp_MeasResultListEUTRA_item
; /* MeasResultEUTRA */
565 static int hf_ulp_cgi_Info
; /* T_cgi_Info */
566 static int hf_ulp_cellGlobalId
; /* CellGlobalIdEUTRA */
567 static int hf_ulp_measResult
; /* T_measResult */
568 static int hf_ulp_neighbourInformation5G
; /* NeighbourInformation5G */
569 static int hf_ulp_plmn_Identity
; /* PLMN_Identity */
570 static int hf_ulp_cellIdentity_01
; /* CellIdentity */
571 static int hf_ulp_mcc
; /* MCC */
572 static int hf_ulp_mnc
; /* MNC */
573 static int hf_ulp_MCC_item
; /* MCC_MNC_Digit */
574 static int hf_ulp_MNC_item
; /* MCC_MNC_Digit */
575 static int hf_ulp_trackingAreaCode_01
; /* TrackingAreaCodeNR */
576 static int hf_ulp_apMACAddress_02
; /* T_apMACAddress_02 */
577 static int hf_ulp_apTransmitPower
; /* INTEGER_M127_128 */
578 static int hf_ulp_apAntennaGain
; /* INTEGER_M127_128 */
579 static int hf_ulp_apSignaltoNoise
; /* INTEGER_M127_128 */
580 static int hf_ulp_apDeviceType
; /* T_apDeviceType */
581 static int hf_ulp_apSignalStrength
; /* INTEGER_M127_128 */
582 static int hf_ulp_apChannelFrequency
; /* INTEGER_0_256 */
583 static int hf_ulp_apRoundTripDelay
; /* RTD */
584 static int hf_ulp_setTransmitPower
; /* INTEGER_M127_128 */
585 static int hf_ulp_setAntennaGain
; /* INTEGER_M127_128 */
586 static int hf_ulp_setSignaltoNoise
; /* INTEGER_M127_128 */
587 static int hf_ulp_setSignalStrength
; /* INTEGER_M127_128 */
588 static int hf_ulp_apReportedLocation
; /* ReportedLocation */
589 static int hf_ulp_apRepLocation
; /* RepLocation */
590 static int hf_ulp_apSignalStrengthDelta
; /* INTEGER_0_1 */
591 static int hf_ulp_apSignaltoNoiseDelta
; /* INTEGER_0_1 */
592 static int hf_ulp_setSignalStrengthDelta
; /* INTEGER_0_1 */
593 static int hf_ulp_setSignaltoNoiseDelta
; /* INTEGER_0_1 */
594 static int hf_ulp_operatingClass
; /* INTEGER_0_255 */
595 static int hf_ulp_apSSID_01
; /* T_apSSID */
596 static int hf_ulp_apPHYType_01
; /* T_apPHYType */
597 static int hf_ulp_setMACAddress_01
; /* T_setMACAddress */
598 static int hf_ulp_rTDValue
; /* INTEGER_0_16777216 */
599 static int hf_ulp_rTDUnits
; /* RTDUnits */
600 static int hf_ulp_rTDAccuracy
; /* INTEGER_0_255 */
601 static int hf_ulp_locationEncodingDescriptor
; /* LocationEncodingDescriptor */
602 static int hf_ulp_locationData
; /* LocationData */
603 static int hf_ulp_locationAccuracy
; /* INTEGER_0_4294967295 */
604 static int hf_ulp_locationValue
; /* OCTET_STRING_SIZE_1_128 */
605 static int hf_ulp_lciLocData
; /* LciLocData */
606 static int hf_ulp_locationDataLCI
; /* LocationDataLCI */
607 static int hf_ulp_latitudeResolution
; /* BIT_STRING_SIZE_6 */
608 static int hf_ulp_latitude_01
; /* BIT_STRING_SIZE_34 */
609 static int hf_ulp_longitudeResolution
; /* BIT_STRING_SIZE_6 */
610 static int hf_ulp_longitude_01
; /* BIT_STRING_SIZE_34 */
611 static int hf_ulp_altitudeType
; /* BIT_STRING_SIZE_4 */
612 static int hf_ulp_altitudeResolution
; /* BIT_STRING_SIZE_6 */
613 static int hf_ulp_altitude_01
; /* BIT_STRING_SIZE_30 */
614 static int hf_ulp_datum
; /* BIT_STRING_SIZE_8 */
615 static int hf_ulp_wimaxBsID
; /* WimaxBsID */
616 static int hf_ulp_wimaxRTD
; /* WimaxRTD */
617 static int hf_ulp_wimaxNMRList
; /* WimaxNMRList */
618 static int hf_ulp_rtd
; /* INTEGER_0_65535 */
619 static int hf_ulp_rTDstd
; /* INTEGER_0_1023 */
620 static int hf_ulp_WimaxNMRList_item
; /* WimaxNMR */
621 static int hf_ulp_relDelay
; /* INTEGER_M32768_32767 */
622 static int hf_ulp_relDelaystd
; /* INTEGER_0_1023 */
623 static int hf_ulp_rssi
; /* INTEGER_0_255 */
624 static int hf_ulp_rSSIstd
; /* INTEGER_0_63 */
625 static int hf_ulp_bSTxPower
; /* INTEGER_0_255 */
626 static int hf_ulp_cinr
; /* INTEGER_0_255 */
627 static int hf_ulp_cINRstd
; /* INTEGER_0_63 */
628 static int hf_ulp_bSLocation
; /* ReportedLocation */
629 static int hf_ulp_servingCellInformation
; /* ServingCellInformationNR */
630 static int hf_ulp_measuredResultsListNR
; /* MeasResultListNR */
631 static int hf_ulp_ServingCellInformationNR_item
; /* ServCellNR */
632 static int hf_ulp_physCellId_01
; /* PhysCellIdNR */
633 static int hf_ulp_arfcn_NR
; /* ARFCN_NR */
634 static int hf_ulp_cellGlobalId_01
; /* CellGlobalIdNR */
635 static int hf_ulp_ssb_Measurements
; /* NR_Measurements */
636 static int hf_ulp_csi_rs_Measurements
; /* NR_Measurements */
637 static int hf_ulp_ta_03
; /* INTEGER_0_3846 */
638 static int hf_ulp_MeasResultListNR_item
; /* MeasResultNR */
639 static int hf_ulp_cellIdentityNR
; /* CellIdentityNR */
640 static int hf_ulp_rsrp_Range
; /* INTEGER_0_127 */
641 static int hf_ulp_rsrq_Range
; /* INTEGER_0_127 */
642 static int hf_ulp_sinr_Range
; /* INTEGER_0_127 */
643 static int hf_ulp_utran_GPSReferenceTime
; /* UTRAN_GPSReferenceTime */
644 static int hf_ulp_gpsReferenceTimeUncertainty
; /* INTEGER_0_127 */
645 static int hf_ulp_utranGPSDriftRate
; /* UTRANGPSDriftRate */
646 static int hf_ulp_utran_GPSTimingOfCell
; /* T_utran_GPSTimingOfCell */
647 static int hf_ulp_ms_part
; /* INTEGER_0_1023 */
648 static int hf_ulp_ls_part
; /* INTEGER_0_4294967295 */
649 static int hf_ulp_modeSpecificInfo_01
; /* T_modeSpecificInfo_01 */
650 static int hf_ulp_fdd_01
; /* T_fdd_01 */
651 static int hf_ulp_referenceIdentity
; /* PrimaryCPICH_Info */
652 static int hf_ulp_tdd_01
; /* T_tdd_01 */
653 static int hf_ulp_referenceIdentity_01
; /* CellParametersID */
654 static int hf_ulp_sfn
; /* INTEGER_0_4095 */
655 static int hf_ulp_set_GPSTimingOfCell
; /* T_set_GPSTimingOfCell */
656 static int hf_ulp_ms_part_01
; /* INTEGER_0_16383 */
657 static int hf_ulp_modeSpecificInfo_02
; /* T_modeSpecificInfo_02 */
658 static int hf_ulp_fdd_02
; /* T_fdd_02 */
659 static int hf_ulp_tdd_02
; /* T_tdd_02 */
660 static int hf_ulp_ganssDay
; /* INTEGER_0_8191 */
661 static int hf_ulp_ganssTimeID
; /* INTEGER_0_15 */
662 static int hf_ulp_utran_GANSSReferenceTime
; /* UTRAN_GANSSReferenceTime */
663 static int hf_ulp_utranGANSSDriftRate
; /* UTRANGANSSDriftRate */
664 static int hf_ulp_ganssTOD
; /* INTEGER_0_86399 */
665 static int hf_ulp_utran_GANSSTimingOfCell
; /* INTEGER_0_3999999 */
666 static int hf_ulp_modeSpecificInfo_03
; /* T_modeSpecificInfo_03 */
667 static int hf_ulp_fdd_03
; /* T_fdd_03 */
668 static int hf_ulp_tdd_03
; /* T_tdd_03 */
669 static int hf_ulp_ganss_TODUncertainty
; /* INTEGER_0_127 */
670 static int hf_ulp_set_GANSSReferenceTime
; /* SET_GANSSReferenceTime */
671 static int hf_ulp_set_GANSSTimingOfCell
; /* T_set_GANSSTimingOfCell */
672 static int hf_ulp_ms_part_02
; /* INTEGER_0_80 */
673 static int hf_ulp_modeSpecificInfo_04
; /* T_modeSpecificInfo_04 */
674 static int hf_ulp_fdd_04
; /* T_fdd_04 */
675 static int hf_ulp_tdd_04
; /* T_tdd_04 */
676 static int hf_ulp_gps
; /* BOOLEAN */
677 static int hf_ulp_galileo
; /* BOOLEAN */
678 static int hf_ulp_sbas
; /* BOOLEAN */
679 static int hf_ulp_modernized_gps
; /* BOOLEAN */
680 static int hf_ulp_qzss
; /* BOOLEAN */
681 static int hf_ulp_glonass
; /* BOOLEAN */
682 static int hf_ulp_bds
; /* BOOLEAN */
683 static int hf_ulp_rtk_osr
; /* BOOLEAN */
684 static int hf_ulp_rand
; /* BIT_STRING_SIZE_128 */
685 static int hf_ulp_slpFQDN
; /* FQDN */
686 static int hf_ulp_ThirdParty_item
; /* ThirdPartyID */
687 static int hf_ulp_logicalName
; /* IA5String_SIZE_1_1000 */
688 static int hf_ulp_msisdn_01
; /* T_msisdn_01 */
689 static int hf_ulp_emailaddr
; /* IA5String_SIZE_1_1000 */
690 static int hf_ulp_sip_uri
; /* T_sip_uri */
691 static int hf_ulp_ims_public_identity
; /* T_ims_public_identity */
692 static int hf_ulp_min_01
; /* BIT_STRING_SIZE_34 */
693 static int hf_ulp_mdn_01
; /* T_mdn_01 */
694 static int hf_ulp_uri
; /* T_uri */
695 static int hf_ulp_appProvider
; /* IA5String_SIZE_1_24 */
696 static int hf_ulp_appName
; /* IA5String_SIZE_1_32 */
697 static int hf_ulp_appVersion
; /* IA5String_SIZE_1_8 */
698 static int hf_ulp_minInt
; /* INTEGER_1_3600 */
699 static int hf_ulp_maxInt
; /* INTEGER_1_1440 */
700 static int hf_ulp_repMode_01
; /* RepMode */
701 static int hf_ulp_batchRepCap
; /* BatchRepCap */
702 static int hf_ulp_realtime
; /* BOOLEAN */
703 static int hf_ulp_quasirealtime
; /* BOOLEAN */
704 static int hf_ulp_batch
; /* BOOLEAN */
705 static int hf_ulp_report_position
; /* BOOLEAN */
706 static int hf_ulp_report_measurements
; /* BOOLEAN */
707 static int hf_ulp_max_num_positions
; /* INTEGER_1_1024 */
708 static int hf_ulp_max_num_measurements
; /* INTEGER_1_1024 */
709 static int hf_ulp_latitudeSign_01
; /* T_latitudeSign_01 */
710 static int hf_ulp_coordinateLatitude
; /* INTEGER_0_8388607 */
711 static int hf_ulp_coordinateLongitude
; /* INTEGER_M8388608_8388607 */
712 static int hf_ulp_coordinate
; /* Coordinate */
713 static int hf_ulp_radius
; /* INTEGER_1_1000000 */
714 static int hf_ulp_radius_min
; /* INTEGER_1_1000000 */
715 static int hf_ulp_radius_max
; /* INTEGER_1_1500000 */
716 static int hf_ulp_semiMajor
; /* INTEGER_1_1000000 */
717 static int hf_ulp_semiMajor_min
; /* INTEGER_1_1000000 */
718 static int hf_ulp_semiMajor_max
; /* INTEGER_1_1500000 */
719 static int hf_ulp_semiMinor
; /* INTEGER_1_1000000 */
720 static int hf_ulp_semiMinor_min
; /* INTEGER_1_1000000 */
721 static int hf_ulp_semiMinor_max
; /* INTEGER_1_1500000 */
722 static int hf_ulp_angle
; /* INTEGER_0_179 */
723 static int hf_ulp_polygonDescription
; /* PolygonDescription */
724 static int hf_ulp_polygonHysteresis
; /* INTEGER_1_100000 */
725 static int hf_ulp_PolygonDescription_item
; /* Coordinate */
726 static int hf_ulp_highAccuracyPositionEstimate
; /* HighAccuracyPositionEstimate */
727 static int hf_ulp_degreesLatitude
; /* INTEGER_M2147483648_2147483647 */
728 static int hf_ulp_degreesLongitude
; /* INTEGER_M2147483648_2147483647 */
729 static int hf_ulp_uncertaintySemiMajor_01
; /* INTEGER_0_255 */
730 static int hf_ulp_uncertaintySemiMinor_01
; /* INTEGER_0_255 */
731 static int hf_ulp_orientationMajorAxis_01
; /* INTEGER_0_179 */
732 static int hf_ulp_horizontalConfidence
; /* INTEGER_0_100 */
733 static int hf_ulp_highAccuracyAltitudeInfo
; /* HighAccuracyAltitudeInfo */
734 static int hf_ulp_altitude_02
; /* INTEGER_64000_1280000 */
735 static int hf_ulp_uncertaintyAltitude
; /* INTEGER_0_255 */
736 static int hf_ulp_verticalConfidence
; /* INTEGER_0_100 */
738 static int hf_ulp_T_addPosMode_standalone
;
739 static int hf_ulp_T_addPosMode_setBased
;
740 static int hf_ulp_T_addPosMode_setAssisted
;
741 static int hf_ulp_GANSSSignals_signal1
;
742 static int hf_ulp_GANSSSignals_signal2
;
743 static int hf_ulp_GANSSSignals_signal3
;
744 static int hf_ulp_GANSSSignals_signal4
;
745 static int hf_ulp_GANSSSignals_signal5
;
746 static int hf_ulp_GANSSSignals_signal6
;
747 static int hf_ulp_GANSSSignals_signal7
;
748 static int hf_ulp_GANSSSignals_signal8
;
749 static int hf_ulp_mobile_directory_number
;
750 static int hf_ulp_ganssTimeModels_bit0
;
751 static int hf_ulp_ganssTimeModels_bit1
;
752 static int hf_ulp_ganssTimeModels_bit2
;
753 static int hf_ulp_ganssTimeModels_bit3
;
754 static int hf_ulp_ganssTimeModels_bit4
;
755 static int hf_ulp_ganssTimeModels_spare
;
757 /* Initialize the subtree pointers */
759 static int ett_ulp_setid
;
760 static int ett_ulp_thirdPartyId
;
761 static int ett_ulp_ganssTimeModels
;
762 static int ett_ulp_ULP_PDU
;
763 static int ett_ulp_UlpMessage
;
764 static int ett_ulp_SUPLINIT
;
765 static int ett_ulp_Notification
;
766 static int ett_ulp_SUPLSTART
;
767 static int ett_ulp_SETCapabilities
;
768 static int ett_ulp_PosTechnology
;
769 static int ett_ulp_PosProtocol
;
770 static int ett_ulp_SUPLRESPONSE
;
771 static int ett_ulp_SETAuthKey
;
772 static int ett_ulp_SUPLPOSINIT
;
773 static int ett_ulp_RequestedAssistData
;
774 static int ett_ulp_NavigationModel
;
775 static int ett_ulp_SatelliteInfo
;
776 static int ett_ulp_SatelliteInfoElement
;
777 static int ett_ulp_SUPLPOS
;
778 static int ett_ulp_PosPayLoad
;
779 static int ett_ulp_SUPLEND
;
780 static int ett_ulp_SUPLAUTHREQ
;
781 static int ett_ulp_SUPLAUTHRESP
;
782 static int ett_ulp_Ver2_SUPLNOTIFY
;
783 static int ett_ulp_Ver2_SUPLNOTIFYRESPONSE
;
784 static int ett_ulp_Ver2_SUPLSETINIT
;
785 static int ett_ulp_Ver2_SUPLTRIGGEREDSTART
;
786 static int ett_ulp_TriggerParams
;
787 static int ett_ulp_PeriodicParams
;
788 static int ett_ulp_AreaEventParams
;
789 static int ett_ulp_SEQUENCE_SIZE_1_maxAreaIdList_OF_AreaIdList
;
790 static int ett_ulp_RepeatedReportingParams
;
791 static int ett_ulp_GeographicTargetAreaList
;
792 static int ett_ulp_GeographicTargetArea
;
793 static int ett_ulp_AreaIdList
;
794 static int ett_ulp_AreaIdSet
;
795 static int ett_ulp_AreaId
;
796 static int ett_ulp_GSMAreaId
;
797 static int ett_ulp_WCDMAAreaId
;
798 static int ett_ulp_CDMAAreaId
;
799 static int ett_ulp_HRPDAreaId
;
800 static int ett_ulp_UMBAreaId
;
801 static int ett_ulp_LTEAreaId
;
802 static int ett_ulp_WLANAreaId
;
803 static int ett_ulp_WimaxAreaId
;
804 static int ett_ulp_NRAreaId
;
805 static int ett_ulp_GeoAreaMappingList
;
806 static int ett_ulp_Ver2_SUPLTRIGGEREDRESPONSE
;
807 static int ett_ulp_ReportingMode
;
808 static int ett_ulp_BatchRepConditions
;
809 static int ett_ulp_BatchRepType
;
810 static int ett_ulp_Ver2_SUPLREPORT
;
811 static int ett_ulp_SessionList
;
812 static int ett_ulp_SessionInformation
;
813 static int ett_ulp_ReportDataList
;
814 static int ett_ulp_ReportData
;
815 static int ett_ulp_PositionData
;
816 static int ett_ulp_GANSSsignalsInfo
;
817 static int ett_ulp_GANSSSignalsDescription
;
818 static int ett_ulp_TimeStamp
;
819 static int ett_ulp_Ver2_SUPLTRIGGEREDSTOP
;
820 static int ett_ulp_Ver2_SUPL_INIT_extension
;
821 static int ett_ulp_HistoricReporting
;
822 static int ett_ulp_ReportingCriteria
;
823 static int ett_ulp_TimeWindow
;
824 static int ett_ulp_ProtectionLevel
;
825 static int ett_ulp_BasicProtectionParams
;
826 static int ett_ulp_Ver2_SUPL_START_extension
;
827 static int ett_ulp_Ver2_SUPL_RESPONSE_extension
;
828 static int ett_ulp_Ver2_SUPL_POS_INIT_extension
;
829 static int ett_ulp_Ver2_SUPL_POS_extension
;
830 static int ett_ulp_Ver2_SUPL_END_extension
;
831 static int ett_ulp_Ver2_Notification_extension
;
832 static int ett_ulp_Ver2_SETCapabilities_extension
;
833 static int ett_ulp_ServiceCapabilities
;
834 static int ett_ulp_ServicesSupported
;
835 static int ett_ulp_EventTriggerCapabilities
;
836 static int ett_ulp_GeoAreaShapesSupported
;
837 static int ett_ulp_SessionCapabilities
;
838 static int ett_ulp_SupportedBearers
;
839 static int ett_ulp_Ver2_PosProtocol_extension
;
840 static int ett_ulp_PosProtocolVersion3GPP
;
841 static int ett_ulp_PosProtocolVersion3GPP2
;
842 static int ett_ulp_Supported3GPP2PosProtocolVersion
;
843 static int ett_ulp_PosProtocolVersionOMA
;
844 static int ett_ulp_Ver2_PosTechnology_extension
;
845 static int ett_ulp_GANSSPositionMethods
;
846 static int ett_ulp_GANSSPositionMethod
;
847 static int ett_ulp_RTK
;
848 static int ett_ulp_GANSSPositioningMethodTypes
;
849 static int ett_ulp_AdditionalPositioningMethods
;
850 static int ett_ulp_AddPosSupport_Element
;
851 static int ett_ulp_T_addPosMode
;
852 static int ett_ulp_Ver2_RequestedAssistData_extension
;
853 static int ett_ulp_GanssRequestedCommonAssistanceDataList
;
854 static int ett_ulp_GanssRequestedGenericAssistanceDataList
;
855 static int ett_ulp_GanssReqGenericData
;
856 static int ett_ulp_GanssNavigationModelData
;
857 static int ett_ulp_SatellitesListRelatedDataList
;
858 static int ett_ulp_SatellitesListRelatedData
;
859 static int ett_ulp_GanssDataBits
;
860 static int ett_ulp_ReqDataBitAssistanceList
;
861 static int ett_ulp_T_ganssDataBitSatList
;
862 static int ett_ulp_GanssAdditionalDataChoices
;
863 static int ett_ulp_ExtendedEphemeris
;
864 static int ett_ulp_ExtendedEphCheck
;
865 static int ett_ulp_GanssExtendedEphCheck
;
866 static int ett_ulp_GPSTime
;
867 static int ett_ulp_GANSSextEphTime
;
868 static int ett_ulp_Ver2_PosPayLoad_extension
;
869 static int ett_ulp_T_lPPPayload
;
870 static int ett_ulp_T_tia801Payload
;
871 static int ett_ulp_Version
;
872 static int ett_ulp_SessionID
;
873 static int ett_ulp_SetSessionID
;
874 static int ett_ulp_SETId
;
875 static int ett_ulp_SlpSessionID
;
876 static int ett_ulp_IPAddress
;
877 static int ett_ulp_SLPAddress
;
878 static int ett_ulp_LocationId
;
879 static int ett_ulp_CellInfo
;
880 static int ett_ulp_Position
;
881 static int ett_ulp_PositionEstimate
;
882 static int ett_ulp_T_uncertainty
;
883 static int ett_ulp_AltitudeInfo
;
884 static int ett_ulp_CdmaCellInformation
;
885 static int ett_ulp_GsmCellInformation
;
886 static int ett_ulp_WcdmaCellInformation
;
887 static int ett_ulp_TimingAdvance
;
888 static int ett_ulp_FrequencyInfo
;
889 static int ett_ulp_FrequencySpecificInfo
;
890 static int ett_ulp_FrequencyInfoFDD
;
891 static int ett_ulp_FrequencyInfoTDD
;
892 static int ett_ulp_NMR
;
893 static int ett_ulp_NMRelement
;
894 static int ett_ulp_MeasuredResultsList
;
895 static int ett_ulp_MeasuredResults
;
896 static int ett_ulp_CellMeasuredResultsList
;
897 static int ett_ulp_CellMeasuredResults
;
898 static int ett_ulp_T_modeSpecificInfo
;
899 static int ett_ulp_T_fdd
;
900 static int ett_ulp_T_tdd
;
901 static int ett_ulp_TimeslotISCP_List
;
902 static int ett_ulp_PrimaryCPICH_Info
;
903 static int ett_ulp_QoP
;
904 static int ett_ulp_Velocity
;
905 static int ett_ulp_Horvel
;
906 static int ett_ulp_Horandvervel
;
907 static int ett_ulp_Horveluncert
;
908 static int ett_ulp_Horandveruncert
;
909 static int ett_ulp_MultipleLocationIds
;
910 static int ett_ulp_LocationIdData
;
911 static int ett_ulp_SupportedNetworkInformation
;
912 static int ett_ulp_SupportedWLANInfo
;
913 static int ett_ulp_SupportedWLANApsList
;
914 static int ett_ulp_SEQUENCE_SIZE_1_maxWLANApDataSize_OF_SupportedWLANApData
;
915 static int ett_ulp_SupportedWLANApsChannel11a
;
916 static int ett_ulp_SupportedWLANApsChannel11bg
;
917 static int ett_ulp_SupportedWLANApData
;
918 static int ett_ulp_SupportedWCDMAInfo
;
919 static int ett_ulp_Ver2_CellInfo_extension
;
920 static int ett_ulp_HrpdCellInformation
;
921 static int ett_ulp_UmbCellInformation
;
922 static int ett_ulp_LteCellInformation
;
923 static int ett_ulp_MeasResultListEUTRA
;
924 static int ett_ulp_MeasResultEUTRA
;
925 static int ett_ulp_T_cgi_Info
;
926 static int ett_ulp_T_measResult
;
927 static int ett_ulp_CellGlobalIdEUTRA
;
928 static int ett_ulp_PLMN_Identity
;
929 static int ett_ulp_MCC
;
930 static int ett_ulp_MNC
;
931 static int ett_ulp_ServingInformation5G
;
932 static int ett_ulp_NeighbourInformation5G
;
933 static int ett_ulp_WlanAPInformation
;
934 static int ett_ulp_RTD
;
935 static int ett_ulp_ReportedLocation
;
936 static int ett_ulp_LocationData
;
937 static int ett_ulp_RepLocation
;
938 static int ett_ulp_LciLocData
;
939 static int ett_ulp_LocationDataLCI
;
940 static int ett_ulp_WimaxBSInformation
;
941 static int ett_ulp_WimaxBsID
;
942 static int ett_ulp_WimaxRTD
;
943 static int ett_ulp_WimaxNMRList
;
944 static int ett_ulp_WimaxNMR
;
945 static int ett_ulp_NRCellInformation
;
946 static int ett_ulp_ServingCellInformationNR
;
947 static int ett_ulp_ServCellNR
;
948 static int ett_ulp_MeasResultListNR
;
949 static int ett_ulp_MeasResultNR
;
950 static int ett_ulp_CellGlobalIdNR
;
951 static int ett_ulp_NR_Measurements
;
952 static int ett_ulp_UTRAN_GPSReferenceTimeAssistance
;
953 static int ett_ulp_UTRAN_GPSReferenceTime
;
954 static int ett_ulp_T_utran_GPSTimingOfCell
;
955 static int ett_ulp_T_modeSpecificInfo_01
;
956 static int ett_ulp_T_fdd_01
;
957 static int ett_ulp_T_tdd_01
;
958 static int ett_ulp_UTRAN_GPSReferenceTimeResult
;
959 static int ett_ulp_T_set_GPSTimingOfCell
;
960 static int ett_ulp_T_modeSpecificInfo_02
;
961 static int ett_ulp_T_fdd_02
;
962 static int ett_ulp_T_tdd_02
;
963 static int ett_ulp_UTRAN_GANSSReferenceTimeAssistance
;
964 static int ett_ulp_UTRAN_GANSSReferenceTime
;
965 static int ett_ulp_T_modeSpecificInfo_03
;
966 static int ett_ulp_T_fdd_03
;
967 static int ett_ulp_T_tdd_03
;
968 static int ett_ulp_UTRAN_GANSSReferenceTimeResult
;
969 static int ett_ulp_SET_GANSSReferenceTime
;
970 static int ett_ulp_T_set_GANSSTimingOfCell
;
971 static int ett_ulp_T_modeSpecificInfo_04
;
972 static int ett_ulp_T_fdd_04
;
973 static int ett_ulp_T_tdd_04
;
974 static int ett_ulp_GNSSPosTechnology
;
975 static int ett_ulp_GANSSSignals
;
976 static int ett_ulp_SPCTID
;
977 static int ett_ulp_ThirdParty
;
978 static int ett_ulp_ThirdPartyID
;
979 static int ett_ulp_ApplicationID
;
980 static int ett_ulp_ReportingCap
;
981 static int ett_ulp_RepMode
;
982 static int ett_ulp_BatchRepCap
;
983 static int ett_ulp_Coordinate
;
984 static int ett_ulp_CircularArea
;
985 static int ett_ulp_EllipticalArea
;
986 static int ett_ulp_PolygonArea
;
987 static int ett_ulp_PolygonDescription
;
988 static int ett_ulp_Ver2_HighAccuracyPosition
;
989 static int ett_ulp_HighAccuracyPositionEstimate
;
990 static int ett_ulp_HighAccuracyAltitudeInfo
;
992 static dissector_handle_t ulp_tcp_handle
;
993 static dissector_handle_t ulp_pdu_handle
;
995 static const value_string ulp_ganss_id_vals
[] = {
998 { 2, "Modernized GPS"},
1005 static const value_string ulp_ganss_sbas_id_vals
[] = {
1014 ulp_ganssDataBitInterval_fmt(char *s
, uint32_t v
)
1017 snprintf(s
, ITEM_LABEL_LENGTH
, "Time interval is not specified (15)");
1019 double interval
= (0.1*pow(2, (double)v
));
1021 snprintf(s
, ITEM_LABEL_LENGTH
, "%gs (%u)", interval
, v
);
1026 ulp_ExtendedEphemeris_validity_fmt(char *s
, uint32_t v
)
1028 snprintf(s
, ITEM_LABEL_LENGTH
, "%uh (%u)", 4*v
, v
);
1032 ulp_PositionEstimate_latitude_fmt(char *s
, uint32_t v
)
1034 double latitude
= ((double)v
*90)/pow(2,23);
1036 snprintf(s
, ITEM_LABEL_LENGTH
, "%g degrees (%u)", latitude
, v
);
1040 ulp_PositionEstimate_longitude_fmt(char *s
, uint32_t v
)
1042 double longitude
= ((double)(int32_t)v
*360)/pow(2,24);
1044 snprintf(s
, ITEM_LABEL_LENGTH
, "%g degrees (%u)", longitude
, v
);
1048 ulp_NMRelement_rxLev_fmt(char *s
, uint32_t v
)
1051 snprintf(s
, ITEM_LABEL_LENGTH
, "RxLev < -110dBm (0)");
1052 } else if (v
== 63) {
1053 snprintf(s
, ITEM_LABEL_LENGTH
, "RxLev >= -48dBm (63)");
1055 snprintf(s
, ITEM_LABEL_LENGTH
, "%ddBm <= RxLev < %ddBm (%u)", -111+v
, -110+v
, v
);
1060 ulp_UTRA_CarrierRSSI_fmt(char *s
, uint32_t v
)
1063 snprintf(s
, ITEM_LABEL_LENGTH
, "RSSI < -100dBm (0)");
1064 } else if (v
== 76) {
1065 snprintf(s
, ITEM_LABEL_LENGTH
, "RSSI >= -25dBm (76)");
1066 } else if (v
> 76) {
1067 snprintf(s
, ITEM_LABEL_LENGTH
, "Spare (%u)", v
);
1069 snprintf(s
, ITEM_LABEL_LENGTH
, "%ddBm <= RSSI < %ddBm (%u)", -101+v
, -100+v
, v
);
1074 ulp_PrimaryCCPCH_RSCP_fmt(char *s
, uint32_t v
)
1077 snprintf(s
, ITEM_LABEL_LENGTH
, "RSCP < -115dBm (0)");
1078 } else if (v
== 91) {
1079 snprintf(s
, ITEM_LABEL_LENGTH
, "RSCP >= -25dBm (91)");
1080 } else if (v
> 91) {
1081 snprintf(s
, ITEM_LABEL_LENGTH
, "Spare (%u)", v
);
1083 snprintf(s
, ITEM_LABEL_LENGTH
, "%ddBm <= RSCP < %ddBm (%u)", -116+v
, -115+v
, v
);
1088 ulp_CPICH_Ec_N0_fmt(char *s
, uint32_t v
)
1091 snprintf(s
, ITEM_LABEL_LENGTH
, "CPICH Ec/N0 < -24dB (0)");
1092 } else if (v
== 49) {
1093 snprintf(s
, ITEM_LABEL_LENGTH
, "CPICH Ec/N0 >= 0dB (49)");
1094 } else if (v
> 49) {
1095 snprintf(s
, ITEM_LABEL_LENGTH
, "Spare (%u)", v
);
1097 snprintf(s
, ITEM_LABEL_LENGTH
, "%.1fdB <= CPICH Ec/N0 < %.1fdB (%u)", -24.5+((float)v
/2), -24+((float)v
/2), v
);
1102 ulp_CPICH_RSCP_fmt(char *s
, uint32_t v
)
1105 snprintf(s
, ITEM_LABEL_LENGTH
, "CPICH RSCP < -120dBm (123)");
1106 } else if (v
> 123) {
1107 snprintf(s
, ITEM_LABEL_LENGTH
, "%ddBm <= CPICH RSCP < %ddBm (%u)", -244+v
, -243+v
, v
);
1108 } else if (v
== 91) {
1109 snprintf(s
, ITEM_LABEL_LENGTH
, "CPICH RSCP >= -25dBm (91)");
1110 } else if (v
< 91) {
1111 snprintf(s
, ITEM_LABEL_LENGTH
, "%ddBm < CPICH RSCP <= %ddBm (%u)", -116+v
, -115+v
, v
);
1113 snprintf(s
, ITEM_LABEL_LENGTH
, "Spare (%u)", v
);
1118 ulp_QoP_horacc_fmt(char *s
, uint32_t v
)
1120 double uncertainty
= 10*(pow(1.1, (double)v
)-1);
1122 if (uncertainty
< 1000) {
1123 snprintf(s
, ITEM_LABEL_LENGTH
, "%fm (%u)", uncertainty
, v
);
1125 snprintf(s
, ITEM_LABEL_LENGTH
, "%fkm (%u)", uncertainty
/1000, v
);
1130 ulp_QoP_veracc_fmt(char *s
, uint32_t v
)
1132 double uncertainty
= 45*(pow(1.025, (double)v
)-1);
1134 snprintf(s
, ITEM_LABEL_LENGTH
, "%fm (%u)", uncertainty
, v
);
1138 ulp_QoP_delay_fmt(char *s
, uint32_t v
)
1140 snprintf(s
, ITEM_LABEL_LENGTH
, "%gs (%u)", pow(2, (double)v
), v
);
1143 static const true_false_string ulp_vertical_dir_val
= {
1149 ulp_RelativeTime_fmt(char *s
, uint32_t v
)
1151 snprintf(s
, ITEM_LABEL_LENGTH
, "%.2fs (%u)", 0.01*v
, v
);
1155 ulp_RSRP_Range_fmt(char *s
, uint32_t v
)
1158 snprintf(s
, ITEM_LABEL_LENGTH
, "RSRP < -140dBm (0)");
1159 } else if (v
== 97) {
1160 snprintf(s
, ITEM_LABEL_LENGTH
, "RSRP >= -44dBm (97)");
1162 snprintf(s
, ITEM_LABEL_LENGTH
, "%ddBm <= RSRP < %ddBm (%u)", -141+v
, -140+v
, v
);
1167 ulp_RSRQ_Range_fmt(char *s
, uint32_t v
)
1170 snprintf(s
, ITEM_LABEL_LENGTH
, "RSRQ < -19.5dB (0)");
1171 } else if (v
== 64) {
1172 snprintf(s
, ITEM_LABEL_LENGTH
, "RSRQ >= -3dB (34)");
1174 snprintf(s
, ITEM_LABEL_LENGTH
, "%.1fdB <= RSRQ < %.1fdB (%u)", -20+((float)v
/2), -19.5+((float)v
/2), v
);
1179 ulp_SignalDelta_fmt(char *s
, uint32_t v
)
1181 snprintf(s
, ITEM_LABEL_LENGTH
, "%sdB (%u)", v
? "0.5" : "0", v
);
1185 ulp_locationAccuracy_fmt(char *s
, uint32_t v
)
1187 snprintf(s
, ITEM_LABEL_LENGTH
, "%.1fm (%u)", 0.1*v
, v
);
1191 ulp_WimaxRTD_fmt(char *s
, uint32_t v
)
1193 snprintf(s
, ITEM_LABEL_LENGTH
, "%.2fus (%u)", 0.01*v
, v
);
1197 ulp_WimaxNMR_rssi_fmt(char *s
, uint32_t v
)
1199 snprintf(s
, ITEM_LABEL_LENGTH
, "%.2fdBm (%u)", -103.75+(0.25*v
), v
);
1203 ulp_UTRAN_gpsReferenceTimeUncertainty_fmt(char *s
, uint32_t v
)
1205 double uncertainty
= 0.0022*(pow(1.18, (double)v
)-1);
1207 snprintf(s
, ITEM_LABEL_LENGTH
, "%fus (%u)", uncertainty
, v
);
1210 static const value_string ulp_ganss_time_id_vals
[] = {
1219 ulp_utran_GANSSTimingOfCell_fmt(char *s
, uint32_t v
)
1221 snprintf(s
, ITEM_LABEL_LENGTH
, "%.2fus (%u)", 0.25*v
, v
);
1225 ulp_Coordinate_latitude_fmt(char *s
, uint32_t v
)
1227 snprintf(s
, ITEM_LABEL_LENGTH
, "%f degrees (%u)",
1228 ((float)v
/8388607.0)*90, v
);
1232 ulp_Coordinate_longitude_fmt(char *s
, uint32_t v
)
1234 int32_t longitude
= (int32_t) v
;
1236 snprintf(s
, ITEM_LABEL_LENGTH
, "%f degrees (%d)",
1237 ((float)longitude
/8388608.0)*180, longitude
);
1240 /* Include constants */
1241 #define maxReqLength 50
1242 #define maxClientLength 50
1243 #define maxNumGeoArea 32
1244 #define maxAreaId 256
1245 #define maxAreaIdList 32
1246 #define maxnumSessions 64
1248 #define maxGANSSSat 32
1249 #define maxCellMeas 32
1252 #define maxLidSize 64
1253 #define maxWLANApDataSize 128
1254 #define maxCellReport 8
1255 #define maxWimaxBSMeas 32
1256 #define maxNRServingCell 32
1257 #define maxCellReportNR 32
1261 uint8_t notif_enc_type
;
1262 uint8_t ganss_req_gen_data_ganss_id
;
1263 } ulp_private_data_t
;
1265 static ulp_private_data_t
* ulp_get_private_data(asn1_ctx_t
*actx
)
1267 if (actx
->private_data
== NULL
) {
1268 actx
->private_data
= wmem_new0(actx
->pinfo
->pool
, ulp_private_data_t
);
1270 return (ulp_private_data_t
*)actx
->private_data
;
1276 dissect_ulp_INTEGER_0_65535(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1277 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
1278 0U, 65535U, NULL
, false);
1286 dissect_ulp_INTEGER_0_255(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1287 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
1288 0U, 255U, NULL
, false);
1294 static const per_sequence_t Version_sequence
[] = {
1295 { &hf_ulp_maj
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_255
},
1296 { &hf_ulp_min
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_255
},
1297 { &hf_ulp_servind
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_255
},
1298 { NULL
, 0, 0, NULL
}
1302 dissect_ulp_Version(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1303 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
1304 ett_ulp_Version
, Version_sequence
);
1312 dissect_ulp_T_msisdn(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1313 tvbuff_t
*msisdn_tvb
;
1314 offset
= dissect_per_octet_string(tvb
, offset
, actx
, tree
, hf_index
,
1315 8, 8, false, &msisdn_tvb
);
1318 proto_tree
*subtree
;
1320 subtree
= proto_item_add_subtree(actx
->created_item
, ett_ulp_setid
);
1321 dissect_e164_msisdn(msisdn_tvb
, subtree
, 0, 8, E164_ENC_BCD
);
1331 dissect_ulp_T_mdn(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1333 offset
= dissect_per_octet_string(tvb
, offset
, actx
, tree
, hf_index
,
1334 8, 8, false, &mdn_tvb
);
1337 proto_tree
*subtree
;
1339 subtree
= proto_item_add_subtree(actx
->created_item
, ett_ulp_setid
);
1340 proto_tree_add_item(subtree
, hf_ulp_mobile_directory_number
, mdn_tvb
, 0, 8, ENC_BCD_DIGITS_0_9
|ENC_LITTLE_ENDIAN
);
1350 dissect_ulp_BIT_STRING_SIZE_34(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1351 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, hf_index
,
1352 34, 34, false, NULL
, 0, NULL
, NULL
);
1360 dissect_ulp_T_imsi(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1362 offset
= dissect_per_octet_string(tvb
, offset
, actx
, tree
, hf_index
,
1363 8, 8, false, &imsi_tvb
);
1366 proto_tree
*subtree
;
1368 subtree
= proto_item_add_subtree(actx
->created_item
, ett_ulp_setid
);
1369 dissect_e212_imsi(imsi_tvb
, actx
->pinfo
, subtree
, 0, 8, false);
1379 dissect_ulp_IA5String_SIZE_1_1000(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1380 offset
= dissect_per_IA5String(tvb
, offset
, actx
, tree
, hf_index
,
1390 dissect_ulp_OCTET_STRING_SIZE_4(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1391 offset
= dissect_per_octet_string(tvb
, offset
, actx
, tree
, hf_index
,
1400 dissect_ulp_OCTET_STRING_SIZE_16(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1401 offset
= dissect_per_octet_string(tvb
, offset
, actx
, tree
, hf_index
,
1402 16, 16, false, NULL
);
1408 static const value_string ulp_IPAddress_vals
[] = {
1409 { 0, "ipv4Address" },
1410 { 1, "ipv6Address" },
1414 static const per_choice_t IPAddress_choice
[] = {
1415 { 0, &hf_ulp_ipv4Address
, ASN1_NO_EXTENSIONS
, dissect_ulp_OCTET_STRING_SIZE_4
},
1416 { 1, &hf_ulp_ipv6Address
, ASN1_NO_EXTENSIONS
, dissect_ulp_OCTET_STRING_SIZE_16
},
1417 { 0, NULL
, 0, NULL
}
1421 dissect_ulp_IPAddress(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1422 offset
= dissect_per_choice(tvb
, offset
, actx
, tree
, hf_index
,
1423 ett_ulp_IPAddress
, IPAddress_choice
,
1432 dissect_ulp_OCTET_STRING_SIZE_8(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1433 offset
= dissect_per_octet_string(tvb
, offset
, actx
, tree
, hf_index
,
1440 static const value_string ulp_SETId_vals
[] = {
1451 static const per_choice_t SETId_choice
[] = {
1452 { 0, &hf_ulp_msisdn
, ASN1_EXTENSION_ROOT
, dissect_ulp_T_msisdn
},
1453 { 1, &hf_ulp_mdn
, ASN1_EXTENSION_ROOT
, dissect_ulp_T_mdn
},
1454 { 2, &hf_ulp_minsi
, ASN1_EXTENSION_ROOT
, dissect_ulp_BIT_STRING_SIZE_34
},
1455 { 3, &hf_ulp_imsi
, ASN1_EXTENSION_ROOT
, dissect_ulp_T_imsi
},
1456 { 4, &hf_ulp_nai
, ASN1_EXTENSION_ROOT
, dissect_ulp_IA5String_SIZE_1_1000
},
1457 { 5, &hf_ulp_iPAddress
, ASN1_EXTENSION_ROOT
, dissect_ulp_IPAddress
},
1458 { 6, &hf_ulp_ver2_imei
, ASN1_NOT_EXTENSION_ROOT
, dissect_ulp_OCTET_STRING_SIZE_8
},
1459 { 0, NULL
, 0, NULL
}
1463 dissect_ulp_SETId(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1464 offset
= dissect_per_choice(tvb
, offset
, actx
, tree
, hf_index
,
1465 ett_ulp_SETId
, SETId_choice
,
1472 static const per_sequence_t SetSessionID_sequence
[] = {
1473 { &hf_ulp_sessionId
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_65535
},
1474 { &hf_ulp_setId
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_SETId
},
1475 { NULL
, 0, 0, NULL
}
1479 dissect_ulp_SetSessionID(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1480 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
1481 ett_ulp_SetSessionID
, SetSessionID_sequence
);
1489 dissect_ulp_FQDN(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1490 offset
= dissect_per_restricted_character_string(tvb
, offset
, actx
, tree
, hf_index
,
1491 1, 255, false, "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.-", 64,
1498 static const value_string ulp_SLPAddress_vals
[] = {
1504 static const per_choice_t SLPAddress_choice
[] = {
1505 { 0, &hf_ulp_iPAddress
, ASN1_EXTENSION_ROOT
, dissect_ulp_IPAddress
},
1506 { 1, &hf_ulp_fqdn
, ASN1_EXTENSION_ROOT
, dissect_ulp_FQDN
},
1507 { 0, NULL
, 0, NULL
}
1511 dissect_ulp_SLPAddress(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1512 offset
= dissect_per_choice(tvb
, offset
, actx
, tree
, hf_index
,
1513 ett_ulp_SLPAddress
, SLPAddress_choice
,
1520 static const per_sequence_t SlpSessionID_sequence
[] = {
1521 { &hf_ulp_sessionSlpID
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_OCTET_STRING_SIZE_4
},
1522 { &hf_ulp_slpId
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_SLPAddress
},
1523 { NULL
, 0, 0, NULL
}
1527 dissect_ulp_SlpSessionID(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1528 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
1529 ett_ulp_SlpSessionID
, SlpSessionID_sequence
);
1535 static const per_sequence_t SessionID_sequence
[] = {
1536 { &hf_ulp_setSessionID
, ASN1_NO_EXTENSIONS
, ASN1_OPTIONAL
, dissect_ulp_SetSessionID
},
1537 { &hf_ulp_slpSessionID
, ASN1_NO_EXTENSIONS
, ASN1_OPTIONAL
, dissect_ulp_SlpSessionID
},
1538 { NULL
, 0, 0, NULL
}
1542 dissect_ulp_SessionID(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1543 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
1544 ett_ulp_SessionID
, SessionID_sequence
);
1550 static const value_string ulp_PosMethod_vals
[] = {
1551 { 0, "agpsSETassisted" },
1552 { 1, "agpsSETbased" },
1553 { 2, "agpsSETassistedpref" },
1554 { 3, "agpsSETbasedpref" },
1555 { 4, "autonomousGPS" },
1560 { 9, "noPosition" },
1561 { 10, "ver2-historicalDataRetrieval" },
1562 { 11, "ver2-agnssSETassisted" },
1563 { 12, "ver2-agnssSETbased" },
1564 { 13, "ver2-agnssSETassistedpref" },
1565 { 14, "ver2-agnssSETbasedpref" },
1566 { 15, "ver2-autonomousGNSS" },
1567 { 16, "ver2-sessioninfoquery" },
1574 dissect_ulp_PosMethod(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1575 offset
= dissect_per_enumerated(tvb
, offset
, actx
, tree
, hf_index
,
1576 10, NULL
, true, 8, NULL
);
1582 static const value_string ulp_NotificationType_vals
[] = {
1583 { 0, "noNotificationNoVerification" },
1584 { 1, "notificationOnly" },
1585 { 2, "notificationAndVerficationAllowedNA" },
1586 { 3, "notificationAndVerficationDeniedNA" },
1587 { 4, "privacyOverride" },
1593 dissect_ulp_NotificationType(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1594 offset
= dissect_per_enumerated(tvb
, offset
, actx
, tree
, hf_index
,
1595 5, NULL
, true, 0, NULL
);
1601 static const value_string ulp_EncodingType_vals
[] = {
1603 { 1, "gsmDefault" },
1610 dissect_ulp_EncodingType(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1612 ulp_private_data_t
*ulp_priv
= ulp_get_private_data(actx
);
1614 offset
= dissect_per_enumerated(tvb
, offset
, actx
, tree
, hf_index
,
1615 3, &val
, true, 0, NULL
);
1617 ulp_priv
->notif_enc_type
= (uint8_t) val
;
1626 dissect_ulp_T_requestorId(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1629 offset
= dissect_per_octet_string(tvb
, offset
, actx
, tree
, -1,
1630 1, maxReqLength
, false, &val_tvb
);
1633 ulp_private_data_t
*ulp_priv
= ulp_get_private_data(actx
);
1634 switch(ulp_priv
->notif_enc_type
) {
1636 actx
->created_item
= proto_tree_add_item(tree
, hf_index
, val_tvb
, 0,
1637 tvb_reported_length(val_tvb
),
1638 ENC_UCS_2
|ENC_BIG_ENDIAN
);
1640 case 1: /* GSM 7bits */
1641 actx
->created_item
= proto_tree_add_item(tree
, hf_index
, val_tvb
, 0,
1642 tvb_reported_length(val_tvb
), ENC_3GPP_TS_23_038_7BITS
|ENC_NA
);
1645 actx
->created_item
= proto_tree_add_item(tree
, hf_index
, val_tvb
, 0,
1646 tvb_reported_length(val_tvb
), ENC_UTF_8
|ENC_NA
);
1649 actx
->created_item
= proto_tree_add_string(tree
, hf_index
, val_tvb
, 0,
1650 tvb_reported_length(val_tvb
),
1651 tvb_bytes_to_str(actx
->pinfo
->pool
, val_tvb
, 0,
1652 tvb_reported_length(val_tvb
)));
1662 static const value_string ulp_FormatIndicator_vals
[] = {
1663 { 0, "logicalName" },
1664 { 1, "e-mailAddress" },
1670 { 7, "iMSPublicidentity" },
1676 dissect_ulp_FormatIndicator(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1677 offset
= dissect_per_enumerated(tvb
, offset
, actx
, tree
, hf_index
,
1678 8, NULL
, true, 0, NULL
);
1686 dissect_ulp_T_clientName(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1689 offset
= dissect_per_octet_string(tvb
, offset
, actx
, tree
, -1,
1690 1, maxClientLength
, false, &val_tvb
);
1693 ulp_private_data_t
*ulp_priv
= ulp_get_private_data(actx
);
1694 switch(ulp_priv
->notif_enc_type
) {
1696 actx
->created_item
= proto_tree_add_item(tree
, hf_index
, val_tvb
, 0,
1697 tvb_reported_length(val_tvb
),
1698 ENC_UCS_2
|ENC_BIG_ENDIAN
);
1700 case 1: /* GSM 7bits */
1701 actx
->created_item
= proto_tree_add_item(tree
, hf_index
, val_tvb
, 0,
1702 tvb_reported_length(val_tvb
), ENC_3GPP_TS_23_038_7BITS
|ENC_NA
);
1705 actx
->created_item
= proto_tree_add_item(tree
, hf_index
, val_tvb
, 0,
1706 tvb_reported_length(val_tvb
), ENC_UTF_8
|ENC_NA
);
1709 actx
->created_item
= proto_tree_add_string(tree
, hf_index
, val_tvb
, 0,
1710 tvb_reported_length(val_tvb
),
1711 tvb_bytes_to_str(actx
->pinfo
->pool
, val_tvb
, 0,
1712 tvb_reported_length(val_tvb
)));
1724 dissect_ulp_NULL(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1725 offset
= dissect_per_null(tvb
, offset
, actx
, tree
, hf_index
);
1731 static const per_sequence_t Ver2_Notification_extension_sequence
[] = {
1732 { &hf_ulp_emergencyCallLocation
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_NULL
},
1733 { NULL
, 0, 0, NULL
}
1737 dissect_ulp_Ver2_Notification_extension(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1738 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
1739 ett_ulp_Ver2_Notification_extension
, Ver2_Notification_extension_sequence
);
1745 static const per_sequence_t Notification_sequence
[] = {
1746 { &hf_ulp_notificationType
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_NotificationType
},
1747 { &hf_ulp_encodingType
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_EncodingType
},
1748 { &hf_ulp_requestorId
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_T_requestorId
},
1749 { &hf_ulp_requestorIdType
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_FormatIndicator
},
1750 { &hf_ulp_clientName
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_T_clientName
},
1751 { &hf_ulp_clientNameType
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_FormatIndicator
},
1752 { &hf_ulp_ver2_Notification_extension
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_Ver2_Notification_extension
},
1753 { NULL
, 0, 0, NULL
}
1757 dissect_ulp_Notification(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1758 ulp_private_data_t
*ulp_priv
= ulp_get_private_data(actx
);
1760 ulp_priv
->notif_enc_type
= -1;
1761 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
1762 ett_ulp_Notification
, Notification_sequence
);
1772 dissect_ulp_INTEGER_0_127(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1773 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
1774 0U, 127U, NULL
, false);
1782 dissect_ulp_INTEGER_0_7(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1783 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
1784 0U, 7U, NULL
, false);
1792 dissect_ulp_INTEGER_1_128(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1793 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
1794 1U, 128U, NULL
, false);
1800 static const per_sequence_t QoP_sequence
[] = {
1801 { &hf_ulp_horacc
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_127
},
1802 { &hf_ulp_veracc
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_127
},
1803 { &hf_ulp_maxLocAge
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_65535
},
1804 { &hf_ulp_delay
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_7
},
1805 { &hf_ulp_ver2_responseTime
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_1_128
},
1806 { NULL
, 0, 0, NULL
}
1810 dissect_ulp_QoP(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1811 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
1812 ett_ulp_QoP
, QoP_sequence
);
1818 static const value_string ulp_SLPMode_vals
[] = {
1826 dissect_ulp_SLPMode(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1827 offset
= dissect_per_enumerated(tvb
, offset
, actx
, tree
, hf_index
,
1828 2, NULL
, false, 0, NULL
);
1836 dissect_ulp_MAC(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1837 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, hf_index
,
1838 64, 64, false, NULL
, 0, NULL
, NULL
);
1846 dissect_ulp_KeyIdentity(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1847 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, hf_index
,
1848 128, 128, false, NULL
, 0, NULL
, NULL
);
1854 static const value_string ulp_NotificationMode_vals
[] = {
1856 { 1, "basedOnLocation" },
1862 dissect_ulp_NotificationMode(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1863 offset
= dissect_per_enumerated(tvb
, offset
, actx
, tree
, hf_index
,
1864 2, NULL
, true, 0, NULL
);
1872 dissect_ulp_BOOLEAN(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1873 offset
= dissect_per_boolean(tvb
, offset
, actx
, tree
, hf_index
, NULL
);
1879 static const per_sequence_t SupportedWLANInfo_sequence
[] = {
1880 { &hf_ulp_apTP
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
1881 { &hf_ulp_apAG
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
1882 { &hf_ulp_apSN
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
1883 { &hf_ulp_apDevType
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
1884 { &hf_ulp_apRSSI
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
1885 { &hf_ulp_apChanFreq
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
1886 { &hf_ulp_apRTD
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
1887 { &hf_ulp_setTP
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
1888 { &hf_ulp_setAG
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
1889 { &hf_ulp_setSN
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
1890 { &hf_ulp_setRSSI
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
1891 { &hf_ulp_apRepLoc
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
1892 { &hf_ulp_apRL
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_BOOLEAN
},
1893 { &hf_ulp_opClass
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_BOOLEAN
},
1894 { &hf_ulp_apSSID
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_BOOLEAN
},
1895 { &hf_ulp_apPHYType
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_BOOLEAN
},
1896 { &hf_ulp_setMACAddress
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_BOOLEAN
},
1897 { NULL
, 0, 0, NULL
}
1901 dissect_ulp_SupportedWLANInfo(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1902 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
1903 ett_ulp_SupportedWLANInfo
, SupportedWLANInfo_sequence
);
1911 dissect_ulp_T_apMACAddress_01(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1914 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, -1,
1915 48, 48, false, NULL
, 0, &val_tvb
, NULL
);
1918 proto_tree_add_item(tree
, hf_index
, val_tvb
, 0, 6, ENC_NA
);
1926 static const value_string ulp_T_apDevType_vals
[] = {
1927 { 0, "wlan802-11a" },
1928 { 1, "wlan802-11b" },
1929 { 2, "wlan802-11g" },
1935 dissect_ulp_T_apDevType(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1936 offset
= dissect_per_enumerated(tvb
, offset
, actx
, tree
, hf_index
,
1937 3, NULL
, true, 0, NULL
);
1943 static const per_sequence_t SupportedWLANApData_sequence
[] = {
1944 { &hf_ulp_apMACAddress_01
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_T_apMACAddress_01
},
1945 { &hf_ulp_apDevType_01
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_T_apDevType
},
1946 { NULL
, 0, 0, NULL
}
1950 dissect_ulp_SupportedWLANApData(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1951 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
1952 ett_ulp_SupportedWLANApData
, SupportedWLANApData_sequence
);
1958 static const per_sequence_t SEQUENCE_SIZE_1_maxWLANApDataSize_OF_SupportedWLANApData_sequence_of
[1] = {
1959 { &hf_ulp_supportedWLANApDataList_item
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_SupportedWLANApData
},
1963 dissect_ulp_SEQUENCE_SIZE_1_maxWLANApDataSize_OF_SupportedWLANApData(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1964 offset
= dissect_per_constrained_sequence_of(tvb
, offset
, actx
, tree
, hf_index
,
1965 ett_ulp_SEQUENCE_SIZE_1_maxWLANApDataSize_OF_SupportedWLANApData
, SEQUENCE_SIZE_1_maxWLANApDataSize_OF_SupportedWLANApData_sequence_of
,
1966 1, maxWLANApDataSize
, false);
1972 static const per_sequence_t SupportedWLANApsChannel11a_sequence
[] = {
1973 { &hf_ulp_ch34
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
1974 { &hf_ulp_ch36
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
1975 { &hf_ulp_ch38
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
1976 { &hf_ulp_ch40
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
1977 { &hf_ulp_ch42
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
1978 { &hf_ulp_ch44
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
1979 { &hf_ulp_ch46
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
1980 { &hf_ulp_ch48
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
1981 { &hf_ulp_ch52
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
1982 { &hf_ulp_ch56
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
1983 { &hf_ulp_ch60
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
1984 { &hf_ulp_ch64
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
1985 { &hf_ulp_ch149
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
1986 { &hf_ulp_ch153
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
1987 { &hf_ulp_ch157
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
1988 { &hf_ulp_ch161
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
1989 { NULL
, 0, 0, NULL
}
1993 dissect_ulp_SupportedWLANApsChannel11a(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
1994 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
1995 ett_ulp_SupportedWLANApsChannel11a
, SupportedWLANApsChannel11a_sequence
);
2001 static const per_sequence_t SupportedWLANApsChannel11bg_sequence
[] = {
2002 { &hf_ulp_ch1
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2003 { &hf_ulp_ch2
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2004 { &hf_ulp_ch3
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2005 { &hf_ulp_ch4
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2006 { &hf_ulp_ch5
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2007 { &hf_ulp_ch6
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2008 { &hf_ulp_ch7
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2009 { &hf_ulp_ch8
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2010 { &hf_ulp_ch9
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2011 { &hf_ulp_ch10
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2012 { &hf_ulp_ch11
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2013 { &hf_ulp_ch12
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2014 { &hf_ulp_ch13
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2015 { &hf_ulp_ch14
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2016 { NULL
, 0, 0, NULL
}
2020 dissect_ulp_SupportedWLANApsChannel11bg(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2021 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2022 ett_ulp_SupportedWLANApsChannel11bg
, SupportedWLANApsChannel11bg_sequence
);
2028 static const per_sequence_t SupportedWLANApsList_sequence
[] = {
2029 { &hf_ulp_supportedWLANApDataList
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_SEQUENCE_SIZE_1_maxWLANApDataSize_OF_SupportedWLANApData
},
2030 { &hf_ulp_supportedWLANapsChannel11a
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_SupportedWLANApsChannel11a
},
2031 { &hf_ulp_supportedWLANapsChannel11bg
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_SupportedWLANApsChannel11bg
},
2032 { NULL
, 0, 0, NULL
}
2036 dissect_ulp_SupportedWLANApsList(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2037 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2038 ett_ulp_SupportedWLANApsList
, SupportedWLANApsList_sequence
);
2044 static const per_sequence_t SupportedWCDMAInfo_sequence
[] = {
2045 { &hf_ulp_mrl
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2046 { NULL
, 0, 0, NULL
}
2050 dissect_ulp_SupportedWCDMAInfo(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2051 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2052 ett_ulp_SupportedWCDMAInfo
, SupportedWCDMAInfo_sequence
);
2058 static const per_sequence_t SupportedNetworkInformation_sequence
[] = {
2059 { &hf_ulp_wlan
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2060 { &hf_ulp_supportedWLANInfo
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_SupportedWLANInfo
},
2061 { &hf_ulp_supportedWLANApsList
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_SupportedWLANApsList
},
2062 { &hf_ulp_gsm
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2063 { &hf_ulp_wcdma
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2064 { &hf_ulp_supportedWCDMAInfo
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_SupportedWCDMAInfo
},
2065 { &hf_ulp_cdma
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2066 { &hf_ulp_hrdp
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2067 { &hf_ulp_umb
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2068 { &hf_ulp_lte
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2069 { &hf_ulp_wimax
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2070 { &hf_ulp_historic
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2071 { &hf_ulp_nonServing
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2072 { &hf_ulp_uTRANGPSReferenceTime
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2073 { &hf_ulp_uTRANGANSSReferenceTime
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2074 { &hf_ulp_nr
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_BOOLEAN
},
2075 { NULL
, 0, 0, NULL
}
2079 dissect_ulp_SupportedNetworkInformation(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2080 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2081 ett_ulp_SupportedNetworkInformation
, SupportedNetworkInformation_sequence
);
2087 static const value_string ulp_TriggerType_vals
[] = {
2095 dissect_ulp_TriggerType(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2096 offset
= dissect_per_enumerated(tvb
, offset
, actx
, tree
, hf_index
,
2097 2, NULL
, true, 0, NULL
);
2103 static const value_string ulp_AllowedReportingType_vals
[] = {
2104 { 0, "positionsOnly" },
2105 { 1, "measurementsOnly" },
2106 { 2, "positionsAndMeasurements" },
2112 dissect_ulp_AllowedReportingType(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2113 offset
= dissect_per_enumerated(tvb
, offset
, actx
, tree
, hf_index
,
2114 3, NULL
, true, 0, NULL
);
2122 dissect_ulp_INTEGER_M525600_M1(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2123 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
2124 -525600, -1, NULL
, false);
2132 dissect_ulp_INTEGER_M525599_0(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2133 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
2134 -525599, 0U, NULL
, false);
2140 static const per_sequence_t TimeWindow_sequence
[] = {
2141 { &hf_ulp_startTime_01
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_M525600_M1
},
2142 { &hf_ulp_stopTime_01
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_M525599_0
},
2143 { NULL
, 0, 0, NULL
}
2147 dissect_ulp_TimeWindow(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2148 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2149 ett_ulp_TimeWindow
, TimeWindow_sequence
);
2157 dissect_ulp_INTEGER_1_65536(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2158 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
2159 1U, 65536U, NULL
, false);
2167 dissect_ulp_INTEGER_1_86400(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2168 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
2169 1U, 86400U, NULL
, false);
2175 static const per_sequence_t ReportingCriteria_sequence
[] = {
2176 { &hf_ulp_timeWindow
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_TimeWindow
},
2177 { &hf_ulp_maxNumberofReports
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_1_65536
},
2178 { &hf_ulp_minTimeInterval
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_1_86400
},
2179 { NULL
, 0, 0, NULL
}
2183 dissect_ulp_ReportingCriteria(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2184 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2185 ett_ulp_ReportingCriteria
, ReportingCriteria_sequence
);
2191 static const per_sequence_t HistoricReporting_sequence
[] = {
2192 { &hf_ulp_allowedReportingType
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_AllowedReportingType
},
2193 { &hf_ulp_reportingCriteria
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_ReportingCriteria
},
2194 { NULL
, 0, 0, NULL
}
2198 dissect_ulp_HistoricReporting(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2199 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2200 ett_ulp_HistoricReporting
, HistoricReporting_sequence
);
2206 static const value_string ulp_ProtLevel_vals
[] = {
2207 { 0, "nullProtection" },
2208 { 1, "basicProtection" },
2214 dissect_ulp_ProtLevel(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2215 offset
= dissect_per_enumerated(tvb
, offset
, actx
, tree
, hf_index
,
2216 2, NULL
, true, 0, NULL
);
2224 dissect_ulp_BIT_STRING_SIZE_32(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2225 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, hf_index
,
2226 32, 32, false, NULL
, 0, NULL
, NULL
);
2232 static const per_sequence_t BasicProtectionParams_sequence
[] = {
2233 { &hf_ulp_keyIdentifier
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_OCTET_STRING_SIZE_8
},
2234 { &hf_ulp_basicReplayCounter
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_65535
},
2235 { &hf_ulp_basicMAC
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BIT_STRING_SIZE_32
},
2236 { NULL
, 0, 0, NULL
}
2240 dissect_ulp_BasicProtectionParams(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2241 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2242 ett_ulp_BasicProtectionParams
, BasicProtectionParams_sequence
);
2248 static const per_sequence_t ProtectionLevel_sequence
[] = {
2249 { &hf_ulp_protlevel
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_ProtLevel
},
2250 { &hf_ulp_basicProtectionParams
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_BasicProtectionParams
},
2251 { NULL
, 0, 0, NULL
}
2255 dissect_ulp_ProtectionLevel(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2256 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2257 ett_ulp_ProtectionLevel
, ProtectionLevel_sequence
);
2263 static const per_sequence_t GNSSPosTechnology_sequence
[] = {
2264 { &hf_ulp_gps
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2265 { &hf_ulp_galileo
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2266 { &hf_ulp_sbas
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2267 { &hf_ulp_modernized_gps
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2268 { &hf_ulp_qzss
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2269 { &hf_ulp_glonass
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2270 { &hf_ulp_bds
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_BOOLEAN
},
2271 { &hf_ulp_rtk_osr
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_BOOLEAN
},
2272 { NULL
, 0, 0, NULL
}
2276 dissect_ulp_GNSSPosTechnology(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2277 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2278 ett_ulp_GNSSPosTechnology
, GNSSPosTechnology_sequence
);
2284 static const per_sequence_t Ver2_SUPL_INIT_extension_sequence
[] = {
2285 { &hf_ulp_notificationMode
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_NotificationMode
},
2286 { &hf_ulp_supportedNetworkInformation
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_SupportedNetworkInformation
},
2287 { &hf_ulp_triggerType
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_TriggerType
},
2288 { &hf_ulp_e_SLPAddress
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_SLPAddress
},
2289 { &hf_ulp_historicReporting
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_HistoricReporting
},
2290 { &hf_ulp_protectionLevel
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_ProtectionLevel
},
2291 { &hf_ulp_gnssPosTechnology
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_GNSSPosTechnology
},
2292 { &hf_ulp_minimumMajorVersion
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_255
},
2293 { NULL
, 0, 0, NULL
}
2297 dissect_ulp_Ver2_SUPL_INIT_extension(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2298 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2299 ett_ulp_Ver2_SUPL_INIT_extension
, Ver2_SUPL_INIT_extension_sequence
);
2305 static const per_sequence_t SUPLINIT_sequence
[] = {
2306 { &hf_ulp_posMethod
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_PosMethod
},
2307 { &hf_ulp_notification
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_Notification
},
2308 { &hf_ulp_sLPAddress
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_SLPAddress
},
2309 { &hf_ulp_qoP
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_QoP
},
2310 { &hf_ulp_sLPMode
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_SLPMode
},
2311 { &hf_ulp_mac
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_MAC
},
2312 { &hf_ulp_keyIdentity
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_KeyIdentity
},
2313 { &hf_ulp_ver2_SUPL_INIT_extension
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_Ver2_SUPL_INIT_extension
},
2314 { NULL
, 0, 0, NULL
}
2318 dissect_ulp_SUPLINIT(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2319 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2320 ett_ulp_SUPLINIT
, SUPLINIT_sequence
);
2328 dissect_ulp_INTEGER_0_15(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2329 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
2330 0U, 15U, NULL
, false);
2338 dissect_ulp_T_ganssSBASid(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2341 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, -1,
2342 3, 3, false, NULL
, 0, &val_tvb
, NULL
);
2345 proto_tree_add_bits_item(tree
, hf_index
, val_tvb
, 0, 3, ENC_NA
);
2353 static const per_sequence_t GANSSPositioningMethodTypes_sequence
[] = {
2354 { &hf_ulp_setAssisted
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2355 { &hf_ulp_setBased
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2356 { &hf_ulp_autonomous
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2357 { NULL
, 0, 0, NULL
}
2361 dissect_ulp_GANSSPositioningMethodTypes(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2362 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2363 ett_ulp_GANSSPositioningMethodTypes
, GANSSPositioningMethodTypes_sequence
);
2369 static int * const GANSSSignals_bits
[] = {
2370 &hf_ulp_GANSSSignals_signal1
,
2371 &hf_ulp_GANSSSignals_signal2
,
2372 &hf_ulp_GANSSSignals_signal3
,
2373 &hf_ulp_GANSSSignals_signal4
,
2374 &hf_ulp_GANSSSignals_signal5
,
2375 &hf_ulp_GANSSSignals_signal6
,
2376 &hf_ulp_GANSSSignals_signal7
,
2377 &hf_ulp_GANSSSignals_signal8
,
2382 dissect_ulp_GANSSSignals(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2383 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, hf_index
,
2384 1, 8, false, GANSSSignals_bits
, 8, NULL
, NULL
);
2390 static const per_sequence_t RTK_sequence
[] = {
2391 { &hf_ulp_osr
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2392 { NULL
, 0, 0, NULL
}
2396 dissect_ulp_RTK(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2397 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2398 ett_ulp_RTK
, RTK_sequence
);
2404 static const per_sequence_t GANSSPositionMethod_sequence
[] = {
2405 { &hf_ulp_ganssId
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_15
},
2406 { &hf_ulp_ganssSBASid
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_T_ganssSBASid
},
2407 { &hf_ulp_gANSSPositioningMethodTypes
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_GANSSPositioningMethodTypes
},
2408 { &hf_ulp_gANSSSignals
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_GANSSSignals
},
2409 { &hf_ulp_rtk
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_RTK
},
2410 { NULL
, 0, 0, NULL
}
2414 dissect_ulp_GANSSPositionMethod(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2415 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2416 ett_ulp_GANSSPositionMethod
, GANSSPositionMethod_sequence
);
2422 static const per_sequence_t GANSSPositionMethods_sequence_of
[1] = {
2423 { &hf_ulp_GANSSPositionMethods_item
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_GANSSPositionMethod
},
2427 dissect_ulp_GANSSPositionMethods(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2428 offset
= dissect_per_constrained_sequence_of(tvb
, offset
, actx
, tree
, hf_index
,
2429 ett_ulp_GANSSPositionMethods
, GANSSPositionMethods_sequence_of
,
2436 static const value_string ulp_T_addPosID_vals
[] = {
2443 dissect_ulp_T_addPosID(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2444 offset
= dissect_per_enumerated(tvb
, offset
, actx
, tree
, hf_index
,
2445 1, NULL
, true, 0, NULL
);
2451 static int * const T_addPosMode_bits
[] = {
2452 &hf_ulp_T_addPosMode_standalone
,
2453 &hf_ulp_T_addPosMode_setBased
,
2454 &hf_ulp_T_addPosMode_setAssisted
,
2459 dissect_ulp_T_addPosMode(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2460 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, hf_index
,
2461 1, 8, false, T_addPosMode_bits
, 3, NULL
, NULL
);
2467 static const per_sequence_t AddPosSupport_Element_sequence
[] = {
2468 { &hf_ulp_addPosID
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_T_addPosID
},
2469 { &hf_ulp_addPosMode
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_T_addPosMode
},
2470 { NULL
, 0, 0, NULL
}
2474 dissect_ulp_AddPosSupport_Element(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2475 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2476 ett_ulp_AddPosSupport_Element
, AddPosSupport_Element_sequence
);
2482 static const per_sequence_t AdditionalPositioningMethods_sequence_of
[1] = {
2483 { &hf_ulp_AdditionalPositioningMethods_item
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_AddPosSupport_Element
},
2487 dissect_ulp_AdditionalPositioningMethods(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2488 offset
= dissect_per_constrained_sequence_of(tvb
, offset
, actx
, tree
, hf_index
,
2489 ett_ulp_AdditionalPositioningMethods
, AdditionalPositioningMethods_sequence_of
,
2496 static const per_sequence_t Ver2_PosTechnology_extension_sequence
[] = {
2497 { &hf_ulp_gANSSPositionMethods
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_GANSSPositionMethods
},
2498 { &hf_ulp_additionalPositioningMethods
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_AdditionalPositioningMethods
},
2499 { NULL
, 0, 0, NULL
}
2503 dissect_ulp_Ver2_PosTechnology_extension(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2504 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2505 ett_ulp_Ver2_PosTechnology_extension
, Ver2_PosTechnology_extension_sequence
);
2511 static const per_sequence_t PosTechnology_sequence
[] = {
2512 { &hf_ulp_agpsSETassisted
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2513 { &hf_ulp_agpsSETBased
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2514 { &hf_ulp_autonomousGPS
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2515 { &hf_ulp_aflt
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2516 { &hf_ulp_ecid
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2517 { &hf_ulp_eotd
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2518 { &hf_ulp_otdoa
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2519 { &hf_ulp_ver2_PosTechnology_extension
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_Ver2_PosTechnology_extension
},
2520 { NULL
, 0, 0, NULL
}
2524 dissect_ulp_PosTechnology(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2525 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2526 ett_ulp_PosTechnology
, PosTechnology_sequence
);
2532 static const value_string ulp_PrefMethod_vals
[] = {
2533 { 0, "agpsSETassistedPreferred" },
2534 { 1, "agpsSETBasedPreferred" },
2535 { 2, "noPreference" },
2541 dissect_ulp_PrefMethod(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2542 offset
= dissect_per_enumerated(tvb
, offset
, actx
, tree
, hf_index
,
2543 3, NULL
, false, 0, NULL
);
2549 static const per_sequence_t PosProtocolVersion3GPP_sequence
[] = {
2550 { &hf_ulp_majorVersionField
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_255
},
2551 { &hf_ulp_technicalVersionField
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_255
},
2552 { &hf_ulp_editorialVersionField
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_255
},
2553 { NULL
, 0, 0, NULL
}
2557 dissect_ulp_PosProtocolVersion3GPP(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2558 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2559 ett_ulp_PosProtocolVersion3GPP
, PosProtocolVersion3GPP_sequence
);
2567 dissect_ulp_BIT_STRING_SIZE_6(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2568 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, hf_index
,
2569 6, 6, false, NULL
, 0, NULL
, NULL
);
2575 static const per_sequence_t Supported3GPP2PosProtocolVersion_sequence
[] = {
2576 { &hf_ulp_revisionNumber
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BIT_STRING_SIZE_6
},
2577 { &hf_ulp_pointReleaseNumber
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_255
},
2578 { &hf_ulp_internalEditLevel
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_255
},
2579 { NULL
, 0, 0, NULL
}
2583 dissect_ulp_Supported3GPP2PosProtocolVersion(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2584 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2585 ett_ulp_Supported3GPP2PosProtocolVersion
, Supported3GPP2PosProtocolVersion_sequence
);
2591 static const per_sequence_t PosProtocolVersion3GPP2_sequence_of
[1] = {
2592 { &hf_ulp_PosProtocolVersion3GPP2_item
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_Supported3GPP2PosProtocolVersion
},
2596 dissect_ulp_PosProtocolVersion3GPP2(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2597 offset
= dissect_per_constrained_sequence_of(tvb
, offset
, actx
, tree
, hf_index
,
2598 ett_ulp_PosProtocolVersion3GPP2
, PosProtocolVersion3GPP2_sequence_of
,
2605 static const per_sequence_t PosProtocolVersionOMA_sequence
[] = {
2606 { &hf_ulp_majorVersionField
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_255
},
2607 { &hf_ulp_minorVersionField
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_255
},
2608 { NULL
, 0, 0, NULL
}
2612 dissect_ulp_PosProtocolVersionOMA(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2613 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2614 ett_ulp_PosProtocolVersionOMA
, PosProtocolVersionOMA_sequence
);
2620 static const per_sequence_t Ver2_PosProtocol_extension_sequence
[] = {
2621 { &hf_ulp_lpp
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2622 { &hf_ulp_posProtocolVersionRRLP
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_PosProtocolVersion3GPP
},
2623 { &hf_ulp_posProtocolVersionRRC
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_PosProtocolVersion3GPP
},
2624 { &hf_ulp_posProtocolVersionTIA801
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_PosProtocolVersion3GPP2
},
2625 { &hf_ulp_posProtocolVersionLPP
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_PosProtocolVersion3GPP
},
2626 { &hf_ulp_lppe
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_BOOLEAN
},
2627 { &hf_ulp_posProtocolVersionLPPe
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_PosProtocolVersionOMA
},
2628 { NULL
, 0, 0, NULL
}
2632 dissect_ulp_Ver2_PosProtocol_extension(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2633 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2634 ett_ulp_Ver2_PosProtocol_extension
, Ver2_PosProtocol_extension_sequence
);
2640 static const per_sequence_t PosProtocol_sequence
[] = {
2641 { &hf_ulp_tia801
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2642 { &hf_ulp_rrlp
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2643 { &hf_ulp_rrc
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2644 { &hf_ulp_ver2_PosProtocol_extension
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_Ver2_PosProtocol_extension
},
2645 { NULL
, 0, 0, NULL
}
2649 dissect_ulp_PosProtocol(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2650 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2651 ett_ulp_PosProtocol
, PosProtocol_sequence
);
2657 static const per_sequence_t ServicesSupported_sequence
[] = {
2658 { &hf_ulp_periodicTrigger
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2659 { &hf_ulp_areaEventTrigger
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2660 { NULL
, 0, 0, NULL
}
2664 dissect_ulp_ServicesSupported(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2665 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2666 ett_ulp_ServicesSupported
, ServicesSupported_sequence
);
2674 dissect_ulp_INTEGER_1_3600(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2675 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
2676 1U, 3600U, NULL
, false);
2684 dissect_ulp_INTEGER_1_1440(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2685 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
2686 1U, 1440U, NULL
, false);
2692 static const per_sequence_t RepMode_sequence
[] = {
2693 { &hf_ulp_realtime
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2694 { &hf_ulp_quasirealtime
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2695 { &hf_ulp_batch
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2696 { NULL
, 0, 0, NULL
}
2700 dissect_ulp_RepMode(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2701 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2702 ett_ulp_RepMode
, RepMode_sequence
);
2710 dissect_ulp_INTEGER_1_1024(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2711 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
2712 1U, 1024U, NULL
, false);
2718 static const per_sequence_t BatchRepCap_sequence
[] = {
2719 { &hf_ulp_report_position
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2720 { &hf_ulp_report_measurements
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2721 { &hf_ulp_max_num_positions
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_1_1024
},
2722 { &hf_ulp_max_num_measurements
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_1_1024
},
2723 { NULL
, 0, 0, NULL
}
2727 dissect_ulp_BatchRepCap(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2728 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2729 ett_ulp_BatchRepCap
, BatchRepCap_sequence
);
2735 static const per_sequence_t ReportingCap_sequence
[] = {
2736 { &hf_ulp_minInt
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_1_3600
},
2737 { &hf_ulp_maxInt
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_1_1440
},
2738 { &hf_ulp_repMode_01
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_RepMode
},
2739 { &hf_ulp_batchRepCap
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_BatchRepCap
},
2740 { NULL
, 0, 0, NULL
}
2744 dissect_ulp_ReportingCap(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2745 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2746 ett_ulp_ReportingCap
, ReportingCap_sequence
);
2752 static const per_sequence_t GeoAreaShapesSupported_sequence
[] = {
2753 { &hf_ulp_ellipticalArea_01
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2754 { &hf_ulp_polygonArea_01
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2755 { NULL
, 0, 0, NULL
}
2759 dissect_ulp_GeoAreaShapesSupported(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2760 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2761 ett_ulp_GeoAreaShapesSupported
, GeoAreaShapesSupported_sequence
);
2769 dissect_ulp_INTEGER_0_maxNumGeoArea(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2770 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
2771 0U, maxNumGeoArea
, NULL
, false);
2779 dissect_ulp_INTEGER_0_maxAreaIdList(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2780 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
2781 0U, maxAreaIdList
, NULL
, false);
2789 dissect_ulp_INTEGER_0_maxAreaId(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2790 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
2791 0U, maxAreaId
, NULL
, false);
2797 static const per_sequence_t EventTriggerCapabilities_sequence
[] = {
2798 { &hf_ulp_geoAreaShapesSupported
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_GeoAreaShapesSupported
},
2799 { &hf_ulp_maxNumGeoAreaSupported
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_maxNumGeoArea
},
2800 { &hf_ulp_maxAreaIdListSupported
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_maxAreaIdList
},
2801 { &hf_ulp_maxAreaIdSupportedPerList
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_maxAreaId
},
2802 { NULL
, 0, 0, NULL
}
2806 dissect_ulp_EventTriggerCapabilities(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2807 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2808 ett_ulp_EventTriggerCapabilities
, EventTriggerCapabilities_sequence
);
2816 dissect_ulp_INTEGER_1_32(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2817 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
2818 1U, 32U, NULL
, false);
2824 static const per_sequence_t SessionCapabilities_sequence
[] = {
2825 { &hf_ulp_maxNumberTotalSessions
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_1_128
},
2826 { &hf_ulp_maxNumberPeriodicSessions
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_1_32
},
2827 { &hf_ulp_maxNumberTriggeredSessions
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_1_32
},
2828 { NULL
, 0, 0, NULL
}
2832 dissect_ulp_SessionCapabilities(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2833 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2834 ett_ulp_SessionCapabilities
, SessionCapabilities_sequence
);
2840 static const per_sequence_t ServiceCapabilities_sequence
[] = {
2841 { &hf_ulp_servicesSupported
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_ServicesSupported
},
2842 { &hf_ulp_reportingCapabilities
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_ReportingCap
},
2843 { &hf_ulp_eventTriggerCapabilities
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_EventTriggerCapabilities
},
2844 { &hf_ulp_sessionCapabilities
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_SessionCapabilities
},
2845 { NULL
, 0, 0, NULL
}
2849 dissect_ulp_ServiceCapabilities(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2850 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2851 ett_ulp_ServiceCapabilities
, ServiceCapabilities_sequence
);
2857 static const per_sequence_t SupportedBearers_sequence
[] = {
2858 { &hf_ulp_gsm
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2859 { &hf_ulp_wcdma
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2860 { &hf_ulp_lte
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2861 { &hf_ulp_cdma
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2862 { &hf_ulp_hprd
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2863 { &hf_ulp_umb
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2864 { &hf_ulp_wlan
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2865 { &hf_ulp_wiMAX
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
2866 { &hf_ulp_nr
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_BOOLEAN
},
2867 { NULL
, 0, 0, NULL
}
2871 dissect_ulp_SupportedBearers(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2872 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2873 ett_ulp_SupportedBearers
, SupportedBearers_sequence
);
2879 static const per_sequence_t Ver2_SETCapabilities_extension_sequence
[] = {
2880 { &hf_ulp_serviceCapabilities
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_ServiceCapabilities
},
2881 { &hf_ulp_supportedBearers
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_SupportedBearers
},
2882 { NULL
, 0, 0, NULL
}
2886 dissect_ulp_Ver2_SETCapabilities_extension(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2887 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2888 ett_ulp_Ver2_SETCapabilities_extension
, Ver2_SETCapabilities_extension_sequence
);
2894 static const per_sequence_t SETCapabilities_sequence
[] = {
2895 { &hf_ulp_posTechnology
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_PosTechnology
},
2896 { &hf_ulp_prefMethod
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_PrefMethod
},
2897 { &hf_ulp_posProtocol
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_PosProtocol
},
2898 { &hf_ulp_ver2_SETCapabilities_extension
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_Ver2_SETCapabilities_extension
},
2899 { NULL
, 0, 0, NULL
}
2903 dissect_ulp_SETCapabilities(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2904 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2905 ett_ulp_SETCapabilities
, SETCapabilities_sequence
);
2913 dissect_ulp_INTEGER_0_999(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2914 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
2915 0U, 999U, NULL
, false);
2923 dissect_ulp_INTEGER_0_1023(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2924 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
2925 0U, 1023U, NULL
, false);
2933 dissect_ulp_INTEGER_0_63(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2934 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
2935 0U, 63U, NULL
, false);
2941 static const per_sequence_t NMRelement_sequence
[] = {
2942 { &hf_ulp_arfcn
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_1023
},
2943 { &hf_ulp_bsic
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_63
},
2944 { &hf_ulp_rxLev
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_63
},
2945 { NULL
, 0, 0, NULL
}
2949 dissect_ulp_NMRelement(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2950 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2951 ett_ulp_NMRelement
, NMRelement_sequence
);
2957 static const per_sequence_t NMR_sequence_of
[1] = {
2958 { &hf_ulp_NMR_item
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_NMRelement
},
2962 dissect_ulp_NMR(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2963 offset
= dissect_per_constrained_sequence_of(tvb
, offset
, actx
, tree
, hf_index
,
2964 ett_ulp_NMR
, NMR_sequence_of
,
2971 static const per_sequence_t GsmCellInformation_sequence
[] = {
2972 { &hf_ulp_refMCC
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_999
},
2973 { &hf_ulp_refMNC
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_999
},
2974 { &hf_ulp_refLAC
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_65535
},
2975 { &hf_ulp_refCI
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_65535
},
2976 { &hf_ulp_nmr
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_NMR
},
2977 { &hf_ulp_ta
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_255
},
2978 { NULL
, 0, 0, NULL
}
2982 dissect_ulp_GsmCellInformation(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2983 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
2984 ett_ulp_GsmCellInformation
, GsmCellInformation_sequence
);
2992 dissect_ulp_INTEGER_0_268435455(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
2993 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
2994 0U, 268435455U, NULL
, false);
3002 dissect_ulp_UARFCN(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3003 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
3004 0U, 16383U, NULL
, false);
3010 static const per_sequence_t FrequencyInfoFDD_sequence
[] = {
3011 { &hf_ulp_uarfcn_UL
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_UARFCN
},
3012 { &hf_ulp_uarfcn_DL
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_UARFCN
},
3013 { NULL
, 0, 0, NULL
}
3017 dissect_ulp_FrequencyInfoFDD(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3018 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
3019 ett_ulp_FrequencyInfoFDD
, FrequencyInfoFDD_sequence
);
3025 static const per_sequence_t FrequencyInfoTDD_sequence
[] = {
3026 { &hf_ulp_uarfcn_Nt
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_UARFCN
},
3027 { NULL
, 0, 0, NULL
}
3031 dissect_ulp_FrequencyInfoTDD(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3032 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
3033 ett_ulp_FrequencyInfoTDD
, FrequencyInfoTDD_sequence
);
3039 static const value_string ulp_FrequencySpecificInfo_vals
[] = {
3045 static const per_choice_t FrequencySpecificInfo_choice
[] = {
3046 { 0, &hf_ulp_fdd_fr
, ASN1_EXTENSION_ROOT
, dissect_ulp_FrequencyInfoFDD
},
3047 { 1, &hf_ulp_tdd_fr
, ASN1_EXTENSION_ROOT
, dissect_ulp_FrequencyInfoTDD
},
3048 { 0, NULL
, 0, NULL
}
3052 dissect_ulp_FrequencySpecificInfo(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3053 offset
= dissect_per_choice(tvb
, offset
, actx
, tree
, hf_index
,
3054 ett_ulp_FrequencySpecificInfo
, FrequencySpecificInfo_choice
,
3061 static const per_sequence_t FrequencyInfo_sequence
[] = {
3062 { &hf_ulp_modeSpecificFrequencyInfo
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_FrequencySpecificInfo
},
3063 { NULL
, 0, 0, NULL
}
3067 dissect_ulp_FrequencyInfo(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3068 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
3069 ett_ulp_FrequencyInfo
, FrequencyInfo_sequence
);
3077 dissect_ulp_INTEGER_0_511(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3078 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
3079 0U, 511U, NULL
, false);
3087 dissect_ulp_UTRA_CarrierRSSI(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3088 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
3089 0U, 127U, NULL
, false);
3095 static const per_sequence_t PrimaryCPICH_Info_sequence
[] = {
3096 { &hf_ulp_primaryScramblingCode
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_511
},
3097 { NULL
, 0, 0, NULL
}
3101 dissect_ulp_PrimaryCPICH_Info(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3102 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
3103 ett_ulp_PrimaryCPICH_Info
, PrimaryCPICH_Info_sequence
);
3111 dissect_ulp_CPICH_Ec_N0(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3112 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
3113 0U, 63U, NULL
, false);
3121 dissect_ulp_CPICH_RSCP(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3122 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
3123 0U, 127U, NULL
, false);
3131 dissect_ulp_Pathloss(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3132 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
3133 46U, 173U, NULL
, false);
3139 static const per_sequence_t T_fdd_sequence
[] = {
3140 { &hf_ulp_primaryCPICH_Info
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_PrimaryCPICH_Info
},
3141 { &hf_ulp_cpich_Ec_N0
, ASN1_NO_EXTENSIONS
, ASN1_OPTIONAL
, dissect_ulp_CPICH_Ec_N0
},
3142 { &hf_ulp_cpich_RSCP
, ASN1_NO_EXTENSIONS
, ASN1_OPTIONAL
, dissect_ulp_CPICH_RSCP
},
3143 { &hf_ulp_pathloss
, ASN1_NO_EXTENSIONS
, ASN1_OPTIONAL
, dissect_ulp_Pathloss
},
3144 { NULL
, 0, 0, NULL
}
3148 dissect_ulp_T_fdd(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3149 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
3150 ett_ulp_T_fdd
, T_fdd_sequence
);
3158 dissect_ulp_CellParametersID(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3159 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
3160 0U, 127U, NULL
, false);
3168 dissect_ulp_TGSN(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3169 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
3170 0U, 14U, NULL
, false);
3178 dissect_ulp_PrimaryCCPCH_RSCP(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3179 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
3180 0U, 127U, NULL
, false);
3188 dissect_ulp_TimeslotISCP(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3189 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
3190 0U, 127U, NULL
, false);
3196 static const per_sequence_t TimeslotISCP_List_sequence_of
[1] = {
3197 { &hf_ulp_TimeslotISCP_List_item
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_TimeslotISCP
},
3201 dissect_ulp_TimeslotISCP_List(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3202 offset
= dissect_per_constrained_sequence_of(tvb
, offset
, actx
, tree
, hf_index
,
3203 ett_ulp_TimeslotISCP_List
, TimeslotISCP_List_sequence_of
,
3210 static const per_sequence_t T_tdd_sequence
[] = {
3211 { &hf_ulp_cellParametersID
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_CellParametersID
},
3212 { &hf_ulp_proposedTGSN
, ASN1_NO_EXTENSIONS
, ASN1_OPTIONAL
, dissect_ulp_TGSN
},
3213 { &hf_ulp_primaryCCPCH_RSCP
, ASN1_NO_EXTENSIONS
, ASN1_OPTIONAL
, dissect_ulp_PrimaryCCPCH_RSCP
},
3214 { &hf_ulp_pathloss
, ASN1_NO_EXTENSIONS
, ASN1_OPTIONAL
, dissect_ulp_Pathloss
},
3215 { &hf_ulp_timeslotISCP_List
, ASN1_NO_EXTENSIONS
, ASN1_OPTIONAL
, dissect_ulp_TimeslotISCP_List
},
3216 { NULL
, 0, 0, NULL
}
3220 dissect_ulp_T_tdd(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3221 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
3222 ett_ulp_T_tdd
, T_tdd_sequence
);
3228 static const value_string ulp_T_modeSpecificInfo_vals
[] = {
3234 static const per_choice_t T_modeSpecificInfo_choice
[] = {
3235 { 0, &hf_ulp_fdd
, ASN1_NO_EXTENSIONS
, dissect_ulp_T_fdd
},
3236 { 1, &hf_ulp_tdd
, ASN1_NO_EXTENSIONS
, dissect_ulp_T_tdd
},
3237 { 0, NULL
, 0, NULL
}
3241 dissect_ulp_T_modeSpecificInfo(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3242 offset
= dissect_per_choice(tvb
, offset
, actx
, tree
, hf_index
,
3243 ett_ulp_T_modeSpecificInfo
, T_modeSpecificInfo_choice
,
3250 static const per_sequence_t CellMeasuredResults_sequence
[] = {
3251 { &hf_ulp_cellIdentity
, ASN1_NO_EXTENSIONS
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_268435455
},
3252 { &hf_ulp_modeSpecificInfo
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_T_modeSpecificInfo
},
3253 { NULL
, 0, 0, NULL
}
3257 dissect_ulp_CellMeasuredResults(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3258 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
3259 ett_ulp_CellMeasuredResults
, CellMeasuredResults_sequence
);
3265 static const per_sequence_t CellMeasuredResultsList_sequence_of
[1] = {
3266 { &hf_ulp_CellMeasuredResultsList_item
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_CellMeasuredResults
},
3270 dissect_ulp_CellMeasuredResultsList(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3271 offset
= dissect_per_constrained_sequence_of(tvb
, offset
, actx
, tree
, hf_index
,
3272 ett_ulp_CellMeasuredResultsList
, CellMeasuredResultsList_sequence_of
,
3273 1, maxCellMeas
, false);
3279 static const per_sequence_t MeasuredResults_sequence
[] = {
3280 { &hf_ulp_frequencyInfo
, ASN1_NO_EXTENSIONS
, ASN1_OPTIONAL
, dissect_ulp_FrequencyInfo
},
3281 { &hf_ulp_utra_CarrierRSSI
, ASN1_NO_EXTENSIONS
, ASN1_OPTIONAL
, dissect_ulp_UTRA_CarrierRSSI
},
3282 { &hf_ulp_cellMeasuredResultsList
, ASN1_NO_EXTENSIONS
, ASN1_OPTIONAL
, dissect_ulp_CellMeasuredResultsList
},
3283 { NULL
, 0, 0, NULL
}
3287 dissect_ulp_MeasuredResults(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3288 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
3289 ett_ulp_MeasuredResults
, MeasuredResults_sequence
);
3295 static const per_sequence_t MeasuredResultsList_sequence_of
[1] = {
3296 { &hf_ulp_MeasuredResultsList_item
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_MeasuredResults
},
3300 dissect_ulp_MeasuredResultsList(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3301 offset
= dissect_per_constrained_sequence_of(tvb
, offset
, actx
, tree
, hf_index
,
3302 ett_ulp_MeasuredResultsList
, MeasuredResultsList_sequence_of
,
3311 dissect_ulp_INTEGER_0_8191(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3312 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
3313 0U, 8191U, NULL
, false);
3319 static const value_string ulp_TAResolution_vals
[] = {
3322 { 2, "res0125chip" },
3328 dissect_ulp_TAResolution(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3329 offset
= dissect_per_enumerated(tvb
, offset
, actx
, tree
, hf_index
,
3330 3, NULL
, true, 0, NULL
);
3336 static const value_string ulp_ChipRate_vals
[] = {
3345 dissect_ulp_ChipRate(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3346 offset
= dissect_per_enumerated(tvb
, offset
, actx
, tree
, hf_index
,
3347 3, NULL
, true, 0, NULL
);
3353 static const per_sequence_t TimingAdvance_sequence
[] = {
3354 { &hf_ulp_ta_01
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_8191
},
3355 { &hf_ulp_tAResolution
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_TAResolution
},
3356 { &hf_ulp_chipRate
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_ChipRate
},
3357 { NULL
, 0, 0, NULL
}
3361 dissect_ulp_TimingAdvance(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3362 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
3363 ett_ulp_TimingAdvance
, TimingAdvance_sequence
);
3369 static const per_sequence_t WcdmaCellInformation_sequence
[] = {
3370 { &hf_ulp_refMCC
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_999
},
3371 { &hf_ulp_refMNC
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_999
},
3372 { &hf_ulp_refUC
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_268435455
},
3373 { &hf_ulp_frequencyInfo
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_FrequencyInfo
},
3374 { &hf_ulp_primaryScramblingCode
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_511
},
3375 { &hf_ulp_measuredResultsList
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_MeasuredResultsList
},
3376 { &hf_ulp_cellParametersId
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_127
},
3377 { &hf_ulp_timingAdvance
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_TimingAdvance
},
3378 { NULL
, 0, 0, NULL
}
3382 dissect_ulp_WcdmaCellInformation(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3383 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
3384 ett_ulp_WcdmaCellInformation
, WcdmaCellInformation_sequence
);
3392 dissect_ulp_INTEGER_0_32767(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3393 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
3394 0U, 32767U, NULL
, false);
3402 dissect_ulp_INTEGER_0_4194303(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3403 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
3404 0U, 4194303U, NULL
, false);
3412 dissect_ulp_INTEGER_0_8388607(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3413 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
3414 0U, 8388607U, NULL
, false);
3420 static const per_sequence_t CdmaCellInformation_sequence
[] = {
3421 { &hf_ulp_refNID_01
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_65535
},
3422 { &hf_ulp_refSID_01
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_32767
},
3423 { &hf_ulp_refBASEID
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_65535
},
3424 { &hf_ulp_refBASELAT
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_4194303
},
3425 { &hf_ulp_reBASELONG
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_8388607
},
3426 { &hf_ulp_refREFPN
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_511
},
3427 { &hf_ulp_refWeekNumber
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_65535
},
3428 { &hf_ulp_refSeconds
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_4194303
},
3429 { NULL
, 0, 0, NULL
}
3433 dissect_ulp_CdmaCellInformation(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3434 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
3435 ett_ulp_CdmaCellInformation
, CdmaCellInformation_sequence
);
3443 dissect_ulp_BIT_STRING_SIZE_128(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3444 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, hf_index
,
3445 128, 128, false, NULL
, 0, NULL
, NULL
);
3451 static const per_sequence_t HrpdCellInformation_sequence
[] = {
3452 { &hf_ulp_refSECTORID
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_BIT_STRING_SIZE_128
},
3453 { &hf_ulp_refBASELAT
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_4194303
},
3454 { &hf_ulp_reBASELONG
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_8388607
},
3455 { &hf_ulp_refWeekNumber
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_65535
},
3456 { &hf_ulp_refSeconds
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_4194303
},
3457 { NULL
, 0, 0, NULL
}
3461 dissect_ulp_HrpdCellInformation(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3462 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
3463 ett_ulp_HrpdCellInformation
, HrpdCellInformation_sequence
);
3469 static const per_sequence_t UmbCellInformation_sequence
[] = {
3470 { &hf_ulp_refSECTORID
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BIT_STRING_SIZE_128
},
3471 { &hf_ulp_refMCC
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_999
},
3472 { &hf_ulp_refMNC
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_999
},
3473 { &hf_ulp_refBASELAT
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_4194303
},
3474 { &hf_ulp_reBASELONG
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_8388607
},
3475 { &hf_ulp_refWeekNumber
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_65535
},
3476 { &hf_ulp_refSeconds
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_4194303
},
3477 { NULL
, 0, 0, NULL
}
3481 dissect_ulp_UmbCellInformation(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3482 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
3483 ett_ulp_UmbCellInformation
, UmbCellInformation_sequence
);
3491 dissect_ulp_MCC_MNC_Digit(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3492 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
3493 0U, 9U, NULL
, false);
3499 static const per_sequence_t MCC_sequence_of
[1] = {
3500 { &hf_ulp_MCC_item
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_MCC_MNC_Digit
},
3504 dissect_ulp_MCC(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3505 offset
= dissect_per_constrained_sequence_of(tvb
, offset
, actx
, tree
, hf_index
,
3506 ett_ulp_MCC
, MCC_sequence_of
,
3513 static const per_sequence_t MNC_sequence_of
[1] = {
3514 { &hf_ulp_MNC_item
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_MCC_MNC_Digit
},
3518 dissect_ulp_MNC(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3519 offset
= dissect_per_constrained_sequence_of(tvb
, offset
, actx
, tree
, hf_index
,
3520 ett_ulp_MNC
, MNC_sequence_of
,
3527 static const per_sequence_t PLMN_Identity_sequence
[] = {
3528 { &hf_ulp_mcc
, ASN1_NO_EXTENSIONS
, ASN1_OPTIONAL
, dissect_ulp_MCC
},
3529 { &hf_ulp_mnc
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_MNC
},
3530 { NULL
, 0, 0, NULL
}
3534 dissect_ulp_PLMN_Identity(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3535 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
3536 ett_ulp_PLMN_Identity
, PLMN_Identity_sequence
);
3544 dissect_ulp_CellIdentity(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3545 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, hf_index
,
3546 28, 28, false, NULL
, 0, NULL
, NULL
);
3552 static const per_sequence_t CellGlobalIdEUTRA_sequence
[] = {
3553 { &hf_ulp_plmn_Identity
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_PLMN_Identity
},
3554 { &hf_ulp_cellIdentity_01
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_CellIdentity
},
3555 { NULL
, 0, 0, NULL
}
3559 dissect_ulp_CellGlobalIdEUTRA(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3560 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
3561 ett_ulp_CellGlobalIdEUTRA
, CellGlobalIdEUTRA_sequence
);
3569 dissect_ulp_PhysCellId(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3570 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
3571 0U, 503U, NULL
, false);
3579 dissect_ulp_TrackingAreaCode(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3580 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, hf_index
,
3581 16, 16, false, NULL
, 0, NULL
, NULL
);
3589 dissect_ulp_RSRP_Range(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3590 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
3591 0U, 97U, NULL
, false);
3599 dissect_ulp_RSRQ_Range(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3600 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
3601 0U, 34U, NULL
, false);
3609 dissect_ulp_INTEGER_0_1282(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3610 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
3611 0U, 1282U, NULL
, false);
3617 static const per_sequence_t T_cgi_Info_sequence
[] = {
3618 { &hf_ulp_cellGlobalId
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_CellGlobalIdEUTRA
},
3619 { &hf_ulp_trackingAreaCode
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_TrackingAreaCode
},
3620 { NULL
, 0, 0, NULL
}
3624 dissect_ulp_T_cgi_Info(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3625 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
3626 ett_ulp_T_cgi_Info
, T_cgi_Info_sequence
);
3634 dissect_ulp_INTEGER_65536_262143(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3635 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
3636 65536U, 262143U, NULL
, false);
3644 dissect_ulp_RSRP_Range_Ext(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3645 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
3646 -17, -1, NULL
, false);
3654 dissect_ulp_RSRQ_Range_Ext(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3655 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
3656 -30, 46U, NULL
, false);
3664 dissect_ulp_RS_SINR_Range(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3665 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
3666 0U, 127U, NULL
, false);
3674 dissect_ulp_TrackingAreaCodeNR(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3675 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, hf_index
,
3676 24, 24, false, NULL
, 0, NULL
, NULL
);
3682 static const per_sequence_t NeighbourInformation5G_sequence
[] = {
3683 { &hf_ulp_trackingAreaCode_01
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_TrackingAreaCodeNR
},
3684 { NULL
, 0, 0, NULL
}
3688 dissect_ulp_NeighbourInformation5G(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3689 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
3690 ett_ulp_NeighbourInformation5G
, NeighbourInformation5G_sequence
);
3696 static const per_sequence_t T_measResult_sequence
[] = {
3697 { &hf_ulp_rsrpResult
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_RSRP_Range
},
3698 { &hf_ulp_rsrqResult
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_RSRQ_Range
},
3699 { &hf_ulp_earfcn
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_65535
},
3700 { &hf_ulp_earfcn_ext
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_65536_262143
},
3701 { &hf_ulp_rsrpResult_ext
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_RSRP_Range_Ext
},
3702 { &hf_ulp_rsrqResult_ext
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_RSRQ_Range_Ext
},
3703 { &hf_ulp_rs_sinrResult
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_RS_SINR_Range
},
3704 { &hf_ulp_neighbourInformation5G
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_NeighbourInformation5G
},
3705 { NULL
, 0, 0, NULL
}
3709 dissect_ulp_T_measResult(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3710 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
3711 ett_ulp_T_measResult
, T_measResult_sequence
);
3717 static const per_sequence_t MeasResultEUTRA_sequence
[] = {
3718 { &hf_ulp_physCellId
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_PhysCellId
},
3719 { &hf_ulp_cgi_Info
, ASN1_NO_EXTENSIONS
, ASN1_OPTIONAL
, dissect_ulp_T_cgi_Info
},
3720 { &hf_ulp_measResult
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_T_measResult
},
3721 { NULL
, 0, 0, NULL
}
3725 dissect_ulp_MeasResultEUTRA(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3726 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
3727 ett_ulp_MeasResultEUTRA
, MeasResultEUTRA_sequence
);
3733 static const per_sequence_t MeasResultListEUTRA_sequence_of
[1] = {
3734 { &hf_ulp_MeasResultListEUTRA_item
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_MeasResultEUTRA
},
3738 dissect_ulp_MeasResultListEUTRA(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3739 offset
= dissect_per_constrained_sequence_of(tvb
, offset
, actx
, tree
, hf_index
,
3740 ett_ulp_MeasResultListEUTRA
, MeasResultListEUTRA_sequence_of
,
3741 1, maxCellReport
, false);
3747 static const per_sequence_t ServingInformation5G_sequence
[] = {
3748 { &hf_ulp_trackingAreaCode_01
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_TrackingAreaCodeNR
},
3749 { NULL
, 0, 0, NULL
}
3753 dissect_ulp_ServingInformation5G(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3754 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
3755 ett_ulp_ServingInformation5G
, ServingInformation5G_sequence
);
3761 static const per_sequence_t LteCellInformation_sequence
[] = {
3762 { &hf_ulp_cellGlobalIdEUTRA
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_CellGlobalIdEUTRA
},
3763 { &hf_ulp_physCellId
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_PhysCellId
},
3764 { &hf_ulp_trackingAreaCode
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_TrackingAreaCode
},
3765 { &hf_ulp_rsrpResult
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_RSRP_Range
},
3766 { &hf_ulp_rsrqResult
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_RSRQ_Range
},
3767 { &hf_ulp_ta_02
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_1282
},
3768 { &hf_ulp_measResultListEUTRA
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_MeasResultListEUTRA
},
3769 { &hf_ulp_earfcn
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_65535
},
3770 { &hf_ulp_earfcn_ext
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_65536_262143
},
3771 { &hf_ulp_rsrpResult_ext
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_RSRP_Range_Ext
},
3772 { &hf_ulp_rsrqResult_ext
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_RSRQ_Range_Ext
},
3773 { &hf_ulp_rs_sinrResult
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_RS_SINR_Range
},
3774 { &hf_ulp_servingInformation5G
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_ServingInformation5G
},
3775 { NULL
, 0, 0, NULL
}
3779 dissect_ulp_LteCellInformation(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3780 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
3781 ett_ulp_LteCellInformation
, LteCellInformation_sequence
);
3789 dissect_ulp_T_apMACAddress_02(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3792 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, -1,
3793 48, 48, false, NULL
, 0, &val_tvb
, NULL
);
3796 proto_tree_add_item(tree
, hf_index
, val_tvb
, 0, 6, ENC_NA
);
3806 dissect_ulp_INTEGER_M127_128(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3807 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
3808 -127, 128U, NULL
, false);
3814 static const value_string ulp_T_apDeviceType_vals
[] = {
3815 { 0, "wlan802-11a" },
3816 { 1, "wlan802-11b" },
3817 { 2, "wlan802-11g" },
3818 { 3, "wlan802-11n" },
3819 { 4, "wlan802-11ac" },
3820 { 5, "wlan802-11ad" },
3826 dissect_ulp_T_apDeviceType(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3827 offset
= dissect_per_enumerated(tvb
, offset
, actx
, tree
, hf_index
,
3828 3, NULL
, true, 3, NULL
);
3836 dissect_ulp_INTEGER_0_256(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3837 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
3838 0U, 256U, NULL
, false);
3846 dissect_ulp_INTEGER_0_16777216(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3847 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
3848 0U, 16777216U, NULL
, false);
3854 static const value_string ulp_RTDUnits_vals
[] = {
3855 { 0, "microseconds" },
3856 { 1, "hundredsofnanoseconds" },
3857 { 2, "tensofnanoseconds" },
3858 { 3, "nanoseconds" },
3859 { 4, "tenthsofnanoseconds" },
3865 dissect_ulp_RTDUnits(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3866 offset
= dissect_per_enumerated(tvb
, offset
, actx
, tree
, hf_index
,
3867 5, NULL
, true, 0, NULL
);
3873 static const per_sequence_t RTD_sequence
[] = {
3874 { &hf_ulp_rTDValue
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_16777216
},
3875 { &hf_ulp_rTDUnits
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_RTDUnits
},
3876 { &hf_ulp_rTDAccuracy
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_255
},
3877 { NULL
, 0, 0, NULL
}
3881 dissect_ulp_RTD(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3882 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
3883 ett_ulp_RTD
, RTD_sequence
);
3889 static const value_string ulp_LocationEncodingDescriptor_vals
[] = {
3897 dissect_ulp_LocationEncodingDescriptor(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3898 offset
= dissect_per_enumerated(tvb
, offset
, actx
, tree
, hf_index
,
3899 2, NULL
, true, 0, NULL
);
3907 dissect_ulp_INTEGER_0_4294967295(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3908 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
3909 0U, 4294967295U, NULL
, false);
3917 dissect_ulp_OCTET_STRING_SIZE_1_128(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3918 offset
= dissect_per_octet_string(tvb
, offset
, actx
, tree
, hf_index
,
3919 1, 128, false, NULL
);
3925 static const per_sequence_t LocationData_sequence
[] = {
3926 { &hf_ulp_locationAccuracy
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_4294967295
},
3927 { &hf_ulp_locationValue
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_OCTET_STRING_SIZE_1_128
},
3928 { NULL
, 0, 0, NULL
}
3932 dissect_ulp_LocationData(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3933 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
3934 ett_ulp_LocationData
, LocationData_sequence
);
3940 static const per_sequence_t ReportedLocation_sequence
[] = {
3941 { &hf_ulp_locationEncodingDescriptor
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_LocationEncodingDescriptor
},
3942 { &hf_ulp_locationData
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_LocationData
},
3943 { NULL
, 0, 0, NULL
}
3947 dissect_ulp_ReportedLocation(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3948 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
3949 ett_ulp_ReportedLocation
, ReportedLocation_sequence
);
3957 dissect_ulp_BIT_STRING_SIZE_4(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3958 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, hf_index
,
3959 4, 4, false, NULL
, 0, NULL
, NULL
);
3967 dissect_ulp_BIT_STRING_SIZE_30(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3968 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, hf_index
,
3969 30, 30, false, NULL
, 0, NULL
, NULL
);
3977 dissect_ulp_BIT_STRING_SIZE_8(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3978 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, hf_index
,
3979 8, 8, false, NULL
, 0, NULL
, NULL
);
3985 static const per_sequence_t LocationDataLCI_sequence
[] = {
3986 { &hf_ulp_latitudeResolution
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BIT_STRING_SIZE_6
},
3987 { &hf_ulp_latitude_01
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BIT_STRING_SIZE_34
},
3988 { &hf_ulp_longitudeResolution
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BIT_STRING_SIZE_6
},
3989 { &hf_ulp_longitude_01
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BIT_STRING_SIZE_34
},
3990 { &hf_ulp_altitudeType
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BIT_STRING_SIZE_4
},
3991 { &hf_ulp_altitudeResolution
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BIT_STRING_SIZE_6
},
3992 { &hf_ulp_altitude_01
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BIT_STRING_SIZE_30
},
3993 { &hf_ulp_datum
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BIT_STRING_SIZE_8
},
3994 { NULL
, 0, 0, NULL
}
3998 dissect_ulp_LocationDataLCI(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
3999 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
4000 ett_ulp_LocationDataLCI
, LocationDataLCI_sequence
);
4006 static const per_sequence_t LciLocData_sequence
[] = {
4007 { &hf_ulp_locationDataLCI
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_LocationDataLCI
},
4008 { NULL
, 0, 0, NULL
}
4012 dissect_ulp_LciLocData(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4013 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
4014 ett_ulp_LciLocData
, LciLocData_sequence
);
4020 static const value_string ulp_RepLocation_vals
[] = {
4021 { 0, "lciLocData" },
4025 static const per_choice_t RepLocation_choice
[] = {
4026 { 0, &hf_ulp_lciLocData
, ASN1_EXTENSION_ROOT
, dissect_ulp_LciLocData
},
4027 { 0, NULL
, 0, NULL
}
4031 dissect_ulp_RepLocation(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4032 offset
= dissect_per_choice(tvb
, offset
, actx
, tree
, hf_index
,
4033 ett_ulp_RepLocation
, RepLocation_choice
,
4042 dissect_ulp_INTEGER_0_1(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4043 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
4044 0U, 1U, NULL
, false);
4052 dissect_ulp_T_apSSID(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4055 offset
= dissect_per_octet_string(tvb
, offset
, actx
, tree
, -1,
4056 1, 32, false, &ssid_tvb
);
4059 actx
->created_item
= proto_tree_add_item(tree
, hf_index
, ssid_tvb
, 0, -1, ENC_ASCII
|ENC_NA
);
4067 static const value_string ulp_T_apPHYType_vals
[] = {
4072 { 4, "irbaseband" },
4083 dissect_ulp_T_apPHYType(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4084 offset
= dissect_per_enumerated(tvb
, offset
, actx
, tree
, hf_index
,
4085 10, NULL
, true, 0, NULL
);
4093 dissect_ulp_T_setMACAddress(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4096 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, -1,
4097 48, 48, false, NULL
, 0, &val_tvb
, NULL
);
4100 proto_tree_add_item(tree
, hf_index
, val_tvb
, 0, 6, ENC_NA
);
4108 static const per_sequence_t WlanAPInformation_sequence
[] = {
4109 { &hf_ulp_apMACAddress_02
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_T_apMACAddress_02
},
4110 { &hf_ulp_apTransmitPower
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_M127_128
},
4111 { &hf_ulp_apAntennaGain
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_M127_128
},
4112 { &hf_ulp_apSignaltoNoise
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_M127_128
},
4113 { &hf_ulp_apDeviceType
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_T_apDeviceType
},
4114 { &hf_ulp_apSignalStrength
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_M127_128
},
4115 { &hf_ulp_apChannelFrequency
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_256
},
4116 { &hf_ulp_apRoundTripDelay
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_RTD
},
4117 { &hf_ulp_setTransmitPower
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_M127_128
},
4118 { &hf_ulp_setAntennaGain
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_M127_128
},
4119 { &hf_ulp_setSignaltoNoise
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_M127_128
},
4120 { &hf_ulp_setSignalStrength
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_M127_128
},
4121 { &hf_ulp_apReportedLocation
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_ReportedLocation
},
4122 { &hf_ulp_apRepLocation
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_RepLocation
},
4123 { &hf_ulp_apSignalStrengthDelta
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_1
},
4124 { &hf_ulp_apSignaltoNoiseDelta
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_1
},
4125 { &hf_ulp_setSignalStrengthDelta
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_1
},
4126 { &hf_ulp_setSignaltoNoiseDelta
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_1
},
4127 { &hf_ulp_operatingClass
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_255
},
4128 { &hf_ulp_apSSID_01
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_T_apSSID
},
4129 { &hf_ulp_apPHYType_01
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_T_apPHYType
},
4130 { &hf_ulp_setMACAddress_01
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_T_setMACAddress
},
4131 { NULL
, 0, 0, NULL
}
4135 dissect_ulp_WlanAPInformation(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4136 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
4137 ett_ulp_WlanAPInformation
, WlanAPInformation_sequence
);
4145 dissect_ulp_BIT_STRING_SIZE_24(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4146 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, hf_index
,
4147 24, 24, false, NULL
, 0, NULL
, NULL
);
4153 static const per_sequence_t WimaxBsID_sequence
[] = {
4154 { &hf_ulp_bsID_MSB
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_BIT_STRING_SIZE_24
},
4155 { &hf_ulp_bsID_LSB
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BIT_STRING_SIZE_24
},
4156 { NULL
, 0, 0, NULL
}
4160 dissect_ulp_WimaxBsID(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4161 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
4162 ett_ulp_WimaxBsID
, WimaxBsID_sequence
);
4168 static const per_sequence_t WimaxRTD_sequence
[] = {
4169 { &hf_ulp_rtd
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_65535
},
4170 { &hf_ulp_rTDstd
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_1023
},
4171 { NULL
, 0, 0, NULL
}
4175 dissect_ulp_WimaxRTD(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4176 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
4177 ett_ulp_WimaxRTD
, WimaxRTD_sequence
);
4185 dissect_ulp_INTEGER_M32768_32767(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4186 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
4187 -32768, 32767U, NULL
, false);
4193 static const per_sequence_t WimaxNMR_sequence
[] = {
4194 { &hf_ulp_wimaxBsID
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_WimaxBsID
},
4195 { &hf_ulp_relDelay
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_M32768_32767
},
4196 { &hf_ulp_relDelaystd
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_1023
},
4197 { &hf_ulp_rssi
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_255
},
4198 { &hf_ulp_rSSIstd
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_63
},
4199 { &hf_ulp_bSTxPower
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_255
},
4200 { &hf_ulp_cinr
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_255
},
4201 { &hf_ulp_cINRstd
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_63
},
4202 { &hf_ulp_bSLocation
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_ReportedLocation
},
4203 { NULL
, 0, 0, NULL
}
4207 dissect_ulp_WimaxNMR(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4208 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
4209 ett_ulp_WimaxNMR
, WimaxNMR_sequence
);
4215 static const per_sequence_t WimaxNMRList_sequence_of
[1] = {
4216 { &hf_ulp_WimaxNMRList_item
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_WimaxNMR
},
4220 dissect_ulp_WimaxNMRList(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4221 offset
= dissect_per_constrained_sequence_of(tvb
, offset
, actx
, tree
, hf_index
,
4222 ett_ulp_WimaxNMRList
, WimaxNMRList_sequence_of
,
4223 1, maxWimaxBSMeas
, false);
4229 static const per_sequence_t WimaxBSInformation_sequence
[] = {
4230 { &hf_ulp_wimaxBsID
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_WimaxBsID
},
4231 { &hf_ulp_wimaxRTD
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_WimaxRTD
},
4232 { &hf_ulp_wimaxNMRList
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_WimaxNMRList
},
4233 { NULL
, 0, 0, NULL
}
4237 dissect_ulp_WimaxBSInformation(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4238 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
4239 ett_ulp_WimaxBSInformation
, WimaxBSInformation_sequence
);
4247 dissect_ulp_PhysCellIdNR(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4248 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
4249 0U, 1007U, NULL
, false);
4257 dissect_ulp_ARFCN_NR(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4258 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
4259 0U, 3279165U, NULL
, false);
4267 dissect_ulp_CellIdentityNR(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4268 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, hf_index
,
4269 36, 36, false, NULL
, 0, NULL
, NULL
);
4275 static const per_sequence_t CellGlobalIdNR_sequence
[] = {
4276 { &hf_ulp_plmn_Identity
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_PLMN_Identity
},
4277 { &hf_ulp_cellIdentityNR
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_CellIdentityNR
},
4278 { NULL
, 0, 0, NULL
}
4282 dissect_ulp_CellGlobalIdNR(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4283 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
4284 ett_ulp_CellGlobalIdNR
, CellGlobalIdNR_sequence
);
4290 static const per_sequence_t NR_Measurements_sequence
[] = {
4291 { &hf_ulp_rsrp_Range
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_127
},
4292 { &hf_ulp_rsrq_Range
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_127
},
4293 { &hf_ulp_sinr_Range
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_127
},
4294 { NULL
, 0, 0, NULL
}
4298 dissect_ulp_NR_Measurements(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4299 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
4300 ett_ulp_NR_Measurements
, NR_Measurements_sequence
);
4308 dissect_ulp_INTEGER_0_3846(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4309 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
4310 0U, 3846U, NULL
, false);
4316 static const per_sequence_t ServCellNR_sequence
[] = {
4317 { &hf_ulp_physCellId_01
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_PhysCellIdNR
},
4318 { &hf_ulp_arfcn_NR
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_ARFCN_NR
},
4319 { &hf_ulp_cellGlobalId_01
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_CellGlobalIdNR
},
4320 { &hf_ulp_trackingAreaCode_01
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_TrackingAreaCodeNR
},
4321 { &hf_ulp_ssb_Measurements
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_NR_Measurements
},
4322 { &hf_ulp_csi_rs_Measurements
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_NR_Measurements
},
4323 { &hf_ulp_ta_03
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_3846
},
4324 { NULL
, 0, 0, NULL
}
4328 dissect_ulp_ServCellNR(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4329 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
4330 ett_ulp_ServCellNR
, ServCellNR_sequence
);
4336 static const per_sequence_t ServingCellInformationNR_sequence_of
[1] = {
4337 { &hf_ulp_ServingCellInformationNR_item
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_ServCellNR
},
4341 dissect_ulp_ServingCellInformationNR(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4342 offset
= dissect_per_constrained_sequence_of(tvb
, offset
, actx
, tree
, hf_index
,
4343 ett_ulp_ServingCellInformationNR
, ServingCellInformationNR_sequence_of
,
4344 1, maxNRServingCell
, false);
4350 static const per_sequence_t MeasResultNR_sequence
[] = {
4351 { &hf_ulp_physCellId_01
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_PhysCellIdNR
},
4352 { &hf_ulp_arfcn_NR
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_ARFCN_NR
},
4353 { &hf_ulp_cellGlobalId_01
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_CellGlobalIdNR
},
4354 { &hf_ulp_trackingAreaCode_01
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_TrackingAreaCodeNR
},
4355 { &hf_ulp_ssb_Measurements
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_NR_Measurements
},
4356 { &hf_ulp_csi_rs_Measurements
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_NR_Measurements
},
4357 { NULL
, 0, 0, NULL
}
4361 dissect_ulp_MeasResultNR(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4362 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
4363 ett_ulp_MeasResultNR
, MeasResultNR_sequence
);
4369 static const per_sequence_t MeasResultListNR_sequence_of
[1] = {
4370 { &hf_ulp_MeasResultListNR_item
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_MeasResultNR
},
4374 dissect_ulp_MeasResultListNR(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4375 offset
= dissect_per_constrained_sequence_of(tvb
, offset
, actx
, tree
, hf_index
,
4376 ett_ulp_MeasResultListNR
, MeasResultListNR_sequence_of
,
4377 1, maxCellReportNR
, false);
4383 static const per_sequence_t NRCellInformation_sequence
[] = {
4384 { &hf_ulp_servingCellInformation
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_ServingCellInformationNR
},
4385 { &hf_ulp_measuredResultsListNR
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_MeasResultListNR
},
4386 { NULL
, 0, 0, NULL
}
4390 dissect_ulp_NRCellInformation(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4391 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
4392 ett_ulp_NRCellInformation
, NRCellInformation_sequence
);
4398 static const value_string ulp_Ver2_CellInfo_extension_vals
[] = {
4408 static const per_choice_t Ver2_CellInfo_extension_choice
[] = {
4409 { 0, &hf_ulp_hrpdCell
, ASN1_EXTENSION_ROOT
, dissect_ulp_HrpdCellInformation
},
4410 { 1, &hf_ulp_umbCell
, ASN1_EXTENSION_ROOT
, dissect_ulp_UmbCellInformation
},
4411 { 2, &hf_ulp_lteCell
, ASN1_EXTENSION_ROOT
, dissect_ulp_LteCellInformation
},
4412 { 3, &hf_ulp_wlanAP
, ASN1_EXTENSION_ROOT
, dissect_ulp_WlanAPInformation
},
4413 { 4, &hf_ulp_wimaxBS
, ASN1_EXTENSION_ROOT
, dissect_ulp_WimaxBSInformation
},
4414 { 5, &hf_ulp_nrCell
, ASN1_NOT_EXTENSION_ROOT
, dissect_ulp_NRCellInformation
},
4415 { 0, NULL
, 0, NULL
}
4419 dissect_ulp_Ver2_CellInfo_extension(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4420 offset
= dissect_per_choice(tvb
, offset
, actx
, tree
, hf_index
,
4421 ett_ulp_Ver2_CellInfo_extension
, Ver2_CellInfo_extension_choice
,
4428 static const value_string ulp_CellInfo_vals
[] = {
4432 { 3, "ver2-CellInfo-extension" },
4436 static const per_choice_t CellInfo_choice
[] = {
4437 { 0, &hf_ulp_gsmCell
, ASN1_EXTENSION_ROOT
, dissect_ulp_GsmCellInformation
},
4438 { 1, &hf_ulp_wcdmaCell
, ASN1_EXTENSION_ROOT
, dissect_ulp_WcdmaCellInformation
},
4439 { 2, &hf_ulp_cdmaCell
, ASN1_EXTENSION_ROOT
, dissect_ulp_CdmaCellInformation
},
4440 { 3, &hf_ulp_ver2_CellInfo_extension
, ASN1_NOT_EXTENSION_ROOT
, dissect_ulp_Ver2_CellInfo_extension
},
4441 { 0, NULL
, 0, NULL
}
4445 dissect_ulp_CellInfo(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4446 offset
= dissect_per_choice(tvb
, offset
, actx
, tree
, hf_index
,
4447 ett_ulp_CellInfo
, CellInfo_choice
,
4454 static const value_string ulp_Status_vals
[] = {
4463 dissect_ulp_Status(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4464 offset
= dissect_per_enumerated(tvb
, offset
, actx
, tree
, hf_index
,
4465 3, NULL
, true, 0, NULL
);
4471 static const per_sequence_t LocationId_sequence
[] = {
4472 { &hf_ulp_cellInfo
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_CellInfo
},
4473 { &hf_ulp_status
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_Status
},
4474 { NULL
, 0, 0, NULL
}
4478 dissect_ulp_LocationId(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4479 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
4480 ett_ulp_LocationId
, LocationId_sequence
);
4488 dissect_ulp_RelativeTime(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4489 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
4490 0U, 65535U, NULL
, false);
4496 static const per_sequence_t LocationIdData_sequence
[] = {
4497 { &hf_ulp_locationId
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_LocationId
},
4498 { &hf_ulp_relativetimestamp
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_RelativeTime
},
4499 { &hf_ulp_servingFlag
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
4500 { NULL
, 0, 0, NULL
}
4504 dissect_ulp_LocationIdData(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4505 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
4506 ett_ulp_LocationIdData
, LocationIdData_sequence
);
4512 static const per_sequence_t MultipleLocationIds_sequence_of
[1] = {
4513 { &hf_ulp_MultipleLocationIds_item
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_LocationIdData
},
4517 dissect_ulp_MultipleLocationIds(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4518 offset
= dissect_per_constrained_sequence_of(tvb
, offset
, actx
, tree
, hf_index
,
4519 ett_ulp_MultipleLocationIds
, MultipleLocationIds_sequence_of
,
4520 1, maxLidSize
, false);
4528 dissect_ulp_T_msisdn_01(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4529 tvbuff_t
*msisdn_tvb
;
4530 offset
= dissect_per_octet_string(tvb
, offset
, actx
, tree
, hf_index
,
4531 8, 8, false, &msisdn_tvb
);
4534 proto_tree
*subtree
;
4536 subtree
= proto_item_add_subtree(actx
->created_item
, ett_ulp_thirdPartyId
);
4537 dissect_e164_msisdn(msisdn_tvb
, subtree
, 0, 8, E164_ENC_BCD
);
4547 dissect_ulp_T_sip_uri(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4548 offset
= dissect_per_restricted_character_string(tvb
, offset
, actx
, tree
, hf_index
,
4549 1, 255, false, "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789:./-_~%#@?", 72,
4558 dissect_ulp_T_ims_public_identity(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4559 offset
= dissect_per_restricted_character_string(tvb
, offset
, actx
, tree
, hf_index
,
4560 1, 255, false, "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789:./-_~%#@?", 72,
4569 dissect_ulp_T_mdn_01(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4571 offset
= dissect_per_octet_string(tvb
, offset
, actx
, tree
, hf_index
,
4572 8, 8, false, &mdn_tvb
);
4575 proto_tree
*subtree
;
4577 subtree
= proto_item_add_subtree(actx
->created_item
, ett_ulp_thirdPartyId
);
4578 proto_tree_add_string(subtree
, hf_ulp_mobile_directory_number
, mdn_tvb
, 0, 8, tvb_bcd_dig_to_str(actx
->pinfo
->pool
, mdn_tvb
, 0, 8, NULL
, false));
4588 dissect_ulp_T_uri(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4589 offset
= dissect_per_restricted_character_string(tvb
, offset
, actx
, tree
, hf_index
,
4590 1, 255, false, "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789./-_~%#", 69,
4598 static const value_string ulp_ThirdPartyID_vals
[] = {
4599 { 0, "logicalName" },
4603 { 4, "ims-public-identity" },
4610 static const per_choice_t ThirdPartyID_choice
[] = {
4611 { 0, &hf_ulp_logicalName
, ASN1_EXTENSION_ROOT
, dissect_ulp_IA5String_SIZE_1_1000
},
4612 { 1, &hf_ulp_msisdn_01
, ASN1_EXTENSION_ROOT
, dissect_ulp_T_msisdn_01
},
4613 { 2, &hf_ulp_emailaddr
, ASN1_EXTENSION_ROOT
, dissect_ulp_IA5String_SIZE_1_1000
},
4614 { 3, &hf_ulp_sip_uri
, ASN1_EXTENSION_ROOT
, dissect_ulp_T_sip_uri
},
4615 { 4, &hf_ulp_ims_public_identity
, ASN1_EXTENSION_ROOT
, dissect_ulp_T_ims_public_identity
},
4616 { 5, &hf_ulp_min_01
, ASN1_EXTENSION_ROOT
, dissect_ulp_BIT_STRING_SIZE_34
},
4617 { 6, &hf_ulp_mdn_01
, ASN1_EXTENSION_ROOT
, dissect_ulp_T_mdn_01
},
4618 { 7, &hf_ulp_uri
, ASN1_EXTENSION_ROOT
, dissect_ulp_T_uri
},
4619 { 0, NULL
, 0, NULL
}
4623 dissect_ulp_ThirdPartyID(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4624 offset
= dissect_per_choice(tvb
, offset
, actx
, tree
, hf_index
,
4625 ett_ulp_ThirdPartyID
, ThirdPartyID_choice
,
4632 static const per_sequence_t ThirdParty_sequence_of
[1] = {
4633 { &hf_ulp_ThirdParty_item
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_ThirdPartyID
},
4637 dissect_ulp_ThirdParty(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4638 offset
= dissect_per_constrained_sequence_of(tvb
, offset
, actx
, tree
, hf_index
,
4639 ett_ulp_ThirdParty
, ThirdParty_sequence_of
,
4648 dissect_ulp_IA5String_SIZE_1_24(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4649 offset
= dissect_per_IA5String(tvb
, offset
, actx
, tree
, hf_index
,
4659 dissect_ulp_IA5String_SIZE_1_32(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4660 offset
= dissect_per_IA5String(tvb
, offset
, actx
, tree
, hf_index
,
4670 dissect_ulp_IA5String_SIZE_1_8(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4671 offset
= dissect_per_IA5String(tvb
, offset
, actx
, tree
, hf_index
,
4679 static const per_sequence_t ApplicationID_sequence
[] = {
4680 { &hf_ulp_appProvider
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_IA5String_SIZE_1_24
},
4681 { &hf_ulp_appName
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_IA5String_SIZE_1_32
},
4682 { &hf_ulp_appVersion
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_IA5String_SIZE_1_8
},
4683 { NULL
, 0, 0, NULL
}
4687 dissect_ulp_ApplicationID(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4688 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
4689 ett_ulp_ApplicationID
, ApplicationID_sequence
);
4697 dissect_ulp_UTCTime(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4698 offset
= dissect_per_VisibleString(tvb
, offset
, actx
, tree
, hf_index
,
4699 NO_BOUND
, NO_BOUND
, false,
4706 static const value_string ulp_T_latitudeSign_vals
[] = {
4714 dissect_ulp_T_latitudeSign(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4715 offset
= dissect_per_enumerated(tvb
, offset
, actx
, tree
, hf_index
,
4716 2, NULL
, false, 0, NULL
);
4724 dissect_ulp_INTEGER_M8388608_8388607(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4725 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
4726 -8388608, 8388607U, NULL
, false);
4734 dissect_ulp_INTEGER_0_180(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4735 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
4736 0U, 180U, NULL
, false);
4742 static const per_sequence_t T_uncertainty_sequence
[] = {
4743 { &hf_ulp_uncertaintySemiMajor
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_127
},
4744 { &hf_ulp_uncertaintySemiMinor
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_127
},
4745 { &hf_ulp_orientationMajorAxis
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_180
},
4746 { NULL
, 0, 0, NULL
}
4750 dissect_ulp_T_uncertainty(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4751 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
4752 ett_ulp_T_uncertainty
, T_uncertainty_sequence
);
4760 dissect_ulp_INTEGER_0_100(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4761 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
4762 0U, 100U, NULL
, false);
4768 static const value_string ulp_T_altitudeDirection_vals
[] = {
4776 dissect_ulp_T_altitudeDirection(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4777 offset
= dissect_per_enumerated(tvb
, offset
, actx
, tree
, hf_index
,
4778 2, NULL
, false, 0, NULL
);
4784 static const per_sequence_t AltitudeInfo_sequence
[] = {
4785 { &hf_ulp_altitudeDirection
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_T_altitudeDirection
},
4786 { &hf_ulp_altitude
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_32767
},
4787 { &hf_ulp_altUncertainty
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_127
},
4788 { NULL
, 0, 0, NULL
}
4792 dissect_ulp_AltitudeInfo(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4793 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
4794 ett_ulp_AltitudeInfo
, AltitudeInfo_sequence
);
4800 static const per_sequence_t PositionEstimate_sequence
[] = {
4801 { &hf_ulp_latitudeSign
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_T_latitudeSign
},
4802 { &hf_ulp_latitude
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_8388607
},
4803 { &hf_ulp_longitude
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_M8388608_8388607
},
4804 { &hf_ulp_uncertainty
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_T_uncertainty
},
4805 { &hf_ulp_confidence
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_100
},
4806 { &hf_ulp_altitudeInfo
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_AltitudeInfo
},
4807 { NULL
, 0, 0, NULL
}
4811 dissect_ulp_PositionEstimate(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4812 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
4813 ett_ulp_PositionEstimate
, PositionEstimate_sequence
);
4821 dissect_ulp_T_bearing(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4824 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, -1,
4825 9, 9, false, NULL
, 0, &val_tvb
, NULL
);
4828 actx
->created_item
= proto_tree_add_bits_item(tree
, hf_index
, val_tvb
, 0, 9, ENC_BIG_ENDIAN
);
4838 dissect_ulp_T_horspeed(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4841 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, -1,
4842 16, 16, false, NULL
, 0, &val_tvb
, NULL
);
4845 actx
->created_item
= proto_tree_add_item(tree
, hf_index
, val_tvb
, 0, 2, ENC_BIG_ENDIAN
);
4853 static const per_sequence_t Horvel_sequence
[] = {
4854 { &hf_ulp_bearing
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_T_bearing
},
4855 { &hf_ulp_horspeed
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_T_horspeed
},
4856 { NULL
, 0, 0, NULL
}
4860 dissect_ulp_Horvel(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4861 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
4862 ett_ulp_Horvel
, Horvel_sequence
);
4870 dissect_ulp_T_verdirect(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4873 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, -1,
4874 1, 1, false, NULL
, 0, &val_tvb
, NULL
);
4877 actx
->created_item
= proto_tree_add_bits_item(tree
, hf_index
, val_tvb
, 0, 1, ENC_NA
);
4887 dissect_ulp_T_bearing_01(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4890 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, -1,
4891 9, 9, false, NULL
, 0, &val_tvb
, NULL
);
4894 actx
->created_item
= proto_tree_add_bits_item(tree
, hf_index
, val_tvb
, 0, 9, ENC_BIG_ENDIAN
);
4904 dissect_ulp_T_horspeed_01(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4907 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, -1,
4908 16, 16, false, NULL
, 0, &val_tvb
, NULL
);
4911 actx
->created_item
= proto_tree_add_item(tree
, hf_index
, val_tvb
, 0, 2, ENC_BIG_ENDIAN
);
4921 dissect_ulp_T_verspeed(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4924 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, -1,
4925 8, 8, false, NULL
, 0, &val_tvb
, NULL
);
4928 actx
->created_item
= proto_tree_add_item(tree
, hf_index
, val_tvb
, 0, 1, ENC_BIG_ENDIAN
);
4936 static const per_sequence_t Horandvervel_sequence
[] = {
4937 { &hf_ulp_verdirect
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_T_verdirect
},
4938 { &hf_ulp_bearing_01
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_T_bearing_01
},
4939 { &hf_ulp_horspeed_01
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_T_horspeed_01
},
4940 { &hf_ulp_verspeed
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_T_verspeed
},
4941 { NULL
, 0, 0, NULL
}
4945 dissect_ulp_Horandvervel(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4946 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
4947 ett_ulp_Horandvervel
, Horandvervel_sequence
);
4955 dissect_ulp_T_bearing_02(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4958 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, -1,
4959 9, 9, false, NULL
, 0, &val_tvb
, NULL
);
4962 actx
->created_item
= proto_tree_add_bits_item(tree
, hf_index
, val_tvb
, 0, 9, ENC_BIG_ENDIAN
);
4972 dissect_ulp_T_horspeed_02(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4975 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, -1,
4976 16, 16, false, NULL
, 0, &val_tvb
, NULL
);
4979 actx
->created_item
= proto_tree_add_item(tree
, hf_index
, val_tvb
, 0, 2, ENC_BIG_ENDIAN
);
4989 dissect_ulp_T_uncertspeed(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
4992 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, -1,
4993 8, 8, false, NULL
, 0, &val_tvb
, NULL
);
4996 actx
->created_item
= proto_tree_add_item(tree
, hf_index
, val_tvb
, 0, 1, ENC_BIG_ENDIAN
);
5004 static const per_sequence_t Horveluncert_sequence
[] = {
5005 { &hf_ulp_bearing_02
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_T_bearing_02
},
5006 { &hf_ulp_horspeed_02
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_T_horspeed_02
},
5007 { &hf_ulp_uncertspeed
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_T_uncertspeed
},
5008 { NULL
, 0, 0, NULL
}
5012 dissect_ulp_Horveluncert(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5013 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
5014 ett_ulp_Horveluncert
, Horveluncert_sequence
);
5022 dissect_ulp_T_verdirect_01(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5025 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, -1,
5026 1, 1, false, NULL
, 0, &val_tvb
, NULL
);
5029 actx
->created_item
= proto_tree_add_bits_item(tree
, hf_index
, val_tvb
, 0, 1, ENC_NA
);
5039 dissect_ulp_T_bearing_03(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5042 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, -1,
5043 9, 9, false, NULL
, 0, &val_tvb
, NULL
);
5046 actx
->created_item
= proto_tree_add_bits_item(tree
, hf_index
, val_tvb
, 0, 9, ENC_BIG_ENDIAN
);
5056 dissect_ulp_T_horspeed_03(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5059 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, -1,
5060 16, 16, false, NULL
, 0, &val_tvb
, NULL
);
5063 actx
->created_item
= proto_tree_add_item(tree
, hf_index
, val_tvb
, 0, 2, ENC_BIG_ENDIAN
);
5073 dissect_ulp_T_verspeed_01(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5076 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, -1,
5077 8, 8, false, NULL
, 0, &val_tvb
, NULL
);
5080 actx
->created_item
= proto_tree_add_item(tree
, hf_index
, val_tvb
, 0, 1, ENC_BIG_ENDIAN
);
5090 dissect_ulp_T_horuncertspeed(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5093 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, -1,
5094 8, 8, false, NULL
, 0, &val_tvb
, NULL
);
5097 actx
->created_item
= proto_tree_add_item(tree
, hf_index
, val_tvb
, 0, 1, ENC_BIG_ENDIAN
);
5107 dissect_ulp_T_veruncertspeed(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5110 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, -1,
5111 8, 8, false, NULL
, 0, &val_tvb
, NULL
);
5114 actx
->created_item
= proto_tree_add_item(tree
, hf_index
, val_tvb
, 0, 1, ENC_BIG_ENDIAN
);
5122 static const per_sequence_t Horandveruncert_sequence
[] = {
5123 { &hf_ulp_verdirect_01
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_T_verdirect_01
},
5124 { &hf_ulp_bearing_03
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_T_bearing_03
},
5125 { &hf_ulp_horspeed_03
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_T_horspeed_03
},
5126 { &hf_ulp_verspeed_01
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_T_verspeed_01
},
5127 { &hf_ulp_horuncertspeed
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_T_horuncertspeed
},
5128 { &hf_ulp_veruncertspeed
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_T_veruncertspeed
},
5129 { NULL
, 0, 0, NULL
}
5133 dissect_ulp_Horandveruncert(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5134 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
5135 ett_ulp_Horandveruncert
, Horandveruncert_sequence
);
5141 static const value_string ulp_Velocity_vals
[] = {
5143 { 1, "horandvervel" },
5144 { 2, "horveluncert" },
5145 { 3, "horandveruncert" },
5149 static const per_choice_t Velocity_choice
[] = {
5150 { 0, &hf_ulp_horvel
, ASN1_EXTENSION_ROOT
, dissect_ulp_Horvel
},
5151 { 1, &hf_ulp_horandvervel
, ASN1_EXTENSION_ROOT
, dissect_ulp_Horandvervel
},
5152 { 2, &hf_ulp_horveluncert
, ASN1_EXTENSION_ROOT
, dissect_ulp_Horveluncert
},
5153 { 3, &hf_ulp_horandveruncert
, ASN1_EXTENSION_ROOT
, dissect_ulp_Horandveruncert
},
5154 { 0, NULL
, 0, NULL
}
5158 dissect_ulp_Velocity(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5159 offset
= dissect_per_choice(tvb
, offset
, actx
, tree
, hf_index
,
5160 ett_ulp_Velocity
, Velocity_choice
,
5167 static const per_sequence_t Position_sequence
[] = {
5168 { &hf_ulp_timestamp_01
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_UTCTime
},
5169 { &hf_ulp_positionEstimate
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_PositionEstimate
},
5170 { &hf_ulp_velocity
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_Velocity
},
5171 { NULL
, 0, 0, NULL
}
5175 dissect_ulp_Position(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5176 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
5177 ett_ulp_Position
, Position_sequence
);
5183 static const per_sequence_t Ver2_SUPL_START_extension_sequence
[] = {
5184 { &hf_ulp_multipleLocationIds
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_MultipleLocationIds
},
5185 { &hf_ulp_thirdParty
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_ThirdParty
},
5186 { &hf_ulp_applicationID
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_ApplicationID
},
5187 { &hf_ulp_position
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_Position
},
5188 { NULL
, 0, 0, NULL
}
5192 dissect_ulp_Ver2_SUPL_START_extension(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5193 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
5194 ett_ulp_Ver2_SUPL_START_extension
, Ver2_SUPL_START_extension_sequence
);
5200 static const per_sequence_t SUPLSTART_sequence
[] = {
5201 { &hf_ulp_sETCapabilities
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_SETCapabilities
},
5202 { &hf_ulp_locationId
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_LocationId
},
5203 { &hf_ulp_qoP
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_QoP
},
5204 { &hf_ulp_ver2_SUPL_START_extension
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_Ver2_SUPL_START_extension
},
5205 { NULL
, 0, 0, NULL
}
5209 dissect_ulp_SUPLSTART(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5210 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
5211 ett_ulp_SUPLSTART
, SUPLSTART_sequence
);
5219 dissect_ulp_BIT_STRING_SIZE_256(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5220 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, hf_index
,
5221 256, 256, false, NULL
, 0, NULL
, NULL
);
5227 static const value_string ulp_SETAuthKey_vals
[] = {
5233 static const per_choice_t SETAuthKey_choice
[] = {
5234 { 0, &hf_ulp_shortKey
, ASN1_EXTENSION_ROOT
, dissect_ulp_BIT_STRING_SIZE_128
},
5235 { 1, &hf_ulp_longKey
, ASN1_EXTENSION_ROOT
, dissect_ulp_BIT_STRING_SIZE_256
},
5236 { 0, NULL
, 0, NULL
}
5240 dissect_ulp_SETAuthKey(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5241 offset
= dissect_per_choice(tvb
, offset
, actx
, tree
, hf_index
,
5242 ett_ulp_SETAuthKey
, SETAuthKey_choice
,
5251 dissect_ulp_KeyIdentity4(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5252 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, hf_index
,
5253 128, 128, false, NULL
, 0, NULL
, NULL
);
5261 dissect_ulp_SPCSETKey(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5262 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, hf_index
,
5263 128, 128, false, NULL
, 0, NULL
, NULL
);
5269 static const per_sequence_t SPCTID_sequence
[] = {
5270 { &hf_ulp_rand
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BIT_STRING_SIZE_128
},
5271 { &hf_ulp_slpFQDN
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_FQDN
},
5272 { NULL
, 0, 0, NULL
}
5276 dissect_ulp_SPCTID(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5277 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
5278 ett_ulp_SPCTID
, SPCTID_sequence
);
5286 dissect_ulp_SPCSETKeylifetime(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5287 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
5288 1U, 24U, NULL
, false);
5294 static const per_sequence_t Ver2_SUPL_RESPONSE_extension_sequence
[] = {
5295 { &hf_ulp_supportedNetworkInformation
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_SupportedNetworkInformation
},
5296 { &hf_ulp_sPCSETKey
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_SPCSETKey
},
5297 { &hf_ulp_spctid
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_SPCTID
},
5298 { &hf_ulp_sPCSETKeylifetime
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_SPCSETKeylifetime
},
5299 { &hf_ulp_initialApproximateposition
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_Position
},
5300 { &hf_ulp_gnssPosTechnology
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_GNSSPosTechnology
},
5301 { NULL
, 0, 0, NULL
}
5305 dissect_ulp_Ver2_SUPL_RESPONSE_extension(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5306 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
5307 ett_ulp_Ver2_SUPL_RESPONSE_extension
, Ver2_SUPL_RESPONSE_extension_sequence
);
5313 static const per_sequence_t SUPLRESPONSE_sequence
[] = {
5314 { &hf_ulp_posMethod
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_PosMethod
},
5315 { &hf_ulp_sLPAddress
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_SLPAddress
},
5316 { &hf_ulp_sETAuthKey
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_SETAuthKey
},
5317 { &hf_ulp_keyIdentity4
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_KeyIdentity4
},
5318 { &hf_ulp_ver2_SUPL_RESPONSE_extension
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_Ver2_SUPL_RESPONSE_extension
},
5319 { NULL
, 0, 0, NULL
}
5323 dissect_ulp_SUPLRESPONSE(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5324 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
5325 ett_ulp_SUPLRESPONSE
, SUPLRESPONSE_sequence
);
5333 dissect_ulp_INTEGER_0_167(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5334 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
5335 0U, 167U, NULL
, false);
5343 dissect_ulp_INTEGER_0_31(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5344 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
5345 0U, 31U, NULL
, false);
5353 dissect_ulp_INTEGER_0_10(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5354 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
5355 0U, 10U, NULL
, false);
5361 static const per_sequence_t SatelliteInfoElement_sequence
[] = {
5362 { &hf_ulp_satId
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_63
},
5363 { &hf_ulp_iode
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_255
},
5364 { NULL
, 0, 0, NULL
}
5368 dissect_ulp_SatelliteInfoElement(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5369 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
5370 ett_ulp_SatelliteInfoElement
, SatelliteInfoElement_sequence
);
5376 static const per_sequence_t SatelliteInfo_sequence_of
[1] = {
5377 { &hf_ulp_SatelliteInfo_item
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_SatelliteInfoElement
},
5381 dissect_ulp_SatelliteInfo(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5382 offset
= dissect_per_constrained_sequence_of(tvb
, offset
, actx
, tree
, hf_index
,
5383 ett_ulp_SatelliteInfo
, SatelliteInfo_sequence_of
,
5390 static const per_sequence_t NavigationModel_sequence
[] = {
5391 { &hf_ulp_gpsWeek
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_1023
},
5392 { &hf_ulp_gpsToe
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_167
},
5393 { &hf_ulp_nsat
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_31
},
5394 { &hf_ulp_toeLimit
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_10
},
5395 { &hf_ulp_satInfo
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_SatelliteInfo
},
5396 { NULL
, 0, 0, NULL
}
5400 dissect_ulp_NavigationModel(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5401 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
5402 ett_ulp_NavigationModel
, NavigationModel_sequence
);
5408 static const per_sequence_t GanssRequestedCommonAssistanceDataList_sequence
[] = {
5409 { &hf_ulp_ganssReferenceTime
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
5410 { &hf_ulp_ganssIonosphericModel
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
5411 { &hf_ulp_ganssAdditionalIonosphericModelForDataID00
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
5412 { &hf_ulp_ganssAdditionalIonosphericModelForDataID11
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
5413 { &hf_ulp_ganssEarthOrientationParameters
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
5414 { &hf_ulp_ganssAdditionalIonosphericModelForDataID01
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_BOOLEAN
},
5415 { NULL
, 0, 0, NULL
}
5419 dissect_ulp_GanssRequestedCommonAssistanceDataList(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5420 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
5421 ett_ulp_GanssRequestedCommonAssistanceDataList
, GanssRequestedCommonAssistanceDataList_sequence
);
5429 dissect_ulp_T_ganssId(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5431 ulp_private_data_t
*ulp_priv
= ulp_get_private_data(actx
);
5433 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
5434 0U, 15U, &val
, false);
5436 ulp_priv
->ganss_req_gen_data_ganss_id
= (uint8_t) val
;
5445 dissect_ulp_T_ganssSBASid_01(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5448 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, -1,
5449 3, 3, false, NULL
, 0, &val_tvb
, NULL
);
5452 proto_tree_add_bits_item(tree
, hf_index
, val_tvb
, 0, 3, ENC_NA
);
5462 dissect_ulp_DGANSS_Sig_Id_Req(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5463 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, hf_index
,
5464 8, 8, false, NULL
, 0, NULL
, NULL
);
5472 dissect_ulp_T_ganssWeek(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5473 ulp_private_data_t
*ulp_priv
= ulp_get_private_data(actx
);
5475 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
5476 0U, 4095U, NULL
, false);
5478 if (ulp_priv
->ganss_req_gen_data_ganss_id
!= 4) {
5480 proto_item_append_text(actx
->created_item
, "wk");
5482 proto_item_append_text(actx
->created_item
, "d");
5492 dissect_ulp_T_ganssToe(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5494 ulp_private_data_t
*ulp_priv
= ulp_get_private_data(actx
);
5496 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
5497 0U, 167U, &val
, false);
5501 if (ulp_priv
->ganss_req_gen_data_ganss_id
!= 4) {
5503 proto_item_append_text(actx
->created_item
, "h");
5505 proto_item_set_text(actx
->created_item
, "%umin (%u)", 15*val
, val
);
5514 dissect_ulp_T_t_toeLimit(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5516 ulp_private_data_t
*ulp_priv
= ulp_get_private_data(actx
);
5518 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
5519 0U, 15U, &val
, false);
5523 if (ulp_priv
->ganss_req_gen_data_ganss_id
!= 4) {
5525 proto_item_append_text(actx
->created_item
, "h");
5527 proto_item_set_text(actx
->created_item
, "%umin (%u)", 30*val
, val
);
5534 static const per_sequence_t SatellitesListRelatedData_sequence
[] = {
5535 { &hf_ulp_satId
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_63
},
5536 { &hf_ulp_iod
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_1023
},
5537 { NULL
, 0, 0, NULL
}
5541 dissect_ulp_SatellitesListRelatedData(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5542 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
5543 ett_ulp_SatellitesListRelatedData
, SatellitesListRelatedData_sequence
);
5549 static const per_sequence_t SatellitesListRelatedDataList_sequence_of
[1] = {
5550 { &hf_ulp_SatellitesListRelatedDataList_item
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_SatellitesListRelatedData
},
5554 dissect_ulp_SatellitesListRelatedDataList(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5555 offset
= dissect_per_constrained_sequence_of(tvb
, offset
, actx
, tree
, hf_index
,
5556 ett_ulp_SatellitesListRelatedDataList
, SatellitesListRelatedDataList_sequence_of
,
5557 0, maxGANSSSat
, false);
5563 static const per_sequence_t GanssNavigationModelData_sequence
[] = {
5564 { &hf_ulp_ganssWeek
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_T_ganssWeek
},
5565 { &hf_ulp_ganssToe
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_T_ganssToe
},
5566 { &hf_ulp_t_toeLimit
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_T_t_toeLimit
},
5567 { &hf_ulp_satellitesListRelatedDataList
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_SatellitesListRelatedDataList
},
5568 { NULL
, 0, 0, NULL
}
5572 dissect_ulp_GanssNavigationModelData(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5573 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
5574 ett_ulp_GanssNavigationModelData
, GanssNavigationModelData_sequence
);
5582 dissect_ulp_T_ganssTimeModels(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5584 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, hf_index
,
5585 16, 16, false, NULL
, 0, &val_tvb
, NULL
);
5588 proto_tree
*subtree
= proto_item_add_subtree(actx
->created_item
, ett_ulp_ganssTimeModels
);
5589 proto_tree_add_item(subtree
, hf_ulp_ganssTimeModels_bit0
, val_tvb
, 0, 2, ENC_BIG_ENDIAN
);
5590 proto_tree_add_item(subtree
, hf_ulp_ganssTimeModels_bit1
, val_tvb
, 0, 2, ENC_BIG_ENDIAN
);
5591 proto_tree_add_item(subtree
, hf_ulp_ganssTimeModels_bit2
, val_tvb
, 0, 2, ENC_BIG_ENDIAN
);
5592 proto_tree_add_item(subtree
, hf_ulp_ganssTimeModels_bit3
, val_tvb
, 0, 2, ENC_BIG_ENDIAN
);
5593 proto_tree_add_item(subtree
, hf_ulp_ganssTimeModels_bit4
, val_tvb
, 0, 2, ENC_BIG_ENDIAN
);
5594 proto_tree_add_item(subtree
, hf_ulp_ganssTimeModels_spare
, val_tvb
, 0, 2, ENC_BIG_ENDIAN
);
5604 dissect_ulp_INTEGER_0_59(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5605 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
5606 0U, 59U, NULL
, false);
5612 static const per_sequence_t T_ganssDataBitSatList_sequence_of
[1] = {
5613 { &hf_ulp_ganssDataBitSatList_item
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_63
},
5617 dissect_ulp_T_ganssDataBitSatList(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5618 offset
= dissect_per_constrained_sequence_of(tvb
, offset
, actx
, tree
, hf_index
,
5619 ett_ulp_T_ganssDataBitSatList
, T_ganssDataBitSatList_sequence_of
,
5620 1, maxGANSSSat
, false);
5626 static const per_sequence_t ReqDataBitAssistanceList_sequence
[] = {
5627 { &hf_ulp_gnssSignals
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_GANSSSignals
},
5628 { &hf_ulp_ganssDataBitInterval
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_15
},
5629 { &hf_ulp_ganssDataBitSatList
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_T_ganssDataBitSatList
},
5630 { NULL
, 0, 0, NULL
}
5634 dissect_ulp_ReqDataBitAssistanceList(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5635 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
5636 ett_ulp_ReqDataBitAssistanceList
, ReqDataBitAssistanceList_sequence
);
5642 static const per_sequence_t GanssDataBits_sequence
[] = {
5643 { &hf_ulp_ganssTODmin
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_59
},
5644 { &hf_ulp_reqDataBitAssistanceList
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_ReqDataBitAssistanceList
},
5645 { NULL
, 0, 0, NULL
}
5649 dissect_ulp_GanssDataBits(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5650 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
5651 ett_ulp_GanssDataBits
, GanssDataBits_sequence
);
5657 static const per_sequence_t GanssAdditionalDataChoices_sequence
[] = {
5658 { &hf_ulp_orbitModelID
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_7
},
5659 { &hf_ulp_clockModelID
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_7
},
5660 { &hf_ulp_utcModelID
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_7
},
5661 { &hf_ulp_almanacModelID
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_7
},
5662 { NULL
, 0, 0, NULL
}
5666 dissect_ulp_GanssAdditionalDataChoices(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5667 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
5668 ett_ulp_GanssAdditionalDataChoices
, GanssAdditionalDataChoices_sequence
);
5676 dissect_ulp_INTEGER_1_256(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5677 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
5678 1U, 256U, NULL
, false);
5684 static const per_sequence_t ExtendedEphemeris_sequence
[] = {
5685 { &hf_ulp_validity
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_1_256
},
5686 { NULL
, 0, 0, NULL
}
5690 dissect_ulp_ExtendedEphemeris(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5691 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
5692 ett_ulp_ExtendedEphemeris
, ExtendedEphemeris_sequence
);
5700 dissect_ulp_INTEGER_0_23(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5701 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
5702 0U, 23U, NULL
, false);
5708 static const per_sequence_t GANSSextEphTime_sequence
[] = {
5709 { &hf_ulp_gANSSday
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_8191
},
5710 { &hf_ulp_gANSSTODhour
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_23
},
5711 { NULL
, 0, 0, NULL
}
5715 dissect_ulp_GANSSextEphTime(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5716 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
5717 ett_ulp_GANSSextEphTime
, GANSSextEphTime_sequence
);
5723 static const per_sequence_t GanssExtendedEphCheck_sequence
[] = {
5724 { &hf_ulp_beginTime_01
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_GANSSextEphTime
},
5725 { &hf_ulp_endTime_01
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_GANSSextEphTime
},
5726 { NULL
, 0, 0, NULL
}
5730 dissect_ulp_GanssExtendedEphCheck(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5731 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
5732 ett_ulp_GanssExtendedEphCheck
, GanssExtendedEphCheck_sequence
);
5740 dissect_ulp_BDS_Sig_Id_Req(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5741 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, hf_index
,
5742 8, 8, false, NULL
, 0, NULL
, NULL
);
5748 static const per_sequence_t GanssReqGenericData_sequence
[] = {
5749 { &hf_ulp_ganssId_01
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_T_ganssId
},
5750 { &hf_ulp_ganssSBASid_01
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_T_ganssSBASid_01
},
5751 { &hf_ulp_ganssRealTimeIntegrity
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
5752 { &hf_ulp_ganssDifferentialCorrection
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_DGANSS_Sig_Id_Req
},
5753 { &hf_ulp_ganssAlmanac
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
5754 { &hf_ulp_ganssNavigationModelData
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_GanssNavigationModelData
},
5755 { &hf_ulp_ganssTimeModels
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_T_ganssTimeModels
},
5756 { &hf_ulp_ganssReferenceMeasurementInfo
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
5757 { &hf_ulp_ganssDataBits
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_GanssDataBits
},
5758 { &hf_ulp_ganssUTCModel
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
5759 { &hf_ulp_ganssAdditionalDataChoices
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_GanssAdditionalDataChoices
},
5760 { &hf_ulp_ganssAuxiliaryInformation
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
5761 { &hf_ulp_ganssExtendedEphemeris
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_ExtendedEphemeris
},
5762 { &hf_ulp_ganssExtendedEphemerisCheck
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_GanssExtendedEphCheck
},
5763 { &hf_ulp_bds_DifferentialCorrection
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_BDS_Sig_Id_Req
},
5764 { &hf_ulp_bds_GridModelReq
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_BOOLEAN
},
5765 { NULL
, 0, 0, NULL
}
5769 dissect_ulp_GanssReqGenericData(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5770 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
5771 ett_ulp_GanssReqGenericData
, GanssReqGenericData_sequence
);
5777 static const per_sequence_t GanssRequestedGenericAssistanceDataList_sequence_of
[1] = {
5778 { &hf_ulp_GanssRequestedGenericAssistanceDataList_item
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_GanssReqGenericData
},
5782 dissect_ulp_GanssRequestedGenericAssistanceDataList(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5783 offset
= dissect_per_constrained_sequence_of(tvb
, offset
, actx
, tree
, hf_index
,
5784 ett_ulp_GanssRequestedGenericAssistanceDataList
, GanssRequestedGenericAssistanceDataList_sequence_of
,
5785 1, maxGANSS
, false);
5791 static const per_sequence_t GPSTime_sequence
[] = {
5792 { &hf_ulp_gPSWeek
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_1023
},
5793 { &hf_ulp_gPSTOWhour
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_167
},
5794 { NULL
, 0, 0, NULL
}
5798 dissect_ulp_GPSTime(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5799 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
5800 ett_ulp_GPSTime
, GPSTime_sequence
);
5806 static const per_sequence_t ExtendedEphCheck_sequence
[] = {
5807 { &hf_ulp_beginTime
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_GPSTime
},
5808 { &hf_ulp_endTime
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_GPSTime
},
5809 { NULL
, 0, 0, NULL
}
5813 dissect_ulp_ExtendedEphCheck(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5814 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
5815 ett_ulp_ExtendedEphCheck
, ExtendedEphCheck_sequence
);
5821 static const per_sequence_t Ver2_RequestedAssistData_extension_sequence
[] = {
5822 { &hf_ulp_ganssRequestedCommonAssistanceDataList
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_GanssRequestedCommonAssistanceDataList
},
5823 { &hf_ulp_ganssRequestedGenericAssistanceDataList
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_GanssRequestedGenericAssistanceDataList
},
5824 { &hf_ulp_extendedEphemeris
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_ExtendedEphemeris
},
5825 { &hf_ulp_extendedEphemerisCheck
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_ExtendedEphCheck
},
5826 { NULL
, 0, 0, NULL
}
5830 dissect_ulp_Ver2_RequestedAssistData_extension(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5831 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
5832 ett_ulp_Ver2_RequestedAssistData_extension
, Ver2_RequestedAssistData_extension_sequence
);
5838 static const per_sequence_t RequestedAssistData_sequence
[] = {
5839 { &hf_ulp_almanacRequested
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
5840 { &hf_ulp_utcModelRequested
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
5841 { &hf_ulp_ionosphericModelRequested
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
5842 { &hf_ulp_dgpsCorrectionsRequested
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
5843 { &hf_ulp_referenceLocationRequested
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
5844 { &hf_ulp_referenceTimeRequested
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
5845 { &hf_ulp_acquisitionAssistanceRequested
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
5846 { &hf_ulp_realTimeIntegrityRequested
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
5847 { &hf_ulp_navigationModelRequested
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
5848 { &hf_ulp_navigationModelData
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_NavigationModel
},
5849 { &hf_ulp_ver2_RequestedAssistData_extension
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_Ver2_RequestedAssistData_extension
},
5850 { NULL
, 0, 0, NULL
}
5854 dissect_ulp_RequestedAssistData(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5855 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
5856 ett_ulp_RequestedAssistData
, RequestedAssistData_sequence
);
5864 dissect_ulp_OCTET_STRING_SIZE_1_8192(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5865 offset
= dissect_per_octet_string(tvb
, offset
, actx
, tree
, hf_index
,
5866 1, 8192, false, NULL
);
5874 dissect_ulp_T_rrlpPayload(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5877 offset
= dissect_per_octet_string(tvb
, offset
, actx
, tree
, hf_index
,
5878 1, 8192, false, &rrlp_tvb
);
5881 if (rrlp_tvb
&& rrlp_handle
) {
5882 call_dissector(rrlp_handle
, rrlp_tvb
, actx
->pinfo
, tree
);
5892 dissect_ulp_T_lPPPayload_item(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5895 offset
= dissect_per_octet_string(tvb
, offset
, actx
, tree
, hf_index
,
5896 1, 60000, false, &lpp_tvb
);
5899 if (lpp_tvb
&& lpp_handle
) {
5900 call_dissector(lpp_handle
, lpp_tvb
, actx
->pinfo
, tree
);
5908 static const per_sequence_t T_lPPPayload_sequence_of
[1] = {
5909 { &hf_ulp_lPPPayload_item
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_T_lPPPayload_item
},
5913 dissect_ulp_T_lPPPayload(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5914 offset
= dissect_per_constrained_sequence_of(tvb
, offset
, actx
, tree
, hf_index
,
5915 ett_ulp_T_lPPPayload
, T_lPPPayload_sequence_of
,
5924 dissect_ulp_OCTET_STRING_SIZE_1_60000(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5925 offset
= dissect_per_octet_string(tvb
, offset
, actx
, tree
, hf_index
,
5926 1, 60000, false, NULL
);
5932 static const per_sequence_t T_tia801Payload_sequence_of
[1] = {
5933 { &hf_ulp_tia801Payload_item
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_OCTET_STRING_SIZE_1_60000
},
5937 dissect_ulp_T_tia801Payload(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5938 offset
= dissect_per_constrained_sequence_of(tvb
, offset
, actx
, tree
, hf_index
,
5939 ett_ulp_T_tia801Payload
, T_tia801Payload_sequence_of
,
5946 static const per_sequence_t Ver2_PosPayLoad_extension_sequence
[] = {
5947 { &hf_ulp_lPPPayload
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_T_lPPPayload
},
5948 { &hf_ulp_tia801Payload
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_T_tia801Payload
},
5949 { NULL
, 0, 0, NULL
}
5953 dissect_ulp_Ver2_PosPayLoad_extension(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5954 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
5955 ett_ulp_Ver2_PosPayLoad_extension
, Ver2_PosPayLoad_extension_sequence
);
5961 static const value_string ulp_PosPayLoad_vals
[] = {
5962 { 0, "tia801payload" },
5963 { 1, "rrcPayload" },
5964 { 2, "rrlpPayload" },
5965 { 3, "ver2-PosPayLoad-extension" },
5969 static const per_choice_t PosPayLoad_choice
[] = {
5970 { 0, &hf_ulp_tia801payload
, ASN1_EXTENSION_ROOT
, dissect_ulp_OCTET_STRING_SIZE_1_8192
},
5971 { 1, &hf_ulp_rrcPayload
, ASN1_EXTENSION_ROOT
, dissect_ulp_OCTET_STRING_SIZE_1_8192
},
5972 { 2, &hf_ulp_rrlpPayload
, ASN1_EXTENSION_ROOT
, dissect_ulp_T_rrlpPayload
},
5973 { 3, &hf_ulp_ver2_PosPayLoad_extension
, ASN1_NOT_EXTENSION_ROOT
, dissect_ulp_Ver2_PosPayLoad_extension
},
5974 { 0, NULL
, 0, NULL
}
5978 dissect_ulp_PosPayLoad(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5979 offset
= dissect_per_choice(tvb
, offset
, actx
, tree
, hf_index
,
5980 ett_ulp_PosPayLoad
, PosPayLoad_choice
,
5987 static const per_sequence_t T_utran_GPSTimingOfCell_sequence
[] = {
5988 { &hf_ulp_ms_part
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_1023
},
5989 { &hf_ulp_ls_part
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_4294967295
},
5990 { NULL
, 0, 0, NULL
}
5994 dissect_ulp_T_utran_GPSTimingOfCell(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
5995 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
5996 ett_ulp_T_utran_GPSTimingOfCell
, T_utran_GPSTimingOfCell_sequence
);
6002 static const per_sequence_t T_fdd_01_sequence
[] = {
6003 { &hf_ulp_referenceIdentity
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_PrimaryCPICH_Info
},
6004 { NULL
, 0, 0, NULL
}
6008 dissect_ulp_T_fdd_01(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6009 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6010 ett_ulp_T_fdd_01
, T_fdd_01_sequence
);
6016 static const per_sequence_t T_tdd_01_sequence
[] = {
6017 { &hf_ulp_referenceIdentity_01
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_CellParametersID
},
6018 { NULL
, 0, 0, NULL
}
6022 dissect_ulp_T_tdd_01(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6023 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6024 ett_ulp_T_tdd_01
, T_tdd_01_sequence
);
6030 static const value_string ulp_T_modeSpecificInfo_01_vals
[] = {
6036 static const per_choice_t T_modeSpecificInfo_01_choice
[] = {
6037 { 0, &hf_ulp_fdd_01
, ASN1_NO_EXTENSIONS
, dissect_ulp_T_fdd_01
},
6038 { 1, &hf_ulp_tdd_01
, ASN1_NO_EXTENSIONS
, dissect_ulp_T_tdd_01
},
6039 { 0, NULL
, 0, NULL
}
6043 dissect_ulp_T_modeSpecificInfo_01(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6044 offset
= dissect_per_choice(tvb
, offset
, actx
, tree
, hf_index
,
6045 ett_ulp_T_modeSpecificInfo_01
, T_modeSpecificInfo_01_choice
,
6054 dissect_ulp_INTEGER_0_4095(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6055 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
6056 0U, 4095U, NULL
, false);
6062 static const per_sequence_t UTRAN_GPSReferenceTime_sequence
[] = {
6063 { &hf_ulp_utran_GPSTimingOfCell
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_T_utran_GPSTimingOfCell
},
6064 { &hf_ulp_modeSpecificInfo_01
, ASN1_NO_EXTENSIONS
, ASN1_OPTIONAL
, dissect_ulp_T_modeSpecificInfo_01
},
6065 { &hf_ulp_sfn
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_4095
},
6066 { NULL
, 0, 0, NULL
}
6070 dissect_ulp_UTRAN_GPSReferenceTime(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6071 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6072 ett_ulp_UTRAN_GPSReferenceTime
, UTRAN_GPSReferenceTime_sequence
);
6078 static const value_string ulp_UTRANGPSDriftRate_vals
[] = {
6079 { 0, "utran-GPSDrift0" },
6080 { 1, "utran-GPSDrift1" },
6081 { 2, "utran-GPSDrift2" },
6082 { 3, "utran-GPSDrift5" },
6083 { 4, "utran-GPSDrift10" },
6084 { 5, "utran-GPSDrift15" },
6085 { 6, "utran-GPSDrift25" },
6086 { 7, "utran-GPSDrift50" },
6087 { 8, "utran-GPSDrift-1" },
6088 { 9, "utran-GPSDrift-2" },
6089 { 10, "utran-GPSDrift-5" },
6090 { 11, "utran-GPSDrift-10" },
6091 { 12, "utran-GPSDrift-15" },
6092 { 13, "utran-GPSDrift-25" },
6093 { 14, "utran-GPSDrift-50" },
6099 dissect_ulp_UTRANGPSDriftRate(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6100 offset
= dissect_per_enumerated(tvb
, offset
, actx
, tree
, hf_index
,
6101 15, NULL
, false, 0, NULL
);
6107 static const per_sequence_t UTRAN_GPSReferenceTimeAssistance_sequence
[] = {
6108 { &hf_ulp_utran_GPSReferenceTime
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_UTRAN_GPSReferenceTime
},
6109 { &hf_ulp_gpsReferenceTimeUncertainty
, ASN1_NO_EXTENSIONS
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_127
},
6110 { &hf_ulp_utranGPSDriftRate
, ASN1_NO_EXTENSIONS
, ASN1_OPTIONAL
, dissect_ulp_UTRANGPSDriftRate
},
6111 { NULL
, 0, 0, NULL
}
6115 dissect_ulp_UTRAN_GPSReferenceTimeAssistance(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6116 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6117 ett_ulp_UTRAN_GPSReferenceTimeAssistance
, UTRAN_GPSReferenceTimeAssistance_sequence
);
6125 dissect_ulp_INTEGER_0_16383(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6126 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
6127 0U, 16383U, NULL
, false);
6133 static const per_sequence_t T_set_GPSTimingOfCell_sequence
[] = {
6134 { &hf_ulp_ms_part_01
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_16383
},
6135 { &hf_ulp_ls_part
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_4294967295
},
6136 { NULL
, 0, 0, NULL
}
6140 dissect_ulp_T_set_GPSTimingOfCell(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6141 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6142 ett_ulp_T_set_GPSTimingOfCell
, T_set_GPSTimingOfCell_sequence
);
6148 static const per_sequence_t T_fdd_02_sequence
[] = {
6149 { &hf_ulp_referenceIdentity
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_PrimaryCPICH_Info
},
6150 { NULL
, 0, 0, NULL
}
6154 dissect_ulp_T_fdd_02(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6155 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6156 ett_ulp_T_fdd_02
, T_fdd_02_sequence
);
6162 static const per_sequence_t T_tdd_02_sequence
[] = {
6163 { &hf_ulp_referenceIdentity_01
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_CellParametersID
},
6164 { NULL
, 0, 0, NULL
}
6168 dissect_ulp_T_tdd_02(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6169 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6170 ett_ulp_T_tdd_02
, T_tdd_02_sequence
);
6176 static const value_string ulp_T_modeSpecificInfo_02_vals
[] = {
6182 static const per_choice_t T_modeSpecificInfo_02_choice
[] = {
6183 { 0, &hf_ulp_fdd_02
, ASN1_NO_EXTENSIONS
, dissect_ulp_T_fdd_02
},
6184 { 1, &hf_ulp_tdd_02
, ASN1_NO_EXTENSIONS
, dissect_ulp_T_tdd_02
},
6185 { 0, NULL
, 0, NULL
}
6189 dissect_ulp_T_modeSpecificInfo_02(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6190 offset
= dissect_per_choice(tvb
, offset
, actx
, tree
, hf_index
,
6191 ett_ulp_T_modeSpecificInfo_02
, T_modeSpecificInfo_02_choice
,
6198 static const per_sequence_t UTRAN_GPSReferenceTimeResult_sequence
[] = {
6199 { &hf_ulp_set_GPSTimingOfCell
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_T_set_GPSTimingOfCell
},
6200 { &hf_ulp_modeSpecificInfo_02
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_T_modeSpecificInfo_02
},
6201 { &hf_ulp_sfn
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_4095
},
6202 { &hf_ulp_gpsReferenceTimeUncertainty
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_127
},
6203 { NULL
, 0, 0, NULL
}
6207 dissect_ulp_UTRAN_GPSReferenceTimeResult(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6208 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6209 ett_ulp_UTRAN_GPSReferenceTimeResult
, UTRAN_GPSReferenceTimeResult_sequence
);
6217 dissect_ulp_INTEGER_0_86399(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6218 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
6219 0U, 86399U, NULL
, false);
6227 dissect_ulp_INTEGER_0_3999999(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6228 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
6229 0U, 3999999U, NULL
, false);
6235 static const per_sequence_t T_fdd_03_sequence
[] = {
6236 { &hf_ulp_referenceIdentity
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_PrimaryCPICH_Info
},
6237 { NULL
, 0, 0, NULL
}
6241 dissect_ulp_T_fdd_03(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6242 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6243 ett_ulp_T_fdd_03
, T_fdd_03_sequence
);
6249 static const per_sequence_t T_tdd_03_sequence
[] = {
6250 { &hf_ulp_referenceIdentity_01
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_CellParametersID
},
6251 { NULL
, 0, 0, NULL
}
6255 dissect_ulp_T_tdd_03(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6256 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6257 ett_ulp_T_tdd_03
, T_tdd_03_sequence
);
6263 static const value_string ulp_T_modeSpecificInfo_03_vals
[] = {
6269 static const per_choice_t T_modeSpecificInfo_03_choice
[] = {
6270 { 0, &hf_ulp_fdd_03
, ASN1_NO_EXTENSIONS
, dissect_ulp_T_fdd_03
},
6271 { 1, &hf_ulp_tdd_03
, ASN1_NO_EXTENSIONS
, dissect_ulp_T_tdd_03
},
6272 { 0, NULL
, 0, NULL
}
6276 dissect_ulp_T_modeSpecificInfo_03(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6277 offset
= dissect_per_choice(tvb
, offset
, actx
, tree
, hf_index
,
6278 ett_ulp_T_modeSpecificInfo_03
, T_modeSpecificInfo_03_choice
,
6285 static const per_sequence_t UTRAN_GANSSReferenceTime_sequence
[] = {
6286 { &hf_ulp_ganssTOD
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_86399
},
6287 { &hf_ulp_utran_GANSSTimingOfCell
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_3999999
},
6288 { &hf_ulp_modeSpecificInfo_03
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_T_modeSpecificInfo_03
},
6289 { &hf_ulp_sfn
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_4095
},
6290 { &hf_ulp_ganss_TODUncertainty
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_127
},
6291 { NULL
, 0, 0, NULL
}
6295 dissect_ulp_UTRAN_GANSSReferenceTime(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6296 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6297 ett_ulp_UTRAN_GANSSReferenceTime
, UTRAN_GANSSReferenceTime_sequence
);
6303 static const value_string ulp_UTRANGANSSDriftRate_vals
[] = {
6304 { 0, "utran-GANSSDrift0" },
6305 { 1, "utran-GANSSDrift1" },
6306 { 2, "utran-GANSSDrift2" },
6307 { 3, "utran-GANSSDrift5" },
6308 { 4, "utran-GANSSDrift10" },
6309 { 5, "utran-GANSSDrift15" },
6310 { 6, "utran-GANSSDrift25" },
6311 { 7, "utran-GANSSDrift50" },
6312 { 8, "utran-GANSSDrift-1" },
6313 { 9, "utran-GANSSDrift-2" },
6314 { 10, "utran-GANSSDrift-5" },
6315 { 11, "utran-GANSSDrift-10" },
6316 { 12, "utran-GANSSDrift-15" },
6317 { 13, "utran-GANSSDrift-25" },
6318 { 14, "utran-GANSSDrift-50" },
6324 dissect_ulp_UTRANGANSSDriftRate(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6325 offset
= dissect_per_enumerated(tvb
, offset
, actx
, tree
, hf_index
,
6326 15, NULL
, false, 0, NULL
);
6332 static const per_sequence_t UTRAN_GANSSReferenceTimeAssistance_sequence
[] = {
6333 { &hf_ulp_ganssDay
, ASN1_NO_EXTENSIONS
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_8191
},
6334 { &hf_ulp_ganssTimeID
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_15
},
6335 { &hf_ulp_utran_GANSSReferenceTime
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_UTRAN_GANSSReferenceTime
},
6336 { &hf_ulp_utranGANSSDriftRate
, ASN1_NO_EXTENSIONS
, ASN1_OPTIONAL
, dissect_ulp_UTRANGANSSDriftRate
},
6337 { NULL
, 0, 0, NULL
}
6341 dissect_ulp_UTRAN_GANSSReferenceTimeAssistance(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6342 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6343 ett_ulp_UTRAN_GANSSReferenceTimeAssistance
, UTRAN_GANSSReferenceTimeAssistance_sequence
);
6351 dissect_ulp_INTEGER_0_80(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6352 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
6353 0U, 80U, NULL
, false);
6359 static const per_sequence_t T_set_GANSSTimingOfCell_sequence
[] = {
6360 { &hf_ulp_ms_part_02
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_80
},
6361 { &hf_ulp_ls_part
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_4294967295
},
6362 { NULL
, 0, 0, NULL
}
6366 dissect_ulp_T_set_GANSSTimingOfCell(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6367 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6368 ett_ulp_T_set_GANSSTimingOfCell
, T_set_GANSSTimingOfCell_sequence
);
6374 static const per_sequence_t T_fdd_04_sequence
[] = {
6375 { &hf_ulp_referenceIdentity
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_PrimaryCPICH_Info
},
6376 { NULL
, 0, 0, NULL
}
6380 dissect_ulp_T_fdd_04(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6381 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6382 ett_ulp_T_fdd_04
, T_fdd_04_sequence
);
6388 static const per_sequence_t T_tdd_04_sequence
[] = {
6389 { &hf_ulp_referenceIdentity_01
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_CellParametersID
},
6390 { NULL
, 0, 0, NULL
}
6394 dissect_ulp_T_tdd_04(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6395 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6396 ett_ulp_T_tdd_04
, T_tdd_04_sequence
);
6402 static const value_string ulp_T_modeSpecificInfo_04_vals
[] = {
6408 static const per_choice_t T_modeSpecificInfo_04_choice
[] = {
6409 { 0, &hf_ulp_fdd_04
, ASN1_NO_EXTENSIONS
, dissect_ulp_T_fdd_04
},
6410 { 1, &hf_ulp_tdd_04
, ASN1_NO_EXTENSIONS
, dissect_ulp_T_tdd_04
},
6411 { 0, NULL
, 0, NULL
}
6415 dissect_ulp_T_modeSpecificInfo_04(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6416 offset
= dissect_per_choice(tvb
, offset
, actx
, tree
, hf_index
,
6417 ett_ulp_T_modeSpecificInfo_04
, T_modeSpecificInfo_04_choice
,
6424 static const per_sequence_t SET_GANSSReferenceTime_sequence
[] = {
6425 { &hf_ulp_set_GANSSTimingOfCell
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_T_set_GANSSTimingOfCell
},
6426 { &hf_ulp_modeSpecificInfo_04
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_T_modeSpecificInfo_04
},
6427 { &hf_ulp_sfn
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_4095
},
6428 { &hf_ulp_ganss_TODUncertainty
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_127
},
6429 { NULL
, 0, 0, NULL
}
6433 dissect_ulp_SET_GANSSReferenceTime(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6434 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6435 ett_ulp_SET_GANSSReferenceTime
, SET_GANSSReferenceTime_sequence
);
6441 static const per_sequence_t UTRAN_GANSSReferenceTimeResult_sequence
[] = {
6442 { &hf_ulp_ganssTimeID
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_15
},
6443 { &hf_ulp_set_GANSSReferenceTime
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_SET_GANSSReferenceTime
},
6444 { NULL
, 0, 0, NULL
}
6448 dissect_ulp_UTRAN_GANSSReferenceTimeResult(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6449 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6450 ett_ulp_UTRAN_GANSSReferenceTimeResult
, UTRAN_GANSSReferenceTimeResult_sequence
);
6456 static const per_sequence_t Ver2_SUPL_POS_extension_sequence
[] = {
6457 { &hf_ulp_utran_GPSReferenceTimeAssistance
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_UTRAN_GPSReferenceTimeAssistance
},
6458 { &hf_ulp_utran_GPSReferenceTimeResult
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_UTRAN_GPSReferenceTimeResult
},
6459 { &hf_ulp_utran_GANSSReferenceTimeAssistance
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_UTRAN_GANSSReferenceTimeAssistance
},
6460 { &hf_ulp_utran_GANSSReferenceTimeResult
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_UTRAN_GANSSReferenceTimeResult
},
6461 { NULL
, 0, 0, NULL
}
6465 dissect_ulp_Ver2_SUPL_POS_extension(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6466 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6467 ett_ulp_Ver2_SUPL_POS_extension
, Ver2_SUPL_POS_extension_sequence
);
6473 static const per_sequence_t SUPLPOS_sequence
[] = {
6474 { &hf_ulp_posPayLoad
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_PosPayLoad
},
6475 { &hf_ulp_velocity
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_Velocity
},
6476 { &hf_ulp_ver2_SUPL_POS_extension
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_Ver2_SUPL_POS_extension
},
6477 { NULL
, 0, 0, NULL
}
6481 dissect_ulp_SUPLPOS(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6482 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6483 ett_ulp_SUPLPOS
, SUPLPOS_sequence
);
6491 dissect_ulp_Ver(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6492 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, hf_index
,
6493 64, 64, false, NULL
, 0, NULL
, NULL
);
6499 static const per_sequence_t Ver2_SUPL_POS_INIT_extension_sequence
[] = {
6500 { &hf_ulp_multipleLocationIds
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_MultipleLocationIds
},
6501 { &hf_ulp_utran_GPSReferenceTimeResult
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_UTRAN_GPSReferenceTimeResult
},
6502 { &hf_ulp_utran_GANSSReferenceTimeResult
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_UTRAN_GANSSReferenceTimeResult
},
6503 { NULL
, 0, 0, NULL
}
6507 dissect_ulp_Ver2_SUPL_POS_INIT_extension(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6508 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6509 ett_ulp_Ver2_SUPL_POS_INIT_extension
, Ver2_SUPL_POS_INIT_extension_sequence
);
6515 static const per_sequence_t SUPLPOSINIT_sequence
[] = {
6516 { &hf_ulp_sETCapabilities
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_SETCapabilities
},
6517 { &hf_ulp_requestedAssistData
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_RequestedAssistData
},
6518 { &hf_ulp_locationId
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_LocationId
},
6519 { &hf_ulp_position
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_Position
},
6520 { &hf_ulp_suplpos
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_SUPLPOS
},
6521 { &hf_ulp_ver
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_Ver
},
6522 { &hf_ulp_ver2_SUPL_POS_INIT_extension
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_Ver2_SUPL_POS_INIT_extension
},
6523 { NULL
, 0, 0, NULL
}
6527 dissect_ulp_SUPLPOSINIT(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6528 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6529 ett_ulp_SUPLPOSINIT
, SUPLPOSINIT_sequence
);
6535 static const value_string ulp_StatusCode_vals
[] = {
6536 { 0, "unspecified" },
6537 { 1, "systemFailure" },
6538 { 2, "unexpectedMessage" },
6539 { 3, "protocolError" },
6540 { 4, "dataMissing" },
6541 { 5, "unexpectedDataValue" },
6542 { 6, "posMethodFailure" },
6543 { 7, "posMethodMismatch" },
6544 { 8, "posProtocolMismatch" },
6545 { 9, "targetSETnotReachable" },
6546 { 10, "versionNotSupported" },
6547 { 11, "resourceShortage" },
6548 { 12, "invalidSessionId" },
6549 { 13, "nonProxyModeNotSupported" },
6550 { 14, "proxyModeNotSupported" },
6551 { 15, "positioningNotPermitted" },
6552 { 16, "authNetFailure" },
6553 { 17, "authSuplinitFailure" },
6554 { 100, "consentDeniedByUser" },
6555 { 101, "consentGrantedByUser" },
6556 { 18, "ver2-incompatibleProtectionLevel" },
6557 { 19, "ver2-serviceNotSupported" },
6558 { 20, "ver2-insufficientInterval" },
6559 { 21, "ver2-noSUPLCoverage" },
6560 { 102, "ver2-sessionStopped" },
6561 { 103, "ver2-appIdDenied" },
6565 static uint32_t StatusCode_value_map
[20+6] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 100, 101, 18, 19, 20, 21, 102, 103};
6568 dissect_ulp_StatusCode(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6569 offset
= dissect_per_enumerated(tvb
, offset
, actx
, tree
, hf_index
,
6570 20, NULL
, true, 6, StatusCode_value_map
);
6578 dissect_ulp_INTEGER_M2147483648_2147483647(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6579 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
6580 INT32_MIN
, 2147483647U, NULL
, false);
6588 dissect_ulp_INTEGER_0_179(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6589 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
6590 0U, 179U, NULL
, false);
6598 dissect_ulp_INTEGER_64000_1280000(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6599 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
6600 64000U, 1280000U, NULL
, false);
6606 static const per_sequence_t HighAccuracyAltitudeInfo_sequence
[] = {
6607 { &hf_ulp_altitude_02
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_64000_1280000
},
6608 { &hf_ulp_uncertaintyAltitude
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_255
},
6609 { &hf_ulp_verticalConfidence
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_100
},
6610 { NULL
, 0, 0, NULL
}
6614 dissect_ulp_HighAccuracyAltitudeInfo(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6615 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6616 ett_ulp_HighAccuracyAltitudeInfo
, HighAccuracyAltitudeInfo_sequence
);
6622 static const per_sequence_t HighAccuracyPositionEstimate_sequence
[] = {
6623 { &hf_ulp_degreesLatitude
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_M2147483648_2147483647
},
6624 { &hf_ulp_degreesLongitude
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_M2147483648_2147483647
},
6625 { &hf_ulp_uncertaintySemiMajor_01
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_255
},
6626 { &hf_ulp_uncertaintySemiMinor_01
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_255
},
6627 { &hf_ulp_orientationMajorAxis_01
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_179
},
6628 { &hf_ulp_horizontalConfidence
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_100
},
6629 { &hf_ulp_highAccuracyAltitudeInfo
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_HighAccuracyAltitudeInfo
},
6630 { NULL
, 0, 0, NULL
}
6634 dissect_ulp_HighAccuracyPositionEstimate(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6635 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6636 ett_ulp_HighAccuracyPositionEstimate
, HighAccuracyPositionEstimate_sequence
);
6642 static const per_sequence_t Ver2_HighAccuracyPosition_sequence
[] = {
6643 { &hf_ulp_timestamp_01
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_UTCTime
},
6644 { &hf_ulp_highAccuracyPositionEstimate
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_HighAccuracyPositionEstimate
},
6645 { &hf_ulp_velocity
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_Velocity
},
6646 { NULL
, 0, 0, NULL
}
6650 dissect_ulp_Ver2_HighAccuracyPosition(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6651 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6652 ett_ulp_Ver2_HighAccuracyPosition
, Ver2_HighAccuracyPosition_sequence
);
6658 static const per_sequence_t Ver2_SUPL_END_extension_sequence
[] = {
6659 { &hf_ulp_sETCapabilities
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_SETCapabilities
},
6660 { &hf_ulp_ver2_HighAccuracyPosition
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_Ver2_HighAccuracyPosition
},
6661 { NULL
, 0, 0, NULL
}
6665 dissect_ulp_Ver2_SUPL_END_extension(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6666 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6667 ett_ulp_Ver2_SUPL_END_extension
, Ver2_SUPL_END_extension_sequence
);
6673 static const per_sequence_t SUPLEND_sequence
[] = {
6674 { &hf_ulp_position
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_Position
},
6675 { &hf_ulp_statusCode
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_StatusCode
},
6676 { &hf_ulp_ver
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_Ver
},
6677 { &hf_ulp_ver2_SUPL_END_extension
, ASN1_NOT_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_Ver2_SUPL_END_extension
},
6678 { NULL
, 0, 0, NULL
}
6682 dissect_ulp_SUPLEND(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6683 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6684 ett_ulp_SUPLEND
, SUPLEND_sequence
);
6690 static const per_sequence_t SUPLAUTHREQ_sequence
[] = {
6691 { &hf_ulp_ver
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_Ver
},
6692 { &hf_ulp_sETCapabilities
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_SETCapabilities
},
6693 { NULL
, 0, 0, NULL
}
6697 dissect_ulp_SUPLAUTHREQ(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6698 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6699 ett_ulp_SUPLAUTHREQ
, SUPLAUTHREQ_sequence
);
6705 static const per_sequence_t SUPLAUTHRESP_sequence
[] = {
6706 { &hf_ulp_sPCSETKey
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_SPCSETKey
},
6707 { &hf_ulp_spctid
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_SPCTID
},
6708 { &hf_ulp_sPCSETKeylifetime
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_SPCSETKeylifetime
},
6709 { NULL
, 0, 0, NULL
}
6713 dissect_ulp_SUPLAUTHRESP(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6714 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6715 ett_ulp_SUPLAUTHRESP
, SUPLAUTHRESP_sequence
);
6723 dissect_ulp_INTEGER_1_8639999(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6724 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
6725 1U, 8639999U, NULL
, false);
6733 dissect_ulp_INTEGER_0_2678400(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6734 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
6735 0U, 2678400U, NULL
, false);
6741 static const per_sequence_t PeriodicParams_sequence
[] = {
6742 { &hf_ulp_numberOfFixes
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_1_8639999
},
6743 { &hf_ulp_intervalBetweenFixes
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_1_8639999
},
6744 { &hf_ulp_startTime
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_2678400
},
6745 { NULL
, 0, 0, NULL
}
6749 dissect_ulp_PeriodicParams(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6750 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6751 ett_ulp_PeriodicParams
, PeriodicParams_sequence
);
6757 static const value_string ulp_AreaEventType_vals
[] = {
6758 { 0, "enteringArea" },
6759 { 1, "insideArea" },
6760 { 2, "outsideArea" },
6761 { 3, "leavingArea" },
6767 dissect_ulp_AreaEventType(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6768 offset
= dissect_per_enumerated(tvb
, offset
, actx
, tree
, hf_index
,
6769 4, NULL
, true, 0, NULL
);
6777 dissect_ulp_INTEGER_1_604800(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6778 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
6779 1U, 604800U, NULL
, false);
6785 static const per_sequence_t RepeatedReportingParams_sequence
[] = {
6786 { &hf_ulp_minimumIntervalTime
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_1_604800
},
6787 { &hf_ulp_maximumNumberOfReports
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_1_1024
},
6788 { NULL
, 0, 0, NULL
}
6792 dissect_ulp_RepeatedReportingParams(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6793 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6794 ett_ulp_RepeatedReportingParams
, RepeatedReportingParams_sequence
);
6802 dissect_ulp_INTEGER_0_11318399(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6803 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
6804 0U, 11318399U, NULL
, false);
6810 static const value_string ulp_T_latitudeSign_01_vals
[] = {
6818 dissect_ulp_T_latitudeSign_01(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6819 offset
= dissect_per_enumerated(tvb
, offset
, actx
, tree
, hf_index
,
6820 2, NULL
, false, 0, NULL
);
6826 static const per_sequence_t Coordinate_sequence
[] = {
6827 { &hf_ulp_latitudeSign_01
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_T_latitudeSign_01
},
6828 { &hf_ulp_coordinateLatitude
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_8388607
},
6829 { &hf_ulp_coordinateLongitude
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_M8388608_8388607
},
6830 { NULL
, 0, 0, NULL
}
6834 dissect_ulp_Coordinate(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6835 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6836 ett_ulp_Coordinate
, Coordinate_sequence
);
6844 dissect_ulp_INTEGER_1_1000000(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6845 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
6846 1U, 1000000U, NULL
, false);
6854 dissect_ulp_INTEGER_1_1500000(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6855 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
6856 1U, 1500000U, NULL
, false);
6862 static const per_sequence_t CircularArea_sequence
[] = {
6863 { &hf_ulp_coordinate
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_Coordinate
},
6864 { &hf_ulp_radius
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_1_1000000
},
6865 { &hf_ulp_radius_min
, ASN1_NO_EXTENSIONS
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_1_1000000
},
6866 { &hf_ulp_radius_max
, ASN1_NO_EXTENSIONS
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_1_1500000
},
6867 { NULL
, 0, 0, NULL
}
6871 dissect_ulp_CircularArea(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6872 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6873 ett_ulp_CircularArea
, CircularArea_sequence
);
6879 static const per_sequence_t EllipticalArea_sequence
[] = {
6880 { &hf_ulp_coordinate
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_Coordinate
},
6881 { &hf_ulp_semiMajor
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_1_1000000
},
6882 { &hf_ulp_semiMajor_min
, ASN1_NO_EXTENSIONS
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_1_1000000
},
6883 { &hf_ulp_semiMajor_max
, ASN1_NO_EXTENSIONS
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_1_1500000
},
6884 { &hf_ulp_semiMinor
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_1_1000000
},
6885 { &hf_ulp_semiMinor_min
, ASN1_NO_EXTENSIONS
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_1_1000000
},
6886 { &hf_ulp_semiMinor_max
, ASN1_NO_EXTENSIONS
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_1_1500000
},
6887 { &hf_ulp_angle
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_179
},
6888 { NULL
, 0, 0, NULL
}
6892 dissect_ulp_EllipticalArea(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6893 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6894 ett_ulp_EllipticalArea
, EllipticalArea_sequence
);
6900 static const per_sequence_t PolygonDescription_sequence_of
[1] = {
6901 { &hf_ulp_PolygonDescription_item
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_Coordinate
},
6905 dissect_ulp_PolygonDescription(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6906 offset
= dissect_per_constrained_sequence_of(tvb
, offset
, actx
, tree
, hf_index
,
6907 ett_ulp_PolygonDescription
, PolygonDescription_sequence_of
,
6916 dissect_ulp_INTEGER_1_100000(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6917 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
6918 1U, 100000U, NULL
, false);
6924 static const per_sequence_t PolygonArea_sequence
[] = {
6925 { &hf_ulp_polygonDescription
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_PolygonDescription
},
6926 { &hf_ulp_polygonHysteresis
, ASN1_NO_EXTENSIONS
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_1_100000
},
6927 { NULL
, 0, 0, NULL
}
6931 dissect_ulp_PolygonArea(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6932 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6933 ett_ulp_PolygonArea
, PolygonArea_sequence
);
6939 static const value_string ulp_GeographicTargetArea_vals
[] = {
6940 { 0, "circularArea" },
6941 { 1, "ellipticalArea" },
6942 { 2, "polygonArea" },
6946 static const per_choice_t GeographicTargetArea_choice
[] = {
6947 { 0, &hf_ulp_circularArea
, ASN1_EXTENSION_ROOT
, dissect_ulp_CircularArea
},
6948 { 1, &hf_ulp_ellipticalArea
, ASN1_EXTENSION_ROOT
, dissect_ulp_EllipticalArea
},
6949 { 2, &hf_ulp_polygonArea
, ASN1_EXTENSION_ROOT
, dissect_ulp_PolygonArea
},
6950 { 0, NULL
, 0, NULL
}
6954 dissect_ulp_GeographicTargetArea(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6955 offset
= dissect_per_choice(tvb
, offset
, actx
, tree
, hf_index
,
6956 ett_ulp_GeographicTargetArea
, GeographicTargetArea_choice
,
6963 static const per_sequence_t GeographicTargetAreaList_sequence_of
[1] = {
6964 { &hf_ulp_GeographicTargetAreaList_item
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_GeographicTargetArea
},
6968 dissect_ulp_GeographicTargetAreaList(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6969 offset
= dissect_per_constrained_sequence_of(tvb
, offset
, actx
, tree
, hf_index
,
6970 ett_ulp_GeographicTargetAreaList
, GeographicTargetAreaList_sequence_of
,
6971 1, maxNumGeoArea
, false);
6977 static const per_sequence_t GSMAreaId_sequence
[] = {
6978 { &hf_ulp_refMCC
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_999
},
6979 { &hf_ulp_refMNC
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_999
},
6980 { &hf_ulp_refLAC
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_65535
},
6981 { &hf_ulp_refCI
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_65535
},
6982 { NULL
, 0, 0, NULL
}
6986 dissect_ulp_GSMAreaId(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
6987 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
6988 ett_ulp_GSMAreaId
, GSMAreaId_sequence
);
6994 static const per_sequence_t WCDMAAreaId_sequence
[] = {
6995 { &hf_ulp_refMCC
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_999
},
6996 { &hf_ulp_refMNC
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_999
},
6997 { &hf_ulp_refLAC
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_65535
},
6998 { &hf_ulp_refUC
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_268435455
},
6999 { NULL
, 0, 0, NULL
}
7003 dissect_ulp_WCDMAAreaId(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7004 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
7005 ett_ulp_WCDMAAreaId
, WCDMAAreaId_sequence
);
7011 static const per_sequence_t CDMAAreaId_sequence
[] = {
7012 { &hf_ulp_refSID
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_65535
},
7013 { &hf_ulp_refNID
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_32767
},
7014 { &hf_ulp_refBASEID
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_65535
},
7015 { NULL
, 0, 0, NULL
}
7019 dissect_ulp_CDMAAreaId(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7020 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
7021 ett_ulp_CDMAAreaId
, CDMAAreaId_sequence
);
7027 static const per_sequence_t HRPDAreaId_sequence
[] = {
7028 { &hf_ulp_refSECTORID
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BIT_STRING_SIZE_128
},
7029 { NULL
, 0, 0, NULL
}
7033 dissect_ulp_HRPDAreaId(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7034 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
7035 ett_ulp_HRPDAreaId
, HRPDAreaId_sequence
);
7041 static const per_sequence_t UMBAreaId_sequence
[] = {
7042 { &hf_ulp_refMCC
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_999
},
7043 { &hf_ulp_refMNC
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_999
},
7044 { &hf_ulp_refSECTORID
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_BIT_STRING_SIZE_128
},
7045 { NULL
, 0, 0, NULL
}
7049 dissect_ulp_UMBAreaId(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7050 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
7051 ett_ulp_UMBAreaId
, UMBAreaId_sequence
);
7059 dissect_ulp_BIT_STRING_SIZE_29(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7060 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, hf_index
,
7061 29, 29, false, NULL
, 0, NULL
, NULL
);
7067 static const per_sequence_t LTEAreaId_sequence
[] = {
7068 { &hf_ulp_refMCC
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_999
},
7069 { &hf_ulp_refMNC
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_999
},
7070 { &hf_ulp_refCI_01
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_BIT_STRING_SIZE_29
},
7071 { NULL
, 0, 0, NULL
}
7075 dissect_ulp_LTEAreaId(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7076 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
7077 ett_ulp_LTEAreaId
, LTEAreaId_sequence
);
7085 dissect_ulp_T_apMACAddress(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7088 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, -1,
7089 48, 48, false, NULL
, 0, &val_tvb
, NULL
);
7092 proto_tree_add_item(tree
, hf_index
, val_tvb
, 0, 6, ENC_NA
);
7100 static const per_sequence_t WLANAreaId_sequence
[] = {
7101 { &hf_ulp_apMACAddress
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_T_apMACAddress
},
7102 { NULL
, 0, 0, NULL
}
7106 dissect_ulp_WLANAreaId(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7107 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
7108 ett_ulp_WLANAreaId
, WLANAreaId_sequence
);
7114 static const per_sequence_t WimaxAreaId_sequence
[] = {
7115 { &hf_ulp_bsID_MSB
, ASN1_NO_EXTENSIONS
, ASN1_OPTIONAL
, dissect_ulp_BIT_STRING_SIZE_24
},
7116 { &hf_ulp_bsID_LSB
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_BIT_STRING_SIZE_24
},
7117 { NULL
, 0, 0, NULL
}
7121 dissect_ulp_WimaxAreaId(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7122 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
7123 ett_ulp_WimaxAreaId
, WimaxAreaId_sequence
);
7131 dissect_ulp_BIT_STRING_SIZE_36(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7132 offset
= dissect_per_bit_string(tvb
, offset
, actx
, tree
, hf_index
,
7133 36, 36, false, NULL
, 0, NULL
, NULL
);
7139 static const per_sequence_t NRAreaId_sequence
[] = {
7140 { &hf_ulp_refMCC
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_999
},
7141 { &hf_ulp_refMNC
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_999
},
7142 { &hf_ulp_refCI_02
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_BIT_STRING_SIZE_36
},
7143 { NULL
, 0, 0, NULL
}
7147 dissect_ulp_NRAreaId(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7148 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
7149 ett_ulp_NRAreaId
, NRAreaId_sequence
);
7155 static const value_string ulp_AreaId_vals
[] = {
7157 { 1, "wCDMAAreaId" },
7158 { 2, "cDMAAreaId" },
7159 { 3, "hRPDAreaId" },
7162 { 6, "wLANAreaId" },
7163 { 7, "wiMAXAreaId" },
7168 static const per_choice_t AreaId_choice
[] = {
7169 { 0, &hf_ulp_gSMAreaId
, ASN1_EXTENSION_ROOT
, dissect_ulp_GSMAreaId
},
7170 { 1, &hf_ulp_wCDMAAreaId
, ASN1_EXTENSION_ROOT
, dissect_ulp_WCDMAAreaId
},
7171 { 2, &hf_ulp_cDMAAreaId
, ASN1_EXTENSION_ROOT
, dissect_ulp_CDMAAreaId
},
7172 { 3, &hf_ulp_hRPDAreaId
, ASN1_EXTENSION_ROOT
, dissect_ulp_HRPDAreaId
},
7173 { 4, &hf_ulp_uMBAreaId
, ASN1_EXTENSION_ROOT
, dissect_ulp_UMBAreaId
},
7174 { 5, &hf_ulp_lTEAreaId
, ASN1_EXTENSION_ROOT
, dissect_ulp_LTEAreaId
},
7175 { 6, &hf_ulp_wLANAreaId
, ASN1_EXTENSION_ROOT
, dissect_ulp_WLANAreaId
},
7176 { 7, &hf_ulp_wiMAXAreaId
, ASN1_EXTENSION_ROOT
, dissect_ulp_WimaxAreaId
},
7177 { 8, &hf_ulp_nRAreaId
, ASN1_NOT_EXTENSION_ROOT
, dissect_ulp_NRAreaId
},
7178 { 0, NULL
, 0, NULL
}
7182 dissect_ulp_AreaId(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7183 offset
= dissect_per_choice(tvb
, offset
, actx
, tree
, hf_index
,
7184 ett_ulp_AreaId
, AreaId_choice
,
7191 static const per_sequence_t AreaIdSet_sequence_of
[1] = {
7192 { &hf_ulp_AreaIdSet_item
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_AreaId
},
7196 dissect_ulp_AreaIdSet(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7197 offset
= dissect_per_constrained_sequence_of(tvb
, offset
, actx
, tree
, hf_index
,
7198 ett_ulp_AreaIdSet
, AreaIdSet_sequence_of
,
7199 1, maxAreaId
, false);
7205 static const value_string ulp_AreaIdSetType_vals
[] = {
7213 dissect_ulp_AreaIdSetType(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7214 offset
= dissect_per_enumerated(tvb
, offset
, actx
, tree
, hf_index
,
7215 2, NULL
, true, 0, NULL
);
7223 dissect_ulp_GeoAreaIndex(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7224 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
7225 1U, maxNumGeoArea
, NULL
, false);
7231 static const per_sequence_t GeoAreaMappingList_sequence_of
[1] = {
7232 { &hf_ulp_GeoAreaMappingList_item
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_GeoAreaIndex
},
7236 dissect_ulp_GeoAreaMappingList(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7237 offset
= dissect_per_constrained_sequence_of(tvb
, offset
, actx
, tree
, hf_index
,
7238 ett_ulp_GeoAreaMappingList
, GeoAreaMappingList_sequence_of
,
7239 1, maxNumGeoArea
, false);
7245 static const per_sequence_t AreaIdList_sequence
[] = {
7246 { &hf_ulp_areaIdSet
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_AreaIdSet
},
7247 { &hf_ulp_areaIdSetType
, ASN1_NO_EXTENSIONS
, ASN1_OPTIONAL
, dissect_ulp_AreaIdSetType
},
7248 { &hf_ulp_geoAreaMappingList
, ASN1_NO_EXTENSIONS
, ASN1_OPTIONAL
, dissect_ulp_GeoAreaMappingList
},
7249 { NULL
, 0, 0, NULL
}
7253 dissect_ulp_AreaIdList(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7254 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
7255 ett_ulp_AreaIdList
, AreaIdList_sequence
);
7261 static const per_sequence_t SEQUENCE_SIZE_1_maxAreaIdList_OF_AreaIdList_sequence_of
[1] = {
7262 { &hf_ulp_areaIdLists_item
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_AreaIdList
},
7266 dissect_ulp_SEQUENCE_SIZE_1_maxAreaIdList_OF_AreaIdList(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7267 offset
= dissect_per_constrained_sequence_of(tvb
, offset
, actx
, tree
, hf_index
,
7268 ett_ulp_SEQUENCE_SIZE_1_maxAreaIdList_OF_AreaIdList
, SEQUENCE_SIZE_1_maxAreaIdList_OF_AreaIdList_sequence_of
,
7269 1, maxAreaIdList
, false);
7275 static const per_sequence_t AreaEventParams_sequence
[] = {
7276 { &hf_ulp_areaEventType
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_AreaEventType
},
7277 { &hf_ulp_locationEstimate
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
7278 { &hf_ulp_repeatedReportingParams
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_RepeatedReportingParams
},
7279 { &hf_ulp_startTime
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_2678400
},
7280 { &hf_ulp_stopTime
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_INTEGER_0_11318399
},
7281 { &hf_ulp_geographicTargetAreaList
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_GeographicTargetAreaList
},
7282 { &hf_ulp_areaIdLists
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_SEQUENCE_SIZE_1_maxAreaIdList_OF_AreaIdList
},
7283 { NULL
, 0, 0, NULL
}
7287 dissect_ulp_AreaEventParams(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7288 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
7289 ett_ulp_AreaEventParams
, AreaEventParams_sequence
);
7295 static const value_string ulp_TriggerParams_vals
[] = {
7296 { 0, "periodicParams" },
7297 { 1, "areaEventParams" },
7301 static const per_choice_t TriggerParams_choice
[] = {
7302 { 0, &hf_ulp_periodicParams
, ASN1_EXTENSION_ROOT
, dissect_ulp_PeriodicParams
},
7303 { 1, &hf_ulp_areaEventParams
, ASN1_EXTENSION_ROOT
, dissect_ulp_AreaEventParams
},
7304 { 0, NULL
, 0, NULL
}
7308 dissect_ulp_TriggerParams(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7309 offset
= dissect_per_choice(tvb
, offset
, actx
, tree
, hf_index
,
7310 ett_ulp_TriggerParams
, TriggerParams_choice
,
7317 static const value_string ulp_CauseCode_vals
[] = {
7318 { 0, "servingNetWorkNotInAreaIdList" },
7319 { 1, "sETCapabilitiesChanged" },
7320 { 2, "noSUPLCoverage" },
7326 dissect_ulp_CauseCode(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7327 offset
= dissect_per_enumerated(tvb
, offset
, actx
, tree
, hf_index
,
7328 3, NULL
, true, 0, NULL
);
7334 static const per_sequence_t Ver2_SUPLTRIGGEREDSTART_sequence
[] = {
7335 { &hf_ulp_sETCapabilities
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_SETCapabilities
},
7336 { &hf_ulp_locationId
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_LocationId
},
7337 { &hf_ulp_ver
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_Ver
},
7338 { &hf_ulp_qoP
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_QoP
},
7339 { &hf_ulp_multipleLocationIds
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_MultipleLocationIds
},
7340 { &hf_ulp_thirdParty
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_ThirdParty
},
7341 { &hf_ulp_applicationID
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_ApplicationID
},
7342 { &hf_ulp_triggerType
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_TriggerType
},
7343 { &hf_ulp_triggerParams
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_TriggerParams
},
7344 { &hf_ulp_position
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_Position
},
7345 { &hf_ulp_reportingCap
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_ReportingCap
},
7346 { &hf_ulp_causeCode
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_CauseCode
},
7347 { NULL
, 0, 0, NULL
}
7351 dissect_ulp_Ver2_SUPLTRIGGEREDSTART(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7352 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
7353 ett_ulp_Ver2_SUPLTRIGGEREDSTART
, Ver2_SUPLTRIGGEREDSTART_sequence
);
7359 static const value_string ulp_RepModee_vals
[] = {
7361 { 2, "quasirealtime" },
7366 static uint32_t RepModee_value_map
[3+0] = {1, 2, 3};
7369 dissect_ulp_RepModee(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7370 offset
= dissect_per_enumerated(tvb
, offset
, actx
, tree
, hf_index
,
7371 3, NULL
, true, 0, RepModee_value_map
);
7379 dissect_ulp_INTEGER_1_2048(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7380 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
7381 1U, 2048U, NULL
, false);
7387 static const value_string ulp_BatchRepConditions_vals
[] = {
7388 { 0, "num-interval" },
7389 { 1, "num-minutes" },
7390 { 2, "endofsession" },
7394 static const per_choice_t BatchRepConditions_choice
[] = {
7395 { 0, &hf_ulp_num_interval
, ASN1_EXTENSION_ROOT
, dissect_ulp_INTEGER_1_1024
},
7396 { 1, &hf_ulp_num_minutes
, ASN1_EXTENSION_ROOT
, dissect_ulp_INTEGER_1_2048
},
7397 { 2, &hf_ulp_endofsession
, ASN1_EXTENSION_ROOT
, dissect_ulp_NULL
},
7398 { 0, NULL
, 0, NULL
}
7402 dissect_ulp_BatchRepConditions(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7403 offset
= dissect_per_choice(tvb
, offset
, actx
, tree
, hf_index
,
7404 ett_ulp_BatchRepConditions
, BatchRepConditions_choice
,
7411 static const per_sequence_t BatchRepType_sequence
[] = {
7412 { &hf_ulp_reportPosition
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
7413 { &hf_ulp_reportMeasurements
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
7414 { &hf_ulp_intermediateReports
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_BOOLEAN
},
7415 { &hf_ulp_discardOldest
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_BOOLEAN
},
7416 { NULL
, 0, 0, NULL
}
7420 dissect_ulp_BatchRepType(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7421 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
7422 ett_ulp_BatchRepType
, BatchRepType_sequence
);
7428 static const per_sequence_t ReportingMode_sequence
[] = {
7429 { &hf_ulp_repMode
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_RepModee
},
7430 { &hf_ulp_batchRepConditions
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_BatchRepConditions
},
7431 { &hf_ulp_batchRepType
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_BatchRepType
},
7432 { NULL
, 0, 0, NULL
}
7436 dissect_ulp_ReportingMode(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7437 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
7438 ett_ulp_ReportingMode
, ReportingMode_sequence
);
7444 static const per_sequence_t Ver2_SUPLTRIGGEREDRESPONSE_sequence
[] = {
7445 { &hf_ulp_posMethod
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_PosMethod
},
7446 { &hf_ulp_triggerParams
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_TriggerParams
},
7447 { &hf_ulp_sLPAddress
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_SLPAddress
},
7448 { &hf_ulp_supportedNetworkInformation
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_SupportedNetworkInformation
},
7449 { &hf_ulp_reportingMode
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_ReportingMode
},
7450 { &hf_ulp_sPCSETKey
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_SPCSETKey
},
7451 { &hf_ulp_spctid
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_SPCTID
},
7452 { &hf_ulp_sPCSETKeylifetime
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_SPCSETKeylifetime
},
7453 { &hf_ulp_gnssPosTechnology
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_GNSSPosTechnology
},
7454 { NULL
, 0, 0, NULL
}
7458 dissect_ulp_Ver2_SUPLTRIGGEREDRESPONSE(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7459 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
7460 ett_ulp_Ver2_SUPLTRIGGEREDRESPONSE
, Ver2_SUPLTRIGGEREDRESPONSE_sequence
);
7466 static const per_sequence_t Ver2_SUPLTRIGGEREDSTOP_sequence
[] = {
7467 { &hf_ulp_statusCode
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_StatusCode
},
7468 { NULL
, 0, 0, NULL
}
7472 dissect_ulp_Ver2_SUPLTRIGGEREDSTOP(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7473 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
7474 ett_ulp_Ver2_SUPLTRIGGEREDSTOP
, Ver2_SUPLTRIGGEREDSTOP_sequence
);
7480 static const per_sequence_t Ver2_SUPLNOTIFY_sequence
[] = {
7481 { &hf_ulp_notification
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_Notification
},
7482 { NULL
, 0, 0, NULL
}
7486 dissect_ulp_Ver2_SUPLNOTIFY(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7487 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
7488 ett_ulp_Ver2_SUPLNOTIFY
, Ver2_SUPLNOTIFY_sequence
);
7494 static const value_string ulp_NotificationResponse_vals
[] = {
7496 { 1, "notAllowed" },
7502 dissect_ulp_NotificationResponse(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7503 offset
= dissect_per_enumerated(tvb
, offset
, actx
, tree
, hf_index
,
7504 2, NULL
, true, 0, NULL
);
7510 static const per_sequence_t Ver2_SUPLNOTIFYRESPONSE_sequence
[] = {
7511 { &hf_ulp_notificationResponse
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_NotificationResponse
},
7512 { NULL
, 0, 0, NULL
}
7516 dissect_ulp_Ver2_SUPLNOTIFYRESPONSE(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7517 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
7518 ett_ulp_Ver2_SUPLNOTIFYRESPONSE
, Ver2_SUPLNOTIFYRESPONSE_sequence
);
7524 static const per_sequence_t Ver2_SUPLSETINIT_sequence
[] = {
7525 { &hf_ulp_targetSETID
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_SETId
},
7526 { &hf_ulp_qoP
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_QoP
},
7527 { &hf_ulp_applicationID
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_ApplicationID
},
7528 { NULL
, 0, 0, NULL
}
7532 dissect_ulp_Ver2_SUPLSETINIT(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7533 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
7534 ett_ulp_Ver2_SUPLSETINIT
, Ver2_SUPLSETINIT_sequence
);
7540 static const per_sequence_t SessionInformation_sequence
[] = {
7541 { &hf_ulp_sessionID
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_SessionID
},
7542 { NULL
, 0, 0, NULL
}
7546 dissect_ulp_SessionInformation(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7547 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
7548 ett_ulp_SessionInformation
, SessionInformation_sequence
);
7554 static const per_sequence_t SessionList_sequence_of
[1] = {
7555 { &hf_ulp_SessionList_item
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_SessionInformation
},
7559 dissect_ulp_SessionList(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7560 offset
= dissect_per_constrained_sequence_of(tvb
, offset
, actx
, tree
, hf_index
,
7561 ett_ulp_SessionList
, SessionList_sequence_of
,
7562 1, maxnumSessions
, false);
7568 static const per_sequence_t GANSSSignalsDescription_sequence
[] = {
7569 { &hf_ulp_ganssId
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_15
},
7570 { &hf_ulp_gANSSSignals
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_GANSSSignals
},
7571 { NULL
, 0, 0, NULL
}
7575 dissect_ulp_GANSSSignalsDescription(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7576 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
7577 ett_ulp_GANSSSignalsDescription
, GANSSSignalsDescription_sequence
);
7583 static const per_sequence_t GANSSsignalsInfo_sequence_of
[1] = {
7584 { &hf_ulp_GANSSsignalsInfo_item
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_GANSSSignalsDescription
},
7588 dissect_ulp_GANSSsignalsInfo(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7589 offset
= dissect_per_constrained_sequence_of(tvb
, offset
, actx
, tree
, hf_index
,
7590 ett_ulp_GANSSsignalsInfo
, GANSSsignalsInfo_sequence_of
,
7591 1, maxGANSS
, false);
7597 static const per_sequence_t PositionData_sequence
[] = {
7598 { &hf_ulp_position
, ASN1_EXTENSION_ROOT
, ASN1_NOT_OPTIONAL
, dissect_ulp_Position
},
7599 { &hf_ulp_posMethod
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_PosMethod
},
7600 { &hf_ulp_gnssPosTechnology
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_GNSSPosTechnology
},
7601 { &hf_ulp_ganssSignalsInfo
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_GANSSsignalsInfo
},
7602 { NULL
, 0, 0, NULL
}
7606 dissect_ulp_PositionData(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7607 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
7608 ett_ulp_PositionData
, PositionData_sequence
);
7614 static const value_string ulp_ResultCode_vals
[] = {
7615 { 1, "outofradiocoverage" },
7616 { 2, "noposition" },
7617 { 3, "nomeasurement" },
7618 { 4, "nopositionnomeasurement" },
7619 { 5, "outofmemory" },
7620 { 6, "outofmemoryintermediatereporting" },
7625 static uint32_t ResultCode_value_map
[7+0] = {1, 2, 3, 4, 5, 6, 7};
7628 dissect_ulp_ResultCode(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7629 offset
= dissect_per_enumerated(tvb
, offset
, actx
, tree
, hf_index
,
7630 7, NULL
, true, 0, ResultCode_value_map
);
7638 dissect_ulp_INTEGER_0_31536000(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7639 offset
= dissect_per_constrained_integer(tvb
, offset
, actx
, tree
, hf_index
,
7640 0U, 31536000U, NULL
, false);
7646 static const value_string ulp_TimeStamp_vals
[] = {
7647 { 0, "absoluteTime" },
7648 { 1, "relativeTime" },
7652 static const per_choice_t TimeStamp_choice
[] = {
7653 { 0, &hf_ulp_absoluteTime
, ASN1_NO_EXTENSIONS
, dissect_ulp_UTCTime
},
7654 { 1, &hf_ulp_relativeTime
, ASN1_NO_EXTENSIONS
, dissect_ulp_INTEGER_0_31536000
},
7655 { 0, NULL
, 0, NULL
}
7659 dissect_ulp_TimeStamp(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7660 offset
= dissect_per_choice(tvb
, offset
, actx
, tree
, hf_index
,
7661 ett_ulp_TimeStamp
, TimeStamp_choice
,
7668 static const per_sequence_t ReportData_sequence
[] = {
7669 { &hf_ulp_positionData
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_PositionData
},
7670 { &hf_ulp_multipleLocationIds
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_MultipleLocationIds
},
7671 { &hf_ulp_resultCode
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_ResultCode
},
7672 { &hf_ulp_timestamp
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_TimeStamp
},
7673 { NULL
, 0, 0, NULL
}
7677 dissect_ulp_ReportData(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7678 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
7679 ett_ulp_ReportData
, ReportData_sequence
);
7685 static const per_sequence_t ReportDataList_sequence_of
[1] = {
7686 { &hf_ulp_ReportDataList_item
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_ReportData
},
7690 dissect_ulp_ReportDataList(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7691 offset
= dissect_per_constrained_sequence_of(tvb
, offset
, actx
, tree
, hf_index
,
7692 ett_ulp_ReportDataList
, ReportDataList_sequence_of
,
7699 static const per_sequence_t Ver2_SUPLREPORT_sequence
[] = {
7700 { &hf_ulp_sessionList
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_SessionList
},
7701 { &hf_ulp_sETCapabilities
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_SETCapabilities
},
7702 { &hf_ulp_reportDataList
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_ReportDataList
},
7703 { &hf_ulp_ver
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_Ver
},
7704 { &hf_ulp_moreComponents
, ASN1_EXTENSION_ROOT
, ASN1_OPTIONAL
, dissect_ulp_NULL
},
7705 { NULL
, 0, 0, NULL
}
7709 dissect_ulp_Ver2_SUPLREPORT(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7710 offset
= dissect_per_sequence(tvb
, offset
, actx
, tree
, hf_index
,
7711 ett_ulp_Ver2_SUPLREPORT
, Ver2_SUPLREPORT_sequence
);
7717 static const value_string ulp_UlpMessage_vals
[] = {
7718 { 0, "msSUPLINIT" },
7719 { 1, "msSUPLSTART" },
7720 { 2, "msSUPLRESPONSE" },
7721 { 3, "msSUPLPOSINIT" },
7724 { 6, "msSUPLAUTHREQ" },
7725 { 7, "msSUPLAUTHRESP" },
7726 { 8, "msSUPLTRIGGEREDSTART" },
7727 { 9, "msSUPLTRIGGEREDRESPONSE" },
7728 { 10, "msSUPLTRIGGEREDSTOP" },
7729 { 11, "msSUPLNOTIFY" },
7730 { 12, "msSUPLNOTIFYRESPONSE" },
7731 { 13, "msSUPLSETINIT" },
7732 { 14, "msSUPLREPORT" },
7736 static const per_choice_t UlpMessage_choice
[] = {
7737 { 0, &hf_ulp_msSUPLINIT
, ASN1_EXTENSION_ROOT
, dissect_ulp_SUPLINIT
},
7738 { 1, &hf_ulp_msSUPLSTART
, ASN1_EXTENSION_ROOT
, dissect_ulp_SUPLSTART
},
7739 { 2, &hf_ulp_msSUPLRESPONSE
, ASN1_EXTENSION_ROOT
, dissect_ulp_SUPLRESPONSE
},
7740 { 3, &hf_ulp_msSUPLPOSINIT
, ASN1_EXTENSION_ROOT
, dissect_ulp_SUPLPOSINIT
},
7741 { 4, &hf_ulp_msSUPLPOS
, ASN1_EXTENSION_ROOT
, dissect_ulp_SUPLPOS
},
7742 { 5, &hf_ulp_msSUPLEND
, ASN1_EXTENSION_ROOT
, dissect_ulp_SUPLEND
},
7743 { 6, &hf_ulp_msSUPLAUTHREQ
, ASN1_EXTENSION_ROOT
, dissect_ulp_SUPLAUTHREQ
},
7744 { 7, &hf_ulp_msSUPLAUTHRESP
, ASN1_EXTENSION_ROOT
, dissect_ulp_SUPLAUTHRESP
},
7745 { 8, &hf_ulp_msSUPLTRIGGEREDSTART
, ASN1_NOT_EXTENSION_ROOT
, dissect_ulp_Ver2_SUPLTRIGGEREDSTART
},
7746 { 9, &hf_ulp_msSUPLTRIGGEREDRESPONSE
, ASN1_NOT_EXTENSION_ROOT
, dissect_ulp_Ver2_SUPLTRIGGEREDRESPONSE
},
7747 { 10, &hf_ulp_msSUPLTRIGGEREDSTOP
, ASN1_NOT_EXTENSION_ROOT
, dissect_ulp_Ver2_SUPLTRIGGEREDSTOP
},
7748 { 11, &hf_ulp_msSUPLNOTIFY
, ASN1_NOT_EXTENSION_ROOT
, dissect_ulp_Ver2_SUPLNOTIFY
},
7749 { 12, &hf_ulp_msSUPLNOTIFYRESPONSE
, ASN1_NOT_EXTENSION_ROOT
, dissect_ulp_Ver2_SUPLNOTIFYRESPONSE
},
7750 { 13, &hf_ulp_msSUPLSETINIT
, ASN1_NOT_EXTENSION_ROOT
, dissect_ulp_Ver2_SUPLSETINIT
},
7751 { 14, &hf_ulp_msSUPLREPORT
, ASN1_NOT_EXTENSION_ROOT
, dissect_ulp_Ver2_SUPLREPORT
},
7752 { 0, NULL
, 0, NULL
}
7756 dissect_ulp_UlpMessage(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7758 uint32_t UlpMessage
;
7760 offset
= dissect_per_choice(tvb
, offset
, actx
, tree
, hf_index
,
7761 ett_ulp_UlpMessage
, UlpMessage_choice
,
7765 col_prepend_fstr(actx
->pinfo
->cinfo
, COL_INFO
, "%s ", val_to_str_const(UlpMessage
,ulp_UlpMessage_vals
,"Unknown"));
7772 static const per_sequence_t ULP_PDU_sequence
[] = {
7773 { &hf_ulp_length
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_INTEGER_0_65535
},
7774 { &hf_ulp_version
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_Version
},
7775 { &hf_ulp_sessionID
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_SessionID
},
7776 { &hf_ulp_message
, ASN1_NO_EXTENSIONS
, ASN1_NOT_OPTIONAL
, dissect_ulp_UlpMessage
},
7777 { NULL
, 0, 0, NULL
}
7781 dissect_ulp_ULP_PDU(tvbuff_t
*tvb _U_
, int offset _U_
, asn1_ctx_t
*actx _U_
, proto_tree
*tree _U_
, int hf_index _U_
) {
7783 proto_tree
*ulp_tree
;
7785 it
= proto_tree_add_item(tree
, proto_ulp
, tvb
, 0, -1, ENC_NA
);
7786 ulp_tree
= proto_item_add_subtree(it
, ett_ulp
);
7788 col_set_str(actx
->pinfo
->cinfo
, COL_PROTOCOL
, PSNAME
);
7789 col_clear(actx
->pinfo
->cinfo
, COL_INFO
);
7790 offset
= dissect_per_sequence(tvb
, offset
, actx
, ulp_tree
, hf_index
,
7791 ett_ulp_ULP_PDU
, ULP_PDU_sequence
);
7799 static int dissect_ULP_PDU_PDU(tvbuff_t
*tvb _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, void *data _U_
) {
7801 asn1_ctx_t asn1_ctx
;
7802 asn1_ctx_init(&asn1_ctx
, ASN1_ENC_PER
, false, pinfo
);
7803 offset
= dissect_ulp_ULP_PDU(tvb
, offset
, &asn1_ctx
, tree
, hf_ulp_ULP_PDU_PDU
);
7804 offset
+= 7; offset
>>= 3;
7811 get_ulp_pdu_len(packet_info
*pinfo _U_
, tvbuff_t
*tvb
, int offset
, void *data _U_
)
7813 /* PDU length = Message length */
7814 return tvb_get_ntohs(tvb
,offset
);
7818 dissect_ulp_tcp(tvbuff_t
*tvb
, packet_info
*pinfo
, proto_tree
*tree
, void* data
)
7820 tcp_dissect_pdus(tvb
, pinfo
, tree
, ulp_desegment
, ULP_HEADER_SIZE
,
7821 get_ulp_pdu_len
, dissect_ULP_PDU_PDU
, data
);
7822 return tvb_captured_length(tvb
);
7825 void proto_reg_handoff_ulp(void);
7827 /*--- proto_register_ulp -------------------------------------------*/
7828 void proto_register_ulp(void) {
7830 /* List of fields */
7831 static hf_register_info hf
[] = {
7833 { &hf_ulp_ULP_PDU_PDU
,
7834 { "ULP-PDU", "ulp.ULP_PDU_element",
7835 FT_NONE
, BASE_NONE
, NULL
, 0,
7838 { "length", "ulp.length",
7839 FT_UINT32
, BASE_DEC
, NULL
, 0,
7840 "INTEGER_0_65535", HFILL
}},
7842 { "version", "ulp.version_element",
7843 FT_NONE
, BASE_NONE
, NULL
, 0,
7845 { &hf_ulp_sessionID
,
7846 { "sessionID", "ulp.sessionID_element",
7847 FT_NONE
, BASE_NONE
, NULL
, 0,
7850 { "message", "ulp.message",
7851 FT_UINT32
, BASE_DEC
, VALS(ulp_UlpMessage_vals
), 0,
7852 "UlpMessage", HFILL
}},
7853 { &hf_ulp_msSUPLINIT
,
7854 { "msSUPLINIT", "ulp.msSUPLINIT_element",
7855 FT_NONE
, BASE_NONE
, NULL
, 0,
7856 "SUPLINIT", HFILL
}},
7857 { &hf_ulp_msSUPLSTART
,
7858 { "msSUPLSTART", "ulp.msSUPLSTART_element",
7859 FT_NONE
, BASE_NONE
, NULL
, 0,
7860 "SUPLSTART", HFILL
}},
7861 { &hf_ulp_msSUPLRESPONSE
,
7862 { "msSUPLRESPONSE", "ulp.msSUPLRESPONSE_element",
7863 FT_NONE
, BASE_NONE
, NULL
, 0,
7864 "SUPLRESPONSE", HFILL
}},
7865 { &hf_ulp_msSUPLPOSINIT
,
7866 { "msSUPLPOSINIT", "ulp.msSUPLPOSINIT_element",
7867 FT_NONE
, BASE_NONE
, NULL
, 0,
7868 "SUPLPOSINIT", HFILL
}},
7869 { &hf_ulp_msSUPLPOS
,
7870 { "msSUPLPOS", "ulp.msSUPLPOS_element",
7871 FT_NONE
, BASE_NONE
, NULL
, 0,
7872 "SUPLPOS", HFILL
}},
7873 { &hf_ulp_msSUPLEND
,
7874 { "msSUPLEND", "ulp.msSUPLEND_element",
7875 FT_NONE
, BASE_NONE
, NULL
, 0,
7876 "SUPLEND", HFILL
}},
7877 { &hf_ulp_msSUPLAUTHREQ
,
7878 { "msSUPLAUTHREQ", "ulp.msSUPLAUTHREQ_element",
7879 FT_NONE
, BASE_NONE
, NULL
, 0,
7880 "SUPLAUTHREQ", HFILL
}},
7881 { &hf_ulp_msSUPLAUTHRESP
,
7882 { "msSUPLAUTHRESP", "ulp.msSUPLAUTHRESP_element",
7883 FT_NONE
, BASE_NONE
, NULL
, 0,
7884 "SUPLAUTHRESP", HFILL
}},
7885 { &hf_ulp_msSUPLTRIGGEREDSTART
,
7886 { "msSUPLTRIGGEREDSTART", "ulp.msSUPLTRIGGEREDSTART_element",
7887 FT_NONE
, BASE_NONE
, NULL
, 0,
7888 "Ver2_SUPLTRIGGEREDSTART", HFILL
}},
7889 { &hf_ulp_msSUPLTRIGGEREDRESPONSE
,
7890 { "msSUPLTRIGGEREDRESPONSE", "ulp.msSUPLTRIGGEREDRESPONSE_element",
7891 FT_NONE
, BASE_NONE
, NULL
, 0,
7892 "Ver2_SUPLTRIGGEREDRESPONSE", HFILL
}},
7893 { &hf_ulp_msSUPLTRIGGEREDSTOP
,
7894 { "msSUPLTRIGGEREDSTOP", "ulp.msSUPLTRIGGEREDSTOP_element",
7895 FT_NONE
, BASE_NONE
, NULL
, 0,
7896 "Ver2_SUPLTRIGGEREDSTOP", HFILL
}},
7897 { &hf_ulp_msSUPLNOTIFY
,
7898 { "msSUPLNOTIFY", "ulp.msSUPLNOTIFY_element",
7899 FT_NONE
, BASE_NONE
, NULL
, 0,
7900 "Ver2_SUPLNOTIFY", HFILL
}},
7901 { &hf_ulp_msSUPLNOTIFYRESPONSE
,
7902 { "msSUPLNOTIFYRESPONSE", "ulp.msSUPLNOTIFYRESPONSE_element",
7903 FT_NONE
, BASE_NONE
, NULL
, 0,
7904 "Ver2_SUPLNOTIFYRESPONSE", HFILL
}},
7905 { &hf_ulp_msSUPLSETINIT
,
7906 { "msSUPLSETINIT", "ulp.msSUPLSETINIT_element",
7907 FT_NONE
, BASE_NONE
, NULL
, 0,
7908 "Ver2_SUPLSETINIT", HFILL
}},
7909 { &hf_ulp_msSUPLREPORT
,
7910 { "msSUPLREPORT", "ulp.msSUPLREPORT_element",
7911 FT_NONE
, BASE_NONE
, NULL
, 0,
7912 "Ver2_SUPLREPORT", HFILL
}},
7913 { &hf_ulp_posMethod
,
7914 { "posMethod", "ulp.posMethod",
7915 FT_UINT32
, BASE_DEC
, VALS(ulp_PosMethod_vals
), 0,
7917 { &hf_ulp_notification
,
7918 { "notification", "ulp.notification_element",
7919 FT_NONE
, BASE_NONE
, NULL
, 0,
7921 { &hf_ulp_sLPAddress
,
7922 { "sLPAddress", "ulp.sLPAddress",
7923 FT_UINT32
, BASE_DEC
, VALS(ulp_SLPAddress_vals
), 0,
7926 { "qoP", "ulp.qoP_element",
7927 FT_NONE
, BASE_NONE
, NULL
, 0,
7930 { "sLPMode", "ulp.sLPMode",
7931 FT_UINT32
, BASE_DEC
, VALS(ulp_SLPMode_vals
), 0,
7935 FT_BYTES
, BASE_NONE
, NULL
, 0,
7937 { &hf_ulp_keyIdentity
,
7938 { "keyIdentity", "ulp.keyIdentity",
7939 FT_BYTES
, BASE_NONE
, NULL
, 0,
7941 { &hf_ulp_ver2_SUPL_INIT_extension
,
7942 { "ver2-SUPL-INIT-extension", "ulp.ver2_SUPL_INIT_extension_element",
7943 FT_NONE
, BASE_NONE
, NULL
, 0,
7945 { &hf_ulp_notificationType
,
7946 { "notificationType", "ulp.notificationType",
7947 FT_UINT32
, BASE_DEC
, VALS(ulp_NotificationType_vals
), 0,
7949 { &hf_ulp_encodingType
,
7950 { "encodingType", "ulp.encodingType",
7951 FT_UINT32
, BASE_DEC
, VALS(ulp_EncodingType_vals
), 0,
7953 { &hf_ulp_requestorId
,
7954 { "requestorId", "ulp.requestorId",
7955 FT_STRING
, BASE_NONE
, NULL
, 0,
7957 { &hf_ulp_requestorIdType
,
7958 { "requestorIdType", "ulp.requestorIdType",
7959 FT_UINT32
, BASE_DEC
, VALS(ulp_FormatIndicator_vals
), 0,
7960 "FormatIndicator", HFILL
}},
7961 { &hf_ulp_clientName
,
7962 { "clientName", "ulp.clientName",
7963 FT_STRING
, BASE_NONE
, NULL
, 0,
7965 { &hf_ulp_clientNameType
,
7966 { "clientNameType", "ulp.clientNameType",
7967 FT_UINT32
, BASE_DEC
, VALS(ulp_FormatIndicator_vals
), 0,
7968 "FormatIndicator", HFILL
}},
7969 { &hf_ulp_ver2_Notification_extension
,
7970 { "ver2-Notification-extension", "ulp.ver2_Notification_extension_element",
7971 FT_NONE
, BASE_NONE
, NULL
, 0,
7973 { &hf_ulp_sETCapabilities
,
7974 { "sETCapabilities", "ulp.sETCapabilities_element",
7975 FT_NONE
, BASE_NONE
, NULL
, 0,
7977 { &hf_ulp_locationId
,
7978 { "locationId", "ulp.locationId_element",
7979 FT_NONE
, BASE_NONE
, NULL
, 0,
7981 { &hf_ulp_ver2_SUPL_START_extension
,
7982 { "ver2-SUPL-START-extension", "ulp.ver2_SUPL_START_extension_element",
7983 FT_NONE
, BASE_NONE
, NULL
, 0,
7985 { &hf_ulp_posTechnology
,
7986 { "posTechnology", "ulp.posTechnology_element",
7987 FT_NONE
, BASE_NONE
, NULL
, 0,
7989 { &hf_ulp_prefMethod
,
7990 { "prefMethod", "ulp.prefMethod",
7991 FT_UINT32
, BASE_DEC
, VALS(ulp_PrefMethod_vals
), 0,
7993 { &hf_ulp_posProtocol
,
7994 { "posProtocol", "ulp.posProtocol_element",
7995 FT_NONE
, BASE_NONE
, NULL
, 0,
7997 { &hf_ulp_ver2_SETCapabilities_extension
,
7998 { "ver2-SETCapabilities-extension", "ulp.ver2_SETCapabilities_extension_element",
7999 FT_NONE
, BASE_NONE
, NULL
, 0,
8001 { &hf_ulp_agpsSETassisted
,
8002 { "agpsSETassisted", "ulp.agpsSETassisted",
8003 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8004 "BOOLEAN", HFILL
}},
8005 { &hf_ulp_agpsSETBased
,
8006 { "agpsSETBased", "ulp.agpsSETBased",
8007 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8008 "BOOLEAN", HFILL
}},
8009 { &hf_ulp_autonomousGPS
,
8010 { "autonomousGPS", "ulp.autonomousGPS",
8011 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8012 "BOOLEAN", HFILL
}},
8014 { "aflt", "ulp.aflt",
8015 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8016 "BOOLEAN", HFILL
}},
8018 { "ecid", "ulp.ecid",
8019 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8020 "BOOLEAN", HFILL
}},
8022 { "eotd", "ulp.eotd",
8023 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8024 "BOOLEAN", HFILL
}},
8026 { "otdoa", "ulp.otdoa",
8027 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8028 "BOOLEAN", HFILL
}},
8029 { &hf_ulp_ver2_PosTechnology_extension
,
8030 { "ver2-PosTechnology-extension", "ulp.ver2_PosTechnology_extension_element",
8031 FT_NONE
, BASE_NONE
, NULL
, 0,
8034 { "tia801", "ulp.tia801",
8035 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8036 "BOOLEAN", HFILL
}},
8038 { "rrlp", "ulp.rrlp",
8039 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8040 "BOOLEAN", HFILL
}},
8043 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8044 "BOOLEAN", HFILL
}},
8045 { &hf_ulp_ver2_PosProtocol_extension
,
8046 { "ver2-PosProtocol-extension", "ulp.ver2_PosProtocol_extension_element",
8047 FT_NONE
, BASE_NONE
, NULL
, 0,
8049 { &hf_ulp_sETAuthKey
,
8050 { "sETAuthKey", "ulp.sETAuthKey",
8051 FT_UINT32
, BASE_DEC
, VALS(ulp_SETAuthKey_vals
), 0,
8053 { &hf_ulp_keyIdentity4
,
8054 { "keyIdentity4", "ulp.keyIdentity4",
8055 FT_BYTES
, BASE_NONE
, NULL
, 0,
8057 { &hf_ulp_ver2_SUPL_RESPONSE_extension
,
8058 { "ver2-SUPL-RESPONSE-extension", "ulp.ver2_SUPL_RESPONSE_extension_element",
8059 FT_NONE
, BASE_NONE
, NULL
, 0,
8062 { "shortKey", "ulp.shortKey",
8063 FT_BYTES
, BASE_NONE
, NULL
, 0,
8064 "BIT_STRING_SIZE_128", HFILL
}},
8066 { "longKey", "ulp.longKey",
8067 FT_BYTES
, BASE_NONE
, NULL
, 0,
8068 "BIT_STRING_SIZE_256", HFILL
}},
8069 { &hf_ulp_requestedAssistData
,
8070 { "requestedAssistData", "ulp.requestedAssistData_element",
8071 FT_NONE
, BASE_NONE
, NULL
, 0,
8074 { "position", "ulp.position_element",
8075 FT_NONE
, BASE_NONE
, NULL
, 0,
8078 { "suplpos", "ulp.suplpos_element",
8079 FT_NONE
, BASE_NONE
, NULL
, 0,
8083 FT_BYTES
, BASE_NONE
, NULL
, 0,
8085 { &hf_ulp_ver2_SUPL_POS_INIT_extension
,
8086 { "ver2-SUPL-POS-INIT-extension", "ulp.ver2_SUPL_POS_INIT_extension_element",
8087 FT_NONE
, BASE_NONE
, NULL
, 0,
8089 { &hf_ulp_almanacRequested
,
8090 { "almanacRequested", "ulp.almanacRequested",
8091 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8092 "BOOLEAN", HFILL
}},
8093 { &hf_ulp_utcModelRequested
,
8094 { "utcModelRequested", "ulp.utcModelRequested",
8095 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8096 "BOOLEAN", HFILL
}},
8097 { &hf_ulp_ionosphericModelRequested
,
8098 { "ionosphericModelRequested", "ulp.ionosphericModelRequested",
8099 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8100 "BOOLEAN", HFILL
}},
8101 { &hf_ulp_dgpsCorrectionsRequested
,
8102 { "dgpsCorrectionsRequested", "ulp.dgpsCorrectionsRequested",
8103 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8104 "BOOLEAN", HFILL
}},
8105 { &hf_ulp_referenceLocationRequested
,
8106 { "referenceLocationRequested", "ulp.referenceLocationRequested",
8107 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8108 "BOOLEAN", HFILL
}},
8109 { &hf_ulp_referenceTimeRequested
,
8110 { "referenceTimeRequested", "ulp.referenceTimeRequested",
8111 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8112 "BOOLEAN", HFILL
}},
8113 { &hf_ulp_acquisitionAssistanceRequested
,
8114 { "acquisitionAssistanceRequested", "ulp.acquisitionAssistanceRequested",
8115 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8116 "BOOLEAN", HFILL
}},
8117 { &hf_ulp_realTimeIntegrityRequested
,
8118 { "realTimeIntegrityRequested", "ulp.realTimeIntegrityRequested",
8119 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8120 "BOOLEAN", HFILL
}},
8121 { &hf_ulp_navigationModelRequested
,
8122 { "navigationModelRequested", "ulp.navigationModelRequested",
8123 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8124 "BOOLEAN", HFILL
}},
8125 { &hf_ulp_navigationModelData
,
8126 { "navigationModelData", "ulp.navigationModelData_element",
8127 FT_NONE
, BASE_NONE
, NULL
, 0,
8128 "NavigationModel", HFILL
}},
8129 { &hf_ulp_ver2_RequestedAssistData_extension
,
8130 { "ver2-RequestedAssistData-extension", "ulp.ver2_RequestedAssistData_extension_element",
8131 FT_NONE
, BASE_NONE
, NULL
, 0,
8134 { "gpsWeek", "ulp.gpsWeek",
8135 FT_UINT32
, BASE_DEC
, NULL
, 0,
8136 "INTEGER_0_1023", HFILL
}},
8138 { "gpsToe", "ulp.gpsToe",
8139 FT_UINT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_hours
), 0,
8140 "INTEGER_0_167", HFILL
}},
8142 { "nsat", "ulp.nsat",
8143 FT_UINT32
, BASE_DEC
, NULL
, 0,
8144 "INTEGER_0_31", HFILL
}},
8146 { "toeLimit", "ulp.toeLimit",
8147 FT_UINT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_hours
), 0,
8148 "INTEGER_0_10", HFILL
}},
8150 { "satInfo", "ulp.satInfo",
8151 FT_UINT32
, BASE_DEC
, NULL
, 0,
8152 "SatelliteInfo", HFILL
}},
8153 { &hf_ulp_SatelliteInfo_item
,
8154 { "SatelliteInfoElement", "ulp.SatelliteInfoElement_element",
8155 FT_NONE
, BASE_NONE
, NULL
, 0,
8158 { "satId", "ulp.satId",
8159 FT_UINT32
, BASE_DEC
, NULL
, 0,
8160 "INTEGER_0_63", HFILL
}},
8162 { "iode", "ulp.iode",
8163 FT_UINT32
, BASE_DEC
, NULL
, 0,
8164 "INTEGER_0_255", HFILL
}},
8165 { &hf_ulp_posPayLoad
,
8166 { "posPayLoad", "ulp.posPayLoad",
8167 FT_UINT32
, BASE_DEC
, VALS(ulp_PosPayLoad_vals
), 0,
8170 { "velocity", "ulp.velocity",
8171 FT_UINT32
, BASE_DEC
, VALS(ulp_Velocity_vals
), 0,
8173 { &hf_ulp_ver2_SUPL_POS_extension
,
8174 { "ver2-SUPL-POS-extension", "ulp.ver2_SUPL_POS_extension_element",
8175 FT_NONE
, BASE_NONE
, NULL
, 0,
8177 { &hf_ulp_tia801payload
,
8178 { "tia801payload", "ulp.tia801payload",
8179 FT_BYTES
, BASE_NONE
, NULL
, 0,
8180 "OCTET_STRING_SIZE_1_8192", HFILL
}},
8181 { &hf_ulp_rrcPayload
,
8182 { "rrcPayload", "ulp.rrcPayload",
8183 FT_BYTES
, BASE_NONE
, NULL
, 0,
8184 "OCTET_STRING_SIZE_1_8192", HFILL
}},
8185 { &hf_ulp_rrlpPayload
,
8186 { "rrlpPayload", "ulp.rrlpPayload",
8187 FT_BYTES
, BASE_NONE
, NULL
, 0,
8189 { &hf_ulp_ver2_PosPayLoad_extension
,
8190 { "ver2-PosPayLoad-extension", "ulp.ver2_PosPayLoad_extension_element",
8191 FT_NONE
, BASE_NONE
, NULL
, 0,
8193 { &hf_ulp_statusCode
,
8194 { "statusCode", "ulp.statusCode",
8195 FT_UINT32
, BASE_DEC
, VALS(ulp_StatusCode_vals
), 0,
8197 { &hf_ulp_ver2_SUPL_END_extension
,
8198 { "ver2-SUPL-END-extension", "ulp.ver2_SUPL_END_extension_element",
8199 FT_NONE
, BASE_NONE
, NULL
, 0,
8201 { &hf_ulp_sPCSETKey
,
8202 { "sPCSETKey", "ulp.sPCSETKey",
8203 FT_BYTES
, BASE_NONE
, NULL
, 0,
8206 { "spctid", "ulp.spctid_element",
8207 FT_NONE
, BASE_NONE
, NULL
, 0,
8209 { &hf_ulp_sPCSETKeylifetime
,
8210 { "sPCSETKeylifetime", "ulp.sPCSETKeylifetime",
8211 FT_UINT32
, BASE_DEC
, NULL
, 0,
8213 { &hf_ulp_notificationResponse
,
8214 { "notificationResponse", "ulp.notificationResponse",
8215 FT_UINT32
, BASE_DEC
, VALS(ulp_NotificationResponse_vals
), 0,
8217 { &hf_ulp_targetSETID
,
8218 { "targetSETID", "ulp.targetSETID",
8219 FT_UINT32
, BASE_DEC
, VALS(ulp_SETId_vals
), 0,
8221 { &hf_ulp_applicationID
,
8222 { "applicationID", "ulp.applicationID_element",
8223 FT_NONE
, BASE_NONE
, NULL
, 0,
8225 { &hf_ulp_multipleLocationIds
,
8226 { "multipleLocationIds", "ulp.multipleLocationIds",
8227 FT_UINT32
, BASE_DEC
, NULL
, 0,
8229 { &hf_ulp_thirdParty
,
8230 { "thirdParty", "ulp.thirdParty",
8231 FT_UINT32
, BASE_DEC
, NULL
, 0,
8233 { &hf_ulp_triggerType
,
8234 { "triggerType", "ulp.triggerType",
8235 FT_UINT32
, BASE_DEC
, VALS(ulp_TriggerType_vals
), 0,
8237 { &hf_ulp_triggerParams
,
8238 { "triggerParams", "ulp.triggerParams",
8239 FT_UINT32
, BASE_DEC
, VALS(ulp_TriggerParams_vals
), 0,
8241 { &hf_ulp_reportingCap
,
8242 { "reportingCap", "ulp.reportingCap_element",
8243 FT_NONE
, BASE_NONE
, NULL
, 0,
8245 { &hf_ulp_causeCode
,
8246 { "causeCode", "ulp.causeCode",
8247 FT_UINT32
, BASE_DEC
, VALS(ulp_CauseCode_vals
), 0,
8249 { &hf_ulp_periodicParams
,
8250 { "periodicParams", "ulp.periodicParams_element",
8251 FT_NONE
, BASE_NONE
, NULL
, 0,
8253 { &hf_ulp_areaEventParams
,
8254 { "areaEventParams", "ulp.areaEventParams_element",
8255 FT_NONE
, BASE_NONE
, NULL
, 0,
8257 { &hf_ulp_numberOfFixes
,
8258 { "numberOfFixes", "ulp.numberOfFixes",
8259 FT_UINT32
, BASE_DEC
, NULL
, 0,
8260 "INTEGER_1_8639999", HFILL
}},
8261 { &hf_ulp_intervalBetweenFixes
,
8262 { "intervalBetweenFixes", "ulp.intervalBetweenFixes",
8263 FT_UINT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_seconds
), 0,
8264 "INTEGER_1_8639999", HFILL
}},
8265 { &hf_ulp_startTime
,
8266 { "startTime", "ulp.startTime",
8267 FT_UINT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_seconds
), 0,
8268 "INTEGER_0_2678400", HFILL
}},
8269 { &hf_ulp_areaEventType
,
8270 { "areaEventType", "ulp.areaEventType",
8271 FT_UINT32
, BASE_DEC
, VALS(ulp_AreaEventType_vals
), 0,
8273 { &hf_ulp_locationEstimate
,
8274 { "locationEstimate", "ulp.locationEstimate",
8275 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8276 "BOOLEAN", HFILL
}},
8277 { &hf_ulp_repeatedReportingParams
,
8278 { "repeatedReportingParams", "ulp.repeatedReportingParams_element",
8279 FT_NONE
, BASE_NONE
, NULL
, 0,
8282 { "stopTime", "ulp.stopTime",
8283 FT_UINT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_seconds
), 0,
8284 "INTEGER_0_11318399", HFILL
}},
8285 { &hf_ulp_geographicTargetAreaList
,
8286 { "geographicTargetAreaList", "ulp.geographicTargetAreaList",
8287 FT_UINT32
, BASE_DEC
, NULL
, 0,
8289 { &hf_ulp_areaIdLists
,
8290 { "areaIdLists", "ulp.areaIdLists",
8291 FT_UINT32
, BASE_DEC
, NULL
, 0,
8292 "SEQUENCE_SIZE_1_maxAreaIdList_OF_AreaIdList", HFILL
}},
8293 { &hf_ulp_areaIdLists_item
,
8294 { "AreaIdList", "ulp.AreaIdList_element",
8295 FT_NONE
, BASE_NONE
, NULL
, 0,
8297 { &hf_ulp_minimumIntervalTime
,
8298 { "minimumIntervalTime", "ulp.minimumIntervalTime",
8299 FT_UINT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_seconds
), 0,
8300 "INTEGER_1_604800", HFILL
}},
8301 { &hf_ulp_maximumNumberOfReports
,
8302 { "maximumNumberOfReports", "ulp.maximumNumberOfReports",
8303 FT_UINT32
, BASE_DEC
, NULL
, 0,
8304 "INTEGER_1_1024", HFILL
}},
8305 { &hf_ulp_GeographicTargetAreaList_item
,
8306 { "GeographicTargetArea", "ulp.GeographicTargetArea",
8307 FT_UINT32
, BASE_DEC
, VALS(ulp_GeographicTargetArea_vals
), 0,
8309 { &hf_ulp_circularArea
,
8310 { "circularArea", "ulp.circularArea_element",
8311 FT_NONE
, BASE_NONE
, NULL
, 0,
8313 { &hf_ulp_ellipticalArea
,
8314 { "ellipticalArea", "ulp.ellipticalArea_element",
8315 FT_NONE
, BASE_NONE
, NULL
, 0,
8317 { &hf_ulp_polygonArea
,
8318 { "polygonArea", "ulp.polygonArea_element",
8319 FT_NONE
, BASE_NONE
, NULL
, 0,
8321 { &hf_ulp_areaIdSet
,
8322 { "areaIdSet", "ulp.areaIdSet",
8323 FT_UINT32
, BASE_DEC
, NULL
, 0,
8325 { &hf_ulp_areaIdSetType
,
8326 { "areaIdSetType", "ulp.areaIdSetType",
8327 FT_UINT32
, BASE_DEC
, VALS(ulp_AreaIdSetType_vals
), 0,
8329 { &hf_ulp_geoAreaMappingList
,
8330 { "geoAreaMappingList", "ulp.geoAreaMappingList",
8331 FT_UINT32
, BASE_DEC
, NULL
, 0,
8333 { &hf_ulp_AreaIdSet_item
,
8334 { "AreaId", "ulp.AreaId",
8335 FT_UINT32
, BASE_DEC
, VALS(ulp_AreaId_vals
), 0,
8337 { &hf_ulp_gSMAreaId
,
8338 { "gSMAreaId", "ulp.gSMAreaId_element",
8339 FT_NONE
, BASE_NONE
, NULL
, 0,
8341 { &hf_ulp_wCDMAAreaId
,
8342 { "wCDMAAreaId", "ulp.wCDMAAreaId_element",
8343 FT_NONE
, BASE_NONE
, NULL
, 0,
8345 { &hf_ulp_cDMAAreaId
,
8346 { "cDMAAreaId", "ulp.cDMAAreaId_element",
8347 FT_NONE
, BASE_NONE
, NULL
, 0,
8349 { &hf_ulp_hRPDAreaId
,
8350 { "hRPDAreaId", "ulp.hRPDAreaId_element",
8351 FT_NONE
, BASE_NONE
, NULL
, 0,
8353 { &hf_ulp_uMBAreaId
,
8354 { "uMBAreaId", "ulp.uMBAreaId_element",
8355 FT_NONE
, BASE_NONE
, NULL
, 0,
8357 { &hf_ulp_lTEAreaId
,
8358 { "lTEAreaId", "ulp.lTEAreaId_element",
8359 FT_NONE
, BASE_NONE
, NULL
, 0,
8361 { &hf_ulp_wLANAreaId
,
8362 { "wLANAreaId", "ulp.wLANAreaId_element",
8363 FT_NONE
, BASE_NONE
, NULL
, 0,
8365 { &hf_ulp_wiMAXAreaId
,
8366 { "wiMAXAreaId", "ulp.wiMAXAreaId_element",
8367 FT_NONE
, BASE_NONE
, NULL
, 0,
8370 { "nRAreaId", "ulp.nRAreaId_element",
8371 FT_NONE
, BASE_NONE
, NULL
, 0,
8374 { "refMCC", "ulp.refMCC",
8375 FT_UINT32
, BASE_DEC
, NULL
, 0,
8376 "INTEGER_0_999", HFILL
}},
8378 { "refMNC", "ulp.refMNC",
8379 FT_UINT32
, BASE_DEC
, NULL
, 0,
8380 "INTEGER_0_999", HFILL
}},
8382 { "refLAC", "ulp.refLAC",
8383 FT_UINT32
, BASE_DEC
, NULL
, 0,
8384 "INTEGER_0_65535", HFILL
}},
8386 { "refCI", "ulp.refCI",
8387 FT_UINT32
, BASE_DEC
, NULL
, 0,
8388 "INTEGER_0_65535", HFILL
}},
8390 { "refUC", "ulp.refUC",
8391 FT_UINT32
, BASE_DEC
, NULL
, 0,
8392 "INTEGER_0_268435455", HFILL
}},
8394 { "refSID", "ulp.refSID",
8395 FT_UINT32
, BASE_DEC
, NULL
, 0,
8396 "INTEGER_0_65535", HFILL
}},
8398 { "refNID", "ulp.refNID",
8399 FT_UINT32
, BASE_DEC
, NULL
, 0,
8400 "INTEGER_0_32767", HFILL
}},
8401 { &hf_ulp_refBASEID
,
8402 { "refBASEID", "ulp.refBASEID",
8403 FT_UINT32
, BASE_DEC
, NULL
, 0,
8404 "INTEGER_0_65535", HFILL
}},
8405 { &hf_ulp_refSECTORID
,
8406 { "refSECTORID", "ulp.refSECTORID",
8407 FT_BYTES
, BASE_NONE
, NULL
, 0,
8408 "BIT_STRING_SIZE_128", HFILL
}},
8410 { "refCI", "ulp.refCI",
8411 FT_BYTES
, BASE_NONE
, NULL
, 0,
8412 "BIT_STRING_SIZE_29", HFILL
}},
8413 { &hf_ulp_apMACAddress
,
8414 { "apMACAddress", "ulp.apMACAddress",
8415 FT_ETHER
, BASE_NONE
, NULL
, 0,
8418 { "bsID-MSB", "ulp.bsID_MSB",
8419 FT_BYTES
, BASE_NONE
, NULL
, 0,
8420 "BIT_STRING_SIZE_24", HFILL
}},
8422 { "bsID-LSB", "ulp.bsID_LSB",
8423 FT_BYTES
, BASE_NONE
, NULL
, 0,
8424 "BIT_STRING_SIZE_24", HFILL
}},
8426 { "refCI", "ulp.refCI",
8427 FT_BYTES
, BASE_NONE
, NULL
, 0,
8428 "BIT_STRING_SIZE_36", HFILL
}},
8429 { &hf_ulp_GeoAreaMappingList_item
,
8430 { "GeoAreaIndex", "ulp.GeoAreaIndex",
8431 FT_UINT32
, BASE_DEC
, NULL
, 0,
8433 { &hf_ulp_supportedNetworkInformation
,
8434 { "supportedNetworkInformation", "ulp.supportedNetworkInformation_element",
8435 FT_NONE
, BASE_NONE
, NULL
, 0,
8437 { &hf_ulp_reportingMode
,
8438 { "reportingMode", "ulp.reportingMode_element",
8439 FT_NONE
, BASE_NONE
, NULL
, 0,
8441 { &hf_ulp_gnssPosTechnology
,
8442 { "gnssPosTechnology", "ulp.gnssPosTechnology_element",
8443 FT_NONE
, BASE_NONE
, NULL
, 0,
8446 { "repMode", "ulp.repMode",
8447 FT_UINT32
, BASE_DEC
, VALS(ulp_RepModee_vals
), 0,
8448 "RepModee", HFILL
}},
8449 { &hf_ulp_batchRepConditions
,
8450 { "batchRepConditions", "ulp.batchRepConditions",
8451 FT_UINT32
, BASE_DEC
, VALS(ulp_BatchRepConditions_vals
), 0,
8453 { &hf_ulp_batchRepType
,
8454 { "batchRepType", "ulp.batchRepType_element",
8455 FT_NONE
, BASE_NONE
, NULL
, 0,
8457 { &hf_ulp_num_interval
,
8458 { "num-interval", "ulp.num_interval",
8459 FT_UINT32
, BASE_DEC
, NULL
, 0,
8460 "INTEGER_1_1024", HFILL
}},
8461 { &hf_ulp_num_minutes
,
8462 { "num-minutes", "ulp.num_minutes",
8463 FT_UINT32
, BASE_DEC
, NULL
, 0,
8464 "INTEGER_1_2048", HFILL
}},
8465 { &hf_ulp_endofsession
,
8466 { "endofsession", "ulp.endofsession_element",
8467 FT_NONE
, BASE_NONE
, NULL
, 0,
8469 { &hf_ulp_reportPosition
,
8470 { "reportPosition", "ulp.reportPosition",
8471 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8472 "BOOLEAN", HFILL
}},
8473 { &hf_ulp_reportMeasurements
,
8474 { "reportMeasurements", "ulp.reportMeasurements",
8475 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8476 "BOOLEAN", HFILL
}},
8477 { &hf_ulp_intermediateReports
,
8478 { "intermediateReports", "ulp.intermediateReports",
8479 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8480 "BOOLEAN", HFILL
}},
8481 { &hf_ulp_discardOldest
,
8482 { "discardOldest", "ulp.discardOldest",
8483 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8484 "BOOLEAN", HFILL
}},
8485 { &hf_ulp_sessionList
,
8486 { "sessionList", "ulp.sessionList",
8487 FT_UINT32
, BASE_DEC
, NULL
, 0,
8489 { &hf_ulp_reportDataList
,
8490 { "reportDataList", "ulp.reportDataList",
8491 FT_UINT32
, BASE_DEC
, NULL
, 0,
8493 { &hf_ulp_moreComponents
,
8494 { "moreComponents", "ulp.moreComponents_element",
8495 FT_NONE
, BASE_NONE
, NULL
, 0,
8497 { &hf_ulp_SessionList_item
,
8498 { "SessionInformation", "ulp.SessionInformation_element",
8499 FT_NONE
, BASE_NONE
, NULL
, 0,
8501 { &hf_ulp_ReportDataList_item
,
8502 { "ReportData", "ulp.ReportData_element",
8503 FT_NONE
, BASE_NONE
, NULL
, 0,
8505 { &hf_ulp_positionData
,
8506 { "positionData", "ulp.positionData_element",
8507 FT_NONE
, BASE_NONE
, NULL
, 0,
8509 { &hf_ulp_resultCode
,
8510 { "resultCode", "ulp.resultCode",
8511 FT_UINT32
, BASE_DEC
, VALS(ulp_ResultCode_vals
), 0,
8513 { &hf_ulp_timestamp
,
8514 { "timestamp", "ulp.timestamp",
8515 FT_UINT32
, BASE_DEC
, VALS(ulp_TimeStamp_vals
), 0,
8517 { &hf_ulp_ganssSignalsInfo
,
8518 { "ganssSignalsInfo", "ulp.ganssSignalsInfo",
8519 FT_UINT32
, BASE_DEC
, NULL
, 0,
8521 { &hf_ulp_GANSSsignalsInfo_item
,
8522 { "GANSSSignalsDescription", "ulp.GANSSSignalsDescription_element",
8523 FT_NONE
, BASE_NONE
, NULL
, 0,
8526 { "ganssId", "ulp.ganssId",
8527 FT_UINT32
, BASE_DEC
, VALS(ulp_ganss_id_vals
), 0,
8528 "INTEGER_0_15", HFILL
}},
8529 { &hf_ulp_gANSSSignals
,
8530 { "gANSSSignals", "ulp.gANSSSignals",
8531 FT_BYTES
, BASE_NONE
, NULL
, 0,
8533 { &hf_ulp_absoluteTime
,
8534 { "absoluteTime", "ulp.absoluteTime",
8535 FT_STRING
, BASE_NONE
, NULL
, 0,
8536 "UTCTime", HFILL
}},
8537 { &hf_ulp_relativeTime
,
8538 { "relativeTime", "ulp.relativeTime",
8539 FT_UINT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_seconds
), 0,
8540 "INTEGER_0_31536000", HFILL
}},
8541 { &hf_ulp_notificationMode
,
8542 { "notificationMode", "ulp.notificationMode",
8543 FT_UINT32
, BASE_DEC
, VALS(ulp_NotificationMode_vals
), 0,
8545 { &hf_ulp_e_SLPAddress
,
8546 { "e-SLPAddress", "ulp.e_SLPAddress",
8547 FT_UINT32
, BASE_DEC
, VALS(ulp_SLPAddress_vals
), 0,
8548 "SLPAddress", HFILL
}},
8549 { &hf_ulp_historicReporting
,
8550 { "historicReporting", "ulp.historicReporting_element",
8551 FT_NONE
, BASE_NONE
, NULL
, 0,
8553 { &hf_ulp_protectionLevel
,
8554 { "protectionLevel", "ulp.protectionLevel_element",
8555 FT_NONE
, BASE_NONE
, NULL
, 0,
8557 { &hf_ulp_minimumMajorVersion
,
8558 { "minimumMajorVersion", "ulp.minimumMajorVersion",
8559 FT_UINT32
, BASE_DEC
, NULL
, 0,
8560 "INTEGER_0_255", HFILL
}},
8561 { &hf_ulp_allowedReportingType
,
8562 { "allowedReportingType", "ulp.allowedReportingType",
8563 FT_UINT32
, BASE_DEC
, VALS(ulp_AllowedReportingType_vals
), 0,
8565 { &hf_ulp_reportingCriteria
,
8566 { "reportingCriteria", "ulp.reportingCriteria_element",
8567 FT_NONE
, BASE_NONE
, NULL
, 0,
8569 { &hf_ulp_timeWindow
,
8570 { "timeWindow", "ulp.timeWindow_element",
8571 FT_NONE
, BASE_NONE
, NULL
, 0,
8573 { &hf_ulp_maxNumberofReports
,
8574 { "maxNumberofReports", "ulp.maxNumberofReports",
8575 FT_UINT32
, BASE_DEC
, NULL
, 0,
8576 "INTEGER_1_65536", HFILL
}},
8577 { &hf_ulp_minTimeInterval
,
8578 { "minTimeInterval", "ulp.minTimeInterval",
8579 FT_UINT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_seconds
), 0,
8580 "INTEGER_1_86400", HFILL
}},
8581 { &hf_ulp_startTime_01
,
8582 { "startTime", "ulp.startTime",
8583 FT_INT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_minutes
), 0,
8584 "INTEGER_M525600_M1", HFILL
}},
8585 { &hf_ulp_stopTime_01
,
8586 { "stopTime", "ulp.stopTime",
8587 FT_INT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_minutes
), 0,
8588 "INTEGER_M525599_0", HFILL
}},
8589 { &hf_ulp_protlevel
,
8590 { "protlevel", "ulp.protlevel",
8591 FT_UINT32
, BASE_DEC
, VALS(ulp_ProtLevel_vals
), 0,
8593 { &hf_ulp_basicProtectionParams
,
8594 { "basicProtectionParams", "ulp.basicProtectionParams_element",
8595 FT_NONE
, BASE_NONE
, NULL
, 0,
8597 { &hf_ulp_keyIdentifier
,
8598 { "keyIdentifier", "ulp.keyIdentifier",
8599 FT_BYTES
, BASE_NONE
, NULL
, 0,
8600 "OCTET_STRING_SIZE_8", HFILL
}},
8601 { &hf_ulp_basicReplayCounter
,
8602 { "basicReplayCounter", "ulp.basicReplayCounter",
8603 FT_UINT32
, BASE_DEC
, NULL
, 0,
8604 "INTEGER_0_65535", HFILL
}},
8606 { "basicMAC", "ulp.basicMAC",
8607 FT_BYTES
, BASE_NONE
, NULL
, 0,
8608 "BIT_STRING_SIZE_32", HFILL
}},
8609 { &hf_ulp_initialApproximateposition
,
8610 { "initialApproximateposition", "ulp.initialApproximateposition_element",
8611 FT_NONE
, BASE_NONE
, NULL
, 0,
8612 "Position", HFILL
}},
8613 { &hf_ulp_utran_GPSReferenceTimeResult
,
8614 { "utran-GPSReferenceTimeResult", "ulp.utran_GPSReferenceTimeResult_element",
8615 FT_NONE
, BASE_NONE
, NULL
, 0,
8617 { &hf_ulp_utran_GANSSReferenceTimeResult
,
8618 { "utran-GANSSReferenceTimeResult", "ulp.utran_GANSSReferenceTimeResult_element",
8619 FT_NONE
, BASE_NONE
, NULL
, 0,
8621 { &hf_ulp_utran_GPSReferenceTimeAssistance
,
8622 { "utran-GPSReferenceTimeAssistance", "ulp.utran_GPSReferenceTimeAssistance_element",
8623 FT_NONE
, BASE_NONE
, NULL
, 0,
8625 { &hf_ulp_utran_GANSSReferenceTimeAssistance
,
8626 { "utran-GANSSReferenceTimeAssistance", "ulp.utran_GANSSReferenceTimeAssistance_element",
8627 FT_NONE
, BASE_NONE
, NULL
, 0,
8629 { &hf_ulp_ver2_HighAccuracyPosition
,
8630 { "ver2-HighAccuracyPosition", "ulp.ver2_HighAccuracyPosition_element",
8631 FT_NONE
, BASE_NONE
, NULL
, 0,
8633 { &hf_ulp_emergencyCallLocation
,
8634 { "emergencyCallLocation", "ulp.emergencyCallLocation_element",
8635 FT_NONE
, BASE_NONE
, NULL
, 0,
8637 { &hf_ulp_serviceCapabilities
,
8638 { "serviceCapabilities", "ulp.serviceCapabilities_element",
8639 FT_NONE
, BASE_NONE
, NULL
, 0,
8641 { &hf_ulp_supportedBearers
,
8642 { "supportedBearers", "ulp.supportedBearers_element",
8643 FT_NONE
, BASE_NONE
, NULL
, 0,
8645 { &hf_ulp_servicesSupported
,
8646 { "servicesSupported", "ulp.servicesSupported_element",
8647 FT_NONE
, BASE_NONE
, NULL
, 0,
8649 { &hf_ulp_reportingCapabilities
,
8650 { "reportingCapabilities", "ulp.reportingCapabilities_element",
8651 FT_NONE
, BASE_NONE
, NULL
, 0,
8652 "ReportingCap", HFILL
}},
8653 { &hf_ulp_eventTriggerCapabilities
,
8654 { "eventTriggerCapabilities", "ulp.eventTriggerCapabilities_element",
8655 FT_NONE
, BASE_NONE
, NULL
, 0,
8657 { &hf_ulp_sessionCapabilities
,
8658 { "sessionCapabilities", "ulp.sessionCapabilities_element",
8659 FT_NONE
, BASE_NONE
, NULL
, 0,
8661 { &hf_ulp_periodicTrigger
,
8662 { "periodicTrigger", "ulp.periodicTrigger",
8663 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8664 "BOOLEAN", HFILL
}},
8665 { &hf_ulp_areaEventTrigger
,
8666 { "areaEventTrigger", "ulp.areaEventTrigger",
8667 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8668 "BOOLEAN", HFILL
}},
8669 { &hf_ulp_geoAreaShapesSupported
,
8670 { "geoAreaShapesSupported", "ulp.geoAreaShapesSupported_element",
8671 FT_NONE
, BASE_NONE
, NULL
, 0,
8673 { &hf_ulp_maxNumGeoAreaSupported
,
8674 { "maxNumGeoAreaSupported", "ulp.maxNumGeoAreaSupported",
8675 FT_UINT32
, BASE_DEC
, NULL
, 0,
8676 "INTEGER_0_maxNumGeoArea", HFILL
}},
8677 { &hf_ulp_maxAreaIdListSupported
,
8678 { "maxAreaIdListSupported", "ulp.maxAreaIdListSupported",
8679 FT_UINT32
, BASE_DEC
, NULL
, 0,
8680 "INTEGER_0_maxAreaIdList", HFILL
}},
8681 { &hf_ulp_maxAreaIdSupportedPerList
,
8682 { "maxAreaIdSupportedPerList", "ulp.maxAreaIdSupportedPerList",
8683 FT_UINT32
, BASE_DEC
, NULL
, 0,
8684 "INTEGER_0_maxAreaId", HFILL
}},
8685 { &hf_ulp_ellipticalArea_01
,
8686 { "ellipticalArea", "ulp.ellipticalArea",
8687 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8688 "BOOLEAN", HFILL
}},
8689 { &hf_ulp_polygonArea_01
,
8690 { "polygonArea", "ulp.polygonArea",
8691 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8692 "BOOLEAN", HFILL
}},
8693 { &hf_ulp_maxNumberTotalSessions
,
8694 { "maxNumberTotalSessions", "ulp.maxNumberTotalSessions",
8695 FT_UINT32
, BASE_DEC
, NULL
, 0,
8696 "INTEGER_1_128", HFILL
}},
8697 { &hf_ulp_maxNumberPeriodicSessions
,
8698 { "maxNumberPeriodicSessions", "ulp.maxNumberPeriodicSessions",
8699 FT_UINT32
, BASE_DEC
, NULL
, 0,
8700 "INTEGER_1_32", HFILL
}},
8701 { &hf_ulp_maxNumberTriggeredSessions
,
8702 { "maxNumberTriggeredSessions", "ulp.maxNumberTriggeredSessions",
8703 FT_UINT32
, BASE_DEC
, NULL
, 0,
8704 "INTEGER_1_32", HFILL
}},
8707 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8708 "BOOLEAN", HFILL
}},
8710 { "wcdma", "ulp.wcdma",
8711 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8712 "BOOLEAN", HFILL
}},
8715 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8716 "BOOLEAN", HFILL
}},
8718 { "cdma", "ulp.cdma",
8719 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8720 "BOOLEAN", HFILL
}},
8722 { "hprd", "ulp.hprd",
8723 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8724 "BOOLEAN", HFILL
}},
8727 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8728 "BOOLEAN", HFILL
}},
8730 { "wlan", "ulp.wlan",
8731 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8732 "BOOLEAN", HFILL
}},
8734 { "wiMAX", "ulp.wiMAX",
8735 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8736 "BOOLEAN", HFILL
}},
8739 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8740 "BOOLEAN", HFILL
}},
8743 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8744 "BOOLEAN", HFILL
}},
8745 { &hf_ulp_posProtocolVersionRRLP
,
8746 { "posProtocolVersionRRLP", "ulp.posProtocolVersionRRLP_element",
8747 FT_NONE
, BASE_NONE
, NULL
, 0,
8748 "PosProtocolVersion3GPP", HFILL
}},
8749 { &hf_ulp_posProtocolVersionRRC
,
8750 { "posProtocolVersionRRC", "ulp.posProtocolVersionRRC_element",
8751 FT_NONE
, BASE_NONE
, NULL
, 0,
8752 "PosProtocolVersion3GPP", HFILL
}},
8753 { &hf_ulp_posProtocolVersionTIA801
,
8754 { "posProtocolVersionTIA801", "ulp.posProtocolVersionTIA801",
8755 FT_UINT32
, BASE_DEC
, NULL
, 0,
8756 "PosProtocolVersion3GPP2", HFILL
}},
8757 { &hf_ulp_posProtocolVersionLPP
,
8758 { "posProtocolVersionLPP", "ulp.posProtocolVersionLPP_element",
8759 FT_NONE
, BASE_NONE
, NULL
, 0,
8760 "PosProtocolVersion3GPP", HFILL
}},
8762 { "lppe", "ulp.lppe",
8763 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8764 "BOOLEAN", HFILL
}},
8765 { &hf_ulp_posProtocolVersionLPPe
,
8766 { "posProtocolVersionLPPe", "ulp.posProtocolVersionLPPe_element",
8767 FT_NONE
, BASE_NONE
, NULL
, 0,
8768 "PosProtocolVersionOMA", HFILL
}},
8769 { &hf_ulp_majorVersionField
,
8770 { "majorVersionField", "ulp.majorVersionField",
8771 FT_UINT32
, BASE_DEC
, NULL
, 0,
8772 "INTEGER_0_255", HFILL
}},
8773 { &hf_ulp_technicalVersionField
,
8774 { "technicalVersionField", "ulp.technicalVersionField",
8775 FT_UINT32
, BASE_DEC
, NULL
, 0,
8776 "INTEGER_0_255", HFILL
}},
8777 { &hf_ulp_editorialVersionField
,
8778 { "editorialVersionField", "ulp.editorialVersionField",
8779 FT_UINT32
, BASE_DEC
, NULL
, 0,
8780 "INTEGER_0_255", HFILL
}},
8781 { &hf_ulp_PosProtocolVersion3GPP2_item
,
8782 { "Supported3GPP2PosProtocolVersion", "ulp.Supported3GPP2PosProtocolVersion_element",
8783 FT_NONE
, BASE_NONE
, NULL
, 0,
8785 { &hf_ulp_revisionNumber
,
8786 { "revisionNumber", "ulp.revisionNumber",
8787 FT_BYTES
, BASE_NONE
, NULL
, 0,
8788 "BIT_STRING_SIZE_6", HFILL
}},
8789 { &hf_ulp_pointReleaseNumber
,
8790 { "pointReleaseNumber", "ulp.pointReleaseNumber",
8791 FT_UINT32
, BASE_DEC
, NULL
, 0,
8792 "INTEGER_0_255", HFILL
}},
8793 { &hf_ulp_internalEditLevel
,
8794 { "internalEditLevel", "ulp.internalEditLevel",
8795 FT_UINT32
, BASE_DEC
, NULL
, 0,
8796 "INTEGER_0_255", HFILL
}},
8797 { &hf_ulp_minorVersionField
,
8798 { "minorVersionField", "ulp.minorVersionField",
8799 FT_UINT32
, BASE_DEC
, NULL
, 0,
8800 "INTEGER_0_255", HFILL
}},
8801 { &hf_ulp_gANSSPositionMethods
,
8802 { "gANSSPositionMethods", "ulp.gANSSPositionMethods",
8803 FT_UINT32
, BASE_DEC
, NULL
, 0,
8805 { &hf_ulp_additionalPositioningMethods
,
8806 { "additionalPositioningMethods", "ulp.additionalPositioningMethods",
8807 FT_UINT32
, BASE_DEC
, NULL
, 0,
8809 { &hf_ulp_GANSSPositionMethods_item
,
8810 { "GANSSPositionMethod", "ulp.GANSSPositionMethod_element",
8811 FT_NONE
, BASE_NONE
, NULL
, 0,
8813 { &hf_ulp_ganssSBASid
,
8814 { "ganssSBASid", "ulp.ganssSBASid",
8815 FT_UINT8
, BASE_DEC
, VALS(ulp_ganss_sbas_id_vals
), 0,
8817 { &hf_ulp_gANSSPositioningMethodTypes
,
8818 { "gANSSPositioningMethodTypes", "ulp.gANSSPositioningMethodTypes_element",
8819 FT_NONE
, BASE_NONE
, NULL
, 0,
8822 { "rtk", "ulp.rtk_element",
8823 FT_NONE
, BASE_NONE
, NULL
, 0,
8827 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8828 "BOOLEAN", HFILL
}},
8829 { &hf_ulp_setAssisted
,
8830 { "setAssisted", "ulp.setAssisted",
8831 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8832 "BOOLEAN", HFILL
}},
8834 { "setBased", "ulp.setBased",
8835 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8836 "BOOLEAN", HFILL
}},
8837 { &hf_ulp_autonomous
,
8838 { "autonomous", "ulp.autonomous",
8839 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8840 "BOOLEAN", HFILL
}},
8841 { &hf_ulp_AdditionalPositioningMethods_item
,
8842 { "AddPosSupport-Element", "ulp.AddPosSupport_Element_element",
8843 FT_NONE
, BASE_NONE
, NULL
, 0,
8846 { "addPosID", "ulp.addPosID",
8847 FT_UINT32
, BASE_DEC
, VALS(ulp_T_addPosID_vals
), 0,
8849 { &hf_ulp_addPosMode
,
8850 { "addPosMode", "ulp.addPosMode",
8851 FT_BYTES
, BASE_NONE
, NULL
, 0,
8853 { &hf_ulp_ganssRequestedCommonAssistanceDataList
,
8854 { "ganssRequestedCommonAssistanceDataList", "ulp.ganssRequestedCommonAssistanceDataList_element",
8855 FT_NONE
, BASE_NONE
, NULL
, 0,
8857 { &hf_ulp_ganssRequestedGenericAssistanceDataList
,
8858 { "ganssRequestedGenericAssistanceDataList", "ulp.ganssRequestedGenericAssistanceDataList",
8859 FT_UINT32
, BASE_DEC
, NULL
, 0,
8861 { &hf_ulp_extendedEphemeris
,
8862 { "extendedEphemeris", "ulp.extendedEphemeris_element",
8863 FT_NONE
, BASE_NONE
, NULL
, 0,
8865 { &hf_ulp_extendedEphemerisCheck
,
8866 { "extendedEphemerisCheck", "ulp.extendedEphemerisCheck_element",
8867 FT_NONE
, BASE_NONE
, NULL
, 0,
8868 "ExtendedEphCheck", HFILL
}},
8869 { &hf_ulp_ganssReferenceTime
,
8870 { "ganssReferenceTime", "ulp.ganssReferenceTime",
8871 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8872 "BOOLEAN", HFILL
}},
8873 { &hf_ulp_ganssIonosphericModel
,
8874 { "ganssIonosphericModel", "ulp.ganssIonosphericModel",
8875 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8876 "BOOLEAN", HFILL
}},
8877 { &hf_ulp_ganssAdditionalIonosphericModelForDataID00
,
8878 { "ganssAdditionalIonosphericModelForDataID00", "ulp.ganssAdditionalIonosphericModelForDataID00",
8879 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8880 "BOOLEAN", HFILL
}},
8881 { &hf_ulp_ganssAdditionalIonosphericModelForDataID11
,
8882 { "ganssAdditionalIonosphericModelForDataID11", "ulp.ganssAdditionalIonosphericModelForDataID11",
8883 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8884 "BOOLEAN", HFILL
}},
8885 { &hf_ulp_ganssEarthOrientationParameters
,
8886 { "ganssEarthOrientationParameters", "ulp.ganssEarthOrientationParameters",
8887 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8888 "BOOLEAN", HFILL
}},
8889 { &hf_ulp_ganssAdditionalIonosphericModelForDataID01
,
8890 { "ganssAdditionalIonosphericModelForDataID01", "ulp.ganssAdditionalIonosphericModelForDataID01",
8891 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8892 "BOOLEAN", HFILL
}},
8893 { &hf_ulp_GanssRequestedGenericAssistanceDataList_item
,
8894 { "GanssReqGenericData", "ulp.GanssReqGenericData_element",
8895 FT_NONE
, BASE_NONE
, NULL
, 0,
8897 { &hf_ulp_ganssId_01
,
8898 { "ganssId", "ulp.ganssId",
8899 FT_UINT32
, BASE_DEC
, VALS(ulp_ganss_id_vals
), 0,
8901 { &hf_ulp_ganssSBASid_01
,
8902 { "ganssSBASid", "ulp.ganssSBASid",
8903 FT_UINT8
, BASE_DEC
, VALS(ulp_ganss_sbas_id_vals
), 0,
8904 "T_ganssSBASid_01", HFILL
}},
8905 { &hf_ulp_ganssRealTimeIntegrity
,
8906 { "ganssRealTimeIntegrity", "ulp.ganssRealTimeIntegrity",
8907 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8908 "BOOLEAN", HFILL
}},
8909 { &hf_ulp_ganssDifferentialCorrection
,
8910 { "ganssDifferentialCorrection", "ulp.ganssDifferentialCorrection",
8911 FT_BYTES
, BASE_NONE
, NULL
, 0,
8912 "DGANSS_Sig_Id_Req", HFILL
}},
8913 { &hf_ulp_ganssAlmanac
,
8914 { "ganssAlmanac", "ulp.ganssAlmanac",
8915 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8916 "BOOLEAN", HFILL
}},
8917 { &hf_ulp_ganssNavigationModelData
,
8918 { "ganssNavigationModelData", "ulp.ganssNavigationModelData_element",
8919 FT_NONE
, BASE_NONE
, NULL
, 0,
8921 { &hf_ulp_ganssTimeModels
,
8922 { "ganssTimeModels", "ulp.ganssTimeModels",
8923 FT_BYTES
, BASE_NONE
, NULL
, 0,
8925 { &hf_ulp_ganssReferenceMeasurementInfo
,
8926 { "ganssReferenceMeasurementInfo", "ulp.ganssReferenceMeasurementInfo",
8927 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8928 "BOOLEAN", HFILL
}},
8929 { &hf_ulp_ganssDataBits
,
8930 { "ganssDataBits", "ulp.ganssDataBits_element",
8931 FT_NONE
, BASE_NONE
, NULL
, 0,
8933 { &hf_ulp_ganssUTCModel
,
8934 { "ganssUTCModel", "ulp.ganssUTCModel",
8935 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8936 "BOOLEAN", HFILL
}},
8937 { &hf_ulp_ganssAdditionalDataChoices
,
8938 { "ganssAdditionalDataChoices", "ulp.ganssAdditionalDataChoices_element",
8939 FT_NONE
, BASE_NONE
, NULL
, 0,
8941 { &hf_ulp_ganssAuxiliaryInformation
,
8942 { "ganssAuxiliaryInformation", "ulp.ganssAuxiliaryInformation",
8943 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8944 "BOOLEAN", HFILL
}},
8945 { &hf_ulp_ganssExtendedEphemeris
,
8946 { "ganssExtendedEphemeris", "ulp.ganssExtendedEphemeris_element",
8947 FT_NONE
, BASE_NONE
, NULL
, 0,
8948 "ExtendedEphemeris", HFILL
}},
8949 { &hf_ulp_ganssExtendedEphemerisCheck
,
8950 { "ganssExtendedEphemerisCheck", "ulp.ganssExtendedEphemerisCheck_element",
8951 FT_NONE
, BASE_NONE
, NULL
, 0,
8952 "GanssExtendedEphCheck", HFILL
}},
8953 { &hf_ulp_bds_DifferentialCorrection
,
8954 { "bds-DifferentialCorrection", "ulp.bds_DifferentialCorrection",
8955 FT_BYTES
, BASE_NONE
, NULL
, 0,
8956 "BDS_Sig_Id_Req", HFILL
}},
8957 { &hf_ulp_bds_GridModelReq
,
8958 { "bds-GridModelReq", "ulp.bds_GridModelReq",
8959 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
8960 "BOOLEAN", HFILL
}},
8961 { &hf_ulp_ganssWeek
,
8962 { "ganssWeek", "ulp.ganssWeek",
8963 FT_UINT32
, BASE_DEC
, NULL
, 0,
8966 { "ganssToe", "ulp.ganssToe",
8967 FT_UINT32
, BASE_DEC
, NULL
, 0,
8969 { &hf_ulp_t_toeLimit
,
8970 { "t-toeLimit", "ulp.t_toeLimit",
8971 FT_UINT32
, BASE_DEC
, NULL
, 0,
8972 "T_t_toeLimit", HFILL
}},
8973 { &hf_ulp_satellitesListRelatedDataList
,
8974 { "satellitesListRelatedDataList", "ulp.satellitesListRelatedDataList",
8975 FT_UINT32
, BASE_DEC
, NULL
, 0,
8977 { &hf_ulp_SatellitesListRelatedDataList_item
,
8978 { "SatellitesListRelatedData", "ulp.SatellitesListRelatedData_element",
8979 FT_NONE
, BASE_NONE
, NULL
, 0,
8983 FT_UINT32
, BASE_DEC
, NULL
, 0,
8984 "INTEGER_0_1023", HFILL
}},
8985 { &hf_ulp_ganssTODmin
,
8986 { "ganssTODmin", "ulp.ganssTODmin",
8987 FT_UINT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_seconds
), 0,
8988 "INTEGER_0_59", HFILL
}},
8989 { &hf_ulp_reqDataBitAssistanceList
,
8990 { "reqDataBitAssistanceList", "ulp.reqDataBitAssistanceList_element",
8991 FT_NONE
, BASE_NONE
, NULL
, 0,
8993 { &hf_ulp_gnssSignals
,
8994 { "gnssSignals", "ulp.gnssSignals",
8995 FT_BYTES
, BASE_NONE
, NULL
, 0,
8996 "GANSSSignals", HFILL
}},
8997 { &hf_ulp_ganssDataBitInterval
,
8998 { "ganssDataBitInterval", "ulp.ganssDataBitInterval",
8999 FT_UINT32
, BASE_CUSTOM
, CF_FUNC(ulp_ganssDataBitInterval_fmt
), 0,
9000 "INTEGER_0_15", HFILL
}},
9001 { &hf_ulp_ganssDataBitSatList
,
9002 { "ganssDataBitSatList", "ulp.ganssDataBitSatList",
9003 FT_UINT32
, BASE_DEC
, NULL
, 0,
9005 { &hf_ulp_ganssDataBitSatList_item
,
9006 { "ganssDataBitSatList item", "ulp.ganssDataBitSatList_item",
9007 FT_UINT32
, BASE_DEC
, NULL
, 0,
9008 "INTEGER_0_63", HFILL
}},
9009 { &hf_ulp_orbitModelID
,
9010 { "orbitModelID", "ulp.orbitModelID",
9011 FT_UINT32
, BASE_DEC
, NULL
, 0,
9012 "INTEGER_0_7", HFILL
}},
9013 { &hf_ulp_clockModelID
,
9014 { "clockModelID", "ulp.clockModelID",
9015 FT_UINT32
, BASE_DEC
, NULL
, 0,
9016 "INTEGER_0_7", HFILL
}},
9017 { &hf_ulp_utcModelID
,
9018 { "utcModelID", "ulp.utcModelID",
9019 FT_UINT32
, BASE_DEC
, NULL
, 0,
9020 "INTEGER_0_7", HFILL
}},
9021 { &hf_ulp_almanacModelID
,
9022 { "almanacModelID", "ulp.almanacModelID",
9023 FT_UINT32
, BASE_DEC
, NULL
, 0,
9024 "INTEGER_0_7", HFILL
}},
9026 { "validity", "ulp.validity",
9027 FT_UINT32
, BASE_CUSTOM
, CF_FUNC(ulp_ExtendedEphemeris_validity_fmt
), 0,
9028 "INTEGER_1_256", HFILL
}},
9029 { &hf_ulp_beginTime
,
9030 { "beginTime", "ulp.beginTime_element",
9031 FT_NONE
, BASE_NONE
, NULL
, 0,
9032 "GPSTime", HFILL
}},
9034 { "endTime", "ulp.endTime_element",
9035 FT_NONE
, BASE_NONE
, NULL
, 0,
9036 "GPSTime", HFILL
}},
9037 { &hf_ulp_beginTime_01
,
9038 { "beginTime", "ulp.beginTime_element",
9039 FT_NONE
, BASE_NONE
, NULL
, 0,
9040 "GANSSextEphTime", HFILL
}},
9041 { &hf_ulp_endTime_01
,
9042 { "endTime", "ulp.endTime_element",
9043 FT_NONE
, BASE_NONE
, NULL
, 0,
9044 "GANSSextEphTime", HFILL
}},
9046 { "gPSWeek", "ulp.gPSWeek",
9047 FT_UINT32
, BASE_DEC
, NULL
, 0,
9048 "INTEGER_0_1023", HFILL
}},
9049 { &hf_ulp_gPSTOWhour
,
9050 { "gPSTOWhour", "ulp.gPSTOWhour",
9051 FT_UINT32
, BASE_DEC
, NULL
, 0,
9052 "INTEGER_0_167", HFILL
}},
9054 { "gANSSday", "ulp.gANSSday",
9055 FT_UINT32
, BASE_DEC
, NULL
, 0,
9056 "INTEGER_0_8191", HFILL
}},
9057 { &hf_ulp_gANSSTODhour
,
9058 { "gANSSTODhour", "ulp.gANSSTODhour",
9059 FT_UINT32
, BASE_DEC
, NULL
, 0,
9060 "INTEGER_0_23", HFILL
}},
9061 { &hf_ulp_lPPPayload
,
9062 { "lPPPayload", "ulp.lPPPayload",
9063 FT_UINT32
, BASE_DEC
, NULL
, 0,
9065 { &hf_ulp_lPPPayload_item
,
9066 { "lPPPayload item", "ulp.lPPPayload_item",
9067 FT_BYTES
, BASE_NONE
, NULL
, 0,
9069 { &hf_ulp_tia801Payload
,
9070 { "tia801Payload", "ulp.tia801Payload",
9071 FT_UINT32
, BASE_DEC
, NULL
, 0,
9073 { &hf_ulp_tia801Payload_item
,
9074 { "tia801Payload item", "ulp.tia801Payload_item",
9075 FT_BYTES
, BASE_NONE
, NULL
, 0,
9076 "OCTET_STRING_SIZE_1_60000", HFILL
}},
9079 FT_UINT32
, BASE_DEC
, NULL
, 0,
9080 "INTEGER_0_255", HFILL
}},
9083 FT_UINT32
, BASE_DEC
, NULL
, 0,
9084 "INTEGER_0_255", HFILL
}},
9086 { "servind", "ulp.servind",
9087 FT_UINT32
, BASE_DEC
, NULL
, 0,
9088 "INTEGER_0_255", HFILL
}},
9089 { &hf_ulp_setSessionID
,
9090 { "setSessionID", "ulp.setSessionID_element",
9091 FT_NONE
, BASE_NONE
, NULL
, 0,
9093 { &hf_ulp_slpSessionID
,
9094 { "slpSessionID", "ulp.slpSessionID_element",
9095 FT_NONE
, BASE_NONE
, NULL
, 0,
9097 { &hf_ulp_sessionId
,
9098 { "sessionId", "ulp.sessionId",
9099 FT_UINT32
, BASE_DEC
, NULL
, 0,
9100 "INTEGER_0_65535", HFILL
}},
9102 { "setId", "ulp.setId",
9103 FT_UINT32
, BASE_DEC
, VALS(ulp_SETId_vals
), 0,
9106 { "msisdn", "ulp.msisdn",
9107 FT_BYTES
, BASE_NONE
, NULL
, 0,
9111 FT_BYTES
, BASE_NONE
, NULL
, 0,
9115 FT_BYTES
, BASE_NONE
, NULL
, 0,
9116 "BIT_STRING_SIZE_34", HFILL
}},
9118 { "imsi", "ulp.imsi",
9119 FT_BYTES
, BASE_NONE
, NULL
, 0,
9123 FT_STRING
, BASE_NONE
, NULL
, 0,
9124 "IA5String_SIZE_1_1000", HFILL
}},
9125 { &hf_ulp_iPAddress
,
9126 { "iPAddress", "ulp.iPAddress",
9127 FT_UINT32
, BASE_DEC
, VALS(ulp_IPAddress_vals
), 0,
9129 { &hf_ulp_ver2_imei
,
9130 { "ver2-imei", "ulp.ver2_imei",
9131 FT_BYTES
, BASE_NONE
, NULL
, 0,
9132 "OCTET_STRING_SIZE_8", HFILL
}},
9133 { &hf_ulp_sessionSlpID
,
9134 { "sessionID", "ulp.sessionID",
9135 FT_BYTES
, BASE_NONE
, NULL
, 0,
9136 "OCTET_STRING_SIZE_4", HFILL
}},
9138 { "slpId", "ulp.slpId",
9139 FT_UINT32
, BASE_DEC
, VALS(ulp_SLPAddress_vals
), 0,
9140 "SLPAddress", HFILL
}},
9141 { &hf_ulp_ipv4Address
,
9142 { "ipv4Address", "ulp.ipv4Address",
9143 FT_IPv4
, BASE_NONE
, NULL
, 0,
9144 "OCTET_STRING_SIZE_4", HFILL
}},
9145 { &hf_ulp_ipv6Address
,
9146 { "ipv6Address", "ulp.ipv6Address",
9147 FT_IPv6
, BASE_NONE
, NULL
, 0,
9148 "OCTET_STRING_SIZE_16", HFILL
}},
9150 { "fqdn", "ulp.fqdn",
9151 FT_STRING
, BASE_NONE
, NULL
, 0,
9154 { "cellInfo", "ulp.cellInfo",
9155 FT_UINT32
, BASE_DEC
, VALS(ulp_CellInfo_vals
), 0,
9158 { "status", "ulp.status",
9159 FT_UINT32
, BASE_DEC
, VALS(ulp_Status_vals
), 0,
9162 { "gsmCell", "ulp.gsmCell_element",
9163 FT_NONE
, BASE_NONE
, NULL
, 0,
9164 "GsmCellInformation", HFILL
}},
9165 { &hf_ulp_wcdmaCell
,
9166 { "wcdmaCell", "ulp.wcdmaCell_element",
9167 FT_NONE
, BASE_NONE
, NULL
, 0,
9168 "WcdmaCellInformation", HFILL
}},
9170 { "cdmaCell", "ulp.cdmaCell_element",
9171 FT_NONE
, BASE_NONE
, NULL
, 0,
9172 "CdmaCellInformation", HFILL
}},
9173 { &hf_ulp_ver2_CellInfo_extension
,
9174 { "ver2-CellInfo-extension", "ulp.ver2_CellInfo_extension",
9175 FT_UINT32
, BASE_DEC
, VALS(ulp_Ver2_CellInfo_extension_vals
), 0,
9177 { &hf_ulp_timestamp_01
,
9178 { "timestamp", "ulp.timestamp",
9179 FT_STRING
, BASE_NONE
, NULL
, 0,
9180 "UTCTime", HFILL
}},
9181 { &hf_ulp_positionEstimate
,
9182 { "positionEstimate", "ulp.positionEstimate_element",
9183 FT_NONE
, BASE_NONE
, NULL
, 0,
9185 { &hf_ulp_latitudeSign
,
9186 { "latitudeSign", "ulp.latitudeSign",
9187 FT_UINT32
, BASE_DEC
, VALS(ulp_T_latitudeSign_vals
), 0,
9190 { "latitude", "ulp.latitude",
9191 FT_UINT32
, BASE_CUSTOM
, CF_FUNC(ulp_PositionEstimate_latitude_fmt
), 0,
9192 "INTEGER_0_8388607", HFILL
}},
9193 { &hf_ulp_longitude
,
9194 { "longitude", "ulp.longitude",
9195 FT_INT32
, BASE_CUSTOM
, CF_FUNC(ulp_PositionEstimate_longitude_fmt
), 0,
9196 "INTEGER_M8388608_8388607", HFILL
}},
9197 { &hf_ulp_uncertainty
,
9198 { "uncertainty", "ulp.uncertainty_element",
9199 FT_NONE
, BASE_NONE
, NULL
, 0,
9201 { &hf_ulp_uncertaintySemiMajor
,
9202 { "uncertaintySemiMajor", "ulp.uncertaintySemiMajor",
9203 FT_UINT32
, BASE_CUSTOM
, CF_FUNC(ulp_QoP_horacc_fmt
), 0,
9204 "INTEGER_0_127", HFILL
}},
9205 { &hf_ulp_uncertaintySemiMinor
,
9206 { "uncertaintySemiMinor", "ulp.uncertaintySemiMinor",
9207 FT_UINT32
, BASE_CUSTOM
, CF_FUNC(ulp_QoP_horacc_fmt
), 0,
9208 "INTEGER_0_127", HFILL
}},
9209 { &hf_ulp_orientationMajorAxis
,
9210 { "orientationMajorAxis", "ulp.orientationMajorAxis",
9211 FT_UINT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_degree_degrees
), 0,
9212 "INTEGER_0_180", HFILL
}},
9213 { &hf_ulp_confidence
,
9214 { "confidence", "ulp.confidence",
9215 FT_UINT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_percent
), 0,
9216 "INTEGER_0_100", HFILL
}},
9217 { &hf_ulp_altitudeInfo
,
9218 { "altitudeInfo", "ulp.altitudeInfo_element",
9219 FT_NONE
, BASE_NONE
, NULL
, 0,
9221 { &hf_ulp_altitudeDirection
,
9222 { "altitudeDirection", "ulp.altitudeDirection",
9223 FT_UINT32
, BASE_DEC
, VALS(ulp_T_altitudeDirection_vals
), 0,
9226 { "altitude", "ulp.altitude",
9227 FT_UINT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_meters
), 0,
9228 "INTEGER_0_32767", HFILL
}},
9229 { &hf_ulp_altUncertainty
,
9230 { "altUncertainty", "ulp.altUncertainty",
9231 FT_UINT32
, BASE_CUSTOM
, CF_FUNC(ulp_QoP_veracc_fmt
), 0,
9232 "INTEGER_0_127", HFILL
}},
9233 { &hf_ulp_refNID_01
,
9234 { "refNID", "ulp.refNID",
9235 FT_UINT32
, BASE_DEC
, NULL
, 0,
9236 "INTEGER_0_65535", HFILL
}},
9237 { &hf_ulp_refSID_01
,
9238 { "refSID", "ulp.refSID",
9239 FT_UINT32
, BASE_DEC
, NULL
, 0,
9240 "INTEGER_0_32767", HFILL
}},
9241 { &hf_ulp_refBASELAT
,
9242 { "refBASELAT", "ulp.refBASELAT",
9243 FT_UINT32
, BASE_DEC
, NULL
, 0,
9244 "INTEGER_0_4194303", HFILL
}},
9245 { &hf_ulp_reBASELONG
,
9246 { "reBASELONG", "ulp.reBASELONG",
9247 FT_UINT32
, BASE_DEC
, NULL
, 0,
9248 "INTEGER_0_8388607", HFILL
}},
9250 { "refREFPN", "ulp.refREFPN",
9251 FT_UINT32
, BASE_DEC
, NULL
, 0,
9252 "INTEGER_0_511", HFILL
}},
9253 { &hf_ulp_refWeekNumber
,
9254 { "refWeekNumber", "ulp.refWeekNumber",
9255 FT_UINT32
, BASE_DEC
, NULL
, 0,
9256 "INTEGER_0_65535", HFILL
}},
9257 { &hf_ulp_refSeconds
,
9258 { "refSeconds", "ulp.refSeconds",
9259 FT_UINT32
, BASE_DEC
, NULL
, 0,
9260 "INTEGER_0_4194303", HFILL
}},
9263 FT_UINT32
, BASE_DEC
, NULL
, 0,
9267 FT_UINT32
, BASE_DEC
, NULL
, 0,
9268 "INTEGER_0_255", HFILL
}},
9269 { &hf_ulp_frequencyInfo
,
9270 { "frequencyInfo", "ulp.frequencyInfo_element",
9271 FT_NONE
, BASE_NONE
, NULL
, 0,
9273 { &hf_ulp_primaryScramblingCode
,
9274 { "primaryScramblingCode", "ulp.primaryScramblingCode",
9275 FT_UINT32
, BASE_DEC
, NULL
, 0,
9276 "INTEGER_0_511", HFILL
}},
9277 { &hf_ulp_measuredResultsList
,
9278 { "measuredResultsList", "ulp.measuredResultsList",
9279 FT_UINT32
, BASE_DEC
, NULL
, 0,
9281 { &hf_ulp_cellParametersId
,
9282 { "cellParametersId", "ulp.cellParametersId",
9283 FT_UINT32
, BASE_DEC
, NULL
, 0,
9284 "INTEGER_0_127", HFILL
}},
9285 { &hf_ulp_timingAdvance
,
9286 { "timingAdvance", "ulp.timingAdvance_element",
9287 FT_NONE
, BASE_NONE
, NULL
, 0,
9291 FT_UINT32
, BASE_DEC
, NULL
, 0,
9292 "INTEGER_0_8191", HFILL
}},
9293 { &hf_ulp_tAResolution
,
9294 { "tAResolution", "ulp.tAResolution",
9295 FT_UINT32
, BASE_DEC
, VALS(ulp_TAResolution_vals
), 0,
9298 { "chipRate", "ulp.chipRate",
9299 FT_UINT32
, BASE_DEC
, VALS(ulp_ChipRate_vals
), 0,
9301 { &hf_ulp_modeSpecificFrequencyInfo
,
9302 { "modeSpecificInfo", "ulp.modeSpecificInfo",
9303 FT_UINT32
, BASE_DEC
, VALS(ulp_FrequencySpecificInfo_vals
), 0,
9304 "FrequencySpecificInfo", HFILL
}},
9306 { "fdd", "ulp.fdd_element",
9307 FT_NONE
, BASE_NONE
, NULL
, 0,
9308 "FrequencyInfoFDD", HFILL
}},
9310 { "tdd", "ulp.tdd_element",
9311 FT_NONE
, BASE_NONE
, NULL
, 0,
9312 "FrequencyInfoTDD", HFILL
}},
9313 { &hf_ulp_uarfcn_UL
,
9314 { "uarfcn-UL", "ulp.uarfcn_UL",
9315 FT_UINT32
, BASE_DEC
, NULL
, 0,
9317 { &hf_ulp_uarfcn_DL
,
9318 { "uarfcn-DL", "ulp.uarfcn_DL",
9319 FT_UINT32
, BASE_DEC
, NULL
, 0,
9321 { &hf_ulp_uarfcn_Nt
,
9322 { "uarfcn-Nt", "ulp.uarfcn_Nt",
9323 FT_UINT32
, BASE_DEC
, NULL
, 0,
9326 { "NMRelement", "ulp.NMRelement_element",
9327 FT_NONE
, BASE_NONE
, NULL
, 0,
9330 { "arfcn", "ulp.arfcn",
9331 FT_UINT32
, BASE_DEC
, NULL
, 0,
9332 "INTEGER_0_1023", HFILL
}},
9334 { "bsic", "ulp.bsic",
9335 FT_UINT32
, BASE_DEC
, NULL
, 0,
9336 "INTEGER_0_63", HFILL
}},
9338 { "rxLev", "ulp.rxLev",
9339 FT_UINT32
, BASE_CUSTOM
, CF_FUNC(ulp_NMRelement_rxLev_fmt
), 0,
9340 "INTEGER_0_63", HFILL
}},
9341 { &hf_ulp_MeasuredResultsList_item
,
9342 { "MeasuredResults", "ulp.MeasuredResults_element",
9343 FT_NONE
, BASE_NONE
, NULL
, 0,
9345 { &hf_ulp_utra_CarrierRSSI
,
9346 { "utra-CarrierRSSI", "ulp.utra_CarrierRSSI",
9347 FT_UINT32
, BASE_CUSTOM
, CF_FUNC(ulp_UTRA_CarrierRSSI_fmt
), 0,
9349 { &hf_ulp_cellMeasuredResultsList
,
9350 { "cellMeasuredResultsList", "ulp.cellMeasuredResultsList",
9351 FT_UINT32
, BASE_DEC
, NULL
, 0,
9353 { &hf_ulp_CellMeasuredResultsList_item
,
9354 { "CellMeasuredResults", "ulp.CellMeasuredResults_element",
9355 FT_NONE
, BASE_NONE
, NULL
, 0,
9357 { &hf_ulp_cellIdentity
,
9358 { "cellIdentity", "ulp.cellIdentity",
9359 FT_UINT32
, BASE_DEC
, NULL
, 0,
9360 "INTEGER_0_268435455", HFILL
}},
9361 { &hf_ulp_modeSpecificInfo
,
9362 { "modeSpecificInfo", "ulp.modeSpecificInfo",
9363 FT_UINT32
, BASE_DEC
, VALS(ulp_T_modeSpecificInfo_vals
), 0,
9366 { "fdd", "ulp.fdd_element",
9367 FT_NONE
, BASE_NONE
, NULL
, 0,
9369 { &hf_ulp_primaryCPICH_Info
,
9370 { "primaryCPICH-Info", "ulp.primaryCPICH_Info_element",
9371 FT_NONE
, BASE_NONE
, NULL
, 0,
9373 { &hf_ulp_cpich_Ec_N0
,
9374 { "cpich-Ec-N0", "ulp.cpich_Ec_N0",
9375 FT_UINT32
, BASE_CUSTOM
, CF_FUNC(ulp_CPICH_Ec_N0_fmt
), 0,
9377 { &hf_ulp_cpich_RSCP
,
9378 { "cpich-RSCP", "ulp.cpich_RSCP",
9379 FT_UINT32
, BASE_CUSTOM
, CF_FUNC(ulp_CPICH_RSCP_fmt
), 0,
9382 { "pathloss", "ulp.pathloss",
9383 FT_UINT32
, BASE_DEC
, NULL
, 0,
9386 { "tdd", "ulp.tdd_element",
9387 FT_NONE
, BASE_NONE
, NULL
, 0,
9389 { &hf_ulp_cellParametersID
,
9390 { "cellParametersID", "ulp.cellParametersID",
9391 FT_UINT32
, BASE_DEC
, NULL
, 0,
9393 { &hf_ulp_proposedTGSN
,
9394 { "proposedTGSN", "ulp.proposedTGSN",
9395 FT_UINT32
, BASE_DEC
, NULL
, 0,
9397 { &hf_ulp_primaryCCPCH_RSCP
,
9398 { "primaryCCPCH-RSCP", "ulp.primaryCCPCH_RSCP",
9399 FT_UINT32
, BASE_CUSTOM
, CF_FUNC(ulp_PrimaryCCPCH_RSCP_fmt
), 0,
9401 { &hf_ulp_timeslotISCP_List
,
9402 { "timeslotISCP-List", "ulp.timeslotISCP_List",
9403 FT_UINT32
, BASE_DEC
, NULL
, 0,
9405 { &hf_ulp_TimeslotISCP_List_item
,
9406 { "TimeslotISCP", "ulp.TimeslotISCP",
9407 FT_UINT32
, BASE_DEC
, NULL
, 0,
9410 { "horacc", "ulp.horacc",
9411 FT_UINT32
, BASE_CUSTOM
, CF_FUNC(ulp_QoP_horacc_fmt
), 0,
9412 "INTEGER_0_127", HFILL
}},
9414 { "veracc", "ulp.veracc",
9415 FT_UINT32
, BASE_CUSTOM
, CF_FUNC(ulp_QoP_veracc_fmt
), 0,
9416 "INTEGER_0_127", HFILL
}},
9417 { &hf_ulp_maxLocAge
,
9418 { "maxLocAge", "ulp.maxLocAge",
9419 FT_UINT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_seconds
), 0,
9420 "INTEGER_0_65535", HFILL
}},
9422 { "delay", "ulp.delay",
9423 FT_UINT32
, BASE_CUSTOM
, CF_FUNC(ulp_QoP_delay_fmt
), 0,
9424 "INTEGER_0_7", HFILL
}},
9425 { &hf_ulp_ver2_responseTime
,
9426 { "ver2-responseTime", "ulp.ver2_responseTime",
9427 FT_UINT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_seconds
), 0,
9428 "INTEGER_1_128", HFILL
}},
9430 { "horvel", "ulp.horvel_element",
9431 FT_NONE
, BASE_NONE
, NULL
, 0,
9433 { &hf_ulp_horandvervel
,
9434 { "horandvervel", "ulp.horandvervel_element",
9435 FT_NONE
, BASE_NONE
, NULL
, 0,
9437 { &hf_ulp_horveluncert
,
9438 { "horveluncert", "ulp.horveluncert_element",
9439 FT_NONE
, BASE_NONE
, NULL
, 0,
9441 { &hf_ulp_horandveruncert
,
9442 { "horandveruncert", "ulp.horandveruncert_element",
9443 FT_NONE
, BASE_NONE
, NULL
, 0,
9446 { "bearing", "ulp.bearing",
9447 FT_UINT16
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_degree_degrees
), 0,
9450 { "horspeed", "ulp.horspeed",
9451 FT_UINT16
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_kmh
), 0,
9453 { &hf_ulp_verdirect
,
9454 { "verdirect", "ulp.verdirect",
9455 FT_BOOLEAN
, BASE_NONE
, TFS(&ulp_vertical_dir_val
), 0,
9457 { &hf_ulp_bearing_01
,
9458 { "bearing", "ulp.bearing",
9459 FT_UINT16
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_degree_degrees
), 0,
9460 "T_bearing_01", HFILL
}},
9461 { &hf_ulp_horspeed_01
,
9462 { "horspeed", "ulp.horspeed",
9463 FT_UINT16
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_kmh
), 0,
9464 "T_horspeed_01", HFILL
}},
9466 { "verspeed", "ulp.verspeed",
9467 FT_UINT8
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_kmh
), 0,
9469 { &hf_ulp_bearing_02
,
9470 { "bearing", "ulp.bearing",
9471 FT_UINT16
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_degree_degrees
), 0,
9472 "T_bearing_02", HFILL
}},
9473 { &hf_ulp_horspeed_02
,
9474 { "horspeed", "ulp.horspeed",
9475 FT_UINT16
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_kmh
), 0,
9476 "T_horspeed_02", HFILL
}},
9477 { &hf_ulp_uncertspeed
,
9478 { "uncertspeed", "ulp.uncertspeed",
9479 FT_UINT8
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_kmh
), 0,
9481 { &hf_ulp_verdirect_01
,
9482 { "verdirect", "ulp.verdirect",
9483 FT_BOOLEAN
, BASE_NONE
, TFS(&ulp_vertical_dir_val
), 0,
9484 "T_verdirect_01", HFILL
}},
9485 { &hf_ulp_bearing_03
,
9486 { "bearing", "ulp.bearing",
9487 FT_UINT16
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_degree_degrees
), 0,
9488 "T_bearing_03", HFILL
}},
9489 { &hf_ulp_horspeed_03
,
9490 { "horspeed", "ulp.horspeed",
9491 FT_UINT16
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_kmh
), 0,
9492 "T_horspeed_03", HFILL
}},
9493 { &hf_ulp_verspeed_01
,
9494 { "verspeed", "ulp.verspeed",
9495 FT_UINT8
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_kmh
), 0,
9496 "T_verspeed_01", HFILL
}},
9497 { &hf_ulp_horuncertspeed
,
9498 { "horuncertspeed", "ulp.horuncertspeed",
9499 FT_UINT8
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_kmh
), 0,
9501 { &hf_ulp_veruncertspeed
,
9502 { "veruncertspeed", "ulp.veruncertspeed",
9503 FT_UINT8
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_kmh
), 0,
9505 { &hf_ulp_MultipleLocationIds_item
,
9506 { "LocationIdData", "ulp.LocationIdData_element",
9507 FT_NONE
, BASE_NONE
, NULL
, 0,
9509 { &hf_ulp_relativetimestamp
,
9510 { "relativetimestamp", "ulp.relativetimestamp",
9511 FT_UINT32
, BASE_CUSTOM
, CF_FUNC(ulp_RelativeTime_fmt
), 0,
9512 "RelativeTime", HFILL
}},
9513 { &hf_ulp_servingFlag
,
9514 { "servingFlag", "ulp.servingFlag",
9515 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9516 "BOOLEAN", HFILL
}},
9517 { &hf_ulp_supportedWLANInfo
,
9518 { "supportedWLANInfo", "ulp.supportedWLANInfo_element",
9519 FT_NONE
, BASE_NONE
, NULL
, 0,
9521 { &hf_ulp_supportedWLANApsList
,
9522 { "supportedWLANApsList", "ulp.supportedWLANApsList_element",
9523 FT_NONE
, BASE_NONE
, NULL
, 0,
9525 { &hf_ulp_supportedWCDMAInfo
,
9526 { "supportedWCDMAInfo", "ulp.supportedWCDMAInfo_element",
9527 FT_NONE
, BASE_NONE
, NULL
, 0,
9530 { "hrdp", "ulp.hrdp",
9531 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9532 "BOOLEAN", HFILL
}},
9534 { "wimax", "ulp.wimax",
9535 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9536 "BOOLEAN", HFILL
}},
9538 { "historic", "ulp.historic",
9539 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9540 "BOOLEAN", HFILL
}},
9541 { &hf_ulp_nonServing
,
9542 { "nonServing", "ulp.nonServing",
9543 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9544 "BOOLEAN", HFILL
}},
9545 { &hf_ulp_uTRANGPSReferenceTime
,
9546 { "uTRANGPSReferenceTime", "ulp.uTRANGPSReferenceTime",
9547 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9548 "BOOLEAN", HFILL
}},
9549 { &hf_ulp_uTRANGANSSReferenceTime
,
9550 { "uTRANGANSSReferenceTime", "ulp.uTRANGANSSReferenceTime",
9551 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9552 "BOOLEAN", HFILL
}},
9554 { "apTP", "ulp.apTP",
9555 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9556 "BOOLEAN", HFILL
}},
9558 { "apAG", "ulp.apAG",
9559 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9560 "BOOLEAN", HFILL
}},
9562 { "apSN", "ulp.apSN",
9563 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9564 "BOOLEAN", HFILL
}},
9565 { &hf_ulp_apDevType
,
9566 { "apDevType", "ulp.apDevType",
9567 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9568 "BOOLEAN", HFILL
}},
9570 { "apRSSI", "ulp.apRSSI",
9571 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9572 "BOOLEAN", HFILL
}},
9573 { &hf_ulp_apChanFreq
,
9574 { "apChanFreq", "ulp.apChanFreq",
9575 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9576 "BOOLEAN", HFILL
}},
9578 { "apRTD", "ulp.apRTD",
9579 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9580 "BOOLEAN", HFILL
}},
9582 { "setTP", "ulp.setTP",
9583 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9584 "BOOLEAN", HFILL
}},
9586 { "setAG", "ulp.setAG",
9587 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9588 "BOOLEAN", HFILL
}},
9590 { "setSN", "ulp.setSN",
9591 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9592 "BOOLEAN", HFILL
}},
9594 { "setRSSI", "ulp.setRSSI",
9595 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9596 "BOOLEAN", HFILL
}},
9598 { "apRepLoc", "ulp.apRepLoc",
9599 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9600 "BOOLEAN", HFILL
}},
9602 { "apRL", "ulp.apRL",
9603 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9604 "BOOLEAN", HFILL
}},
9606 { "opClass", "ulp.opClass",
9607 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9608 "BOOLEAN", HFILL
}},
9610 { "apSSID", "ulp.apSSID",
9611 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9612 "BOOLEAN", HFILL
}},
9613 { &hf_ulp_apPHYType
,
9614 { "apPHYType", "ulp.apPHYType",
9615 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9616 "BOOLEAN", HFILL
}},
9617 { &hf_ulp_setMACAddress
,
9618 { "setMACAddress", "ulp.setMACAddress",
9619 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9620 "BOOLEAN", HFILL
}},
9621 { &hf_ulp_supportedWLANApDataList
,
9622 { "supportedWLANApDataList", "ulp.supportedWLANApDataList",
9623 FT_UINT32
, BASE_DEC
, NULL
, 0,
9624 "SEQUENCE_SIZE_1_maxWLANApDataSize_OF_SupportedWLANApData", HFILL
}},
9625 { &hf_ulp_supportedWLANApDataList_item
,
9626 { "SupportedWLANApData", "ulp.SupportedWLANApData_element",
9627 FT_NONE
, BASE_NONE
, NULL
, 0,
9629 { &hf_ulp_supportedWLANapsChannel11a
,
9630 { "supportedWLANapsChannel11a", "ulp.supportedWLANapsChannel11a_element",
9631 FT_NONE
, BASE_NONE
, NULL
, 0,
9633 { &hf_ulp_supportedWLANapsChannel11bg
,
9634 { "supportedWLANapsChannel11bg", "ulp.supportedWLANapsChannel11bg_element",
9635 FT_NONE
, BASE_NONE
, NULL
, 0,
9638 { "ch34", "ulp.ch34",
9639 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9640 "BOOLEAN", HFILL
}},
9642 { "ch36", "ulp.ch36",
9643 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9644 "BOOLEAN", HFILL
}},
9646 { "ch38", "ulp.ch38",
9647 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9648 "BOOLEAN", HFILL
}},
9650 { "ch40", "ulp.ch40",
9651 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9652 "BOOLEAN", HFILL
}},
9654 { "ch42", "ulp.ch42",
9655 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9656 "BOOLEAN", HFILL
}},
9658 { "ch44", "ulp.ch44",
9659 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9660 "BOOLEAN", HFILL
}},
9662 { "ch46", "ulp.ch46",
9663 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9664 "BOOLEAN", HFILL
}},
9666 { "ch48", "ulp.ch48",
9667 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9668 "BOOLEAN", HFILL
}},
9670 { "ch52", "ulp.ch52",
9671 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9672 "BOOLEAN", HFILL
}},
9674 { "ch56", "ulp.ch56",
9675 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9676 "BOOLEAN", HFILL
}},
9678 { "ch60", "ulp.ch60",
9679 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9680 "BOOLEAN", HFILL
}},
9682 { "ch64", "ulp.ch64",
9683 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9684 "BOOLEAN", HFILL
}},
9686 { "ch149", "ulp.ch149",
9687 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9688 "BOOLEAN", HFILL
}},
9690 { "ch153", "ulp.ch153",
9691 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9692 "BOOLEAN", HFILL
}},
9694 { "ch157", "ulp.ch157",
9695 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9696 "BOOLEAN", HFILL
}},
9698 { "ch161", "ulp.ch161",
9699 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9700 "BOOLEAN", HFILL
}},
9703 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9704 "BOOLEAN", HFILL
}},
9707 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9708 "BOOLEAN", HFILL
}},
9711 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9712 "BOOLEAN", HFILL
}},
9715 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9716 "BOOLEAN", HFILL
}},
9719 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9720 "BOOLEAN", HFILL
}},
9723 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9724 "BOOLEAN", HFILL
}},
9727 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9728 "BOOLEAN", HFILL
}},
9731 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9732 "BOOLEAN", HFILL
}},
9735 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9736 "BOOLEAN", HFILL
}},
9738 { "ch10", "ulp.ch10",
9739 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9740 "BOOLEAN", HFILL
}},
9742 { "ch11", "ulp.ch11",
9743 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9744 "BOOLEAN", HFILL
}},
9746 { "ch12", "ulp.ch12",
9747 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9748 "BOOLEAN", HFILL
}},
9750 { "ch13", "ulp.ch13",
9751 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9752 "BOOLEAN", HFILL
}},
9754 { "ch14", "ulp.ch14",
9755 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9756 "BOOLEAN", HFILL
}},
9757 { &hf_ulp_apMACAddress_01
,
9758 { "apMACAddress", "ulp.apMACAddress",
9759 FT_ETHER
, BASE_NONE
, NULL
, 0,
9760 "T_apMACAddress_01", HFILL
}},
9761 { &hf_ulp_apDevType_01
,
9762 { "apDevType", "ulp.apDevType",
9763 FT_UINT32
, BASE_DEC
, VALS(ulp_T_apDevType_vals
), 0,
9767 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
9768 "BOOLEAN", HFILL
}},
9770 { "hrpdCell", "ulp.hrpdCell_element",
9771 FT_NONE
, BASE_NONE
, NULL
, 0,
9772 "HrpdCellInformation", HFILL
}},
9774 { "umbCell", "ulp.umbCell_element",
9775 FT_NONE
, BASE_NONE
, NULL
, 0,
9776 "UmbCellInformation", HFILL
}},
9778 { "lteCell", "ulp.lteCell_element",
9779 FT_NONE
, BASE_NONE
, NULL
, 0,
9780 "LteCellInformation", HFILL
}},
9782 { "wlanAP", "ulp.wlanAP_element",
9783 FT_NONE
, BASE_NONE
, NULL
, 0,
9784 "WlanAPInformation", HFILL
}},
9786 { "wimaxBS", "ulp.wimaxBS_element",
9787 FT_NONE
, BASE_NONE
, NULL
, 0,
9788 "WimaxBSInformation", HFILL
}},
9790 { "nrCell", "ulp.nrCell_element",
9791 FT_NONE
, BASE_NONE
, NULL
, 0,
9792 "NRCellInformation", HFILL
}},
9793 { &hf_ulp_cellGlobalIdEUTRA
,
9794 { "cellGlobalIdEUTRA", "ulp.cellGlobalIdEUTRA_element",
9795 FT_NONE
, BASE_NONE
, NULL
, 0,
9797 { &hf_ulp_physCellId
,
9798 { "physCellId", "ulp.physCellId",
9799 FT_UINT32
, BASE_DEC
, NULL
, 0,
9801 { &hf_ulp_trackingAreaCode
,
9802 { "trackingAreaCode", "ulp.trackingAreaCode",
9803 FT_BYTES
, BASE_NONE
, NULL
, 0,
9805 { &hf_ulp_rsrpResult
,
9806 { "rsrpResult", "ulp.rsrpResult",
9807 FT_UINT32
, BASE_CUSTOM
, CF_FUNC(ulp_RSRP_Range_fmt
), 0,
9808 "RSRP_Range", HFILL
}},
9809 { &hf_ulp_rsrqResult
,
9810 { "rsrqResult", "ulp.rsrqResult",
9811 FT_UINT32
, BASE_CUSTOM
, CF_FUNC(ulp_RSRQ_Range_fmt
), 0,
9812 "RSRQ_Range", HFILL
}},
9815 FT_UINT32
, BASE_DEC
, NULL
, 0,
9816 "INTEGER_0_1282", HFILL
}},
9817 { &hf_ulp_measResultListEUTRA
,
9818 { "measResultListEUTRA", "ulp.measResultListEUTRA",
9819 FT_UINT32
, BASE_DEC
, NULL
, 0,
9822 { "earfcn", "ulp.earfcn",
9823 FT_UINT32
, BASE_DEC
, NULL
, 0,
9824 "INTEGER_0_65535", HFILL
}},
9825 { &hf_ulp_earfcn_ext
,
9826 { "earfcn-ext", "ulp.earfcn_ext",
9827 FT_UINT32
, BASE_DEC
, NULL
, 0,
9828 "INTEGER_65536_262143", HFILL
}},
9829 { &hf_ulp_rsrpResult_ext
,
9830 { "rsrpResult-ext", "ulp.rsrpResult_ext",
9831 FT_INT32
, BASE_DEC
, NULL
, 0,
9832 "RSRP_Range_Ext", HFILL
}},
9833 { &hf_ulp_rsrqResult_ext
,
9834 { "rsrqResult-ext", "ulp.rsrqResult_ext",
9835 FT_INT32
, BASE_DEC
, NULL
, 0,
9836 "RSRQ_Range_Ext", HFILL
}},
9837 { &hf_ulp_rs_sinrResult
,
9838 { "rs-sinrResult", "ulp.rs_sinrResult",
9839 FT_UINT32
, BASE_DEC
, NULL
, 0,
9840 "RS_SINR_Range", HFILL
}},
9841 { &hf_ulp_servingInformation5G
,
9842 { "servingInformation5G", "ulp.servingInformation5G_element",
9843 FT_NONE
, BASE_NONE
, NULL
, 0,
9845 { &hf_ulp_MeasResultListEUTRA_item
,
9846 { "MeasResultEUTRA", "ulp.MeasResultEUTRA_element",
9847 FT_NONE
, BASE_NONE
, NULL
, 0,
9850 { "cgi-Info", "ulp.cgi_Info_element",
9851 FT_NONE
, BASE_NONE
, NULL
, 0,
9853 { &hf_ulp_cellGlobalId
,
9854 { "cellGlobalId", "ulp.cellGlobalId_element",
9855 FT_NONE
, BASE_NONE
, NULL
, 0,
9856 "CellGlobalIdEUTRA", HFILL
}},
9857 { &hf_ulp_measResult
,
9858 { "measResult", "ulp.measResult_element",
9859 FT_NONE
, BASE_NONE
, NULL
, 0,
9861 { &hf_ulp_neighbourInformation5G
,
9862 { "neighbourInformation5G", "ulp.neighbourInformation5G_element",
9863 FT_NONE
, BASE_NONE
, NULL
, 0,
9865 { &hf_ulp_plmn_Identity
,
9866 { "plmn-Identity", "ulp.plmn_Identity_element",
9867 FT_NONE
, BASE_NONE
, NULL
, 0,
9869 { &hf_ulp_cellIdentity_01
,
9870 { "cellIdentity", "ulp.cellIdentity",
9871 FT_BYTES
, BASE_NONE
, NULL
, 0,
9875 FT_UINT32
, BASE_DEC
, NULL
, 0,
9879 FT_UINT32
, BASE_DEC
, NULL
, 0,
9882 { "MCC-MNC-Digit", "ulp.MCC_MNC_Digit",
9883 FT_UINT32
, BASE_DEC
, NULL
, 0,
9886 { "MCC-MNC-Digit", "ulp.MCC_MNC_Digit",
9887 FT_UINT32
, BASE_DEC
, NULL
, 0,
9889 { &hf_ulp_trackingAreaCode_01
,
9890 { "trackingAreaCode", "ulp.trackingAreaCode",
9891 FT_BYTES
, BASE_NONE
, NULL
, 0,
9892 "TrackingAreaCodeNR", HFILL
}},
9893 { &hf_ulp_apMACAddress_02
,
9894 { "apMACAddress", "ulp.apMACAddress",
9895 FT_ETHER
, BASE_NONE
, NULL
, 0,
9896 "T_apMACAddress_02", HFILL
}},
9897 { &hf_ulp_apTransmitPower
,
9898 { "apTransmitPower", "ulp.apTransmitPower",
9899 FT_INT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_dbm
), 0,
9900 "INTEGER_M127_128", HFILL
}},
9901 { &hf_ulp_apAntennaGain
,
9902 { "apAntennaGain", "ulp.apAntennaGain",
9903 FT_INT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_dbi
), 0,
9904 "INTEGER_M127_128", HFILL
}},
9905 { &hf_ulp_apSignaltoNoise
,
9906 { "apSignaltoNoise", "ulp.apSignaltoNoise",
9907 FT_INT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_decibels
), 0,
9908 "INTEGER_M127_128", HFILL
}},
9909 { &hf_ulp_apDeviceType
,
9910 { "apDeviceType", "ulp.apDeviceType",
9911 FT_UINT32
, BASE_DEC
, VALS(ulp_T_apDeviceType_vals
), 0,
9913 { &hf_ulp_apSignalStrength
,
9914 { "apSignalStrength", "ulp.apSignalStrength",
9915 FT_INT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_dbm
), 0,
9916 "INTEGER_M127_128", HFILL
}},
9917 { &hf_ulp_apChannelFrequency
,
9918 { "apChannelFrequency", "ulp.apChannelFrequency",
9919 FT_UINT32
, BASE_DEC
, NULL
, 0,
9920 "INTEGER_0_256", HFILL
}},
9921 { &hf_ulp_apRoundTripDelay
,
9922 { "apRoundTripDelay", "ulp.apRoundTripDelay_element",
9923 FT_NONE
, BASE_NONE
, NULL
, 0,
9925 { &hf_ulp_setTransmitPower
,
9926 { "setTransmitPower", "ulp.setTransmitPower",
9927 FT_INT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_dbm
), 0,
9928 "INTEGER_M127_128", HFILL
}},
9929 { &hf_ulp_setAntennaGain
,
9930 { "setAntennaGain", "ulp.setAntennaGain",
9931 FT_INT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_dbi
), 0,
9932 "INTEGER_M127_128", HFILL
}},
9933 { &hf_ulp_setSignaltoNoise
,
9934 { "setSignaltoNoise", "ulp.setSignaltoNoise",
9935 FT_INT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_decibels
), 0,
9936 "INTEGER_M127_128", HFILL
}},
9937 { &hf_ulp_setSignalStrength
,
9938 { "setSignalStrength", "ulp.setSignalStrength",
9939 FT_INT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_dbm
), 0,
9940 "INTEGER_M127_128", HFILL
}},
9941 { &hf_ulp_apReportedLocation
,
9942 { "apReportedLocation", "ulp.apReportedLocation_element",
9943 FT_NONE
, BASE_NONE
, NULL
, 0,
9944 "ReportedLocation", HFILL
}},
9945 { &hf_ulp_apRepLocation
,
9946 { "apRepLocation", "ulp.apRepLocation",
9947 FT_UINT32
, BASE_DEC
, VALS(ulp_RepLocation_vals
), 0,
9948 "RepLocation", HFILL
}},
9949 { &hf_ulp_apSignalStrengthDelta
,
9950 { "apSignalStrengthDelta", "ulp.apSignalStrengthDelta",
9951 FT_UINT32
, BASE_CUSTOM
, CF_FUNC(ulp_SignalDelta_fmt
), 0,
9952 "INTEGER_0_1", HFILL
}},
9953 { &hf_ulp_apSignaltoNoiseDelta
,
9954 { "apSignaltoNoiseDelta", "ulp.apSignaltoNoiseDelta",
9955 FT_UINT32
, BASE_CUSTOM
, CF_FUNC(ulp_SignalDelta_fmt
), 0,
9956 "INTEGER_0_1", HFILL
}},
9957 { &hf_ulp_setSignalStrengthDelta
,
9958 { "setSignalStrengthDelta", "ulp.setSignalStrengthDelta",
9959 FT_UINT32
, BASE_CUSTOM
, CF_FUNC(ulp_SignalDelta_fmt
), 0,
9960 "INTEGER_0_1", HFILL
}},
9961 { &hf_ulp_setSignaltoNoiseDelta
,
9962 { "setSignaltoNoiseDelta", "ulp.setSignaltoNoiseDelta",
9963 FT_UINT32
, BASE_CUSTOM
, CF_FUNC(ulp_SignalDelta_fmt
), 0,
9964 "INTEGER_0_1", HFILL
}},
9965 { &hf_ulp_operatingClass
,
9966 { "operatingClass", "ulp.operatingClass",
9967 FT_UINT32
, BASE_DEC
, NULL
, 0,
9968 "INTEGER_0_255", HFILL
}},
9969 { &hf_ulp_apSSID_01
,
9970 { "apSSID", "ulp.apSSID",
9971 FT_STRING
, BASE_NONE
, NULL
, 0,
9973 { &hf_ulp_apPHYType_01
,
9974 { "apPHYType", "ulp.apPHYType",
9975 FT_UINT32
, BASE_DEC
, VALS(ulp_T_apPHYType_vals
), 0,
9977 { &hf_ulp_setMACAddress_01
,
9978 { "setMACAddress", "ulp.setMACAddress",
9979 FT_ETHER
, BASE_NONE
, NULL
, 0,
9982 { "rTDValue", "ulp.rTDValue",
9983 FT_UINT32
, BASE_DEC
, NULL
, 0,
9984 "INTEGER_0_16777216", HFILL
}},
9986 { "rTDUnits", "ulp.rTDUnits",
9987 FT_UINT32
, BASE_DEC
, VALS(ulp_RTDUnits_vals
), 0,
9989 { &hf_ulp_rTDAccuracy
,
9990 { "rTDAccuracy", "ulp.rTDAccuracy",
9991 FT_UINT32
, BASE_DEC
, NULL
, 0,
9992 "INTEGER_0_255", HFILL
}},
9993 { &hf_ulp_locationEncodingDescriptor
,
9994 { "locationEncodingDescriptor", "ulp.locationEncodingDescriptor",
9995 FT_UINT32
, BASE_DEC
, VALS(ulp_LocationEncodingDescriptor_vals
), 0,
9997 { &hf_ulp_locationData
,
9998 { "locationData", "ulp.locationData_element",
9999 FT_NONE
, BASE_NONE
, NULL
, 0,
10001 { &hf_ulp_locationAccuracy
,
10002 { "locationAccuracy", "ulp.locationAccuracy",
10003 FT_UINT32
, BASE_CUSTOM
, CF_FUNC(ulp_locationAccuracy_fmt
), 0,
10004 "INTEGER_0_4294967295", HFILL
}},
10005 { &hf_ulp_locationValue
,
10006 { "locationValue", "ulp.locationValue",
10007 FT_BYTES
, BASE_NONE
, NULL
, 0,
10008 "OCTET_STRING_SIZE_1_128", HFILL
}},
10009 { &hf_ulp_lciLocData
,
10010 { "lciLocData", "ulp.lciLocData_element",
10011 FT_NONE
, BASE_NONE
, NULL
, 0,
10013 { &hf_ulp_locationDataLCI
,
10014 { "locationDataLCI", "ulp.locationDataLCI_element",
10015 FT_NONE
, BASE_NONE
, NULL
, 0,
10017 { &hf_ulp_latitudeResolution
,
10018 { "latitudeResolution", "ulp.latitudeResolution",
10019 FT_BYTES
, BASE_NONE
, NULL
, 0,
10020 "BIT_STRING_SIZE_6", HFILL
}},
10021 { &hf_ulp_latitude_01
,
10022 { "latitude", "ulp.latitude",
10023 FT_BYTES
, BASE_NONE
, NULL
, 0,
10024 "BIT_STRING_SIZE_34", HFILL
}},
10025 { &hf_ulp_longitudeResolution
,
10026 { "longitudeResolution", "ulp.longitudeResolution",
10027 FT_BYTES
, BASE_NONE
, NULL
, 0,
10028 "BIT_STRING_SIZE_6", HFILL
}},
10029 { &hf_ulp_longitude_01
,
10030 { "longitude", "ulp.longitude",
10031 FT_BYTES
, BASE_NONE
, NULL
, 0,
10032 "BIT_STRING_SIZE_34", HFILL
}},
10033 { &hf_ulp_altitudeType
,
10034 { "altitudeType", "ulp.altitudeType",
10035 FT_BYTES
, BASE_NONE
, NULL
, 0,
10036 "BIT_STRING_SIZE_4", HFILL
}},
10037 { &hf_ulp_altitudeResolution
,
10038 { "altitudeResolution", "ulp.altitudeResolution",
10039 FT_BYTES
, BASE_NONE
, NULL
, 0,
10040 "BIT_STRING_SIZE_6", HFILL
}},
10041 { &hf_ulp_altitude_01
,
10042 { "altitude", "ulp.altitude",
10043 FT_BYTES
, BASE_NONE
, NULL
, 0,
10044 "BIT_STRING_SIZE_30", HFILL
}},
10046 { "datum", "ulp.datum",
10047 FT_BYTES
, BASE_NONE
, NULL
, 0,
10048 "BIT_STRING_SIZE_8", HFILL
}},
10049 { &hf_ulp_wimaxBsID
,
10050 { "wimaxBsID", "ulp.wimaxBsID_element",
10051 FT_NONE
, BASE_NONE
, NULL
, 0,
10053 { &hf_ulp_wimaxRTD
,
10054 { "wimaxRTD", "ulp.wimaxRTD_element",
10055 FT_NONE
, BASE_NONE
, NULL
, 0,
10057 { &hf_ulp_wimaxNMRList
,
10058 { "wimaxNMRList", "ulp.wimaxNMRList",
10059 FT_UINT32
, BASE_DEC
, NULL
, 0,
10062 { "rtd", "ulp.rtd",
10063 FT_UINT32
, BASE_CUSTOM
, CF_FUNC(ulp_WimaxRTD_fmt
), 0,
10064 "INTEGER_0_65535", HFILL
}},
10066 { "rTDstd", "ulp.rTDstd",
10067 FT_UINT32
, BASE_CUSTOM
, CF_FUNC(ulp_WimaxRTD_fmt
), 0,
10068 "INTEGER_0_1023", HFILL
}},
10069 { &hf_ulp_WimaxNMRList_item
,
10070 { "WimaxNMR", "ulp.WimaxNMR_element",
10071 FT_NONE
, BASE_NONE
, NULL
, 0,
10073 { &hf_ulp_relDelay
,
10074 { "relDelay", "ulp.relDelay",
10075 FT_INT32
, BASE_CUSTOM
, CF_FUNC(ulp_WimaxRTD_fmt
), 0,
10076 "INTEGER_M32768_32767", HFILL
}},
10077 { &hf_ulp_relDelaystd
,
10078 { "relDelaystd", "ulp.relDelaystd",
10079 FT_UINT32
, BASE_CUSTOM
, CF_FUNC(ulp_WimaxRTD_fmt
), 0,
10080 "INTEGER_0_1023", HFILL
}},
10082 { "rssi", "ulp.rssi",
10083 FT_UINT32
, BASE_CUSTOM
, CF_FUNC(ulp_WimaxNMR_rssi_fmt
), 0,
10084 "INTEGER_0_255", HFILL
}},
10086 { "rSSIstd", "ulp.rSSIstd",
10087 FT_UINT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_decibels
), 0,
10088 "INTEGER_0_63", HFILL
}},
10089 { &hf_ulp_bSTxPower
,
10090 { "bSTxPower", "ulp.bSTxPower",
10091 FT_UINT32
, BASE_CUSTOM
, CF_FUNC(ulp_WimaxNMR_rssi_fmt
), 0,
10092 "INTEGER_0_255", HFILL
}},
10094 { "cinr", "ulp.cinr",
10095 FT_UINT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_decibels
), 0,
10096 "INTEGER_0_255", HFILL
}},
10098 { "cINRstd", "ulp.cINRstd",
10099 FT_UINT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_decibels
), 0,
10100 "INTEGER_0_63", HFILL
}},
10101 { &hf_ulp_bSLocation
,
10102 { "bSLocation", "ulp.bSLocation_element",
10103 FT_NONE
, BASE_NONE
, NULL
, 0,
10104 "ReportedLocation", HFILL
}},
10105 { &hf_ulp_servingCellInformation
,
10106 { "servingCellInformation", "ulp.servingCellInformation",
10107 FT_UINT32
, BASE_DEC
, NULL
, 0,
10108 "ServingCellInformationNR", HFILL
}},
10109 { &hf_ulp_measuredResultsListNR
,
10110 { "measuredResultsListNR", "ulp.measuredResultsListNR",
10111 FT_UINT32
, BASE_DEC
, NULL
, 0,
10112 "MeasResultListNR", HFILL
}},
10113 { &hf_ulp_ServingCellInformationNR_item
,
10114 { "ServCellNR", "ulp.ServCellNR_element",
10115 FT_NONE
, BASE_NONE
, NULL
, 0,
10117 { &hf_ulp_physCellId_01
,
10118 { "physCellId", "ulp.physCellId",
10119 FT_UINT32
, BASE_DEC
, NULL
, 0,
10120 "PhysCellIdNR", HFILL
}},
10121 { &hf_ulp_arfcn_NR
,
10122 { "arfcn-NR", "ulp.arfcn_NR",
10123 FT_UINT32
, BASE_DEC
, NULL
, 0,
10125 { &hf_ulp_cellGlobalId_01
,
10126 { "cellGlobalId", "ulp.cellGlobalId_element",
10127 FT_NONE
, BASE_NONE
, NULL
, 0,
10128 "CellGlobalIdNR", HFILL
}},
10129 { &hf_ulp_ssb_Measurements
,
10130 { "ssb-Measurements", "ulp.ssb_Measurements_element",
10131 FT_NONE
, BASE_NONE
, NULL
, 0,
10132 "NR_Measurements", HFILL
}},
10133 { &hf_ulp_csi_rs_Measurements
,
10134 { "csi-rs-Measurements", "ulp.csi_rs_Measurements_element",
10135 FT_NONE
, BASE_NONE
, NULL
, 0,
10136 "NR_Measurements", HFILL
}},
10139 FT_UINT32
, BASE_DEC
, NULL
, 0,
10140 "INTEGER_0_3846", HFILL
}},
10141 { &hf_ulp_MeasResultListNR_item
,
10142 { "MeasResultNR", "ulp.MeasResultNR_element",
10143 FT_NONE
, BASE_NONE
, NULL
, 0,
10145 { &hf_ulp_cellIdentityNR
,
10146 { "cellIdentityNR", "ulp.cellIdentityNR",
10147 FT_BYTES
, BASE_NONE
, NULL
, 0,
10149 { &hf_ulp_rsrp_Range
,
10150 { "rsrp-Range", "ulp.rsrp_Range",
10151 FT_UINT32
, BASE_DEC
, NULL
, 0,
10152 "INTEGER_0_127", HFILL
}},
10153 { &hf_ulp_rsrq_Range
,
10154 { "rsrq-Range", "ulp.rsrq_Range",
10155 FT_UINT32
, BASE_DEC
, NULL
, 0,
10156 "INTEGER_0_127", HFILL
}},
10157 { &hf_ulp_sinr_Range
,
10158 { "sinr-Range", "ulp.sinr_Range",
10159 FT_UINT32
, BASE_DEC
, NULL
, 0,
10160 "INTEGER_0_127", HFILL
}},
10161 { &hf_ulp_utran_GPSReferenceTime
,
10162 { "utran-GPSReferenceTime", "ulp.utran_GPSReferenceTime_element",
10163 FT_NONE
, BASE_NONE
, NULL
, 0,
10165 { &hf_ulp_gpsReferenceTimeUncertainty
,
10166 { "gpsReferenceTimeUncertainty", "ulp.gpsReferenceTimeUncertainty",
10167 FT_UINT32
, BASE_CUSTOM
, CF_FUNC(ulp_UTRAN_gpsReferenceTimeUncertainty_fmt
), 0,
10168 "INTEGER_0_127", HFILL
}},
10169 { &hf_ulp_utranGPSDriftRate
,
10170 { "utranGPSDriftRate", "ulp.utranGPSDriftRate",
10171 FT_UINT32
, BASE_DEC
, VALS(ulp_UTRANGPSDriftRate_vals
), 0,
10173 { &hf_ulp_utran_GPSTimingOfCell
,
10174 { "utran-GPSTimingOfCell", "ulp.utran_GPSTimingOfCell_element",
10175 FT_NONE
, BASE_NONE
, NULL
, 0,
10178 { "ms-part", "ulp.ms_part",
10179 FT_UINT32
, BASE_DEC
, NULL
, 0,
10180 "INTEGER_0_1023", HFILL
}},
10182 { "ls-part", "ulp.ls_part",
10183 FT_UINT32
, BASE_DEC
, NULL
, 0,
10184 "INTEGER_0_4294967295", HFILL
}},
10185 { &hf_ulp_modeSpecificInfo_01
,
10186 { "modeSpecificInfo", "ulp.modeSpecificInfo",
10187 FT_UINT32
, BASE_DEC
, VALS(ulp_T_modeSpecificInfo_01_vals
), 0,
10188 "T_modeSpecificInfo_01", HFILL
}},
10190 { "fdd", "ulp.fdd_element",
10191 FT_NONE
, BASE_NONE
, NULL
, 0,
10192 "T_fdd_01", HFILL
}},
10193 { &hf_ulp_referenceIdentity
,
10194 { "referenceIdentity", "ulp.referenceIdentity_element",
10195 FT_NONE
, BASE_NONE
, NULL
, 0,
10196 "PrimaryCPICH_Info", HFILL
}},
10198 { "tdd", "ulp.tdd_element",
10199 FT_NONE
, BASE_NONE
, NULL
, 0,
10200 "T_tdd_01", HFILL
}},
10201 { &hf_ulp_referenceIdentity_01
,
10202 { "referenceIdentity", "ulp.referenceIdentity",
10203 FT_UINT32
, BASE_DEC
, NULL
, 0,
10204 "CellParametersID", HFILL
}},
10206 { "sfn", "ulp.sfn",
10207 FT_UINT32
, BASE_DEC
, NULL
, 0,
10208 "INTEGER_0_4095", HFILL
}},
10209 { &hf_ulp_set_GPSTimingOfCell
,
10210 { "set-GPSTimingOfCell", "ulp.set_GPSTimingOfCell_element",
10211 FT_NONE
, BASE_NONE
, NULL
, 0,
10212 "T_set_GPSTimingOfCell", HFILL
}},
10213 { &hf_ulp_ms_part_01
,
10214 { "ms-part", "ulp.ms_part",
10215 FT_UINT32
, BASE_DEC
, NULL
, 0,
10216 "INTEGER_0_16383", HFILL
}},
10217 { &hf_ulp_modeSpecificInfo_02
,
10218 { "modeSpecificInfo", "ulp.modeSpecificInfo",
10219 FT_UINT32
, BASE_DEC
, VALS(ulp_T_modeSpecificInfo_02_vals
), 0,
10220 "T_modeSpecificInfo_02", HFILL
}},
10222 { "fdd", "ulp.fdd_element",
10223 FT_NONE
, BASE_NONE
, NULL
, 0,
10224 "T_fdd_02", HFILL
}},
10226 { "tdd", "ulp.tdd_element",
10227 FT_NONE
, BASE_NONE
, NULL
, 0,
10228 "T_tdd_02", HFILL
}},
10229 { &hf_ulp_ganssDay
,
10230 { "ganssDay", "ulp.ganssDay",
10231 FT_UINT32
, BASE_DEC
, NULL
, 0,
10232 "INTEGER_0_8191", HFILL
}},
10233 { &hf_ulp_ganssTimeID
,
10234 { "ganssTimeID", "ulp.ganssTimeID",
10235 FT_UINT32
, BASE_DEC
, VALS(ulp_ganss_time_id_vals
), 0,
10236 "INTEGER_0_15", HFILL
}},
10237 { &hf_ulp_utran_GANSSReferenceTime
,
10238 { "utran-GANSSReferenceTime", "ulp.utran_GANSSReferenceTime_element",
10239 FT_NONE
, BASE_NONE
, NULL
, 0,
10241 { &hf_ulp_utranGANSSDriftRate
,
10242 { "utranGANSSDriftRate", "ulp.utranGANSSDriftRate",
10243 FT_UINT32
, BASE_DEC
, VALS(ulp_UTRANGANSSDriftRate_vals
), 0,
10245 { &hf_ulp_ganssTOD
,
10246 { "ganssTOD", "ulp.ganssTOD",
10247 FT_UINT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_seconds
), 0,
10248 "INTEGER_0_86399", HFILL
}},
10249 { &hf_ulp_utran_GANSSTimingOfCell
,
10250 { "utran-GANSSTimingOfCell", "ulp.utran_GANSSTimingOfCell",
10251 FT_UINT32
, BASE_CUSTOM
, CF_FUNC(ulp_utran_GANSSTimingOfCell_fmt
), 0,
10252 "INTEGER_0_3999999", HFILL
}},
10253 { &hf_ulp_modeSpecificInfo_03
,
10254 { "modeSpecificInfo", "ulp.modeSpecificInfo",
10255 FT_UINT32
, BASE_DEC
, VALS(ulp_T_modeSpecificInfo_03_vals
), 0,
10256 "T_modeSpecificInfo_03", HFILL
}},
10258 { "fdd", "ulp.fdd_element",
10259 FT_NONE
, BASE_NONE
, NULL
, 0,
10260 "T_fdd_03", HFILL
}},
10262 { "tdd", "ulp.tdd_element",
10263 FT_NONE
, BASE_NONE
, NULL
, 0,
10264 "T_tdd_03", HFILL
}},
10265 { &hf_ulp_ganss_TODUncertainty
,
10266 { "ganss-TODUncertainty", "ulp.ganss_TODUncertainty",
10267 FT_UINT32
, BASE_CUSTOM
, CF_FUNC(ulp_UTRAN_gpsReferenceTimeUncertainty_fmt
), 0,
10268 "INTEGER_0_127", HFILL
}},
10269 { &hf_ulp_set_GANSSReferenceTime
,
10270 { "set-GANSSReferenceTime", "ulp.set_GANSSReferenceTime_element",
10271 FT_NONE
, BASE_NONE
, NULL
, 0,
10273 { &hf_ulp_set_GANSSTimingOfCell
,
10274 { "set-GANSSTimingOfCell", "ulp.set_GANSSTimingOfCell_element",
10275 FT_NONE
, BASE_NONE
, NULL
, 0,
10276 "T_set_GANSSTimingOfCell", HFILL
}},
10277 { &hf_ulp_ms_part_02
,
10278 { "ms-part", "ulp.ms_part",
10279 FT_UINT32
, BASE_DEC
, NULL
, 0,
10280 "INTEGER_0_80", HFILL
}},
10281 { &hf_ulp_modeSpecificInfo_04
,
10282 { "modeSpecificInfo", "ulp.modeSpecificInfo",
10283 FT_UINT32
, BASE_DEC
, VALS(ulp_T_modeSpecificInfo_04_vals
), 0,
10284 "T_modeSpecificInfo_04", HFILL
}},
10286 { "fdd", "ulp.fdd_element",
10287 FT_NONE
, BASE_NONE
, NULL
, 0,
10288 "T_fdd_04", HFILL
}},
10290 { "tdd", "ulp.tdd_element",
10291 FT_NONE
, BASE_NONE
, NULL
, 0,
10292 "T_tdd_04", HFILL
}},
10294 { "gps", "ulp.gps",
10295 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
10296 "BOOLEAN", HFILL
}},
10298 { "galileo", "ulp.galileo",
10299 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
10300 "BOOLEAN", HFILL
}},
10302 { "sbas", "ulp.sbas",
10303 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
10304 "BOOLEAN", HFILL
}},
10305 { &hf_ulp_modernized_gps
,
10306 { "modernized-gps", "ulp.modernized_gps",
10307 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
10308 "BOOLEAN", HFILL
}},
10310 { "qzss", "ulp.qzss",
10311 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
10312 "BOOLEAN", HFILL
}},
10314 { "glonass", "ulp.glonass",
10315 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
10316 "BOOLEAN", HFILL
}},
10318 { "bds", "ulp.bds",
10319 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
10320 "BOOLEAN", HFILL
}},
10322 { "rtk-osr", "ulp.rtk_osr",
10323 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
10324 "BOOLEAN", HFILL
}},
10326 { "rand", "ulp.rand",
10327 FT_BYTES
, BASE_NONE
, NULL
, 0,
10328 "BIT_STRING_SIZE_128", HFILL
}},
10330 { "slpFQDN", "ulp.slpFQDN",
10331 FT_STRING
, BASE_NONE
, NULL
, 0,
10333 { &hf_ulp_ThirdParty_item
,
10334 { "ThirdPartyID", "ulp.ThirdPartyID",
10335 FT_UINT32
, BASE_DEC
, VALS(ulp_ThirdPartyID_vals
), 0,
10337 { &hf_ulp_logicalName
,
10338 { "logicalName", "ulp.logicalName",
10339 FT_STRING
, BASE_NONE
, NULL
, 0,
10340 "IA5String_SIZE_1_1000", HFILL
}},
10341 { &hf_ulp_msisdn_01
,
10342 { "msisdn", "ulp.msisdn",
10343 FT_BYTES
, BASE_NONE
, NULL
, 0,
10344 "T_msisdn_01", HFILL
}},
10345 { &hf_ulp_emailaddr
,
10346 { "emailaddr", "ulp.emailaddr",
10347 FT_STRING
, BASE_NONE
, NULL
, 0,
10348 "IA5String_SIZE_1_1000", HFILL
}},
10350 { "sip-uri", "ulp.sip_uri",
10351 FT_STRING
, BASE_NONE
, NULL
, 0,
10353 { &hf_ulp_ims_public_identity
,
10354 { "ims-public-identity", "ulp.ims_public_identity",
10355 FT_STRING
, BASE_NONE
, NULL
, 0,
10358 { "min", "ulp.min",
10359 FT_BYTES
, BASE_NONE
, NULL
, 0,
10360 "BIT_STRING_SIZE_34", HFILL
}},
10362 { "mdn", "ulp.mdn",
10363 FT_BYTES
, BASE_NONE
, NULL
, 0,
10364 "T_mdn_01", HFILL
}},
10366 { "uri", "ulp.uri",
10367 FT_STRING
, BASE_NONE
, NULL
, 0,
10369 { &hf_ulp_appProvider
,
10370 { "appProvider", "ulp.appProvider",
10371 FT_STRING
, BASE_NONE
, NULL
, 0,
10372 "IA5String_SIZE_1_24", HFILL
}},
10374 { "appName", "ulp.appName",
10375 FT_STRING
, BASE_NONE
, NULL
, 0,
10376 "IA5String_SIZE_1_32", HFILL
}},
10377 { &hf_ulp_appVersion
,
10378 { "appVersion", "ulp.appVersion",
10379 FT_STRING
, BASE_NONE
, NULL
, 0,
10380 "IA5String_SIZE_1_8", HFILL
}},
10382 { "minInt", "ulp.minInt",
10383 FT_UINT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_seconds
), 0,
10384 "INTEGER_1_3600", HFILL
}},
10386 { "maxInt", "ulp.maxInt",
10387 FT_UINT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_minutes
), 0,
10388 "INTEGER_1_1440", HFILL
}},
10389 { &hf_ulp_repMode_01
,
10390 { "repMode", "ulp.repMode_element",
10391 FT_NONE
, BASE_NONE
, NULL
, 0,
10393 { &hf_ulp_batchRepCap
,
10394 { "batchRepCap", "ulp.batchRepCap_element",
10395 FT_NONE
, BASE_NONE
, NULL
, 0,
10397 { &hf_ulp_realtime
,
10398 { "realtime", "ulp.realtime",
10399 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
10400 "BOOLEAN", HFILL
}},
10401 { &hf_ulp_quasirealtime
,
10402 { "quasirealtime", "ulp.quasirealtime",
10403 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
10404 "BOOLEAN", HFILL
}},
10406 { "batch", "ulp.batch",
10407 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
10408 "BOOLEAN", HFILL
}},
10409 { &hf_ulp_report_position
,
10410 { "report-position", "ulp.report_position",
10411 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
10412 "BOOLEAN", HFILL
}},
10413 { &hf_ulp_report_measurements
,
10414 { "report-measurements", "ulp.report_measurements",
10415 FT_BOOLEAN
, BASE_NONE
, NULL
, 0,
10416 "BOOLEAN", HFILL
}},
10417 { &hf_ulp_max_num_positions
,
10418 { "max-num-positions", "ulp.max_num_positions",
10419 FT_UINT32
, BASE_DEC
, NULL
, 0,
10420 "INTEGER_1_1024", HFILL
}},
10421 { &hf_ulp_max_num_measurements
,
10422 { "max-num-measurements", "ulp.max_num_measurements",
10423 FT_UINT32
, BASE_DEC
, NULL
, 0,
10424 "INTEGER_1_1024", HFILL
}},
10425 { &hf_ulp_latitudeSign_01
,
10426 { "latitudeSign", "ulp.latitudeSign",
10427 FT_UINT32
, BASE_DEC
, VALS(ulp_T_latitudeSign_01_vals
), 0,
10428 "T_latitudeSign_01", HFILL
}},
10429 { &hf_ulp_coordinateLatitude
,
10430 { "latitude", "ulp.latitude",
10431 FT_UINT32
, BASE_CUSTOM
, CF_FUNC(ulp_Coordinate_latitude_fmt
), 0,
10432 "INTEGER_0_8388607", HFILL
}},
10433 { &hf_ulp_coordinateLongitude
,
10434 { "longitude", "ulp.longitude",
10435 FT_INT32
, BASE_CUSTOM
, CF_FUNC(ulp_Coordinate_longitude_fmt
), 0,
10436 "INTEGER_M8388608_8388607", HFILL
}},
10437 { &hf_ulp_coordinate
,
10438 { "coordinate", "ulp.coordinate_element",
10439 FT_NONE
, BASE_NONE
, NULL
, 0,
10442 { "radius", "ulp.radius",
10443 FT_UINT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_meters
), 0,
10444 "INTEGER_1_1000000", HFILL
}},
10445 { &hf_ulp_radius_min
,
10446 { "radius-min", "ulp.radius_min",
10447 FT_UINT32
, BASE_DEC
, NULL
, 0,
10448 "INTEGER_1_1000000", HFILL
}},
10449 { &hf_ulp_radius_max
,
10450 { "radius-max", "ulp.radius_max",
10451 FT_UINT32
, BASE_DEC
, NULL
, 0,
10452 "INTEGER_1_1500000", HFILL
}},
10453 { &hf_ulp_semiMajor
,
10454 { "semiMajor", "ulp.semiMajor",
10455 FT_UINT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_meters
), 0,
10456 "INTEGER_1_1000000", HFILL
}},
10457 { &hf_ulp_semiMajor_min
,
10458 { "semiMajor-min", "ulp.semiMajor_min",
10459 FT_UINT32
, BASE_DEC
, NULL
, 0,
10460 "INTEGER_1_1000000", HFILL
}},
10461 { &hf_ulp_semiMajor_max
,
10462 { "semiMajor-max", "ulp.semiMajor_max",
10463 FT_UINT32
, BASE_DEC
, NULL
, 0,
10464 "INTEGER_1_1500000", HFILL
}},
10465 { &hf_ulp_semiMinor
,
10466 { "semiMinor", "ulp.semiMinor",
10467 FT_UINT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_meters
), 0,
10468 "INTEGER_1_1000000", HFILL
}},
10469 { &hf_ulp_semiMinor_min
,
10470 { "semiMinor-min", "ulp.semiMinor_min",
10471 FT_UINT32
, BASE_DEC
, NULL
, 0,
10472 "INTEGER_1_1000000", HFILL
}},
10473 { &hf_ulp_semiMinor_max
,
10474 { "semiMinor-max", "ulp.semiMinor_max",
10475 FT_UINT32
, BASE_DEC
, NULL
, 0,
10476 "INTEGER_1_1500000", HFILL
}},
10478 { "angle", "ulp.angle",
10479 FT_UINT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_degree_degrees
), 0,
10480 "INTEGER_0_179", HFILL
}},
10481 { &hf_ulp_polygonDescription
,
10482 { "polygonDescription", "ulp.polygonDescription",
10483 FT_UINT32
, BASE_DEC
, NULL
, 0,
10485 { &hf_ulp_polygonHysteresis
,
10486 { "polygonHysteresis", "ulp.polygonHysteresis",
10487 FT_UINT32
, BASE_DEC
|BASE_UNIT_STRING
, UNS(&units_meters
), 0,
10488 "INTEGER_1_100000", HFILL
}},
10489 { &hf_ulp_PolygonDescription_item
,
10490 { "Coordinate", "ulp.Coordinate_element",
10491 FT_NONE
, BASE_NONE
, NULL
, 0,
10493 { &hf_ulp_highAccuracyPositionEstimate
,
10494 { "highAccuracyPositionEstimate", "ulp.highAccuracyPositionEstimate_element",
10495 FT_NONE
, BASE_NONE
, NULL
, 0,
10497 { &hf_ulp_degreesLatitude
,
10498 { "degreesLatitude", "ulp.degreesLatitude",
10499 FT_INT32
, BASE_DEC
, NULL
, 0,
10500 "INTEGER_M2147483648_2147483647", HFILL
}},
10501 { &hf_ulp_degreesLongitude
,
10502 { "degreesLongitude", "ulp.degreesLongitude",
10503 FT_INT32
, BASE_DEC
, NULL
, 0,
10504 "INTEGER_M2147483648_2147483647", HFILL
}},
10505 { &hf_ulp_uncertaintySemiMajor_01
,
10506 { "uncertaintySemiMajor", "ulp.uncertaintySemiMajor",
10507 FT_UINT32
, BASE_DEC
, NULL
, 0,
10508 "INTEGER_0_255", HFILL
}},
10509 { &hf_ulp_uncertaintySemiMinor_01
,
10510 { "uncertaintySemiMinor", "ulp.uncertaintySemiMinor",
10511 FT_UINT32
, BASE_DEC
, NULL
, 0,
10512 "INTEGER_0_255", HFILL
}},
10513 { &hf_ulp_orientationMajorAxis_01
,
10514 { "orientationMajorAxis", "ulp.orientationMajorAxis",
10515 FT_UINT32
, BASE_DEC
, NULL
, 0,
10516 "INTEGER_0_179", HFILL
}},
10517 { &hf_ulp_horizontalConfidence
,
10518 { "horizontalConfidence", "ulp.horizontalConfidence",
10519 FT_UINT32
, BASE_DEC
, NULL
, 0,
10520 "INTEGER_0_100", HFILL
}},
10521 { &hf_ulp_highAccuracyAltitudeInfo
,
10522 { "highAccuracyAltitudeInfo", "ulp.highAccuracyAltitudeInfo_element",
10523 FT_NONE
, BASE_NONE
, NULL
, 0,
10525 { &hf_ulp_altitude_02
,
10526 { "altitude", "ulp.altitude",
10527 FT_UINT32
, BASE_DEC
, NULL
, 0,
10528 "INTEGER_64000_1280000", HFILL
}},
10529 { &hf_ulp_uncertaintyAltitude
,
10530 { "uncertaintyAltitude", "ulp.uncertaintyAltitude",
10531 FT_UINT32
, BASE_DEC
, NULL
, 0,
10532 "INTEGER_0_255", HFILL
}},
10533 { &hf_ulp_verticalConfidence
,
10534 { "verticalConfidence", "ulp.verticalConfidence",
10535 FT_UINT32
, BASE_DEC
, NULL
, 0,
10536 "INTEGER_0_100", HFILL
}},
10537 { &hf_ulp_T_addPosMode_standalone
,
10538 { "standalone", "ulp.T.addPosMode.standalone",
10539 FT_BOOLEAN
, 8, NULL
, 0x80,
10541 { &hf_ulp_T_addPosMode_setBased
,
10542 { "setBased", "ulp.T.addPosMode.setBased",
10543 FT_BOOLEAN
, 8, NULL
, 0x40,
10545 { &hf_ulp_T_addPosMode_setAssisted
,
10546 { "setAssisted", "ulp.T.addPosMode.setAssisted",
10547 FT_BOOLEAN
, 8, NULL
, 0x20,
10549 { &hf_ulp_GANSSSignals_signal1
,
10550 { "signal1", "ulp.GANSSSignals.signal1",
10551 FT_BOOLEAN
, 8, NULL
, 0x80,
10553 { &hf_ulp_GANSSSignals_signal2
,
10554 { "signal2", "ulp.GANSSSignals.signal2",
10555 FT_BOOLEAN
, 8, NULL
, 0x40,
10557 { &hf_ulp_GANSSSignals_signal3
,
10558 { "signal3", "ulp.GANSSSignals.signal3",
10559 FT_BOOLEAN
, 8, NULL
, 0x20,
10561 { &hf_ulp_GANSSSignals_signal4
,
10562 { "signal4", "ulp.GANSSSignals.signal4",
10563 FT_BOOLEAN
, 8, NULL
, 0x10,
10565 { &hf_ulp_GANSSSignals_signal5
,
10566 { "signal5", "ulp.GANSSSignals.signal5",
10567 FT_BOOLEAN
, 8, NULL
, 0x08,
10569 { &hf_ulp_GANSSSignals_signal6
,
10570 { "signal6", "ulp.GANSSSignals.signal6",
10571 FT_BOOLEAN
, 8, NULL
, 0x04,
10573 { &hf_ulp_GANSSSignals_signal7
,
10574 { "signal7", "ulp.GANSSSignals.signal7",
10575 FT_BOOLEAN
, 8, NULL
, 0x02,
10577 { &hf_ulp_GANSSSignals_signal8
,
10578 { "signal8", "ulp.GANSSSignals.signal8",
10579 FT_BOOLEAN
, 8, NULL
, 0x01,
10581 { &hf_ulp_mobile_directory_number
,
10582 { "Mobile Directory Number", "ulp.mobile_directory_number",
10583 FT_STRING
, BASE_NONE
, NULL
, 0,
10585 { &hf_ulp_ganssTimeModels_bit0
,
10586 { "GPS", "ulp.ganssTimeModels.gps",
10587 FT_BOOLEAN
, 16, TFS(&tfs_yes_no
), 0x8000,
10589 { &hf_ulp_ganssTimeModels_bit1
,
10590 { "Galileo", "ulp.ganssTimeModels.galileo",
10591 FT_BOOLEAN
, 16, TFS(&tfs_yes_no
), 0x4000,
10593 { &hf_ulp_ganssTimeModels_bit2
,
10594 { "QZSS", "ulp.ganssTimeModels.qzss",
10595 FT_BOOLEAN
, 16, TFS(&tfs_yes_no
), 0x2000,
10597 { &hf_ulp_ganssTimeModels_bit3
,
10598 { "GLONASS", "ulp.ganssTimeModels.glonass",
10599 FT_BOOLEAN
, 16, TFS(&tfs_yes_no
), 0x1000,
10601 { &hf_ulp_ganssTimeModels_bit4
,
10602 { "BDS", "ulp.ganssTimeModels.bds",
10603 FT_BOOLEAN
, 16, TFS(&tfs_yes_no
), 0x0800,
10605 { &hf_ulp_ganssTimeModels_spare
,
10606 { "Spare", "ulp.ganssTimeModels.spare",
10607 FT_UINT16
, BASE_HEX
, NULL
, 0x07ff,
10611 /* List of subtrees */
10612 static int *ett
[] = {
10615 &ett_ulp_thirdPartyId
,
10616 &ett_ulp_ganssTimeModels
,
10618 &ett_ulp_UlpMessage
,
10620 &ett_ulp_Notification
,
10621 &ett_ulp_SUPLSTART
,
10622 &ett_ulp_SETCapabilities
,
10623 &ett_ulp_PosTechnology
,
10624 &ett_ulp_PosProtocol
,
10625 &ett_ulp_SUPLRESPONSE
,
10626 &ett_ulp_SETAuthKey
,
10627 &ett_ulp_SUPLPOSINIT
,
10628 &ett_ulp_RequestedAssistData
,
10629 &ett_ulp_NavigationModel
,
10630 &ett_ulp_SatelliteInfo
,
10631 &ett_ulp_SatelliteInfoElement
,
10633 &ett_ulp_PosPayLoad
,
10635 &ett_ulp_SUPLAUTHREQ
,
10636 &ett_ulp_SUPLAUTHRESP
,
10637 &ett_ulp_Ver2_SUPLNOTIFY
,
10638 &ett_ulp_Ver2_SUPLNOTIFYRESPONSE
,
10639 &ett_ulp_Ver2_SUPLSETINIT
,
10640 &ett_ulp_Ver2_SUPLTRIGGEREDSTART
,
10641 &ett_ulp_TriggerParams
,
10642 &ett_ulp_PeriodicParams
,
10643 &ett_ulp_AreaEventParams
,
10644 &ett_ulp_SEQUENCE_SIZE_1_maxAreaIdList_OF_AreaIdList
,
10645 &ett_ulp_RepeatedReportingParams
,
10646 &ett_ulp_GeographicTargetAreaList
,
10647 &ett_ulp_GeographicTargetArea
,
10648 &ett_ulp_AreaIdList
,
10649 &ett_ulp_AreaIdSet
,
10651 &ett_ulp_GSMAreaId
,
10652 &ett_ulp_WCDMAAreaId
,
10653 &ett_ulp_CDMAAreaId
,
10654 &ett_ulp_HRPDAreaId
,
10655 &ett_ulp_UMBAreaId
,
10656 &ett_ulp_LTEAreaId
,
10657 &ett_ulp_WLANAreaId
,
10658 &ett_ulp_WimaxAreaId
,
10660 &ett_ulp_GeoAreaMappingList
,
10661 &ett_ulp_Ver2_SUPLTRIGGEREDRESPONSE
,
10662 &ett_ulp_ReportingMode
,
10663 &ett_ulp_BatchRepConditions
,
10664 &ett_ulp_BatchRepType
,
10665 &ett_ulp_Ver2_SUPLREPORT
,
10666 &ett_ulp_SessionList
,
10667 &ett_ulp_SessionInformation
,
10668 &ett_ulp_ReportDataList
,
10669 &ett_ulp_ReportData
,
10670 &ett_ulp_PositionData
,
10671 &ett_ulp_GANSSsignalsInfo
,
10672 &ett_ulp_GANSSSignalsDescription
,
10673 &ett_ulp_TimeStamp
,
10674 &ett_ulp_Ver2_SUPLTRIGGEREDSTOP
,
10675 &ett_ulp_Ver2_SUPL_INIT_extension
,
10676 &ett_ulp_HistoricReporting
,
10677 &ett_ulp_ReportingCriteria
,
10678 &ett_ulp_TimeWindow
,
10679 &ett_ulp_ProtectionLevel
,
10680 &ett_ulp_BasicProtectionParams
,
10681 &ett_ulp_Ver2_SUPL_START_extension
,
10682 &ett_ulp_Ver2_SUPL_RESPONSE_extension
,
10683 &ett_ulp_Ver2_SUPL_POS_INIT_extension
,
10684 &ett_ulp_Ver2_SUPL_POS_extension
,
10685 &ett_ulp_Ver2_SUPL_END_extension
,
10686 &ett_ulp_Ver2_Notification_extension
,
10687 &ett_ulp_Ver2_SETCapabilities_extension
,
10688 &ett_ulp_ServiceCapabilities
,
10689 &ett_ulp_ServicesSupported
,
10690 &ett_ulp_EventTriggerCapabilities
,
10691 &ett_ulp_GeoAreaShapesSupported
,
10692 &ett_ulp_SessionCapabilities
,
10693 &ett_ulp_SupportedBearers
,
10694 &ett_ulp_Ver2_PosProtocol_extension
,
10695 &ett_ulp_PosProtocolVersion3GPP
,
10696 &ett_ulp_PosProtocolVersion3GPP2
,
10697 &ett_ulp_Supported3GPP2PosProtocolVersion
,
10698 &ett_ulp_PosProtocolVersionOMA
,
10699 &ett_ulp_Ver2_PosTechnology_extension
,
10700 &ett_ulp_GANSSPositionMethods
,
10701 &ett_ulp_GANSSPositionMethod
,
10703 &ett_ulp_GANSSPositioningMethodTypes
,
10704 &ett_ulp_AdditionalPositioningMethods
,
10705 &ett_ulp_AddPosSupport_Element
,
10706 &ett_ulp_T_addPosMode
,
10707 &ett_ulp_Ver2_RequestedAssistData_extension
,
10708 &ett_ulp_GanssRequestedCommonAssistanceDataList
,
10709 &ett_ulp_GanssRequestedGenericAssistanceDataList
,
10710 &ett_ulp_GanssReqGenericData
,
10711 &ett_ulp_GanssNavigationModelData
,
10712 &ett_ulp_SatellitesListRelatedDataList
,
10713 &ett_ulp_SatellitesListRelatedData
,
10714 &ett_ulp_GanssDataBits
,
10715 &ett_ulp_ReqDataBitAssistanceList
,
10716 &ett_ulp_T_ganssDataBitSatList
,
10717 &ett_ulp_GanssAdditionalDataChoices
,
10718 &ett_ulp_ExtendedEphemeris
,
10719 &ett_ulp_ExtendedEphCheck
,
10720 &ett_ulp_GanssExtendedEphCheck
,
10722 &ett_ulp_GANSSextEphTime
,
10723 &ett_ulp_Ver2_PosPayLoad_extension
,
10724 &ett_ulp_T_lPPPayload
,
10725 &ett_ulp_T_tia801Payload
,
10727 &ett_ulp_SessionID
,
10728 &ett_ulp_SetSessionID
,
10730 &ett_ulp_SlpSessionID
,
10731 &ett_ulp_IPAddress
,
10732 &ett_ulp_SLPAddress
,
10733 &ett_ulp_LocationId
,
10736 &ett_ulp_PositionEstimate
,
10737 &ett_ulp_T_uncertainty
,
10738 &ett_ulp_AltitudeInfo
,
10739 &ett_ulp_CdmaCellInformation
,
10740 &ett_ulp_GsmCellInformation
,
10741 &ett_ulp_WcdmaCellInformation
,
10742 &ett_ulp_TimingAdvance
,
10743 &ett_ulp_FrequencyInfo
,
10744 &ett_ulp_FrequencySpecificInfo
,
10745 &ett_ulp_FrequencyInfoFDD
,
10746 &ett_ulp_FrequencyInfoTDD
,
10748 &ett_ulp_NMRelement
,
10749 &ett_ulp_MeasuredResultsList
,
10750 &ett_ulp_MeasuredResults
,
10751 &ett_ulp_CellMeasuredResultsList
,
10752 &ett_ulp_CellMeasuredResults
,
10753 &ett_ulp_T_modeSpecificInfo
,
10756 &ett_ulp_TimeslotISCP_List
,
10757 &ett_ulp_PrimaryCPICH_Info
,
10761 &ett_ulp_Horandvervel
,
10762 &ett_ulp_Horveluncert
,
10763 &ett_ulp_Horandveruncert
,
10764 &ett_ulp_MultipleLocationIds
,
10765 &ett_ulp_LocationIdData
,
10766 &ett_ulp_SupportedNetworkInformation
,
10767 &ett_ulp_SupportedWLANInfo
,
10768 &ett_ulp_SupportedWLANApsList
,
10769 &ett_ulp_SEQUENCE_SIZE_1_maxWLANApDataSize_OF_SupportedWLANApData
,
10770 &ett_ulp_SupportedWLANApsChannel11a
,
10771 &ett_ulp_SupportedWLANApsChannel11bg
,
10772 &ett_ulp_SupportedWLANApData
,
10773 &ett_ulp_SupportedWCDMAInfo
,
10774 &ett_ulp_Ver2_CellInfo_extension
,
10775 &ett_ulp_HrpdCellInformation
,
10776 &ett_ulp_UmbCellInformation
,
10777 &ett_ulp_LteCellInformation
,
10778 &ett_ulp_MeasResultListEUTRA
,
10779 &ett_ulp_MeasResultEUTRA
,
10780 &ett_ulp_T_cgi_Info
,
10781 &ett_ulp_T_measResult
,
10782 &ett_ulp_CellGlobalIdEUTRA
,
10783 &ett_ulp_PLMN_Identity
,
10786 &ett_ulp_ServingInformation5G
,
10787 &ett_ulp_NeighbourInformation5G
,
10788 &ett_ulp_WlanAPInformation
,
10790 &ett_ulp_ReportedLocation
,
10791 &ett_ulp_LocationData
,
10792 &ett_ulp_RepLocation
,
10793 &ett_ulp_LciLocData
,
10794 &ett_ulp_LocationDataLCI
,
10795 &ett_ulp_WimaxBSInformation
,
10796 &ett_ulp_WimaxBsID
,
10798 &ett_ulp_WimaxNMRList
,
10800 &ett_ulp_NRCellInformation
,
10801 &ett_ulp_ServingCellInformationNR
,
10802 &ett_ulp_ServCellNR
,
10803 &ett_ulp_MeasResultListNR
,
10804 &ett_ulp_MeasResultNR
,
10805 &ett_ulp_CellGlobalIdNR
,
10806 &ett_ulp_NR_Measurements
,
10807 &ett_ulp_UTRAN_GPSReferenceTimeAssistance
,
10808 &ett_ulp_UTRAN_GPSReferenceTime
,
10809 &ett_ulp_T_utran_GPSTimingOfCell
,
10810 &ett_ulp_T_modeSpecificInfo_01
,
10813 &ett_ulp_UTRAN_GPSReferenceTimeResult
,
10814 &ett_ulp_T_set_GPSTimingOfCell
,
10815 &ett_ulp_T_modeSpecificInfo_02
,
10818 &ett_ulp_UTRAN_GANSSReferenceTimeAssistance
,
10819 &ett_ulp_UTRAN_GANSSReferenceTime
,
10820 &ett_ulp_T_modeSpecificInfo_03
,
10823 &ett_ulp_UTRAN_GANSSReferenceTimeResult
,
10824 &ett_ulp_SET_GANSSReferenceTime
,
10825 &ett_ulp_T_set_GANSSTimingOfCell
,
10826 &ett_ulp_T_modeSpecificInfo_04
,
10829 &ett_ulp_GNSSPosTechnology
,
10830 &ett_ulp_GANSSSignals
,
10832 &ett_ulp_ThirdParty
,
10833 &ett_ulp_ThirdPartyID
,
10834 &ett_ulp_ApplicationID
,
10835 &ett_ulp_ReportingCap
,
10837 &ett_ulp_BatchRepCap
,
10838 &ett_ulp_Coordinate
,
10839 &ett_ulp_CircularArea
,
10840 &ett_ulp_EllipticalArea
,
10841 &ett_ulp_PolygonArea
,
10842 &ett_ulp_PolygonDescription
,
10843 &ett_ulp_Ver2_HighAccuracyPosition
,
10844 &ett_ulp_HighAccuracyPositionEstimate
,
10845 &ett_ulp_HighAccuracyAltitudeInfo
,
10848 module_t
*ulp_module
;
10851 /* Register protocol */
10852 proto_ulp
= proto_register_protocol(PNAME
, PSNAME
, PFNAME
);
10853 ulp_tcp_handle
= register_dissector("ulp", dissect_ulp_tcp
, proto_ulp
);
10854 ulp_pdu_handle
= register_dissector("ulp.pdu", dissect_ULP_PDU_PDU
, proto_ulp
);
10856 /* Register fields and subtrees */
10857 proto_register_field_array(proto_ulp
, hf
, array_length(hf
));
10858 proto_register_subtree_array(ett
, array_length(ett
));
10860 ulp_module
= prefs_register_protocol(proto_ulp
, NULL
);
10862 prefs_register_bool_preference(ulp_module
, "desegment_ulp_messages",
10863 "Reassemble ULP messages spanning multiple TCP segments",
10864 "Whether the ULP dissector should reassemble messages spanning multiple TCP segments."
10865 " To use this option, you must also enable \"Allow subdissectors to reassemble TCP streams\" in the TCP protocol settings.",
10870 /*--- proto_reg_handoff_ulp ---------------------------------------*/
10872 proto_reg_handoff_ulp(void)
10874 rrlp_handle
= find_dissector_add_dependency("rrlp", proto_ulp
);
10875 lpp_handle
= find_dissector_add_dependency("lpp", proto_ulp
);
10877 dissector_add_string("media_type","application/oma-supl-ulp", ulp_pdu_handle
);
10878 dissector_add_string("media_type","application/vnd.omaloc-supl-init", ulp_pdu_handle
);
10879 dissector_add_uint_with_preference("tcp.port", ULP_PORT
, ulp_tcp_handle
);
10880 dissector_add_uint_with_preference("udp.port", ULP_PORT
, ulp_pdu_handle
);