#ifndef _BOUNCE_LOG_H_INCLUDED_
#define _BOUNCE_LOG_H_INCLUDED_
#include <vstream.h>
#include <vstring.h>
typedef struct {
VSTREAM *fp;
VSTRING *buf;
VSTRING *rcpt_buf;
VSTRING *orcp_buf;
VSTRING *status_buf;
const char *compat_status;
VSTRING *action_buf;
const char *compat_action;
VSTRING *text_buf;
const char *recipient;
const char *orig_rcpt;
long rcpt_offset;
const char *dsn_status;
const char *dsn_action;
const char *text;
} BOUNCE_LOG;
extern BOUNCE_LOG *bounce_log_open(const char *, const char *, int, int);
extern BOUNCE_LOG *bounce_log_read(BOUNCE_LOG *);
extern BOUNCE_LOG *bounce_log_delrcpt(BOUNCE_LOG *);
extern BOUNCE_LOG *bounce_log_forge(const char *, const char *, long, const char *, const char *, const char *);
extern int bounce_log_close(BOUNCE_LOG *);
#define bounce_log_rewind(bp) vstream_fseek((bp)->fp, 0L, SEEK_SET)
#endif