1: /* $Header: /home/hyperion/mu/christos/src/sys/tcsh-6.00/RCS/tc.decls.h,v 3.0 1991/07/04 23:34:26 christos Exp $ */ 2: /* 3: * tc.decls.h: Function declarations from all the tcsh modules 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_tc_decls 38: #define _h_tc_decls 39: 40: /* 41: * tc.alloc.c 42: */ 43: #ifndef SYSMALLOC 44: extern void free __P((ptr_t)); 45: extern memalign_t malloc __P((size_t)); 46: extern memalign_t realloc __P((ptr_t, size_t)); 47: extern memalign_t calloc __P((size_t, size_t)); 48: 49: #else /* SYSMALLOC */ 50: extern void Free __P((ptr_t)); 51: extern memalign_t Malloc __P((size_t)); 52: extern memalign_t Realloc __P((ptr_t, size_t)); 53: extern memalign_t Calloc __P((size_t, size_t)); 54: #endif /* SYSMALLOC */ 55: extern void showall __P((void)); 56: 57: /* 58: * tc.bind.c 59: */ 60: extern void dobindkey __P((Char **)); 61: extern int parseescape __P((Char **)); 62: extern unsigned char *u_p_string __P((Char *, unsigned char *)); 63: extern void dobind __P((Char **)); 64: 65: 66: /* 67: * tc.disc.c 68: */ 69: extern int setdisc __P((int)); 70: extern int resetdisc __P((int)); 71: 72: /* 73: * tc.func.c 74: */ 75: extern Char *expand_lex __P((Char *, int, struct wordent *, 76: int, int)); 77: extern Char *sprlex __P((Char *, struct wordent *)); 78: extern void Itoa __P((int, Char *)); 79: extern void dolist __P((Char **)); 80: extern void dotelltc __P((Char **)); 81: extern void doechotc __P((Char **)); 82: extern void dosettc __P((Char **)); 83: extern void dowhich __P((Char **)); 84: extern struct process *find_stop_ed __P((void)); 85: extern void fg_proc_entry __P((struct process *)); 86: extern sigret_t alrmcatch __P((int)); 87: extern void precmd __P((void)); 88: extern void cwd_cmd __P((void)); 89: extern void period_cmd __P((void)); 90: extern void aliasrun __P((int, Char *, Char *)); 91: extern void setalarm __P((void)); 92: extern void rmstar __P((struct wordent *)); 93: #ifdef pdp11 94: #define con_jobs cont_job 95: #endif 96: extern void con_jobs __P((struct wordent *)); 97: extern Char *gettilde __P((Char *)); 98: extern Char *getusername __P((Char **)); 99: extern void do_aliases __P((Char **)); 100: 101: 102: /* 103: * tc.os.c 104: */ 105: #ifdef MACH 106: extern void dosetpath __P((Char **)); 107: #endif 108: #ifdef TCF 109: extern void dogetxvers __P((Char **)); 110: extern void dosetxvers __P((Char **)); 111: extern void dogetspath __P((Char **)); 112: extern void dosetspath __P((Char **)); 113: extern char *sitename __P((pid_t)); 114: extern void domigrate __P((Char **)); 115: #endif 116: #ifdef WARP 117: extern void dowarp __P((Char **)); 118: #endif 119: #ifdef masscomp 120: extern void douniverse __P((Char **)); 121: #endif 122: #ifdef _SEQUENT_ 123: extern void pr_stat_sub __P((struct pro_stats *, 124: struct pro_stats *, 125: struct pro_stats *)); 126: #endif 127: #ifdef NEEDtcgetpgrp 128: extern int xtcgetpgrp __P((int)); 129: #define tcgetpgrp(a) xtcgetpgrp(a) 130: #endif 131: #ifdef YPBUGS 132: extern void fix_yp_bugs __P((void)); 133: #endif 134: extern void osinit __P((void)); 135: #ifdef NEEDgetwd 136: extern char *xgetwd __P((char *)); 137: #define getwd(a) xgetwd(a) 138: #endif 139: #ifdef NEEDgethostname 140: extern int gethostname __P((char *, int)); 141: #define gethostname(a, b) xgethostname(a, b) 142: #endif 143: #ifdef iconuxv 144: extern int vfork __P((void)); 145: #endif 146: #ifdef apollo 147: extern void doinlib __P((Char **)); 148: extern void dover __P((Char **)); 149: extern void dorootnode __P((Char **)); 150: extern int getv __P((Char *)); 151: #endif 152: 153: 154: /* 155: * tc.printf.h 156: */ 157: extern void xprintf __P((char *, ...)); 158: extern void mkprintf __P((long, ...)); 159: extern void xsprintf __P((char *, char *, ...)); 160: extern void xvprintf __P((char *, va_list)); 161: extern void xvsprintf __P((char *, char *, va_list)); 162: 163: /* 164: * tc.prompt.c 165: */ 166: extern void printprompt __P((int, Char *)); 167: 168: /* 169: * tc.sched.c 170: */ 171: extern time_t sched_next __P((void)); 172: extern void dosched __P((Char **)); 173: extern void sched_run __P((void)); 174: 175: /* 176: * tc.sig.c 177: */ 178: #ifndef BSDSIGS 179: # if SVID < 3 180: # ifdef UNIXPC 181: extern sigret_t (*sigset __P((int, sigret_t (*)())) (); 182: extern void sigrelse __P((int)); 183: extern void sighold __P((int)); 184: extern void sigignore __P((int)); 185: extern void sigpause __P((int)); 186: # endif /* UNIXPC */ 187: extern int ourwait __P((int *)); 188: # endif 189: # ifdef SXA 190: extern void sigpause __P((int)); 191: # endif 192: #endif 193: #ifdef NEEDsignal 194: extern sigret_t (*xsignal __P((int, sigret_t (*)()))) (); 195: #define signal(a, b) xsignal(a, b) 196: #endif 197: #ifdef _SEQUENT_ 198: extern sigmask_t sigsetmask __P((sigmask_t)); 199: extern sigmask_t sigblock __P((sigmask_t)); 200: extern void b_sigpause __P((sigmask_t)); 201: #endif 202: #ifdef SIGSYNCH 203: extern sigret_t synch_handler __P((int)); 204: #endif 205: 206: 207: 208: 209: /* 210: * tc.str.c: 211: */ 212: #ifdef SHORT_STRINGS 213: extern Char *s_strchr __P((Char *, int)); 214: extern Char *s_strrchr __P((Char *, int)); 215: extern Char *s_strcat __P((Char *, Char *)); 216: #ifdef NOTUSED 217: extern Char *s_scat __P((Char *, Char *, size_t)); 218: #endif 219: extern Char *s_strcpy __P((Char *, Char *)); 220: extern Char *s_scpy __P((Char *, Char *, size_t)); 221: extern Char *s_strspl __P((Char *, Char *)); 222: extern size_t s_strlen __P((Char *)); 223: extern int s_strcmp __P((Char *, Char *)); 224: extern int s_scmp __P((Char *, Char *, size_t)); 225: extern Char *s_strsave __P((Char *)); 226: extern Char *s_strend __P((Char *)); 227: extern Char *s_strstr __P((Char *, Char *)); 228: extern Char *str2short __P((char *)); 229: extern Char **blk2short __P((char **)); 230: extern char *short2str __P((Char *)); 231: extern char *short2qstr __P((Char *)); 232: extern char **short2blk __P((Char **)); 233: #endif 234: 235: 236: /* 237: * tc.vers.h: 238: */ 239: extern void fix_version __P((void)); 240: extern Char *GetHostType __P((void)); 241: 242: /* 243: * tc.who.c 244: */ 245: extern void initwatch __P((void)); 246: extern void resetwatch __P((void)); 247: extern void watch_login __P((void)); 248: extern void dolog __P((Char **)); 249: 250: #endif /* _h_tc_decls */