1 /* $Header: /src/pub/tcsh/sh.decls.h,v 3.38 2002/05/16 13:51:25 christos 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 sigret_t pintr
__P((int));
46 extern void pintr1
__P((bool));
47 extern void process
__P((bool));
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
*, bool));
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
*, bool));
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
***, bool));
105 extern int expr
__P((Char
***));
106 extern int exp0
__P((Char
***, bool));
111 #if defined(FILEC) && defined(TIOCSTI)
112 extern int tenex
__P((Char
*, int));
118 extern void tsetenv
__P((Char
*, 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
*, bool));
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 (*)(int)));
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
**));
181 extern void nlsinit
__P((void));
186 extern void dohist
__P((Char
**, struct command
*));
187 extern struct Hist
*enthist
__P((int, struct wordent
*, bool, bool));
188 extern void savehist
__P((struct wordent
*, bool));
189 extern void fmthist
__P((int, ptr_t
, char *, size_t));
190 extern void rechist
__P((Char
*, int));
191 extern void loadhist
__P((Char
*, bool));
196 extern void mesginit
__P((void));
201 extern void addla
__P((Char
*));
202 extern void bseek
__P((struct Ain
*));
203 extern void btell
__P((struct Ain
*));
204 extern void btoeof
__P((void));
205 extern void copylex
__P((struct wordent
*,
207 extern Char
*domod
__P((Char
*, int));
208 extern void freelex
__P((struct wordent
*));
209 extern int lex
__P((struct wordent
*));
210 extern void prlex
__P((struct wordent
*));
211 extern int readc
__P((bool));
212 extern void settell
__P((void));
213 extern void unreadc
__P((int));
219 extern int any
__P((char *, int));
220 extern Char
**blkcpy
__P((Char
**, Char
**));
221 extern void blkfree
__P((Char
**));
222 extern int blklen
__P((Char
**));
223 extern void blkpr
__P((Char
**));
224 extern void blkexpand
__P((Char
**, Char
*));
225 extern Char
**blkspl
__P((Char
**, Char
**));
226 extern void closem
__P((void));
227 #ifndef CLOSE_ON_EXEC
228 extern void closech
__P((void));
229 #endif /* !CLOSE_ON_EXEC */
230 extern Char
**copyblk
__P((Char
**));
231 extern int dcopy
__P((int, int));
232 extern int dmove
__P((int, int));
233 extern void donefds
__P((void));
234 extern Char lastchr
__P((Char
*));
235 extern void lshift
__P((Char
**, int));
236 extern int number
__P((Char
*));
237 extern int prefix
__P((Char
*, Char
*));
238 extern Char
**saveblk
__P((Char
**));
239 extern void setzero
__P((char *, int));
240 extern Char
*strip
__P((Char
*));
241 extern Char
*quote
__P((Char
*));
242 extern Char
*quote_meta
__P((Char
*, const Char
*));
243 extern char *strsave
__P((const char *));
244 extern void udvar
__P((Char
*));
246 extern char *strstr
__P((const char *, const char *));
248 #ifndef SHORT_STRINGS
249 extern char *strspl
__P((char *, char *));
250 extern char *strend
__P((char *));
251 #endif /* SHORT_STRINGS */
256 extern void alias
__P((struct wordent
*));
257 extern void freesyn
__P((struct command
*));
258 extern struct command
*syntax
__P((struct wordent
*,
259 struct wordent
*, int));
264 extern void drainoline
__P((void));
265 extern void flush
__P((void));
267 extern void pcsecs
__P((long));
268 #else /* !BSDTIMES */
270 extern void pcsecs
__P((clock_t));
272 extern void pcsecs
__P((time_t));
274 #endif /* BSDTIMES */
276 extern void psecs
__P((long));
277 #endif /* BSDLIMIT */
278 extern int putpure
__P((int));
279 extern int putraw
__P((int));
280 extern void xputchar
__P((int));
286 extern void dobg
__P((Char
**, struct command
*));
287 extern void dobg1
__P((Char
**, struct command
*));
288 extern void dofg
__P((Char
**, struct command
*));
289 extern void dofg1
__P((Char
**, struct command
*));
290 extern void dojobs
__P((Char
**, struct command
*));
291 extern void dokill
__P((Char
**, struct command
*));
292 extern void donotify
__P((Char
**, struct command
*));
293 extern void dostop
__P((Char
**, struct command
*));
294 extern void dowait
__P((Char
**, struct command
*));
295 extern void palloc
__P((int, struct command
*));
296 extern void panystop
__P((bool));
297 extern sigret_t pchild
__P((int));
298 extern void pendjob
__P((void));
299 extern int pfork
__P((struct command
*, int));
300 extern void pgetty
__P((int, int));
301 extern void pjwait
__P((struct process
*));
302 extern void pnote
__P((void));
303 extern void prestjob
__P((void));
304 extern void psavejob
__P((void));
305 extern int pstart
__P((struct process
*, int));
306 extern void pwait
__P((void));
307 extern struct process
*pfind
__P((Char
*));
312 extern void execute
__P((struct command
*, int, int *,
314 extern void mypipe
__P((int *));
319 extern struct varent
*adrof1
__P((Char
*, struct varent
*));
320 extern void doset
__P((Char
**, struct command
*));
321 extern void dolet
__P((Char
**, struct command
*));
322 extern Char
*putn
__P((int));
323 extern int getn
__P((Char
*));
324 extern Char
*value1
__P((Char
*, struct varent
*));
325 extern void set
__P((Char
*, Char
*, int));
326 extern void set1
__P((Char
*, Char
**, struct varent
*,
328 extern void setq
__P((Char
*, Char
**, struct varent
*,
330 extern void unset
__P((Char
**, struct command
*));
331 extern void unset1
__P((Char
*[], struct varent
*));
332 extern void unsetv
__P((Char
*));
333 extern void setNS
__P((Char
*));
334 extern void shift
__P((Char
**, struct command
*));
335 extern void plist
__P((struct varent
*, int));
336 extern Char
*unparse
__P((struct command
*));
337 #if defined(DSPMBYTE)
338 extern void update_dspmbyte_vars
__P((void));
339 extern void autoset_dspmbyte
__P((Char
*));
345 extern void donice
__P((Char
**, struct command
*));
346 extern void dotime
__P((Char
**, struct command
*));
348 extern void prusage
__P((struct sysrusage
*,
350 timeval_t
*, timeval_t
*));
351 extern void ruadd
__P((struct sysrusage
*,
352 struct sysrusage
*));
355 extern void prusage
__P((struct process_stats
*,
356 struct process_stats
*,
357 timeval_t
*, timeval_t
*));
358 extern void ruadd
__P((struct process_stats
*,
359 struct process_stats
*));
360 # else /* !_SEQUENT_ */
362 extern void prusage
__P((struct tms
*, struct tms
*,
365 extern void prusage
__P((struct tms
*, struct tms
*,
368 # endif /* !_SEQUENT_ */
369 #endif /* BSDTIMES */
370 extern void settimes
__P((void));
371 #if defined(BSDTIMES) || defined(_SEQUENT_)
372 extern void tvsub
__P((struct timeval
*,
375 #endif /* BSDTIMES || _SEQUENT_ */
377 #endif /* _h_sh_decls */