Home | History | Annotate | Download | only in gen-6356
      1 /*
      2 Copyright (c) 2009, QUALCOMM USA, INC.
      3 
      4 All rights reserved.
      5 
      6 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
      7 
      8          Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
      9 
     10          Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
     11 
     12          Neither the name of the QUALCOMM USA, INC.  nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
     13 
     14 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
     15 
     16  */
     17 
     18 /*
     19  * Please do not edit this file.
     20  * It was generated using rpcgen.
     21  */
     22 
     23 #include "loc_api_common.h"
     24 
     25 bool_t
     26 xdr_rpc_boolean (XDR *xdrs, rpc_boolean *objp)
     27 {
     28 	register int32_t *buf;
     29 
     30 	 if (!xdr_bool (xdrs, objp))
     31 		 return FALSE;
     32 	return TRUE;
     33 }
     34 
     35 bool_t
     36 xdr_rpc_uint32 (XDR *xdrs, rpc_uint32 *objp)
     37 {
     38 	register int32_t *buf;
     39 
     40 	 if (!xdr_u_long (xdrs, objp))
     41 		 return FALSE;
     42 	return TRUE;
     43 }
     44 
     45 bool_t
     46 xdr_rpc_uint16 (XDR *xdrs, rpc_uint16 *objp)
     47 {
     48 	register int32_t *buf;
     49 
     50 	 if (!xdr_u_short (xdrs, objp))
     51 		 return FALSE;
     52 	return TRUE;
     53 }
     54 
     55 bool_t
     56 xdr_rpc_uint8 (XDR *xdrs, rpc_uint8 *objp)
     57 {
     58 	register int32_t *buf;
     59 
     60 	 if (!xdr_u_char (xdrs, objp))
     61 		 return FALSE;
     62 	return TRUE;
     63 }
     64 
     65 bool_t
     66 xdr_rpc_int32 (XDR *xdrs, rpc_int32 *objp)
     67 {
     68 	register int32_t *buf;
     69 
     70 	 if (!xdr_long (xdrs, objp))
     71 		 return FALSE;
     72 	return TRUE;
     73 }
     74 
     75 bool_t
     76 xdr_rpc_byte (XDR *xdrs, rpc_byte *objp)
     77 {
     78 	register int32_t *buf;
     79 
     80 	 if (!xdr_u_char (xdrs, objp))
     81 		 return FALSE;
     82 	return TRUE;
     83 }
     84 
     85 bool_t
     86 xdr_rpc_uint64 (XDR *xdrs, rpc_uint64 *objp)
     87 {
     88 	register int32_t *buf;
     89 
     90 	 if (!xdr_u_quad_t (xdrs, objp))
     91 		 return FALSE;
     92 	return TRUE;
     93 }
     94 
     95 bool_t
     96 xdr_rpc_loc_client_handle_type (XDR *xdrs, rpc_loc_client_handle_type *objp)
     97 {
     98 	register int32_t *buf;
     99 
    100 	 if (!xdr_rpc_int32 (xdrs, objp))
    101 		 return FALSE;
    102 	return TRUE;
    103 }
    104 
    105 bool_t
    106 xdr_rpc_loc_event_mask_type (XDR *xdrs, rpc_loc_event_mask_type *objp)
    107 {
    108 	register int32_t *buf;
    109 
    110 	 if (!xdr_rpc_uint64 (xdrs, objp))
    111 		 return FALSE;
    112 	return TRUE;
    113 }
    114 
    115 bool_t
    116 xdr_rpc_loc_position_valid_mask_type (XDR *xdrs, rpc_loc_position_valid_mask_type *objp)
    117 {
    118 	register int32_t *buf;
    119 
    120 	 if (!xdr_rpc_uint64 (xdrs, objp))
    121 		 return FALSE;
    122 	return TRUE;
    123 }
    124 
    125 bool_t
    126 xdr_rpc_loc_pos_technology_mask_type (XDR *xdrs, rpc_loc_pos_technology_mask_type *objp)
    127 {
    128 	register int32_t *buf;
    129 
    130 	 if (!xdr_rpc_uint32 (xdrs, objp))
    131 		 return FALSE;
    132 	return TRUE;
    133 }
    134 
    135 bool_t
    136 xdr_rpc_loc_session_status_e_type (XDR *xdrs, rpc_loc_session_status_e_type *objp)
    137 {
    138 	register int32_t *buf;
    139 
    140 	 if (!xdr_enum (xdrs, (enum_t *) objp))
    141 		 return FALSE;
    142 	return TRUE;
    143 }
    144 
    145 bool_t
    146 xdr_rpc_loc_calendar_time_s_type (XDR *xdrs, rpc_loc_calendar_time_s_type *objp)
    147 {
    148 	register int32_t *buf;
    149 
    150 	 if (!xdr_rpc_uint16 (xdrs, &objp->year))
    151 		 return FALSE;
    152 	 if (!xdr_u_char (xdrs, &objp->month))
    153 		 return FALSE;
    154 	 if (!xdr_u_char (xdrs, &objp->day_of_week))
    155 		 return FALSE;
    156 	 if (!xdr_u_char (xdrs, &objp->day))
    157 		 return FALSE;
    158 	 if (!xdr_u_char (xdrs, &objp->hour))
    159 		 return FALSE;
    160 	 if (!xdr_u_char (xdrs, &objp->minute))
    161 		 return FALSE;
    162 	 if (!xdr_u_char (xdrs, &objp->second))
    163 		 return FALSE;
    164 	 if (!xdr_rpc_uint16 (xdrs, &objp->millisecond))
    165 		 return FALSE;
    166 	return TRUE;
    167 }
    168 
    169 bool_t
    170 xdr_rpc_loc_parsed_position_s_type (XDR *xdrs, rpc_loc_parsed_position_s_type *objp)
    171 {
    172 	register int32_t *buf;
    173 
    174 	 if (!xdr_rpc_loc_position_valid_mask_type (xdrs, &objp->valid_mask))
    175 		 return FALSE;
    176 	 if (!xdr_rpc_loc_session_status_e_type (xdrs, &objp->session_status))
    177 		 return FALSE;
    178 	 if (!xdr_rpc_loc_calendar_time_s_type (xdrs, &objp->timestamp_calendar))
    179 		 return FALSE;
    180 	 if (!xdr_rpc_uint64 (xdrs, &objp->timestamp_utc))
    181 		 return FALSE;
    182 	 if (!xdr_rpc_uint8 (xdrs, &objp->leap_seconds))
    183 		 return FALSE;
    184 	 if (!xdr_float (xdrs, &objp->time_unc))
    185 		 return FALSE;
    186 	 if (!xdr_double (xdrs, &objp->latitude))
    187 		 return FALSE;
    188 	 if (!xdr_double (xdrs, &objp->longitude))
    189 		 return FALSE;
    190 	 if (!xdr_float (xdrs, &objp->altitude_wrt_ellipsoid))
    191 		 return FALSE;
    192 	 if (!xdr_float (xdrs, &objp->altitude_wrt_mean_sea_level))
    193 		 return FALSE;
    194 	 if (!xdr_float (xdrs, &objp->speed_horizontal))
    195 		 return FALSE;
    196 	 if (!xdr_float (xdrs, &objp->speed_vertical))
    197 		 return FALSE;
    198 	 if (!xdr_float (xdrs, &objp->heading))
    199 		 return FALSE;
    200 	 if (!xdr_float (xdrs, &objp->hor_unc_circular))
    201 		 return FALSE;
    202 	 if (!xdr_float (xdrs, &objp->hor_unc_ellipse_semi_major))
    203 		 return FALSE;
    204 	 if (!xdr_float (xdrs, &objp->hor_unc_ellipse_semi_minor))
    205 		 return FALSE;
    206 	 if (!xdr_float (xdrs, &objp->hor_unc_ellipse_orient_azimuth))
    207 		 return FALSE;
    208 	 if (!xdr_float (xdrs, &objp->vert_unc))
    209 		 return FALSE;
    210 	 if (!xdr_float (xdrs, &objp->speed_unc))
    211 		 return FALSE;
    212 	 if (!xdr_float (xdrs, &objp->heading_unc))
    213 		 return FALSE;
    214 	 if (!xdr_u_char (xdrs, &objp->confidence_horizontal))
    215 		 return FALSE;
    216 	 if (!xdr_u_char (xdrs, &objp->confidence_vertical))
    217 		 return FALSE;
    218 	 if (!xdr_float (xdrs, &objp->magnetic_deviation))
    219 		 return FALSE;
    220 	 if (!xdr_rpc_loc_pos_technology_mask_type (xdrs, &objp->technology_mask))
    221 		 return FALSE;
    222 	return TRUE;
    223 }
    224 
    225 bool_t
    226 xdr_rpc_loc_sv_system_e_type (XDR *xdrs, rpc_loc_sv_system_e_type *objp)
    227 {
    228 	register int32_t *buf;
    229 
    230 	 if (!xdr_enum (xdrs, (enum_t *) objp))
    231 		 return FALSE;
    232 	return TRUE;
    233 }
    234 
    235 bool_t
    236 xdr_rpc_loc_sv_status_e_type (XDR *xdrs, rpc_loc_sv_status_e_type *objp)
    237 {
    238 	register int32_t *buf;
    239 
    240 	 if (!xdr_enum (xdrs, (enum_t *) objp))
    241 		 return FALSE;
    242 	return TRUE;
    243 }
    244 
    245 bool_t
    246 xdr_rpc_loc_sv_info_valid_mask_type (XDR *xdrs, rpc_loc_sv_info_valid_mask_type *objp)
    247 {
    248 	register int32_t *buf;
    249 
    250 	 if (!xdr_rpc_uint32 (xdrs, objp))
    251 		 return FALSE;
    252 	return TRUE;
    253 }
    254 
    255 bool_t
    256 xdr_rpc_loc_sv_info_s_type (XDR *xdrs, rpc_loc_sv_info_s_type *objp)
    257 {
    258 	register int32_t *buf;
    259 
    260 	 if (!xdr_rpc_loc_sv_info_valid_mask_type (xdrs, &objp->valid_mask))
    261 		 return FALSE;
    262 	 if (!xdr_rpc_loc_sv_system_e_type (xdrs, &objp->system))
    263 		 return FALSE;
    264 	 if (!xdr_rpc_uint8 (xdrs, &objp->prn))
    265 		 return FALSE;
    266 	 if (!xdr_rpc_uint8 (xdrs, &objp->health_status))
    267 		 return FALSE;
    268 	 if (!xdr_rpc_loc_sv_status_e_type (xdrs, &objp->process_status))
    269 		 return FALSE;
    270 	 if (!xdr_rpc_boolean (xdrs, &objp->has_eph))
    271 		 return FALSE;
    272 	 if (!xdr_rpc_boolean (xdrs, &objp->has_alm))
    273 		 return FALSE;
    274 	 if (!xdr_float (xdrs, &objp->elevation))
    275 		 return FALSE;
    276 	 if (!xdr_float (xdrs, &objp->azimuth))
    277 		 return FALSE;
    278 	 if (!xdr_float (xdrs, &objp->snr))
    279 		 return FALSE;
    280 	return TRUE;
    281 }
    282 
    283 bool_t
    284 xdr_rpc_loc_gnss_info_valid_mask_type (XDR *xdrs, rpc_loc_gnss_info_valid_mask_type *objp)
    285 {
    286 	register int32_t *buf;
    287 
    288 	 if (!xdr_rpc_uint32 (xdrs, objp))
    289 		 return FALSE;
    290 	return TRUE;
    291 }
    292 
    293 bool_t
    294 xdr_rpc_loc_gnss_info_s_type (XDR *xdrs, rpc_loc_gnss_info_s_type *objp)
    295 {
    296 	register int32_t *buf;
    297 
    298 	 if (!xdr_rpc_loc_gnss_info_valid_mask_type (xdrs, &objp->valid_mask))
    299 		 return FALSE;
    300 	 if (!xdr_float (xdrs, &objp->position_dop))
    301 		 return FALSE;
    302 	 if (!xdr_float (xdrs, &objp->horizontal_dop))
    303 		 return FALSE;
    304 	 if (!xdr_float (xdrs, &objp->vertical_dop))
    305 		 return FALSE;
    306 	 if (!xdr_rpc_boolean (xdrs, &objp->altitude_assumed))
    307 		 return FALSE;
    308 	 if (!xdr_rpc_uint16 (xdrs, &objp->sv_count))
    309 		 return FALSE;
    310 	 if (!xdr_array (xdrs, (char **)&objp->sv_list.sv_list_val, (u_int *) &objp->sv_list.sv_list_len, RPC_LOC_API_MAX_SV_COUNT,
    311 		sizeof (rpc_loc_sv_info_s_type), (xdrproc_t) xdr_rpc_loc_sv_info_s_type))
    312 		 return FALSE;
    313 	return TRUE;
    314 }
    315 
    316 bool_t
    317 xdr_rpc_loc_nmea_report_s_type (XDR *xdrs, rpc_loc_nmea_report_s_type *objp)
    318 {
    319 	register int32_t *buf;
    320 
    321 	 if (!xdr_rpc_uint16 (xdrs, &objp->length))
    322 		 return FALSE;
    323 	 if (!xdr_bytes (xdrs, (char **)&objp->nmea_sentences.nmea_sentences_val, (u_int *) &objp->nmea_sentences.nmea_sentences_len, RPC_LOC_API_MAX_NMEA_STRING_LENGTH))
    324 		 return FALSE;
    325 	return TRUE;
    326 }
    327 
    328 bool_t
    329 xdr_rpc_loc_status_event_e_type (XDR *xdrs, rpc_loc_status_event_e_type *objp)
    330 {
    331 	register int32_t *buf;
    332 
    333 	 if (!xdr_enum (xdrs, (enum_t *) objp))
    334 		 return FALSE;
    335 	return TRUE;
    336 }
    337 
    338 bool_t
    339 xdr_rpc_loc_engine_state_e_type (XDR *xdrs, rpc_loc_engine_state_e_type *objp)
    340 {
    341 	register int32_t *buf;
    342 
    343 	 if (!xdr_enum (xdrs, (enum_t *) objp))
    344 		 return FALSE;
    345 	return TRUE;
    346 }
    347 
    348 bool_t
    349 xdr_rpc_loc_status_event_payload_u_type (XDR *xdrs, rpc_loc_status_event_payload_u_type *objp)
    350 {
    351 	register int32_t *buf;
    352 
    353 	 if (!xdr_rpc_loc_status_event_e_type (xdrs, &objp->disc))
    354 		 return FALSE;
    355 	switch (objp->disc) {
    356 	case RPC_LOC_STATUS_EVENT_ENGINE_STATE:
    357 		 if (!xdr_rpc_loc_engine_state_e_type (xdrs, &objp->rpc_loc_status_event_payload_u_type_u.engine_state))
    358 			 return FALSE;
    359 		break;
    360 	default:
    361 		break;
    362 	}
    363 	return TRUE;
    364 }
    365 
    366 bool_t
    367 xdr_rpc_loc_status_event_s_type (XDR *xdrs, rpc_loc_status_event_s_type *objp)
    368 {
    369 	register int32_t *buf;
    370 
    371 	 if (!xdr_rpc_loc_status_event_e_type (xdrs, &objp->event))
    372 		 return FALSE;
    373 	 if (!xdr_rpc_loc_status_event_payload_u_type (xdrs, &objp->payload))
    374 		 return FALSE;
    375 	return TRUE;
    376 }
    377 
    378 bool_t
    379 xdr_rpc_loc_server_addr_e_type (XDR *xdrs, rpc_loc_server_addr_e_type *objp)
    380 {
    381 	register int32_t *buf;
    382 
    383 	 if (!xdr_enum (xdrs, (enum_t *) objp))
    384 		 return FALSE;
    385 	return TRUE;
    386 }
    387 
    388 bool_t
    389 xdr_rpc_loc_server_addr_ipv4_type (XDR *xdrs, rpc_loc_server_addr_ipv4_type *objp)
    390 {
    391 	register int32_t *buf;
    392 
    393 	 if (!xdr_rpc_uint32 (xdrs, &objp->addr))
    394 		 return FALSE;
    395 	 if (!xdr_rpc_uint16 (xdrs, &objp->port))
    396 		 return FALSE;
    397 	return TRUE;
    398 }
    399 
    400 bool_t
    401 xdr_rpc_loc_server_addr_url_type (XDR *xdrs, rpc_loc_server_addr_url_type *objp)
    402 {
    403 	register int32_t *buf;
    404 
    405 	 if (!xdr_rpc_uint16 (xdrs, &objp->length))
    406 		 return FALSE;
    407 	 if (!xdr_bytes (xdrs, (char **)&objp->addr.addr_val, (u_int *) &objp->addr.addr_len, RPC_LOC_API_MAX_SERVER_ADDR_LENGTH))
    408 		 return FALSE;
    409 	return TRUE;
    410 }
    411 
    412 bool_t
    413 xdr_rpc_loc_server_addr_u_type (XDR *xdrs, rpc_loc_server_addr_u_type *objp)
    414 {
    415 	register int32_t *buf;
    416 
    417 	 if (!xdr_rpc_loc_server_addr_e_type (xdrs, &objp->disc))
    418 		 return FALSE;
    419 	switch (objp->disc) {
    420 	case RPC_LOC_SERVER_ADDR_IPV4:
    421 		 if (!xdr_rpc_loc_server_addr_ipv4_type (xdrs, &objp->rpc_loc_server_addr_u_type_u.ipv4))
    422 			 return FALSE;
    423 		break;
    424 	case RPC_LOC_SERVER_ADDR_URL:
    425 		 if (!xdr_rpc_loc_server_addr_url_type (xdrs, &objp->rpc_loc_server_addr_u_type_u.url))
    426 			 return FALSE;
    427 		break;
    428 	default:
    429 		break;
    430 	}
    431 	return TRUE;
    432 }
    433 
    434 bool_t
    435 xdr_rpc_loc_server_info_s_type (XDR *xdrs, rpc_loc_server_info_s_type *objp)
    436 {
    437 	register int32_t *buf;
    438 
    439 	 if (!xdr_rpc_loc_server_addr_e_type (xdrs, &objp->addr_type))
    440 		 return FALSE;
    441 	 if (!xdr_rpc_loc_server_addr_u_type (xdrs, &objp->addr_info))
    442 		 return FALSE;
    443 	return TRUE;
    444 }
    445 
    446 bool_t
    447 xdr_rpc_loc_ni_notify_verify_e_type (XDR *xdrs, rpc_loc_ni_notify_verify_e_type *objp)
    448 {
    449 	register int32_t *buf;
    450 
    451 	 if (!xdr_enum (xdrs, (enum_t *) objp))
    452 		 return FALSE;
    453 	return TRUE;
    454 }
    455 
    456 bool_t
    457 xdr_rpc_loc_ni_event_e_type (XDR *xdrs, rpc_loc_ni_event_e_type *objp)
    458 {
    459 	register int32_t *buf;
    460 
    461 	 if (!xdr_enum (xdrs, (enum_t *) objp))
    462 		 return FALSE;
    463 	return TRUE;
    464 }
    465 
    466 bool_t
    467 xdr_rpc_loc_ni_datacoding_scheme_e_type (XDR *xdrs, rpc_loc_ni_datacoding_scheme_e_type *objp)
    468 {
    469 	register int32_t *buf;
    470 
    471 	 if (!xdr_enum (xdrs, (enum_t *) objp))
    472 		 return FALSE;
    473 	return TRUE;
    474 }
    475 
    476 bool_t
    477 xdr_rpc_loc_ni_vx_requester_id_encoding_scheme_e_type (XDR *xdrs, rpc_loc_ni_vx_requester_id_encoding_scheme_e_type *objp)
    478 {
    479 	register int32_t *buf;
    480 
    481 	 if (!xdr_enum (xdrs, (enum_t *) objp))
    482 		 return FALSE;
    483 	return TRUE;
    484 }
    485 
    486 bool_t
    487 xdr_rpc_loc_ni_vx_pos_mode_e_type (XDR *xdrs, rpc_loc_ni_vx_pos_mode_e_type *objp)
    488 {
    489 	register int32_t *buf;
    490 
    491 	 if (!xdr_enum (xdrs, (enum_t *) objp))
    492 		 return FALSE;
    493 	return TRUE;
    494 }
    495 
    496 bool_t
    497 xdr_rpc_loc_ni_vx_requester_id_s_type (XDR *xdrs, rpc_loc_ni_vx_requester_id_s_type *objp)
    498 {
    499 	register int32_t *buf;
    500 
    501 	int i;
    502 	 if (!xdr_u_char (xdrs, &objp->requester_id_length))
    503 		 return FALSE;
    504 	 if (!xdr_opaque (xdrs, objp->requester_id, 200))
    505 		 return FALSE;
    506 	return TRUE;
    507 }
    508 
    509 bool_t
    510 xdr_rpc_loc_ni_vx_notify_verify_req_s_type (XDR *xdrs, rpc_loc_ni_vx_notify_verify_req_s_type *objp)
    511 {
    512 	register int32_t *buf;
    513 
    514 	 if (!xdr_rpc_loc_ni_notify_verify_e_type (xdrs, &objp->notification_priv_type))
    515 		 return FALSE;
    516 	 if (!xdr_u_char (xdrs, &objp->pos_qos_incl))
    517 		 return FALSE;
    518 	 if (!xdr_u_char (xdrs, &objp->pos_qos))
    519 		 return FALSE;
    520 	 if (!xdr_rpc_uint32 (xdrs, &objp->num_fixes))
    521 		 return FALSE;
    522 	 if (!xdr_rpc_uint32 (xdrs, &objp->tbf))
    523 		 return FALSE;
    524 	 if (!xdr_rpc_loc_ni_vx_pos_mode_e_type (xdrs, &objp->pos_mode))
    525 		 return FALSE;
    526 	 if (!xdr_rpc_loc_ni_vx_requester_id_encoding_scheme_e_type (xdrs, &objp->encoding_scheme))
    527 		 return FALSE;
    528 	 if (!xdr_rpc_loc_ni_vx_requester_id_s_type (xdrs, &objp->requester_id))
    529 		 return FALSE;
    530 	 if (!xdr_rpc_uint16 (xdrs, &objp->user_resp_timer_val))
    531 		 return FALSE;
    532 	return TRUE;
    533 }
    534 
    535 bool_t
    536 xdr_rpc_loc_ni_supl_pos_method_e_type (XDR *xdrs, rpc_loc_ni_supl_pos_method_e_type *objp)
    537 {
    538 	register int32_t *buf;
    539 
    540 	 if (!xdr_enum (xdrs, (enum_t *) objp))
    541 		 return FALSE;
    542 	return TRUE;
    543 }
    544 
    545 bool_t
    546 xdr_rpc_loc_ni_supl_slp_session_id_s_type (XDR *xdrs, rpc_loc_ni_supl_slp_session_id_s_type *objp)
    547 {
    548 	register int32_t *buf;
    549 
    550 	int i;
    551 	 if (!xdr_u_char (xdrs, &objp->presence))
    552 		 return FALSE;
    553 	 if (!xdr_opaque (xdrs, objp->session_id, 4))
    554 		 return FALSE;
    555 	 if (!xdr_rpc_loc_server_info_s_type (xdrs, &objp->slp_address))
    556 		 return FALSE;
    557 	return TRUE;
    558 }
    559 
    560 bool_t
    561 xdr_rpc_loc_ni_requestor_id_s_type (XDR *xdrs, rpc_loc_ni_requestor_id_s_type *objp)
    562 {
    563 	register int32_t *buf;
    564 
    565 	 if (!xdr_u_char (xdrs, &objp->data_coding_scheme))
    566 		 return FALSE;
    567 	 if (!xdr_bytes (xdrs, (char **)&objp->requestor_id_string.requestor_id_string_val, (u_int *) &objp->requestor_id_string.requestor_id_string_len, RPC_LOC_NI_MAX_REQUESTOR_ID_LENGTH))
    568 		 return FALSE;
    569 	 if (!xdr_u_char (xdrs, &objp->string_len))
    570 		 return FALSE;
    571 	return TRUE;
    572 }
    573 
    574 bool_t
    575 xdr_rpc_loc_ni_supl_client_name_s_type (XDR *xdrs, rpc_loc_ni_supl_client_name_s_type *objp)
    576 {
    577 	register int32_t *buf;
    578 
    579 	 if (!xdr_u_char (xdrs, &objp->data_coding_scheme))
    580 		 return FALSE;
    581 	 if (!xdr_bytes (xdrs, (char **)&objp->client_name_string.client_name_string_val, (u_int *) &objp->client_name_string.client_name_string_len, RPC_LOC_NI_MAX_CLIENT_NAME_LENGTH))
    582 		 return FALSE;
    583 	 if (!xdr_u_char (xdrs, &objp->string_len))
    584 		 return FALSE;
    585 	return TRUE;
    586 }
    587 
    588 bool_t
    589 xdr_rpc_loc_ni_supl_qop_s_type (XDR *xdrs, rpc_loc_ni_supl_qop_s_type *objp)
    590 {
    591 	register int32_t *buf;
    592 
    593 	 if (!xdr_u_char (xdrs, &objp->bit_mask))
    594 		 return FALSE;
    595 	 if (!xdr_u_char (xdrs, &objp->horacc))
    596 		 return FALSE;
    597 	 if (!xdr_u_char (xdrs, &objp->veracc))
    598 		 return FALSE;
    599 	 if (!xdr_u_char (xdrs, &objp->maxLocAge))
    600 		 return FALSE;
    601 	 if (!xdr_u_char (xdrs, &objp->delay))
    602 		 return FALSE;
    603 	return TRUE;
    604 }
    605 
    606 bool_t
    607 xdr_rpc_loc_ni_supl_notify_verify_req_s_type (XDR *xdrs, rpc_loc_ni_supl_notify_verify_req_s_type *objp)
    608 {
    609 	register int32_t *buf;
    610 
    611 	int i;
    612 	 if (!xdr_rpc_loc_ni_notify_verify_e_type (xdrs, &objp->notification_priv_type))
    613 		 return FALSE;
    614 	 if (!xdr_rpc_uint16 (xdrs, &objp->flags))
    615 		 return FALSE;
    616 	 if (!xdr_rpc_loc_ni_supl_slp_session_id_s_type (xdrs, &objp->supl_slp_session_id))
    617 		 return FALSE;
    618 	 if (!xdr_opaque (xdrs, objp->supl_hash, 8))
    619 		 return FALSE;
    620 	 if (!xdr_rpc_loc_ni_datacoding_scheme_e_type (xdrs, &objp->datacoding_scheme))
    621 		 return FALSE;
    622 	 if (!xdr_rpc_loc_ni_supl_pos_method_e_type (xdrs, &objp->pos_method))
    623 		 return FALSE;
    624 	 if (!xdr_rpc_loc_ni_requestor_id_s_type (xdrs, &objp->requestor_id))
    625 		 return FALSE;
    626 	 if (!xdr_rpc_loc_ni_supl_client_name_s_type (xdrs, &objp->client_name))
    627 		 return FALSE;
    628 	 if (!xdr_rpc_loc_ni_supl_qop_s_type (xdrs, &objp->supl_qop))
    629 		 return FALSE;
    630 	 if (!xdr_rpc_uint16 (xdrs, &objp->user_response_timer))
    631 		 return FALSE;
    632 	return TRUE;
    633 }
    634 
    635 bool_t
    636 xdr_rpc_loc_ni_ext_client_address_s_type (XDR *xdrs, rpc_loc_ni_ext_client_address_s_type *objp)
    637 {
    638 	register int32_t *buf;
    639 
    640 	 if (!xdr_u_char (xdrs, &objp->ext_client_address_len))
    641 		 return FALSE;
    642 	 if (!xdr_bytes (xdrs, (char **)&objp->ext_client_address.ext_client_address_val, (u_int *) &objp->ext_client_address.ext_client_address_len, RPC_LOC_NI_MAX_EXT_CLIENT_ADDRESS))
    643 		 return FALSE;
    644 	return TRUE;
    645 }
    646 
    647 bool_t
    648 xdr_rpc_loc_ni_location_type_e_type (XDR *xdrs, rpc_loc_ni_location_type_e_type *objp)
    649 {
    650 	register int32_t *buf;
    651 
    652 	 if (!xdr_enum (xdrs, (enum_t *) objp))
    653 		 return FALSE;
    654 	return TRUE;
    655 }
    656 
    657 bool_t
    658 xdr_rpc_loc_ni_deferred_location_s_type (XDR *xdrs, rpc_loc_ni_deferred_location_s_type *objp)
    659 {
    660 	register int32_t *buf;
    661 
    662 	 if (!xdr_u_char (xdrs, &objp->unused_bits))
    663 		 return FALSE;
    664 	 if (!xdr_u_char (xdrs, &objp->ms_available))
    665 		 return FALSE;
    666 	return TRUE;
    667 }
    668 
    669 bool_t
    670 xdr_rpc_loc_ni_codeword_string_s_type (XDR *xdrs, rpc_loc_ni_codeword_string_s_type *objp)
    671 {
    672 	register int32_t *buf;
    673 
    674 	 if (!xdr_u_char (xdrs, &objp->data_coding_scheme))
    675 		 return FALSE;
    676 	 if (!xdr_bytes (xdrs, (char **)&objp->lcs_codeword_string.lcs_codeword_string_val, (u_int *) &objp->lcs_codeword_string.lcs_codeword_string_len, RPC_LOC_NI_CODEWORD_LENGTH))
    677 		 return FALSE;
    678 	 if (!xdr_u_char (xdrs, &objp->string_len))
    679 		 return FALSE;
    680 	return TRUE;
    681 }
    682 
    683 bool_t
    684 xdr_rpc_loc_ni_service_type_id_s_type (XDR *xdrs, rpc_loc_ni_service_type_id_s_type *objp)
    685 {
    686 	register int32_t *buf;
    687 
    688 	 if (!xdr_u_char (xdrs, &objp->lcs_service_type_id))
    689 		 return FALSE;
    690 	return TRUE;
    691 }
    692 
    693 bool_t
    694 xdr_rpc_loc_ni_umts_cp_notify_verify_req_s_type (XDR *xdrs, rpc_loc_ni_umts_cp_notify_verify_req_s_type *objp)
    695 {
    696 	register int32_t *buf;
    697 
    698 	 if (!xdr_rpc_loc_ni_notify_verify_e_type (xdrs, &objp->notification_priv_type))
    699 		 return FALSE;
    700 	 if (!xdr_u_char (xdrs, &objp->invoke_id))
    701 		 return FALSE;
    702 	 if (!xdr_rpc_uint16 (xdrs, &objp->flags))
    703 		 return FALSE;
    704 	 if (!xdr_u_char (xdrs, &objp->notification_length))
    705 		 return FALSE;
    706 	 if (!xdr_bytes (xdrs, (char **)&objp->notification_text.notification_text_val, (u_int *) &objp->notification_text.notification_text_len, RPC_LOC_NI_MAX_CLIENT_NAME_LENGTH))
    707 		 return FALSE;
    708 	 if (!xdr_rpc_loc_ni_datacoding_scheme_e_type (xdrs, &objp->datacoding_scheme))
    709 		 return FALSE;
    710 	 if (!xdr_rpc_loc_ni_ext_client_address_s_type (xdrs, &objp->ext_client_address_data))
    711 		 return FALSE;
    712 	 if (!xdr_rpc_loc_ni_location_type_e_type (xdrs, &objp->location_type))
    713 		 return FALSE;
    714 	 if (!xdr_rpc_loc_ni_deferred_location_s_type (xdrs, &objp->deferred_location))
    715 		 return FALSE;
    716 	 if (!xdr_rpc_loc_ni_requestor_id_s_type (xdrs, &objp->requestor_id))
    717 		 return FALSE;
    718 	 if (!xdr_rpc_loc_ni_codeword_string_s_type (xdrs, &objp->codeword_string))
    719 		 return FALSE;
    720 	 if (!xdr_rpc_loc_ni_service_type_id_s_type (xdrs, &objp->service_type_id))
    721 		 return FALSE;
    722 	 if (!xdr_rpc_uint16 (xdrs, &objp->user_response_timer))
    723 		 return FALSE;
    724 	return TRUE;
    725 }
    726 
    727 bool_t
    728 xdr_rpc_loc_ni_event_payload_u_type (XDR *xdrs, rpc_loc_ni_event_payload_u_type *objp)
    729 {
    730 	register int32_t *buf;
    731 
    732 	 if (!xdr_rpc_loc_ni_event_e_type (xdrs, &objp->disc))
    733 		 return FALSE;
    734 	switch (objp->disc) {
    735 	case RPC_LOC_NI_EVENT_VX_NOTIFY_VERIFY_REQ:
    736 		 if (!xdr_rpc_loc_ni_vx_notify_verify_req_s_type (xdrs, &objp->rpc_loc_ni_event_payload_u_type_u.vx_req))
    737 			 return FALSE;
    738 		break;
    739 	case RPC_LOC_NI_EVENT_SUPL_NOTIFY_VERIFY_REQ:
    740 		 if (!xdr_rpc_loc_ni_supl_notify_verify_req_s_type (xdrs, &objp->rpc_loc_ni_event_payload_u_type_u.supl_req))
    741 			 return FALSE;
    742 		break;
    743 	case RPC_LOC_NI_EVENT_UMTS_CP_NOTIFY_VERIFY_REQ:
    744 		 if (!xdr_rpc_loc_ni_umts_cp_notify_verify_req_s_type (xdrs, &objp->rpc_loc_ni_event_payload_u_type_u.umts_cp_req))
    745 			 return FALSE;
    746 		break;
    747 	default:
    748 		break;
    749 	}
    750 	return TRUE;
    751 }
    752 
    753 bool_t
    754 xdr_rpc_loc_ni_event_s_type (XDR *xdrs, rpc_loc_ni_event_s_type *objp)
    755 {
    756 	register int32_t *buf;
    757 
    758 	 if (!xdr_rpc_loc_ni_event_e_type (xdrs, &objp->event))
    759 		 return FALSE;
    760 	 if (!xdr_rpc_loc_ni_event_payload_u_type (xdrs, &objp->payload))
    761 		 return FALSE;
    762 	return TRUE;
    763 }
    764 
    765 bool_t
    766 xdr_rpc_loc_assist_data_request_e_type (XDR *xdrs, rpc_loc_assist_data_request_e_type *objp)
    767 {
    768 	register int32_t *buf;
    769 
    770 	 if (!xdr_enum (xdrs, (enum_t *) objp))
    771 		 return FALSE;
    772 	return TRUE;
    773 }
    774 
    775 bool_t
    776 xdr_rpc_struct_loc_time_download_source_s_type_servers_ptr (XDR *xdrs, rpc_struct_loc_time_download_source_s_type_servers_ptr *objp)
    777 {
    778 	register int32_t *buf;
    779 
    780 	 if (!xdr_string (xdrs, objp, RPC_LOC_API_MAX_SERVER_ADDR_LENGTH))
    781 		 return FALSE;
    782 	return TRUE;
    783 }
    784 
    785 bool_t
    786 xdr_rpc_struct_loc_time_download_source_s_type_servers (XDR *xdrs, rpc_struct_loc_time_download_source_s_type_servers objp)
    787 {
    788 	register int32_t *buf;
    789 
    790 	 if (!xdr_vector (xdrs, (char *)objp, 3,
    791 		sizeof (rpc_struct_loc_time_download_source_s_type_servers_ptr), (xdrproc_t) xdr_rpc_struct_loc_time_download_source_s_type_servers_ptr))
    792 		 return FALSE;
    793 	return TRUE;
    794 }
    795 
    796 bool_t
    797 xdr_rpc_loc_time_download_source_s_type (XDR *xdrs, rpc_loc_time_download_source_s_type *objp)
    798 {
    799 	register int32_t *buf;
    800 
    801 	 if (!xdr_rpc_uint32 (xdrs, &objp->delay_threshold))
    802 		 return FALSE;
    803 	 if (!xdr_rpc_struct_loc_time_download_source_s_type_servers (xdrs, objp->servers))
    804 		 return FALSE;
    805 	return TRUE;
    806 }
    807 
    808 bool_t
    809 xdr_rpc_struct_loc_predicted_orbits_data_source_s_type_servers_ptr (XDR *xdrs, rpc_struct_loc_predicted_orbits_data_source_s_type_servers_ptr *objp)
    810 {
    811 	register int32_t *buf;
    812 
    813 	 if (!xdr_string (xdrs, objp, RPC_LOC_API_MAX_SERVER_ADDR_LENGTH))
    814 		 return FALSE;
    815 	return TRUE;
    816 }
    817 
    818 bool_t
    819 xdr_rpc_struct_loc_predicted_orbits_data_source_s_type_servers (XDR *xdrs, rpc_struct_loc_predicted_orbits_data_source_s_type_servers objp)
    820 {
    821 	register int32_t *buf;
    822 
    823 	 if (!xdr_vector (xdrs, (char *)objp, 3,
    824 		sizeof (rpc_struct_loc_predicted_orbits_data_source_s_type_servers_ptr), (xdrproc_t) xdr_rpc_struct_loc_predicted_orbits_data_source_s_type_servers_ptr))
    825 		 return FALSE;
    826 	return TRUE;
    827 }
    828 
    829 bool_t
    830 xdr_rpc_loc_predicted_orbits_data_source_s_type (XDR *xdrs, rpc_loc_predicted_orbits_data_source_s_type *objp)
    831 {
    832 	register int32_t *buf;
    833 
    834 	 if (!xdr_rpc_uint32 (xdrs, &objp->max_file_size))
    835 		 return FALSE;
    836 	 if (!xdr_rpc_uint32 (xdrs, &objp->max_part_size))
    837 		 return FALSE;
    838 	 if (!xdr_rpc_struct_loc_predicted_orbits_data_source_s_type_servers (xdrs, objp->servers))
    839 		 return FALSE;
    840 	return TRUE;
    841 }
    842 
    843 bool_t
    844 xdr_rpc_loc_assist_data_request_payload_u_type (XDR *xdrs, rpc_loc_assist_data_request_payload_u_type *objp)
    845 {
    846 	register int32_t *buf;
    847 
    848 	 if (!xdr_rpc_loc_assist_data_request_e_type (xdrs, &objp->disc))
    849 		 return FALSE;
    850 	switch (objp->disc) {
    851 	case RPC_LOC_ASSIST_DATA_TIME_REQ:
    852 		 if (!xdr_rpc_loc_time_download_source_s_type (xdrs, &objp->rpc_loc_assist_data_request_payload_u_type_u.time_download))
    853 			 return FALSE;
    854 		break;
    855 	case RPC_LOC_ASSIST_DATA_PREDICTED_ORBITS_REQ:
    856 		 if (!xdr_rpc_loc_predicted_orbits_data_source_s_type (xdrs, &objp->rpc_loc_assist_data_request_payload_u_type_u.data_download))
    857 			 return FALSE;
    858 		break;
    859 	default:
    860 		break;
    861 	}
    862 	return TRUE;
    863 }
    864 
    865 bool_t
    866 xdr_rpc_loc_assist_data_request_s_type (XDR *xdrs, rpc_loc_assist_data_request_s_type *objp)
    867 {
    868 	register int32_t *buf;
    869 
    870 	 if (!xdr_rpc_loc_assist_data_request_e_type (xdrs, &objp->event))
    871 		 return FALSE;
    872 	 if (!xdr_rpc_loc_assist_data_request_payload_u_type (xdrs, &objp->payload))
    873 		 return FALSE;
    874 	return TRUE;
    875 }
    876 
    877 bool_t
    878 xdr_rpc_loc_server_connection_handle (XDR *xdrs, rpc_loc_server_connection_handle *objp)
    879 {
    880 	register int32_t *buf;
    881 
    882 	 if (!xdr_rpc_uint32 (xdrs, objp))
    883 		 return FALSE;
    884 	return TRUE;
    885 }
    886 
    887 bool_t
    888 xdr_rpc_loc_server_protocol_e_type (XDR *xdrs, rpc_loc_server_protocol_e_type *objp)
    889 {
    890 	register int32_t *buf;
    891 
    892 	 if (!xdr_enum (xdrs, (enum_t *) objp))
    893 		 return FALSE;
    894 	return TRUE;
    895 }
    896 
    897 bool_t
    898 xdr_rpc_loc_server_request_e_type (XDR *xdrs, rpc_loc_server_request_e_type *objp)
    899 {
    900 	register int32_t *buf;
    901 
    902 	 if (!xdr_enum (xdrs, (enum_t *) objp))
    903 		 return FALSE;
    904 	return TRUE;
    905 }
    906 
    907 bool_t
    908 xdr_rpc_loc_server_open_req_s_type (XDR *xdrs, rpc_loc_server_open_req_s_type *objp)
    909 {
    910 	register int32_t *buf;
    911 
    912 	 if (!xdr_rpc_loc_server_connection_handle (xdrs, &objp->conn_handle))
    913 		 return FALSE;
    914 	 if (!xdr_rpc_loc_server_protocol_e_type (xdrs, &objp->protocol))
    915 		 return FALSE;
    916 	return TRUE;
    917 }
    918 
    919 bool_t
    920 xdr_rpc_loc_server_close_req_s_type (XDR *xdrs, rpc_loc_server_close_req_s_type *objp)
    921 {
    922 	register int32_t *buf;
    923 
    924 	 if (!xdr_rpc_loc_server_connection_handle (xdrs, &objp->conn_handle))
    925 		 return FALSE;
    926 	return TRUE;
    927 }
    928 
    929 bool_t
    930 xdr_rpc_loc_server_request_u_type (XDR *xdrs, rpc_loc_server_request_u_type *objp)
    931 {
    932 	register int32_t *buf;
    933 
    934 	 if (!xdr_rpc_loc_server_request_e_type (xdrs, &objp->disc))
    935 		 return FALSE;
    936 	switch (objp->disc) {
    937 	case RPC_LOC_SERVER_REQUEST_OPEN:
    938 		 if (!xdr_rpc_loc_server_open_req_s_type (xdrs, &objp->rpc_loc_server_request_u_type_u.open_req))
    939 			 return FALSE;
    940 		break;
    941 	case RPC_LOC_SERVER_REQUEST_CLOSE:
    942 		 if (!xdr_rpc_loc_server_close_req_s_type (xdrs, &objp->rpc_loc_server_request_u_type_u.close_req))
    943 			 return FALSE;
    944 		break;
    945 	default:
    946 		break;
    947 	}
    948 	return TRUE;
    949 }
    950 
    951 bool_t
    952 xdr_rpc_loc_server_request_s_type (XDR *xdrs, rpc_loc_server_request_s_type *objp)
    953 {
    954 	register int32_t *buf;
    955 
    956 	 if (!xdr_rpc_loc_server_request_e_type (xdrs, &objp->event))
    957 		 return FALSE;
    958 	 if (!xdr_rpc_loc_server_request_u_type (xdrs, &objp->payload))
    959 		 return FALSE;
    960 	return TRUE;
    961 }
    962 
    963 bool_t
    964 xdr_rpc_loc_reserved_payload_s_type (XDR *xdrs, rpc_loc_reserved_payload_s_type *objp)
    965 {
    966 	register int32_t *buf;
    967 
    968 	 if (!xdr_rpc_uint16 (xdrs, &objp->data_size))
    969 		 return FALSE;
    970 	 if (!xdr_bytes (xdrs, (char **)&objp->data.data_val, (u_int *) &objp->data.data_len, ~0))
    971 		 return FALSE;
    972 	return TRUE;
    973 }
    974 
    975 bool_t
    976 xdr_rpc_loc_ioctl_e_type (XDR *xdrs, rpc_loc_ioctl_e_type *objp)
    977 {
    978 	register int32_t *buf;
    979 
    980 	 if (!xdr_enum (xdrs, (enum_t *) objp))
    981 		 return FALSE;
    982 	return TRUE;
    983 }
    984 
    985 bool_t
    986 xdr_rpc_loc_api_version_s_type (XDR *xdrs, rpc_loc_api_version_s_type *objp)
    987 {
    988 	register int32_t *buf;
    989 
    990 	 if (!xdr_u_char (xdrs, &objp->major))
    991 		 return FALSE;
    992 	 if (!xdr_u_char (xdrs, &objp->minor))
    993 		 return FALSE;
    994 	return TRUE;
    995 }
    996 
    997 bool_t
    998 xdr_rpc_loc_fix_recurrence_e_type (XDR *xdrs, rpc_loc_fix_recurrence_e_type *objp)
    999 {
   1000 	register int32_t *buf;
   1001 
   1002 	 if (!xdr_enum (xdrs, (enum_t *) objp))
   1003 		 return FALSE;
   1004 	return TRUE;
   1005 }
   1006 
   1007 bool_t
   1008 xdr_rpc_loc_operation_mode_e_type (XDR *xdrs, rpc_loc_operation_mode_e_type *objp)
   1009 {
   1010 	register int32_t *buf;
   1011 
   1012 	 if (!xdr_enum (xdrs, (enum_t *) objp))
   1013 		 return FALSE;
   1014 	return TRUE;
   1015 }
   1016 
   1017 bool_t
   1018 xdr_rpc_loc_notify_e_type (XDR *xdrs, rpc_loc_notify_e_type *objp)
   1019 {
   1020 	register int32_t *buf;
   1021 
   1022 	 if (!xdr_enum (xdrs, (enum_t *) objp))
   1023 		 return FALSE;
   1024 	return TRUE;
   1025 }
   1026 
   1027 bool_t
   1028 xdr_rpc_loc_fix_criteria_s_type (XDR *xdrs, rpc_loc_fix_criteria_s_type *objp)
   1029 {
   1030 	register int32_t *buf;
   1031 
   1032 	 if (!xdr_rpc_uint32 (xdrs, &objp->valid_mask))
   1033 		 return FALSE;
   1034 	 if (!xdr_rpc_loc_fix_recurrence_e_type (xdrs, &objp->recurrence_type))
   1035 		 return FALSE;
   1036 	 if (!xdr_rpc_loc_operation_mode_e_type (xdrs, &objp->preferred_operation_mode))
   1037 		 return FALSE;
   1038 	 if (!xdr_rpc_uint32 (xdrs, &objp->preferred_accuracy))
   1039 		 return FALSE;
   1040 	 if (!xdr_rpc_uint32 (xdrs, &objp->preferred_response_time))
   1041 		 return FALSE;
   1042 	 if (!xdr_rpc_boolean (xdrs, &objp->intermediate_pos_report_enabled))
   1043 		 return FALSE;
   1044 	 if (!xdr_rpc_loc_notify_e_type (xdrs, &objp->notify_type))
   1045 		 return FALSE;
   1046 	 if (!xdr_rpc_uint32 (xdrs, &objp->min_interval))
   1047 		 return FALSE;
   1048 	 if (!xdr_float (xdrs, &objp->min_distance))
   1049 		 return FALSE;
   1050 	 if (!xdr_rpc_uint32 (xdrs, &objp->min_dist_sample_interval))
   1051 		 return FALSE;
   1052 	return TRUE;
   1053 }
   1054 
   1055 bool_t
   1056 xdr_rpc_loc_ni_user_resp_e_type (XDR *xdrs, rpc_loc_ni_user_resp_e_type *objp)
   1057 {
   1058 	register int32_t *buf;
   1059 
   1060 	 if (!xdr_enum (xdrs, (enum_t *) objp))
   1061 		 return FALSE;
   1062 	return TRUE;
   1063 }
   1064 
   1065 bool_t
   1066 xdr_rpc_loc_user_verify_s_type (XDR *xdrs, rpc_loc_user_verify_s_type *objp)
   1067 {
   1068 	register int32_t *buf;
   1069 
   1070 	 if (!xdr_rpc_loc_ni_user_resp_e_type (xdrs, &objp->user_resp))
   1071 		 return FALSE;
   1072 	 if (!xdr_rpc_loc_ni_event_s_type (xdrs, &objp->ni_event_pass_back))
   1073 		 return FALSE;
   1074 	return TRUE;
   1075 }
   1076 
   1077 bool_t
   1078 xdr_rpc_loc_predicted_orbits_data_format_e_type (XDR *xdrs, rpc_loc_predicted_orbits_data_format_e_type *objp)
   1079 {
   1080 	register int32_t *buf;
   1081 
   1082 	 if (!xdr_enum (xdrs, (enum_t *) objp))
   1083 		 return FALSE;
   1084 	return TRUE;
   1085 }
   1086 
   1087 bool_t
   1088 xdr_rpc_loc_predicted_orbits_data_s_type (XDR *xdrs, rpc_loc_predicted_orbits_data_s_type *objp)
   1089 {
   1090 	register int32_t *buf;
   1091 
   1092 	 if (!xdr_rpc_loc_predicted_orbits_data_format_e_type (xdrs, &objp->format_type))
   1093 		 return FALSE;
   1094 	 if (!xdr_rpc_uint32 (xdrs, &objp->total_size))
   1095 		 return FALSE;
   1096 	 if (!xdr_rpc_uint8 (xdrs, &objp->total_parts))
   1097 		 return FALSE;
   1098 	 if (!xdr_rpc_uint8 (xdrs, &objp->part))
   1099 		 return FALSE;
   1100 	 if (!xdr_rpc_uint16 (xdrs, &objp->part_len))
   1101 		 return FALSE;
   1102 	 if (!xdr_bytes (xdrs, (char **)&objp->data_ptr.data_ptr_val, (u_int *) &objp->data_ptr.data_ptr_len, ~0))
   1103 		 return FALSE;
   1104 	return TRUE;
   1105 }
   1106 
   1107 bool_t
   1108 xdr_rpc_loc_predicted_orbits_data_validity_report_s_type (XDR *xdrs, rpc_loc_predicted_orbits_data_validity_report_s_type *objp)
   1109 {
   1110 	register int32_t *buf;
   1111 
   1112 	 if (!xdr_rpc_uint64 (xdrs, &objp->start_time_utc))
   1113 		 return FALSE;
   1114 	 if (!xdr_rpc_uint16 (xdrs, &objp->valid_duration_hrs))
   1115 		 return FALSE;
   1116 	return TRUE;
   1117 }
   1118 
   1119 bool_t
   1120 xdr_rpc_loc_predicted_orbits_auto_download_config_s_type (XDR *xdrs, rpc_loc_predicted_orbits_auto_download_config_s_type *objp)
   1121 {
   1122 	register int32_t *buf;
   1123 
   1124 	 if (!xdr_rpc_boolean (xdrs, &objp->enable))
   1125 		 return FALSE;
   1126 	 if (!xdr_u_char (xdrs, &objp->auto_check_every_hrs))
   1127 		 return FALSE;
   1128 	return TRUE;
   1129 }
   1130 
   1131 bool_t
   1132 xdr_rpc_loc_assist_data_time_s_type (XDR *xdrs, rpc_loc_assist_data_time_s_type *objp)
   1133 {
   1134 	register int32_t *buf;
   1135 
   1136 	 if (!xdr_rpc_uint64 (xdrs, &objp->time_utc))
   1137 		 return FALSE;
   1138 	 if (!xdr_rpc_uint32 (xdrs, &objp->uncertainty))
   1139 		 return FALSE;
   1140 	return TRUE;
   1141 }
   1142 
   1143 bool_t
   1144 xdr_rpc_loc_assist_pos_valid_mask_type (XDR *xdrs, rpc_loc_assist_pos_valid_mask_type *objp)
   1145 {
   1146 	register int32_t *buf;
   1147 
   1148 	 if (!xdr_rpc_uint64 (xdrs, objp))
   1149 		 return FALSE;
   1150 	return TRUE;
   1151 }
   1152 
   1153 bool_t
   1154 xdr_rpc_loc_assist_data_pos_s_type (XDR *xdrs, rpc_loc_assist_data_pos_s_type *objp)
   1155 {
   1156 	register int32_t *buf;
   1157 
   1158 	 if (!xdr_rpc_loc_assist_pos_valid_mask_type (xdrs, &objp->valid_mask))
   1159 		 return FALSE;
   1160 	 if (!xdr_rpc_uint64 (xdrs, &objp->timestamp_utc))
   1161 		 return FALSE;
   1162 	 if (!xdr_double (xdrs, &objp->latitude))
   1163 		 return FALSE;
   1164 	 if (!xdr_double (xdrs, &objp->longitude))
   1165 		 return FALSE;
   1166 	 if (!xdr_float (xdrs, &objp->altitude_wrt_ellipsoid))
   1167 		 return FALSE;
   1168 	 if (!xdr_float (xdrs, &objp->altitude_wrt_mean_sea_level))
   1169 		 return FALSE;
   1170 	 if (!xdr_float (xdrs, &objp->hor_unc_circular))
   1171 		 return FALSE;
   1172 	 if (!xdr_float (xdrs, &objp->vert_unc))
   1173 		 return FALSE;
   1174 	 if (!xdr_u_char (xdrs, &objp->confidence_horizontal))
   1175 		 return FALSE;
   1176 	 if (!xdr_u_char (xdrs, &objp->confidence_vertical))
   1177 		 return FALSE;
   1178 	return TRUE;
   1179 }
   1180 
   1181 bool_t
   1182 xdr_rpc_loc_server_open_status_e_type (XDR *xdrs, rpc_loc_server_open_status_e_type *objp)
   1183 {
   1184 	register int32_t *buf;
   1185 
   1186 	 if (!xdr_enum (xdrs, (enum_t *) objp))
   1187 		 return FALSE;
   1188 	return TRUE;
   1189 }
   1190 
   1191 bool_t
   1192 xdr_rpc_loc_server_open_status_s_type (XDR *xdrs, rpc_loc_server_open_status_s_type *objp)
   1193 {
   1194 	register int32_t *buf;
   1195 
   1196 	 if (!xdr_rpc_loc_server_connection_handle (xdrs, &objp->conn_handle))
   1197 		 return FALSE;
   1198 	 if (!xdr_rpc_loc_server_open_status_e_type (xdrs, &objp->open_status))
   1199 		 return FALSE;
   1200 	 if (!xdr_string (xdrs, &objp->apn_name, ~0))
   1201 		 return FALSE;
   1202 	return TRUE;
   1203 }
   1204 
   1205 bool_t
   1206 xdr_rpc_loc_server_close_status_e_type (XDR *xdrs, rpc_loc_server_close_status_e_type *objp)
   1207 {
   1208 	register int32_t *buf;
   1209 
   1210 	 if (!xdr_enum (xdrs, (enum_t *) objp))
   1211 		 return FALSE;
   1212 	return TRUE;
   1213 }
   1214 
   1215 bool_t
   1216 xdr_rpc_loc_server_close_status_s_type (XDR *xdrs, rpc_loc_server_close_status_s_type *objp)
   1217 {
   1218 	register int32_t *buf;
   1219 
   1220 	 if (!xdr_rpc_loc_server_connection_handle (xdrs, &objp->conn_handle))
   1221 		 return FALSE;
   1222 	 if (!xdr_rpc_loc_server_close_status_e_type (xdrs, &objp->close_status))
   1223 		 return FALSE;
   1224 	return TRUE;
   1225 }
   1226 
   1227 bool_t
   1228 xdr_rpc_loc_lock_e_type (XDR *xdrs, rpc_loc_lock_e_type *objp)
   1229 {
   1230 	register int32_t *buf;
   1231 
   1232 	 if (!xdr_enum (xdrs, (enum_t *) objp))
   1233 		 return FALSE;
   1234 	return TRUE;
   1235 }
   1236 
   1237 bool_t
   1238 xdr_rpc_loc_nmea_sentence_type (XDR *xdrs, rpc_loc_nmea_sentence_type *objp)
   1239 {
   1240 	register int32_t *buf;
   1241 
   1242 	 if (!xdr_rpc_uint32 (xdrs, objp))
   1243 		 return FALSE;
   1244 	return TRUE;
   1245 }
   1246 
   1247 bool_t
   1248 xdr_rpc_loc_assist_data_type (XDR *xdrs, rpc_loc_assist_data_type *objp)
   1249 {
   1250 	register int32_t *buf;
   1251 
   1252 	 if (!xdr_rpc_uint32 (xdrs, objp))
   1253 		 return FALSE;
   1254 	return TRUE;
   1255 }
   1256 
   1257 bool_t
   1258 xdr_rpc_loc_assist_data_delete_s_type (XDR *xdrs, rpc_loc_assist_data_delete_s_type *objp)
   1259 {
   1260 	register int32_t *buf;
   1261 
   1262 	int i;
   1263 	 if (!xdr_rpc_loc_assist_data_type (xdrs, &objp->type))
   1264 		 return FALSE;
   1265 	 if (!xdr_vector (xdrs, (char *)objp->reserved, 8,
   1266 		sizeof (rpc_uint32), (xdrproc_t) xdr_rpc_uint32))
   1267 		 return FALSE;
   1268 	return TRUE;
   1269 }
   1270 
   1271 bool_t
   1272 xdr_rpc_loc_ioctl_data_u_type (XDR *xdrs, rpc_loc_ioctl_data_u_type *objp)
   1273 {
   1274 	register int32_t *buf;
   1275 
   1276 	 if (!xdr_rpc_loc_ioctl_e_type (xdrs, &objp->disc))
   1277 		 return FALSE;
   1278 	switch (objp->disc) {
   1279 	case RPC_LOC_IOCTL_SET_FIX_CRITERIA:
   1280 		 if (!xdr_rpc_loc_fix_criteria_s_type (xdrs, &objp->rpc_loc_ioctl_data_u_type_u.fix_criteria))
   1281 			 return FALSE;
   1282 		break;
   1283 	case RPC_LOC_IOCTL_INFORM_NI_USER_RESPONSE:
   1284 		 if (!xdr_rpc_loc_user_verify_s_type (xdrs, &objp->rpc_loc_ioctl_data_u_type_u.user_verify_resp))
   1285 			 return FALSE;
   1286 		break;
   1287 	case RPC_LOC_IOCTL_INJECT_PREDICTED_ORBITS_DATA:
   1288 		 if (!xdr_rpc_loc_predicted_orbits_data_s_type (xdrs, &objp->rpc_loc_ioctl_data_u_type_u.predicted_orbits_data))
   1289 			 return FALSE;
   1290 		break;
   1291 	case RPC_LOC_IOCTL_SET_PREDICTED_ORBITS_DATA_AUTO_DOWNLOAD:
   1292 		 if (!xdr_rpc_loc_predicted_orbits_auto_download_config_s_type (xdrs, &objp->rpc_loc_ioctl_data_u_type_u.predicted_orbits_auto_download))
   1293 			 return FALSE;
   1294 		break;
   1295 	case RPC_LOC_IOCTL_INJECT_UTC_TIME:
   1296 		 if (!xdr_rpc_loc_assist_data_time_s_type (xdrs, &objp->rpc_loc_ioctl_data_u_type_u.assistance_data_time))
   1297 			 return FALSE;
   1298 		break;
   1299 	case RPC_LOC_IOCTL_INJECT_POSITION:
   1300 		 if (!xdr_rpc_loc_assist_data_pos_s_type (xdrs, &objp->rpc_loc_ioctl_data_u_type_u.assistance_data_position))
   1301 			 return FALSE;
   1302 		break;
   1303 	case RPC_LOC_IOCTL_INFORM_SERVER_OPEN_STATUS:
   1304 		 if (!xdr_rpc_loc_server_open_status_s_type (xdrs, &objp->rpc_loc_ioctl_data_u_type_u.conn_open_status))
   1305 			 return FALSE;
   1306 		break;
   1307 	case RPC_LOC_IOCTL_INFORM_SERVER_CLOSE_STATUS:
   1308 		 if (!xdr_rpc_loc_server_close_status_s_type (xdrs, &objp->rpc_loc_ioctl_data_u_type_u.conn_close_status))
   1309 			 return FALSE;
   1310 		break;
   1311 	case RPC_LOC_IOCTL_SET_ENGINE_LOCK:
   1312 		 if (!xdr_rpc_loc_lock_e_type (xdrs, &objp->rpc_loc_ioctl_data_u_type_u.engine_lock))
   1313 			 return FALSE;
   1314 		break;
   1315 	case RPC_LOC_IOCTL_SET_SBAS_CONFIG:
   1316 		 if (!xdr_rpc_boolean (xdrs, &objp->rpc_loc_ioctl_data_u_type_u.sbas_mode))
   1317 			 return FALSE;
   1318 		break;
   1319 	case RPC_LOC_IOCTL_SET_NMEA_TYPES:
   1320 		 if (!xdr_rpc_loc_nmea_sentence_type (xdrs, &objp->rpc_loc_ioctl_data_u_type_u.nmea_types))
   1321 			 return FALSE;
   1322 		break;
   1323 	case RPC_LOC_IOCTL_SET_ON_DEMAND_LPM:
   1324 		 if (!xdr_rpc_boolean (xdrs, &objp->rpc_loc_ioctl_data_u_type_u.on_demand_lpm))
   1325 			 return FALSE;
   1326 		break;
   1327 	case RPC_LOC_IOCTL_SET_CDMA_PDE_SERVER_ADDR:
   1328 	case RPC_LOC_IOCTL_SET_CDMA_MPC_SERVER_ADDR:
   1329 	case RPC_LOC_IOCTL_SET_UMTS_SLP_SERVER_ADDR:
   1330 	case RPC_LOC_IOCTL_SET_CUSTOM_PDE_SERVER_ADDR:
   1331 		 if (!xdr_rpc_loc_server_info_s_type (xdrs, &objp->rpc_loc_ioctl_data_u_type_u.server_addr))
   1332 			 return FALSE;
   1333 		break;
   1334 	case RPC_LOC_IOCTL_DELETE_ASSIST_DATA:
   1335 		 if (!xdr_rpc_loc_assist_data_delete_s_type (xdrs, &objp->rpc_loc_ioctl_data_u_type_u.assist_data_delete))
   1336 			 return FALSE;
   1337 		break;
   1338 	default:
   1339 		break;
   1340 	}
   1341 	return TRUE;
   1342 }
   1343 
   1344 bool_t
   1345 xdr_rpc_loc_ioctl_callback_data_u_type (XDR *xdrs, rpc_loc_ioctl_callback_data_u_type *objp)
   1346 {
   1347 	register int32_t *buf;
   1348 
   1349 	 if (!xdr_rpc_loc_ioctl_e_type (xdrs, &objp->disc))
   1350 		 return FALSE;
   1351 	switch (objp->disc) {
   1352 	case RPC_LOC_IOCTL_GET_API_VERSION:
   1353 		 if (!xdr_rpc_loc_api_version_s_type (xdrs, &objp->rpc_loc_ioctl_callback_data_u_type_u.api_version))
   1354 			 return FALSE;
   1355 		break;
   1356 	case RPC_LOC_IOCTL_GET_FIX_CRITERIA:
   1357 		 if (!xdr_rpc_loc_fix_criteria_s_type (xdrs, &objp->rpc_loc_ioctl_callback_data_u_type_u.fix_criteria))
   1358 			 return FALSE;
   1359 		break;
   1360 	case RPC_LOC_IOCTL_GET_ENGINE_LOCK:
   1361 		 if (!xdr_rpc_loc_lock_e_type (xdrs, &objp->rpc_loc_ioctl_callback_data_u_type_u.engine_lock))
   1362 			 return FALSE;
   1363 		break;
   1364 	case RPC_LOC_IOCTL_GET_SBAS_CONFIG:
   1365 		 if (!xdr_rpc_boolean (xdrs, &objp->rpc_loc_ioctl_callback_data_u_type_u.sbas_mode))
   1366 			 return FALSE;
   1367 		break;
   1368 	case RPC_LOC_IOCTL_GET_NMEA_TYPES:
   1369 		 if (!xdr_rpc_loc_nmea_sentence_type (xdrs, &objp->rpc_loc_ioctl_callback_data_u_type_u.nmea_types))
   1370 			 return FALSE;
   1371 		break;
   1372 	case RPC_LOC_IOCTL_GET_ON_DEMAND_LPM:
   1373 		 if (!xdr_rpc_boolean (xdrs, &objp->rpc_loc_ioctl_callback_data_u_type_u.on_demand_lpm))
   1374 			 return FALSE;
   1375 		break;
   1376 	case RPC_LOC_IOCTL_GET_CDMA_PDE_SERVER_ADDR:
   1377 	case RPC_LOC_IOCTL_GET_CDMA_MPC_SERVER_ADDR:
   1378 	case RPC_LOC_IOCTL_GET_UMTS_SLP_SERVER_ADDR:
   1379 		 if (!xdr_rpc_loc_server_info_s_type (xdrs, &objp->rpc_loc_ioctl_callback_data_u_type_u.server_addr))
   1380 			 return FALSE;
   1381 		break;
   1382 	case RPC_LOC_IOCTL_QUERY_PREDICTED_ORBITS_DATA_SOURCE:
   1383 		 if (!xdr_rpc_loc_predicted_orbits_data_source_s_type (xdrs, &objp->rpc_loc_ioctl_callback_data_u_type_u.predicted_orbits_data_source))
   1384 			 return FALSE;
   1385 		break;
   1386 	case RPC_LOC_IOCTL_QUERY_PREDICTED_ORBITS_DATA_VALIDITY:
   1387 		 if (!xdr_rpc_loc_predicted_orbits_data_validity_report_s_type (xdrs, &objp->rpc_loc_ioctl_callback_data_u_type_u.predicted_orbits_data_validity))
   1388 			 return FALSE;
   1389 		break;
   1390 	default:
   1391 		break;
   1392 	}
   1393 	return TRUE;
   1394 }
   1395 
   1396 bool_t
   1397 xdr_rpc_loc_ioctl_callback_s_type (XDR *xdrs, rpc_loc_ioctl_callback_s_type *objp)
   1398 {
   1399 	register int32_t *buf;
   1400 
   1401 	 if (!xdr_rpc_loc_ioctl_e_type (xdrs, &objp->type))
   1402 		 return FALSE;
   1403 	 if (!xdr_rpc_int32 (xdrs, &objp->status))
   1404 		 return FALSE;
   1405 	 if (!xdr_rpc_loc_ioctl_callback_data_u_type (xdrs, &objp->data))
   1406 		 return FALSE;
   1407 	return TRUE;
   1408 }
   1409 
   1410 bool_t
   1411 xdr_rpc_loc_event_payload_u_type (XDR *xdrs, rpc_loc_event_payload_u_type *objp)
   1412 {
   1413 	register int32_t *buf;
   1414 
   1415 	 if (!xdr_u_quad_t (xdrs, &objp->disc))
   1416 		 return FALSE;
   1417 	switch (objp->disc) {
   1418 	case RPC_LOC_EVENT_PARSED_POSITION_REPORT:
   1419 		 if (!xdr_rpc_loc_parsed_position_s_type (xdrs, &objp->rpc_loc_event_payload_u_type_u.parsed_location_report))
   1420 			 return FALSE;
   1421 		break;
   1422 	case RPC_LOC_EVENT_SATELLITE_REPORT:
   1423 		 if (!xdr_rpc_loc_gnss_info_s_type (xdrs, &objp->rpc_loc_event_payload_u_type_u.gnss_report))
   1424 			 return FALSE;
   1425 		break;
   1426 	case RPC_LOC_EVENT_NMEA_POSITION_REPORT:
   1427 		 if (!xdr_rpc_loc_nmea_report_s_type (xdrs, &objp->rpc_loc_event_payload_u_type_u.nmea_report))
   1428 			 return FALSE;
   1429 		break;
   1430 	case RPC_LOC_EVENT_NI_NOTIFY_VERIFY_REQUEST:
   1431 		 if (!xdr_rpc_loc_ni_event_s_type (xdrs, &objp->rpc_loc_event_payload_u_type_u.ni_request))
   1432 			 return FALSE;
   1433 		break;
   1434 	case RPC_LOC_EVENT_ASSISTANCE_DATA_REQUEST:
   1435 		 if (!xdr_rpc_loc_assist_data_request_s_type (xdrs, &objp->rpc_loc_event_payload_u_type_u.assist_data_request))
   1436 			 return FALSE;
   1437 		break;
   1438 	case RPC_LOC_EVENT_LOCATION_SERVER_REQUEST:
   1439 		 if (!xdr_rpc_loc_server_request_s_type (xdrs, &objp->rpc_loc_event_payload_u_type_u.loc_server_request))
   1440 			 return FALSE;
   1441 		break;
   1442 	case RPC_LOC_EVENT_IOCTL_REPORT:
   1443 		 if (!xdr_rpc_loc_ioctl_callback_s_type (xdrs, &objp->rpc_loc_event_payload_u_type_u.ioctl_report))
   1444 			 return FALSE;
   1445 		break;
   1446 	case RPC_LOC_EVENT_STATUS_REPORT:
   1447 		 if (!xdr_rpc_loc_status_event_s_type (xdrs, &objp->rpc_loc_event_payload_u_type_u.status_report))
   1448 			 return FALSE;
   1449 		break;
   1450 	case RPC_LOC_EVENT_RESERVED:
   1451 		 if (!xdr_rpc_loc_reserved_payload_s_type (xdrs, &objp->rpc_loc_event_payload_u_type_u.reserved))
   1452 			 return FALSE;
   1453 		break;
   1454 	default:
   1455 		break;
   1456 	}
   1457 	return TRUE;
   1458 }
   1459