/*++ /* NAME /* valid_mailhost_addr 3 /* SUMMARY /* mailhost address syntax validation /* SYNOPSIS /* #include <valid_mailhost_addr.h> /* /* const char *valid_mailhost_addr(name, gripe) /* const char *name; /* int gripe; /* /* int valid_mailhost_literal(addr, gripe) /* const char *addr; /* int gripe; /* DESCRIPTION /* valid_mailhost_addr() requires that the input is a valid /* RFC 2821 string representation of an IPv4 or IPv6 network /* address. A valid IPv4 address is in dotted quad decimal /* form. A valid IPv6 address includes the "IPV6:" prefix as /* required by RFC 2821, and is in valid hexadecimal form or /* in valid IPv4-in-IPv6 form. The result value is the bare /* address in the input argument (i.e. text after "IPV6:" /* prefix, if any) in case of success, a null pointer in case /* of failure. /* /* valid_mailhost_literal() requires an address enclosed in /* []. The result is non-zero in case of success, zero in /* case of failure. /* /* These routines operate silently unless the gripe parameter /* specifies a non-zero value. The macros DO_GRIPE and DONT_GRIPE /* provide suitable constants. /* /* The IPV6_COL macro defines the "IPv6:" prefix. /* DIAGNOSTICS /* Warnings are logged with msg_warn(). /* SEE ALSO /* valid_hostname(3) /* RFC 952, RFC 1123, RFC 1035, RFC 2821 /* LICENSE /* .ad /* .fi /* The Secure Mailer license must be distributed with this software. /* AUTHOR(S) /* Wietse Venema /* IBM T.J. Watson Research /* P.O. Box 704 /* Yorktown Heights, NY 10598, USA
/*--*/