# adderror.pl
#
# Copyright (c) 1993, 1994, 1995, 1996, 1997, 1998, 1999 by RIPE NCC
#
# All Rights Reserved
#
# Permission to use, copy, modify, and distribute this software and its
# documentation for any purpose and without fee is hereby granted,
# provided that the above copyright notice appear in all copies and that
# both that copyright notice and this permission notice appear in
# supporting documentation, and that the name of the author not be
# used in advertising or publicity pertaining to distribution of the
# software without specific, written prior permission.
#
# THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
# ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS; IN NO EVENT SHALL
# AUTHOR BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY
# DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
# AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
#
# $Id: adderror.pl,v 2.5 1999/10/06 16:41:00 marek Exp $
#
#	$RCSfile: adderror.pl,v $
#	$Revision: 2.5 $
#	$Author: marek $
#	$Date: 1999/10/06 16:41:00 $

require "dpr.pl";

sub adderror {
    local(*object, $msg) = @_;

    return unless defined($msg);
    
    local($*)=1;
    $msg=~ s/^\n+//;
    $msg=~ s/\n+$//;
    
    $object{"ue"}.="\n" if ($object{"ue"});
    $object{"ue"}.=$msg;
    
}

sub addwarning {
    local(*object, $msg) = @_;
    
    return unless defined($msg);
    
    local($*)=1;
    $msg=~ s/^\n+//;
    $msg=~ s/\n+$//;
    
    $object{"uw"}.="\n" if ($object{"uw"});
    $object{"uw"}.=$msg;

}


sub haserror {
    local(*object)=@_;

#    &dpr("defined: ", defined($object{"ue"}), 
#	 " ue: ", $object{"ue"}, "\n");

    return defined($object{"ue"});
}

sub haswarning {
    local(*object) = @_;

    return defined($object{"uw"});
}

sub rmerrors {
    local(*object)=@_;
    
    delete $object{"ue"};

}

sub rmwarnings {
    local(*object) = @_;

    delete $object{"uw"};

}

1;
