#!/usr/bin/perl
#
# $Copyright_v6PC$
#
# $Copyright$
#
# $TAHI: ct/nd/reset.seq,v 1.18 2004/04/02 02:28:23 akisada Exp $

########################################################################
BEGIN { $V6evalTool::TestVersion = '$Name:  $ '; }

use V6evalTool;
use nd;

my $wait_readout = $nd::DELAY_FIRST_PROBE_TIME +
    $nd::RETRANS_TIMER * $nd::MAX_UNICAST_SOLICIT + 1;

my $IF = 'Link0';

ndOptions(@ARGV);

# The following generate debugging messages.
$nd::debug=$ndOpt_v|$ndOpt_vv;

# You can specifies debug options to a remote control program.
# If you want to know more detail, please see the following:
# - V6evalTool.pm: perldoc V6evalTool
# - V6evalRemote.pm: perldoc V6evalRemote
$nd::remote_debug="-o1" if $ndOpt_vv;

#
#
#
#$type=$V6evalTool::NutDef{'Type'};
#if(($type ne 'host') && ($type ne 'router') && ($type ne 'special')) {
#    vLogHTML(ndErrmsg("ERROR: $V6evalTool::NutDef{Type}: ".
#		      "Unknown target type: $type<BR>"));
#    goto error;
#}

#
# Create TN.def in the current directory
#
goto error if nd2NoNce($IF) != 0;

#
#
#
vLogHTML("Trying to reboot NUT<BR>");
goto error if ndReboot() != 0;

#
#
#
vLogHTML("*** OK ***<BR>");
exit $V6evalTool::exitIgnore;

error:
    vLogHTML("*** NG ***<BR>");
	readout($IF, $wait_readout);
    exit $V6evalTool::exitFatal;

sub readout($$) {
	my ($if, $timeout) = @_;
	return(vRecv($if, $timeout, 0, 0));
}

########################################################################
__END__

=head1 NAME

reset - Reset NUT

=head1 TARGET

Host/Router/Special

=head1 SYNOPSIS

  reset.seq [-tooloption ...] -p reset.def

=head1 INITIALIZATION

N/A

=head1 TEST PROCEDURE

B<reset> initialize NUT

=head1 JUDGMENT

N/A

=head1 NOTE

N/A

=head1 SEE ALSO

  perldoc V6evalTool
  perldoc V6evalRemote

=cut
