This commit is contained in:
Gianni Trevisiol 2024-03-12 15:58:51 -07:00 коммит произвёл GitHub
Родитель 7b1cb3aa58
Коммит 5e84f5c914
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: B5690EEEBB952194
5 изменённых файлов: 36 добавлений и 1206 удалений

Просмотреть файл

@ -16,49 +16,40 @@ Do the following from within the VM:
* **Runtime Components** (mandatory): this feature adds the eBPF runtime and core components, which are also required by the other components. If you select only this
feature, only [native code generation](NativeCodeGeneration.md) is enabled.
* **JIT** (optional): this sub-feature adds support for JIT-compiled eBPF programs and (in a Debug build only) interpreted eBPF programs.
* **Development** (optional): this feature adds headers and libraries used for development. If you only want to use eBPF for development
rather than running programs, you can [use the NuGet package](GettingStarted.md#using-ebpf-in-development)
instead of the MSI.
* **Testing** (optional): this feature adds tests for the eBPF runtime for use by eBPF runtime developers.
An **command line install/uninstall** is also supported, through the direct use of `C:\Windows\system32\msiexec.exe` from an *administrative Command Prompt*:
- The installation folder can be customized by assigning the desired path to the `INSTALLFOLDER` parameter (path with spaces must be put between double quotes), i.e.:
* The installation folder can be customized by assigning the desired path to the `INSTALLFOLDER` parameter (path with spaces must be put between double quotes), i.e.:
```bash
INSTALLFOLDER="C:\Program Files\ebpf-for-windows"
```
- The following feature-components are available for customization, and must be assigned as comma-separated values to the `ADDLOCAL` parameter:
* The following feature-components are available for customization, and must be assigned as comma-separated values to the `ADDLOCAL` parameter:
- `eBPF_Runtime_Components` (**mandatory**): runtime components (installed in `[Installation folder]\*`, `[Installation folder]\drivers`).
- `eBPF_Runtime_Components_JIT` (optional): JIT compiler service (installed in `[Installation folder]\JIT`).
- `eBPF_Development` (optional): header files, scripts and libraries for development (installed in `[Installation folder]\include`,`[Installation folder]\lib`,`[Installation folder]\scripts`).
- `eBPF_Testing` (optional): header files for development (installed in `[Installation folder]\testing`).
* `eBPF_Runtime_Components` (**mandatory**): runtime components (installed in `[Installation folder]\*`, `[Installation folder]\drivers`).
* `eBPF_Runtime_Components_JIT` (optional): JIT compiler service (installed in `[Installation folder]\JIT`).
e.g., (full featured):
```bash
ADDLOCAL=eBPF_Runtime_Components,eBPF_Runtime_Components_JIT,eBPF_Development,eBPF_Testing
ADDLOCAL=eBPF_Runtime_Components,eBPF_Runtime_Components_JIT
```
Below are some examples of CLI installations/uninstallation, using "`C:\Program Files\ebpf-for-windows`" as the installation folder:
* Installation:
> **Note**: add the "`/qn`" switch for **unattended install**.
```bash
# Debug MSI - fully-featured installation
C:\Windows\system32\msiexec.exe /i eBPF-for-Windows.x.x.x.msi INSTALLFOLDER="C:\Program Files\ebpf-for-windows" ADDLOCAL=eBPF_Runtime_Components,eBPF_Runtime_Components_JIT,eBPF_Development,eBPF_Testing
# Debug MSI - fully-featured installation, including the JIT compiler (available on pre-release versions only)
C:\Windows\system32\msiexec.exe /i eBPF-for-Windows.x.x.x.msi INSTALLFOLDER="C:\Program Files\ebpf-for-windows" ADDLOCAL=eBPF_Runtime_Components,eBPF_Runtime_Components_JIT
# Debug MSI - fully-featured installation, no JIT compiler
C:\Windows\system32\msiexec.exe /i eBPF-for-Windows.x.x.x.msi INSTALLFOLDER="C:\Program Files\ebpf-for-windows" ADDLOCAL=eBPF_Runtime_Components,eBPF_Development,eBPF_Testing
# Debug MSI - minimal installation (only runtime components)
C:\Windows\system32\msiexec.exe /i eBPF-for-Windows.x.x.x.msi INSTALLFOLDER="C:\Program Files\ebpf-for-windows" ADDLOCAL=eBPF_Runtime_Components
# Release MSI - fully-featured installation, including the JIT compiler (available on pre-release versions only)
C:\Windows\system32\msiexec.exe /i eBPF-for-Windows.x.x.x.msi INSTALLFOLDER="C:\Program Files\ebpf-for-windows" ADDLOCAL=eBPF_Runtime_Components,eBPF_Runtime_Components_JIT,eBPF_Development,eBPF_Testing
# Release MSI - fully-featured installation (no JIT compiler on future post-release versions)
C:\Windows\system32\msiexec.exe /i eBPF-for-Windows.x.x.x.msi INSTALLFOLDER="C:\Program Files\ebpf-for-windows" ADDLOCAL=eBPF_Runtime_Components,eBPF_Development,eBPF_Testing
C:\Windows\system32\msiexec.exe /i eBPF-for-Windows.x.x.x.msi INSTALLFOLDER="C:\Program Files\ebpf-for-windows" ADDLOCAL=eBPF_Runtime_Components,eBPF_Runtime_Components_JIT
# Release MSI - minimal installation (only runtime components)
C:\Windows\system32\msiexec.exe /i eBPF-for-Windows.x.x.x.msi INSTALLFOLDER="C:\Program Files\ebpf-for-windows" ADDLOCAL=eBPF_Runtime_Components
@ -79,27 +70,33 @@ C:\Windows\system32\msiexec.exe /i eBPF-for-Windows.x.x.x.msi <other options> /l
```
### Method 2 (Install files you built yourself)
This method uses a machine that
has already built the binaries for `x64/Debug` or `x64/Release`.
1. Deploy the binaries to `C:\Temp` in your VM, as follows (from within a "*Developer PowerShell for VS 2022*"):
- If you **built the binaries from inside the VM**, then from your `ebpf-for-windows` directory in the VM, run:
* If you **built the binaries from inside the VM**, then from your `ebpf-for-windows` directory in the VM, run:
```ps
.\x64\debug\deploy-ebpf -l
```
- Otherwise, if you **built the binaries on the host machine**, then from your `ebpf-for-windows`
* Otherwise, if you **built the binaries on the host machine**, then from your `ebpf-for-windows`
directory on the host machine, start an admin Powershell on the host machine and run:
```ps
.\x64\debug\deploy-ebpf --vm="<test-vm-name>"
```
or, to also copy files needed to run various tests, run:
```ps
.\x64\debug\deploy-ebpf --vm="<test-vm-name>" -t
```
or, to copy files to a specific directory, including file shares, run:
```ps
.\x64\debug\deploy-ebpf -l="c:\some\path"
```
@ -112,24 +109,31 @@ has already built the binaries for `x64/Debug` or `x64/Release`.
powershell -ExecutionPolicy Bypass .\scripts\setup-ebpf.ps1
```
### Method 3 (Install files you built yourself, with a VM checkpoint)
This method uses a machine that
has already built the binaries for `x64/Debug` or `x64/Release`.
Copy the build output in `\x64\[Debug|Release]` to the host of the test VM and run the following in a Powershell
command prompt:
1. Create a snapshot of the test VM named **baseline**, by running:
```ps
Checkpoint-VM -Name <test-vm-name> -CheckpointName baseline
```
1. Store the VM administrator credential, by running the following commands:
```ps
Install-Module CredentialManager -force
```
```ps
New-StoredCredential -Target TEST_VM -Username <VM Administrator> -Password <VM Administrator account password> -Persist LocalMachine
```
> Note that "`TEST_VM`" is literal and is used in step 5 below; it need not be the name of any actual test VM.
1. Enter the `\x64\[Debug|Release]` directory (`cd`) where the build artifacts are stored.
1. Modify `.\vm_list.json` to specify the name of the test VM under `VMList`, eg:
@ -146,11 +150,14 @@ command prompt:
]
}
```
1. Run the following commands to setup to use the credentials saved with `TEST_VM` in step 2,
for logging into each of the VMs named in `vm_list.json`:
```ps
Set-ExecutionPolicy unrestricted -Force
```
```ps
.\setup_ebpf_cicd_tests.ps1
```
@ -162,7 +169,6 @@ to install eBPF on all Windows nodes in a Kubernetes cluster.
1. Download the `.msi` file from the [latest release on GitHub](https://github.com/microsoft/ebpf-for-windows/releases) and copy it over to [images](../images) directory.
2. Build ebpf-for-windows image.
* To **build the image on the Windows Host**, make sure docker is installed. [Install docker on Windows Server](https://docs.microsoft.com/en-us/virtualization/windowscontainers/quick-start/set-up-environment?tabs=Windows-Server/).
@ -174,7 +180,8 @@ Start an admin Powershell on the Windows Host and run the following command and
* To **build the image on a Linux machine** (e.g. Ubuntu), make sure docker is installed (see [install docker on Ubuntu](https://docs.docker.com/engine/install/ubuntu/)), and do the following:
- Run the following command and provide parameters for `repository`, `tag` and `OSVersion`:
* Run the following command and provide parameters for `repository`, `tag` and `OSVersion`:
```bash
$HOME/ebpf-for-windows-image/build-images.sh
````
@ -182,6 +189,7 @@ Start an admin Powershell on the Windows Host and run the following command and
3. Push the `ebpf-for-windows` image to your repository.
4. Update `manifests/Kubernetes/ebpf-for-windows-daemonset.yaml` with the container image pointing to your image path. Run the following command:
```cmd
kubectl apply -f manifests/Kubernetes/ebpf-for-windows-daemonset.yaml
```

Просмотреть файл

@ -47,30 +47,6 @@ SPDX-License-Identifier: MIT
<?endif?>
<?endif?>
</Feature>
<Feature Id="eBPF_Development" Level="2" Title="Development components" Absent="allow" AllowAdvertise="no" >
<ComponentGroupRef Id="eBPF_Development_include" />
<ComponentGroupRef Id="eBPF_Development_include_asm" />
<ComponentGroupRef Id="eBPF_Development_include_bpf" />
<ComponentGroupRef Id="eBPF_Development_include_kernel" />
<ComponentGroupRef Id="eBPF_Development_include_libbpf" />
<ComponentGroupRef Id="eBPF_Development_include_libbpf_include" />
<ComponentGroupRef Id="eBPF_Development_include_libbpf_include_asm" />
<ComponentGroupRef Id="eBPF_Development_include_libbpf_include_linux" />
<ComponentGroupRef Id="eBPF_Development_include_libbpf_include_uapi" />
<ComponentGroupRef Id="eBPF_Development_include_libbpf_include_uapi_linux" />
<ComponentGroupRef Id="eBPF_Development_include_libbpf_src" />
<ComponentGroupRef Id="eBPF_Development_include_linux" />
<ComponentGroupRef Id="eBPF_Development_include_net" />
<ComponentGroupRef Id="eBPF_Development_include_uapi" />
<ComponentGroupRef Id="eBPF_Development_include_uapi_linux" />
<ComponentGroupRef Id="eBPF_Development_include_user" />
<ComponentGroupRef Id="eBPF_Development_libs" />
<ComponentGroupRef Id="eBPF_Development_scripts" />
</Feature>
<Feature Id="eBPF_Testing" Level="2" Title="Testing components" Absent="allow" AllowAdvertise="no">
<ComponentGroupRef Id="eBPF_Testing_Components" />
<ComponentGroupRef Id="sample_ebpf_ext_Driver" />
</Feature>
</Feature>
<InstallExecuteSequence>
@ -83,9 +59,6 @@ SPDX-License-Identifier: MIT
<Custom Action="NetEbpfExt_Driver_stop_rollback" Before="NetEbpfExt_Driver_install">NOT Installed</Custom>
<Custom Action="NetEbpfExt_Driver_uninstall_rollback" Before="NetEbpfExt_Driver_install">NOT Installed</Custom>
<Custom Action="sample_ebpf_ext_Driver_stop_rollback" Before="sample_ebpf_ext_Driver_install">NOT Installed</Custom>
<Custom Action="sample_ebpf_ext_Driver_uninstall_rollback" Before="sample_ebpf_ext_Driver_install">NOT Installed</Custom>
<!--Install sequence-->
<Custom Action="Clear_eBPF_store" After="InstallFiles">NOT Installed</Custom>
<Custom Action="Setup_eBPF_store" After="Clear_eBPF_store">NOT Installed</Custom>
@ -98,9 +71,6 @@ SPDX-License-Identifier: MIT
<Custom Action="NetEbpfExt_Driver_install" After="Setup_eBPF_store">NOT Installed</Custom>
<Custom Action="NetEbpfExt_Driver_start" After="NetEbpfExt_Driver_install">NOT Installed</Custom>
<Custom Action="sample_ebpf_ext_Driver_install" After="Setup_eBPF_store">(NOT Installed AND <![CDATA[&eBPF_Testing=3]]>) OR (Installed AND <![CDATA[&eBPF_Testing=3]]>)</Custom>
<Custom Action="sample_ebpf_ext_Driver_start" After="sample_ebpf_ext_Driver_install">(NOT Installed AND <![CDATA[&eBPF_Testing=3]]>) OR (Installed AND <![CDATA[&eBPF_Testing=3]]>)</Custom>
<!--Uninstall sequence-->
<Custom Action="eBPF_netsh_helper_uninstall" After="InstallInitialize">REMOVE="ALL"</Custom>
@ -110,9 +80,6 @@ SPDX-License-Identifier: MIT
<Custom Action="NetEbpfExt_Driver_stop" After="InstallInitialize">REMOVE="ALL"</Custom>
<Custom Action="NetEbpfExt_Driver_uninstall" After="NetEbpfExt_Driver_stop">REMOVE="ALL"</Custom>
<Custom Action="sample_ebpf_ext_Driver_stop" After="InstallInitialize">REMOVE="ALL" OR REMOVE="eBPF_Testing" OR REMOVE="eBPF_Development,eBPF_Testing"</Custom>
<Custom Action="sample_ebpf_ext_Driver_uninstall" After="sample_ebpf_ext_Driver_stop">REMOVE="ALL" OR REMOVE="eBPF_Testing" OR REMOVE="eBPF_Development,eBPF_Testing"</Custom>
<Custom Action="Clear_eBPF_store_uninstall" After="NetEbpfExt_Driver_uninstall">REMOVE="ALL"</Custom>
<Custom Action="eBPFCore_Driver_uninstall_flush" After="InstallFinalize">REMOVE="ALL"</Custom>
</InstallExecuteSequence>
@ -135,35 +102,11 @@ SPDX-License-Identifier: MIT
<Directory Id="ProgramFiles64Folder">
<Directory Id="INSTALLFOLDER" Name="ebpf-for-windows">
<?if $(var.IncludeJIT) = True ?>
<?if $(var.Configuration) = Debug OR $(var.Configuration) = Release?>
<Directory Id="dir_JIT" Name="JIT" />
<?endif?>
<?endif?>
<Directory Id="dir_drivers" Name="drivers"/>
<Directory Id="dir_include" Name="include">
<Directory Id="dir_include_asm" Name="asm" />
<Directory Id="dir_include_bpf" Name="bpf" />
<Directory Id="dir_include_kernel" Name="kernel" />
<Directory Id="dir_include_libbpf" Name="libbpf">
<Directory Id="dir_include_libbpf_include" Name="include">
<Directory Id="dir_include_libbpf_include_asm" Name="asm" />
<Directory Id="dir_include_libbpf_include_linux" Name="linux" />
<Directory Id="dir_include_libbpf_include_uapi" Name="uapi">
<Directory Id="dir_include_libbpf_include_uapi_linux" Name="linux" />
</Directory>
</Directory>
<Directory Id="dir_include_libbpf_src" Name="src" />
</Directory>
<Directory Id="dir_include_linux" Name="linux" />
<Directory Id="dir_include_net" Name="net" />
<Directory Id="dir_include_uapi" Name="uapi">
<Directory Id="dir_include_uapi_linux" Name="linux" />
</Directory>
<Directory Id="dir_include_user" Name="user" />
</Directory>
<Directory Id="dir_lib" Name="lib"/>
<Directory Id="dir_scripts" Name="scripts"/>
<Directory Id="dir_testing" Name="testing">
<Directory Id="dir_testing_bad" Name="bad" />
</Directory>
</Directory>
</Directory>
</Directory>
@ -316,788 +259,4 @@ SPDX-License-Identifier: MIT
<Property Id="NetEbpfExt_Driver_uninstall_rollback" Value='"sc.exe" delete NetEbpfExt' />
<CustomAction Id="NetEbpfExt_Driver_uninstall_rollback" BinaryKey="WixCA" DllEntry="WixQuietExec64" Execute="rollback" Return="ignore" Impersonate="no"/>
</Fragment>
<!-- Define the product's <Development> components -->
<Fragment>
<ComponentGroup Id="eBPF_Development_scripts" Directory="dir_scripts">
<Component Id="CONVERT_BPFTONATIVE.PS1" DiskId="1" Guid="{DA950F9A-6448-4EE1-8B0B-4FE568E65177}">
<File Id="CONVERT_BPFTONATIVE.PS1" Name="Convert-BpfToNative.ps1" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\Convert-BpfToNative.ps1" />
</Component>
</ComponentGroup>
<ComponentGroup Id="eBPF_Development_include" Directory="dir_include">
<Component Id="BPF_ENDIAN.H" DiskId="1" Guid="{59B40FBC-2842-449B-9101-CFBCCF785335}">
<File Id="BPF_ENDIAN.H" Name="bpf_endian.h" Source="$(var.SolutionDir)include\bpf_endian.h" />
</Component>
<Component Id="BPF_HELPER_DEFS.H" DiskId="1" Guid="{EA36437E-777C-4FFE-ADF5-D806BBDB46FE}">
<File Id="BPF_HELPER_DEFS.H" Name="bpf_helper_defs.h" Source="$(var.SolutionDir)include\bpf_helper_defs.h" />
</Component>
<Component Id="BPF_HELPERS.H" DiskId="1" Guid="{BD51CAA7-5D26-48C3-8822-EFB91AC0367E}">
<File Id="BPF_HELPERS.H" Name="bpf_helpers.h" Source="$(var.SolutionDir)include\bpf_helpers.h" />
</Component>
<Component Id="BPF_HELPERS_PLATFORM.H" DiskId="1" Guid="{FD2EE81E-0EE7-4936-AA96-AAF7772164D3}">
<File Id="BPF_HELPERS_PLATFORM.H" Name="bpf_helpers_platform.h" Source="$(var.SolutionDir)include\bpf_helpers_platform.h" />
</Component>
<Component Id="BPF2C.H" DiskId="1" Guid="{7C3950B4-29B2-4F39-BEEC-9FE18E08FE88}">
<File Id="BPF2C.H" Name="bpf2c.h" Source="$(var.SolutionDir)include\bpf2c.h" />
</Component>
<Component Id="EBPF_API.H" DiskId="1" Guid="{0AAC29C6-1612-446F-BE6D-FFF42E032744}">
<File Id="EBPF_API.H" Name="ebpf_api.h" Source="$(var.SolutionDir)include\ebpf_api.h" />
</Component>
<Component Id="EBPF_CORE_STRUCTS.H" DiskId="1" Guid="{C3814D22-4D03-420A-8AB3-BCF1E875C072}">
<File Id="EBPF_CORE_STRUCTS.H" Name="ebpf_core_structs.h" Source="$(var.SolutionDir)include\ebpf_core_structs.h" />
</Component>
<Component Id="EBPF_EXECUTION_TYPE.H" DiskId="1" Guid="{451BE64A-5CD6-49BF-AF90-9CEFF55332A2}">
<File Id="EBPF_EXECUTION_TYPE.H" Name="ebpf_execution_type.h" Source="$(var.SolutionDir)include\ebpf_execution_type.h" />
</Component>
<Component Id="EBPF_EXTENSION_UUIDS.H" DiskId="1" Guid="{02269617-BA66-4C22-A98D-CB699E785A35}">
<File Id="EBPF_EXTENSION_UUIDS.H" Name="ebpf_extension_uuids.h" Source="$(var.SolutionDir)include\ebpf_extension_uuids.h" />
</Component>
<Component Id="EBPF_NETHOOKS.H" DiskId="1" Guid="{7BF41E29-AFCE-4B11-9DF7-BB2BED9B453F}">
<File Id="EBPF_NETHOOKS.H" Name="ebpf_nethooks.h" Source="$(var.SolutionDir)include\ebpf_nethooks.h" />
</Component>
<Component Id="EBPF_PROGRAM_ATTACH_TYPE_GUIDS.H" DiskId="1" Guid="{ACDF9FAD-6C7B-49D0-9136-9FF0008BC5F0}">
<File Id="EBPF_PROGRAM_ATTACH_TYPE_GUIDS.H" Name="ebpf_program_attach_type_guids.h" Source="$(var.SolutionDir)include\ebpf_program_attach_type_guids.h" />
</Component>
<Component Id="EBPF_PROGRAM_TYPES.H" DiskId="1" Guid="{15592AFC-A3CD-4A26-9F89-6656EB386354}">
<File Id="EBPF_PROGRAM_TYPES.H" Name="ebpf_program_types.h" Source="$(var.SolutionDir)include\ebpf_program_types.h" />
</Component>
<Component Id="EBPF_RESULT.H" DiskId="1" Guid="{38D84F8F-1921-40F0-8A0D-13F02513CC93}">
<File Id="EBPF_RESULT.H" Name="ebpf_result.h" Source="$(var.SolutionDir)include\ebpf_result.h" />
</Component>
<Component Id="EBPF_STORE_HELPER.H" DiskId="1" Guid="{14BE7BA2-DCD1-4AE1-A115-396E52CDF073}">
<File Id="EBPF_STORE_HELPER.H" Name="ebpf_store_helper.h" Source="$(var.SolutionDir)include\ebpf_store_helper.h" />
</Component>
<Component Id="EBPF_STRUCTS.H" DiskId="1" Guid="{2D7F0268-8926-41C5-B592-5A3CEE10540D}">
<File Id="EBPF_STRUCTS.H" Name="ebpf_structs.h" Source="$(var.SolutionDir)include\ebpf_structs.h" />
</Component>
<Component Id="EBPF_UTILITIES.H" DiskId="1" Guid="{24A4B689-2B6B-4431-BFB0-732388E41404}">
<File Id="EBPF_UTILITIES.H" Name="ebpf_utilities.h" Source="$(var.SolutionDir)include\ebpf_utilities.h" />
</Component>
<Component Id="EBPF_WINDOWS.H" DiskId="1" Guid="{DFBF9B95-F1DF-4C08-A0D6-60556F3FA9EB}">
<File Id="EBPF_WINDOWS.H" Name="ebpf_windows.h" Source="$(var.SolutionDir)include\ebpf_windows.h" />
</Component>
<Component Id="ELFIO_WRAPPER.HPP" DiskId="1" Guid="{FB1B409E-F5F7-40C8-AE05-C99E65CF7347}">
<File Id="ELFIO_WRAPPER.HPP" Name="elfio_wrapper.hpp" Source="$(var.SolutionDir)include\elfio_wrapper.hpp" />
</Component>
<Component Id="GIT_COMMIT_ID.H" DiskId="1" Guid="{0AB71C9D-68E6-4892-A45D-306BA921CC07}">
<File Id="GIT_COMMIT_ID.H" Name="git_commit_id.h" Source="$(var.SolutionDir)include\git_commit_id.h" />
</Component>
<Component Id="EBPF_BASE.H" DiskId="1" Guid="{FC47A44E-7747-4E98-AD55-09D9671C01C1}">
<File Id="EBPF_BASE.H" Name="ebpf_base.h" Source="$(var.SolutionDir)external\ebpf-verifier\src\ebpf_base.h" />
</Component>
<Component Id="EBPF_EXTENSION.H" DiskId="1" Guid="{F5F5F5F5-7747-4E98-AD55-09D9671C01C1}">
<File Id="EBPF_EXTENSION.H" Name="ebpf_extension.h" Source="$(var.SolutionDir)include\ebpf_extension.h" />
</Component>
</ComponentGroup>
<ComponentGroup Id="eBPF_Development_include_asm" Directory="dir_include_asm">
<Component Id="ERRNO.H" DiskId="1" Guid="{DF63C9C1-FA9C-44E3-94EB-F77B7072E4BE}">
<File Id="ERRNO.H" Name="errno.h" Source="$(var.SolutionDir)include\asm\errno.h" />
</Component>
<Component Id="POSIX_TYPES.H" DiskId="1" Guid="{F28F43DC-B53F-4DF9-8E19-F2D7E736E446}">
<File Id="POSIX_TYPES.H" Name="posix_types.h" Source="$(var.SolutionDir)include\asm\posix_types.h" />
</Component>
<Component Id="TYPES.H" DiskId="1" Guid="{030CB7C2-BD80-4677-A183-890315E75EAC}">
<File Id="TYPES.H" Name="types.h" Source="$(var.SolutionDir)include\asm\types.h" />
</Component>
</ComponentGroup>
<ComponentGroup Id="eBPF_Development_include_bpf" Directory="dir_include_bpf">
<Component Id="BPF.H_1" DiskId="1" Guid="{A41E9DEB-709E-4DA3-9A24-F5B8C21AF30E}">
<File Id="BPF.H_1" Name="bpf.h" Source="$(var.SolutionDir)include\bpf\bpf.h" />
</Component>
<Component Id="BPF_LEGACY.H" DiskId="1" Guid="{B3E387BA-03DB-4FE9-A808-B334D48F2CAA}">
<File Id="BPF_LEGACY.H" Name="bpf_legacy.h" Source="$(var.SolutionDir)include\bpf\bpf_legacy.h" />
</Component>
<Component Id="HASHMAP.H" DiskId="1" Guid="{47680BD2-8931-4098-AFDF-57A5E4688BB5}">
<File Id="HASHMAP.H" Name="hashmap.h" Source="$(var.SolutionDir)include\bpf\hashmap.h" />
</Component>
<Component Id="LIBBPF.H" DiskId="1" Guid="{2A878010-A1D6-4888-8694-FA4148259282}">
<File Id="LIBBPF.H" Name="libbpf.h" Source="$(var.SolutionDir)include\bpf\libbpf.h" />
</Component>
<Component Id="LIBBPF_LEGACY.H" DiskId="1" Guid="{62760909-DD06-4711-AFE3-E4FD5A2FE940}">
<File Id="LIBBPF_LEGACY.H" Name="libbpf_legacy.h" Source="$(var.SolutionDir)include\bpf\libbpf_legacy.h" />
</Component>
</ComponentGroup>
<ComponentGroup Id="eBPF_Development_include_kernel" Directory="dir_include_kernel"/>
<ComponentGroup Id="eBPF_Development_include_linux" Directory="dir_include_linux">
<Component Id="BPF.H_2" DiskId="1" Guid="{ED4F7D03-0334-4FB3-A3AC-1DAD36FF1228}">
<File Id="BPF.H_2" Name="bpf.h" Source="$(var.SolutionDir)include\linux\bpf.h" />
</Component>
<Component Id="STDDEF.H" DiskId="1" Guid="{41D2F835-B4A7-450F-B064-1280C5D55505}">
<File Id="STDDEF.H" Name="stddef.h" Source="$(var.SolutionDir)include\linux\stddef.h" />
</Component>
</ComponentGroup>
<ComponentGroup Id="eBPF_Development_include_net" Directory="dir_include_net">
<Component Id="IF_ETHER.H_1" DiskId="1" Guid="{A1524B6C-6AE6-498F-AAB5-2527C2A4BC0A}">
<File Id="IF_ETHER.H_1" Name="if_ether.h" Source="$(var.SolutionDir)include\net\if_ether.h" />
</Component>
<Component Id="IP.H_1" DiskId="1" Guid="{AC6F71A8-778B-4BEE-B409-DF0166A36482}">
<File Id="IP.H_1" Name="ip.h" Source="$(var.SolutionDir)include\net\ip.h" />
</Component>
<Component Id="TCP.H_1" DiskId="1" Guid="{F8A57AE9-B14A-4FBF-8CC5-E164A5E63EB4}">
<File Id="TCP.H_1" Name="tcp.h" Source="$(var.SolutionDir)include\net\tcp.h" />
</Component>
<Component Id="UDP.H" DiskId="1" Guid="{442722D8-B3F8-4820-933C-84406859579B}">
<File Id="UDP.H" Name="udp.h" Source="$(var.SolutionDir)include\net\udp.h" />
</Component>
</ComponentGroup>
<ComponentGroup Id="eBPF_Development_include_uapi" Directory="dir_include_uapi" />
<ComponentGroup Id="eBPF_Development_include_libbpf" Directory="dir_include_libbpf" />
<ComponentGroup Id="eBPF_Development_include_libbpf_include" Directory="dir_include_libbpf_include" />
<ComponentGroup Id="eBPF_Development_include_libbpf_include_asm" Directory="dir_include_libbpf_include_asm">
<Component Id="BARRIER.H" DiskId="1" Guid="{999F024F-ECC5-4CD1-AAAA-39E185AFAB08}">
<File Id="BARRIER.H" Name="barrier.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\include\asm\barrier.h" />
</Component>
</ComponentGroup>
<ComponentGroup Id="eBPF_Development_include_libbpf_include_linux" Directory="dir_include_libbpf_include_linux">
<Component Id="COMPILER.H" DiskId="1" Guid="{417DA64B-E685-4EF6-8D96-18E9A41B003F}">
<File Id="COMPILER.H" Name="compiler.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\include\linux\compiler.h" />
</Component>
<Component Id="ERR.H" DiskId="1" Guid="{983B1790-3F35-45EF-9937-B0EDD9F2FA37}">
<File Id="ERR.H" Name="err.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\include\linux\err.h" />
</Component>
<Component Id="FILTER.H" DiskId="1" Guid="{60531224-DD83-4C83-BD25-688D2867681B}">
<File Id="FILTER.H" Name="filter.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\include\linux\filter.h" />
</Component>
<Component Id="KERNEL.H" DiskId="1" Guid="{8B0217C4-5DC9-4456-9912-AF98F2B56F80}">
<File Id="KERNEL.H" Name="kernel.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\include\linux\kernel.h" />
</Component>
<Component Id="LIST.H" DiskId="1" Guid="{E1D9D7E7-C942-4BCB-B8D2-014757A611F0}">
<File Id="LIST.H" Name="list.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\include\linux\list.h" />
</Component>
<Component Id="OVERFLOW.H" DiskId="1" Guid="{6BB5398C-E110-4496-A5DF-39401CFB6C7C}">
<File Id="OVERFLOW.H" Name="overflow.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\include\linux\overflow.h" />
</Component>
<Component Id="RING_BUFFER.H" DiskId="1" Guid="{5B9CEBE1-2C23-43A3-A48A-292766BE28B4}">
<File Id="RING_BUFFER.H" Name="ring_buffer.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\include\linux\ring_buffer.h" />
</Component>
<Component Id="TYPES_1.H" DiskId="1" Guid="{F624C418-861D-4F8D-B05A-7BFB075D35BE}">
<File Id="TYPES_1.H" Name="types.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\include\linux\types.h" />
</Component>
</ComponentGroup>
<ComponentGroup Id="eBPF_Development_include_libbpf_include_uapi" Directory="dir_include_libbpf_include_uapi" />
<ComponentGroup Id="eBPF_Development_include_libbpf_include_uapi_linux" Directory="dir_include_libbpf_include_uapi_linux">
<Component Id="BPF.H_3" DiskId="1" Guid="{CBACC6D2-C5DC-4F47-9A10-873CFCE5900C}">
<File Id="BPF.H_3" Name="bpf.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\include\uapi\linux\bpf.h" />
</Component>
<Component Id="BPF_COMMON.H" DiskId="1" Guid="{2F635111-E84D-4862-95FE-B94D14CD9BEC}">
<File Id="BPF_COMMON.H" Name="bpf_common.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\include\uapi\linux\bpf_common.h" />
</Component>
<Component Id="BTF.H" DiskId="1" Guid="{B8F4A5D4-5355-43D7-AE31-27B0905D04C3}">
<File Id="BTF.H" Name="btf.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\include\uapi\linux\btf.h" />
</Component>
<Component Id="IF_LINK.H" DiskId="1" Guid="{4882B98F-B313-4D8F-A268-4082BCB6AFF5}">
<File Id="IF_LINK.H" Name="if_link.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\include\uapi\linux\if_link.h" />
</Component>
<Component Id="IF_XDP.H" DiskId="1" Guid="{5AABA8F2-4D4F-40D4-B273-ABC022DBA3A4}">
<File Id="IF_XDP.H" Name="if_xdp.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\include\uapi\linux\if_xdp.h" />
</Component>
<Component Id="NETLINK.H" DiskId="1" Guid="{9FE3D961-82F7-44EB-8941-0AF215F7BBFB}">
<File Id="NETLINK.H" Name="netlink.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\include\uapi\linux\netlink.h" />
</Component>
<Component Id="PERF_EVENT.H" DiskId="1" Guid="{287B4EA6-5AED-4791-A579-5FFEFE0B1901}">
<File Id="PERF_EVENT.H" Name="perf_event.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\include\uapi\linux\perf_event.h" />
</Component>
<Component Id="PKT_CLS.H" DiskId="1" Guid="{DA933141-A16D-4715-9C16-0B03F86A7A91}">
<File Id="PKT_CLS.H" Name="pkt_cls.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\include\uapi\linux\pkt_cls.h" />
</Component>
<Component Id="PKT_SCHED.H" DiskId="1" Guid="{CC3A71B7-7E14-4AF1-9F29-980E72C19A26}">
<File Id="PKT_SCHED.H" Name="pkt_sched.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\include\uapi\linux\pkt_sched.h" />
</Component>
</ComponentGroup>
<ComponentGroup Id="eBPF_Development_include_libbpf_src" Directory="dir_include_libbpf_src">
<Component Id="BPF_1.H" DiskId="1" Guid="{F08F4178-620F-4919-8F97-0A988EE22E6A}">
<File Id="BPF_1.H" Name="bpf.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\src\bpf.h" />
</Component>
<Component Id="BPF_CORE_READ.H" DiskId="1" Guid="{421BC497-8EB2-460C-ACC0-39510D66C8B1}">
<File Id="BPF_CORE_READ.H" Name="bpf_core_read.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\src\bpf_core_read.h" />
</Component>
<Component Id="BPF_ENDIAN_1.H" DiskId="1" Guid="{2C17136B-4451-4412-9764-E903B8AC1F06}">
<File Id="BPF_ENDIAN_1.H" Name="bpf_endian.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\src\bpf_endian.h" />
</Component>
<Component Id="BPF_GEN_INTERNAL.H" DiskId="1" Guid="{C0F686E9-F086-41FD-9D3D-E23B84B942F9}">
<File Id="BPF_GEN_INTERNAL.H" Name="bpf_gen_internal.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\src\bpf_gen_internal.h" />
</Component>
<Component Id="BPF_HELPERS_1.H" DiskId="1" Guid="{FF2CDD1A-BB03-4580-AC2B-5EC477E32ACE}">
<File Id="BPF_HELPERS_1.H" Name="bpf_helpers.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\src\bpf_helpers.h" />
</Component>
<Component Id="BPF_HELPER_DEFS_1.H" DiskId="1" Guid="{9FD016D9-D5D3-4A11-BAC7-64BD68F1F61C}">
<File Id="BPF_HELPER_DEFS_1.H" Name="bpf_helper_defs.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\src\bpf_helper_defs.h" />
</Component>
<Component Id="BPF_TRACING.H" DiskId="1" Guid="{DD88A4DF-C36D-4D48-B191-9C2E3C8768E8}">
<File Id="BPF_TRACING.H" Name="bpf_tracing.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\src\bpf_tracing.h" />
</Component>
<Component Id="BTF_1.H" DiskId="1" Guid="{1D54C166-3E43-41A0-ABAC-941237C12A7E}">
<File Id="BTF_1.H" Name="btf.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\src\btf.h" />
</Component>
<Component Id="HASHMAP_1.H" DiskId="1" Guid="{C51AD9E3-9DF4-483B-844F-05B5F723330C}">
<File Id="HASHMAP_1.H" Name="hashmap.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\src\hashmap.h" />
</Component>
<Component Id="LIBBPF_1.H" DiskId="1" Guid="{77100F8C-A601-45B8-AD07-3C2B0F31FCF4}">
<File Id="LIBBPF_1.H" Name="libbpf.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\src\libbpf.h" />
</Component>
<Component Id="LIBBPF_COMMON.H" DiskId="1" Guid="{46E4A472-4975-40F4-B825-1C26D5D71A15}">
<File Id="LIBBPF_COMMON.H" Name="libbpf_common.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\src\libbpf_common.h" />
</Component>
<Component Id="LIBBPF_INTERNAL.H" DiskId="1" Guid="{EE258EDC-DDF9-44DB-92D1-93D33B45CF4D}">
<File Id="LIBBPF_INTERNAL.H" Name="libbpf_internal.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\src\libbpf_internal.h" />
</Component>
<Component Id="LIBBPF_LEGACY_1.H" DiskId="1" Guid="{4C687F08-30C6-4298-9632-2CD91566669B}">
<File Id="LIBBPF_LEGACY_1.H" Name="libbpf_legacy.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\src\libbpf_legacy.h" />
</Component>
<Component Id="LIBBPF_VERSION.H" DiskId="1" Guid="{763C6514-9295-436B-87DF-54789F444685}">
<File Id="LIBBPF_VERSION.H" Name="libbpf_version.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\src\libbpf_version.h" />
</Component>
<Component Id="NLATTR.H" DiskId="1" Guid="{1624501C-4523-4E99-A594-274FDE8C1128}">
<File Id="NLATTR.H" Name="nlattr.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\src\nlattr.h" />
</Component>
<Component Id="RELO_CORE.H" DiskId="1" Guid="{B911127B-3702-49F2-A97F-15268F905EE3}">
<File Id="RELO_CORE.H" Name="relo_core.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\src\relo_core.h" />
</Component>
<Component Id="SKEL_INTERNAL.H" DiskId="1" Guid="{674B4B4C-968B-4593-948D-4BD623EC4E13}">
<File Id="SKEL_INTERNAL.H" Name="skel_internal.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\src\skel_internal.h" />
</Component>
<Component Id="STRSET.H" DiskId="1" Guid="{00A310E8-6886-4C45-8BEA-F5121B2AAD0A}">
<File Id="STRSET.H" Name="strset.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\src\strset.h" />
</Component>
<Component Id="STR_ERROR.H" DiskId="1" Guid="{E9AC241C-5A14-4C3B-96F4-AB79211DB9F4}">
<File Id="STR_ERROR.H" Name="str_error.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\src\str_error.h" />
</Component>
<Component Id="USDT.BPF.H" DiskId="1" Guid="{7E29208F-3B05-4F1E-A425-1BD8759CD659}">
<File Id="USDT.BPF.H" Name="usdt.bpf.h" KeyPath="yes" Source="$(var.SolutionDir)external\bpftool\libbpf\src\usdt.bpf.h" />
</Component>
</ComponentGroup>
<ComponentGroup Id="eBPF_Development_include_uapi_linux" Directory="dir_include_uapi_linux">
<Component Id="BPF.H_4" DiskId="1" Guid="{CEF66B1A-8225-4B84-8239-C5238DA41BF2}">
<File Id="BPF.H_4" Name="bpf.h" Source="$(var.SolutionDir)include\uapi\linux\bpf.h" />
</Component>
<Component Id="IF_ETHER.H" DiskId="1" Guid="{48230CCC-44D2-4875-91EF-12631D00A741}">
<File Id="IF_ETHER.H" Name="if_ether.h" Source="$(var.SolutionDir)include\uapi\linux\if_ether.h" />
</Component>
<Component Id="IN.H" DiskId="1" Guid="{D7FFD894-2020-42C0-B6D3-10183CEC5452}">
<File Id="IN.H" Name="in.h" Source="$(var.SolutionDir)include\uapi\linux\in.h" />
</Component>
<Component Id="IP.H" DiskId="1" Guid="{4A7B59AE-4F8C-4BFE-AD76-F42F04C494E4}">
<File Id="IP.H" Name="ip.h" Source="$(var.SolutionDir)include\uapi\linux\ip.h" />
</Component>
<Component Id="TCP.H" DiskId="1" Guid="{A66521EB-BA4F-4741-969D-B727585BBE3C}">
<File Id="TCP.H" Name="tcp.h" Source="$(var.SolutionDir)include\uapi\linux\tcp.h" />
</Component>
</ComponentGroup>
<ComponentGroup Id="eBPF_Development_include_user" Directory="dir_include_user"/>
<ComponentGroup Id="eBPF_Development_libs" Directory="dir_lib">
<Component Id="eBPFApi_lib" Guid="{A164197B-3C57-4ECA-B138-CBF558DA4401}">
<File Id="EbpfApi.lib" Name="EbpfApi.lib" DiskId="1" Source="$(var.api.TargetDir)EbpfApi.lib" />
</Component>
</ComponentGroup>
</Fragment>
<!-- Define the product's <Testing> components -->
<Fragment>
<ComponentGroup Id="eBPF_Testing_Components" Directory="dir_testing">
<Component Id="API_TEST.EXE" DiskId="1" Guid="{70AA4D35-45C4-466A-AE08-64A38E4C50F2}">
<File Id="API_TEST.EXE" Name="api_test.exe" Source="$(var.api_test.TargetDir)api_test.exe" />
</Component>
<Component Id="API_TEST.PDB" DiskId="1" Guid="{0884D5FB-CD5F-4780-892C-F9B37DF95989}">
<File Id="API_TEST.PDB" Name="api_test.pdb" Source="$(var.api_test.TargetDir)api_test.pdb" />
</Component>
<Component Id="BAD_MAP_NAME.O" DiskId="1" Guid="{6FFEB06E-D0B0-4390-BF68-4163D190B5A7}">
<File Id="BAD_MAP_NAME.O" Name="bad_map_name.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\bad_map_name.o" />
</Component>
<Component Id="BAD_MAP_NAME_UM.DLL" DiskId="1" Guid="{CA9B3436-C77D-4B42-88BB-472ADFD6980F}">
<File Id="BAD_MAP_NAME_UM.DLL" Name="bad_map_name_um.dll" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\bad_map_name_um.dll" />
</Component>
<Component Id="BAD_MAP_NAME_UM.PDB" DiskId="1" Guid="{520F9698-111B-4F03-9E60-84A6F5508DE1}">
<File Id="BAD_MAP_NAME_UM.PDB" Name="bad_map_name_um.pdb" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\bad_map_name_um.pdb" />
</Component>
<Component Id="BINDMONITOR.O" DiskId="1" Guid="{88D66354-E6DF-4BE4-B1D4-3F716A7F81AB}">
<File Id="BINDMONITOR.O" Name="bindmonitor.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\bindmonitor.o" />
</Component>
<Component Id="BINDMONITOR.SYS" DiskId="1" Guid="{D36736C9-35B0-41AD-A19F-7E122035DC70}">
<File Id="BINDMONITOR.SYS" Name="bindmonitor.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\bindmonitor.sys" />
</Component>
<Component Id="BINDMONITOR_UM.DLL" DiskId="1" Guid="{D7E035F7-7CF7-499A-8547-29E619068B21}">
<File Id="BINDMONITOR_UM.DLL" Name="bindmonitor_um.dll" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\bindmonitor_um.dll" />
</Component>
<Component Id="BINDMONITOR_UM.PDB" DiskId="1" Guid="{0AADF5BA-B2CE-41EB-A9B2-0F22F47A1454}">
<File Id="BINDMONITOR_UM.PDB" Name="bindmonitor_um.pdb" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\bindmonitor_um.pdb" />
</Component>
<Component Id="BINDMONITOR_RINGBUF.O" DiskId="1" Guid="{BFF28F26-F7A5-44B0-9289-AD9F4A19E33E}">
<File Id="BINDMONITOR_RINGBUF.O" Name="bindmonitor_ringbuf.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\bindmonitor_ringbuf.o" />
</Component>
<Component Id="BINDMONITOR_RINGBUF.SYS" DiskId="1" Guid="{8CC623C1-D5E0-4D23-A9DF-B785C5F01E02}">
<File Id="BINDMONITOR_RINGBUF.SYS" Name="bindmonitor_ringbuf.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\bindmonitor_ringbuf.sys" />
</Component>
<Component Id="BINDMONITOR_RINGBUF_UM.DLL" DiskId="1" Guid="{ABA1E89F-C6B5-4EAB-812B-52D05DB1F11C}">
<File Id="BINDMONITOR_RINGBUF_UM.DLL" Name="bindmonitor_ringbuf_um.dll" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\bindmonitor_ringbuf_um.dll" />
</Component>
<Component Id="BINDMONITOR_RINGBUF_UM.PDB" DiskId="1" Guid="{FB8688DC-43FB-475A-ADB5-B669A97A435C}">
<File Id="BINDMONITOR_RINGBUF_UM.PDB" Name="bindmonitor_ringbuf_um.pdb" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\bindmonitor_ringbuf_um.pdb" />
</Component>
<Component Id="BINDMONITOR_MT_TAILCALL.O" DiskId="1" Guid="{5AF0DDDA-205B-440D-9F2F-B3554A22F2B1}">
<File Id="BINDMONITOR_MT_TAILCALL.O" Name="bindmonitor_mt_tailcall.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\bindmonitor_mt_tailcall.o" />
</Component>
<Component Id="BINDMONITOR_MT_TAILCALL.SYS" DiskId="1" Guid="{BAFF9117-CF1D-40DD-8B4A-5B72F181DB99}">
<File Id="BINDMONITOR_MT_TAILCALL.SYS" Name="bindmonitor_mt_tailcall.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\bindmonitor_mt_tailcall.sys" />
</Component>
<Component Id="BINDMONITOR_MT_TAILCALL_UM.DLL" DiskId="1" Guid="{72FEF59C-A7D8-4BB5-B11E-5A125073723E}">
<File Id="BINDMONITOR_MT_TAILCALL_UM.DLL" Name="bindmonitor_mt_tailcall_um.dll" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\bindmonitor_mt_tailcall_um.dll" />
</Component>
<Component Id="BINDMONITOR_MT_TAILCALL_UM.PDB" DiskId="1" Guid="{70AD50CC-C376-4FD4-900E-1157F9A74A12}">
<File Id="BINDMONITOR_MT_TAILCALL_UM.PDB" Name="bindmonitor_mt_tailcall_um.pdb" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\bindmonitor_mt_tailcall_um.pdb" />
</Component>
<Component Id="BINDMONITOR_TAILCALL.O" DiskId="1" Guid="{6A37AE43-179A-46BD-97D5-3D02B6807765}">
<File Id="BINDMONITOR_TAILCALL.O" Name="bindmonitor_tailcall.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\bindmonitor_tailcall.o" />
</Component>
<Component Id="BINDMONITOR_TAILCALL.SYS" DiskId="1" Guid="{310B89C6-2EDB-41F8-8455-2738A07A6DF9}">
<File Id="BINDMONITOR_TAILCALL.SYS" Name="bindmonitor_tailcall.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\bindmonitor_tailcall.sys" />
</Component>
<Component Id="BINDMONITOR_TAILCALL_UM.DLL" DiskId="1" Guid="{16069864-43C3-4B4A-9409-4252228DA976}">
<File Id="BINDMONITOR_TAILCALL_UM.DLL" Name="bindmonitor_tailcall_um.dll" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\bindmonitor_tailcall_um.dll" />
</Component>
<Component Id="BINDMONITOR_TAILCALL_UM.PDB" DiskId="1" Guid="{3FB015CB-382B-4A1F-A1A1-473A3F2A083E}">
<File Id="BINDMONITOR_TAILCALL_UM.PDB" Name="bindmonitor_tailcall_um.pdb" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\bindmonitor_tailcall_um.pdb" />
</Component>
<Component Id="BPF.O" DiskId="1" Guid="{EACD2AE9-0C63-4C0D-BC1D-FA698DB58A13}">
<File Id="BPF.O" Name="bpf.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\bpf.o" />
</Component>
<Component Id="BPF.SYS" DiskId="1" Guid="{2CDA8C95-AA03-41F1-949B-B203F0908227}">
<File Id="BPF.SYS" Name="bpf.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\bpf.sys" />
</Component>
<Component Id="BPF_CALL.O" DiskId="1" Guid="{438B5ECE-4410-477D-A60C-A5A68579791D}">
<File Id="BPF_CALL.O" Name="bpf_call.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\bpf_call.o" />
</Component>
<Component Id="BPF_CALL.SYS" DiskId="1" Guid="{D1F8B3BB-C3DF-4DDF-AD84-92A8613AA9C0}">
<File Id="BPF_CALL.SYS" Name="bpf_call.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\bpf_call.sys" />
</Component>
<Component Id="BPFTOOL_TESTS.EXE" DiskId="1" Guid="{9F720714-FD99-44DA-AB6C-2FDA71258628}">
<File Id="BPFTOOL_TESTS.EXE" Name="bpftool_test.exe" Source="$(var.bpftool_tests.TargetDir)bpftool_tests.exe" />
</Component>
<Component Id="BPFTOOL_TESTS.PDB" DiskId="1" Guid="{8D3E4E35-14D0-45BD-B5E5-036B8C4777C5}">
<File Id="BPFTOOL_TESTS.PDB" Name="bpftool_test.pdb" Source="$(var.bpftool_tests.TargetDir)bpftool_tests.pdb" />
</Component>
<Component Id="CGROUP_COUNT_CONNECT4.O" DiskId="1" Guid="{226DB1EF-7DF8-4D9C-BAE3-7ACFE28FE580}">
<File Id="CGROUP_COUNT_CONNECT4.O" Name="cgroup_count_connect4.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\cgroup_count_connect4.o" />
</Component>
<Component Id="CGROUP_COUNT_CONNECT4.SYS" DiskId="1" Guid="{E91552C6-EC5B-4DEC-B5D2-23E0054498E4}">
<File Id="CGROUP_COUNT_CONNECT4.SYS" Name="cgroup_count_connect4.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\cgroup_count_connect4.sys" />
</Component>
<Component Id="CGROUP_COUNT_CONNECT4_UM.DLL" DiskId="1" Guid="{814BAEF7-7FEC-442C-8FE4-74F06C9BE10B}">
<File Id="CGROUP_COUNT_CONNECT4_UM.DLL" Name="cgroup_count_connect4_um.dll" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\cgroup_count_connect4_um.dll" />
</Component>
<Component Id="CGROUP_COUNT_CONNECT4_UM.PDB" DiskId="1" Guid="{3F6D5AAA-F99E-4EB6-B084-CECBD974A850}">
<File Id="CGROUP_COUNT_CONNECT4_UM.PDB" Name="cgroup_count_connect4.pdb" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\cgroup_count_connect4_um.pdb" />
</Component>
<Component Id="CGROUP_COUNT_CONNECT6.O" DiskId="1" Guid="{D5DE9C5B-4337-4557-80E4-6269E8FB0D89}">
<File Id="CGROUP_COUNT_CONNECT6.O" Name="cgroup_count_connect6.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\cgroup_count_connect6.o" />
</Component>
<Component Id="CGROUP_COUNT_CONNECT6.SYS" DiskId="1" Guid="{ADD6BF4A-631D-4157-8F5A-4D9CEC13CB82}">
<File Id="CGROUP_COUNT_CONNECT6.SYS" Name="cgroup_count_connect6.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\cgroup_count_connect6.sys" />
</Component>
<Component Id="CGROUP_COUNT_CONNECT6_UM.DLL" DiskId="1" Guid="{8F638443-533A-459F-91D8-BE0788D5E7E6}">
<File Id="CGROUP_COUNT_CONNECT6_UM.DLL" Name="cgroup_count_connect6_um.dll" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\cgroup_count_connect6_um.dll" />
</Component>
<Component Id="CGROUP_COUNT_CONNECT6_UM.PDB" DiskId="1" Guid="{510478D0-0F1E-428E-998C-7347470459F6}">
<File Id="CGROUP_COUNT_CONNECT6_UM.PDB" Name="cgroup_count_connect6.pdb" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\cgroup_count_connect6_um.pdb" />
</Component>
<Component Id="CGROUP_MT_CONNECT4.O" DiskId="1" Guid="{BE21906A-A547-42A5-8B24-5690049546C1}">
<File Id="CGROUP_MT_CONNECT4.O" Name="cgroup_mt_connect4.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\cgroup_mt_connect4.o" />
</Component>
<Component Id="CGROUP_MT_CONNECT4.SYS" DiskId="1" Guid="{9E8935F1-4B11-4F04-956A-547945F67758}">
<File Id="CGROUP_MT_CONNECT4.SYS" Name="cgroup_mt_connect4.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\cgroup_mt_connect4.sys" />
</Component>
<Component Id="CGROUP_MT_CONNECT4_UM.DLL" DiskId="1" Guid="{459D9477-D7B8-4521-AA35-9CB0336531D8}">
<File Id="CGROUP_MT_CONNECT4_UM.DLL" Name="cgroup_mt_connect4_um.dll" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\cgroup_mt_connect4_um.dll" />
</Component>
<Component Id="CGROUP_MT_CONNECT4_UM.PDB" DiskId="1" Guid="{4B4FAAB3-DBFF-411B-94CC-C85FF2FDE633}">
<File Id="CGROUP_MT_CONNECT4_UM.PDB" Name="cgroup_mt_connect4.pdb" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\cgroup_mt_connect4_um.pdb" />
</Component>
<Component Id="CGROUP_MT_CONNECT6.O" DiskId="1" Guid="{E0BC11FC-4A26-4E03-9BAA-75126DB4286F}">
<File Id="CGROUP_MT_CONNECT6.O" Name="cgroup_mt_connect6.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\cgroup_mt_connect6.o" />
</Component>
<Component Id="CGROUP_MT_CONNECT6.SYS" DiskId="1" Guid="{7868E2CD-1DEE-4022-8584-A7634E6BB3A5}">
<File Id="CGROUP_MT_CONNECT6.SYS" Name="cgroup_mt_connect6.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\cgroup_mt_connect6.sys" />
</Component>
<Component Id="CGROUP_MT_CONNECT6_UM.DLL" DiskId="1" Guid="{0C5566A3-73DA-4894-8B2F-1281EF6C7B30}">
<File Id="CGROUP_MT_CONNECT6_UM.DLL" Name="cgroup_mt_connect6_um.dll" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\cgroup_mt_connect6_um.dll" />
</Component>
<Component Id="CGROUP_MT_CONNECT6_UM.PDB" DiskId="1" Guid="{DE4318D8-6EE3-417D-924D-8B83BB7F2FFB}">
<File Id="CGROUP_MT_CONNECT6_UM.PDB" Name="cgroup_mt_connect6.pdb" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\cgroup_mt_connect6_um.pdb" />
</Component>
<Component Id="CGROUP_SOCK_ADDR.O" DiskId="1" Guid="{6AF0B01D-554F-4918-8D00-AA4104DD5BE0}">
<File Id="CGROUP_SOCK_ADDR.O" Name="cgroup_sock_addr.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\cgroup_sock_addr.o" />
</Component>
<Component Id="CGROUP_SOCK_ADDR.SYS" DiskId="1" Guid="{02B9F35C-03BA-477E-86C8-2FFFC1C6B525}">
<File Id="CGROUP_SOCK_ADDR.SYS" Name="cgroup_sock_addr.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\cgroup_sock_addr.sys" />
</Component>
<Component Id="CGROUP_SOCK_ADDR_UM.DLL" DiskId="1" Guid="{27E04F5B-E13A-4D37-8CDE-BD18BD93A45B}">
<File Id="CGROUP_SOCK_ADDR_UM.DLL" Name="cgroup_sock_addr_um.dll" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\cgroup_sock_addr_um.dll" />
</Component>
<Component Id="CGROUP_SOCK_ADDR_UM.PDB" DiskId="1" Guid="{40BC9394-DE30-468D-ABA9-8DAC8C76D492}">
<File Id="CGROUP_SOCK_ADDR_UM.PDB" Name="cgroup_sock_addr_um.pdb" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\cgroup_sock_addr_um.pdb" />
</Component>
<Component Id="CGROUP_SOCK_ADDR2.O" DiskId="1" Guid="{EC56B373-152C-4ECB-9491-266AE910FFEC}">
<File Id="CGROUP_SOCK_ADDR2.O" Name="cgroup_sock_addr2.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\cgroup_sock_addr2.o" />
</Component>
<Component Id="CGROUP_SOCK_ADDR2.SYS" DiskId="1" Guid="{3AEDA230-16DB-40D5-AE53-3312460BC741}">
<File Id="CGROUP_SOCK_ADDR2.SYS" Name="cgroup_sock_addr2.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\cgroup_sock_addr2.sys" />
</Component>
<Component Id="CGROUP_SOCK_ADDR2_UM.DLL" DiskId="1" Guid="{6CEFE90B-B8C4-4610-B295-302586D45704}">
<File Id="CGROUP_SOCK_ADDR2_UM.DLL" Name="cgroup_sock_addr2_um.dll" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\cgroup_sock_addr2_um.dll" />
</Component>
<Component Id="CGROUP_SOCK_ADDR2_UM.PDB" DiskId="1" Guid="{AF48035A-42DE-4383-AE5B-1645FF293F6F}">
<File Id="CGROUP_SOCK_ADDR2_UM.PDB" Name="cgroup_sock_addr2_um.pdb" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\cgroup_sock_addr2_um.pdb" />
</Component>
<Component Id="DECAP_PERMIT_PACKET.O" DiskId="1" Guid="{EAD33B50-0E47-464B-A919-1A24B64C686A}">
<File Id="DECAP_PERMIT_PACKET.O" Name="decap_permit_packet.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\decap_permit_packet.o" />
</Component>
<Component Id="DECAP_PERMIT_PACKET.SYS" DiskId="1" Guid="{CB70F111-B380-43E9-A938-4A812CBD24D4}">
<File Id="DECAP_PERMIT_PACKET.SYS" Name="decap_permit_packet.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\decap_permit_packet.sys" />
</Component>
<Component Id="DIVIDE_BY_ZERO.O" DiskId="1" Guid="{DBCE744E-08BC-4241-816E-47D13E7F15DC}">
<File Id="DIVIDE_BY_ZERO.O" Name="divide_by_zero.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\divide_by_zero.o" />
</Component>
<Component Id="DIVIDE_BY_ZERO.SYS" DiskId="1" Guid="{B691F6B8-65FF-45C6-A1EC-11E8EB15103F}">
<File Id="DIVIDE_BY_ZERO.SYS" Name="divide_by_zero.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\divide_by_zero.sys" />
</Component>
<Component Id="DIVIDE_BY_ZERO_UM.DLL" DiskId="1" Guid="{7E4D6872-F0A5-4AEA-B95B-4F865B7805EF}">
<File Id="DIVIDE_BY_ZERO_UM.DLL" Name="divide_by_zero_um.dll" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\divide_by_zero_um.dll" />
</Component>
<Component Id="DIVIDE_BY_ZERO_UM.PDB" DiskId="1" Guid="{68021699-0454-4C6E-8220-0E8D58D3DC9F}">
<File Id="DIVIDE_BY_ZERO_UM.PDB" Name="divide_by_zero_um.pdb" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\divide_by_zero_um.pdb" />
</Component>
<Component Id="DROPPACKET.O" DiskId="1" Guid="{32E91251-1D4F-48BA-978E-85F30E7903C5}">
<File Id="DROPPACKET.O" Name="droppacket.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\droppacket.o" />
</Component>
<Component Id="DROPPACKET.SYS" DiskId="1" Guid="{9B9A5A98-782F-40FA-B3CF-118DEDEEE832}">
<File Id="DROPPACKET.SYS" Name="droppacket.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\droppacket.sys" />
</Component>
<Component Id="DROPPACKET_UM.DLL" DiskId="1" Guid="{F4D422DB-ED15-48E2-8F99-B5BBA4B38EE1}">
<File Id="DROPPACKET_UM.DLL" Name="droppacket_um.dll" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\droppacket_um.dll" />
</Component>
<Component Id="DROPPACKET_UM.PDB" DiskId="1" Guid="{5579C444-7640-4C41-A214-33AC21D04C26}">
<File Id="DROPPACKET_UM.PDB" Name="droppacket_um.pdb" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\droppacket_um.pdb" />
</Component>
<Component Id="DROPPACKET_UNSAFE.O" DiskId="1" Guid="{40156401-DDEA-4435-B559-E7071D251395}">
<File Id="DROPPACKET_UNSAFE.O" Name="droppacket_unsafe.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\droppacket_unsafe.o" />
</Component>
<Component Id="EBPFCORE_USERSIM.DLL" DiskId="1" Guid="{860B3D19-02BE-482F-930A-B5B5CFAD2B82}">
<File Id="EBPFCORE_USERSIM.DLL" Name="ebpfcore_usersim.dll" Source="$(var.EbpfCore_Usersim.TargetPath)" />
</Component>
<Component Id="EBPFCORE_USERSIM.PDB" DiskId="1" Guid="{DD7FB772-A974-4D2C-880A-B17C2F69D063}">
<File Id="EBPFCORE_USERSIM.PDB" Name="ebpfcore_usersim.pdb" Source="$(var.EbpfCore_Usersim.TargetDir)ebpfcore_usersim.pdb" />
</Component>
<?if $(var.Configuration) = Debug ?>
<Component Id="EMPTY_UM.DLL" DiskId="1" Guid="{321F2303-53CC-4CF2-8D92-5FCA988BDCB5}">
<File Id="EMPTY_UM.DLL" Name="empty_um.dll" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\empty_um.dll" />
</Component>
<Component Id="EMPTY_UM.PDB" DiskId="1" Guid="{5A07EE87-FF00-47AB-BC15-0C8E1A5EF04F}">
<File Id="EMPTY_UM.PDB" Name="empty_um.pdb" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\empty_um.pdb" />
</Component>
<?endif?>
<Component Id="ENCAP_REFLECT_PACKET.O" DiskId="1" Guid="{767274A3-97F5-4F35-BB27-1A7166708AD8}">
<File Id="ENCAP_REFLECT_PACKET.O" Name="encap_reflect_packet.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\encap_reflect_packet.o" />
</Component>
<Component Id="ENCAP_REFLECT_PACKET.SYS" DiskId="1" Guid="{150DB22E-48FE-47C4-BD04-0F55F78360E3}">
<File Id="ENCAP_REFLECT_PACKET.SYS" Name="encap_reflect_packet.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\encap_reflect_packet.sys" />
</Component>
<?if $(var.Configuration) = Debug ?>
<Component Id="INVALID_MAPS1_UM.DLL" DiskId="1" Guid="{BC4496CD-3006-4EBF-96FE-D840E63E02AA}">
<File Id="INVALID_MAPS1_UM.DLL" Name="invalid_maps1_um.dll" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\invalid_maps1_um.dll" />
</Component>
<Component Id="INVALID_MAPS1_UM.PDB" DiskId="1" Guid="{FAA16483-274A-455E-AB84-31216F9302F8}">
<File Id="INVALID_MAPS1_UM.PDB" Name="invalid_maps1_um.pdb" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\invalid_maps1_um.pdb" />
</Component>
<Component Id="INVALID_MAPS2_UM.DLL" DiskId="1" Guid="{65CB9F94-05BD-41A8-BF76-99BCF99B324E}">
<File Id="INVALID_MAPS2_UM.DLL" Name="invalid_maps2_um.dll" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\invalid_maps2_um.dll" />
</Component>
<Component Id="INVALID_MAPS2_UM.PDB" DiskId="1" Guid="{94D8208D-832A-4274-A142-6BF2BCE453B5}">
<File Id="INVALID_MAPS2_UM.PDB" Name="invalid_maps2_um.pdb" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\invalid_maps2_um.pdb" />
</Component>
<Component Id="INVALID_MAPS3_UM.DLL" DiskId="1" Guid="{F29DFA6E-ED91-443D-971B-89401FAB7A15}">
<File Id="INVALID_MAPS3_UM.DLL" Name="invalid_maps3_um.dll" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\invalid_maps3_um.dll" />
</Component>
<Component Id="INVALID_MAPS3_UM.PDB" DiskId="1" Guid="{BC0A040E-E84D-471B-9E4B-D69968657300}">
<File Id="INVALID_MAPS3_UM.PDB" Name="invalid_maps3_um.pdb" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\invalid_maps3_um.pdb" />
</Component>
<Component Id="INVALID_HELPERS_UM.DLL" DiskId="1" Guid="{D69A5C0D-C585-4EBC-BC31-D2F08C9E20D0}">
<File Id="INVALID_HELPERS_UM.DLL" Name="invalid_helpers_um.dll" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\invalid_helpers_um.dll" />
</Component>
<Component Id="INVALID_HELPERS_UM.PDB" DiskId="1" Guid="{FE948E83-D312-4D08-A8CE-3CC24F4E6526}">
<File Id="INVALID_HELPERS_UM.PDB" Name="invalid_helpers_um.pdb" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\invalid_helpers_um.pdb" />
</Component>
<?endif?>
<Component Id="HAS_OF_MAP.O" DiskId="1" Guid="{c363ade6-46ef-48e7-8f8b-71c90896e0b3}">
<File Id="HAS_OF_MAP.O" Name="hash_of_map.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\hash_of_map.o" />
</Component>
<Component Id="HAS_OF_MAP.SYS" DiskId="1" Guid="{37a23ba5-313e-42e0-9328-ff2cc9c72745}">
<File Id="HAS_OF_MAP.SYS" Name="hash_of_map.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\hash_of_map.sys" />
</Component>
<Component Id="HAS_OF_MAP_UM.DLL" DiskId="1" Guid="{8c9ad5ef-7507-452d-a3f5-25e3d8cd0baf}">
<File Id="HAS_OF_MAP_UM.DLL" Name="hash_of_map_um.dll" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\hash_of_map_um.dll" />
</Component>
<Component Id="HAS_OF_MAP_UM.PDB" DiskId="1" Guid="{1ba1063b-438e-4ce6-b1a5-c049c702265d}">
<File Id="HAS_OF_MAP_UM.PDB" Name="hash_of_map_um.pdb" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\hash_of_map_um.pdb" />
</Component>
<Component Id="MAP.O" DiskId="1" Guid="{C0461A4A-1195-4965-9710-8EED78A271F6}">
<File Id="MAP.O" Name="map.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\map.o" />
</Component>
<Component Id="MAP.SYS" DiskId="1" Guid="{F4A14D78-AF2D-4305-9253-2DFAD8E86B36}">
<File Id="MAP.SYS" Name="map.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\map.sys" />
</Component>
<Component Id="MAP_UM.DLL" DiskId="1" Guid="{80C8B103-6212-4F86-B6B3-05996C2639D0}">
<File Id="MAP_UM.DLL" Name="map_um.dll" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\map_um.dll" />
</Component>
<Component Id="MAP_UM.PDB" DiskId="1" Guid="{6F54DE00-C439-442D-8DAF-F0FE01E9D002}">
<File Id="MAP_UM.PDB" Name="map_um.pdb" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\map_um.pdb" />
</Component>
<Component Id="MAP_IN_MAP_BTF.O" DiskId="1" Guid="{D5BF9636-2A17-4E6C-8EFF-824794F48A01}">
<File Id="MAP_IN_MAP_BTF.O" Name="map_in_map_btf.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\map_in_map_btf.o" />
</Component>
<Component Id="MAP_IN_MAP_BTF.SYS" DiskId="1" Guid="{6AF324AB-39CD-4189-A18F-7DA43EFFF6CD}">
<File Id="MAP_IN_MAP_BTF.SYS" Name="map_in_map_btf.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\map_in_map_btf.sys" />
</Component>
<Component Id="MAP_IN_MAP_BTF_UM.DLL" DiskId="1" Guid="{E625FEC7-6D4A-495C-B8CE-14D39F572719}">
<File Id="MAP_IN_MAP_BTF_UM.DLL" Name="map_in_map_btf_um.dll" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\map_in_map_btf_um.dll" />
</Component>
<Component Id="MAP_IN_MAP_BTF_UM.PDB" DiskId="1" Guid="{91D709F0-FABE-4EDF-9FB4-61E5EA633EBC}">
<File Id="MAP_IN_MAP_BTF_UM.PDB" Name="map_in_map_btf_um.pdb" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\map_in_map_btf_um.pdb" />
</Component>
<Component Id="MAP_IN_MAP_LEGACY_IDX.O" DiskId="1" Guid="{89FFF549-4331-43FA-8719-E7D7B113FC97}">
<File Id="MAP_IN_MAP_LEGACY_IDX.O" Name="map_in_map_legacy_idx.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\map_in_map_legacy_idx.o" />
</Component>
<Component Id="MAP_IN_MAP_LEGACY_IDX.SYS" DiskId="1" Guid="{5DB35CCD-010F-4672-BDF4-FB848CBECDB5}">
<File Id="MAP_IN_MAP_LEGACY_IDX.SYS" Name="map_in_map_legacy_idx.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\map_in_map_legacy_idx.sys" />
</Component>
<Component Id="MAP_IN_MAP_LEGACY_IDX_UM.DLL" DiskId="1" Guid="{95797C3C-1998-4712-8B65-F40C3B224357}">
<File Id="MAP_IN_MAP_LEGACY_IDX_UM.DLL" Name="map_in_map_legacy_idx_um.dll" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\map_in_map_legacy_idx_um.dll" />
</Component>
<Component Id="MAP_IN_MAP_LEGACY_IDX_UM.PDB" DiskId="1" Guid="{4E316722-513D-4EFB-B761-0F1602903B6B}">
<File Id="MAP_IN_MAP_LEGACY_IDX_UM.PDB" Name="map_in_map_legacy_idx_um.pdb" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\map_in_map_legacy_idx_um.pdb" />
</Component>
<Component Id="MAP_IN_MAP_LEGACY_ID.O" DiskId="1" Guid="{D198FFAB-E146-4ED3-96B3-9FBED450C7D7}">
<File Id="MAP_IN_MAP_LEGACY_ID.O" Name="map_in_map_legacy_id.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\map_in_map_legacy_id.o" />
</Component>
<Component Id="MAP_IN_MAP_LEGACY_ID.SYS" DiskId="1" Guid="{69B33845-E670-4485-A004-414BB39AB8B7}">
<File Id="MAP_IN_MAP_LEGACY_ID.SYS" Name="map_in_map_legacy_id.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\map_in_map_legacy_id.sys" />
</Component>
<Component Id="MAP_IN_MAP_LEGACY_ID_UM.DLL" DiskId="1" Guid="{F804A298-A598-4B2A-81C2-28D9021E1F54}">
<File Id="MAP_IN_MAP_LEGACY_ID_UM.DLL" Name="map_in_map_legacy_id_um.dll" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\map_in_map_legacy_id_um.dll" />
</Component>
<Component Id="MAP_IN_MAP_LEGACY_ID_UM.PDB" DiskId="1" Guid="{F2234642-B193-453E-B484-91E3028206F6}">
<File Id="MAP_IN_MAP_LEGACY_ID_UM.PDB" Name="map_in_map_legacy_id_um.pdb" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\map_in_map_legacy_id_um.pdb" />
</Component>
<Component Id="MAP_REUSE.O" DiskId="1" Guid="{3C17B815-A950-4103-A9D3-DB8EB5F41B47}">
<File Id="MAP_REUSE.O" Name="map_reuse.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\map_reuse.o" />
</Component>
<Component Id="MAP_REUSE.SYS" DiskId="1" Guid="{48775CE6-281A-4D6F-906D-78B56AAE61A6}">
<File Id="MAP_REUSE.SYS" Name="map_reuse.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\map_reuse.sys" />
</Component>
<Component Id="MAP_REUSE_UM.DLL" DiskId="1" Guid="{064F62B7-74BE-4EB7-B6A1-312E0626837F}">
<File Id="MAP_REUSE_UM.DLL" Name="map_reuse_um.dll" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\map_reuse_um.dll" />
</Component>
<Component Id="MAP_REUSE_UM.PDB" DiskId="1" Guid="{B9D6D648-94B1-4BCD-942C-EDF5A0F2306F}">
<File Id="MAP_REUSE_UM.PDB" Name="map_reuse_um.pdb" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\map_reuse_um.pdb" />
</Component>
<Component Id="MAP_REUSE_2.O" DiskId="1" Guid="{E32CF0E5-00E0-44D7-BE16-DD9FE35064D8}">
<File Id="MAP_REUSE_2.O" Name="map_reuse_2.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\map_reuse_2.o" />
</Component>
<Component Id="MAP_REUSE_2.SYS" DiskId="1" Guid="{8FA5D9E9-4A40-4562-B0D0-6CBA97993C9C}">
<File Id="MAP_REUSE_2.SYS" Name="map_reuse_2.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\map_reuse_2.sys" />
</Component>
<Component Id="MAP_REUSE_2_UM.DLL" DiskId="1" Guid="{0E1D94C2-7B89-486F-B757-9F8BA9BCABDE}">
<File Id="MAP_REUSE_2_UM.DLL" Name="map_reuse_2_um.dll" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\map_reuse_2_um.dll" />
</Component>
<Component Id="MAP_REUSE_2_UM.PDB" DiskId="1" Guid="{B5133346-F446-4CB8-8B49-CE3E813F9E74}">
<File Id="MAP_REUSE_2_UM.PDB" Name="map_reuse_2_um.pdb" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\map_reuse_2_um.pdb" />
</Component>
<Component Id="PIDTGID.O" DiskId="1" Guid="{85723409-15B9-499B-94F1-2AE72A5C8D85}">
<File Id="PIDTGID.O" Name="pidtgid.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\pidtgid.o" />
</Component>
<Component Id="PIDTGID.SYS" DiskId="1" Guid="{2CD5A445-523A-42F8-8965-0469A0415624}">
<File Id="PIDTGID.SYS" Name="pidtgid.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\pidtgid.sys" />
</Component>
<Component Id="PRINTK.O" DiskId="1" Guid="{6E02C38D-1024-495C-93C7-F998D7052CE5}">
<File Id="PRINTK.O" Name="printk.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\printk.o" />
</Component>
<Component Id="PRINTK.SYS" DiskId="1" Guid="{09399688-9C2F-47E2-B43E-330A4033013A}">
<File Id="PRINTK.SYS" Name="printk.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\printk.sys" />
</Component>
<Component Id="PRINTK_LEGACY.O" DiskId="1" Guid="{AFBC4E58-B9E2-4107-9554-731143CA2C62}">
<File Id="PRINTK_LEGACY.O" Name="printk_legacy.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\printk_legacy.o" />
</Component>
<Component Id="PRINTK_LEGACY.SYS" DiskId="1" Guid="{F4521398-B31B-4717-8446-14DF2CAA56A7}">
<File Id="PRINTK_LEGACY.SYS" Name="printk_legacy.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\printk_legacy.sys" />
</Component>
<Component Id="PRINTK_UNSAFE.O" DiskId="1" Guid="{10CBDD8C-BE25-43FD-86BB-A3A7A3129CE0}">
<File Id="PRINTK_UNSAFE.O" Name="printk_unsafe.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\printk_unsafe.o" />
</Component>
<Component Id="REFLECT_PACKET.O" DiskId="1" Guid="{4AA8E3D7-1453-468B-98EE-3340BE55BA9C}">
<File Id="REFLECT_PACKET.O" Name="reflect_packet.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\reflect_packet.o" />
</Component>
<Component Id="REFLECT_PACKET.SYS" DiskId="1" Guid="{FDF38463-AA17-4064-8FEB-7F2D02BBB17E}">
<File Id="REFLECT_PACKET.SYS" Name="reflect_packet.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\reflect_packet.sys" />
</Component>
<Component Id="RUN_TESTS.BAT" DiskId="1" Guid="{C263C5FF-4A39-4078-9406-545F7D41DA13}">
<File Id="RUN_TESTS.BAT" Name="run_tests.bat" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\run_tests.bat" />
</Component>
<Component Id="SAMPLE_EXT_APP.EXE" DiskId="1" Guid="{901A57AF-4B88-4F14-B84D-61FEA2979C40}">
<File Id="SAMPLE_EXT_APP.EXE" Name="sample_ext_app.exe" Source="$(var.sample_ext_app.TargetDir)sample_ext_app.exe" />
</Component>
<Component Id="SAMPLE_EXT_APP.PDB" DiskId="1" Guid="{9DE5D44E-0C55-4959-AF57-F5735E92089A}">
<File Id="SAMPLE_EXT_APP.PDB" Name="sample_ext_app.pdb" Source="$(var.sample_ext_app.TargetDir)sample_ext_app.pdb" />
</Component>
<Component Id="SOCKOPS.O" DiskId="1" Guid="{AA322CED-530D-4E07-9786-56C1658F7230}">
<File Id="SOCKOPS.O" Name="sockops.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\sockops.o" />
</Component>
<Component Id="SOCKOPS.SYS" DiskId="1" Guid="{335F6212-7C2C-4814-99E0-2A62CBE80C33}">
<File Id="SOCKOPS.SYS" Name="sockops.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\sockops.sys" />
</Component>
<Component Id="TAIL_CALL.O" DiskId="1" Guid="{9DF26DC2-595C-4DED-9983-3802ADEC10D7}">
<File Id="TAIL_CALL.O" Name="tail_call.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\tail_call.o" />
</Component>
<Component Id="TAIL_CALL.SYS" DiskId="1" Guid="{842D5A33-A004-4286-823C-09D5CAC7791C}">
<File Id="TAIL_CALL.SYS" Name="tail_call.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\tail_call.sys" />
</Component>
<Component Id="TAIL_CALL_UM.DLL" DiskId="1" Guid="{7FB5BE0D-A9CB-493F-81C0-A54DA41FBE0C}">
<File Id="TAIL_CALL_UM.DLL" Name="tail_call_um.dll" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\tail_call_um.dll" />
</Component>
<Component Id="TAIL_CALL_UM.PDB" DiskId="1" Guid="{1CA37AD4-CB7B-46CD-B46E-923013E999A1}">
<File Id="TAIL_CALL_UM.PDB" Name="tail_call_um.pdb" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\tail_call_um.pdb" />
</Component>
<Component Id="TAIL_CALL_BAD.O" DiskId="1" Guid="{98B8DA0B-18B3-4D74-B99B-A99F4D85CEE8}">
<File Id="TAIL_CALL_BAD.O" Name="tail_call_bad.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\tail_call_bad.o" />
</Component>
<Component Id="TAIL_CALL_BAD.SYS" DiskId="1" Guid="{16716C24-4C67-4481-BD44-63607A5F92EA}">
<File Id="TAIL_CALL_BAD.SYS" Name="tail_call_bad.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\tail_call_bad.sys" />
</Component>
<Component Id="TAIL_CALL_BAD_UM.DLL" DiskId="1" Guid="{0D4C5F32-98F8-4C72-9F79-1FB4C199CA04}">
<File Id="TAIL_CALL_BAD_UM.DLL" Name="tail_call_bad_um.dll" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\tail_call_bad_um.dll" />
</Component>
<Component Id="TAIL_CALL_BAD_UM.PDB" DiskId="1" Guid="{F7318887-4F2B-4863-84D0-157914B31C38}">
<File Id="TAIL_CALL_BAD_UM.PDB" Name="tail_call_bad_um.pdb" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\tail_call_bad_um.pdb" />
</Component>
<Component Id="TAIL_CALL_MAP.O" DiskId="1" Guid="{A3F68C4D-00BF-4FB7-8B49-2BFC69AF7ABB}">
<File Id="TAIL_CALL_MAP.O" Name="tail_call_map.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\tail_call_map.o" />
</Component>
<Component Id="TAIL_CALL_MAP.SYS" DiskId="1" Guid="{5A163653-8F38-40D0-91CC-A9AF991668F3}">
<File Id="TAIL_CALL_MAP.SYS" Name="tail_call_map.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\tail_call_map.sys" />
</Component>
<Component Id="TAIL_CALL_MULTIPLE.O" DiskId="1" Guid="{2779762A-9B87-490B-83CF-30A0C0C28CF3}">
<File Id="TAIL_CALL_MULTIPLE.O" Name="tail_call_multiple.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\tail_call_multiple.o" />
</Component>
<Component Id="TAIL_CALL_MULTIPLE.SYS" DiskId="1" Guid="{F5B07483-3477-4D84-B209-B85A8C503B86}">
<File Id="TAIL_CALL_MULTIPLE.SYS" Name="tail_call_multiple.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\tail_call_multiple.sys" />
</Component>
<Component Id="TAIL_CALL_MULTIPLE_UM.DLL" DiskId="1" Guid="{3C43A424-FC1E-4DB5-9DBE-50F25B7F1E00}">
<File Id="TAIL_CALL_MULTIPLE_UM.DLL" Name="tail_call_multiple_um.dll" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\tail_call_multiple_um.dll" />
</Component>
<Component Id="TAIL_CALL_MULTIPLE_UM.PDB" DiskId="1" Guid="{D918F2DB-BC80-406F-B0AD-0C340D5EF280}">
<File Id="TAIL_CALL_MULTIPLE_UM.PDB" Name="tail_call_multiple_um.pdb" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\tail_call_multiple_um.pdb" />
</Component>
<Component Id="TAIL_CALL_MAX_EXCEED.O" DiskId="1" Guid="{A3E840BD-B510-4F02-80A6-1EA0553C6746}">
<File Id="TAIL_CALL_MAX_EXCEED.O" Name="tail_call_max_exceed.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\tail_call_recursive.o" />
</Component>
<Component Id="TAIL_CALL_MAX_EXCEED.SYS" DiskId="1" Guid="{D3EE01E4-8258-46D4-89FA-C207960C90E6}">
<File Id="TAIL_CALL_MAX_EXCEED.SYS" Name="tail_call_max_exceed.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\tail_call_recursive.sys" />
</Component>
<Component Id="TAIL_CALL_MAX_EXCEED_UM.DLL" DiskId="1" Guid="{916F7BF5-6B8A-4C99-A09F-102CBB404AA5}">
<File Id="TAIL_CALL_MAX_EXCEED_UM.DLL" Name="tail_call_max_exceed_um.dll" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\tail_call_recursive_um.dll" />
</Component>
<Component Id="TAIL_CALL_MAX_EXCEED_UM.PDB" DiskId="1" Guid="{9A1BFAAD-D94F-4805-842F-B8DB77B6FC6C}">
<File Id="TAIL_CALL_MAX_EXCEED_UM.PDB" Name="tail_call_max_exceed_um.pdb" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\tail_call_recursive_um.pdb" />
</Component>
<Component Id="TAIL_CALL_RECURSIVE.O" DiskId="1" Guid="{7469C19C-7706-44B7-BA35-6F27195F311A}">
<File Id="TAIL_CALL_RECURSIVE.O" Name="tail_call_recursive.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\tail_call_recursive.o" />
</Component>
<Component Id="TAIL_CALL_RECURSIVE.SYS" DiskId="1" Guid="{7CD426F6-CCAE-4AC6-B40C-D1B0A4414060}">
<File Id="TAIL_CALL_RECURSIVE.SYS" Name="tail_call_recursive.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\tail_call_recursive.sys" />
</Component>
<Component Id="TAIL_CALL_RECURSIVE_UM.DLL" DiskId="1" Guid="{5C3070EC-3332-42FA-83EA-136AC5A83756}">
<File Id="TAIL_CALL_RECURSIVE_UM.DLL" Name="tail_call_recursive_um.dll" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\tail_call_recursive_um.dll" />
</Component>
<Component Id="TAIL_CALL_RECURSIVE_UM.PDB" DiskId="1" Guid="{1C2725AA-66B1-414B-89F1-66EE492C04DE}">
<File Id="TAIL_CALL_RECURSIVE_UM.PDB" Name="tail_call_recursive_um.pdb" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\tail_call_recursive_um.pdb" />
</Component>
<Component Id="TAIL_CALL_SEQUENTIAL.O" DiskId="1" Guid="{4AA3C7E5-1AAD-4587-9569-7D017D24120B}">
<File Id="TAIL_CALL_SEQUENTIAL.O" Name="tail_call_sequential.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\tail_call_sequential.o" />
</Component>
<Component Id="TAIL_CALL_SEQUENTIAL.SYS" DiskId="1" Guid="{614AA5D9-66B6-45A9-B51B-1EF31EF4517E}">
<File Id="TAIL_CALL_SEQUENTIAL.SYS" Name="tail_call_sequential.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\tail_call_sequential.sys" />
</Component>
<Component Id="TAIL_CALL_SEQUENTIAL_UM.DLL" DiskId="1" Guid="{A32C7BFC-77A8-4C7E-A57A-DE30FE7647DF}">
<File Id="TAIL_CALL_SEQUENTIAL_UM.DLL" Name="tail_call_sequential_um.dll" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\tail_call_sequential_um.dll" />
</Component>
<Component Id="TAIL_CALL_SEQUENTIAL_UM.PDB" DiskId="1" Guid="{7389D611-5068-465E-BFE8-BA485B5C2AC4}">
<File Id="TAIL_CALL_SEQUENTIAL_UM.PDB" Name="tail_call_sequential_um.pdb" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\tail_call_sequential_um.pdb" />
</Component>
<Component Id="TEST_SAMPLE_EBPF.O" DiskId="1" Guid="{5E7F82E9-9631-44C6-A597-18DD96C87C44}">
<File Id="TEST_SAMPLE_EBPF.O" Name="test_sample_ebpf.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\test_sample_ebpf.o" />
</Component>
<Component Id="TEST_SAMPLE_EBPF.SYS" DiskId="1" Guid="{4FFD5551-2C3C-44C8-AA5E-F72A64F94E20}">
<File Id="TEST_SAMPLE_EBPF.SYS" Name="test_sample_ebpf.sys" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\test_sample_ebpf.sys" />
</Component>
<Component Id="TEST_UTILITY_HELPERS.O" DiskId="1" Guid="{B895F798-8A2D-4757-BDD2-F7A68860C92A}">
<File Id="TEST_UTILITY_HELPERS.O" Name="test_utility_helpers.o" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\test_utility_helpers.o" />
</Component>
<Component Id="TEST_UTILITY_HELPERS_UM.DLL" DiskId="1" Guid="{1CCC5D7B-CC60-4967-9EA7-EC28E6B35005}">
<File Id="TEST_UTILITY_HELPERS_UM.DLL" Name="test_utility_helpers_um.dll" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\test_utility_helpers_um.dll" />
</Component>
<Component Id="TEST_UTILITY_HELPERS_UM.PDB" DiskId="1" Guid="{71D4CB23-B5A6-445E-8C01-9DD66E803424}">
<File Id="TEST_UTILITY_HELPERS_UM.PDB" Name="test_utility_helpers_um.pdb" Source="$(var.SolutionDir)$(var.Platform)\$(var.Configuration)\test_utility_helpers_um.pdb" />
</Component>
<Component Id="UNIT_TESTS.EXE" DiskId="1" Guid="{CCF26677-3DDF-424F-80E8-184F65E323BA}">
<File Id="UNIT_TESTS.EXE" Name="unit_tests.exe" Source="$(var.unit_tests.TargetDir)unit_tests.exe" />
</Component>
<Component Id="UNIT_TESTS.PDB" DiskId="1" Guid="{3CF32625-22F9-4ABD-A0BF-44FA7EA2BCDE}">
<File Id="UNIT_TESTS.PDB" Name="unit_tests.pdb" Source="$(var.unit_tests.TargetDir)unit_tests.pdb" />
</Component>
<Component Id="USERSIM.DLL" DiskId="1" Guid="{739017F0-9E33-48FF-A33F-C1434AC757BE}">
<File Id="USERSIM.DLL" Name="usersim.dll" Source="$(var.usersim.TargetPath)" />
</Component>
<Component Id="USERSIM.PDB" DiskId="1" Guid="{BCE1BF99-6A3D-48A6-A382-4E87A2B20FB2}">
<File Id="USERSIM.PDB" Name="usersim.pdb" Source="$(var.usersim.TargetDir)usersim.pdb" />
</Component>
<Component Id="XDP_TESTS.EXE" DiskId="1" Guid="{6A98B162-1DC5-4145-A91B-9DF757766119}">
<File Id="XDP_TESTS.EXE" Name="xdp_tests.exe" Source="$(var.xdp_tests.TargetDir)xdp_tests.exe" />
</Component>
<Component Id="XDP_TESTS.PDB" DiskId="1" Guid="{5540AA7D-73F0-418B-995B-8A9C163C3939}">
<File Id="XDP_TESTS.PDB" Name="xdp_tests.pdb" Source="$(var.xdp_tests.TargetDir)xdp_tests.pdb" />
</Component>
<Component Id="EBPF_STRESS_TESTS_KM.EXE" DiskId="1" Guid="{321DF939-A3CE-4FA1-A9E0-980A83C10855}">
<File Id="EBPF_STRESS_TESTS_KM.EXE" Name="ebpf_stress_tests_km.exe" Source="$(var.ebpf_stress_tests_km.TargetDir)ebpf_stress_tests_km.exe" />
</Component>
<Component Id="EBPF_STRESS_TESTS_KM.PDB" DiskId="1" Guid="{47013057-2AE5-4A42-BAE5-BF1D08983F5E}">
<File Id="EBPF_STRESS_TESTS_KM.PDB" Name="ebpf_stress_tests_km.pdb" Source="$(var.ebpf_stress_tests_km.TargetDir)ebpf_stress_tests_km.pdb" />
</Component>
<Component Id="EBPF_STRESS_TESTS_UM.EXE" DiskId="1" Guid="{E156A698-CD2F-49BF-86B0-C0E1AECE51CF}">
<File Id="EBPF_STRESS_TESTS_UM.EXE" Name="ebpf_stress_tests_um.exe" Source="$(var.ebpf_stress_tests_um.TargetDir)ebpf_stress_tests_um.exe" />
</Component>
<Component Id="EBPF_STRESS_TESTS_UM.PDB" DiskId="1" Guid="{C4A2836B-A59E-491D-A6B2-246EFCB622BA}">
<File Id="EBPF_STRESS_TESTS_UM.PDB" Name="ebpf_stress_tests_um.pdb" Source="$(var.ebpf_stress_tests_um.TargetDir)ebpf_stress_tests_um.pdb" />
</Component>
</ComponentGroup>
<!--Install/Uninstall sample_ebpf_ext Driver-->
<!--A kernel driver service is not currently supported by the Windows Installer (Wix v3 - https://wixtoolset.org/docs/v3/xsd/wix/serviceinstall/).-->
<ComponentGroup Id="sample_ebpf_ext_Driver" Directory="dir_testing">
<Component Id="SAMPLE_EBPF_EXT.SYS" Guid="{027287AF-9945-4CD9-B863-8E39712612F7}">
<File Id="SAMPLE_EBPF_EXT.SYS" Name="sample_ebpf_ext.sys" Source="$(var.sample_ebpf_ext.TargetPath)" />
</Component>
<Component Id="SAMPLE_EBPF_EXT.PDB" Guid="{B77B362A-BC02-46E8-B2BB-05D0981B1CC9}">
<File Id="SAMPLE_EBPF_EXT.PDB" Name="sample_ebpf_ext.pdb" Source="$(var.sample_ebpf_ext.TargetDir)sample_ebpf_ext.pdb" />
</Component>
</ComponentGroup>
<SetProperty Id="sample_ebpf_ext_Driver_install" Value='"sc.exe" create SampleEbpfExt type=kernel start=auto binpath="[#SAMPLE_EBPF_EXT.SYS]"' Before="sample_ebpf_ext_Driver_install" Sequence="execute"/>
<CustomAction Id="sample_ebpf_ext_Driver_install" BinaryKey="WixCA" DllEntry="WixQuietExec64" Execute="deferred" Return="check" Impersonate="no"/>
<Property Id="sample_ebpf_ext_Driver_start" Value='"net.exe" start SampleEbpfExt' />
<CustomAction Id="sample_ebpf_ext_Driver_start" BinaryKey="WixCA" DllEntry="WixQuietExec64" Execute="deferred" Return="ignore" Impersonate="no"/>
<Property Id="sample_ebpf_ext_Driver_stop" Value='"net.exe" stop SampleEbpfExt' />
<CustomAction Id="sample_ebpf_ext_Driver_stop" BinaryKey="WixCA" DllEntry="WixQuietExec64" Execute="deferred" Return="ignore" Impersonate="no"/>
<Property Id="sample_ebpf_ext_Driver_uninstall" Value='"sc.exe" delete SampleEbpfExt' />
<CustomAction Id="sample_ebpf_ext_Driver_uninstall" BinaryKey="WixCA" DllEntry="WixQuietExec64" Execute="deferred" Return="ignore" Impersonate="no"/>
<Property Id="sample_ebpf_ext_Driver_stop_rollback" Value='"net.exe" stop SampleEbpfExt' />
<CustomAction Id="sample_ebpf_ext_Driver_stop_rollback" BinaryKey="WixCA" DllEntry="WixQuietExec64" Execute="rollback" Return="ignore" Impersonate="no"/>
<Property Id="sample_ebpf_ext_Driver_uninstall_rollback" Value='"sc.exe" delete SampleEbpfExt' />
<CustomAction Id="sample_ebpf_ext_Driver_uninstall_rollback" BinaryKey="WixCA" DllEntry="WixQuietExec64" Execute="rollback" Return="ignore" Impersonate="no"/>
</Fragment>
</Wix>

Просмотреть файл

@ -78,14 +78,6 @@ SPDX-License-Identifier: MIT
<RefProjectOutputGroups>Binaries;Content;Satellites</RefProjectOutputGroups>
<RefTargetDir>INSTALLFOLDER</RefTargetDir>
</ProjectReference>
<ProjectReference Include="..\ebpfcore\usersim\EbpfCore_Usersim.vcxproj">
<Name>EbpfCore_Usersim</Name>
<Project>{1fdad2fd-ebd8-462a-b285-ed5174e55079}</Project>
<Private>True</Private>
<DoNotHarvest>True</DoNotHarvest>
<RefProjectOutputGroups>Binaries;Content;Satellites</RefProjectOutputGroups>
<RefTargetDir>INSTALLFOLDER</RefTargetDir>
</ProjectReference>
<ProjectReference Condition="'$(Configuration)' == 'Debug' Or '$(Configuration)' == 'Release'" Include="..\ebpfsvc\eBPFSvc.vcxproj">
<Name>ebpfsvc</Name>
<Project>{ba065b6a-38f8-4197-8f66-87c84afad513}</Project>
@ -94,14 +86,6 @@ SPDX-License-Identifier: MIT
<RefProjectOutputGroups>Binaries;Content;Satellites</RefProjectOutputGroups>
<RefTargetDir>INSTALLFOLDER</RefTargetDir>
</ProjectReference>
<ProjectReference Include="..\external\usersim\src\usersim.vcxproj">
<Name>usersim</Name>
<Project>{030a7ac6-14dc-45cf-af34-891057ab1402}</Project>
<Private>True</Private>
<DoNotHarvest>True</DoNotHarvest>
<RefProjectOutputGroups>Binaries;Content;Satellites</RefProjectOutputGroups>
<RefTargetDir>INSTALLFOLDER</RefTargetDir>
</ProjectReference>
<ProjectReference Include="..\libs\api\api.vcxproj">
<Name>api</Name>
<Project>{c8bf60c3-40a9-43ad-891a-8aa34f1c3a68}</Project>
@ -118,78 +102,6 @@ SPDX-License-Identifier: MIT
<RefProjectOutputGroups>Binaries;Content;Satellites</RefProjectOutputGroups>
<RefTargetDir>INSTALLFOLDER</RefTargetDir>
</ProjectReference>
<ProjectReference Include="..\tests\api_test\api_test.vcxproj">
<Name>api_test</Name>
<Project>{12161211-5463-4aa9-9b6e-552552b475dc}</Project>
<Private>True</Private>
<DoNotHarvest>True</DoNotHarvest>
<RefProjectOutputGroups>Binaries;Content;Satellites</RefProjectOutputGroups>
<RefTargetDir>INSTALLFOLDER</RefTargetDir>
</ProjectReference>
<ProjectReference Include="..\tests\bpftool_tests\bpftool_tests.vcxproj">
<Name>bpftool_tests</Name>
<Project>{8b5b061b-3170-4d1b-8c5b-e86b890c14b8}</Project>
<Private>True</Private>
<DoNotHarvest>True</DoNotHarvest>
<RefProjectOutputGroups>Binaries;Content;Satellites</RefProjectOutputGroups>
<RefTargetDir>INSTALLFOLDER</RefTargetDir>
</ProjectReference>
<ProjectReference Include="..\tests\sample\ext\app\sample_ext_app.vcxproj">
<Name>sample_ext_app</Name>
<Project>{7358d8bd-4123-4b2d-86c0-87f6ba6ced76}</Project>
<Private>True</Private>
<DoNotHarvest>True</DoNotHarvest>
<RefProjectOutputGroups>Binaries;Content;Satellites</RefProjectOutputGroups>
<RefTargetDir>INSTALLFOLDER</RefTargetDir>
</ProjectReference>
<ProjectReference Include="..\undocked\tests\sample\ext\drv\sample_ext.vcxproj">
<Name>sample_ebpf_ext</Name>
<Project>{c8d46543-5ae5-4e66-b9ce-8b84588b1c9e}</Project>
<Private>True</Private>
<DoNotHarvest>True</DoNotHarvest>
<RefProjectOutputGroups>Binaries;Content;Satellites</RefProjectOutputGroups>
<RefTargetDir>INSTALLFOLDER</RefTargetDir>
</ProjectReference>
<ProjectReference Include="..\tests\sample\sample.vcxproj">
<Name>sample</Name>
<Project>{b4ad72e3-754e-40ca-9cea-d3f2c9170e51}</Project>
<Private>True</Private>
<DoNotHarvest>True</DoNotHarvest>
<RefProjectOutputGroups>Binaries;Content;Satellites</RefProjectOutputGroups>
<RefTargetDir>INSTALLFOLDER</RefTargetDir>
</ProjectReference>
<ProjectReference Include="..\tests\stress\km\ebpf_stress_tests_km.vcxproj">
<Name>ebpf_stress_tests_km</Name>
<Project>{4f082524-9496-44fa-8cba-4bc0bdc62568}</Project>
<Private>True</Private>
<DoNotHarvest>True</DoNotHarvest>
<RefProjectOutputGroups>Binaries;Content;Satellites</RefProjectOutputGroups>
<RefTargetDir>INSTALLFOLDER</RefTargetDir>
</ProjectReference>
<ProjectReference Include="..\tests\stress\um\ebpf_stress_tests_um.vcxproj">
<Name>ebpf_stress_tests_um</Name>
<Project>{e51a27f5-a1d5-40da-a09b-850203d6b13d}</Project>
<Private>True</Private>
<DoNotHarvest>True</DoNotHarvest>
<RefProjectOutputGroups>Binaries;Content;Satellites</RefProjectOutputGroups>
<RefTargetDir>INSTALLFOLDER</RefTargetDir>
</ProjectReference>
<ProjectReference Include="..\tests\unit\test.vcxproj">
<Name>unit_tests</Name>
<Project>{a4037e5d-b00c-4af1-9398-76b3ece95f62}</Project>
<Private>True</Private>
<DoNotHarvest>True</DoNotHarvest>
<RefProjectOutputGroups>Binaries;Content;Satellites</RefProjectOutputGroups>
<RefTargetDir>INSTALLFOLDER</RefTargetDir>
</ProjectReference>
<ProjectReference Include="..\tests\xdp\xdp_tests.vcxproj">
<Name>xdp_tests</Name>
<Project>{07dc6181-84a2-4a14-a806-5e9af6c929c2}</Project>
<Private>True</Private>
<DoNotHarvest>True</DoNotHarvest>
<RefProjectOutputGroups>Binaries;Content;Satellites</RefProjectOutputGroups>
<RefTargetDir>INSTALLFOLDER</RefTargetDir>
</ProjectReference>
<ProjectReference Include="..\tools\bpf2c\bpf2c.vcxproj">
<Name>bpf2c</Name>
<Project>{69b97e52-18dc-434e-a6e4-4c0f3e88c44a}</Project>
@ -198,14 +110,6 @@ SPDX-License-Identifier: MIT
<RefProjectOutputGroups>Binaries;Content;Satellites</RefProjectOutputGroups>
<RefTargetDir>INSTALLFOLDER</RefTargetDir>
</ProjectReference>
<ProjectReference Include="..\tests\bpf2c_tests\bpf2c_tests.vcxproj">
<Name>bpf2c_tests</Name>
<Project>{61df9973-81b9-4006-9148-52f58259bbcf}</Project>
<Private>True</Private>
<DoNotHarvest>True</DoNotHarvest>
<RefProjectOutputGroups>Binaries;Content;Satellites</RefProjectOutputGroups>
<RefTargetDir>INSTALLFOLDER</RefTargetDir>
</ProjectReference>
<ProjectReference Include="..\tools\bpftool\bpftool.vcxproj">
<Name>bpftool</Name>
<Project>{ca179b38-ebf5-4371-b830-73486e35250b}</Project>

Просмотреть файл

@ -14,7 +14,7 @@ $InstallPath = "$env:ProgramFiles\ebpf-for-windows";
# - The expected file lists for each build artifact
$buildArtifactParams = @{
"Build-x64_Debug" = @{
"InstallComponents" = "ADDLOCAL=eBPF_Runtime_Components,eBPF_Runtime_Components_JIT,eBPF_Development,eBPF_Testing"
"InstallComponents" = "ADDLOCAL=eBPF_Runtime_Components,eBPF_Runtime_Components_JIT"
"ExpectedFileList" = "..\..\scripts\check_msi_installation_files_regular_debug.txt"
}
"Build-x64-native-only_NativeOnlyRelease" = @{

Просмотреть файл

@ -18,246 +18,5 @@ C:\Program Files\ebpf-for-windows\drivers\eBPFCore.sys
C:\Program Files\ebpf-for-windows\drivers\NetEbpfExt.inf
C:\Program Files\ebpf-for-windows\drivers\NetEbpfExt.pdb
C:\Program Files\ebpf-for-windows\drivers\NetEbpfExt.sys
C:\Program Files\ebpf-for-windows\include\bpf2c.h
C:\Program Files\ebpf-for-windows\include\bpf_endian.h
C:\Program Files\ebpf-for-windows\include\bpf_helpers.h
C:\Program Files\ebpf-for-windows\include\bpf_helpers_platform.h
C:\Program Files\ebpf-for-windows\include\bpf_helper_defs.h
C:\Program Files\ebpf-for-windows\include\ebpf_api.h
C:\Program Files\ebpf-for-windows\include\ebpf_base.h
C:\Program Files\ebpf-for-windows\include\ebpf_core_structs.h
C:\Program Files\ebpf-for-windows\include\ebpf_execution_type.h
C:\Program Files\ebpf-for-windows\include\ebpf_extension.h
C:\Program Files\ebpf-for-windows\include\ebpf_extension_uuids.h
C:\Program Files\ebpf-for-windows\include\ebpf_nethooks.h
C:\Program Files\ebpf-for-windows\include\ebpf_program_attach_type_guids.h
C:\Program Files\ebpf-for-windows\include\ebpf_program_types.h
C:\Program Files\ebpf-for-windows\include\ebpf_result.h
C:\Program Files\ebpf-for-windows\include\ebpf_store_helper.h
C:\Program Files\ebpf-for-windows\include\ebpf_structs.h
C:\Program Files\ebpf-for-windows\include\ebpf_utilities.h
C:\Program Files\ebpf-for-windows\include\ebpf_windows.h
C:\Program Files\ebpf-for-windows\include\elfio_wrapper.hpp
C:\Program Files\ebpf-for-windows\include\git_commit_id.h
C:\Program Files\ebpf-for-windows\include\asm\errno.h
C:\Program Files\ebpf-for-windows\include\asm\posix_types.h
C:\Program Files\ebpf-for-windows\include\asm\types.h
C:\Program Files\ebpf-for-windows\include\bpf\bpf.h
C:\Program Files\ebpf-for-windows\include\bpf\bpf_legacy.h
C:\Program Files\ebpf-for-windows\include\bpf\hashmap.h
C:\Program Files\ebpf-for-windows\include\bpf\libbpf.h
C:\Program Files\ebpf-for-windows\include\bpf\libbpf_legacy.h
C:\Program Files\ebpf-for-windows\include\libbpf\include\asm\barrier.h
C:\Program Files\ebpf-for-windows\include\libbpf\include\linux\compiler.h
C:\Program Files\ebpf-for-windows\include\libbpf\include\linux\err.h
C:\Program Files\ebpf-for-windows\include\libbpf\include\linux\filter.h
C:\Program Files\ebpf-for-windows\include\libbpf\include\linux\kernel.h
C:\Program Files\ebpf-for-windows\include\libbpf\include\linux\list.h
C:\Program Files\ebpf-for-windows\include\libbpf\include\linux\overflow.h
C:\Program Files\ebpf-for-windows\include\libbpf\include\linux\ring_buffer.h
C:\Program Files\ebpf-for-windows\include\libbpf\include\linux\types.h
C:\Program Files\ebpf-for-windows\include\libbpf\include\uapi\linux\bpf.h
C:\Program Files\ebpf-for-windows\include\libbpf\include\uapi\linux\bpf_common.h
C:\Program Files\ebpf-for-windows\include\libbpf\include\uapi\linux\btf.h
C:\Program Files\ebpf-for-windows\include\libbpf\include\uapi\linux\if_link.h
C:\Program Files\ebpf-for-windows\include\libbpf\include\uapi\linux\if_xdp.h
C:\Program Files\ebpf-for-windows\include\libbpf\include\uapi\linux\netlink.h
C:\Program Files\ebpf-for-windows\include\libbpf\include\uapi\linux\perf_event.h
C:\Program Files\ebpf-for-windows\include\libbpf\include\uapi\linux\pkt_cls.h
C:\Program Files\ebpf-for-windows\include\libbpf\include\uapi\linux\pkt_sched.h
C:\Program Files\ebpf-for-windows\include\libbpf\src\bpf.h
C:\Program Files\ebpf-for-windows\include\libbpf\src\bpf_core_read.h
C:\Program Files\ebpf-for-windows\include\libbpf\src\bpf_endian.h
C:\Program Files\ebpf-for-windows\include\libbpf\src\bpf_gen_internal.h
C:\Program Files\ebpf-for-windows\include\libbpf\src\bpf_helpers.h
C:\Program Files\ebpf-for-windows\include\libbpf\src\bpf_helper_defs.h
C:\Program Files\ebpf-for-windows\include\libbpf\src\bpf_tracing.h
C:\Program Files\ebpf-for-windows\include\libbpf\src\btf.h
C:\Program Files\ebpf-for-windows\include\libbpf\src\hashmap.h
C:\Program Files\ebpf-for-windows\include\libbpf\src\libbpf.h
C:\Program Files\ebpf-for-windows\include\libbpf\src\libbpf_common.h
C:\Program Files\ebpf-for-windows\include\libbpf\src\libbpf_internal.h
C:\Program Files\ebpf-for-windows\include\libbpf\src\libbpf_legacy.h
C:\Program Files\ebpf-for-windows\include\libbpf\src\libbpf_version.h
C:\Program Files\ebpf-for-windows\include\libbpf\src\nlattr.h
C:\Program Files\ebpf-for-windows\include\libbpf\src\relo_core.h
C:\Program Files\ebpf-for-windows\include\libbpf\src\skel_internal.h
C:\Program Files\ebpf-for-windows\include\libbpf\src\strset.h
C:\Program Files\ebpf-for-windows\include\libbpf\src\str_error.h
C:\Program Files\ebpf-for-windows\include\libbpf\src\usdt.bpf.h
C:\Program Files\ebpf-for-windows\include\linux\bpf.h
C:\Program Files\ebpf-for-windows\include\linux\stddef.h
C:\Program Files\ebpf-for-windows\include\net\if_ether.h
C:\Program Files\ebpf-for-windows\include\net\ip.h
C:\Program Files\ebpf-for-windows\include\net\tcp.h
C:\Program Files\ebpf-for-windows\include\net\udp.h
C:\Program Files\ebpf-for-windows\include\uapi\linux\bpf.h
C:\Program Files\ebpf-for-windows\include\uapi\linux\if_ether.h
C:\Program Files\ebpf-for-windows\include\uapi\linux\in.h
C:\Program Files\ebpf-for-windows\include\uapi\linux\ip.h
C:\Program Files\ebpf-for-windows\include\uapi\linux\tcp.h
C:\Program Files\ebpf-for-windows\JIT\ebpfsvc.exe
C:\Program Files\ebpf-for-windows\JIT\EbpfSvc.pdb
C:\Program Files\ebpf-for-windows\lib\EbpfApi.lib
C:\Program Files\ebpf-for-windows\scripts\Convert-BpfToNative.ps1
C:\Program Files\ebpf-for-windows\testing\api_test.exe
C:\Program Files\ebpf-for-windows\testing\api_test.pdb
C:\Program Files\ebpf-for-windows\testing\bad_map_name.o
C:\Program Files\ebpf-for-windows\testing\bad_map_name_um.dll
C:\Program Files\ebpf-for-windows\testing\bad_map_name_um.pdb
C:\Program Files\ebpf-for-windows\testing\bindmonitor.o
C:\Program Files\ebpf-for-windows\testing\bindmonitor.sys
C:\Program Files\ebpf-for-windows\testing\bindmonitor_mt_tailcall.o
C:\Program Files\ebpf-for-windows\testing\bindmonitor_mt_tailcall.sys
C:\Program Files\ebpf-for-windows\testing\bindmonitor_mt_tailcall_um.dll
C:\Program Files\ebpf-for-windows\testing\bindmonitor_mt_tailcall_um.pdb
C:\Program Files\ebpf-for-windows\testing\bindmonitor_ringbuf.o
C:\Program Files\ebpf-for-windows\testing\bindmonitor_ringbuf.sys
C:\Program Files\ebpf-for-windows\testing\bindmonitor_ringbuf_um.dll
C:\Program Files\ebpf-for-windows\testing\bindmonitor_ringbuf_um.pdb
C:\Program Files\ebpf-for-windows\testing\bindmonitor_tailcall.o
C:\Program Files\ebpf-for-windows\testing\bindmonitor_tailcall.sys
C:\Program Files\ebpf-for-windows\testing\bindmonitor_tailcall_um.dll
C:\Program Files\ebpf-for-windows\testing\bindmonitor_tailcall_um.pdb
C:\Program Files\ebpf-for-windows\testing\bindmonitor_um.dll
C:\Program Files\ebpf-for-windows\testing\bindmonitor_um.pdb
C:\Program Files\ebpf-for-windows\testing\bpf.o
C:\Program Files\ebpf-for-windows\testing\bpf.sys
C:\Program Files\ebpf-for-windows\testing\bpftool_test.exe
C:\Program Files\ebpf-for-windows\testing\bpftool_test.pdb
C:\Program Files\ebpf-for-windows\testing\bpf_call.o
C:\Program Files\ebpf-for-windows\testing\bpf_call.sys
C:\Program Files\ebpf-for-windows\testing\cgroup_count_connect4.o
C:\Program Files\ebpf-for-windows\testing\cgroup_count_connect4.pdb
C:\Program Files\ebpf-for-windows\testing\cgroup_count_connect4.sys
C:\Program Files\ebpf-for-windows\testing\cgroup_count_connect4_um.dll
C:\Program Files\ebpf-for-windows\testing\cgroup_count_connect6.o
C:\Program Files\ebpf-for-windows\testing\cgroup_count_connect6.pdb
C:\Program Files\ebpf-for-windows\testing\cgroup_count_connect6.sys
C:\Program Files\ebpf-for-windows\testing\cgroup_count_connect6_um.dll
C:\Program Files\ebpf-for-windows\testing\cgroup_mt_connect4.o
C:\Program Files\ebpf-for-windows\testing\cgroup_mt_connect4.pdb
C:\Program Files\ebpf-for-windows\testing\cgroup_mt_connect4.sys
C:\Program Files\ebpf-for-windows\testing\cgroup_mt_connect4_um.dll
C:\Program Files\ebpf-for-windows\testing\cgroup_mt_connect6.o
C:\Program Files\ebpf-for-windows\testing\cgroup_mt_connect6.pdb
C:\Program Files\ebpf-for-windows\testing\cgroup_mt_connect6.sys
C:\Program Files\ebpf-for-windows\testing\cgroup_mt_connect6_um.dll
C:\Program Files\ebpf-for-windows\testing\cgroup_sock_addr.o
C:\Program Files\ebpf-for-windows\testing\cgroup_sock_addr.sys
C:\Program Files\ebpf-for-windows\testing\cgroup_sock_addr2.o
C:\Program Files\ebpf-for-windows\testing\cgroup_sock_addr2.sys
C:\Program Files\ebpf-for-windows\testing\cgroup_sock_addr2_um.dll
C:\Program Files\ebpf-for-windows\testing\cgroup_sock_addr2_um.pdb
C:\Program Files\ebpf-for-windows\testing\cgroup_sock_addr_um.dll
C:\Program Files\ebpf-for-windows\testing\cgroup_sock_addr_um.pdb
C:\Program Files\ebpf-for-windows\testing\decap_permit_packet.o
C:\Program Files\ebpf-for-windows\testing\decap_permit_packet.sys
C:\Program Files\ebpf-for-windows\testing\divide_by_zero.o
C:\Program Files\ebpf-for-windows\testing\divide_by_zero.sys
C:\Program Files\ebpf-for-windows\testing\divide_by_zero_um.dll
C:\Program Files\ebpf-for-windows\testing\divide_by_zero_um.pdb
C:\Program Files\ebpf-for-windows\testing\droppacket.o
C:\Program Files\ebpf-for-windows\testing\droppacket.sys
C:\Program Files\ebpf-for-windows\testing\droppacket_um.dll
C:\Program Files\ebpf-for-windows\testing\droppacket_um.pdb
C:\Program Files\ebpf-for-windows\testing\droppacket_unsafe.o
C:\Program Files\ebpf-for-windows\testing\ebpfcore_usersim.dll
C:\Program Files\ebpf-for-windows\testing\ebpfcore_usersim.pdb
C:\Program Files\ebpf-for-windows\testing\ebpf_stress_tests_km.exe
C:\Program Files\ebpf-for-windows\testing\ebpf_stress_tests_km.pdb
C:\Program Files\ebpf-for-windows\testing\ebpf_stress_tests_um.exe
C:\Program Files\ebpf-for-windows\testing\ebpf_stress_tests_um.pdb
C:\Program Files\ebpf-for-windows\testing\empty_um.dll
C:\Program Files\ebpf-for-windows\testing\empty_um.pdb
C:\Program Files\ebpf-for-windows\testing\encap_reflect_packet.o
C:\Program Files\ebpf-for-windows\testing\encap_reflect_packet.sys
C:\Program Files\ebpf-for-windows\testing\hash_of_map_um.dll
C:\Program Files\ebpf-for-windows\testing\hash_of_map_um.pdb
C:\Program Files\ebpf-for-windows\testing\hash_of_map.o
C:\Program Files\ebpf-for-windows\testing\hash_of_map.sys
C:\Program Files\ebpf-for-windows\testing\invalid_helpers_um.dll
C:\Program Files\ebpf-for-windows\testing\invalid_helpers_um.pdb
C:\Program Files\ebpf-for-windows\testing\invalid_maps1_um.dll
C:\Program Files\ebpf-for-windows\testing\invalid_maps1_um.pdb
C:\Program Files\ebpf-for-windows\testing\invalid_maps2_um.dll
C:\Program Files\ebpf-for-windows\testing\invalid_maps2_um.pdb
C:\Program Files\ebpf-for-windows\testing\invalid_maps3_um.dll
C:\Program Files\ebpf-for-windows\testing\invalid_maps3_um.pdb
C:\Program Files\ebpf-for-windows\testing\map.o
C:\Program Files\ebpf-for-windows\testing\map.sys
C:\Program Files\ebpf-for-windows\testing\map_in_map_btf.o
C:\Program Files\ebpf-for-windows\testing\map_in_map_btf.sys
C:\Program Files\ebpf-for-windows\testing\map_in_map_btf_um.dll
C:\Program Files\ebpf-for-windows\testing\map_in_map_btf_um.pdb
C:\Program Files\ebpf-for-windows\testing\map_in_map_legacy_id.o
C:\Program Files\ebpf-for-windows\testing\map_in_map_legacy_id.sys
C:\Program Files\ebpf-for-windows\testing\map_in_map_legacy_idx.o
C:\Program Files\ebpf-for-windows\testing\map_in_map_legacy_idx.sys
C:\Program Files\ebpf-for-windows\testing\map_in_map_legacy_idx_um.dll
C:\Program Files\ebpf-for-windows\testing\map_in_map_legacy_idx_um.pdb
C:\Program Files\ebpf-for-windows\testing\map_in_map_legacy_id_um.dll
C:\Program Files\ebpf-for-windows\testing\map_in_map_legacy_id_um.pdb
C:\Program Files\ebpf-for-windows\testing\map_reuse.o
C:\Program Files\ebpf-for-windows\testing\map_reuse.sys
C:\Program Files\ebpf-for-windows\testing\map_reuse_2.o
C:\Program Files\ebpf-for-windows\testing\map_reuse_2.sys
C:\Program Files\ebpf-for-windows\testing\map_reuse_2_um.dll
C:\Program Files\ebpf-for-windows\testing\map_reuse_2_um.pdb
C:\Program Files\ebpf-for-windows\testing\map_reuse_um.dll
C:\Program Files\ebpf-for-windows\testing\map_reuse_um.pdb
C:\Program Files\ebpf-for-windows\testing\map_um.dll
C:\Program Files\ebpf-for-windows\testing\map_um.pdb
C:\Program Files\ebpf-for-windows\testing\pidtgid.o
C:\Program Files\ebpf-for-windows\testing\pidtgid.sys
C:\Program Files\ebpf-for-windows\testing\printk.o
C:\Program Files\ebpf-for-windows\testing\printk.sys
C:\Program Files\ebpf-for-windows\testing\printk_legacy.o
C:\Program Files\ebpf-for-windows\testing\printk_legacy.sys
C:\Program Files\ebpf-for-windows\testing\printk_unsafe.o
C:\Program Files\ebpf-for-windows\testing\reflect_packet.o
C:\Program Files\ebpf-for-windows\testing\reflect_packet.sys
C:\Program Files\ebpf-for-windows\testing\run_tests.bat
C:\Program Files\ebpf-for-windows\testing\sample_ebpf_ext.pdb
C:\Program Files\ebpf-for-windows\testing\sample_ebpf_ext.sys
C:\Program Files\ebpf-for-windows\testing\sample_ext_app.exe
C:\Program Files\ebpf-for-windows\testing\sample_ext_app.pdb
C:\Program Files\ebpf-for-windows\testing\sockops.o
C:\Program Files\ebpf-for-windows\testing\sockops.sys
C:\Program Files\ebpf-for-windows\testing\tail_call.o
C:\Program Files\ebpf-for-windows\testing\tail_call.sys
C:\Program Files\ebpf-for-windows\testing\tail_call_bad.o
C:\Program Files\ebpf-for-windows\testing\tail_call_bad.sys
C:\Program Files\ebpf-for-windows\testing\tail_call_bad_um.dll
C:\Program Files\ebpf-for-windows\testing\tail_call_bad_um.pdb
C:\Program Files\ebpf-for-windows\testing\tail_call_map.o
C:\Program Files\ebpf-for-windows\testing\tail_call_map.sys
C:\Program Files\ebpf-for-windows\testing\tail_call_max_exceed.o
C:\Program Files\ebpf-for-windows\testing\tail_call_max_exceed.sys
C:\Program Files\ebpf-for-windows\testing\tail_call_max_exceed_um.dll
C:\Program Files\ebpf-for-windows\testing\tail_call_max_exceed_um.pdb
C:\Program Files\ebpf-for-windows\testing\tail_call_multiple.o
C:\Program Files\ebpf-for-windows\testing\tail_call_multiple.sys
C:\Program Files\ebpf-for-windows\testing\tail_call_multiple_um.dll
C:\Program Files\ebpf-for-windows\testing\tail_call_multiple_um.pdb
C:\Program Files\ebpf-for-windows\testing\tail_call_recursive.o
C:\Program Files\ebpf-for-windows\testing\tail_call_recursive.sys
C:\Program Files\ebpf-for-windows\testing\tail_call_recursive_um.dll
C:\Program Files\ebpf-for-windows\testing\tail_call_recursive_um.pdb
C:\Program Files\ebpf-for-windows\testing\tail_call_sequential.o
C:\Program Files\ebpf-for-windows\testing\tail_call_sequential.sys
C:\Program Files\ebpf-for-windows\testing\tail_call_sequential_um.dll
C:\Program Files\ebpf-for-windows\testing\tail_call_sequential_um.pdb
C:\Program Files\ebpf-for-windows\testing\tail_call_um.dll
C:\Program Files\ebpf-for-windows\testing\tail_call_um.pdb
C:\Program Files\ebpf-for-windows\testing\test_sample_ebpf.o
C:\Program Files\ebpf-for-windows\testing\test_sample_ebpf.sys
C:\Program Files\ebpf-for-windows\testing\test_utility_helpers.o
C:\Program Files\ebpf-for-windows\testing\test_utility_helpers_um.dll
C:\Program Files\ebpf-for-windows\testing\test_utility_helpers_um.pdb
C:\Program Files\ebpf-for-windows\testing\unit_tests.exe
C:\Program Files\ebpf-for-windows\testing\unit_tests.pdb
C:\Program Files\ebpf-for-windows\testing\usersim.dll
C:\Program Files\ebpf-for-windows\testing\usersim.pdb
C:\Program Files\ebpf-for-windows\testing\xdp_tests.exe
C:\Program Files\ebpf-for-windows\testing\xdp_tests.pdb
C:\Program Files\ebpf-for-windows\JIT\EbpfSvc.pdb