typedef enum _KEYIDX { ID_Newsgroups , ID_X_Newsgroups , ID_Path , ID_From , ID_Subject , ID_References , ID_Followup_To , ID_Approved , ID_Organization , ID_Date , ID_Message_ID , ID_Keywords , ID_Summary , ID_Expires , ID_Reply_To , ID_Distribution , ID_Control , ID_Sender , ID_Lines , ID_Xref , ID_LASTENTRY } KEYIDX; typedef struct { char *name; KEYIDX idx; } KEYWORD; typedef struct { char *key; char *info; } HEADER; extern HEADER header[ID_LASTENTRY]; #define MAX_XHEADER 100 extern char *xheader[MAX_XHEADER]; extern int nxheader; extern long read_header(FILE *fp, char *buf, int *bufsiz); extern long write_header(FILE *fp); extern int write_xref(FILE *fp, char *node, char **ngarray); extern char *rfc_date(char *buf, int bufsiz);