1# Copyright (c) 2023 Huawei Device Co., Ltd. 2# Licensed under the Apache License, Version 2.0 (the "License"); 3# you may not use this file except in compliance with the License. 4# You may obtain a copy of the License at 5# 6# http://www.apache.org/licenses/LICENSE-2.0 7# 8# Unless required by applicable law or agreed to in writing, software 9# distributed under the License is distributed on an "AS IS" BASIS, 10# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11# See the License for the specific language governing permissions and 12# limitations under the License. 13 14developer_only(` 15 16# If an lldb client is used for remotely debugging an application with a 17# OpenHarmony device, hdc is utilized to pull necessary binary and dso files 18# (e.g. /system/bin/appspawn and /lib/ld-musl-aarch64.so.1). If such files 19# cannot be pulled from the device, the lldb client was not able to resolve any 20# of dso files loaded by an application, therefore breakpoints cannot be set on 21# any of loaded dso. 22allow hdcd appspawn_exec:file { getattr read open }; 23allow hdcd cjappspawn_exec:file { getattr read open }; 24 25# Allow users using hdc to upload lldb-server to subdirectories under 26# /data/local/tmp/lldb-server/ 27allow hdcd lldb_server_file:file { write create setattr read append open getattr 28 unlink }; 29allow hdcd lldb_server_file:dir { add_name remove_name write create setattr 30 search getattr read open }; 31# Before connecting to lldb-server, users have to create a network forwarding 32# by hdc fport to the Unix abstraact socket listened by lldb-server. 33allow hdcd lldb_server:unix_stream_socket { connectto }; 34 35') 36