/** @file When user enable PxeToLan, install one protocol to indicate Native driver load or not ;****************************************************************************** ;* Copyright (c) 2012 - 2019, Insyde Software Corp. All Rights Reserved. ;* ;* You may not reproduce, distribute, publish, display, perform, modify, adapt, ;* transmit, broadcast, present, recite, release, license or otherwise exploit ;* any part of this publication in any form, by any means, without the prior ;* written permission of Insyde Software Corporation. ;* ;****************************************************************************** */ #ifndef _NETWORK_LOCKER_PROTOCOL_H #define _NETWORK_LOCKER_PROTOCOL_H // // Network Locker Protocol GUID value // #define NETWORK_LOCKER_PROTOCOL_GUID \ { 0x370c6425, 0xf638, 0x497d, 0xba, 0x68, 0x54, 0x0d, 0x40, 0x29, 0xa0, 0x61} #define NETWORK_LOCKER_SIGNATURE SIGNATURE_32 ('N', 'E', 'T', 'L') #define DHCP6_DUID_SELECTOR_SIGNATURE SIGNATURE_32 ('D', 'U', 'S', 'L') #define NETWORK_LOCKER_VERSION 0x1000 typedef struct _NETWORK_LOCKER_PROTOCOL NETWORK_LOCKER_PROTOCOL; typedef enum { NetworkStackSnpCallback, NetworkStackIp4Callback, NetworkStackIp6Callback, NetworkStackUdp4Callback, NetworkStackUdp6Callback, NetworkStackTcp4Callback, NetworkStackTcp6Callback, NetworkStackDhcp4Callback, NetworkStackDhcp6Callback, NetworkStackMtftp4Callback, NetworkStackMtftp6Callback, NetworkStackPxe4Callback, NetworkStackPxe6Callback, NetworkStackHttp4Callback, NetworkStackHttp6Callback, NetworkStackHttpBoot4Callback, NetworkStackHttpBoot6Callback } NETWORK_STACK_CALLBACK_IDENTIFIER; typedef EFI_STATUS (*NETWORK_STACK_CALLBACK) ( NETWORK_STACK_CALLBACK_IDENTIFIER Identifier ); #pragma pack(1) typedef struct _NETWORK_STACK_DHCP6_DUID_SELECTOR { UINT32 Signature; UINTN SelectorCnt; UINT8 Pool[1]; } NETWORK_STACK_DHCP6_DUID_SELECTOR; struct _NETWORK_LOCKER_PROTOCOL { NETWORK_STACK_CALLBACK NetworkStackCallback; UINT32 Signature; UINT32 Version; NETWORK_STACK_DHCP6_DUID_SELECTOR *NetworkStackDhcp6DuidSelector; }; #pragma pack() extern EFI_GUID gNetworkLockerProtocolGuid; #endif //_NETWORK_LOCKER_PROTOCOL_H