Issue error message when required file is missing or has zero size.

Signed-off-by: Tom Eastep <teastep@shorewall.net>
This commit is contained in:
Tom Eastep 2010-09-28 11:22:47 -07:00
parent 68f537ac5b
commit 48c3200a5a
2 changed files with 21 additions and 22 deletions

View File

@ -34,7 +34,7 @@ use strict;
our @ISA = qw(Exporter); our @ISA = qw(Exporter);
our @EXPORT = qw( validate_policy apply_policy_rules complete_standard_chain setup_syn_flood_chains save_policies optimize_policy_chains); our @EXPORT = qw( validate_policy apply_policy_rules complete_standard_chain setup_syn_flood_chains save_policies optimize_policy_chains);
our @EXPORT_OK = qw( ); our @EXPORT_OK = qw( );
our $VERSION = '4.4_12'; our $VERSION = '4.4_14';
# @policy_chains is a list of references to policy chains in the filter table # @policy_chains is a list of references to policy chains in the filter table
@ -345,11 +345,12 @@ sub validate_policy()
} }
} }
my $fn = open_file 'policy'; if ( my $fn = open_file 'policy' ) {
first_entry "$doing $fn...";
first_entry "$doing $fn..."; process_a_policy while read_a_line;
} else {
process_a_policy while read_a_line; fatal_error q(The 'policy' file does not exist or has zero size);
}
for $zone ( all_zones ) { for $zone ( all_zones ) {
for my $zone1 ( all_zones ) { for my $zone1 ( all_zones ) {

View File

@ -481,11 +481,12 @@ sub determine_zones()
my @z; my @z;
my $ip = 0; my $ip = 0;
my $fn = open_file 'zones'; if ( my $fn = open_file 'zones' ) {
first_entry "$doing $fn...";
first_entry "$doing $fn..."; push @z, process_zone( $ip ) while read_a_line;
} else {
push @z, process_zone( $ip ) while read_a_line; fatal_error q(The 'zones' file does not exist or has zero size);
}
fatal_error "No firewall zone defined" unless $firewall_zone; fatal_error "No firewall zone defined" unless $firewall_zone;
fatal_error "No IP zones defined" unless $ip; fatal_error "No IP zones defined" unless $ip;
@ -1109,15 +1110,14 @@ sub process_interface( $$ ) {
sub validate_interfaces_file( $ ) { sub validate_interfaces_file( $ ) {
my $export = shift; my $export = shift;
my $fn = open_file 'interfaces'; if ( my $fn = open_file 'interfaces' ) {
my @ifaces;
my @ifaces; my $nextinum = 1;
first_entry "$doing $fn...";
my $nextinum = 1; push @ifaces, process_interface( $nextinum++, $export ) while read_a_line;
} else {
first_entry "$doing $fn..."; fatal_error q(The 'interfaces' file does not exist or has zero size);
}
push @ifaces, process_interface( $nextinum++, $export ) while read_a_line;
# #
# We now assemble the @interfaces array such that bridge ports immediately precede their associated bridge # We now assemble the @interfaces array such that bridge ports immediately precede their associated bridge
@ -1775,9 +1775,7 @@ sub validate_hosts_file()
my $ipsec = 0; my $ipsec = 0;
if ( my $fn = open_file 'hosts' ) { if ( my $fn = open_file 'hosts' ) {
first_entry "$doing $fn..."; first_entry "$doing $fn...";
$ipsec |= process_host while read_a_line; $ipsec |= process_host while read_a_line;
} }