1 /* $Header: /src/pub/tcsh/tc.decls.h,v 3.57 2005/01/18 20:24:51 christos Exp $ */
3 * tc.decls.h: Function declarations from all the tcsh modules
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
41 extern void free __P((ptr_t));
42 extern memalign_t malloc __P((size_t));
43 extern memalign_t realloc __P((ptr_t, size_t));
44 extern memalign_t calloc __P((size_t, size_t));
45 #endif /* !WINNT_NATIVE */
47 extern void sfree __P((ptr_t));
48 extern memalign_t smalloc __P((size_t));
49 extern memalign_t srealloc __P((ptr_t, size_t));
50 extern memalign_t scalloc __P((size_t, size_t));
51 #endif /* SYSMALLOC */
52 extern void showall __P((Char **, struct command *));
57 extern void dobindkey __P((Char **, struct command *));
59 extern void dobind __P((Char **, struct command *));
65 extern void getmachine __P((void));
71 extern int setdisc __P((int));
72 extern int resetdisc __P((int));
77 extern Char *expand_lex __P((Char *, size_t, struct wordent *,
79 extern Char *sprlex __P((Char *, size_t, struct wordent *));
80 extern Char *Itoa __P((int, Char *, int, int));
81 extern void dolist __P((Char **, struct command *));
82 extern void dotermname __P((Char **, struct command *));
83 extern void dotelltc __P((Char **, struct command *));
84 extern void doechotc __P((Char **, struct command *));
85 extern void dosettc __P((Char **, struct command *));
86 extern int cmd_expand __P((Char *, Char *));
87 extern void dowhich __P((Char **, struct command *));
88 extern struct process *find_stop_ed __P((void));
89 extern void fg_proc_entry __P((struct process *));
90 extern RETSIGTYPE alrmcatch __P((int));
91 extern void precmd __P((void));
92 extern void postcmd __P((void));
93 extern void cwd_cmd __P((void));
94 extern void beep_cmd __P((void));
95 extern void period_cmd __P((void));
96 extern void job_cmd __P((Char *));
97 extern void aliasrun __P((int, Char *, Char *));
98 extern void setalarm __P((int));
99 extern void rmstar __P((struct wordent *));
100 extern void continue_jobs __P((struct wordent *));
101 extern Char *gettilde __P((Char *));
102 extern Char *getusername __P((Char **));
104 extern void doaliases __P((Char **, struct command *));
105 #endif /* OBSOLETE */
106 extern void shlvl __P((int));
107 extern int fixio __P((int, int));
108 extern int collate __P((const Char *, const Char *));
110 extern int hashbang __P((int, Char ***));
111 #endif /* HASHBANG */
113 extern void remotehost __P((void));
114 #endif /* REMOTEHOST */
121 extern void dosetpath __P((Char **, struct command *));
125 extern void dogetxvers __P((Char **, struct command *));
126 extern void dosetxvers __P((Char **, struct command *));
127 extern void dogetspath __P((Char **, struct command *));
128 extern void dosetspath __P((Char **, struct command *));
129 extern char *sitename __P((pid_t));
130 extern void domigrate __P((Char **, struct command *));
134 extern void dowarp __P((Char **, struct command *));
137 #if defined(_CRAY) && !defined(_CRAYMPP)
138 extern void dodmmode __P((Char **, struct command *));
139 #endif /* _CRAY && !_CRAYMPP */
141 #if defined(masscomp) || defined(hcx)
142 extern void douniverse __P((Char **, struct command *));
143 #endif /* masscomp */
145 #if defined(_OSD_POSIX) /* BS2000 */
146 extern void dobs2cmd __P((Char **, struct command *));
147 #endif /* _OSD_POSIX */
150 extern void doatt __P((Char **, struct command *));
151 extern void doucb __P((Char **, struct command *));
155 extern void pr_stat_sub __P((struct process_stats *,
156 struct process_stats *,
157 struct process_stats *));
158 #endif /* _SEQUENT_ */
161 extern int xtcgetpgrp __P((int));
162 extern int xtcsetpgrp __P((int, int));
164 # define tcgetpgrp(a) xtcgetpgrp(a)
166 # define tcsetpgrp(a, b) xtcsetpgrp((a), (b))
167 #endif /* NEEDtcgetpgrp */
170 extern void fix_yp_bugs __P((void));
173 extern void fix_strcoll_bug __P((void));
174 #endif /* STRCOLLBUG */
176 extern void osinit __P((void));
179 extern ptr_t xmemmove __P((ptr_t, const ptr_t, size_t));
180 # define memmove(a, b, c) xmemmove(a, b, c)
181 #endif /* !HAVE_MEMMOVE */
184 extern ptr_t xmemset __P((ptr_t, int, size_t));
185 # define memset(a, b, c) xmemset(a, b, c)
186 #endif /* !HAVE_MEMSET */
190 extern char *xgetcwd __P((char *, size_t));
192 # define getcwd(a, b) xgetcwd(a, b)
193 #endif /* !HAVE_GETCWD */
195 #ifndef HAVE_GETHOSTNAME
196 extern int xgethostname __P((char *, int));
198 # define gethostname(a, b) xgethostname(a, b)
199 #endif /* !HAVE_GETHOSTNAME */
202 extern int xnice __P((int));
204 # define nice(a) xnice(a)
205 #endif /* !HAVE_NICE */
207 #ifndef HAVE_STRERROR
208 extern char *xstrerror __P((int));
210 # define strerror(a) xstrerror(a)
211 #endif /* !HAVE_STRERROR */
214 extern void doinlib __P((Char **, struct command *));
215 extern void dover __P((Char **, struct command *));
216 extern void dorootnode __P((Char **, struct command *));
217 extern int getv __P((Char *));
224 extern pret_t xprintf __P((const char *, ...));
225 extern pret_t xsnprintf __P((char *, size_t, const char *, ...));
226 extern pret_t xvprintf __P((const char *, va_list));
227 extern pret_t xvsnprintf __P((char *, size_t, const char *,
233 extern void dateinit __P((void));
234 extern void printprompt __P((int, const char *));
235 extern Char *expdollar __P((Char **, const Char **, size_t *,
237 extern void tprintf __P((int, Char *, const Char *, size_t,
238 const char *, time_t, ptr_t));
243 extern time_t sched_next __P((void));
244 extern void dosched __P((Char **, struct command *));
245 extern void sched_run __P((int));
253 extern RETSIGTYPE (*xsignal __P((int, RETSIGTYPE (*)(int)))) ();
254 # define signal(x,y) xsignal(x,y)
255 # endif /* COHERENT */
256 extern RETSIGTYPE (*xsigset __P((int, RETSIGTYPE (*)(int)))) ();
257 # define sigset(x,y) xsigset(x,y)
258 extern void xsigrelse __P((int));
259 # define sigrelse(x) xsigrelse(x)
260 extern void xsighold __P((int));
261 # define sighold(x) xsighold(x)
262 extern void xsigignore __P((int));
263 # define sigignore(x) xsigignore(x)
264 extern void xsigpause __P((int));
265 # define sigpause(x) xsigpause(x)
266 extern pid_t ourwait __P((int *));
267 # endif /* UNRELSIGS */
269 extern void sigpause __P((int));
271 #endif /* !BSDSIGS */
274 extern RETSIGTYPE (*xsignal __P((int, RETSIGTYPE (*)(int)))) ();
275 # define signal(a, b) xsignal(a, b)
276 #endif /* NEEDsignal */
277 #if defined(_SEQUENT_) || ((SYSVREL > 3 || defined(_DGUX_SOURCE)) && defined(POSIXSIGS)) || ((defined(_AIX) || defined(__CYGWIN__)) && defined(POSIXSIGS)) || defined(WINNT_NATIVE)
278 extern sigmask_t sigsetmask __P((sigmask_t));
279 # if !defined(DGUX) || (defined(DGUX) && defined(__ix86))
280 extern sigmask_t sigblock __P((sigmask_t));
282 extern void bsd_sigpause __P((sigmask_t));
283 extern RETSIGTYPE (*bsd_signal __P((int, RETSIGTYPE (*)(int)))) __P((int));
284 #endif /* _SEQUENT_ */
286 extern RETSIGTYPE synch_handler __P((int));
287 #endif /* SIGSYNCH */
294 extern size_t one_mbtowc __P((wchar_t *, const char *, size_t));
295 extern size_t one_wctomb __P((char *, wchar_t));
297 #define one_mbtowc(PWC, S, N) \
298 ((void)(N), *(PWC) = (unsigned char)*(S), (size_t)1)
299 #define one_wctomb(S, WCHAR) (*(S) = (WCHAR), (size_t)1)
302 extern int rt_mbtowc __P((wchar_t *, const char *, size_t));
303 extern Char *s_strchr __P((const Char *, int));
304 extern Char *s_strrchr __P((const Char *, int));
305 extern Char *s_strcat __P((Char *, const Char *));
307 extern Char *s_strncat __P((Char *, const Char *, size_t));
308 # endif /* NOTUSED */
309 extern Char *s_strcpy __P((Char *, const Char *));
310 extern Char *s_strncpy __P((Char *, const Char *, size_t));
311 extern Char *s_strspl __P((const Char *, const Char *));
312 extern size_t s_strlen __P((const Char *));
313 extern int s_strcmp __P((const Char *, const Char *));
314 extern int s_strncmp __P((const Char *, const Char *,
316 extern int s_strcasecmp __P((const Char *, const Char *));
317 extern Char *s_strsave __P((const Char *));
318 extern Char *s_strend __P((const Char *));
319 extern Char *s_strstr __P((const Char *, const Char *));
320 extern Char *str2short __P((const char *));
321 extern Char **blk2short __P((char **));
322 extern char *short2str __P((const Char *));
323 extern char **short2blk __P((Char **));
324 #endif /* SHORT_STRINGS */
325 extern char *short2qstr __P((const Char *));
331 extern void fix_version __P((void));
336 #if defined (HAVE_UTMP_H) || defined (HAVE_UTMPX_H) || defined (WINNT_NATIVE)
337 extern void initwatch __P((void));
338 extern void resetwatch __P((void));
339 extern void watch_login __P((int));
340 extern const char *who_info __P((ptr_t, int, char *, size_t));
341 extern void dolog __P((Char **, struct command *));
342 # ifdef HAVE_STRUCT_UTMP_UT_HOST
343 extern char *utmphost __P((void));
344 extern size_t utmphostsize __P((void));
345 # endif /* HAVE_STRUCT_UTMP_UT_HOST */
350 #endif /* _h_tc_decls */