bool_t
xdr_rpc_loc_ioctl_callback_data_u_type (XDR *xdrs, rpc_loc_ioctl_callback_data_u_type *objp)
{
    register int32_t *buf;

    if (!xdr_rpc_loc_ioctl_e_type (xdrs, &objp->disc))
        return FALSE;
    switch (objp->disc) {
    case RPC_LOC_IOCTL_GET_API_VERSION:
        if (!xdr_rpc_loc_api_version_s_type (xdrs, &objp->rpc_loc_ioctl_callback_data_u_type_u.api_version))
            return FALSE;
        break;
    case RPC_LOC_IOCTL_GET_FIX_CRITERIA:
        if (!xdr_rpc_loc_fix_criteria_s_type (xdrs, &objp->rpc_loc_ioctl_callback_data_u_type_u.fix_criteria))
            return FALSE;
        break;
    case RPC_LOC_IOCTL_GET_ENGINE_LOCK:
        if (!xdr_rpc_loc_lock_e_type (xdrs, &objp->rpc_loc_ioctl_callback_data_u_type_u.engine_lock))
            return FALSE;
        break;
    case RPC_LOC_IOCTL_GET_SBAS_CONFIG:
        if (!xdr_rpc_boolean (xdrs, &objp->rpc_loc_ioctl_callback_data_u_type_u.sbas_mode))
            return FALSE;
        break;
    case RPC_LOC_IOCTL_GET_NMEA_TYPES:
        if (!xdr_rpc_loc_nmea_sentence_type (xdrs, &objp->rpc_loc_ioctl_callback_data_u_type_u.nmea_types))
            return FALSE;
        break;
    case RPC_LOC_IOCTL_GET_ON_DEMAND_LPM:
        if (!xdr_rpc_boolean (xdrs, &objp->rpc_loc_ioctl_callback_data_u_type_u.on_demand_lpm))
            return FALSE;
        break;
    case RPC_LOC_IOCTL_GET_CDMA_PDE_SERVER_ADDR:
    case RPC_LOC_IOCTL_GET_CDMA_MPC_SERVER_ADDR:
    case RPC_LOC_IOCTL_GET_UMTS_SLP_SERVER_ADDR:
    case RPC_LOC_IOCTL_GET_CUSTOM_PDE_SERVER_ADDR:
        if (!xdr_rpc_loc_server_info_s_type (xdrs, &objp->rpc_loc_ioctl_callback_data_u_type_u.server_addr))
            return FALSE;
        break;
    case RPC_LOC_IOCTL_QUERY_PREDICTED_ORBITS_DATA_SOURCE:
        if (!xdr_rpc_loc_predicted_orbits_data_source_s_type (xdrs, &objp->rpc_loc_ioctl_callback_data_u_type_u.predicted_orbits_data_source))
            return FALSE;
        break;
    case RPC_LOC_IOCTL_QUERY_PREDICTED_ORBITS_DATA_VALIDITY:
        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))
            return FALSE;
        break;
    default:
        break;
    }
    return TRUE;
}
Example #2
0
bool_t
xdr_rpc_loc_ioctl_args (XDR *xdrs, rpc_loc_ioctl_args *objp)
{
    register int32_t *buf;

    if (!xdr_rpc_loc_client_handle_type (xdrs, &objp->handle))
        return FALSE;
    if (!xdr_rpc_loc_ioctl_e_type (xdrs, &objp->ioctl_type))
        return FALSE;
    if (!xdr_pointer (xdrs, (char **)&objp->ioctl_data, sizeof (rpc_loc_ioctl_data_u_type), (xdrproc_t) xdr_rpc_loc_ioctl_data_u_type))
        return FALSE;
    return TRUE;
}
bool_t
xdr_rpc_loc_ioctl_callback_s_type (XDR *xdrs, rpc_loc_ioctl_callback_s_type *objp)
{
    register int32_t *buf;

    if (!xdr_rpc_loc_ioctl_e_type (xdrs, &objp->type))
        return FALSE;
    if (!xdr_rpc_int32 (xdrs, &objp->status))
        return FALSE;
    if (!xdr_rpc_loc_ioctl_callback_data_u_type (xdrs, &objp->data))
        return FALSE;
    return TRUE;
}
bool_t
xdr_rpc_loc_ioctl_data_u_type (XDR *xdrs, rpc_loc_ioctl_data_u_type *objp)
{
    register int32_t *buf;

    if (!xdr_rpc_loc_ioctl_e_type (xdrs, &objp->disc))
        return FALSE;
    switch (objp->disc) {
    case RPC_LOC_IOCTL_SET_FIX_CRITERIA:
        if (!xdr_rpc_loc_fix_criteria_s_type (xdrs, &objp->rpc_loc_ioctl_data_u_type_u.fix_criteria))
            return FALSE;
        break;
    case RPC_LOC_IOCTL_INFORM_NI_USER_RESPONSE:
        if (!xdr_rpc_loc_user_verify_s_type (xdrs, &objp->rpc_loc_ioctl_data_u_type_u.user_verify_resp))
            return FALSE;
        break;
    case RPC_LOC_IOCTL_INJECT_PREDICTED_ORBITS_DATA:
        if (!xdr_rpc_loc_predicted_orbits_data_s_type (xdrs, &objp->rpc_loc_ioctl_data_u_type_u.predicted_orbits_data))
            return FALSE;
        break;
    case RPC_LOC_IOCTL_SET_PREDICTED_ORBITS_DATA_AUTO_DOWNLOAD:
        if (!xdr_rpc_loc_predicted_orbits_auto_download_config_s_type (xdrs, &objp->rpc_loc_ioctl_data_u_type_u.predicted_orbits_auto_download))
            return FALSE;
        break;
    case RPC_LOC_IOCTL_INJECT_UTC_TIME:
        if (!xdr_rpc_loc_assist_data_time_s_type (xdrs, &objp->rpc_loc_ioctl_data_u_type_u.assistance_data_time))
            return FALSE;
        break;
    case RPC_LOC_IOCTL_INJECT_POSITION:
        if (!xdr_rpc_loc_assist_data_pos_s_type (xdrs, &objp->rpc_loc_ioctl_data_u_type_u.assistance_data_position))
            return FALSE;
        break;
    case RPC_LOC_IOCTL_INFORM_SERVER_OPEN_STATUS:
        if (!xdr_rpc_loc_server_open_status_s_type (xdrs, &objp->rpc_loc_ioctl_data_u_type_u.conn_open_status))
            return FALSE;
        break;
    case RPC_LOC_IOCTL_INFORM_SERVER_CLOSE_STATUS:
        if (!xdr_rpc_loc_server_close_status_s_type (xdrs, &objp->rpc_loc_ioctl_data_u_type_u.conn_close_status))
            return FALSE;
        break;
    case RPC_LOC_IOCTL_SEND_WIPER_POSITION_REPORT:
    case RPC_LOC_EVENT_NMEA_1HZ_REPORT:
        if (!xdr_rpc_loc_wiper_position_report_s_type (xdrs, &objp->rpc_loc_ioctl_data_u_type_u.wiper_pos))
            return FALSE;
        break;
    case RPC_LOC_IOCTL_NOTIFY_WIPER_STATUS:
        if (!xdr_rpc_loc_wiper_status_e_type (xdrs, &objp->rpc_loc_ioctl_data_u_type_u.wiper_status))
            return FALSE;
        break;
    case RPC_LOC_IOCTL_SET_ENGINE_LOCK:
        if (!xdr_rpc_loc_lock_e_type (xdrs, &objp->rpc_loc_ioctl_data_u_type_u.engine_lock))
            return FALSE;
        break;
    case RPC_LOC_IOCTL_SET_SBAS_CONFIG:
        if (!xdr_rpc_boolean (xdrs, &objp->rpc_loc_ioctl_data_u_type_u.sbas_mode))
            return FALSE;
        break;
    case RPC_LOC_IOCTL_SET_NMEA_TYPES:
        if (!xdr_rpc_loc_nmea_sentence_type (xdrs, &objp->rpc_loc_ioctl_data_u_type_u.nmea_types))
            return FALSE;
        break;
    case RPC_LOC_IOCTL_SET_ON_DEMAND_LPM:
        if (!xdr_rpc_boolean (xdrs, &objp->rpc_loc_ioctl_data_u_type_u.on_demand_lpm))
            return FALSE;
        break;
    case RPC_LOC_IOCTL_SET_CDMA_PDE_SERVER_ADDR:
    case RPC_LOC_IOCTL_SET_CDMA_MPC_SERVER_ADDR:
    case RPC_LOC_IOCTL_SET_UMTS_SLP_SERVER_ADDR:
    case RPC_LOC_IOCTL_SET_CUSTOM_PDE_SERVER_ADDR:
        if (!xdr_rpc_loc_server_info_s_type (xdrs, &objp->rpc_loc_ioctl_data_u_type_u.server_addr))
            return FALSE;
        break;
    case RPC_LOC_IOCTL_DELETE_ASSIST_DATA:
        if (!xdr_rpc_loc_assist_data_delete_s_type (xdrs, &objp->rpc_loc_ioctl_data_u_type_u.assist_data_delete))
            return FALSE;
        break;
    case RPC_LOC_IOCTL_ACCESS_EFS_DATA:
        if (!xdr_rpc_loc_efs_data_s_type (xdrs, &objp->rpc_loc_ioctl_data_u_type_u.efs_data))
            return FALSE;
        break;
    default:
        break;
    }
    return TRUE;
}