Fix for uninitialized value errors in i_mac()
This commit is contained in:
		| @@ -264,8 +264,8 @@ sub i_mac { | ||||
|      | ||||
|     if (defined $model and $model =~ /(86)/) { | ||||
|  | ||||
|         my $cpu_mac = $passport->rc_cpu_mac($partial); | ||||
|         my $virt_ip = $passport->rc_virt_ip(); | ||||
|         my $cpu_mac = $passport->rc_cpu_mac($partial) || {}; | ||||
|         my $virt_ip = $passport->rc_virt_ip() || '0.0.0.0'; | ||||
|  | ||||
|         # Get CPU Ethernet Interfaces | ||||
|         foreach my $iid (keys %$cpu_mac){ | ||||
| @@ -278,17 +278,19 @@ sub i_mac { | ||||
|         # Check for Virtual Mgmt Interface | ||||
|         unless (($virt_ip eq '0.0.0.0') or (defined $partial and $partial ne "1")) { | ||||
|             my $chassis_base_mac = $passport->rc_base_mac(); | ||||
|             my @virt_mac = split /:/, $chassis_base_mac; | ||||
|             $virt_mac[0] = hex($virt_mac[0]); | ||||
|             $virt_mac[1] = hex($virt_mac[1]); | ||||
|             $virt_mac[2] = hex($virt_mac[2]); | ||||
|             $virt_mac[3] = hex($virt_mac[3]); | ||||
|             $virt_mac[4] = hex($virt_mac[4]) + 0x03; | ||||
|             $virt_mac[5] = hex($virt_mac[5]) + 0xF8; | ||||
|             if (defined $chassis_base_mac) { | ||||
|                 my @virt_mac = split /:/, $chassis_base_mac; | ||||
|                 $virt_mac[0] = hex($virt_mac[0]); | ||||
|                 $virt_mac[1] = hex($virt_mac[1]); | ||||
|                 $virt_mac[2] = hex($virt_mac[2]); | ||||
|                 $virt_mac[3] = hex($virt_mac[3]); | ||||
|                 $virt_mac[4] = hex($virt_mac[4]) + 0x03; | ||||
|                 $virt_mac[5] = hex($virt_mac[5]) + 0xF8; | ||||
|  | ||||
|             my $mac = join(':',map { sprintf "%02x",$_ } @virt_mac); | ||||
|                 my $mac = join(':',map { sprintf "%02x",$_ } @virt_mac); | ||||
|  | ||||
|             $if_mac{1} = $mac; | ||||
|                 $if_mac{1} = $mac; | ||||
|             } | ||||
|         } | ||||
|     } | ||||
|     return \%if_mac; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Eric Miller
					Eric Miller