summaryrefslogtreecommitdiffstats
path: root/maildrop/maildrop.h
blob: efc07dca67db031b3457a5e44f929a6b26c97464 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#include	"config.h"
#include	"message.h"
#include	"messageinfo.h"

#ifndef	maildrop_h
#define	maildrop_h


////////////////////////////////////////////////////////////////////////////
//
// Maildrop global variables

#include	"buffer.h"
#include	"globaltimer.h"
#include	"mio.h"

class Maildrop {
public:
	int verbose_level;	// Current verbose level
	int isdelivery;		// Running in delivery mode
static	int sigfpe;		// Floating point exception trapped.
	int includelevel;	// Catch include loops
	int embedded_mode;	// Running in embedded mode
	int authlib_essential;	// Whether authlib is essential

	Message *msgptr, *savemsgptr;	// msgptr is the current message.
					// savemsgptr points to a spare message
					// structure (m1 and m2).
	MessageInfo msginfo;

#if	SHARED_TEMPDIR

#else
	Buffer	tempdir;	// Directory for temporary files
#endif

	Buffer  init_home;	// Initial HOME
	Buffer	init_logname;	// Initial LOGNAME
	Buffer	init_shell;	// Initial SHELL
	Buffer	init_default;	// Initial DEFAULT
	Buffer	init_quota;	// Initial MAILDIRQUOTA

	Mio	logfile;	// Log file.
	GlobalTimer global_timer;	// Watchdog timeout.
	Maildrop();

static void cleanup();
static void bye(int);
static int trap(int (*)(int, char *[]), int, char *[]);
static void reset_vars();
} ;

extern class Maildrop maildrop;

#endif