]> git.proxmox.com Git - mirror_edk2.git/blob - NetworkPkg/Application/IpsecConfig/ForEach.h
NetworkPkg: Replace BSD License with BSD+Patent License
[mirror_edk2.git] / NetworkPkg / Application / IpsecConfig / ForEach.h
1 /** @file
2 The internal structure and function declaration of the implementation
3 to go through each entry in IpSecConfig application.
4
5 Copyright (c) 2009 - 2010, Intel Corporation. All rights reserved.<BR>
6
7 SPDX-License-Identifier: BSD-2-Clause-Patent
8
9 **/
10
11 #ifndef _FOREACH_H_
12 #define _FOREACH_H_
13
14 /**
15 The prototype for the DumpSpdEntry()/DumpSadEntry()/DumpPadEntry().
16 Print EFI_IPSEC_CONFIG_SELECTOR and corresponding content.
17
18 @param[in] Selector The pointer to the EFI_IPSEC_CONFIG_SELECTOR union.
19 @param[in] Data The pointer to the corresponding data.
20 @param[in] Context The pointer to the Index in SPD/SAD/PAD Database.
21
22 @retval EFI_SUCCESS Dump SPD/SAD/PAD information successfully.
23 **/
24 typedef
25 EFI_STATUS
26 (*VISIT_POLICY_ENTRY) (
27 IN EFI_IPSEC_CONFIG_SELECTOR *Selector,
28 IN VOID *Data,
29 IN VOID *Context
30 );
31
32 /**
33 Enumerate all entry in the database to execute a specified operation according to datatype.
34
35 @param[in] DataType The value of EFI_IPSEC_CONFIG_DATA_TYPE.
36 @param[in] Routine The pointer to function of a specified operation.
37 @param[in] Context The pointer to the context of a function.
38
39 @retval EFI_SUCCESS Execute specified operation successfully.
40 **/
41 EFI_STATUS
42 ForeachPolicyEntry (
43 IN EFI_IPSEC_CONFIG_DATA_TYPE DataType,
44 IN VISIT_POLICY_ENTRY Routine,
45 IN VOID *Context
46 );
47
48 #endif