xref: /netbsd-src/usr.bin/mail/extern.h (revision 1ca5c1b28139779176bd5c13ad7c5f25c0bcd5f8)
1 /*	$NetBSD: extern.h,v 1.12 2001/02/05 02:07:53 christos Exp $	*/
2 
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.2 (Berkeley) 4/20/95
36  *	$NetBSD: extern.h,v 1.12 2001/02/05 02:07:53 christos Exp $
37  */
38 
39 struct name;
40 struct name *cat __P((struct name *, struct name *));
41 struct name *delname __P((struct name *, char []));
42 struct name *elide __P((struct name *));
43 struct name *extract __P((char [], int));
44 struct grouphead;
45 struct name *gexpand __P((struct name *, struct grouphead *, int, int));
46 struct name *nalloc __P((char [], int));
47 struct header;
48 struct name *outof __P((struct name *, FILE *, struct header *));
49 struct name *put __P((struct name *, struct name *));
50 struct name *tailof __P((struct name *));
51 struct name *usermap __P((struct name *));
52 FILE	*Fdopen __P((int, char *));
53 FILE	*Fopen __P((char *, char *));
54 FILE	*Popen __P((char *, char *));
55 FILE	*collect __P((struct header *, int));
56 char	*copy __P((char *, char *));
57 char	*copyin __P((char *, char **));
58 char	*detract __P((struct name *, int));
59 char	*expand __P((char *));
60 char	*getdeadletter __P((void));
61 const	char *getname __P((int));
62 struct message;
63 char	*hfield __P((char [], struct message *));
64 FILE	*infix __P((struct header *, FILE *));
65 char	*ishfield __P((char [], char[], char *));
66 char	*name1 __P((struct message *, int));
67 char	*nameof __P((struct message *, int));
68 char	*nextword __P((char *, char *));
69 char	*readtty __P((char [], char []));
70 char 	*reedit __P((char *));
71 FILE	*run_editor __P((FILE *, off_t, int, int));
72 char	*salloc __P((int));
73 char	*savestr __P((const char *));
74 FILE	*setinput __P((struct message *));
75 char	*skin __P((char *));
76 char	*skip_comment __P((char *));
77 char	*snarf __P((char [], int *));
78 const	char *username __P((void));
79 char	*value __P((char []));
80 char	*vcopy __P((char []));
81 char	*yankword __P((char *, char []));
82 int	 Fclose __P((FILE *));
83 int	 More __P((void *));
84 int	 Pclose __P((FILE *));
85 int	 Respond __P((void *));
86 int	 Type __P((void *));
87 int	 _Respond __P((int []));
88 int	 _respond __P((int *));
89 void	 alter __P((char *));
90 int	 alternates __P((void *));
91 void	 announce __P((void));
92 int	 anyof __P((char *, char *));
93 int	 append __P((struct message *, FILE *));
94 int	 argcount __P((char **));
95 void	 assign __P((char [], char []));
96 int	 bangexp __P((char *));
97 int	 blankline __P((char []));
98 void	 brokpipe __P((int));
99 int	 charcount __P((char *, int));
100 int	 check __P((int, int));
101 void	 clob1 __P((int));
102 int	 clobber __P((void *));
103 void	 close_all_files __P((void));
104 int	 cmatch __P((char *, char *));
105 void	 collhup __P((int));
106 void	 collint __P((int));
107 void	 collstop __P((int));
108 void	 commands __P((void));
109 int	 copycmd __P((void *));
110 int	 core __P((void *));
111 int	 count __P((struct name *));
112 int	 delete __P((void *));
113 int	 delm __P((int []));
114 int	 deltype __P((void *));
115 void	 demail __P((void));
116 int	 dosh __P((void *));
117 int	 dot_lock __P((const char *, int, FILE *, const char *));
118 void	 dot_unlock __P((const char *));
119 int	 echo __P((void *));
120 int	 edit1 __P((int *, int));
121 int	 editor __P((void *));
122 void	 edstop __P((void));
123 int	 elsecmd __P((void *));
124 int	 endifcmd __P((void *));
125 int	 evalcol __P((int));
126 int	 execute __P((char [], int));
127 int	 exwrite __P((char [], FILE *, int));
128 void	 fail __P((char [], char []));
129 int	 file __P((void *));
130 struct grouphead *
131 	 findgroup __P((char []));
132 void	 findmail __P((char *, char *));
133 int	 first __P((int, int));
134 void	 fixhead __P((struct header *, struct name *));
135 void	 fmt __P((char *, struct name *, FILE *, int));
136 int	 folders __P((void *));
137 int	 forward __P((char [], FILE *, int));
138 void	 free_child __P((int));
139 int	 from __P((void *));
140 off_t	 fsize __P((FILE *));
141 int	 getfold __P((char *));
142 int	 gethfield __P((FILE *, char [], int, char **));
143 int	 getmsglist __P((char *, int *, int));
144 int	 getrawlist __P((char [], char **, int));
145 int	 getuserid __P((char []));
146 int	 grabh __P((struct header *, int));
147 int	 group __P((void *));
148 void	 hangup __P((int));
149 int	 hash __P((char *));
150 void	 hdrstop __P((int));
151 int	 headers __P((void *));
152 int	 help __P((void *));
153 void	 holdsigs __P((void));
154 int	 ifcmd __P((void *));
155 int	 igfield __P((void *));
156 struct ignoretab;
157 int	 ignore1 __P((char *[], struct ignoretab *, char *));
158 int	 igshow __P((struct ignoretab *, char *));
159 void	 intr __P((int));
160 int	 inc __P((void *));
161 int	 incfile __P((void));
162 int	 isdate __P((char []));
163 int	 isdir __P((char []));
164 int	 isfileaddr __P((char *));
165 int	 ishead __P((char []));
166 int	 isign __P((char *, struct ignoretab []));
167 int	 isprefix __P((char *, char *));
168 void	 istrcpy __P((char *, char *));
169 const struct cmd *
170 	 lex __P((char []));
171 void	 load __P((char *));
172 struct var *
173 	 lookup __P((char []));
174 int	 mail __P((struct name *,
175 	    struct name *, struct name *, struct name *, char *));
176 void	 mail1 __P((struct header *, int));
177 void	 makemessage __P((FILE *, int));
178 void	 mark __P((int));
179 int	 markall __P((char [], int));
180 int	 matchsender __P((char *, int));
181 int	 matchsubj __P((char *, int));
182 int	 mboxit __P((void *));
183 int	 member __P((char *, struct ignoretab *));
184 void	 mesedit __P((FILE *, int));
185 void	 mespipe __P((FILE *, char []));
186 int	 messize __P((void *));
187 int	 metamess __P((int, int));
188 int	 more __P((void *));
189 int	 newfileinfo __P((int));
190 int	 next __P((void *));
191 int	 null __P((void *));
192 struct headline;
193 void	 parse __P((char [], struct headline *, char []));
194 int	 pcmdlist __P((void *));
195 int	 pdot __P((void *));
196 void	 prepare_child __P((sigset_t *, int, int));
197 int	 preserve __P((void *));
198 void	 prettyprint __P((struct name *));
199 void	 printgroup __P((char []));
200 void	 printhead __P((int));
201 int	 puthead __P((struct header *, FILE *, int));
202 int	 putline __P((FILE *, char *, int));
203 int	 pversion __P((void *));
204 void	 quit __P((void));
205 int	 quitcmd __P((void *));
206 int	 upcase __P((int));
207 int	 readline __P((FILE *, char *, int));
208 void	 register_file __P((FILE *, int, int));
209 void	 regret __P((int));
210 void	 relsesigs __P((void));
211 int	 respond __P((void *));
212 int	 retfield __P((void *));
213 int	 rexit __P((void *));
214 int	 rm __P((char *));
215 int	 run_command __P((char *, sigset_t *, int, int, char *, char *, char *));
216 int	 save __P((void *));
217 int	 save1 __P((char [], int, char *, struct ignoretab *));
218 void	 savedeadletter __P((FILE *));
219 int	 saveigfield __P((void *));
220 int	 savemail __P((char [], FILE *));
221 int	 saveretfield __P((void *));
222 int	 scan __P((char **));
223 void	 scaninit __P((void));
224 int	 schdir __P((void *));
225 int	 screensize __P((void));
226 int	 scroll __P((void *));
227 int	 sendmessage __P((struct message *, FILE *, struct ignoretab *, char *));
228 int	 sendmail __P((void *));
229 int	 set __P((void *));
230 int	 setfile __P((char *));
231 void	 setmsize __P((int));
232 void	 setptr __P((FILE *, off_t));
233 void	 setscreensize __P((void));
234 int	 shell __P((void *));
235 void	 sigchild __P((int));
236 void	 sort __P((char **));
237 int	 source __P((void *));
238 void	 spreserve __P((void));
239 void	 sreset __P((void));
240 int	 start_command __P((char *, sigset_t *, int, int, char *, char *, char *));
241 void	 statusput __P((struct message *, FILE *, char *));
242 void	 stop __P((int));
243 int	 stouch __P((void *));
244 int	 swrite __P((void *));
245 void	 tinit __P((void));
246 int	 top __P((void *));
247 void	 touch __P((struct message *));
248 void	 ttyint __P((int));
249 void	 ttystop __P((int));
250 int	 type __P((void *));
251 int	 type1 __P((int *, int, int));
252 int	 undeletecmd __P((void *));
253 void	 unmark __P((int));
254 char	**unpack __P((struct name *));
255 int	 unread __P((void *));
256 void	 unregister_file __P((FILE *));
257 int	 unset __P((void *));
258 int	 unstack __P((void));
259 void	 v_free __P((char *));
260 int	 visual __P((void *));
261 int	 wait_child __P((int));
262 int	 wait_command __P((int));
263 int	 writeback __P((FILE *));
264