2. Add DpcDxe module and DxeDpcLib module in MdeModulePkg 3. Port network stack module to use DPC. 4. Use MIN, and MAX defined in MdePkg to replace NET_MIN and NET_MAX. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4307 6f19259b-4bc3-4df7-8a09-765794883524
		
			
				
	
	
		
			76 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			76 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /** @file
 | |
| 
 | |
| Copyright (c) 2006, Intel Corporation
 | |
| All rights reserved. This program and the accompanying materials
 | |
| are licensed and made available under the terms and conditions of the BSD License
 | |
| which accompanies this distribution.  The full text of the license may be found at
 | |
| http://opensource.org/licenses/bsd-license.php
 | |
| 
 | |
| THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
 | |
| WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 | |
| 
 | |
| Module Name:
 | |
| 
 | |
|   NicIp4Variable.h
 | |
| 
 | |
| Abstract:
 | |
| 
 | |
|   Routines used to operate the Ip4 configure variable
 | |
| 
 | |
| 
 | |
| **/
 | |
| 
 | |
| #ifndef _NIC_IP4_VARIABLE_H_
 | |
| #define _NIC_IP4_VARIABLE_H_
 | |
| 
 | |
| 
 | |
| #include <Protocol/NicIp4Config.h>
 | |
| 
 | |
| //
 | |
| // Return the size of NIC_IP4_CONFIG_INFO and EFI_IP4_IPCONFIG_DATA.
 | |
| // They are of variable size
 | |
| //
 | |
| #define SIZEOF_IP4_CONFIG_INFO(Ip4Config) \
 | |
|   (sizeof (EFI_IP4_IPCONFIG_DATA) + \
 | |
|    sizeof (EFI_IP4_ROUTE_TABLE) * (MAX (1, (Ip4Config)->RouteTableSize) - 1))
 | |
| 
 | |
| #define SIZEOF_NIC_IP4_CONFIG_INFO(NicConfig) \
 | |
|   (sizeof (NIC_IP4_CONFIG_INFO) + \
 | |
|    sizeof (EFI_IP4_ROUTE_TABLE) * (MAX (1, (NicConfig)->Ip4Info.RouteTableSize) - 1))
 | |
| 
 | |
| //
 | |
| // Compare whether two NIC address are equal includes their type and length.
 | |
| //
 | |
| #define NIC_ADDR_EQUAL(Nic1, Nic2) \
 | |
|   (((Nic1)->Type == (Nic2)->Type) && ((Nic1)->Len == (Nic2)->Len) && \
 | |
|    NET_MAC_EQUAL (&(Nic1)->MacAddr, &(Nic2)->MacAddr, (Nic1)->Len))
 | |
| 
 | |
| BOOLEAN
 | |
| Ip4ConfigIsValid (
 | |
|   IN NIC_IP4_CONFIG_INFO    *NicConfig
 | |
|   );
 | |
| 
 | |
| IP4_CONFIG_VARIABLE *
 | |
| Ip4ConfigReadVariable (
 | |
|   VOID
 | |
|   );
 | |
| 
 | |
| EFI_STATUS
 | |
| Ip4ConfigWriteVariable (
 | |
|   IN IP4_CONFIG_VARIABLE    *Config       OPTIONAL
 | |
|   );
 | |
| 
 | |
| NIC_IP4_CONFIG_INFO *
 | |
| Ip4ConfigFindNicVariable (
 | |
|   IN IP4_CONFIG_VARIABLE    *Variable,
 | |
|   IN NIC_ADDR               *NicAddr
 | |
|   );
 | |
| 
 | |
| IP4_CONFIG_VARIABLE *
 | |
| Ip4ConfigModifyVariable (
 | |
|   IN IP4_CONFIG_VARIABLE    *Variable,    OPTIONAL
 | |
|   IN NIC_ADDR               *NicAddr,
 | |
|   IN NIC_IP4_CONFIG_INFO    *Config       OPTIONAL
 | |
|   );
 | |
| #endif
 |