Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Fu Siyuan <siyuan.fu@intel.com>
Reviewed-by: Ye Ting <ting.ye@intel.com>
Reviewed-by: Wu Jiaxin <jiaxin.wu@intel.com>
return EFI_INVALID_PARAMETER;\r
}\r
\r
- if (!Mode->UsingIpv6 && NewStationIp != NULL && !NetIp4IsUnicast (NTOHL (NewStationIp->Addr[0]), NTOHL (NewSubnetMask->Addr[0]))) {\r
- return EFI_INVALID_PARAMETER;\r
+ if (!Mode->UsingIpv6 && NewStationIp != NULL) {\r
+ if (IP4_IS_UNSPECIFIED(NTOHL (NewStationIp->Addr[0])) || \r
+ IP4_IS_LOCAL_BROADCAST(NTOHL (NewStationIp->Addr[0])) ||\r
+ (NewSubnetMask != NULL && !NetIp4IsUnicast (NTOHL (NewStationIp->Addr[0]), NTOHL (NewSubnetMask->Addr[0])))) {\r
+ return EFI_INVALID_PARAMETER;\r
+ }\r
}\r
-\r
+ \r
if (!Mode->Started) {\r
return EFI_NOT_STARTED;\r
}\r