android_packages_modules_Co.../bpf/dns_helper/DnsHelper.cpp
Maciej Żenczykowski 2bb5b7ebee bpf: git mv DnsResolver bpf/dns_helper
This is entirely bpf specific logic for the dns_helper.so
shared library.  Let's put it under bpf/ so it can be covered
by bpf source hash logic and used by UML NetBpfLoad test.

Test: TreeHugger
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I7b544cb1db9f13f2467519068cefd236b814413a
2024-09-27 02:06:05 +00:00

37 lines
1.1 KiB
C++

/*
* Copyright (C) 2023 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include <errno.h>
#include "DnsBpfHelper.h"
#include "DnsHelperPublic.h"
static android::net::DnsBpfHelper sDnsBpfHelper;
int ADnsHelper_init() {
auto result = sDnsBpfHelper.init();
if (!result.ok()) return -result.error().code();
return 0;
}
int ADnsHelper_isUidNetworkingBlocked(uid_t uid, bool metered) {
auto result = sDnsBpfHelper.isUidNetworkingBlocked(uid, metered);
if (!result.ok()) return -result.error().code();
// bool -> int conversion.
return result.value();
}