NAME
    FML::Restriction::Base -- define safe data representations.

SYNOPSIS
        use FML::Restriction::Base;
        my $safe = new FML::Restriction::Base;
        if ($safe->regexp_match('address', $data)) {
            # o.k. do something ...
        }

DESCRIPTION
    FML::Restriction::Base provides data regexp considered as safe.

    ALL FML MODULES SHOULD USE THIS MODULE if it needs to check whether a
    variable is safe or not.

METHODS
  new($args)
    constructor.

Basic Parameter Definitions for common use
    We permit the variable name representation as a subset of RFC
    definitions for conveninece and security.

  domain name
    A domain name is case insensitive (see RFC). For example, fml.org
    FML.org 123.f-m-l.org

  user
    Very restricted since strict 822 or 2822 representation is very
    difficult, so may be insecure in some cases.

    By the way, "_" is derived from lotus notes ? Anyway we permit "_" for
    convenience.

  mail address
    Of cource, "user@domain", described above.

  basic_variable()
    return basic variable regexp list as HASH_REF.

    NOT USE THIS OUTSIDE FML::Restiction::* classes.

  regexp_match( class, string )
    check if "string" matches regexp specified by "class". return 1 or
    undef.

        my $obj = new FML::Restriction::Base;
        if ($obj->regexp_match( "address", $address ) {
            ... do something ...
        }

    "regexp_match" can handle some special class not based on regexp:
    "fullpath".

CODING STYLE
    See "http://www.fml.org/software/FNF/" on fml coding style guide.

AUTHOR
    Ken'ichi Fukamachi

COPYRIGHT
    Copyright (C) 2001,2002,2003,2004,2008 Ken'ichi Fukamachi

    All rights reserved. This program is free software; you can redistribute
    it and/or modify it under the same terms as Perl itself.

HISTORY
    FML::Process::Configure first appeared in fml8 mailing list driver
    package. See "http://www.fml.org/" for more details.

