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