/*
File: smtp.h
Copyright (C) 1999,2000 by Wolfgang Zekoll <wzk@quietsche-entchen.de>
This source is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 1, or (at your option)
any later version.
This source is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
#ifndef _SMTP_INCLUDED
#define _SMTP_INCLUDED
#define SENDMAIL "/usr/sbin/sendmail"
#define SMTP_TIMEOUT 300
#define SMTP_ACCEPTTIME 600
extern char *program;
extern char progname[80];
extern int debug;
#define WAITING 1
#define MAIL_SEEN 2
#define RCPT_SEEN 3
#define DATA_SEEN 4
#define SEND_QUIT 5
#define NO_SENDMAIL 6
typedef struct _config {
char hostname[200];
int etrn;
int droppath;
int timeout;
char *senderlist;
char *rcptlist;
char senderdomain[200];
char server[200];
char **argv;
char varname[80];
char acp[200];
char ccp[200];
char clientdir[200];
int accepttime;
} config_t;
typedef struct _bio {
int fd;
int here, len;
char buffer[512];
} bio_t;
typedef struct _smtp {
config_t *config;
char servername[200];
char hostname[200];
int sin, sout;
bio_t cbuf, sbuf;
char ipnum[80];
char client[80];
int helloseen;
int state;
int mailcount;
/*
* Mail-spezifische Daten
*/
char origsender[80];
char sender[80];
int nrcpt;
struct {
int here, max;
char *list;
} rcpt;
char jobid[80];
char msgid[200];
long size;
char spoolfile[200];
} smtp_t;
extern int proxy_request(config_t *config);
#endif
syntax highlighted by Code2HTML, v. 0.9.1