home *** CD-ROM | disk | FTP | other *** search
Text File | 1987-09-27 | 59.9 KB | 2,911 lines |
- *** sh.glob.c Tue May 13 01:27:18 1986
- --- /usr/src/local/tcsh/sh.glob.c Mon Aug 17 21:32:21 1987
- ***************
- *** 9,15
- #endif
-
- #include "sh.h"
- ! #include <sys/dir.h>
-
- /*
- * C Shell
-
- --- 9,15 -----
- #endif
-
- #include "sh.h"
- ! /* #include <sys/dir.h> */
-
- /*
- * C Shell
- ***************
- *** 118,123
- sortscmp(a1, a2)
- char **a1, **a2;
- {
-
- return (strcmp(*a1, *a2));
- }
-
- --- 118,132 -----
- sortscmp(a1, a2)
- char **a1, **a2;
- {
- + if (!a1) /* check for NULL */
- + return (a2?1:0);
- + if (!a2)
- + return (-1);
- +
- + if (!*a1) /* check for NULL */
- + return (*a2?1:0);
- + if (!*a2)
- + return (-1);
-
- return (strcmp(*a1, *a2));
- }
- ***************
- *** 131,136
-
- sgpathp = gpathp;
- cs = as;
- if (*cs == '~' && gpathp == gpath) {
- addpath('~');
- for (cs++; letter(*cs) || digit(*cs) || *cs == '-';)
-
- --- 140,164 -----
-
- sgpathp = gpathp;
- cs = as;
- + /*
- + * kfk - 17 Jan 1984 - stack hack
- + * allows user to get at arbitrary dir names in stack.
- + */
- + if (*cs == '=' && gpathp == gpath) {
- + addpath ('=');
- + if (digit (*++cs) || *cs == '-') {
- + int dig;
- + dig = (*cs == '-') ? -1 : *cs - '0';
- + cs++;
- + if (*cs && *cs != '/')
- + error ("Stack hack: =<dig>{/path...}");
- + getstakd (gpath, dig, 1);
- + /* last "1" = call error if needed */
- + gpathp = strend (gpath);
- + }
- + }
- + /* kfk - end stack hack change */
- +
- if (*cs == '~' && gpathp == gpath) {
- addpath('~');
- for (cs++; letter(*cs) || digit(*cs) || *cs == '-';)
- ***************
- *** 295,301
- register char *sentp;
- char sglobbed = globbed;
-
- ! if (*s == '.' && *p != '.')
- return (0);
- sentp = entp;
- entp = s;
-
- --- 323,329 -----
- register char *sentp;
- char sglobbed = globbed;
-
- ! if (*s == '.' && *p != '.') /* PWP: this makes [.]login != .login */
- return (0);
- sentp = entp;
- entp = s;
- ***************
- *** 309,315
- register char *s, *p;
- {
- register int scc;
- ! int ok, lc;
- char *sgpathp;
- struct stat stb;
- int c, cc;
-
- --- 337,343 -----
- register char *s, *p;
- {
- register int scc;
- ! int ok, lc, notin;
- char *sgpathp;
- struct stat stb;
- int c, cc;
- ***************
- *** 322,328
- case '{':
- return (execbrc(p - 1, s - 1));
-
- ! case '[':
- ok = 0;
- lc = 077777;
- while (cc = *p++) {
-
- --- 350,357 -----
- case '{':
- return (execbrc(p - 1, s - 1));
-
- ! case '[': /* PWP -- BRACKET IS HERE!! */
- ! if (!scc) return 0; /* if at end if string */
- ok = 0;
- lc = 077777;
- if (*p == '^') {
- ***************
- *** 325,330
- case '[':
- ok = 0;
- lc = 077777;
- while (cc = *p++) {
- if (cc == ']') {
- if (ok)
-
- --- 354,364 -----
- if (!scc) return 0; /* if at end if string */
- ok = 0;
- lc = 077777;
- + if (*p == '^') {
- + notin = 1;
- + p++;
- + } else
- + notin = 0;
- while (cc = *p++) {
- if (cc == ']') {
- if (notin) { /* PWP for not in list */
- ***************
- *** 327,335
- lc = 077777;
- while (cc = *p++) {
- if (cc == ']') {
- ! if (ok)
- ! break;
- ! return (0);
- }
- if (cc == '-') {
- if (lc <= scc && scc <= *p++)
-
- --- 361,377 -----
- notin = 0;
- while (cc = *p++) {
- if (cc == ']') {
- ! if (notin) { /* PWP for not in list */
- ! if (!ok)
- ! break;
- ! else
- ! return (0);
- ! } else {
- ! if (ok)
- ! break;
- ! else
- ! return (0);
- ! }
- }
- if (cc == '-') {
- if (lc <= scc && scc <= *p++)
- ***************
- *** 335,341
- if (lc <= scc && scc <= *p++)
- ok++;
- } else
- ! if (scc == (lc = cc))
- ok++;
- }
- if (cc == 0)
-
- --- 377,383 -----
- if (lc <= scc && scc <= *p++)
- ok++;
- } else
- ! if (scc && (scc == (lc = cc)))
- ok++;
- }
- if (cc == 0)
- ***************
- *** 393,399
- register char *s, *p;
- {
- register int scc;
- ! int ok, lc;
- int c, cc;
-
- for (;;) {
-
- --- 435,441 -----
- register char *s, *p;
- {
- register int scc;
- ! int ok, lc, notin;
- int c, cc;
-
- for (;;) {
- ***************
- *** 400,406
- scc = *s++ & TRIM;
- switch (c = *p++) {
-
- ! case '[':
- ok = 0;
- lc = 077777;
- while (cc = *p++) {
-
- --- 442,449 -----
- scc = *s++ & TRIM;
- switch (c = *p++) {
-
- ! case '[': /* PWP -- HERE TOO!! */
- ! if (!scc) return 0; /* if at end if string */
- ok = 0;
- lc = 077777;
- if (*p == '^') {
- ***************
- *** 403,408
- case '[':
- ok = 0;
- lc = 077777;
- while (cc = *p++) {
- if (cc == ']') {
- if (ok)
-
- --- 446,456 -----
- if (!scc) return 0; /* if at end if string */
- ok = 0;
- lc = 077777;
- + if (*p == '^') {
- + notin = 1;
- + p++;
- + } else
- + notin = 0;
- while (cc = *p++) {
- if (cc == ']') {
- if (notin) { /* PWP for not in list */
- ***************
- *** 405,410
- lc = 077777;
- while (cc = *p++) {
- if (cc == ']') {
- if (ok)
- break;
- return (0);
-
- --- 453,464 -----
- notin = 0;
- while (cc = *p++) {
- if (cc == ']') {
- + if (notin) { /* PWP for not in list */
- + if (!ok)
- + break;
- + else
- + return (0);
- + } else {
- if (ok)
- break;
- else
- ***************
- *** 407,412
- if (cc == ']') {
- if (ok)
- break;
- return (0);
- }
- if (cc == '-') {
-
- --- 461,467 -----
- } else {
- if (ok)
- break;
- + else
- return (0);
- }
- }
- ***************
- *** 409,414
- break;
- return (0);
- }
- if (cc == '-') {
- if (lc <= scc && scc <= *p++)
- ok++;
-
- --- 464,470 -----
- else
- return (0);
- }
- + }
- if (cc == '-') {
- if (lc <= scc && scc <= *p++)
- ok++;
- ***************
- *** 413,419
- if (lc <= scc && scc <= *p++)
- ok++;
- } else
- ! if (scc == (lc = cc))
- ok++;
- }
- if (cc == 0)
-
- --- 469,475 -----
- if (lc <= scc && scc <= *p++)
- ok++;
- } else
- ! if (scc && (scc == (lc = cc)))
- ok++;
- }
- if (cc == 0)
- ***************
- *** 503,509
- register char *p, c;
-
- while (p = *t++) {
- ! if (*p == '~')
- gflag |= 2;
- else if (*p == '{' && (p[1] == '\0' || p[1] == '}' && p[2] == '\0'))
- continue;
-
- --- 559,566 -----
- register char *p, c;
-
- while (p = *t++) {
- ! /* added additional '=' test for stack hack */
- ! if ((*p == '~') || (*p == '='))
- gflag |= 2;
- else if (*p == '{' && (p[1] == '\0' || p[1] == '}' && p[2] == '\0'))
- continue;
- *** sh.h Sat Mar 29 07:37:09 1986
- --- /usr/src/local/tcsh/sh.h Mon Aug 17 22:48:18 1987
- ***************
- *** 8,13
-
- #include <sys/time.h>
- #include <sys/resource.h>
- #include <sys/param.h>
- #include <sys/stat.h>
- #include <sys/signal.h>
-
- --- 8,16 -----
-
- #include <sys/time.h>
- #include <sys/resource.h>
- + #ifdef SVID
- + #include <sys/types.h>
- + #endif
- #include <sys/param.h>
- #include <sys/stat.h>
- #include <sys/signal.h>
- ***************
- *** 28,33
-
- #define isdir(d) ((d.st_mode & S_IFMT) == S_IFDIR)
-
- typedef char bool;
-
- #define eq(a, b) (strcmp(a, b) == 0)
-
- --- 31,78 -----
-
- #define isdir(d) ((d.st_mode & S_IFMT) == S_IFDIR)
-
- + #include <sys/ioctl.h>
- +
- + #ifndef SVID
- + #include <sgtty.h>
- + #include <sys/dir.h>
- + #else SVID
- + # ifdef OREO
- + #include <sgtty.h>
- + #include <sys/dir.h>
- + # else OREO
- + #include "dir.h"
- + # endif OREO
- + #endif SVID
- +
- + /* #include <ctype.h> */
- + #include <pwd.h>
- +
- + #ifdef SVID
- + # ifndef pyr
- + #include <time.h>
- + # endif pyr
- + #include <termio.h>
- + #endif
- +
- +
- + /*
- + * kfk 26 Jan 1984 - for login watch functions.
- + */
- + #include <utmp.h>
- + struct who {
- + struct who *w_next;
- + struct who *w_prev;
- + char w_name[10];
- + char w_new[10];
- + char w_tty[10];
- + int w_status;
- + };
- + #define ONLINE 01
- + #define OFFLINE 02
- + #define CHANGED 04
- + #define ANNOUNCE 010
- + /* kfk - end change */
- typedef char bool;
-
- /* kfk - additions to support scheduled commands */
- ***************
- *** 30,35
-
- typedef char bool;
-
- #define eq(a, b) (strcmp(a, b) == 0)
-
- /*
-
- --- 75,89 -----
- /* kfk - end change */
- typedef char bool;
-
- + /* kfk - additions to support scheduled commands */
- + struct sched_event {
- + struct sched_event *t_next;
- + long t_when;
- + char **t_lex;
- + };
- + extern long time();
- + /* kfk - end change */
- +
- #define eq(a, b) (strcmp(a, b) == 0)
-
- /*
- ***************
- *** 51,59
- bool setintr; /* Set interrupts on/off -> Wait intr... */
- bool timflg; /* Time the next waited for command */
- bool havhash; /* path hashing is available */
- - #ifdef FILEC
- - bool filec; /* doing filename expansion */
- - #endif
-
- /*
- * Global i/o info
-
- --- 105,110 -----
- bool setintr; /* Set interrupts on/off -> Wait intr... */
- bool timflg; /* Time the next waited for command */
- bool havhash; /* path hashing is available */
-
- /*
- * Global i/o info
- ***************
- *** 66,71
- int errno; /* Error from C library routines */
- char *shtemp; /* Temp name for << shell files in /tmp */
- struct timeval time0; /* Time at which the shell started */
- struct rusage ru0;
-
- /*
-
- --- 117,123 -----
- int errno; /* Error from C library routines */
- char *shtemp; /* Temp name for << shell files in /tmp */
- struct timeval time0; /* Time at which the shell started */
- + #ifndef OREO
- struct rusage ru0;
- #endif OREO
-
- ***************
- *** 67,72
- char *shtemp; /* Temp name for << shell files in /tmp */
- struct timeval time0; /* Time at which the shell started */
- struct rusage ru0;
-
- /*
- * Miscellany
-
- --- 119,125 -----
- struct timeval time0; /* Time at which the shell started */
- #ifndef OREO
- struct rusage ru0;
- + #endif OREO
-
- /*
- * Miscellany
- ***************
- *** 79,84
- /* If tpgrp is -1, leave tty alone! */
- int opgrp; /* Initial pgrp and tty pgrp */
- int oldisc; /* Initial line discipline or -1 */
-
- /*
- * These are declared here because they want to be
-
- --- 132,140 -----
- /* If tpgrp is -1, leave tty alone! */
- int opgrp; /* Initial pgrp and tty pgrp */
- int oldisc; /* Initial line discipline or -1 */
- + char PromptBuf[256]; /* buffer for the actual printed prompt.
- + this is used in tenex.c and sh.c for
- + pegets.c */
-
- /*
- * These are declared here because they want to be
- ***************
- *** 369,374
- struct wordent Hlex;
- int Hnum;
- int Href;
- struct Hist *Hnext;
- } Histlist;
-
-
- --- 425,431 -----
- struct wordent Hlex;
- int Hnum;
- int Href;
- + long Htime;
- struct Hist *Hnext;
- } Histlist;
-
- ***************
- *** 423,428
- char *index();
- struct biltins *isbfunc();
- off_t lseek();
- char *operate();
- int phup();
- int pintr();
-
- --- 480,486 -----
- char *index();
- struct biltins *isbfunc();
- off_t lseek();
- + struct tm *localtime();
- char *operate();
- int phup();
- int pintr();
- ***************
- *** 471,473
- char *iname; /* name from /usr/include */
- char *pname; /* print name */
- } mesg[];
-
- --- 529,534 -----
- char *iname; /* name from /usr/include */
- char *pname; /* print name */
- } mesg[];
- +
- + #define sighold(sig) sigblock(sigmask(sig))
- +
- *** sh.hist.c Thu Jun 6 13:15:33 1985
- --- /usr/src/local/tcsh/sh.hist.c Mon Aug 17 21:32:24 1987
- ***************
- *** 53,58
- register struct Hist *np;
-
- np = (struct Hist *) xalloc(sizeof *np);
- np->Hnum = np->Href = event;
- if (docopy)
- copylex(&np->Hlex, lp);
-
- --- 53,59 -----
- register struct Hist *np;
-
- np = (struct Hist *) xalloc(sizeof *np);
- + time(&(np->Htime));
- np->Hnum = np->Href = event;
- if (docopy)
- copylex(&np->Hlex, lp);
- ***************
- *** 135,140
- register struct Hist *hp;
- int hflg;
- {
-
- if (hflg == 0)
- printf("%6d\t", hp->Hnum);
-
- --- 136,143 -----
- register struct Hist *hp;
- int hflg;
- {
- + struct tm *t;
- + char ampm = 'a';
-
- if (hflg == 0)
- {
- ***************
- *** 137,142
- {
-
- if (hflg == 0)
- printf("%6d\t", hp->Hnum);
- prlex(&hp->Hlex);
- }
-
- --- 140,146 -----
- char ampm = 'a';
-
- if (hflg == 0)
- + {
- printf("%6d\t", hp->Hnum);
- t = localtime(&hp->Htime);
- if (t->tm_hour >= 12)
- ***************
- *** 138,142
-
- if (hflg == 0)
- printf("%6d\t", hp->Hnum);
- prlex(&hp->Hlex);
- }
-
- --- 142,157 -----
- if (hflg == 0)
- {
- printf("%6d\t", hp->Hnum);
- + t = localtime(&hp->Htime);
- + if (t->tm_hour >= 12)
- + {
- + if (t->tm_hour > 12)
- + t->tm_hour -= 12;
- + ampm = 'p';
- + }
- + else if (t->tm_hour == 0)
- + t->tm_hour = 12;
- + printf ("%2d:%02d%cm\t", t->tm_hour, t->tm_min, ampm);
- + }
- prlex(&hp->Hlex);
- }
- *** sh.init.c Thu Jun 6 13:15:48 1985
- --- /usr/src/local/tcsh/sh.init.c Tue Aug 18 21:57:22 1987
- ***************
- *** 16,21
-
- extern int doalias();
- extern int dobg();
- extern int dobreak();
- extern int dochngd();
- extern int docontin();
-
- --- 16,22 -----
-
- extern int doalias();
- extern int dobg();
- + extern int dobind();
- extern int dobreak();
- extern int dochngd();
- extern int docontin();
- ***************
- *** 37,42
- extern int dojobs();
- extern int dokill();
- extern int dolet();
- extern int dolimit();
- extern int dologin();
- extern int dologout();
-
- --- 38,44 -----
- extern int dojobs();
- extern int dokill();
- extern int dolet();
- + #ifndef OREO
- extern int dolimit();
- #endif
- extern int dolog();
- ***************
- *** 38,43
- extern int dokill();
- extern int dolet();
- extern int dolimit();
- extern int dologin();
- extern int dologout();
- #ifdef NEWGRP
-
- --- 40,47 -----
- extern int dolet();
- #ifndef OREO
- extern int dolimit();
- + #endif
- + extern int dolog();
- extern int dologin();
- extern int dologout();
- #ifdef NEWGRP
- ***************
- *** 50,55
- extern int dopopd();
- extern int dopushd();
- extern int dorepeat();
- extern int doset();
- extern int dosetenv();
- extern int dosource();
-
- --- 54,60 -----
- extern int dopopd();
- extern int dopushd();
- extern int dorepeat();
- + extern int dosched();
- extern int doset();
- extern int dosetenv();
- extern int dosource();
- ***************
- *** 58,63
- extern int doswbrk();
- extern int doswitch();
- extern int dotime();
- extern int dounlimit();
- extern int doumask();
- extern int dowait();
-
- --- 63,69 -----
- extern int doswbrk();
- extern int doswitch();
- extern int dotime();
- + #ifndef OREO
- extern int dounlimit();
- #endif
- extern int doumask();
- ***************
- *** 59,64
- extern int doswitch();
- extern int dotime();
- extern int dounlimit();
- extern int doumask();
- extern int dowait();
- extern int dowhile();
-
- --- 65,71 -----
- extern int dotime();
- #ifndef OREO
- extern int dounlimit();
- + #endif
- extern int doumask();
- extern int dowait();
- extern int dowhile();
- ***************
- *** 74,79
- extern int dounhash();
- extern int unset();
- extern int dounsetenv();
-
- #define INF 1000
-
-
- --- 81,87 -----
- extern int dounhash();
- extern int unset();
- extern int dounsetenv();
- + extern int dolist(); /* for ls-F */
-
- #define INF 1000
-
- ***************
- *** 86,91
- "alias", doalias, 0, INF,
- "alloc", showall, 0, 1,
- "bg", dobg, 0, INF,
- "break", dobreak, 0, 0,
- "breaksw", doswbrk, 0, 0,
- #ifdef IIASA
-
- --- 94,100 -----
- "alias", doalias, 0, INF,
- "alloc", showall, 0, 1,
- "bg", dobg, 0, INF,
- + "bind", dobind, 0, 2,
- "break", dobreak, 0, 0,
- "breaksw", doswbrk, 0, 0,
- #ifdef IIASA
- ***************
- *** 119,124
- "if", doif, 1, INF,
- "jobs", dojobs, 0, 1,
- "kill", dokill, 1, INF,
- "limit", dolimit, 0, 3,
- "login", dologin, 0, 1,
- "logout", dologout, 0, 0,
-
- --- 128,134 -----
- "if", doif, 1, INF,
- "jobs", dojobs, 0, 1,
- "kill", dokill, 1, INF,
- + #ifndef OREO
- "limit", dolimit, 0, 3,
- #endif OREO
- "linedit", doecho, 0, INF,
- ***************
- *** 120,125
- "jobs", dojobs, 0, 1,
- "kill", dokill, 1, INF,
- "limit", dolimit, 0, 3,
- "login", dologin, 0, 1,
- "logout", dologout, 0, 0,
- #ifdef NEWGRP
-
- --- 130,138 -----
- "kill", dokill, 1, INF,
- #ifndef OREO
- "limit", dolimit, 0, 3,
- + #endif OREO
- + "linedit", doecho, 0, INF,
- + "log", dolog, 0, 0,
- "login", dologin, 0, 1,
- "logout", dologout, 0, 0,
- "ls-F", dolist, 0, INF,
- ***************
- *** 122,127
- "limit", dolimit, 0, 3,
- "login", dologin, 0, 1,
- "logout", dologout, 0, 0,
- #ifdef NEWGRP
- "newgrp", donewgrp, 1, 1,
- #endif
-
- --- 135,141 -----
- "log", dolog, 0, 0,
- "login", dologin, 0, 1,
- "logout", dologout, 0, 0,
- + "ls-F", dolist, 0, INF,
- #ifdef NEWGRP
- "newgrp", donewgrp, 1, 1,
- #endif
- ***************
- *** 136,141
- #endif
- "rehash", dohash, 0, 0,
- "repeat", dorepeat, 2, INF,
- "set", doset, 0, INF,
- "setenv", dosetenv, 0, 2,
- "shift", shift, 0, 1,
-
- --- 150,156 -----
- #endif
- "rehash", dohash, 0, 0,
- "repeat", dorepeat, 2, INF,
- + "sched", dosched, 0, INF,
- "set", doset, 0, INF,
- "setenv", dosetenv, 0, 2,
- "shift", shift, 0, 1,
- ***************
- *** 147,152
- "umask", doumask, 0, 1,
- "unalias", unalias, 1, INF,
- "unhash", dounhash, 0, 0,
- "unlimit", dounlimit, 0, INF,
- "unset", unset, 1, INF,
- "unsetenv", dounsetenv, 1, INF,
-
- --- 162,168 -----
- "umask", doumask, 0, 1,
- "unalias", unalias, 1, INF,
- "unhash", dounhash, 0, 0,
- + #ifndef OREO
- "unlimit", dounlimit, 0, INF,
- #endif
- "unset", unset, 1, INF,
- ***************
- *** 148,153
- "unalias", unalias, 1, INF,
- "unhash", dounhash, 0, 0,
- "unlimit", dounlimit, 0, INF,
- "unset", unset, 1, INF,
- "unsetenv", dounsetenv, 1, INF,
- "wait", dowait, 0, 0,
-
- --- 164,170 -----
- "unhash", dounhash, 0, 0,
- #ifndef OREO
- "unlimit", dounlimit, 0, INF,
- + #endif
- "unset", unset, 1, INF,
- "unsetenv", dounsetenv, 1, INF,
- "wait", dowait, 0, 0,
- ***************
- *** 219,224
- "PIPE", "Broken pipe",
- "ALRM", "Alarm clock",
- "TERM", "Terminated",
- "URG", "Urgent I/O condition",
- "STOP", "Stopped (signal)",
- "TSTP", "Stopped",
-
- --- 236,243 -----
- "PIPE", "Broken pipe",
- "ALRM", "Alarm clock",
- "TERM", "Terminated",
- + #ifdef SVID
- + # ifdef pyr /* these are really the BSD sigs, plus a few */
- "URG", "Urgent I/O condition",
- "STOP", "Stopped (signal)",
- "TSTP", "Stopped",
- ***************
- *** 226,232
- "CHLD", "Child exited",
- "TTIN", "Stopped (tty input)",
- "TTOU", "Stopped (tty output)",
- ! "IO", "I/O possible",
- "XCPU", "Cputime limit exceeded",
- "XFSZ", "Filesize limit exceeded",
- "VTALRM","Virtual timer expired",
-
- --- 245,251 -----
- "CHLD", "Child exited",
- "TTIN", "Stopped (tty input)",
- "TTOU", "Stopped (tty output)",
- ! "IO", "I/O possible",
- "XCPU", "Cputime limit exceeded",
- "XFSZ", "Filesize limit exceeded",
- "VTALRM", "Virtual time alarm",
- ***************
- *** 229,237
- "IO", "I/O possible",
- "XCPU", "Cputime limit exceeded",
- "XFSZ", "Filesize limit exceeded",
- ! "VTALRM","Virtual timer expired",
- ! "PROF", "Profiling timer expired",
- ! "WINCH","Window size changed",
- 0, "Signal 29",
- "USR1", "User defined signal 1",
- "USR2", "User defined signal 2",
-
- --- 248,286 -----
- "IO", "I/O possible",
- "XCPU", "Cputime limit exceeded",
- "XFSZ", "Filesize limit exceeded",
- ! "VTALRM", "Virtual time alarm",
- ! "PROF", "Profiling time alarm",
- ! "USR1", "User signal 1",
- ! "USR2", "User signal 2",
- ! "PWR", "Power failure",
- ! 0, "Signal 31",
- ! 0, "Signal 32"
- ! # else pyr /* the first four real SVID sigs. */
- ! "USR1", "User signal 1",
- ! "USR2", "User signal 2",
- ! "CHLD", "Child exited",
- ! "PWR", "Power failure",
- ! # ifdef OREO
- ! "TSTP", "Stopped",
- ! "TTIN", "Stopped (tty input)",
- ! "TTOU", "Stopped (tty output)",
- ! "STOP", "Stopped (signal)",
- ! "XCPU", "Cputime limit exceeded",
- ! "XFSZ", "Filesize limit exceeded",
- ! "VTALRM", "Virtual time alarm",
- ! "PROF", "Profiling time alarm",
- ! "WINCH", "Window size changed",
- ! "CONT", "Continued",
- ! # else OREO
- ! 0, "Signal 20",
- ! 0, "Signal 21",
- ! 0, "Signal 22",
- ! 0, "Signal 23",
- ! 0, "Signal 24",
- ! 0, "Signal 25",
- ! 0, "Signal 26",
- ! 0, "Signal 27",
- ! 0, "Signal 28",
- 0, "Signal 29",
- # endif OREO
- 0, "Signal 30",
- ***************
- *** 233,238
- "PROF", "Profiling timer expired",
- "WINCH","Window size changed",
- 0, "Signal 29",
- "USR1", "User defined signal 1",
- "USR2", "User defined signal 2",
- 0, "Signal 32"
-
- --- 282,321 -----
- 0, "Signal 27",
- 0, "Signal 28",
- 0, "Signal 29",
- + # endif OREO
- + 0, "Signal 30",
- + 0, "Signal 31",
- + 0, "Signal 32"
- + # endif pyr
- + #else SVID
- + "URG", "Urgent I/O condition",
- + "STOP", "Stopped (signal)",
- + "TSTP", "Stopped",
- + "CONT", "Continued",
- + "CHLD", "Child exited",
- + "TTIN", "Stopped (tty input)",
- + "TTOU", "Stopped (tty output)",
- + "IO", "I/O possible",
- + "XCPU", "Cputime limit exceeded",
- + "XFSZ", "Filesize limit exceeded",
- + "VTALRM", "Virtual time alarm",
- + "PROF", "Profiling time alarm",
- + # ifdef sun
- + "WINCH", "Window size changed",
- + "LOST", "Resource lost",
- + "USR1", "User signal 1",
- + "USR2", "User signal 2",
- + 0, "Signal 32"
- + # else sun
- + # ifdef pyr
- + "USR1", "User signal 1",
- + "USR2", "User signal 2",
- + "PWR", "Power failure",
- + 0, "Signal 31",
- + 0, "Signal 32"
- + # else pyr
- + "WINCH", "Window size changed",
- + 0, "Signal 29",
- "USR1", "User defined signal 1",
- "USR2", "User defined signal 2",
- 0, "Signal 32"
- ***************
- *** 236,239
- "USR1", "User defined signal 1",
- "USR2", "User defined signal 2",
- 0, "Signal 32"
- };
-
- --- 319,325 -----
- "USR1", "User defined signal 1",
- "USR2", "User defined signal 2",
- 0, "Signal 32"
- + # endif pyr
- + # endif sun
- + #endif SVID
- };
- *** sh.lex.c Sat Mar 29 07:38:02 1986
- --- /usr/src/local/tcsh/sh.lex.c Thu Sep 17 23:23:42 1987
- ***************
- *** 9,15
- #endif
-
- #include "sh.h"
- - #include <sgtty.h>
-
- /*
- * C shell
-
- --- 9,14 -----
- #endif
-
- #include "sh.h"
-
- /*
- * C shell
- ***************
- *** 221,234
- c |= QUOTE;
- else {
- if (c == '\n')
- ! /*
- ! if (c1 == '`')
- ! c = ' ';
- ! else
- ! */
- ! c |= QUOTE;
- ! ungetC(c);
- ! c = '\\';
- }
- } else if (c == '\n') {
- seterrc("Unmatched ", c1);
-
- --- 220,234 -----
- c |= QUOTE;
- else {
- if (c == '\n')
- ! c |= QUOTE;
- ! else if (c == '"')
- ! c |= QUOTE;
- ! else if (c == '\'')
- ! c |= QUOTE;
- ! else {
- ! ungetC(c);
- ! c = '\\';
- ! }
- }
- } else if (c == '\n') {
- seterrc("Unmatched ", c1);
- ***************
- *** 1126,1131
- reread:
- c = bgetc();
- if (c < 0) {
- struct sgttyb tty;
-
- if (wanteof)
-
- --- 1126,1135 -----
- reread:
- c = bgetc();
- if (c < 0) {
- + #ifdef SVID
- + #include <termio.h>
- + struct termio tty;
- + #else
- struct sgttyb tty;
- #endif SVID
-
- ***************
- *** 1127,1132
- c = bgetc();
- if (c < 0) {
- struct sgttyb tty;
-
- if (wanteof)
- return (-1);
-
- --- 1131,1137 -----
- struct termio tty;
- #else
- struct sgttyb tty;
- + #endif SVID
-
- if (wanteof)
- return (-1);
- ***************
- *** 1131,1136
- if (wanteof)
- return (-1);
- /* was isatty but raw with ignoreeof yields problems */
- if (ioctl(SHIN, TIOCGETP, (char *)&tty) == 0 &&
- (tty.sg_flags & RAW) == 0) {
- /* was 'short' for FILEC */
-
- --- 1136,1145 -----
- if (wanteof)
- return (-1);
- /* was isatty but raw with ignoreeof yields problems */
- + #ifdef SVID
- + if (ioctl(SHIN, TCGETA, &tty)==0 &&
- + (tty.c_cc[VEOF] != CEOF)) {
- + #else SVID
- if (ioctl(SHIN, TIOCGETP, (char *)&tty) == 0 &&
- (tty.sg_flags & RAW) == 0) {
- #endif
- ***************
- *** 1133,1139
- /* was isatty but raw with ignoreeof yields problems */
- if (ioctl(SHIN, TIOCGETP, (char *)&tty) == 0 &&
- (tty.sg_flags & RAW) == 0) {
- ! /* was 'short' for FILEC */
- int ctpgrp;
-
- if (++sincereal > 25)
-
- --- 1142,1148 -----
- #else SVID
- if (ioctl(SHIN, TIOCGETP, (char *)&tty) == 0 &&
- (tty.sg_flags & RAW) == 0) {
- ! #endif
- int ctpgrp;
-
- if (++sincereal > 25)
- ***************
- *** 1138,1143
-
- if (++sincereal > 25)
- goto oops;
- if (tpgrp != -1 &&
- ioctl(FSHTTY, TIOCGPGRP, (char *)&ctpgrp) == 0 &&
- tpgrp != ctpgrp) {
-
- --- 1147,1153 -----
-
- if (++sincereal > 25)
- goto oops;
- + #ifdef BSDJOBS
- if (tpgrp != -1 &&
- ioctl(FSHTTY, TIOCGPGRP, (char *)&ctpgrp) == 0 &&
- tpgrp != ctpgrp) {
- ***************
- *** 1147,1152
- printf("Reset tty pgrp from %d to %d\n", ctpgrp, tpgrp);
- goto reread;
- }
- if (adrof("ignoreeof")) {
- if (loginsh)
- printf("\nUse \"logout\" to logout.\n");
-
- --- 1157,1163 -----
- printf("Reset tty pgrp from %d to %d\n", ctpgrp, tpgrp);
- goto reread;
- }
- + #endif BSDJOBS
- if (adrof("ignoreeof")) {
- if (loginsh)
- printf("\nUse \"logout\" to logout.\n");
- ***************
- *** 1151,1157
- if (loginsh)
- printf("\nUse \"logout\" to logout.\n");
- else
- ! printf("\nUse \"exit\" to leave csh.\n");
- reset();
- }
- if (chkstop == 0)
-
- --- 1162,1168 -----
- if (loginsh)
- printf("\nUse \"logout\" to logout.\n");
- else
- ! printf("\nUse \"exit\" to leave tcsh.\n");
- reset();
- }
- if (chkstop == 0)
- ***************
- *** 1171,1178
- bgetc()
- {
- register int buf, off, c;
- ! #ifdef FILEC
- ! char ttyline[BUFSIZ];
- register int numleft = 0, roomleft;
- #endif
-
-
- --- 1182,1188 -----
- bgetc()
- {
- register int buf, off, c;
- ! extern char InputBuf[];
- register int numleft = 0, roomleft;
-
- #ifdef TELL
- ***************
- *** 1174,1180
- #ifdef FILEC
- char ttyline[BUFSIZ];
- register int numleft = 0, roomleft;
- - #endif
-
- #ifdef TELL
- if (cantell) {
-
- --- 1184,1189 -----
- register int buf, off, c;
- extern char InputBuf[];
- register int numleft = 0, roomleft;
-
- #ifdef TELL
- if (cantell) {
- ***************
- *** 1187,1193
- do
- c = read(SHIN, fbuf[0], BUFSIZ);
- while (c < 0 && errno == EINTR);
- ! if (c <= 0)
- return (-1);
- feobp += c;
- }
-
- --- 1196,1202 -----
- do
- c = read(SHIN, fbuf[0], BUFSIZ);
- while (c < 0 && errno == EINTR);
- ! if (c <= 0) {
- return (-1);
- }
- feobp += c;
- ***************
- *** 1189,1194
- while (c < 0 && errno == EINTR);
- if (c <= 0)
- return (-1);
- feobp += c;
- }
- c = fbuf[0][fseekp - fbobp];
-
- --- 1198,1204 -----
- while (c < 0 && errno == EINTR);
- if (c <= 0) {
- return (-1);
- + }
- feobp += c;
- }
- c = fbuf[0][fseekp - fbobp];
- ***************
- *** 1210,1216
- fbuf = nfbuf;
- fbuf[fblocks] = calloc(BUFSIZ, sizeof (char));
- fblocks++;
- ! goto again;
- }
- if (fseekp >= feobp) {
- buf = (int) feobp / BUFSIZ;
-
- --- 1220,1227 -----
- fbuf = nfbuf;
- fbuf[fblocks] = calloc(BUFSIZ, sizeof (char));
- fblocks++;
- ! if (!intty)
- ! goto again;
- }
- if (fseekp >= feobp) {
- buf = (int) feobp / BUFSIZ;
- ***************
- *** 1215,1221
- if (fseekp >= feobp) {
- buf = (int) feobp / BUFSIZ;
- off = (int) feobp % BUFSIZ;
- ! #ifndef FILEC
- for (;;) {
- c = read(SHIN, fbuf[buf] + off, BUFSIZ - off);
- #else
-
- --- 1226,1232 -----
- if (fseekp >= feobp) {
- buf = (int) feobp / BUFSIZ;
- off = (int) feobp % BUFSIZ;
- ! roomleft = BUFSIZ - off;
- for (;;) {
- if (intty) { /* then use twenex routine */
- /* PWP: get a line */
- ***************
- *** 1217,1234
- off = (int) feobp % BUFSIZ;
- #ifndef FILEC
- for (;;) {
- ! c = read(SHIN, fbuf[buf] + off, BUFSIZ - off);
- ! #else
- ! roomleft = BUFSIZ - off;
- ! for (;;) {
- ! if (filec && intty) {
- ! c = numleft ? numleft : tenex(ttyline, BUFSIZ);
- ! if (c > roomleft) {
- ! /* start with fresh buffer */
- ! feobp = fseekp = fblocks * BUFSIZ;
- ! numleft = c;
- ! goto again;
- ! }
- if (c > 0)
- copy(fbuf[buf] + off, ttyline, c);
- numleft = 0;
-
- --- 1228,1244 -----
- off = (int) feobp % BUFSIZ;
- roomleft = BUFSIZ - off;
- for (;;) {
- ! if (intty) { /* then use twenex routine */
- ! /* PWP: get a line */
- ! c = numleft ? numleft : Inputl();
- ! if (c > roomleft) /* No room in this buffer? */
- ! {
- ! /* start with fresh buffer */
- ! feobp = fseekp =
- ! fblocks * BUFSIZ;
- ! numleft = c;
- ! goto again;
- ! }
- if (c > 0)
- copy (fbuf[buf] + off, InputBuf, c);
- /* copy (fbuf[buf] + off, ttyline, c); */
- ***************
- *** 1230,1236
- goto again;
- }
- if (c > 0)
- ! copy(fbuf[buf] + off, ttyline, c);
- numleft = 0;
- } else
- c = read(SHIN, fbuf[buf] + off, roomleft);
-
- --- 1240,1247 -----
- goto again;
- }
- if (c > 0)
- ! copy (fbuf[buf] + off, InputBuf, c);
- ! /* copy (fbuf[buf] + off, ttyline, c); */
- numleft = 0;
- }
- else {
- ***************
- *** 1232,1238
- if (c > 0)
- copy(fbuf[buf] + off, ttyline, c);
- numleft = 0;
- ! } else
- c = read(SHIN, fbuf[buf] + off, roomleft);
- #endif
- if (c >= 0)
-
- --- 1243,1250 -----
- copy (fbuf[buf] + off, InputBuf, c);
- /* copy (fbuf[buf] + off, ttyline, c); */
- numleft = 0;
- ! }
- ! else {
- c = read(SHIN, fbuf[buf] + off, roomleft);
- }
- if (c >= 0)
- ***************
- *** 1234,1240
- numleft = 0;
- } else
- c = read(SHIN, fbuf[buf] + off, roomleft);
- ! #endif
- if (c >= 0)
- break;
- if (errno == EWOULDBLOCK) {
-
- --- 1246,1252 -----
- }
- else {
- c = read(SHIN, fbuf[buf] + off, roomleft);
- ! }
- if (c >= 0)
- break;
- if (errno == EWOULDBLOCK) {
- ***************
- *** 1239,1245
- break;
- if (errno == EWOULDBLOCK) {
- int off = 0;
- !
- (void) ioctl(SHIN, FIONBIO, (char *)&off);
- } else if (errno != EINTR)
- break;
-
- --- 1251,1257 -----
- break;
- if (errno == EWOULDBLOCK) {
- int off = 0;
- !
- (void) ioctl(SHIN, FIONBIO, (char *)&off);
- } else if (errno != EINTR)
- break;
- ***************
- *** 1244,1250
- } else if (errno != EINTR)
- break;
- }
- ! if (c <= 0)
- return (-1);
- feobp += c;
- #ifndef FILEC
-
- --- 1256,1262 -----
- } else if (errno != EINTR)
- break;
- }
- ! if (c <= 0) {
- return (-1);
- }
- feobp += c;
- ***************
- *** 1246,1251
- }
- if (c <= 0)
- return (-1);
- feobp += c;
- #ifndef FILEC
- goto again;
-
- --- 1258,1264 -----
- }
- if (c <= 0) {
- return (-1);
- + }
- feobp += c;
- if (!intty)
- goto again;
- ***************
- *** 1247,1256
- if (c <= 0)
- return (-1);
- feobp += c;
- ! #ifndef FILEC
- ! goto again;
- ! #else
- ! if (filec && !intty)
- goto again;
- #endif
- }
-
- --- 1260,1266 -----
- return (-1);
- }
- feobp += c;
- ! if (!intty)
- goto again;
- }
- c = fbuf[buf][(int) fseekp % BUFSIZ];
- ***************
- *** 1252,1258
- #else
- if (filec && !intty)
- goto again;
- - #endif
- }
- c = fbuf[buf][(int) fseekp % BUFSIZ];
- fseekp++;
-
- --- 1262,1267 -----
- feobp += c;
- if (!intty)
- goto again;
- }
- c = fbuf[buf][(int) fseekp % BUFSIZ];
- fseekp++;
- *** sh.local.h Thu Jun 6 13:15:34 1985
- --- /usr/src/local/tcsh/sh.local.h Mon Aug 17 21:32:31 1987
- ***************
- *** 22,28
- */
-
- #define BUFSIZ 1024 /* default buffer size */
- ! #define SHELLPATH "/bin/csh"
- #define OTHERSH "/bin/sh"
- #define FORKSLEEP 10 /* delay loop on non-interactive fork failure */
- #define MAILINTVL 600 /* 10 minutes */
-
- --- 22,30 -----
- */
-
- #define BUFSIZ 1024 /* default buffer size */
- ! #ifndef SHELLPATH
- ! #define SHELLPATH "/bin/tcsh"
- ! #endif
- #define OTHERSH "/bin/sh"
- #define FORKSLEEP 10 /* delay loop on non-interactive fork failure */
- #define MAILINTVL 600 /* 10 minutes */
- *** sh.misc.c Sat Mar 29 07:37:28 1986
- --- /usr/src/local/tcsh/sh.misc.c Mon Aug 17 21:32:32 1987
- ***************
- *** 88,94
- #else
- showall(av);
- printf("i=%d: Out of memory\n", i);
- ! chdir("/usr/bill/cshcore");
- abort();
- #endif
- return 0; /* fool lint */
-
- --- 88,94 -----
- #else
- showall(av);
- printf("i=%d: Out of memory\n", i);
- ! /* chdir("/usr/bill/cshcore"); */
- abort();
- #endif
- return 0; /* fool lint */
- *** sh.print.c Thu Jun 6 13:15:28 1985
- --- /usr/src/local/tcsh/sh.print.c Mon Aug 17 21:44:36 1987
- ***************
- *** 42,48
- printf("%d%d", i / 10, i % 10);
- }
-
- ! char linbuf[128];
- char *linp = linbuf;
-
- putchar(c)
-
- --- 42,48 -----
- printf("%d%d", i / 10, i % 10);
- }
-
- ! char linbuf[2048]; /* was 128 */
- char *linp = linbuf;
- int lbuffed = 1; /* true if line buffered */
-
- ***************
- *** 44,49
-
- char linbuf[128];
- char *linp = linbuf;
-
- putchar(c)
- register int c;
-
- --- 44,50 -----
-
- char linbuf[2048]; /* was 128 */
- char *linp = linbuf;
- + int lbuffed = 1; /* true if line buffered */
-
- putchar(c)
- register int c;
- ***************
- *** 49,55
- register int c;
- {
-
- ! if ((c & QUOTE) == 0 && (c == 0177 || c < ' ' && c != '\t' && c != '\n')) {
- putchar('^');
- if (c == 0177)
- c = '?';
-
- --- 50,56 -----
- register int c;
- {
-
- ! if ((c & QUOTE) == 0 && (c == 0177 || c < ' ' && c != '\t' && c != '\n' && c != '\r')) {
- putchar('^');
- if (c == 0177)
- c = '?';
- ***************
- *** 58,64
- }
- c &= TRIM;
- *linp++ = c;
- ! if (c == '\n' || linp >= &linbuf[sizeof linbuf - 2])
- flush();
- }
-
-
- --- 59,65 -----
- }
- c &= TRIM;
- *linp++ = c;
- ! if ((lbuffed && c == '\n') || linp >= &linbuf[sizeof linbuf - 2])
- flush();
- }
-
- ***************
- *** 62,67
- flush();
- }
-
- draino()
- {
-
-
- --- 63,77 -----
- flush();
- }
-
- + putraw(c)
- + register int c;
- + {
- + c &= TRIM;
- + *linp++ = c;
- + if (linp >= &linbuf[sizeof linbuf - 2])
- + flush();
- + }
- +
- draino()
- {
-
- ***************
- *** 87,92
- (void) write(unit, "\n", 1);
- }
- #endif
- ! (void) write(unit, linbuf, linp - linbuf);
- linp = linbuf;
- }
-
- --- 97,102 -----
- (void) write(unit, "\n", 1);
- }
- #endif
- ! (void) write(unit, linbuf, (int) (linp - linbuf));
- linp = linbuf;
- }
- *** sh.proc.c Tue May 13 01:12:46 1986
- --- /usr/src/local/tcsh/sh.proc.c Mon Aug 17 21:32:39 1987
- ***************
- *** 34,39
- register int pid;
- union wait w;
- int jobflags;
- struct rusage ru;
-
- loop:
-
- --- 34,40 -----
- register int pid;
- union wait w;
- int jobflags;
- + #ifndef OREO
- struct rusage ru;
- #endif
-
- ***************
- *** 35,40
- union wait w;
- int jobflags;
- struct rusage ru;
-
- loop:
- pid = wait3(&w, (setintr ? WNOHANG|WUNTRACED:WNOHANG), &ru);
-
- --- 36,42 -----
- int jobflags;
- #ifndef OREO
- struct rusage ru;
- + #endif
-
- loop:
- pid = wait3(&w, (setintr ? WNOHANG|WUNTRACED:WNOHANG),
- ***************
- *** 37,43
- struct rusage ru;
-
- loop:
- ! pid = wait3(&w, (setintr ? WNOHANG|WUNTRACED:WNOHANG), &ru);
- if (pid <= 0) {
- if (errno == EINTR) {
- errno = 0;
-
- --- 39,50 -----
- #endif
-
- loop:
- ! pid = wait3(&w, (setintr ? WNOHANG|WUNTRACED:WNOHANG),
- ! #ifdef OREO
- ! 0);
- ! #else OREO
- ! &ru);
- ! #endif OREO
- if (pid <= 0) {
- if (errno == EINTR) {
- errno = 0;
- ***************
- *** 60,65
- } else {
- if (pp->p_flags & (PTIME|PPTIME) || adrof("time"))
- (void) gettimeofday(&pp->p_etime, (struct timezone *)0);
- pp->p_rusage = ru;
- if (WIFSIGNALED(w)) {
- if (w.w_termsig == SIGINT)
-
- --- 67,73 -----
- } else {
- if (pp->p_flags & (PTIME|PPTIME) || adrof("time"))
- (void) gettimeofday(&pp->p_etime, (struct timezone *)0);
- + #ifndef OREO
- pp->p_rusage = ru;
- #endif OREO
- if (WIFSIGNALED(w)) {
- ***************
- *** 61,66
- if (pp->p_flags & (PTIME|PPTIME) || adrof("time"))
- (void) gettimeofday(&pp->p_etime, (struct timezone *)0);
- pp->p_rusage = ru;
- if (WIFSIGNALED(w)) {
- if (w.w_termsig == SIGINT)
- pp->p_flags |= PINTERRUPTED;
-
- --- 69,75 -----
- (void) gettimeofday(&pp->p_etime, (struct timezone *)0);
- #ifndef OREO
- pp->p_rusage = ru;
- + #endif OREO
- if (WIFSIGNALED(w)) {
- if (w.w_termsig == SIGINT)
- pp->p_flags |= PINTERRUPTED;
- ***************
- *** 211,216
- sigpause(sigblock(0) &~ sigmask(SIGCHLD));
- }
- (void) sigsetmask(omask);
- if (tpgrp > 0) /* get tty back */
- (void) ioctl(FSHTTY, TIOCSPGRP, (char *)&tpgrp);
- if ((jobflags&(PSIGNALED|PSTOPPED|PTIME)) ||
-
- --- 220,226 -----
- sigpause(sigblock(0) &~ sigmask(SIGCHLD));
- }
- (void) sigsetmask(omask);
- + #ifdef BSDJOBS
- if (tpgrp > 0) /* get tty back */
- (void) ioctl(FSHTTY, TIOCSPGRP, (char *)&tpgrp);
- #endif BSDJOBS
- ***************
- *** 213,218
- (void) sigsetmask(omask);
- if (tpgrp > 0) /* get tty back */
- (void) ioctl(FSHTTY, TIOCSPGRP, (char *)&tpgrp);
- if ((jobflags&(PSIGNALED|PSTOPPED|PTIME)) ||
- !eq(dcwd->di_name, fp->p_cwd->di_name)) {
- if (jobflags&PSTOPPED)
-
- --- 223,229 -----
- #ifdef BSDJOBS
- if (tpgrp > 0) /* get tty back */
- (void) ioctl(FSHTTY, TIOCSPGRP, (char *)&tpgrp);
- + #endif BSDJOBS
- if ((jobflags&(PSIGNALED|PSTOPPED|PTIME)) ||
- !eq(dcwd->di_name, fp->p_cwd->di_name)) {
- if (jobflags&PSTOPPED)
- ***************
- *** 628,633
- if (pp->p_flags&PPTIME && !(status&(PSTOPPED|PRUNNING))) {
- if (linp != linbuf)
- printf("\n\t");
- { static struct rusage zru;
- prusage(&zru, &pp->p_rusage, &pp->p_etime,
- &pp->p_btime);
-
- --- 639,645 -----
- if (pp->p_flags&PPTIME && !(status&(PSTOPPED|PRUNNING))) {
- if (linp != linbuf)
- printf("\n\t");
- + #ifndef OREO
- { static struct rusage zru;
- prusage(&zru, &pp->p_rusage, &pp->p_etime,
- &pp->p_btime);
- ***************
- *** 632,637
- prusage(&zru, &pp->p_rusage, &pp->p_etime,
- &pp->p_btime);
- }
- }
- if (tp == pp->p_friends) {
- if (linp != linbuf)
-
- --- 644,650 -----
- prusage(&zru, &pp->p_rusage, &pp->p_etime,
- &pp->p_btime);
- }
- + #endif OREO
- }
- if (tp == pp->p_friends) {
- if (linp != linbuf)
- ***************
- *** 654,659
- ptprint(tp)
- register struct process *tp;
- {
- struct timeval tetime, diff;
- static struct timeval ztime;
- struct rusage ru;
-
- --- 667,675 -----
- ptprint(tp)
- register struct process *tp;
- {
- + #ifdef OREO
- + printf ("There is no time stuff for OREO yet (sorry).\n");
- + #else OREO
- struct timeval tetime, diff;
- static struct timeval ztime;
- struct rusage ru;
- ***************
- *** 669,674
- tetime = diff;
- } while ((pp = pp->p_friends) != tp);
- prusage(&zru, &ru, &tetime, &ztime);
- }
-
- /*
-
- --- 685,691 -----
- tetime = diff;
- } while ((pp = pp->p_friends) != tp);
- prusage(&zru, &ru, &tetime, &ztime);
- + #endif OREO
- }
-
- /*
- ***************
- *** 896,901
- if (!foregnd)
- pclrcurr(pp);
- (void) pprint(pp, foregnd ? NAME|JOBDIR : NUMBER|NAME|AMPERSAND);
- if (foregnd)
- (void) ioctl(FSHTTY, TIOCSPGRP, (char *)&pp->p_jobid);
- if (jobflags&PSTOPPED)
-
- --- 913,919 -----
- if (!foregnd)
- pclrcurr(pp);
- (void) pprint(pp, foregnd ? NAME|JOBDIR : NUMBER|NAME|AMPERSAND);
- + #ifdef BSDJOBS
- if (foregnd)
- (void) ioctl(FSHTTY, TIOCSPGRP, (char *)&pp->p_jobid);
- if (jobflags&PSTOPPED)
- ***************
- *** 900,905
- (void) ioctl(FSHTTY, TIOCSPGRP, (char *)&pp->p_jobid);
- if (jobflags&PSTOPPED)
- (void) killpg(pp->p_jobid, SIGCONT);
- (void) sigsetmask(omask);
- }
-
-
- --- 918,924 -----
- (void) ioctl(FSHTTY, TIOCSPGRP, (char *)&pp->p_jobid);
- if (jobflags&PSTOPPED)
- (void) killpg(pp->p_jobid, SIGCONT);
- + #endif BSDJOBS
- (void) sigsetmask(omask);
- }
-
- ***************
- *** 1063,1068
- (void) signal(SIGINT, SIG_IGN);
- (void) signal(SIGQUIT, SIG_IGN);
- }
- if (wanttty > 0)
- (void) ioctl(FSHTTY, TIOCSPGRP, (char *)&pgrp);
- if (wanttty >= 0 && tpgrp >= 0)
-
- --- 1082,1088 -----
- (void) signal(SIGINT, SIG_IGN);
- (void) signal(SIGQUIT, SIG_IGN);
- }
- + #ifdef BSDJOBS
- if (wanttty > 0)
- (void) ioctl(FSHTTY, TIOCSPGRP, (char *)&pgrp);
- if (wanttty >= 0 && tpgrp >= 0)
- ***************
- *** 1069,1074
- (void) setpgrp(0, pgrp);
- if (tpgrp > 0)
- tpgrp = 0; /* gave tty away */
- /*
- * Nohup and nice apply only to TCOM's but it would be
- * nice (?!?) if you could say "nohup (foo;bar)"
-
- --- 1089,1095 -----
- (void) setpgrp(0, pgrp);
- if (tpgrp > 0)
- tpgrp = 0; /* gave tty away */
- + #endif BSDJOBS
- /*
- * Nohup and nice apply only to TCOM's but it would be
- * nice (?!?) if you could say "nohup (foo;bar)"
- *** sh.proc.h Thu Jun 6 13:15:49 1985
- --- /usr/src/local/tcsh/sh.proc.h Mon Aug 17 21:32:40 1987
- ***************
- *** 30,35
- /* if a job is stopped/background p_jobid gives its pgrp */
- struct timeval p_btime; /* begin time */
- struct timeval p_etime; /* end time */
- struct rusage p_rusage;
- char *p_command; /* first PMAXLEN chars of command */
- };
-
- --- 30,36 -----
- /* if a job is stopped/background p_jobid gives its pgrp */
- struct timeval p_btime; /* begin time */
- struct timeval p_etime; /* end time */
- + #ifndef OREO
- struct rusage p_rusage;
- #endif OREO
- char *p_command; /* first PMAXLEN chars of command */
- ***************
- *** 31,36
- struct timeval p_btime; /* begin time */
- struct timeval p_etime; /* end time */
- struct rusage p_rusage;
- char *p_command; /* first PMAXLEN chars of command */
- };
-
-
- --- 32,38 -----
- struct timeval p_etime; /* end time */
- #ifndef OREO
- struct rusage p_rusage;
- + #endif OREO
- char *p_command; /* first PMAXLEN chars of command */
- };
-
- *** sh.sem.c Tue May 13 01:08:43 1986
- --- /usr/src/local/tcsh/sh.sem.c Thu Sep 24 15:04:35 1987
- ***************
- *** 187,192
- (void) signal(SIGINT, SIG_IGN);
- (void) signal(SIGQUIT, SIG_IGN);
- }
- if (wanttty > 0)
- (void) ioctl(FSHTTY, TIOCSPGRP,
- (char *)&pgrp);
-
- --- 187,193 -----
- (void) signal(SIGINT, SIG_IGN);
- (void) signal(SIGQUIT, SIG_IGN);
- }
- + #ifdef BSDJOBS
- if (wanttty > 0)
- (void) ioctl(FSHTTY, TIOCSPGRP,
- (char *)&pgrp);
- ***************
- *** 192,197
- (char *)&pgrp);
- if (wanttty >= 0 && tpgrp >= 0)
- (void) setpgrp(0, pgrp);
- if (tpgrp > 0)
- tpgrp = 0;
- if (t->t_dflg & FNOHUP)
-
- --- 193,199 -----
- (char *)&pgrp);
- if (wanttty >= 0 && tpgrp >= 0)
- (void) setpgrp(0, pgrp);
- + #endif BSDJOBS
- if (tpgrp > 0)
- tpgrp = 0;
- if (t->t_dflg & FNOHUP)
- *** sh.set.c Thu Jun 6 13:15:54 1985
- --- /usr/src/local/tcsh/sh.set.c Thu Sep 24 15:03:28 1987
- ***************
- *** 81,87
-
- HIST = *p++;
- HISTSUB = *p;
- ! } else if (eq(vp, "user"))
- setenv("USER", value(vp));
- else if (eq(vp, "term"))
- setenv("TERM", value(vp));
-
- --- 81,87 -----
-
- HIST = *p++;
- HISTSUB = *p;
- ! } else if (eq(vp, "user")) {
- setenv("USER", value(vp));
- } else if (eq(vp, "term")) {
- setenv("TERM", value(vp));
- ***************
- *** 83,89
- HISTSUB = *p;
- } else if (eq(vp, "user"))
- setenv("USER", value(vp));
- ! else if (eq(vp, "term"))
- setenv("TERM", value(vp));
- else if (eq(vp, "home"))
- setenv("HOME", value(vp));
-
- --- 83,89 -----
- HISTSUB = *p;
- } else if (eq(vp, "user")) {
- setenv("USER", value(vp));
- ! } else if (eq(vp, "term")) {
- setenv("TERM", value(vp));
- ed_Init(); /* reset the editor */
- } else if (eq(vp, "home")) {
- ***************
- *** 85,91
- setenv("USER", value(vp));
- else if (eq(vp, "term"))
- setenv("TERM", value(vp));
- ! else if (eq(vp, "home"))
- setenv("HOME", value(vp));
- #ifdef FILEC
- else if (eq(vp, "filec"))
-
- --- 85,92 -----
- setenv("USER", value(vp));
- } else if (eq(vp, "term")) {
- setenv("TERM", value(vp));
- ! ed_Init(); /* reset the editor */
- ! } else if (eq(vp, "home")) {
- setenv("HOME", value(vp));
- }
- } while (p = *v++);
- ***************
- *** 87,96
- setenv("TERM", value(vp));
- else if (eq(vp, "home"))
- setenv("HOME", value(vp));
- ! #ifdef FILEC
- ! else if (eq(vp, "filec"))
- ! filec = 1;
- ! #endif
- } while (p = *v++);
- }
-
-
- --- 88,94 -----
- ed_Init(); /* reset the editor */
- } else if (eq(vp, "home")) {
- setenv("HOME", value(vp));
- ! }
- } while (p = *v++);
- }
-
- ***************
- *** 435,444
- HIST = '!';
- HISTSUB = '^';
- }
- - #ifdef FILEC
- - if (adrof("filec") == 0)
- - filec = 0;
- - #endif
- }
-
- unset1(v, head)
-
- --- 433,438 -----
- HIST = '!';
- HISTSUB = '^';
- }
- }
-
- unset1(v, head)
- *** sh.time.c Tue May 13 01:07:31 1986
- --- /usr/src/local/tcsh/sh.time.c Mon Aug 17 21:32:45 1987
- ***************
- *** 16,21
-
- settimes()
- {
- struct rusage ruch;
-
- (void) gettimeofday(&time0, (struct timezone *)0);
-
- --- 16,22 -----
-
- settimes()
- {
- + #ifndef OREO
- struct rusage ruch;
- #endif
-
- ***************
- *** 17,22
- settimes()
- {
- struct rusage ruch;
-
- (void) gettimeofday(&time0, (struct timezone *)0);
- (void) getrusage(RUSAGE_SELF, &ru0);
-
- --- 18,24 -----
- {
- #ifndef OREO
- struct rusage ruch;
- + #endif
-
- (void) gettimeofday(&time0, (struct timezone *)0);
- #ifndef OREO
- ***************
- *** 19,24
- struct rusage ruch;
-
- (void) gettimeofday(&time0, (struct timezone *)0);
- (void) getrusage(RUSAGE_SELF, &ru0);
- (void) getrusage(RUSAGE_CHILDREN, &ruch);
- ruadd(&ru0, &ruch);
-
- --- 21,27 -----
- #endif
-
- (void) gettimeofday(&time0, (struct timezone *)0);
- + #ifndef OREO
- (void) getrusage(RUSAGE_SELF, &ru0);
- (void) getrusage(RUSAGE_CHILDREN, &ruch);
- ruadd(&ru0, &ruch);
- ***************
- *** 22,27
- (void) getrusage(RUSAGE_SELF, &ru0);
- (void) getrusage(RUSAGE_CHILDREN, &ruch);
- ruadd(&ru0, &ruch);
- }
-
- /*
-
- --- 25,31 -----
- (void) getrusage(RUSAGE_SELF, &ru0);
- (void) getrusage(RUSAGE_CHILDREN, &ruch);
- ruadd(&ru0, &ruch);
- + #endif OREO
- }
-
- /*
- ***************
- *** 30,35
- */
- dotime()
- {
- struct timeval timedol;
- struct rusage ru1, ruch;
-
-
- --- 34,40 -----
- */
- dotime()
- {
- + #ifndef OREO
- struct timeval timedol;
- struct rusage ru1, ruch;
-
- ***************
- *** 38,43
- ruadd(&ru1, &ruch);
- (void) gettimeofday(&timedol, (struct timezone *)0);
- prusage(&ru0, &ru1, &timedol, &time0);
- }
-
- /*
-
- --- 43,49 -----
- ruadd(&ru1, &ruch);
- (void) gettimeofday(&timedol, (struct timezone *)0);
- prusage(&ru0, &ru1, &timedol, &time0);
- + #endif
- }
-
- /*
- ***************
- *** 57,62
- (void) setpriority(PRIO_PROCESS, 0, nval);
- }
-
- ruadd(ru, ru2)
- register struct rusage *ru, *ru2;
- {
-
- --- 63,69 -----
- (void) setpriority(PRIO_PROCESS, 0, nval);
- }
-
- + #ifndef OREO
- ruadd(ru, ru2)
- register struct rusage *ru, *ru2;
- {
- ***************
- *** 155,160
- }
- putchar('\n');
- }
-
- pdeltat(t1, t0)
- struct timeval *t1, *t0;
-
- --- 162,168 -----
- }
- putchar('\n');
- }
- + #endif
-
- pdeltat(t1, t0)
- struct timeval *t1, *t0;
- *** Makefile Thu Sep 24 15:24:33 1987
- --- /usr/src/local/tcsh/Makefile Mon Aug 17 21:53:45 1987
- ***************
- *** 37,43
-
- # on some machines, the alloc.c works. On others, it dosn't. Besides,
- # nmalloc is much faster...
- ! ALLOC=nmalloc.o
-
- SHOBJS= sh.o sh.dir.o sh.dol.o sh.err.o sh.exec.o \
- sh.exp.o sh.func.o sh.glob.o sh.hist.o sh.init.o sh.lex.o sh.misc.o \
-
- --- 37,43 -----
-
- # on some machines, the alloc.c works. On others, it dosn't. Besides,
- # nmalloc is much faster...
- ! ALLOC=alloc.o
-
- SHOBJS= sh.o sh.char.o sh.dir.o sh.dol.o sh.err.o \
- sh.exec.o sh.exp.o sh.file.o sh.func.o sh.glob.o sh.hist.o sh.init.o \
- ***************
- *** 39,47
- # nmalloc is much faster...
- ALLOC=nmalloc.o
-
- ! SHOBJS= sh.o sh.dir.o sh.dol.o sh.err.o sh.exec.o \
- ! sh.exp.o sh.func.o sh.glob.o sh.hist.o sh.init.o sh.lex.o sh.misc.o \
- ! sh.parse.o sh.print.o sh.proc.o sh.sem.o sh.set.o sh.sig.o sh.time.o
-
- TWOBJS= tw.help.o tw.init.o tw.parse.o tw.spell.o
-
-
- --- 39,48 -----
- # nmalloc is much faster...
- ALLOC=alloc.o
-
- ! SHOBJS= sh.o sh.char.o sh.dir.o sh.dol.o sh.err.o \
- ! sh.exec.o sh.exp.o sh.file.o sh.func.o sh.glob.o sh.hist.o sh.init.o \
- ! sh.lex.o sh.misc.o sh.parse.o sh.print.o sh.proc.o sh.sem.o sh.set.o \
- ! sh.time.o
-
- TWOBJS= tw.help.o tw.init.o tw.parse.o tw.spell.o
-
- ***************
- *** 61,67
- rm -f tcsh.ps
- -ptroff -man tcsh.1 > tcsh.ps
-
- ! ${SHOBJS}: sh.h sh.local.h
-
- ${TWOBJS}: sh.h sh.local.h tw.h
-
-
- --- 62,68 -----
- rm -f tcsh.ps
- -ptroff -man tcsh.1 > tcsh.ps
-
- ! # ${SHOBJS}: sh.h sh.local.h
-
- ${TWOBJS}: sh.h sh.local.h tw.h
-
- ***************
- *** 124,126
-
- tags: /tmp
- ${CTAGS} sh*.c
-
- --- 125,148 -----
-
- tags: /tmp
- ${CTAGS} sh*.c
- +
- + sh.o: sh.h sh.local.h sh.char.h
- + sh.char.o: sh.char.h
- + sh.dir.o: sh.h sh.local.h sh.dir.h
- + sh.dol.o: sh.h sh.local.h sh.char.h
- + sh.err.o: sh.h sh.local.h sh.char.h
- + sh.exec.o: sh.h sh.local.h sh.char.h
- + sh.exp.o: sh.h sh.local.h sh.char.h
- + sh.file.o: sh.h sh.local.h sh.char.h
- + sh.func.o: sh.h sh.local.h sh.char.h
- + sh.glob.o: sh.h sh.local.h sh.char.h
- + sh.hist.o: sh.h sh.local.h sh.char.h
- + sh.init.o: sh.local.h
- + sh.lex.o: sh.h sh.local.h sh.char.h
- + sh.misc.o: sh.h sh.local.h sh.char.h
- + sh.parse.o: sh.h sh.local.h sh.char.h
- + sh.print.o: sh.h sh.local.h sh.char.h
- + sh.proc.o: sh.h sh.local.h sh.dir.h sh.proc.h sh.char.h
- + sh.sem.o: sh.h sh.local.h sh.proc.h sh.char.h
- + sh.set.o: sh.h sh.local.h sh.char.h
- + sh.time.o: sh.h sh.local.h sh.char.h
- *** ed.init.c Thu Sep 24 15:24:43 1987
- --- /usr/src/local/tcsh/ed.init.c Mon Aug 31 09:26:09 1987
- ***************
- *** 86,92
- nlc.t_lnextc = CTRL(v); /* literal next character */
-
- # ifdef SIGWINCH
- ! sigset(SIGWINCH, window_change); /* for window systems */
- # endif
- # endif OREO
- #else SVID
-
- --- 86,92 -----
- nlc.t_lnextc = CTRL(v); /* literal next character */
-
- # ifdef SIGWINCH
- ! signal(SIGWINCH, window_change); /* for window systems */
- # endif
- # endif OREO
- #else SVID
- ***************
- *** 135,141
- nlc.t_lnextc = CTRL(v); /* literal next character */
-
- # ifdef SIGWINCH
- ! sigset(SIGWINCH, window_change); /* for window systems */
- # endif
- #endif SVID
- }
-
- --- 135,141 -----
- nlc.t_lnextc = CTRL(v); /* literal next character */
-
- # ifdef SIGWINCH
- ! signal(SIGWINCH, window_change); /* for window systems */
- # endif
- #endif SVID
- }
- ***************
- *** 190,196
- }
-
- xb.sg_erase = '\177'; /* del prev. char == DEL */
- ! xb.sg_kill = CTRL(w); /* special case of del region */
-
- xtc.t_intrc = CTRL(c); /* SIGINTR */
- xtc.t_quitc = CTRL(\\); /* SIGQUIT */
-
- --- 190,196 -----
- }
-
- xb.sg_erase = '\177'; /* del prev. char == DEL */
- ! xb.sg_kill = CTRL(u); /* special case of del region */
-
- xtc.t_intrc = CTRL(c); /* SIGINTR */
- xtc.t_quitc = CTRL(\\); /* SIGQUIT */
- *** ed.inputl.c Thu Sep 24 15:24:45 1987
- --- /usr/src/local/tcsh/ed.inputl.c Thu Sep 17 23:24:16 1987
- ***************
- *** 212,218
-
- hp = Histlist.Hnext;
- if (hp == (struct Hist *)0) {
- ! printf ("no hp\n");
- Beep();
- return;
- }
-
- --- 212,218 -----
-
- hp = Histlist.Hnext;
- if (hp == (struct Hist *)0) {
- ! printf ("No history pointer, probably no history\n");
- Beep();
- return;
- }
- *** ed.screen.c Thu Sep 24 15:25:04 1987
- --- /usr/src/local/tcsh/ed.screen.c Mon Aug 17 23:51:23 1987
- ***************
- *** 55,61
-
- if (where > TermV) {
- #ifdef DEBUG_SCREEN
- ! printf ("MoveToLine: where is riduculous: %d\r\n", where);
- flush();
- #endif
- return;
-
- --- 55,61 -----
-
- if (where > TermV) {
- #ifdef DEBUG_SCREEN
- ! printf ("MoveToLine: where is ridiculous: %d\r\n", where);
- flush();
- #endif
- return;
- ***************
- *** 240,245
- char *area = buffer;
- char *MyTerm;
- char *getenv();
-
- #ifdef SIGWINCH
- sighold(SIGWINCH); /* don't want to confuse things here */
-
- --- 240,246 -----
- char *area = buffer;
- char *MyTerm;
- char *getenv();
- + int omask;
-
- #ifdef SIGWINCH
- omask = sighold(SIGWINCH); /* don't want to confuse things here */
- ***************
- *** 242,248
- char *getenv();
-
- #ifdef SIGWINCH
- ! sighold(SIGWINCH); /* don't want to confuse things here */
- #endif
-
- MyTerm = getenv("TERM");
-
- --- 243,249 -----
- int omask;
-
- #ifdef SIGWINCH
- ! omask = sighold(SIGWINCH); /* don't want to confuse things here */
- #endif
-
- MyTerm = getenv("TERM");
- ***************
- *** 355,361
- ClearDisp();
-
- #ifdef SIGWINCH
- ! sigrelse(SIGWINCH); /* can change it again */
- #endif
- }
-
-
- --- 356,362 -----
- ClearDisp();
-
- #ifdef SIGWINCH
- ! sigsetmask(omask);
- #endif
- }
-
- ***************
- *** 396,401
- ClearDisp();
-
- #ifdef SIGWINCH
- ! sigrelse(SIGWINCH); /* can change it again */
- #endif
- }
-
- --- 397,403 -----
- ClearDisp();
-
- #ifdef SIGWINCH
- ! (void) sigsetmask(sigblock(0) & ~sigmask(SIGWINCH));
- #endif
- }
-
- ***************
- *** 399,401
- sigrelse(SIGWINCH); /* can change it again */
- #endif
- }
-
- --- 400,409 -----
- (void) sigsetmask(sigblock(0) & ~sigmask(SIGWINCH));
- #endif
- }
- +
- +
- +
- +
- +
- +
- +
- *** pwprintf.c Thu Sep 24 15:25:07 1987
- --- /usr/src/local/tcsh/pwprintf.c Mon Aug 17 22:24:47 1987
- ***************
- *** 1,7
- /* A public-domain, minimal printf routine that prints through the putchar()
- routine. Feel free to use for anything... -- 7/17/87 Paul Placeway */
-
- ! #include <ctype.h>
- #include <varargs.h>
-
- /* use varargs since it's the RIGHT WAY, and assuming things about parameters
-
- --- 1,9 -----
- /* A public-domain, minimal printf routine that prints through the putchar()
- routine. Feel free to use for anything... -- 7/17/87 Paul Placeway */
-
- ! #include "sh.h"
- ! /*#include <ctype.h>*/
- ! #include "sh.char.h"
- #include <varargs.h>
-
- /* use varargs since it's the RIGHT WAY, and assuming things about parameters
- *** sh.nfunc.c Thu Sep 24 15:24:30 1987
- --- /usr/src/local/tcsh/sh.nfunc.c Mon Aug 17 23:19:24 1987
- ***************
- *** 7,12
- #include "tw.h"
-
- #include <sys/ioctl.h>
-
- static int parsekey();
- static char *unparsekey();
-
- --- 7,13 -----
- #include "tw.h"
-
- #include <sys/ioctl.h>
- + #include "sh.char.h"
-
- static int parsekey();
- static char *unparsekey();
- ***************
- *** 11,16
- static int parsekey();
- static char *unparsekey();
-
- /*
- * Tops-C shell
- */
-
- --- 12,19 -----
- static int parsekey();
- static char *unparsekey();
-
- + extern int tglob(), trim();
- +
- /*
- * Tops-C shell
- */
- ***************
- *** 344,350
- struct stat statb;
-
- if (setintr)
- ! sigrelse(SIGINT);
-
- if (*++v == NULL) {
- t_search("", (char *)0, LIST, 0, 0);
-
- --- 347,353 -----
- struct stat statb;
-
- if (setintr)
- ! (void) sigsetmask(sigblock(0) & ~sigmask(SIGINT));
-
- if (*++v == NULL) {
- t_search("", (char *)0, LIST, 0, 0);
- ***************
- *** 356,362
- if (v == 0)
- bferr("No match");
- } else
- ! scan(v, trim);
- k = 0;
- if (*(v+1))
- f = 1;
-
- --- 359,368 -----
- if (v == 0)
- bferr("No match");
- } else
- ! /*
- ! scan(v, trim);
- ! */
- ! trim(v);
- k = 0;
- if (*(v+1))
- f = 1;
- *** tw.h Thu Sep 24 15:25:11 1987
- --- /usr/src/local/tcsh/tw.h Mon Aug 17 23:15:06 1987
- ***************
- *** 1,3
- #ifdef MAKE_TWENEX
-
- #define FREE_ITEMS(items,num)\
-
- --- 1,4 -----
- +
- #ifdef MAKE_TWENEX
-
- #define FREE_ITEMS(items,num)\
- ***************
- *** 2,8
-
- #define FREE_ITEMS(items,num)\
- {\
- ! sighold (SIGINT);\
- free_items (items,num);\
- items = NULL;\
- sigrelse (SIGINT);\
-
- --- 3,10 -----
-
- #define FREE_ITEMS(items,num)\
- {\
- ! int omask;\
- ! omask = sighold (SIGINT);\
- free_items (items,num);\
- items = NULL;\
- sigsetmask(omask);\
- ***************
- *** 5,11
- sighold (SIGINT);\
- free_items (items,num);\
- items = NULL;\
- ! sigrelse (SIGINT);\
- }
-
- #define FREE_DIR(fd)\
-
- --- 7,13 -----
- omask = sighold (SIGINT);\
- free_items (items,num);\
- items = NULL;\
- ! sigsetmask(omask);\
- }
-
- #define FREE_DIR(fd)\
- ***************
- *** 10,16
-
- #define FREE_DIR(fd)\
- {\
- ! sighold (SIGINT);\
- closedir (fd);\
- fd = NULL;\
- sigrelse (SIGINT);\
-
- --- 12,19 -----
-
- #define FREE_DIR(fd)\
- {\
- ! int omask;\
- ! omask = sighold (SIGINT);\
- closedir (fd);\
- fd = NULL;\
- sigsetmask(omask);\
- ***************
- *** 13,19
- sighold (SIGINT);\
- closedir (fd);\
- fd = NULL;\
- ! sigrelse (SIGINT);\
- }
-
- #define TRUE 1
-
- --- 16,22 -----
- omask = sighold (SIGINT);\
- closedir (fd);\
- fd = NULL;\
- ! sigsetmask(omask);\
- }
-
- #define TRUE 1
- *** tw.help.c Thu Sep 24 15:25:13 1987
- --- /usr/src/local/tcsh/tw.help.c Mon Aug 17 23:16:22 1987
- ***************
- *** 3,9
- #include "tw.h"
- #include "sh.h"
-
- -
- /* actually look up and print documentation on a file. Look down the path
- for an approiate file, then print it. Note that the printing is NOT
- PAGED. This is because the function is NOT ment to look at manual pages,
-
- --- 3,8 -----
- #include "tw.h"
- #include "sh.h"
-
- /* actually look up and print documentation on a file. Look down the path
- for an appropriate file, then print it. Note that the printing is NOT
- PAGED. This is because the function is NOT ment to look at manual pages,
- ***************
- *** 5,11
-
-
- /* actually look up and print documentation on a file. Look down the path
- ! for an approiate file, then print it. Note that the printing is NOT
- PAGED. This is because the function is NOT ment to look at manual pages,
- it only does so if there is no .help file to look in. */
-
-
- --- 4,10 -----
- #include "sh.h"
-
- /* actually look up and print documentation on a file. Look down the path
- ! for an appropriate file, then print it. Note that the printing is NOT
- PAGED. This is because the function is NOT ment to look at manual pages,
- it only does so if there is no .help file to look in. */
-
- *** tw.init.c Thu Sep 24 15:25:15 1987
- --- /usr/src/local/tcsh/tw.init.c Thu Sep 24 15:45:32 1987
- ***************
- *** 120,125
- register char *cp;
- register struct biltins *bptr;
-
- for (bptr = bfunc; cp = bptr->bname; bptr++) {
- tw_add_comm_name (cp);
- }
-
- --- 120,127 -----
- register char *cp;
- register struct biltins *bptr;
-
- + for (bptr = bfunc; bptr < &bfunc[nbfunc]; bptr++) {
- + #ifdef OUTDEF
- for (bptr = bfunc; cp = bptr->bname; bptr++) {
- #endif
- tw_add_comm_name (cp);
- ***************
- *** 121,126
- register struct biltins *bptr;
-
- for (bptr = bfunc; cp = bptr->bname; bptr++) {
- tw_add_comm_name (cp);
- }
- }
-
- --- 123,129 -----
- for (bptr = bfunc; bptr < &bfunc[nbfunc]; bptr++) {
- #ifdef OUTDEF
- for (bptr = bfunc; cp = bptr->bname; bptr++) {
- + #endif
- tw_add_comm_name (cp);
- }
- }
- ***************
- *** 127,132
-
- tw_add_aliases ()
- {
- register struct varent *vp;
-
- vp = &aliases;
-
- --- 130,161 -----
-
- tw_add_aliases ()
- {
- + register struct varent *p;
- + register struct varent *c;
- +
- + p = &aliases;
- + for (;;) {
- + while (p->v_left)
- + p = p->v_left;
- + x:
- + if (p->v_parent == 0) /* is it the header? */
- + return;
- + tw_add_comm_name(p->v_name);
- + if (p->v_right) {
- + p = p->v_right;
- + continue;
- + }
- + do {
- + c = p;
- + p = p->v_parent;
- + } while (p->v_right == c);
- + goto x;
- + }
- + }
- +
- + #ifdef OUTDEF
- + tw_add_aliases ()
- + {
- register struct varent *vp;
-
- vp = &aliases;
- ***************
- *** 136,138
- }
-
- }
-
- --- 165,169 -----
- }
-
- }
- + #endif
- +
- *** tw.parse.c Thu Sep 24 15:25:19 1987
- --- /usr/src/local/tcsh/tw.parse.c Thu Sep 24 15:46:59 1987
- ***************
- *** 64,70
- /* printf ("\ncmd_st:%s:\nword_start:%s:\n", cmd_st, word_start); */
- /* for debugging */
- if (command == RECOGNIZE) {
- ! search_ret = t_search (word, wp, command, space_left, is_a_cmd);
- if (InsertStr(wp) < 0) /* put it in the input buffer */
- return 2; /* error inserting */
- return search_ret;
-
- --- 64,70 -----
- /* printf ("\ncmd_st:%s:\nword_start:%s:\n", cmd_st, word_start); */
- /* for debugging */
- if (command == RECOGNIZE) {
- ! search_ret = t_search (word, wp, command, space_left, is_a_cmd);
- if (InsertStr(wp) < 0) /* put it in the input buffer */
- return 2; /* error inserting */
- return search_ret;
- ***************
- *** 200,206
- numitems = 0;
- if (dir_fd != NULL)
- FREE_DIR (dir_fd);
- -
- looking_for_lognames = (*word == '~') && (index (word, '/') == NULL);
- looking_for_command &= (*word != '~') && (index (word, '/') == NULL);
-
-
- --- 200,205 -----
- numitems = 0;
- if (dir_fd != NULL)
- FREE_DIR (dir_fd);
- looking_for_lognames = (*word == '~') && (index (word, '/') == NULL);
- looking_for_command &= (*word != '~') && (index (word, '/') == NULL);
-
- ***************
- *** 206,212
-
- dot_got = FALSE;
- stat (".", &dot_statb);
- -
- if (looking_for_lognames) { /* Looking for login names? */
- setpwent (); /* Open passwd file */
- copyn (name, &word[1], MAXNAMLEN); /* name sans ~ */
-
- --- 205,210 -----
-
- dot_got = FALSE;
- stat (".", &dot_statb);
- if (looking_for_lognames) { /* Looking for login names? */
- setpwent (); /* Open passwd file */
- copyn (name, &word[1], MAXNAMLEN); /* name sans ~ */
- *** tw.spell.c Thu Sep 24 15:24:53 1987
- --- /usr/src/local/tcsh/tw.spell.c Mon Aug 17 23:00:23 1987
- ***************
- *** 1,4
- - #include "sh.h"
- #define MAKE_TWENEX
- #include "tw.h"
-
-
- --- 1,3 -----
- #define MAKE_TWENEX
- #include "tw.h"
-
-