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