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