1. Perl / Говнокод #5763

    −123

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    sub initialize  # Действия выполняемые непосредственно перед стартом цикла если мы ведём базу, что бы подгрузится из неё!!!!!
    {
    	my $bc = shift; 
    
    	if ( $bc->{const}{jnl} eq "1" )
    	{
    		$bc->{variable}{ip_addr} = run_shell_script("ip a", 'l');
    
    		open JNL, '<', $bc->{const}{base_jnl};
    		undef $\;
    		my @jnl_strings = <JNL>;
    		close JNL;
    
    		my $ip_regext = qr/(?:[0-9]\.|[0-9]{2}\.|[0-2][0-9]{2}\.){3}(?:[0-9]|[0-9]{2}|[0-2][0-9]{2})/;
    
    		map
    		{
    			chomp;
    
    			if (/^($ip_regext);(.*);($ip_regext);(.*);opt\[ip_v_2:(.*),(.*);int_2:(.*),(.*),(.*)\]$/)
    			{
    				my ( $s1, $s2, $s3, $s4, $s5, $s6, $s7, $s8, $s9 ) = ( "$1", "$2", "$3", "$4", "$5", "$6", "$7", "$8", "$9" );
    
    				if ( dynamic_comparison_ip($bc, $s1, $s3, $s5, $s8) == '1' )
    				{
    					cut_jnl($bc, $s1, '');
    				}
    				else
    				{
    					$bc->{variable}{base_virtual_ip}{$s1} = $s3;
    					$bc->{variable}{base_mask_v_ip}{$s1} = $s2;
    					$bc->{variable}{base_id}{$s1} = $s4;
    					$bc->{variable}{base_addit_v_ip}{$s1} = $s5;
    					$bc->{variable}{base_mask_v_ip_addit}{$s1} = $s6;
    					$bc->{variable}{base_addit_dev}{$s1} = $s7;
    					$bc->{variable}{base_addit_ip}{$s1} = $s8;
    					$bc->{variable}{base_mask_ip_addit}{$s1} = $s9;
    					$bc->{variable}{base_info_T}{$s1} = $bc->{variable}{no_info_T_max};
    					$bc->{variable}{base_delay}{$s1} = 0;
    					$bc->{const}{info}->debug("String $_ has been added in dynamic base");
    
    					push @{$bc->{variable}{base_load_conf}}, $s1; # Формируем базу загруженных из файла
    
    					$bc->{variable}{intrf_eth0} = Modules_SR::Ifconfig_all->new(
    						"$bc->{config_params}{HOST}", 
    						"$bc->{variable}{base_mask_v_ip}{$s1}");
    
    					if ($bc->{variable}{base_addit_v_ip}{$s1})
    					{
    						$bc->{variable}{intrf_eth00} = Modules_SR::Ifconfig_all->new("
    							$bc->{config_params}{HOST}", 
    							"$bc->{variable}{base_mask_v_ip_addit}{$s1}"); 
    					}
    					
    					if ($bc->{variable}{base_addit_dev}{$s1})
    					{
    						$bc->{variable}{intrf_eth1} = Modules_SR::Ifconfig_all->new(
    							"$bc->{variable}{base_addit_dev}{$s1}", 
    							"$bc->{variable}{base_mask_ip_addit}{$s1}");  
    					}
    
    					check_stop_status($bc, "$s1");
    				}
    			}
    			else
    			{
    				$bc->{const}{info}->debug("String $_ hasn't been added in dynamic base");
    				$bc->{const}{warning}->debug("String $_  has incorrect format!!!");
    			}
    		} @jnl_strings;
    	}
    } # end Действия выполняемые непосредственно перед стартом цикла

    Всё оттуда же. Инициализация объекта. Теперь делать через map {} стало, по-видимому, модно. Куча непонятно зачем нужных переменных и полей... FACEPALM...

    Запостил: SadKo, 22 Февраля 2011

    Комментарии (1) RSS

    • Поставил плюс за эмоциональность!!!!!
      Ответить

    Добавить комментарий