blob: f3c0dfdfa7169e5ef075ca0f849ba91bb3210d3e [file] [log] [blame]
Bernie Innocentie71a28a2019-05-29 00:42:35 +09001/*
2 * Copyright (C) 2019 The Android Open Source Project
Bernie Innocentie71a28a2019-05-29 00:42:35 +09003 *
Bernie Innocentiefc87072019-05-30 19:22:08 +09004 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
Bernie Innocentie71a28a2019-05-29 00:42:35 +09007 *
Bernie Innocentiefc87072019-05-30 19:22:08 +09008 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
Bernie Innocentie71a28a2019-05-29 00:42:35 +090015 */
16
17#pragma once
18
chenbrucec7d69272021-08-09 14:20:33 +080019#include <span>
20
Bernie Innocentie71a28a2019-05-29 00:42:35 +090021#include "netd_resolv/resolv.h" // struct android_net_context
lifr94981782019-05-17 21:15:19 +080022#include "stats.pb.h"
Bernie Innocentie71a28a2019-05-29 00:42:35 +090023
24// Query dns with raw msg
chenbrucec7d69272021-08-09 14:20:33 +080025int resolv_res_nsend(const android_net_context* netContext, std::span<const uint8_t> msg,
26 std::span<uint8_t> ans, int* rcode, uint32_t flags,
lifr94981782019-05-17 21:15:19 +080027 android::net::NetworkDnsEventReported* event);