1: /* $Header: /home/hyperion/mu/christos/src/sys/tcsh-6.00/RCS/sh.decls.h,v 3.0 1991/07/04 23:34:26 christos Exp $ */
   2: /*
   3:  * sh.decls	 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. 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_sh_decls
  38: #define _h_sh_decls
  39: 
  40: /*
  41:  * sh.c
  42:  */
  43: extern  int       gethdir   __P((Char *));
  44: extern  void          dosource  __P((Char **));
  45: extern  void          exitstat  __P((void));
  46: extern  void          goodbye   __P((void));
  47: extern  void          importpath    __P((Char *));
  48: extern  void          initdesc  __P((void));
  49: extern  sigret_t      pintr     __P((int));
  50: extern  void          pintr1    __P((bool));
  51: extern  void          process   __P((bool));
  52: extern  void          rechist   __P((void));
  53: extern  void          untty     __P((void));
  54: #ifdef PROF
  55: extern  void          done      __P((int));
  56: #else
  57: extern  void          xexit     __P((int));
  58: #endif
  59: 
  60: /*
  61:  * sh.dir.c
  62:  */
  63: extern  void          dinit     __P((Char *));
  64: extern  void          dodirs    __P((Char **));
  65: extern  Char         *dcanon    __P((Char *, Char *));
  66: extern  void          dtildepr  __P((Char *, Char *));
  67: extern  void          dtilde    __P((void));
  68: extern  void          dochngd   __P((Char **));
  69: extern  Char         *dnormalize    __P((Char *));
  70: extern  void          dopushd   __P((Char **));
  71: extern  void          dopopd    __P((Char **));
  72: extern  void          dfree     __P((struct directory *));
  73: extern  int       getstakd  __P((Char *, int));
  74: extern  void          dextract  __P((struct directory *));
  75: #ifdef  CSHDIRS
  76: extern  void          recdirs   __P((void));
  77: #endif
  78: 
  79: /*
  80:  * sh.dol.c
  81:  */
  82: extern  void          Dfix      __P((struct command *));
  83: extern  Char         *Dfix1     __P((Char *));
  84: extern  void          heredoc   __P((Char *));
  85: 
  86: /*
  87:  * sh.err.c
  88:  */
  89: extern  void          seterror  __P((int, ...));
  90: extern  void          stderror  __P((int, ...));
  91: 
  92: /*
  93:  * sh.exec.c
  94:  */
  95: extern  void          doexec    __P((struct command *));
  96: extern  void          dohash    __P((void));
  97: extern  void          dounhash  __P((void));
  98: extern  void          execash   __P((char **, struct command *));
  99: #ifdef VFORK
 100: extern  void          hashstat  __P((void));
 101: #endif
 102: extern  void          xechoit   __P((Char **));
 103: extern  int       iscommand __P((Char *));
 104: extern  int       executable    __P((Char *, Char *, bool));
 105: extern  void          tellmewhat    __P((struct wordent *));
 106: 
 107: /*
 108:  * sh.exp.c
 109:  */
 110: extern  int       exp       __P((Char ***));
 111: extern  int       exp0      __P((Char ***, bool));
 112: 
 113: /*
 114:  * sh.file.c
 115:  */
 116: #ifdef FILEC
 117: extern  int       tenex     __P((Char *, int));
 118: #endif
 119: 
 120: /*
 121:  * sh.func.c
 122:  */
 123: extern  void          Setenv    __P((Char *, Char *));
 124: extern  void          doalias   __P((Char **));
 125: extern  void          dobreak   __P((void));
 126: extern  void          docontin  __P((void));
 127: extern  void          doecho    __P((Char **));
 128: extern  void          doelse    __P((void));
 129: extern  void          doend     __P((void));
 130: extern  void          doeval    __P((Char **));
 131: extern  void          doexit    __P((Char **));
 132: extern  void          doforeach __P((Char **));
 133: extern  void          doglob    __P((Char **));
 134: extern  void          dogoto    __P((Char **));
 135: extern  void          doif      __P((Char **, struct command *));
 136: extern  void          dolimit   __P((Char **));
 137: extern  void          dologin   __P((Char **));
 138: extern  void          dologout  __P((void));
 139: #ifdef NEWGRP
 140: extern  void          donewgrp  __P((Char **));
 141: #endif
 142: extern  void          donohup   __P((void));
 143: extern  void          doonintr  __P((Char **));
 144: extern  void          dorepeat  __P((Char **, struct command *));
 145: extern  void          dosetenv  __P((Char **));
 146: extern  void          dosuspend __P((void));
 147: extern  void          doswbrk   __P((void));
 148: extern  void          doswitch  __P((Char **));
 149: extern  void          doumask   __P((Char **));
 150: extern  void          dounlimit __P((Char **));
 151: extern  void          dounsetenv    __P((Char **));
 152: extern  void          dowhile   __P((Char **));
 153: extern  void          dozip     __P((void));
 154: extern  void          func      __P((struct command *,
 155:                          struct biltins *));
 156: extern struct biltins    *isbfunc   __P((struct command *));
 157: extern  void          prvars    __P((void));
 158: extern  void          search    __P((int, int, Char *));
 159: extern  int       srchx     __P((Char *));
 160: extern  void          unalias   __P((Char **));
 161: extern  void          wfree     __P((void));
 162: 
 163: /*
 164:  * sh.glob.c
 165:  */
 166: extern  Char        **dobackp   __P((Char *, bool));
 167: extern  void          Gcat      __P((Char *, Char *));
 168: extern  Char         *globone   __P((Char *, int));
 169: extern  int       Gmatch    __P((Char *, Char *));
 170: extern  void          ginit     __P((void));
 171: extern  Char        **globall   __P((Char **));
 172: extern  void          rscan     __P((Char **, void (*)()));
 173: extern  void          tglob     __P((Char **));
 174: extern  void          trim      __P((Char **));
 175: #ifdef FILEC
 176: extern  int       sortscmp  __P((Char **, Char **));
 177: #endif
 178: 
 179: /*
 180:  * sh.hist.c
 181:  */
 182: extern  void          dohist    __P((Char **));
 183: extern struct Hist   *enthist   __P((int, struct wordent *, bool));
 184: extern  void          savehist  __P((struct wordent *));
 185: 
 186: 
 187: /*
 188:  * sh.lex.c
 189:  */
 190: extern  void          addla     __P((Char *));
 191: extern  void          bseek     __P((off_t));
 192: #ifndef btell
 193: extern  off_t         btell     __P((void));
 194: #endif
 195: extern  void          btoeof    __P((void));
 196: extern  void          copylex   __P((struct wordent *,
 197:                          struct wordent *));
 198: extern  Char         *domod     __P((Char *, int));
 199: extern  void          freelex   __P((struct wordent *));
 200: extern  int       lex       __P((struct wordent *));
 201: extern  void          prlex     __P((struct wordent *));
 202: extern  int       readc     __P((bool));
 203: extern  void          settell   __P((void));
 204: extern  void          unreadc   __P((int));
 205: 
 206: 
 207: /*
 208:  * sh.misc.c
 209:  */
 210: extern  int       any       __P((char *, int));
 211: extern  Char        **blkcat    __P((Char **, Char **));
 212: extern  Char        **blkcpy    __P((Char **, Char **));
 213: extern  Char        **blkend    __P((Char **));
 214: extern  void          blkfree   __P((Char **));
 215: extern  int       blklen    __P((Char **));
 216: extern  void          blkpr     __P((Char **));
 217: extern  Char        **blkspl    __P((Char **, Char **));
 218: #ifndef copy
 219: extern  void          copy      __P((char *, char *, int));
 220: #endif
 221: extern  void          closem    __P((void));
 222: #ifndef FIOCLEX
 223: extern  void          closech   __P((void));
 224: #endif
 225: extern  Char        **copyblk   __P((Char **));
 226: extern  int       dcopy     __P((int, int));
 227: extern  int       dmove     __P((int, int));
 228: extern  void          donefds   __P((void));
 229: extern  Char          lastchr   __P((Char *));
 230: extern  void          lshift    __P((Char **, int));
 231: extern  int       number    __P((Char *));
 232: extern  int       prefix    __P((Char *, Char *));
 233: extern  Char        **saveblk   __P((Char **));
 234: extern  void          setzero   __P((char *, int));
 235: extern  Char         *strip     __P((Char *));
 236: extern  char         *strsave   __P((char *));
 237: extern  char         *strspl    __P((char *, char *));
 238: #ifndef POSIX
 239: extern  char         *strstr    __P((const char *, const char *));
 240: #endif
 241: extern  void          udvar     __P((Char *));
 242: #ifndef SHORT_STRINGS
 243: extern  char         *strend    __P((char *));
 244: #endif
 245: 
 246: /*
 247:  * sh.parse.c
 248:  */
 249: extern  void          alias     __P((struct wordent *));
 250: extern  void          freesyn   __P((struct command *));
 251: extern struct command    *syntax    __P((struct wordent *,
 252:                          struct wordent *, int));
 253: 
 254: /*
 255:  * sh.print.c
 256:  */
 257: extern  void          draino    __P((void));
 258: extern  void          flush     __P((void));
 259: #ifdef BSDTIMES
 260: extern  void          pcsecs    __P((long));
 261: #else /* !BSDTIMES */
 262: # ifdef POSIX
 263: extern  void          pcsecs    __P((clock_t));
 264: # else /* !POSIX */
 265: extern  void          pcsecs    __P((time_t));
 266: # endif /* !POSIX */
 267: #endif /* BSDTIMES */
 268: #ifdef RLIMIT_CPU
 269: extern  void          psecs     __P((long));
 270: #endif /* RLIMIT_CPU */
 271: extern  int       putpure   __P((int));
 272: extern  int       putraw    __P((int));
 273: extern  void          xputchar  __P((int));
 274: 
 275: 
 276: /*
 277:  * sh.proc.c
 278:  */
 279: extern  void          dobg      __P((Char **));
 280: extern  void          dobg1     __P((Char **));
 281: extern  void          dofg      __P((Char **));
 282: extern  void          dofg1     __P((Char **));
 283: extern  void          dojobs    __P((Char **));
 284: extern  void          dokill    __P((Char **));
 285: extern  void          donotify  __P((Char **));
 286: extern  void          dostop    __P((Char **));
 287: extern  void          dowait    __P((void));
 288: extern  void          palloc    __P((int, struct command *));
 289: extern  void          panystop  __P((bool));
 290: extern  sigret_t      pchild    __P((int));
 291: extern  void          pendjob   __P((void));
 292: extern  struct process   *pfind     __P((Char *));
 293: extern  int       pfork     __P((struct command *, int));
 294: extern  void          pgetty    __P((int, int));
 295: extern  void          pjwait    __P((struct process *));
 296: extern  void          pnote     __P((void));
 297: extern  void          prestjob  __P((void));
 298: extern  void          psavejob  __P((void));
 299: extern  void          pstart    __P((struct process *, int));
 300: extern  void          pwait     __P((void));
 301: 
 302: /*
 303:  * sh.sem.c
 304:  */
 305: extern  void          execute   __P((struct command *, int, int *,
 306:                          int *));
 307: extern  void          mypipe    __P((int *));
 308: 
 309: /*
 310:  * sh.set.c
 311:  */
 312: extern  struct varent    *adrof1    __P((Char *, struct varent *));
 313: extern  void          doset     __P((Char **));
 314: extern  void          dolet     __P((Char **));
 315: extern  Char         *putn      __P((int));
 316: extern  int       getn      __P((Char *));
 317: extern  Char         *value1    __P((Char *, struct varent *));
 318: extern  void          set       __P((Char *, Char *));
 319: extern  void          set1      __P((Char *, Char **, struct varent *));
 320: extern  void          setq      __P((Char *, Char **, struct varent *));
 321: extern  void          unset     __P((Char *[]));
 322: extern  void          unset1    __P((Char *[], struct varent *));
 323: extern  void          unsetv    __P((Char *));
 324: extern  void          setNS     __P((Char *));
 325: extern  void          shift     __P((Char **));
 326: extern  void          plist     __P((struct varent *));
 327: 
 328: /*
 329:  * sh.time.c
 330:  */
 331: extern  void          donice    __P((Char **));
 332: extern  void          dotime    __P((void));
 333: #ifdef BSDTIMES
 334: extern  void          prusage   __P((struct rusage *, struct rusage *,
 335:                          tmval_t *, tmval_t *));
 336: #else /* BSDTIMES */
 337: # ifdef _SEQUENT_
 338: extern  void          prusage   __P((struct pro_stats *,
 339:                          struct pro_stats *,
 340:                          tmval_t *, tmval_t *));
 341: # else /* !_SEQUENT_ */
 342: #  ifdef POSIX
 343: extern  void          prusage   __P((struct tms *, struct tms *,
 344:                          clock_t, clock_t));
 345: #  else /* !POSIX */
 346: extern  void          prusage   __P((struct tms *, struct tms *,
 347:                          time_t, time_t));
 348: #  endif /* !POSIX */
 349: # endif	/* !_SEQUENT_ */
 350: #endif /* BSDTIMES */
 351: extern  void          settimes  __P((void));
 352: #if defined(BSDTIMES) || defined(_SEQUENT_)
 353: extern  void          ruadd     __P((struct rusage *, struct rusage *));
 354: extern  void          tvadd     __P((struct timeval *,
 355:                          struct timeval *));
 356: extern  void          tvsub     __P((struct timeval *,
 357:                          struct timeval *,
 358:                          struct timeval *));
 359: #endif /* BSDTIMES || _SEQUENT_ */
 360: 
 361: #endif /* _h_sh_decls */

Defined macros

_h_sh_decls defined in line 38; used 1 times
  • in line 37

Usage of this include

sh.decls.h used 1 times
Last modified: 1991-08-20
Generated: 2016-12-26
Generated by src2html V0.67
page hit count: 2031
Valid CSS Valid XHTML 1.0 Strict