1a513582eSopenharmony_ci<?xml version="1.0" encoding="UTF-8"?>
2a513582eSopenharmony_ci<!-- Copyright (c) 2021 Huawei Device Co., Ltd.
3a513582eSopenharmony_ci
4a513582eSopenharmony_ci     Licensed under the Apache License, Version 2.0 (the "License");
5a513582eSopenharmony_ci     you may not use this file except in compliance with the License.
6a513582eSopenharmony_ci     You may obtain a copy of the License at
7a513582eSopenharmony_ci
8a513582eSopenharmony_ci          http://www.apache.org/licenses/LICENSE-2.0
9a513582eSopenharmony_ci
10a513582eSopenharmony_ci     Unless required by applicable law or agreed to in writing, software
11a513582eSopenharmony_ci     distributed under the License is distributed on an "AS IS" BASIS,
12a513582eSopenharmony_ci     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13a513582eSopenharmony_ci     See the License for the specific language governing permissions and
14a513582eSopenharmony_ci     limitations under the License.
15a513582eSopenharmony_ci-->
16a513582eSopenharmony_ci<!-- OAT(OSS Audit Tool) configuration guide:
17a513582eSopenharmony_cibasedir: Root dir, the basedir + project path is the real source file location.
18a513582eSopenharmony_cilicensefile:
19a513582eSopenharmony_ci1.If the project don't have "LICENSE" in root dir, please define all the license files in this project in , OAT will check license files according to this rule.
20a513582eSopenharmony_ci
21a513582eSopenharmony_citasklist(only for batch mode):
22a513582eSopenharmony_ci1. task: Define oat check thread, each task will start a new thread.
23a513582eSopenharmony_ci2. task name: Only an name, no practical effect.
24a513582eSopenharmony_ci3. task policy: Default policy for projects under this task, this field is required and the specified policy must defined in policylist.
25a513582eSopenharmony_ci4. task filter: Default filefilter for projects under this task, this field is required and the specified filefilter must defined in filefilterlist.
26a513582eSopenharmony_ci5. task project: Projects to be checked, the path field define the source root dir of the project.
27a513582eSopenharmony_ci
28a513582eSopenharmony_ci
29a513582eSopenharmony_cipolicyList:
30a513582eSopenharmony_ci1. policy: All policyitems will be merged to default OAT.xml rules, the name of policy doesn't affect OAT check process.
31a513582eSopenharmony_ci2. policyitem: The fields type, name, path, desc is required, and the fields rule, group, filefilter is optional,the default value is:
32a513582eSopenharmony_ci<policyitem type="" name="" path="" desc="" rule="may" group="defaultGroup" filefilter="defaultPolicyFilter"/>
33a513582eSopenharmony_ci3. policyitem type:
34a513582eSopenharmony_ci    "compatibility" is used to check license compatibility in the specified path;
35a513582eSopenharmony_ci    "license" is used to check source license header in the specified path;
36a513582eSopenharmony_ci    "copyright" is used to check source copyright header in the specified path;
37a513582eSopenharmony_ci    "import" is used to check source dependency in the specified path, such as import ... ,include ...
38a513582eSopenharmony_ci    "filetype" is used to check file type in the specified path, supported file types: archive, binary
39a513582eSopenharmony_ci    "filename" is used to check whether the specified file exists in the specified path(support projectroot in default OAT.xml), supported file names: LICENSE, README, README.OpenSource
40a513582eSopenharmony_ci
41a513582eSopenharmony_ci4. policyitem name: This field is used for define the license, copyright, "*" means match all, the "!" prefix means could not match this value. For example, "!GPL" means can not use GPL license.
42a513582eSopenharmony_ci5. policyitem path: This field is used for define the source file scope to apply this policyitem, the "!" prefix means exclude the files. For example, "!.*/lib/.*" means files in lib dir will be exclude while process this policyitem.
43a513582eSopenharmony_ci6. policyitem rule and group: These two fields are used together to merge policy results. "may" policyitems in the same group means any one in this group passed, the result will be passed.
44a513582eSopenharmony_ci7. policyitem filefilter: Used to bind filefilter which define filter rules.
45a513582eSopenharmony_ci8. filefilter: Filter rules, the type filename is used to filter file name, the type filepath is used to filter file path.
46a513582eSopenharmony_ci
47a513582eSopenharmony_ciNote:If the text contains special characters, please escape them according to the following rules:
48a513582eSopenharmony_ci" == &gt;
49a513582eSopenharmony_ci& == &gt;
50a513582eSopenharmony_ci' == &gt;
51a513582eSopenharmony_ci< == &gt;
52a513582eSopenharmony_ci> == &gt;
53a513582eSopenharmony_ci-->
54a513582eSopenharmony_ci<configuration>
55a513582eSopenharmony_ci    <oatconfig>
56a513582eSopenharmony_ci        <filefilterlist>
57a513582eSopenharmony_ci            <filefilter name="binaryFileTypePolicyFilter" desc="Filters for binary file policies" >
58a513582eSopenharmony_ci                <filteritem type="filepath" name="Launcher.hap" desc="hap not identify"/>
59a513582eSopenharmony_ci                <filteritem type="filepath" name="Launcher_Recents.hap" desc="hap not identify"/>
60a513582eSopenharmony_ci                <filteritem type="filepath" name="Launcher_Settings.hap" desc="hap not identify"/>
61a513582eSopenharmony_ci                <filteritem type="filepath" name="Settings.hap" desc="hap not identify"/>
62a513582eSopenharmony_ci                <filteritem type="filepath" name="Note.hap" desc="hap not identify"/>
63a513582eSopenharmony_ci                <filteritem type="filepath" name="SettingsData.hap" desc="hap not identify"/>
64a513582eSopenharmony_ci                <filteritem type="filepath" name="SystemUI.hap" desc="hap not identify"/>
65a513582eSopenharmony_ci                <filteritem type="filepath" name="SystemUI-NavigationBar.hap" desc="hap not identify"/>
66a513582eSopenharmony_ci                <filteritem type="filepath" name="SystemUI-StatusBar.hap" desc="hap not identify"/>
67a513582eSopenharmony_ci                <filteritem type="filepath" name="SystemUI-ScreenLock.hap" desc="hap not identify"/>
68a513582eSopenharmony_ci                <filteritem type="filepath" name="SystemUI-NotificationManagement.hap" desc="hap not identify"/>
69a513582eSopenharmony_ci                <filteritem type="filepath" name="SystemUI-VolumePanel.hap" desc="hap not identify"/>
70a513582eSopenharmony_ci                <filteritem type="filepath" name="SystemUI-DropdownPanel.hap" desc="hap not identify"/>
71a513582eSopenharmony_ci                <filteritem type="filepath" name="SystemUI-SystemDialog.hap" desc="hap not identify"/>
72a513582eSopenharmony_ci                <filteritem type="filepath" name="resources/external.json" desc="Self developed music resources"/>
73a513582eSopenharmony_ci                <filteritem type="filepath" name="resources/downloadTemplate.abc" desc="Self developed music resources"/>
74a513582eSopenharmony_ci                <filteritem type="filepath" name="resources/downloadTemplate.js" desc="Self developed music resources"/>
75a513582eSopenharmony_ci                <filteritem type="filepath" name="ScreenShot.hap" desc="hap not identify"/>
76a513582eSopenharmony_ci                <filteritem type="filepath" name="Photos.hap" desc="hap not identify"/>
77a513582eSopenharmony_ci                <filteritem type="filepath" name="resources/demo.wav" desc="Self developed music resources"/>
78a513582eSopenharmony_ci                <filteritem type="filepath" name="resources/dynamic.wav" desc="Self developed music resources"/>
79a513582eSopenharmony_ci                <filteritem type="filepath" name="Camera.hap" desc="hap not identify"/>
80a513582eSopenharmony_ci                <filteritem type="filepath" name="usb_right_dialog.hap" desc="hap not identify"/>
81a513582eSopenharmony_ci                <filteritem type="filepath" name="vpn_dialog.hap" desc="hap not identify"/>
82a513582eSopenharmony_ci                <filteritem type="filepath" name="resources/capture.ogg" desc="self developed music resources"/>
83a513582eSopenharmony_ci                <filteritem type="filepath" name="kikaInput.hap" desc="hap not identif"/>
84a513582eSopenharmony_ci                <filteritem type="filepath" name="Calc_Demo.hap" desc="hap not identif"/>
85a513582eSopenharmony_ci                <filteritem type="filepath" name="Music_Demo.hap" desc="hap not identif"/>
86a513582eSopenharmony_ci                <filteritem type="filepath" name="Clock_Demo.hap" desc="hap not identif"/>
87a513582eSopenharmony_ci                <filteritem type="filepath" name="CallUI.hap" desc="hap not identify"/>
88a513582eSopenharmony_ci                <filteritem type="filepath" name="MobileDataSettings.hap" desc="hap not identify"/>
89a513582eSopenharmony_ci                <filteritem type="filepath" name="Media_Library.hap" desc="hap not identify"/>
90a513582eSopenharmony_ci                <filteritem type="filepath" name="Media_Scanner.hap" desc="hap not identify"/>
91a513582eSopenharmony_ci                <filteritem type="filepath" name="Mms.hap" desc="hap not identif"/>
92a513582eSopenharmony_ci                <filteritem type="filepath" name="Contacts.hap" desc="hap not identif"/>
93a513582eSopenharmony_ci                <filteritem type="filepath" name="PermissionManager.hap" desc="hap not identif"/>
94a513582eSopenharmony_ci                <filteritem type="filepath" name="Settings_FaceAuth.hap" desc="hap not identif"/>
95a513582eSopenharmony_ci                <filteritem type="filepath" name="AuthWidget.hap" desc="hap not identif"/>
96a513582eSopenharmony_ci                <filteritem type="filepath" name="FilePicker.hap" desc="hap not identify"/>
97a513582eSopenharmony_ci                <filteritem type="filepath" name="AmsDialog.hap" desc="hap not identify"/>
98a513582eSopenharmony_ci                <filteritem type="filepath" name="NotificationDialog.hap" desc="hap not identify"/>
99a513582eSopenharmony_ci                <filteritem type="filepath" name="CertificateManager.hap" desc="hap not identify"/>
100a513582eSopenharmony_ci                <filteritem type="filepath" name="UpdateApp.hap" desc="hap not identify"/>
101a513582eSopenharmony_ci                <filteritem type="filepath" name="PrintSpooler.hap" desc="hap not identify"/>
102a513582eSopenharmony_ci                <filteritem type="filepath" name="CalendarData.hap" desc="hap not identify"/>
103a513582eSopenharmony_ci                <filteritem type="filepath" name="AudioPicker.hap" desc="hap not identify"/>
104a513582eSopenharmony_ci            </filefilter>
105a513582eSopenharmony_ci            <filefilter name="defaultFilter" desc="Files not to check">
106a513582eSopenharmony_ci                <filteritem type="filename" name="*.hap" desc="hap not need check"/>
107a513582eSopenharmony_ci                <filteritem type="filepath" name="resources/downloadTemplate.js" desc=".js not need check"/>
108a513582eSopenharmony_ci            </filefilter>
109a513582eSopenharmony_ci        </filefilterlist>
110a513582eSopenharmony_ci    </oatconfig>
111a513582eSopenharmony_ci</configuration>
112