- my $key = &General::findhasharraykey(\%fwconfig);
- $fwconfig{$key}[0] = $action;
- $fwconfig{$key}[1] = "FORWARDFW";
- $fwconfig{$key}[2] = $active;
- $fwconfig{$key}[3] = $grp1;
- $fwconfig{$key}[4] = $source;
- $fwconfig{$key}[5] = $grp2;
- $fwconfig{$key}[6] = $target;
- $fwconfig{$key}[11] = $useport;
- $fwconfig{$key}[12] = $protocol;
- $fwconfig{$key}[14] = $grp3;
- $fwconfig{$key}[15] = $port;
- $fwconfig{$key}[16] = $remark;
- $fwconfig{$key}[17] = $log;
- $fwconfig{$key}[18] = $time;
- $fwconfig{$key}[19] = $time_mon;
- $fwconfig{$key}[20] = $time_tue;
- $fwconfig{$key}[21] = $time_wed;
- $fwconfig{$key}[22] = $time_thu;
- $fwconfig{$key}[23] = $time_fri;
- $fwconfig{$key}[24] = $time_sat;
- $fwconfig{$key}[25] = $time_sun;
- $fwconfig{$key}[26] = $time_from;
- $fwconfig{$key}[27] = $time_to;
+ if ($chain eq 'FORWARDFW'){
+ my $key = &General::findhasharraykey(\%fwconfig);
+ $fwconfig{$key}[0] = $action;
+ $fwconfig{$key}[1] = $chain;
+ $fwconfig{$key}[2] = $active;
+ $fwconfig{$key}[3] = $grp1;
+ $fwconfig{$key}[4] = $source;
+ $fwconfig{$key}[5] = $grp2;
+ $fwconfig{$key}[6] = $target;
+ $fwconfig{$key}[11] = $useport;
+ $fwconfig{$key}[12] = $protocol;
+ $fwconfig{$key}[14] = $grp3;
+ $fwconfig{$key}[15] = $port;
+ $fwconfig{$key}[16] = $remark;
+ $fwconfig{$key}[17] = $log;
+ $fwconfig{$key}[18] = $time;
+ $fwconfig{$key}[19] = $time_mon;
+ $fwconfig{$key}[20] = $time_tue;
+ $fwconfig{$key}[21] = $time_wed;
+ $fwconfig{$key}[22] = $time_thu;
+ $fwconfig{$key}[23] = $time_fri;
+ $fwconfig{$key}[24] = $time_sat;
+ $fwconfig{$key}[25] = $time_sun;
+ $fwconfig{$key}[26] = $time_from;
+ $fwconfig{$key}[27] = $time_to;
+ }else{
+ my $key = &General::findhasharraykey(\%fwconfigout);
+ $fwconfigout{$key}[0] = $action;
+ $fwconfigout{$key}[1] = $chain;
+ $fwconfigout{$key}[2] = $active;
+ $fwconfigout{$key}[3] = $grp1;
+ $fwconfigout{$key}[4] = $source;
+ $fwconfigout{$key}[5] = $grp2;
+ $fwconfigout{$key}[6] = $target;
+ $fwconfigout{$key}[11] = $useport;
+ $fwconfigout{$key}[12] = $protocol;
+ $fwconfigout{$key}[14] = $grp3;
+ $fwconfigout{$key}[15] = $port;
+ $fwconfigout{$key}[16] = $remark;
+ $fwconfigout{$key}[17] = $log;
+ $fwconfigout{$key}[18] = $time;
+ $fwconfigout{$key}[19] = $time_mon;
+ $fwconfigout{$key}[20] = $time_tue;
+ $fwconfigout{$key}[21] = $time_wed;
+ $fwconfigout{$key}[22] = $time_thu;
+ $fwconfigout{$key}[23] = $time_fri;
+ $fwconfigout{$key}[24] = $time_sat;
+ $fwconfigout{$key}[25] = $time_sun;
+ $fwconfigout{$key}[26] = $time_from;
+ $fwconfigout{$key}[27] = $time_to;
+ }
+ &General::writehasharray($fwdfwconfig,\%fwconfig);
+ &General::writehasharray($outfwconfig,\%fwconfigout);