Annotation of src/usr.bin/mail/extern.h, Revision 1.5
1.5 ! deraadt 1: /* $OpenBSD: extern.h,v 1.4 1997/03/29 03:01:45 millert Exp $ */
1.3 deraadt 2: /* $NetBSD: extern.h,v 1.4 1996/06/08 19:48:21 christos 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: *
36: * @(#)extern.h 8.1 (Berkeley) 6/6/93
1.3 deraadt 37: * $NetBSD: extern.h,v 1.4 1996/06/08 19:48:21 christos 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 []));
97: int bangexp __P((char *));
98: int blankline __P((char []));
99: void brokpipe __P((int));
100: int charcount __P((char *, int));
101: int check __P((int, int));
102: void clob1 __P((int));
1.3 deraadt 103: int clobber __P((void *));
1.1 deraadt 104: void close_all_files __P((void));
105: int cmatch __P((char *, char *));
106: void collhup __P((int));
107: void collint __P((int));
108: void collstop __P((int));
109: void commands __P((void));
1.3 deraadt 110: int copycmd __P((void *));
111: int core __P((void *));
1.1 deraadt 112: int count __P((struct name *));
1.3 deraadt 113: int delete __P((void *));
1.1 deraadt 114: int delm __P((int []));
1.3 deraadt 115: int deltype __P((void *));
1.1 deraadt 116: void demail __P((void));
1.3 deraadt 117: int dosh __P((void *));
118: int dot_lock __P((const char *, int, FILE *, const char *));
119: void dot_unlock __P((const char *));
120: int echo __P((void *));
1.1 deraadt 121: int edit1 __P((int *, int));
1.3 deraadt 122: int editor __P((void *));
1.1 deraadt 123: void edstop __P((void));
1.3 deraadt 124: int elsecmd __P((void *));
125: int endifcmd __P((void *));
1.1 deraadt 126: int evalcol __P((int));
127: int execute __P((char [], int));
128: int exwrite __P((char [], FILE *, int));
129: void fail __P((char [], char []));
1.3 deraadt 130: int file __P((void *));
1.1 deraadt 131: struct grouphead *
132: findgroup __P((char []));
1.5 ! deraadt 133: void findmail __P((char *, char *, int));
1.1 deraadt 134: int first __P((int, int));
135: void fixhead __P((struct header *, struct name *));
136: void fmt __P((char *, struct name *, FILE *, int));
1.3 deraadt 137: int folders __P((void *));
1.1 deraadt 138: int forward __P((char [], FILE *, int));
139: void free_child __P((int));
1.3 deraadt 140: int from __P((void *));
1.1 deraadt 141: off_t fsize __P((FILE *));
1.5 ! deraadt 142: int getfold __P((char *, int));
1.1 deraadt 143: int gethfield __P((FILE *, char [], int, char **));
144: int getmsglist __P((char *, int *, int));
145: int getrawlist __P((char [], char **, int));
146: int getuserid __P((char []));
147: int grabh __P((struct header *, int));
1.3 deraadt 148: int group __P((void *));
1.1 deraadt 149: void hangup __P((int));
150: int hash __P((char *));
151: void hdrstop __P((int));
1.3 deraadt 152: int headers __P((void *));
153: int help __P((void *));
1.1 deraadt 154: void holdsigs __P((void));
1.3 deraadt 155: int ifcmd __P((void *));
156: int igfield __P((void *));
157: struct ignoretab;
1.1 deraadt 158: int ignore1 __P((char *[], struct ignoretab *, char *));
159: int igshow __P((struct ignoretab *, char *));
160: void intr __P((int));
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 *));
1.2 niklas 168: const struct cmd *
1.1 deraadt 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 *));
177: void mark __P((int));
178: int markall __P((char [], int));
179: int matchsender __P((char *, int));
180: int matchsubj __P((char *, int));
1.3 deraadt 181: int mboxit __P((void *));
1.1 deraadt 182: int member __P((char *, struct ignoretab *));
183: void mesedit __P((FILE *, int));
184: void mespipe __P((FILE *, char []));
1.3 deraadt 185: int messize __P((void *));
1.1 deraadt 186: int metamess __P((int, int));
1.3 deraadt 187: int more __P((void *));
1.1 deraadt 188: int newfileinfo __P((void));
1.3 deraadt 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;
1.1 deraadt 194: void parse __P((char [], struct headline *, char []));
1.3 deraadt 195: int pcmdlist __P((void *));
196: int pdot __P((void *));
197: void prepare_child __P((sigset_t *, int, int));
198: int preserve __P((void *));
1.1 deraadt 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 *));
1.3 deraadt 204: int pversion __P((void *));
1.1 deraadt 205: void quit __P((void));
1.3 deraadt 206: int quitcmd __P((void *));
1.1 deraadt 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));
1.3 deraadt 212: int respond __P((void *));
213: int retfield __P((void *));
214: int rexit __P((void *));
1.1 deraadt 215: int rm __P((char *));
1.3 deraadt 216: int run_command __P((char *, sigset_t *, int, int, char *, char *, char *));
217: int save __P((void *));
1.1 deraadt 218: int save1 __P((char [], int, char *, struct ignoretab *));
219: void savedeadletter __P((FILE *));
1.3 deraadt 220: int saveigfield __P((void *));
1.1 deraadt 221: int savemail __P((char [], FILE *));
1.3 deraadt 222: int saveretfield __P((void *));
1.1 deraadt 223: int scan __P((char **));
224: void scaninit __P((void));
1.3 deraadt 225: int schdir __P((void *));
1.1 deraadt 226: int screensize __P((void));
1.3 deraadt 227: int scroll __P((void *));
1.1 deraadt 228: int send __P((struct message *, FILE *, struct ignoretab *, char *));
1.3 deraadt 229: int sendmail __P((void *));
230: int set __P((void *));
1.1 deraadt 231: int setfile __P((char *));
232: void setmsize __P((int));
233: void setptr __P((FILE *));
234: void setscreensize __P((void));
1.3 deraadt 235: int shell __P((void *));
1.1 deraadt 236: void sigchild __P((int));
237: void sort __P((char **));
1.3 deraadt 238: int source __P((void *));
1.4 millert 239: int spool_lock __P((void));
240: int spool_unlock __P((void));
1.1 deraadt 241: void spreserve __P((void));
242: void sreset __P((void));
1.3 deraadt 243: int start_command __P((char *, sigset_t *, int, int, char *, char *, char *));
1.1 deraadt 244: void statusput __P((struct message *, FILE *, char *));
245: void stop __P((int));
1.3 deraadt 246: int stouch __P((void *));
247: int swrite __P((void *));
1.1 deraadt 248: void tinit __P((void));
1.3 deraadt 249: int top __P((void *));
1.1 deraadt 250: void touch __P((struct message *));
251: void ttyint __P((int));
252: void ttystop __P((int));
1.3 deraadt 253: int type __P((void *));
1.1 deraadt 254: int type1 __P((int *, int, int));
1.3 deraadt 255: int undeletecmd __P((void *));
1.1 deraadt 256: void unmark __P((int));
257: char **unpack __P((struct name *));
1.3 deraadt 258: int unread __P((void *));
1.1 deraadt 259: void unregister_file __P((FILE *));
1.3 deraadt 260: int unset __P((void *));
1.1 deraadt 261: int unstack __P((void));
262: void vfree __P((char *));
1.3 deraadt 263: int visual __P((void *));
1.1 deraadt 264: int wait_child __P((int));
265: int wait_command __P((int));
266: int writeback __P((FILE *));