Annotation of src/usr.bin/mail/extern.h, Revision 1.16
1.16 ! millert 1: /* $OpenBSD: extern.h,v 1.15 2000/08/23 21:24:08 mickey Exp $ */
1.6 millert 2: /* $NetBSD: extern.h,v 1.7 1997/07/09 05:22:00 mikel Exp $ */
1.2 niklas 3:
1.1 deraadt 4: /*-
5: * Copyright (c) 1992, 1993
6: * The Regents of the University of California. All rights reserved.
7: *
8: * Redistribution and use in source and binary forms, with or without
9: * modification, are permitted provided that the following conditions
10: * are met:
11: * 1. Redistributions of source code must retain the above copyright
12: * notice, this list of conditions and the following disclaimer.
13: * 2. Redistributions in binary form must reproduce the above copyright
14: * notice, this list of conditions and the following disclaimer in the
15: * documentation and/or other materials provided with the distribution.
16: * 3. All advertising materials mentioning features or use of this software
17: * must display the following acknowledgement:
18: * This product includes software developed by the University of
19: * California, Berkeley and its contributors.
20: * 4. Neither the name of the University nor the names of its contributors
21: * may be used to endorse or promote products derived from this software
22: * without specific prior written permission.
23: *
24: * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
25: * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
26: * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
27: * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
28: * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
29: * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
30: * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
31: * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
32: * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
33: * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
34: * SUCH DAMAGE.
35: *
1.6 millert 36: * @(#)extern.h 8.2 (Berkeley) 4/20/95
1.16 ! millert 37: * $OpenBSD: extern.h,v 1.15 2000/08/23 21:24:08 mickey Exp $
1.1 deraadt 38: */
39:
1.3 deraadt 40: struct name;
1.1 deraadt 41: struct name *cat __P((struct name *, struct name *));
42: struct name *delname __P((struct name *, char []));
43: struct name *elide __P((struct name *));
44: struct name *extract __P((char [], int));
1.3 deraadt 45: struct grouphead;
1.1 deraadt 46: struct name *gexpand __P((struct name *, struct grouphead *, int, int));
47: struct name *nalloc __P((char [], int));
1.3 deraadt 48: struct header;
1.1 deraadt 49: struct name *outof __P((struct name *, FILE *, struct header *));
50: struct name *put __P((struct name *, struct name *));
51: struct name *tailof __P((struct name *));
52: struct name *usermap __P((struct name *));
53: FILE *Fdopen __P((int, char *));
54: FILE *Fopen __P((char *, char *));
55: FILE *Popen __P((char *, char *));
56: FILE *collect __P((struct header *, int));
57: char *copy __P((char *, char *));
58: char *copyin __P((char *, char **));
59: char *detract __P((struct name *, int));
60: char *expand __P((char *));
61: char *getdeadletter __P((void));
62: char *getname __P((int));
1.3 deraadt 63: struct message;
1.1 deraadt 64: char *hfield __P((char [], struct message *));
65: FILE *infix __P((struct header *, FILE *));
66: char *ishfield __P((char [], char[], char *));
67: char *name1 __P((struct message *, int));
68: char *nameof __P((struct message *, int));
69: char *nextword __P((char *, char *));
70: char *readtty __P((char [], char []));
71: char *reedit __P((char *));
72: FILE *run_editor __P((FILE *, off_t, int, int));
73: char *salloc __P((int));
74: char *savestr __P((char *));
75: FILE *setinput __P((struct message *));
76: char *skin __P((char *));
77: char *skip_comment __P((char *));
78: char *snarf __P((char [], int *));
79: char *username __P((void));
80: char *value __P((char []));
81: char *vcopy __P((char []));
82: char *yankword __P((char *, char []));
83: int Fclose __P((FILE *));
1.3 deraadt 84: int More __P((void *));
1.1 deraadt 85: int Pclose __P((FILE *));
1.3 deraadt 86: int Respond __P((void *));
87: int Type __P((void *));
1.1 deraadt 88: int _Respond __P((int []));
89: int _respond __P((int *));
90: void alter __P((char *));
1.3 deraadt 91: int alternates __P((void *));
1.1 deraadt 92: void announce __P((void));
93: int anyof __P((char *, char *));
94: int append __P((struct message *, FILE *));
95: int argcount __P((char **));
96: void assign __P((char [], char []));
1.10 millert 97: int bangexp __P((char *, size_t));
1.1 deraadt 98: int blankline __P((char []));
99: void brokpipe __P((int));
100: int charcount __P((char *, int));
101: int check __P((int, int));
1.13 millert 102: void clearnew __P((void));
1.1 deraadt 103: void clob1 __P((int));
1.3 deraadt 104: int clobber __P((void *));
1.1 deraadt 105: void close_all_files __P((void));
106: int cmatch __P((char *, char *));
107: void collhup __P((int));
108: void collint __P((int));
109: void collstop __P((int));
110: void commands __P((void));
1.3 deraadt 111: int copycmd __P((void *));
112: int core __P((void *));
1.1 deraadt 113: int count __P((struct name *));
1.3 deraadt 114: int delete __P((void *));
1.1 deraadt 115: int delm __P((int []));
1.3 deraadt 116: int deltype __P((void *));
1.1 deraadt 117: void demail __P((void));
1.3 deraadt 118: int dosh __P((void *));
119: int dot_lock __P((const char *, int, FILE *, const char *));
120: void dot_unlock __P((const char *));
121: int echo __P((void *));
1.1 deraadt 122: int edit1 __P((int *, int));
1.3 deraadt 123: int editor __P((void *));
1.1 deraadt 124: void edstop __P((void));
1.3 deraadt 125: int elsecmd __P((void *));
126: int endifcmd __P((void *));
1.1 deraadt 127: int evalcol __P((int));
128: int execute __P((char [], int));
129: int exwrite __P((char [], FILE *, int));
130: void fail __P((char [], char []));
1.3 deraadt 131: int file __P((void *));
1.1 deraadt 132: struct grouphead *
133: findgroup __P((char []));
1.5 deraadt 134: void findmail __P((char *, char *, int));
1.1 deraadt 135: int first __P((int, int));
136: void fixhead __P((struct header *, struct name *));
137: void fmt __P((char *, struct name *, FILE *, int));
1.3 deraadt 138: int folders __P((void *));
1.9 millert 139: int forward __P((char [], FILE *, char *, int));
1.1 deraadt 140: void free_child __P((int));
1.3 deraadt 141: int from __P((void *));
1.1 deraadt 142: off_t fsize __P((FILE *));
1.5 deraadt 143: int getfold __P((char *, int));
1.1 deraadt 144: int gethfield __P((FILE *, char [], int, char **));
1.7 millert 145: void gethfromtty __P((struct header *, int));
1.1 deraadt 146: int getmsglist __P((char *, int *, int));
147: int getrawlist __P((char [], char **, int));
148: int getuserid __P((char []));
149: int grabh __P((struct header *, int));
1.3 deraadt 150: int group __P((void *));
1.1 deraadt 151: void hangup __P((int));
152: int hash __P((char *));
153: void hdrstop __P((int));
1.3 deraadt 154: int headers __P((void *));
155: int help __P((void *));
1.1 deraadt 156: void holdsigs __P((void));
1.3 deraadt 157: int ifcmd __P((void *));
158: int igfield __P((void *));
159: struct ignoretab;
1.1 deraadt 160: int ignore1 __P((char *[], struct ignoretab *, char *));
161: int igshow __P((struct ignoretab *, char *));
162: void intr __P((int));
1.6 millert 163: int inc __P((void *));
164: int incfile __P((void));
1.1 deraadt 165: int isdate __P((char []));
166: int isdir __P((char []));
167: int isfileaddr __P((char *));
168: int ishead __P((char []));
169: int isign __P((char *, struct ignoretab []));
170: int isprefix __P((char *, char *));
1.11 millert 171: void istrncpy __P((char *, char *, size_t));
1.2 niklas 172: const struct cmd *
1.1 deraadt 173: lex __P((char []));
174: void load __P((char *));
175: struct var *
176: lookup __P((char []));
177: int mail __P((struct name *,
178: struct name *, struct name *, struct name *, char *));
179: void mail1 __P((struct header *, int));
1.6 millert 180: void makemessage __P((FILE *, int));
1.1 deraadt 181: void mark __P((int));
182: int markall __P((char [], int));
1.16 ! millert 183: int marknew __P((void *));
1.1 deraadt 184: int matchsender __P((char *, int));
185: int matchsubj __P((char *, int));
1.3 deraadt 186: int mboxit __P((void *));
1.1 deraadt 187: int member __P((char *, struct ignoretab *));
188: void mesedit __P((FILE *, int));
189: void mespipe __P((FILE *, char []));
1.3 deraadt 190: int messize __P((void *));
1.1 deraadt 191: int metamess __P((int, int));
1.3 deraadt 192: int more __P((void *));
1.6 millert 193: int newfileinfo __P((int));
1.3 deraadt 194: int next __P((void *));
195: int null __P((void *));
196: struct headline;
1.1 deraadt 197: void parse __P((char [], struct headline *, char []));
1.3 deraadt 198: int pcmdlist __P((void *));
199: int pdot __P((void *));
1.16 ! millert 200: int pipeit __P((void *, void *));
1.3 deraadt 201: void prepare_child __P((sigset_t *, int, int));
202: int preserve __P((void *));
1.1 deraadt 203: void prettyprint __P((struct name *));
204: void printgroup __P((char []));
205: void printhead __P((int));
206: int puthead __P((struct header *, FILE *, int));
1.6 millert 207: int putline __P((FILE *, char *, int));
1.3 deraadt 208: int pversion __P((void *));
1.1 deraadt 209: void quit __P((void));
1.3 deraadt 210: int quitcmd __P((void *));
1.1 deraadt 211: int raise __P((int));
212: int readline __P((FILE *, char *, int));
213: void register_file __P((FILE *, int, int));
214: void regret __P((int));
215: void relsesigs __P((void));
1.3 deraadt 216: int respond __P((void *));
217: int retfield __P((void *));
218: int rexit __P((void *));
1.1 deraadt 219: int rm __P((char *));
1.16 ! millert 220: int run_command __P((char *cmd, sigset_t *nset, int infd, int outfd, ...));
1.3 deraadt 221: int save __P((void *));
1.1 deraadt 222: int save1 __P((char [], int, char *, struct ignoretab *));
223: void savedeadletter __P((FILE *));
1.3 deraadt 224: int saveigfield __P((void *));
1.1 deraadt 225: int savemail __P((char [], FILE *));
1.3 deraadt 226: int saveretfield __P((void *));
1.1 deraadt 227: int scan __P((char **));
228: void scaninit __P((void));
1.3 deraadt 229: int schdir __P((void *));
1.1 deraadt 230: int screensize __P((void));
1.3 deraadt 231: int scroll __P((void *));
1.14 millert 232: int sendmessage __P((struct message *, FILE *, struct ignoretab *, char *));
1.3 deraadt 233: int sendmail __P((void *));
234: int set __P((void *));
1.1 deraadt 235: int setfile __P((char *));
236: void setmsize __P((int));
1.6 millert 237: void setptr __P((FILE *, off_t));
1.1 deraadt 238: void setscreensize __P((void));
1.3 deraadt 239: int shell __P((void *));
1.1 deraadt 240: void sigchild __P((int));
241: void sort __P((char **));
1.3 deraadt 242: int source __P((void *));
1.4 millert 243: int spool_lock __P((void));
244: int spool_unlock __P((void));
1.1 deraadt 245: void spreserve __P((void));
246: void sreset __P((void));
1.16 ! millert 247: int start_command __P((char *cmd, sigset_t *nset, int infd, int outfd, ...));
! 248: int start_commandv __P((char *, sigset_t *, int, int, _BSD_VA_LIST_));
1.1 deraadt 249: void statusput __P((struct message *, FILE *, char *));
250: void stop __P((int));
1.3 deraadt 251: int stouch __P((void *));
252: int swrite __P((void *));
1.1 deraadt 253: void tinit __P((void));
1.3 deraadt 254: int top __P((void *));
1.1 deraadt 255: void touch __P((struct message *));
256: void ttyint __P((int));
257: void ttystop __P((int));
1.3 deraadt 258: int type __P((void *));
1.16 ! millert 259: int type1 __P((int *, char *, int, int));
1.3 deraadt 260: int undeletecmd __P((void *));
1.1 deraadt 261: void unmark __P((int));
1.15 mickey 262: char **unpack __P((struct name *, struct name *));
1.3 deraadt 263: int unread __P((void *));
1.1 deraadt 264: void unregister_file __P((FILE *));
1.3 deraadt 265: int unset __P((void *));
1.1 deraadt 266: int unstack __P((void));
267: void vfree __P((char *));
1.3 deraadt 268: int visual __P((void *));
1.1 deraadt 269: int wait_child __P((int));
270: int wait_command __P((int));
271: int writeback __P((FILE *));
1.6 millert 272:
273: extern char *__progname;
1.8 millert 274: extern char *tmpdir;
1.16 ! millert 275: extern const struct cmd *com; /* command we are running */