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