]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - contrib/tcsh/sh.decls.h
This commit was generated by cvs2svn to compensate for changes in r99679,
[FreeBSD/FreeBSD.git] / contrib / tcsh / sh.decls.h
1 /* $Header: /src/pub/tcsh/sh.decls.h,v 3.35 2001/08/06 23:52:03 christos Exp $ */
2 /*
3  * sh.decls.h    External declarations from sh*.c
4  */
5 /*-
6  * Copyright (c) 1980, 1991 The Regents of the University of California.
7  * All rights reserved.
8  *
9  * Redistribution and use in source and binary forms, with or without
10  * modification, are permitted provided that the following conditions
11  * are met:
12  * 1. Redistributions of source code must retain the above copyright
13  *    notice, this list of conditions and the following disclaimer.
14  * 2. Redistributions in binary form must reproduce the above copyright
15  *    notice, this list of conditions and the following disclaimer in the
16  *    documentation and/or other materials provided with the distribution.
17  * 3. All advertising materials mentioning features or use of this software
18  *    must display the following acknowledgement:
19  *      This product includes software developed by the University of
20  *      California, Berkeley and its contributors.
21  * 4. Neither the name of the University nor the names of its contributors
22  *    may be used to endorse or promote products derived from this software
23  *    without specific prior written permission.
24  *
25  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
26  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
27  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
28  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
29  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
30  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
31  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
32  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
33  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
34  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
35  * SUCH DAMAGE.
36  */
37 #ifndef _h_sh_decls
38 #define _h_sh_decls
39
40 /*
41  * sh.c
42  */
43 extern  int               gethdir       __P((Char *));
44 extern  void              dosource      __P((Char **, struct command *));
45 extern  void              exitstat      __P((void));
46 extern  void              goodbye       __P((Char **, struct command *));
47 extern  void              importpath    __P((Char *));
48 extern  void              initdesc      __P((void));
49 extern  sigret_t          pintr         __P((int));
50 extern  void              pintr1        __P((bool));
51 extern  void              process       __P((bool));
52 extern  void              untty         __P((void));
53 #ifdef PROF
54 extern  void              done          __P((int));
55 #else
56 extern  void              xexit         __P((int));
57 #endif
58
59 /*
60  * sh.dir.c
61  */
62 extern  void              dinit         __P((Char *));
63 extern  void              dodirs        __P((Char **, struct command *));
64 extern  Char             *dcanon        __P((Char *, Char *));
65 extern  void              dtildepr      __P((Char *));
66 extern  void              dtilde        __P((void));
67 extern  void              dochngd       __P((Char **, struct command *));
68 extern  Char             *dnormalize    __P((Char *, int));
69 extern  void              dopushd       __P((Char **, struct command *));
70 extern  void              dopopd        __P((Char **, struct command *));
71 extern  void              dfree         __P((struct directory *));
72 extern  void              dsetstack     __P((void));
73 extern  int               getstakd      __P((Char *, int));
74 extern  void              recdirs       __P((Char *, int));
75 extern  void              loaddirs      __P((Char *));
76
77 /*
78  * sh.dol.c
79  */
80 extern  void              Dfix          __P((struct command *));
81 extern  Char             *Dfix1         __P((Char *));
82 extern  void              heredoc       __P((Char *));
83
84 /*
85  * sh.err.c
86  */
87 extern  void              errinit       __P((void));
88 extern  void              seterror      __P((unsigned int, ...));
89 extern  void              stderror      __P((unsigned int, ...));
90
91 /*
92  * sh.exec.c
93  */
94 extern  void              doexec        __P((struct command *));
95 extern  void              dohash        __P((Char **, struct command *));
96 extern  void              dounhash      __P((Char **, struct command *));
97 extern  void              execash       __P((Char **, struct command *));
98 extern  void              hashstat      __P((Char **, struct command *));
99 extern  void              xechoit       __P((Char **));
100 extern  int               executable    __P((Char *, Char *, bool));
101 extern  int               tellmewhat    __P((struct wordent *, Char *));
102 extern  void              dowhere       __P((Char **, struct command *));
103 extern  int               find_cmd      __P((Char *, int));
104
105 /*
106  * sh.exp.c
107  */
108 extern  Char     *filetest       __P((Char *, Char ***, bool));
109 extern  int               expr          __P((Char ***));
110 extern  int               exp0          __P((Char ***, bool));
111
112 /*
113  * sh.file.c
114  */
115 #ifdef FILEC
116 extern  int               tenex         __P((Char *, int));
117 #endif
118
119 /*
120  * sh.func.c
121  */
122 extern  void              tsetenv       __P((Char *, Char *));
123 extern  void              Unsetenv      __P((Char *));
124 extern  void              doalias       __P((Char **, struct command *));
125 extern  void              dobreak       __P((Char **, struct command *));
126 extern  void              docontin      __P((Char **, struct command *));
127 extern  void              doecho        __P((Char **, struct command *));
128 extern  void              doelse        __P((Char **, struct command *));
129 extern  void              doend         __P((Char **, struct command *));
130 extern  void              doeval        __P((Char **, struct command *));
131 extern  void              doexit        __P((Char **, struct command *));
132 extern  void              doforeach     __P((Char **, struct command *));
133 extern  void              doglob        __P((Char **, struct command *));
134 extern  void              dogoto        __P((Char **, struct command *));
135 extern  void              doif          __P((Char **, struct command *));
136 extern  void              dolimit       __P((Char **, struct command *));
137 extern  void              dologin       __P((Char **, struct command *));
138 extern  void              dologout      __P((Char **, struct command *));
139 #ifdef NEWGRP
140 extern  void              donewgrp      __P((Char **, struct command *));
141 #endif
142 extern  void              donohup       __P((Char **, struct command *));
143 extern  void              dohup         __P((Char **, struct command *));
144 extern  void              doonintr      __P((Char **, struct command *));
145 extern  void              doprintenv    __P((Char **, struct command *));
146 extern  void              dorepeat      __P((Char **, struct command *));
147 extern  void              dofiletest    __P((Char **, struct command *));
148 extern  void              dosetenv      __P((Char **, struct command *));
149 extern  void              dosuspend     __P((Char **, struct command *));
150 extern  void              doswbrk       __P((Char **, struct command *));
151 extern  void              doswitch      __P((Char **, struct command *));
152 extern  void              doumask       __P((Char **, struct command *));
153 extern  void              dounlimit     __P((Char **, struct command *));
154 extern  void              dounsetenv    __P((Char **, struct command *));
155 extern  void              dowhile       __P((Char **, struct command *));
156 extern  void              dozip         __P((Char **, struct command *));
157 extern  void              func          __P((struct command *, 
158                                              struct biltins *));
159 extern  void              gotolab       __P((Char *));
160 extern struct biltins    *isbfunc       __P((struct command *));
161 extern  void              prvars        __P((void));
162 extern  int               srchx         __P((Char *));
163 extern  void              unalias       __P((Char **, struct command *));
164 extern  void              wfree         __P((void));
165 extern  void              dobuiltins    __P((Char **, struct command *));
166 extern  void              reexecute     __P((struct command *));
167
168 /*
169  * sh.glob.c
170  */
171 extern  Char             *globequal     __P((Char *, Char *));
172 extern  Char            **dobackp       __P((Char *, bool));
173 extern  void              Gcat          __P((Char *, Char *));
174 extern  Char             *globone       __P((Char *, int));
175 extern  int               Gmatch        __P((Char *, Char *));
176 extern  int               Gnmatch       __P((Char *, Char *, Char **));
177 extern  void              ginit         __P((void));
178 extern  Char            **globall       __P((Char **));
179 extern  void              rscan         __P((Char **, void (*)(int)));
180 extern  void              tglob         __P((Char **));
181 extern  void              trim          __P((Char **));
182 #ifdef FILEC
183 extern  int               sortscmp      __P((Char **, Char **));
184 #endif
185 extern  void              nlsinit       __P((void));
186
187 /*
188  * sh.hist.c
189  */
190 extern  void              dohist        __P((Char **, struct command *));
191 extern  struct Hist      *enthist       __P((int, struct wordent *, bool, bool));
192 extern  void              savehist      __P((struct wordent *, bool));
193 extern  void              fmthist       __P((int, ptr_t, char *, size_t));
194 extern  void              rechist       __P((Char *, int));
195 extern  void              loadhist      __P((Char *, bool));
196
197 /*
198  * sh.init.c
199  */
200 extern  void              mesginit      __P((void));
201
202 /*
203  * sh.lex.c
204  */
205 extern  void              addla         __P((Char *));
206 extern  void              bseek         __P((struct Ain *));
207 extern  void              btell         __P((struct Ain *));
208 extern  void              btoeof        __P((void));
209 extern  void              copylex       __P((struct wordent *, 
210                                              struct wordent *));
211 extern  Char             *domod         __P((Char *, int));
212 extern  void              freelex       __P((struct wordent *));
213 extern  int               lex           __P((struct wordent *));
214 extern  void              prlex         __P((struct wordent *));
215 extern  int               readc         __P((bool));
216 extern  void              settell       __P((void));
217 extern  void              unreadc       __P((int));
218
219
220 /*
221  * sh.misc.c
222  */
223 extern  int               any           __P((char *, int));
224 extern  Char            **blkcpy        __P((Char **, Char **));
225 extern  void              blkfree       __P((Char **));
226 extern  int               blklen        __P((Char **));
227 extern  void              blkpr         __P((Char **));
228 extern  void              blkexpand     __P((Char **, Char *));
229 extern  Char            **blkspl        __P((Char **, Char **));
230 extern  void              closem        __P((void));
231 #ifndef CLOSE_ON_EXEC
232 extern  void              closech       __P((void));
233 #endif /* !CLOSE_ON_EXEC */
234 extern  Char            **copyblk       __P((Char **));
235 extern  int               dcopy         __P((int, int));
236 extern  int               dmove         __P((int, int));
237 extern  void              donefds       __P((void));
238 extern  Char              lastchr       __P((Char *));
239 extern  void              lshift        __P((Char **, int));
240 extern  int               number        __P((Char *));
241 extern  int               prefix        __P((Char *, Char *));
242 extern  Char            **saveblk       __P((Char **));
243 extern  void              setzero       __P((char *, int));
244 extern  Char             *strip         __P((Char *));
245 extern  Char             *quote         __P((Char *));
246 extern  Char             *quote_meta    __P((Char *, const Char *));
247 extern  char             *strsave       __P((const char *));
248 extern  void              udvar         __P((Char *));
249 #ifndef POSIX
250 extern  char             *strstr        __P((const char *, const char *));
251 #endif /* !POSIX */
252 #ifndef SHORT_STRINGS
253 extern  char             *strspl        __P((char *, char *));
254 extern  char             *strend        __P((char *));
255 #endif /* SHORT_STRINGS */
256
257 /*
258  * sh.parse.c
259  */
260 extern  void              alias         __P((struct wordent *));
261 extern  void              freesyn       __P((struct command *));
262 extern struct command    *syntax        __P((struct wordent *, 
263                                              struct wordent *, int));
264
265 /*
266  * sh.print.c
267  */
268 extern  void              drainoline    __P((void));
269 extern  void              flush         __P((void));
270 #ifdef BSDTIMES
271 extern  void              pcsecs        __P((long));
272 #else /* !BSDTIMES */
273 # ifdef POSIX
274 extern  void              pcsecs        __P((clock_t));
275 # else /* !POSIX */
276 extern  void              pcsecs        __P((time_t));
277 # endif /* !POSIX */
278 #endif /* BSDTIMES */
279 #ifdef BSDLIMIT
280 extern  void              psecs         __P((long));
281 #endif /* BSDLIMIT */
282 extern  int               putpure       __P((int));
283 extern  int               putraw        __P((int));
284 extern  void              xputchar      __P((int));
285
286
287 /*
288  * sh.proc.c
289  */
290 extern  void              dobg          __P((Char **, struct command *));
291 extern  void              dobg1         __P((Char **, struct command *));
292 extern  void              dofg          __P((Char **, struct command *));
293 extern  void              dofg1         __P((Char **, struct command *));
294 extern  void              dojobs        __P((Char **, struct command *));
295 extern  void              dokill        __P((Char **, struct command *));
296 extern  void              donotify      __P((Char **, struct command *));
297 extern  void              dostop        __P((Char **, struct command *));
298 extern  void              dowait        __P((Char **, struct command *));
299 extern  void              palloc        __P((int, struct command *));
300 extern  void              panystop      __P((bool));
301 extern  sigret_t          pchild        __P((int));
302 extern  void              pendjob       __P((void));
303 extern  int               pfork         __P((struct command *, int));
304 extern  void              pgetty        __P((int, int));
305 extern  void              pjwait        __P((struct process *));
306 extern  void              pnote         __P((void));
307 extern  void              prestjob      __P((void));
308 extern  void              psavejob      __P((void));
309 extern  int               pstart        __P((struct process *, int));
310 extern  void              pwait         __P((void));
311 extern  struct process   *pfind         __P((Char *));
312
313 /*
314  * sh.sem.c
315  */
316 extern  void              execute       __P((struct command *, int, int *, 
317                                              int *));
318 extern  void              mypipe        __P((int *));
319
320 /*
321  * sh.set.c
322  */
323 extern  struct varent    *adrof1        __P((Char *, struct varent *));
324 extern  void              doset         __P((Char **, struct command *));
325 extern  void              dolet         __P((Char **, struct command *));
326 extern  Char             *putn          __P((int));
327 extern  int               getn          __P((Char *));
328 extern  Char             *value1        __P((Char *, struct varent *));
329 extern  void              set           __P((Char *, Char *, int));
330 extern  void              set1          __P((Char *, Char **, struct varent *,
331                                              int));
332 extern  void              setq          __P((Char *, Char **, struct varent *,
333                                              int));
334 extern  void              unset         __P((Char **, struct command *));
335 extern  void              unset1        __P((Char *[], struct varent *));
336 extern  void              unsetv        __P((Char *));
337 extern  void              setNS         __P((Char *));
338 extern  void              shift         __P((Char **, struct command *));
339 extern  void              plist         __P((struct varent *, int));
340 extern  Char             *unparse       __P((struct command *));
341 #if defined(DSPMBYTE)
342 extern  void              update_dspmbyte_vars  __P((void));
343 extern  void              autoset_dspmbyte      __P((Char *));
344 #endif
345
346 /*
347  * sh.time.c
348  */
349 extern  void              donice        __P((Char **, struct command *));
350 extern  void              dotime        __P((Char **, struct command *));
351 #ifdef BSDTIMES
352 extern  void              prusage       __P((struct sysrusage *,
353                                              struct sysrusage *, 
354                                              timeval_t *, timeval_t *));
355 extern  void              ruadd         __P((struct sysrusage *,
356                                              struct sysrusage *));
357 #else /* BSDTIMES */
358 # ifdef _SEQUENT_
359 extern  void              prusage       __P((struct process_stats *,
360                                              struct process_stats *, 
361                                              timeval_t *, timeval_t *));
362 extern  void              ruadd         __P((struct process_stats *,
363                                              struct process_stats *));
364 # else /* !_SEQUENT_ */
365 #  ifdef POSIX
366 extern  void              prusage       __P((struct tms *, struct tms *, 
367                                              clock_t, clock_t));
368 #  else /* !POSIX */
369 extern  void              prusage       __P((struct tms *, struct tms *, 
370                                              time_t, time_t));
371 #  endif /* !POSIX */
372 # endif /* !_SEQUENT_ */
373 #endif /* BSDTIMES */
374 extern  void              settimes      __P((void));
375 #if defined(BSDTIMES) || defined(_SEQUENT_)
376 extern  void              tvsub         __P((struct timeval *, 
377                                              struct timeval *, 
378                                              struct timeval *));
379 #endif /* BSDTIMES || _SEQUENT_ */
380
381 #endif /* _h_sh_decls */