extern.h revision 1.5 1 /* $NetBSD: extern.h,v 1.5 1996/12/28 07:11:01 tls 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.5 1996/12/28 07:11:01 tls 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 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((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 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 isdate __P((char []));
162 int isdir __P((char []));
163 int isfileaddr __P((char *));
164 int ishead __P((char []));
165 int isign __P((char *, struct ignoretab []));
166 int isprefix __P((char *, char *));
167 void istrcpy __P((char *, char *));
168 const struct cmd *
169 lex __P((char []));
170 void load __P((char *));
171 struct var *
172 lookup __P((char []));
173 int mail __P((struct name *,
174 struct name *, struct name *, struct name *, char *));
175 void mail1 __P((struct header *, int));
176 void makemessage __P((FILE *, int));
177 void mark __P((int));
178 int markall __P((char [], int));
179 int matchsender __P((char *, int));
180 int matchsubj __P((char *, int));
181 int mboxit __P((void *));
182 int member __P((char *, struct ignoretab *));
183 void mesedit __P((FILE *, int));
184 void mespipe __P((FILE *, char []));
185 int messize __P((void *));
186 int metamess __P((int, int));
187 int more __P((void *));
188 int newfileinfo __P((int));
189 int next __P((void *));
190 int null __P((void *));
191 void panic __P((const char *, ...))
192 __attribute__((__format__(__printf__,1,2),__noreturn__));
193 struct headline;
194 void parse __P((char [], struct headline *, char []));
195 int pcmdlist __P((void *));
196 int pdot __P((void *));
197 void prepare_child __P((sigset_t *, int, int));
198 int preserve __P((void *));
199 void prettyprint __P((struct name *));
200 void printgroup __P((char []));
201 void printhead __P((int));
202 int puthead __P((struct header *, FILE *, int));
203 int putline __P((FILE *, char *));
204 int pversion __P((void *));
205 void quit __P((void));
206 int quitcmd __P((void *));
207 int raise __P((int));
208 int readline __P((FILE *, char *, int));
209 void register_file __P((FILE *, int, int));
210 void regret __P((int));
211 void relsesigs __P((void));
212 int respond __P((void *));
213 int retfield __P((void *));
214 int rexit __P((void *));
215 int rm __P((char *));
216 int run_command __P((char *, sigset_t *, int, int, char *, char *, char *));
217 int save __P((void *));
218 int save1 __P((char [], int, char *, struct ignoretab *));
219 void savedeadletter __P((FILE *));
220 int saveigfield __P((void *));
221 int savemail __P((char [], FILE *));
222 int saveretfield __P((void *));
223 int scan __P((char **));
224 void scaninit __P((void));
225 int schdir __P((void *));
226 int screensize __P((void));
227 int scroll __P((void *));
228 int send __P((struct message *, FILE *, struct ignoretab *, char *));
229 int sendmail __P((void *));
230 int set __P((void *));
231 int setfile __P((char *));
232 void setmsize __P((int));
233 void setptr __P((FILE *, off_t));
234 void setscreensize __P((void));
235 int shell __P((void *));
236 void sigchild __P((int));
237 void sort __P((char **));
238 int source __P((void *));
239 void spreserve __P((void));
240 void sreset __P((void));
241 int start_command __P((char *, sigset_t *, int, int, char *, char *, char *));
242 void statusput __P((struct message *, FILE *, char *));
243 void stop __P((int));
244 int stouch __P((void *));
245 int swrite __P((void *));
246 void tinit __P((void));
247 int top __P((void *));
248 void touch __P((struct message *));
249 void ttyint __P((int));
250 void ttystop __P((int));
251 int type __P((void *));
252 int type1 __P((int *, int, int));
253 int undeletecmd __P((void *));
254 void unmark __P((int));
255 char **unpack __P((struct name *));
256 int unread __P((void *));
257 void unregister_file __P((FILE *));
258 int unset __P((void *));
259 int unstack __P((void));
260 void vfree __P((char *));
261 int visual __P((void *));
262 int wait_child __P((int));
263 int wait_command __P((int));
264 int writeback __P((FILE *));
265