1#ifndef _HEADER_TOKEN_H_INCLUDED_
2#define _HEADER_TOKEN_H_INCLUDED_
3
4/*++
5/* NAME
6/*	header_token 3h
7/* SUMMARY
8/*	mail header parser
9/* SYNOPSIS
10/*	#include "header_token.h"
11 DESCRIPTION
12 .nf
13
14 /*
15  * Utility library.
16  */
17#include <vstring.h>
18
19 /*
20  * HEADER header parser tokens. Specials and controls are represented by
21  * themselves. Character pointers point to substrings in a token buffer.
22  */
23typedef struct HEADER_TOKEN {
24    int     type;			/* see below */
25    union {
26	const char *value;		/* just a pointer, not a copy */
27	ssize_t offset;			/* index into token buffer */
28    }       u;				/* indent beats any alternative */
29} HEADER_TOKEN;
30
31#define HEADER_TOK_TOKEN	256
32#define HEADER_TOK_QSTRING	257
33
34extern ssize_t header_token(HEADER_TOKEN *, ssize_t, VSTRING *, const char **, const char *, int);
35
36/* LICENSE
37/* .ad
38/* .fi
39/*	The Secure Mailer license must be distributed with this software.
40/* AUTHOR(S)
41/*	Wietse Venema
42/*	IBM T.J. Watson Research
43/*	P.O. Box 704
44/*	Yorktown Heights, NY 10598, USA
45/*--*/
46
47#endif
48