1 /* $Header: /src/pub/tcsh/sh.decls.h,v 3.46 2005/03/03 17:04:01 kim Exp $ */
3 * sh.decls.h External declarations from sh*.c
6 * Copyright (c) 1980, 1991 The Regents of the University of California.
9 * Redistribution and use in source and binary forms, with or without
10 * modification, are permitted provided that the following conditions
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.
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
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));
50 extern void done __P((int));
52 extern void xexit __P((int));
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 *));
76 extern void Dfix __P((struct command *));
77 extern Char *Dfix1 __P((Char *));
78 extern void heredoc __P((Char *));
83 extern void errinit __P((void));
84 extern void seterror __P((unsigned int, ...));
85 extern void stderror __P((unsigned int, ...));
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));
104 extern Char *filetest __P((Char *, Char ***, int));
105 extern int expr __P((Char ***));
106 extern int exp0 __P((Char ***, int));
111 #if defined(FILEC) && defined(TIOCSTI)
112 extern int tenex __P((Char *, int));
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 *));
136 extern void donewgrp __P((Char **, struct command *));
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 *,
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 *));
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 **));
185 extern char *iconv_catgets __P((nl_catd, int, int, const char *));
189 extern void nlsinit __P((void));
190 extern void nlsclose __P((void));
191 extern int t_pmatch __P((Char *, Char *, Char **, int));
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));
206 extern void mesginit __P((void));
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 *,
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));
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 *));
256 extern char *strstr __P((const char *, const char *));
258 #ifndef SHORT_STRINGS
259 extern char *strspl __P((const char *, const char *));
260 extern char *strend __P((char *));
261 #endif /* SHORT_STRINGS */
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));
274 extern void drainoline __P((void));
275 extern void flush __P((void));
277 extern void pcsecs __P((unsigned long));
278 #else /* !BSDTIMES */
280 extern void pcsecs __P((clock_t));
282 extern void pcsecs __P((time_t));
284 #endif /* BSDTIMES */
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));
292 extern void putwraw __P((Char));
293 extern void xputwchar __P((Char));
295 # define putwraw(C) putraw(C)
296 # define xputwchar(C) xputchar(C)
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 *));
329 extern void execute __P((struct command *, int, int *,
331 extern void mypipe __P((int *));
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 *,
345 extern void setq __P((Char *, Char **, struct varent *,
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 *));
362 extern void donice __P((Char **, struct command *));
363 extern void dotime __P((Char **, struct command *));
365 extern void prusage __P((struct sysrusage *,
367 timeval_t *, timeval_t *));
368 extern void ruadd __P((struct sysrusage *,
369 struct sysrusage *));
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_ */
379 extern void prusage __P((struct tms *, struct tms *,
382 extern void prusage __P((struct tms *, struct tms *,
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 *,
392 #endif /* BSDTIMES || _SEQUENT_ */
394 #endif /* _h_sh_decls */