/* * Copyright (c) 1997-2003 Motonori Nakamura * Copyright (c) 1997-2003 WIDE Project * Copyright (c) 1997-2003 Kyoto University * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. All advertising materials mentioning features or use of this software * must display the following acknowledgement: * This product includes software developed by WIDE Project and * its contributors. * 4. Neither the name of the Project, the University nor the names of * its contributors may be used to endorse or promote products derived * from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * $Id: extern.h,v 1.25 2003/08/20 05:11:06 motonori Exp $ */ char *newstr(); void strlower(); char *parse_address(); void setsender(); int addrecipient(); void addalias(); int getmxrr(); void init_log(); int addmyalias(); int isamyalias(); void lmtp(); void lmtp_data_response(); void deliver(); int pregetmx(); int getmxlist(); void finalstatus(); int addinetaddress(); void set_timeout(); void resource_usage(); struct dns_stat *hash_query_lookup(); struct domain *hash_domain_lookup(); struct host *hash_host_lookup(); struct host_map *hash_map_lookup(); int host_map_load(); char **host_map_lookup(); int mxrand(); int hash_domain_rcpts_lookup(); void hash_domain_rcpts_enter(); int isnumeric(); int rcpts_def_load(); void initsetproctitle(); #ifdef JAZ_HACK2 void show_cache(); #endif # ifdef __STDC__ void log(int, const char *, ...); void setproctitle(const char *, ...); # else void log(); void setproctitle(); # endif # if !HAVE_STRERROR char *strerror(); # endif # if !HAVE_SNPRINTF int snprintf(); # endif #ifdef MAIN # define EXTERN /**/ #else # define EXTERN extern #endif EXTERN struct envelope env; EXTERN struct host *host_list; EXTERN struct domain *domain_list; EXTERN struct statinfo sti; EXTERN struct confparam cnf; EXTERN char myname[MAXHOSTNAMELEN]; EXTERN struct hostalias *myaliases; extern char *version;