|
|
1.1 root 1:
2: Index: port.c
3: *** /tmp/,RCSt1a17133 Sun Feb 12 14:08:42 1989
4: --- port.c Sun Feb 12 14:02:30 1989
5: ***************
6: *** 1,6
7: /* $Source: /src386/usr/bin/pax/patch3,v $
8: *
9: ! * $Revision: 1.1 $
10: *
11: * port.c - These are routines not available in all environments.
12: *
13:
14: --- 1,6 -----
15: /* $Source: /src386/usr/bin/pax/patch3,v $
16: *
17: ! * $Revision: 1.1 $
18: *
19: * port.c - These are routines not available in all environments.
20: *
21: ***************
22: *** 30,36
23: *
24: * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
25: * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
26: ! * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
27: *
28: * $Log: patch3,v $
29: # Revision 1.1 92/08/28 08:02:40 bin
30: # Initial revision
31: #
32: * Revision 1.1 88/12/23 18:02:29 mark
33:
34: --- 30,36 -----
35: *
36: * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
37: * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
38: ! * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
39: *
40: * $Log: patch3,v $
41: # Revision 1.1 92/08/28 08:02:40 bin
42: # Initial revision
43: #
44: * Revision 1.2 89/02/12 10:05:35 mark
45: ***************
46: *** 33,38
47: * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
48: *
49: * $Log: patch3,v $
50: # Revision 1.1 92/08/28 08:02:40 bin
51: # Initial revision
52: #
53: * Revision 1.1 88/12/23 18:02:29 mark
54: * Initial revision
55: *
56:
57: --- 33,41 -----
58: * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
59: *
60: * $Log: patch3,v $
61: # Revision 1.1 92/08/28 08:02:40 bin
62: # Initial revision
63: #
64: + * Revision 1.2 89/02/12 10:05:35 mark
65: + * 1.2 release fixes
66: + *
67: * Revision 1.1 88/12/23 18:02:29 mark
68: * Initial revision
69: *
70: ***************
71: *** 39,45
72: */
73:
74: #ifndef lint
75: ! static char *ident = "$Id: patch3,v 1.1 92/08/28 08:02:40 bin Exp Locker: bin $";
76: static char *copyright = "Copyright (c) 1989 Mark H. Colburn.\nAll rights reserved.\n";
77: #endif /* ! lint */
78:
79:
80: --- 42,48 -----
81: */
82:
83: #ifndef lint
84: ! static char *ident = "$Id: patch3,v 1.1 92/08/28 08:02:40 bin Exp Locker: bin $";
85: static char *copyright = "Copyright (c) 1989 Mark H. Colburn.\nAll rights reserved.\n";
86: #endif /* ! lint */
87:
88: ***************
89: *** 55,62
90: * the list in the #if !defined()'s below and it'll all be skipped.
91: */
92:
93: ! #if !defined(mc300) && !defined(mc500) && !defined(mc700) && \
94: ! !defined(BSD)
95:
96: /* mkdir - make a directory
97: *
98:
99: --- 58,64 -----
100: * the list in the #if !defined()'s below and it'll all be skipped.
101: */
102:
103: ! #if !defined(mc300) && !defined(mc500) && !defined(mc700) && !defined(BSD)
104:
105: /* mkdir - make a directory
106: *
107: Index: port.h
108: *** /tmp/,RCSt1a17138 Sun Feb 12 14:08:49 1989
109: --- port.h Sun Feb 12 14:02:31 1989
110: ***************
111: *** 1,6
112: /* $Source: /src386/usr/bin/pax/patch3,v $
113: *
114: ! * $Revision: 1.1 $
115: *
116: * port.h - defnitions for portability library
117: *
118:
119: --- 1,6 -----
120: /* $Source: /src386/usr/bin/pax/patch3,v $
121: *
122: ! * $Revision: 1.1 $
123: *
124: * port.h - defnitions for portability library
125: *
126: ***************
127: *** 30,36
128: *
129: * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
130: * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
131: ! * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
132: */
133:
134: #ifndef _PAX_PORT_H
135:
136: --- 30,36 -----
137: *
138: * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
139: * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
140: ! * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
141: */
142:
143: #ifndef _PAX_PORT_H
144: Index: regexp.c
145: *** /tmp/,RCSt1a17143 Sun Feb 12 14:08:58 1989
146: --- regexp.c Sun Feb 12 14:02:34 1989
147: ***************
148: *** 1,6
149: /* $Source: /src386/usr/bin/pax/patch3,v $
150: *
151: ! * $Revision: 1.1 $
152: *
153: * regexp.c - regular expression matching
154: *
155:
156: --- 1,6 -----
157: /* $Source: /src386/usr/bin/pax/patch3,v $
158: *
159: ! * $Revision: 1.1 $
160: *
161: * regexp.c - regular expression matching
162: *
163: ***************
164: *** 43,48
165: * Sponsored by The USENIX Association for public distribution.
166: *
167: * $Log: patch3,v $
168: # Revision 1.1 92/08/28 08:02:40 bin
169: # Initial revision
170: #
171: * Revision 1.1 88/12/23 18:02:32 mark
172: * Initial revision
173: *
174:
175: --- 43,51 -----
176: * Sponsored by The USENIX Association for public distribution.
177: *
178: * $Log: patch3,v $
179: # Revision 1.1 92/08/28 08:02:40 bin
180: # Initial revision
181: #
182: + * Revision 1.2 89/02/12 10:05:39 mark
183: + * 1.2 release fixes
184: + *
185: * Revision 1.1 88/12/23 18:02:32 mark
186: * Initial revision
187: *
188: ***************
189: *** 53,59
190: #include "pax.h"
191:
192: #ifndef lint
193: ! static char *Ident = "$Id: patch3,v 1.1 92/08/28 08:02:40 bin Exp Locker: bin $";
194: #endif
195:
196:
197:
198: --- 56,62 -----
199: #include "pax.h"
200:
201: #ifndef lint
202: ! static char *Ident = "$Id: patch3,v 1.1 92/08/28 08:02:40 bin Exp Locker: bin $";
203: #endif
204:
205:
206: ***************
207: *** 224,230
208: int flags;
209: extern char *malloc();
210:
211: ! if (exp == NULL)
212: FAIL("NULL argument");
213:
214: /* First pass: determine size, legality. */
215:
216: --- 227,233 -----
217: int flags;
218: extern char *malloc();
219:
220: ! if (exp == (char *)NULL)
221: FAIL("NULL argument");
222:
223: /* First pass: determine size, legality. */
224: ***************
225: *** 233,240
226: regsize = 0L;
227: regcode = ®dummy;
228: regc(MAGIC);
229: ! if (reg(0, &flags) == NULL)
230: ! return (NULL);
231:
232: /* Small enough for pointer-storage convention? */
233: if (regsize >= 32767L) /* Probably could be 65535L. */
234:
235: --- 236,243 -----
236: regsize = 0L;
237: regcode = ®dummy;
238: regc(MAGIC);
239: ! if (reg(0, &flags) == (char *)NULL)
240: ! return ((regexp *)NULL);
241:
242: /* Small enough for pointer-storage convention? */
243: if (regsize >= 32767L) /* Probably could be 65535L. */
244: ***************
245: *** 242,248
246:
247: /* Allocate space. */
248: r = (regexp *) malloc(sizeof(regexp) + (unsigned) regsize);
249: ! if (r == NULL)
250: FAIL("out of space");
251:
252: /* Second pass: emit code. */
253:
254: --- 245,251 -----
255:
256: /* Allocate space. */
257: r = (regexp *) malloc(sizeof(regexp) + (unsigned) regsize);
258: ! if (r == (regexp *) NULL)
259: FAIL("out of space");
260:
261: /* Second pass: emit code. */
262: ***************
263: *** 251,257
264: regcode = r->program;
265: regc(MAGIC);
266: if (reg(0, &flags) == NULL)
267: ! return (NULL);
268:
269: /* Dig out information for optimizations. */
270: r->regstart = '\0'; /* Worst-case defaults. */
271:
272: --- 254,260 -----
273: regcode = r->program;
274: regc(MAGIC);
275: if (reg(0, &flags) == NULL)
276: ! return ((regexp *) NULL);
277:
278: /* Dig out information for optimizations. */
279: r->regstart = '\0'; /* Worst-case defaults. */
280: ***************
281: *** 320,326
282: regnpar++;
283: ret = regnode(OPEN + parno);
284: } else
285: ! ret = NULL;
286:
287: /* Pick up the branches, linking them together. */
288: br = regbranch(&flags);
289:
290: --- 323,329 -----
291: regnpar++;
292: ret = regnode(OPEN + parno);
293: } else
294: ! ret = (char *)NULL;
295:
296: /* Pick up the branches, linking them together. */
297: br = regbranch(&flags);
298: ***************
299: *** 324,332
300:
301: /* Pick up the branches, linking them together. */
302: br = regbranch(&flags);
303: ! if (br == NULL)
304: ! return (NULL);
305: ! if (ret != NULL)
306: regtail(ret, br); /* OPEN -> first. */
307: else
308: ret = br;
309:
310: --- 327,335 -----
311:
312: /* Pick up the branches, linking them together. */
313: br = regbranch(&flags);
314: ! if (br == (char *)NULL)
315: ! return ((char *)NULL);
316: ! if (ret != (char *)NULL)
317: regtail(ret, br); /* OPEN -> first. */
318: else
319: ret = br;
320: ***************
321: *** 336,343
322: while (*regparse == '|') {
323: regparse++;
324: br = regbranch(&flags);
325: ! if (br == NULL)
326: ! return (NULL);
327: regtail(ret, br); /* BRANCH -> BRANCH. */
328: if (!(flags & HASWIDTH))
329: *flagp &= ~HASWIDTH;
330:
331: --- 339,346 -----
332: while (*regparse == '|') {
333: regparse++;
334: br = regbranch(&flags);
335: ! if (br == (char *)NULL)
336: ! return ((char *)NULL);
337: regtail(ret, br); /* BRANCH -> BRANCH. */
338: if (!(flags & HASWIDTH))
339: *flagp &= ~HASWIDTH;
340: ***************
341: *** 349,355
342: regtail(ret, ender);
343:
344: /* Hook the tails of the branches to the closing node. */
345: ! for (br = ret; br != NULL; br = regnext(br))
346: regoptail(br, ender);
347:
348: /* Check for proper termination. */
349:
350: --- 352,358 -----
351: regtail(ret, ender);
352:
353: /* Hook the tails of the branches to the closing node. */
354: ! for (br = ret; br != (char *)NULL; br = regnext(br))
355: regoptail(br, ender);
356:
357: /* Check for proper termination. */
358: ***************
359: *** 381,387
360: *flagp = WORST; /* Tentatively. */
361:
362: ret = regnode(BRANCH);
363: ! chain = NULL;
364: while (*regparse != '\0' && *regparse != '|' && *regparse != ')') {
365: latest = regpiece(&flags);
366: if (latest == NULL)
367:
368: --- 384,390 -----
369: *flagp = WORST; /* Tentatively. */
370:
371: ret = regnode(BRANCH);
372: ! chain = (char *)NULL;
373: while (*regparse != '\0' && *regparse != '|' && *regparse != ')') {
374: latest = regpiece(&flags);
375: if (latest == (char *)NULL)
376: ***************
377: *** 384,391
378: chain = NULL;
379: while (*regparse != '\0' && *regparse != '|' && *regparse != ')') {
380: latest = regpiece(&flags);
381: ! if (latest == NULL)
382: ! return (NULL);
383: *flagp |= flags & HASWIDTH;
384: if (chain == NULL) /* First piece. */
385: *flagp |= flags & SPSTART;
386:
387: --- 387,394 -----
388: chain = (char *)NULL;
389: while (*regparse != '\0' && *regparse != '|' && *regparse != ')') {
390: latest = regpiece(&flags);
391: ! if (latest == (char *)NULL)
392: ! return ((char *)NULL);
393: *flagp |= flags & HASWIDTH;
394: if (chain == (char *)NULL) /* First piece. */
395: *flagp |= flags & SPSTART;
396: ***************
397: *** 387,393
398: if (latest == NULL)
399: return (NULL);
400: *flagp |= flags & HASWIDTH;
401: ! if (chain == NULL) /* First piece. */
402: *flagp |= flags & SPSTART;
403: else
404: regtail(chain, latest);
405:
406: --- 390,396 -----
407: if (latest == (char *)NULL)
408: return ((char *)NULL);
409: *flagp |= flags & HASWIDTH;
410: ! if (chain == (char *)NULL) /* First piece. */
411: *flagp |= flags & SPSTART;
412: else
413: regtail(chain, latest);
414: ***************
415: *** 393,399
416: regtail(chain, latest);
417: chain = latest;
418: }
419: ! if (chain == NULL) /* Loop ran zero times. */
420: regnode(NOTHING);
421:
422: return (ret);
423:
424: --- 396,402 -----
425: regtail(chain, latest);
426: chain = latest;
427: }
428: ! if (chain == (char *)NULL) /* Loop ran zero times. */
429: regnode(NOTHING);
430:
431: return (ret);
432: ***************
433: *** 416,423
434: int flags;
435:
436: ret = regatom(&flags);
437: ! if (ret == NULL)
438: ! return (NULL);
439:
440: op = *regparse;
441: if (!ISMULT(op)) {
442:
443: --- 419,426 -----
444: int flags;
445:
446: ret = regatom(&flags);
447: ! if (ret == (char *)NULL)
448: ! return ((char *)NULL);
449:
450: op = *regparse;
451: if (!ISMULT(op)) {
452: ***************
453: *** 509,516
454: break;
455: case '(':
456: ret = reg(1, &flags);
457: ! if (ret == NULL)
458: ! return (NULL);
459: *flagp |= flags & (HASWIDTH | SPSTART);
460: break;
461: case '\0':
462:
463: --- 512,519 -----
464: break;
465: case '(':
466: ret = reg(1, &flags);
467: ! if (ret == (char *)NULL)
468: ! return ((char *)NULL);
469: *flagp |= flags & (HASWIDTH | SPSTART);
470: break;
471: case '\0':
472: ***************
473: *** 638,644
474: scan = p;
475: for (;;) {
476: temp = regnext(scan);
477: ! if (temp == NULL)
478: break;
479: scan = temp;
480: }
481:
482: --- 641,647 -----
483: scan = p;
484: for (;;) {
485: temp = regnext(scan);
486: ! if (temp == (char *)NULL)
487: break;
488: scan = temp;
489: }
490: ***************
491: *** 659,665
492: char *val;
493: {
494: /* "Operandless" and "op != BRANCH" are synonymous in practice. */
495: ! if (p == NULL || p == ®dummy || OP(p) != BRANCH)
496: return;
497: regtail(OPERAND(p), val);
498: }
499:
500: --- 662,668 -----
501: char *val;
502: {
503: /* "Operandless" and "op != BRANCH" are synonymous in practice. */
504: ! if (p == (char *)NULL || p == ®dummy || OP(p) != BRANCH)
505: return;
506: regtail(OPERAND(p), val);
507: }
508: ***************
509: *** 699,705
510: register char *s;
511:
512: /* Be paranoid... */
513: ! if (prog == NULL || string == NULL) {
514: regerror("NULL parameter");
515: return (0);
516: }
517:
518: --- 702,708 -----
519: register char *s;
520:
521: /* Be paranoid... */
522: ! if (prog == (regexp *)NULL || string == (char *)NULL) {
523: regerror("NULL parameter");
524: return (0);
525: }
526: ***************
527: *** 709,715
528: return (0);
529: }
530: /* If there is a "must appear" string, look for it. */
531: ! if (prog->regmust != NULL) {
532: s = string;
533: while ((s = strchr(s, prog->regmust[0])) != NULL) {
534: if (strncmp(s, prog->regmust, prog->regmlen) == 0)
535:
536: --- 712,718 -----
537: return (0);
538: }
539: /* If there is a "must appear" string, look for it. */
540: ! if (prog->regmust != (char *)NULL) {
541: s = string;
542: while ((s = strchr(s, prog->regmust[0])) != (char *)NULL) {
543: if (strncmp(s, prog->regmust, prog->regmlen) == 0)
544: ***************
545: *** 711,717
546: /* If there is a "must appear" string, look for it. */
547: if (prog->regmust != NULL) {
548: s = string;
549: ! while ((s = strchr(s, prog->regmust[0])) != NULL) {
550: if (strncmp(s, prog->regmust, prog->regmlen) == 0)
551: break; /* Found it. */
552: s++;
553:
554: --- 714,720 -----
555: /* If there is a "must appear" string, look for it. */
556: if (prog->regmust != (char *)NULL) {
557: s = string;
558: ! while ((s = strchr(s, prog->regmust[0])) != (char *)NULL) {
559: if (strncmp(s, prog->regmust, prog->regmlen) == 0)
560: break; /* Found it. */
561: s++;
562: ***************
563: *** 716,722
564: break; /* Found it. */
565: s++;
566: }
567: ! if (s == NULL) /* Not present. */
568: return (0);
569: }
570: /* Mark beginning of line for ^ . */
571:
572: --- 719,725 -----
573: break; /* Found it. */
574: s++;
575: }
576: ! if (s == (char *)NULL) /* Not present. */
577: return (0);
578: }
579: /* Mark beginning of line for ^ . */
580: ***************
581: *** 730,736
582: s = string;
583: if (prog->regstart != '\0')
584: /* We know what char it must start with. */
585: ! while ((s = strchr(s, prog->regstart)) != NULL) {
586: if (regtry(prog, s))
587: return (1);
588: s++;
589:
590: --- 733,739 -----
591: s = string;
592: if (prog->regstart != '\0')
593: /* We know what char it must start with. */
594: ! while ((s = strchr(s, prog->regstart)) != (char *)NULL) {
595: if (regtry(prog, s))
596: return (1);
597: s++;
598: ***************
599: *** 772,779
600: sp = prog->startp;
601: ep = prog->endp;
602: for (i = NSUBEXP; i > 0; i--) {
603: ! *sp++ = NULL;
604: ! *ep++ = NULL;
605: }
606: if (regmatch(prog->program + 1)) {
607: prog->startp[0] = string;
608:
609: --- 775,782 -----
610: sp = prog->startp;
611: ep = prog->endp;
612: for (i = NSUBEXP; i > 0; i--) {
613: ! *sp++ = (char *)NULL;
614: ! *ep++ = (char *)NULL;
615: }
616: if (regmatch(prog->program + 1)) {
617: prog->startp[0] = string;
618: ***************
619: *** 809,815
620:
621: scan = prog;
622: #ifdef DEBUG
623: ! if (scan != NULL && regnarrate)
624: fprintf(stderr, "%s(\n", regprop(scan));
625: #endif
626: while (scan != NULL) {
627:
628: --- 812,818 -----
629:
630: scan = prog;
631: #ifdef DEBUG
632: ! if (scan != (char *)NULL && regnarrate)
633: fprintf(stderr, "%s(\n", regprop(scan));
634: #endif
635: while (scan != (char *)NULL) {
636: ***************
637: *** 812,818
638: if (scan != NULL && regnarrate)
639: fprintf(stderr, "%s(\n", regprop(scan));
640: #endif
641: ! while (scan != NULL) {
642: #ifdef DEBUG
643: if (regnarrate)
644: fprintf(stderr, "%s...\n", regprop(scan));
645:
646: --- 815,821 -----
647: if (scan != (char *)NULL && regnarrate)
648: fprintf(stderr, "%s(\n", regprop(scan));
649: #endif
650: ! while (scan != (char *)NULL) {
651: #ifdef DEBUG
652: if (regnarrate)
653: fprintf(stderr, "%s...\n", regprop(scan));
654: ***************
655: *** 848,854
656: }
657: break;
658: case ANYOF:
659: ! if (*reginput == '\0' || strchr(OPERAND(scan), *reginput) == NULL)
660: return (0);
661: reginput++;
662: break;
663:
664: --- 851,858 -----
665: }
666: break;
667: case ANYOF:
668: ! if (*reginput == '\0' ||
669: ! strchr(OPERAND(scan), *reginput) == (char *)NULL)
670: return (0);
671: reginput++;
672: break;
673: ***************
674: *** 853,859
675: reginput++;
676: break;
677: case ANYBUT:
678: ! if (*reginput == '\0' || strchr(OPERAND(scan), *reginput) != NULL)
679: return (0);
680: reginput++;
681: break;
682:
683: --- 857,864 -----
684: reginput++;
685: break;
686: case ANYBUT:
687: ! if (*reginput == '\0' ||
688: ! strchr(OPERAND(scan), *reginput) != (char *)NULL)
689: return (0);
690: reginput++;
691: break;
692: ***************
693: *** 881,887
694: * Don't set startp if some later invocation of the same
695: * parentheses already has.
696: */
697: ! if (regstartp[no] == NULL)
698: regstartp[no] = save;
699: return (1);
700: } else
701:
702: --- 886,892 -----
703: * Don't set startp if some later invocation of the same
704: * parentheses already has.
705: */
706: ! if (regstartp[no] == (char *)NULL)
707: regstartp[no] = save;
708: return (1);
709: } else
710: ***************
711: *** 908,914
712: * Don't set endp if some later invocation of the same
713: * parentheses already has.
714: */
715: ! if (regendp[no] == NULL)
716: regendp[no] = save;
717: return (1);
718: } else
719:
720: --- 913,919 -----
721: * Don't set endp if some later invocation of the same
722: * parentheses already has.
723: */
724: ! if (regendp[no] == (char *)NULL)
725: regendp[no] = save;
726: return (1);
727: } else
728: ***************
729: *** 927,933
730: return (1);
731: reginput = save;
732: scan = regnext(scan);
733: ! } while (scan != NULL && OP(scan) == BRANCH);
734: return (0);
735: /* NOTREACHED */
736: }
737:
738: --- 932,938 -----
739: return (1);
740: reginput = save;
741: scan = regnext(scan);
742: ! } while (scan != (char *)NULL && OP(scan) == BRANCH);
743: return (0);
744: /* NOTREACHED */
745: }
746: ***************
747: *** 937,943
748: register char nextch;
749: register int no;
750: register char *save;
751: ! register int min;
752:
753: /*
754: * Lookahead to avoid useless match attempts when we know
755:
756: --- 942,948 -----
757: register char nextch;
758: register int no;
759: register char *save;
760: ! register int minimum;
761:
762: /*
763: * Lookahead to avoid useless match attempts when we know
764: ***************
765: *** 946,952
766: nextch = '\0';
767: if (OP(nxt) == EXACTLY)
768: nextch = *OPERAND(nxt);
769: ! min = (OP(scan) == STAR) ? 0 : 1;
770: save = reginput;
771: no = regrepeat(OPERAND(scan));
772: while (no >= min) {
773:
774: --- 951,957 -----
775: nextch = '\0';
776: if (OP(nxt) == EXACTLY)
777: nextch = *OPERAND(nxt);
778: ! minimum = (OP(scan) == STAR) ? 0 : 1;
779: save = reginput;
780: no = regrepeat(OPERAND(scan));
781: while (no >= minimum) {
782: ***************
783: *** 949,955
784: min = (OP(scan) == STAR) ? 0 : 1;
785: save = reginput;
786: no = regrepeat(OPERAND(scan));
787: ! while (no >= min) {
788: /* If it could work, try it. */
789: if (nextch == '\0' || *reginput == nextch)
790: if (regmatch(nxt))
791:
792: --- 954,960 -----
793: minimum = (OP(scan) == STAR) ? 0 : 1;
794: save = reginput;
795: no = regrepeat(OPERAND(scan));
796: ! while (no >= minimum) {
797: /* If it could work, try it. */
798: if (nextch == '\0' || *reginput == nextch)
799: if (regmatch(nxt))
800: ***************
801: *** 1013,1019
802: }
803: break;
804: case ANYOF:
805: ! while (*scan != '\0' && strchr(opnd, *scan) != NULL) {
806: count++;
807: scan++;
808: }
809:
810: --- 1018,1024 -----
811: }
812: break;
813: case ANYOF:
814: ! while (*scan != '\0' && strchr(opnd, *scan) != (char *)NULL) {
815: count++;
816: scan++;
817: }
818: ***************
819: *** 1019,1025
820: }
821: break;
822: case ANYBUT:
823: ! while (*scan != '\0' && strchr(opnd, *scan) == NULL) {
824: count++;
825: scan++;
826: }
827:
828: --- 1024,1030 -----
829: }
830: break;
831: case ANYBUT:
832: ! while (*scan != '\0' && strchr(opnd, *scan) == (char *)NULL) {
833: count++;
834: scan++;
835: }
836: ***************
837: *** 1052,1058
838: register int offset;
839:
840: if (p == ®dummy)
841: ! return (NULL);
842:
843: offset = NEXT(p);
844: if (offset == 0)
845:
846: --- 1057,1063 -----
847: register int offset;
848:
849: if (p == ®dummy)
850: ! return ((char *)NULL);
851:
852: offset = NEXT(p);
853: if (offset == 0)
854: ***************
855: *** 1056,1062
856:
857: offset = NEXT(p);
858: if (offset == 0)
859: ! return (NULL);
860:
861: if (OP(p) == BACK)
862: return (p - offset);
863:
864: --- 1061,1067 -----
865:
866: offset = NEXT(p);
867: if (offset == 0)
868: ! return ((char *)NULL);
869:
870: if (OP(p) == BACK)
871: return (p - offset);
872: ***************
873: *** 1093,1099
874: op = OP(s);
875: printf("%2d%s", s - r->program, regprop(s)); /* Where, what. */
876: nxt = regnext(s);
877: ! if (nxt == NULL) /* nxt ptr. */
878: printf("(0)");
879: else
880: printf("(%d)", (s - r->program) + (nxt - s));
881:
882: --- 1098,1104 -----
883: op = OP(s);
884: printf("%2d%s", s - r->program, regprop(s)); /* Where, what. */
885: nxt = regnext(s);
886: ! if (nxt == (char *)NULL) /* nxt ptr. */
887: printf("(0)");
888: else
889: printf("(%d)", (s - r->program) + (nxt - s));
890: ***************
891: *** 1114,1120
892: printf("start `%c' ", r->regstart);
893: if (r->reganch)
894: printf("anchored ");
895: ! if (r->regmust != NULL)
896: printf("must have \"%s\"", r->regmust);
897: printf("\n");
898: }
899:
900: --- 1119,1125 -----
901: printf("start `%c' ", r->regstart);
902: if (r->reganch)
903: printf("anchored ");
904: ! if (r->regmust != (char *)NULL)
905: printf("must have \"%s\"", r->regmust);
906: printf("\n");
907: }
908: ***************
909: *** 1179,1185
910: case OPEN + 8:
911: case OPEN + 9:
912: sprintf(buf + strlen(buf), "OPEN%d", OP(op) - OPEN);
913: ! p = NULL;
914: break;
915: case CLOSE + 1:
916: case CLOSE + 2:
917:
918: --- 1184,1190 -----
919: case OPEN + 8:
920: case OPEN + 9:
921: sprintf(buf + strlen(buf), "OPEN%d", OP(op) - OPEN);
922: ! p = (char *)NULL;
923: break;
924: case CLOSE + 1:
925: case CLOSE + 2:
926: ***************
927: *** 1191,1197
928: case CLOSE + 8:
929: case CLOSE + 9:
930: sprintf(buf + strlen(buf), "CLOSE%d", OP(op) - CLOSE);
931: ! p = NULL;
932: break;
933: case STAR:
934: p = "STAR";
935:
936: --- 1196,1202 -----
937: case CLOSE + 8:
938: case CLOSE + 9:
939: sprintf(buf + strlen(buf), "CLOSE%d", OP(op) - CLOSE);
940: ! p = (char *)NULL;
941: break;
942: case STAR:
943: p = "STAR";
944: ***************
945: *** 1200,1206
946: regerror("corrupted opcode");
947: break;
948: }
949: ! if (p != NULL)
950: strcat(buf, p);
951: return (buf);
952: }
953:
954: --- 1205,1211 -----
955: regerror("corrupted opcode");
956: break;
957: }
958: ! if (p != (char *)NULL)
959: strcat(buf, p);
960: return (buf);
961: }
962: ***************
963: *** 1269,1275
964: register int len;
965: extern char *strncpy();
966:
967: ! if (prog == NULL || source == NULL || dest == NULL) {
968: regerror("NULL parm to regsub");
969: return;
970: }
971:
972: --- 1274,1281 -----
973: register int len;
974: extern char *strncpy();
975:
976: ! if (prog == (regexp *)NULL ||
977: ! source == (char *)NULL || dest == (char *)NULL) {
978: regerror("NULL parm to regsub");
979: return;
980: }
981: ***************
982: *** 1291,1297
983: if (c == '\\' && (*src == '\\' || *src == '&'))
984: c = *src++;
985: *dst++ = c;
986: ! } else if (prog->startp[no] != NULL && prog->endp[no] != NULL) {
987: len = prog->endp[no] - prog->startp[no];
988: strncpy(dst, prog->startp[no], len);
989: dst += len;
990:
991: --- 1297,1304 -----
992: if (c == '\\' && (*src == '\\' || *src == '&'))
993: c = *src++;
994: *dst++ = c;
995: ! } else if (prog->startp[no] != (char *)NULL &&
996: ! prog->endp[no] != (char *)NULL) {
997: len = prog->endp[no] - prog->startp[no];
998: strncpy(dst, prog->startp[no], len);
999: dst += len;
1000: Index: replace.c
1001: *** /tmp/,RCSt1a17153 Sun Feb 12 14:09:24 1989
1002: --- replace.c Sun Feb 12 14:02:36 1989
1003: ***************
1004: *** 1,6
1005: /* $Source: /src386/usr/bin/pax/patch3,v $
1006: *
1007: ! * $Revision: 1.1 $
1008: *
1009: * replace.c - regular expression pattern replacement functions
1010: *
1011:
1012: --- 1,6 -----
1013: /* $Source: /src386/usr/bin/pax/patch3,v $
1014: *
1015: ! * $Revision: 1.1 $
1016: *
1017: * replace.c - regular expression pattern replacement functions
1018: *
1019: ***************
1020: *** 27,33
1021: *
1022: * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
1023: * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
1024: ! * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
1025: *
1026: * $Log: patch3,v $
1027: # Revision 1.1 92/08/28 08:02:40 bin
1028: # Initial revision
1029: #
1030: * Revision 1.1 88/12/23 18:02:36 mark
1031:
1032: --- 27,33 -----
1033: *
1034: * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
1035: * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
1036: ! * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
1037: *
1038: * $Log: patch3,v $
1039: # Revision 1.1 92/08/28 08:02:40 bin
1040: # Initial revision
1041: #
1042: * Revision 1.2 89/02/12 10:05:59 mark
1043: ***************
1044: *** 30,35
1045: * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
1046: *
1047: * $Log: patch3,v $
1048: # Revision 1.1 92/08/28 08:02:40 bin
1049: # Initial revision
1050: #
1051: * Revision 1.1 88/12/23 18:02:36 mark
1052: * Initial revision
1053: *
1054:
1055: --- 30,38 -----
1056: * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
1057: *
1058: * $Log: patch3,v $
1059: # Revision 1.1 92/08/28 08:02:40 bin
1060: # Initial revision
1061: #
1062: + * Revision 1.2 89/02/12 10:05:59 mark
1063: + * 1.2 release fixes
1064: + *
1065: * Revision 1.1 88/12/23 18:02:36 mark
1066: * Initial revision
1067: *
1068: ***************
1069: *** 36,42
1070: */
1071:
1072: #ifndef lint
1073: ! static char *ident = "$Id: patch3,v 1.1 92/08/28 08:02:40 bin Exp Locker: bin $";
1074: static char *copyright = "Copyright (c) 1989 Mark H. Colburn.\nAll rights reserved.\n";
1075: #endif /* not lint */
1076:
1077:
1078: --- 39,45 -----
1079: */
1080:
1081: #ifndef lint
1082: ! static char *ident = "$Id: patch3,v 1.1 92/08/28 08:02:40 bin Exp Locker: bin $";
1083: static char *copyright = "Copyright (c) 1989 Mark H. Colburn.\nAll rights reserved.\n";
1084: #endif /* not lint */
1085:
1086: ***************
1087: *** 78,84
1088: "Malformed substitution syntax");
1089: return;
1090: }
1091: ! if ((rptr = (Replstr *) malloc(sizeof(Replstr))) == NULL) {
1092: warn("Replacement string not added", "No space");
1093: return;
1094: }
1095:
1096: --- 81,87 -----
1097: "Malformed substitution syntax");
1098: return;
1099: }
1100: ! if ((rptr = (Replstr *) malloc(sizeof(Replstr))) == (Replstr *)NULL) {
1101: warn("Replacement string not added", "No space");
1102: return;
1103: }
1104: ***************
1105: *** 130,136
1106: * Now pattern points to 'old' and p points to 'new' and both are '\0'
1107: * terminated
1108: */
1109: ! if ((rptr->comp = regcomp(pattern)) == NULL) {
1110: warn("Replacement string not added", "Invalid RE");
1111: free(rptr);
1112: return;
1113:
1114: --- 133,139 -----
1115: * Now pattern points to 'old' and p points to 'new' and both are '\0'
1116: * terminated
1117: */
1118: ! if ((rptr->comp = regcomp(pattern)) == (regexp *)NULL) {
1119: warn("Replacement string not added", "Invalid RE");
1120: free(rptr);
1121: return;
1122: ***************
1123: *** 136,143
1124: return;
1125: }
1126: rptr->replace = p;
1127: ! rptr->next = NULL;
1128: ! if (rplhead == NULL) {
1129: rplhead = rptr;
1130: rpltail = rptr;
1131: } else {
1132:
1133: --- 139,146 -----
1134: return;
1135: }
1136: rptr->replace = p;
1137: ! rptr->next = (Replstr *)NULL;
1138: ! if (rplhead == (Replstr *)NULL) {
1139: rplhead = rptr;
1140: rpltail = rptr;
1141: } else {
1142: ***************
1143: *** 182,188
1144: char *b;
1145:
1146: strcpy(buff, name);
1147: ! for (rptr = rplhead; !found && rptr != NULL; rptr = rptr->next) {
1148: do {
1149: if ((ret = regexec(rptr->comp, buff)) != 0) {
1150: p = buff;
1151:
1152: --- 185,191 -----
1153: char *b;
1154:
1155: strcpy(buff, name);
1156: ! for (rptr = rplhead; !found && rptr != (Replstr *)NULL; rptr = rptr->next) {
1157: do {
1158: if ((ret = regexec(rptr->comp, buff)) != 0) {
1159: p = buff;
1160: Index: tar.1
1161: *** /tmp/,RCSt1a17158 Sun Feb 12 14:09:31 1989
1162: --- tar.1 Sun Feb 12 14:02:37 1989
1163: ***************
1164: *** 1,4
1165: ! .\" $Id: patch3,v 1.1 92/08/28 08:02:40 bin Exp Locker: bin $
1166: .TH TAR 1 "USENIX Association" ""
1167: .SH NAME
1168: tar \- process tape archives
1169:
1170: --- 1,4 -----
1171: ! .\" $Id: patch3,v 1.1 92/08/28 08:02:40 bin Exp Locker: bin $
1172: .TH TAR 1 "USENIX Association" ""
1173: .SH NAME
1174: tar \- process tape archives
1175: ***************
1176: *** 178,184
1177: .PP
1178: THE SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
1179: IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
1180: ! WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
1181: .SH AUTHOR
1182: Mark H. Colburn
1183: .br
1184:
1185: --- 178,184 -----
1186: .PP
1187: THE SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
1188: IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
1189: ! WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
1190: .SH AUTHOR
1191: Mark H. Colburn
1192: .br
1193: Index: tar.c
1194: *** /tmp/,RCSt1a17163 Sun Feb 12 14:09:37 1989
1195: --- tar.c Sun Feb 12 14:02:38 1989
1196: ***************
1197: *** 1,6
1198: /* $Source: /src386/usr/bin/pax/patch3,v $
1199: *
1200: ! * $Revision: 1.1 $
1201: *
1202: * tar.c - tar specific functions for archive handling
1203: *
1204:
1205: --- 1,6 -----
1206: /* $Source: /src386/usr/bin/pax/patch3,v $
1207: *
1208: ! * $Revision: 1.1 $
1209: *
1210: * tar.c - tar specific functions for archive handling
1211: *
1212: ***************
1213: *** 27,33
1214: *
1215: * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
1216: * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
1217: ! * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
1218: *
1219: * $Log: patch3,v $
1220: # Revision 1.1 92/08/28 08:02:40 bin
1221: # Initial revision
1222: #
1223: * Revision 1.1 88/12/23 18:02:38 mark
1224:
1225: --- 27,33 -----
1226: *
1227: * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
1228: * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
1229: ! * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
1230: *
1231: * $Log: patch3,v $
1232: # Revision 1.1 92/08/28 08:02:40 bin
1233: # Initial revision
1234: #
1235: * Revision 1.2 89/02/12 10:06:05 mark
1236: ***************
1237: *** 30,35
1238: * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
1239: *
1240: * $Log: patch3,v $
1241: # Revision 1.1 92/08/28 08:02:40 bin
1242: # Initial revision
1243: #
1244: * Revision 1.1 88/12/23 18:02:38 mark
1245: * Initial revision
1246: *
1247:
1248: --- 30,38 -----
1249: * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
1250: *
1251: * $Log: patch3,v $
1252: # Revision 1.1 92/08/28 08:02:40 bin
1253: # Initial revision
1254: #
1255: + * Revision 1.2 89/02/12 10:06:05 mark
1256: + * 1.2 release fixes
1257: + *
1258: * Revision 1.1 88/12/23 18:02:38 mark
1259: * Initial revision
1260: *
1261: ***************
1262: *** 36,42
1263: */
1264:
1265: #ifndef lint
1266: ! static char *ident = "$Id: patch3,v 1.1 92/08/28 08:02:40 bin Exp Locker: bin $";
1267: static char *copyright ="Copyright (c) 1989 Mark H. Colburn.\nAll rights reserved.";
1268: #endif /* not lint */
1269:
1270:
1271: --- 39,45 -----
1272: */
1273:
1274: #ifndef lint
1275: ! static char *ident = "$Id: patch3,v 1.1 92/08/28 08:02:40 bin Exp Locker: bin $";
1276: static char *copyright ="Copyright (c) 1989 Mark H. Colburn.\nAll rights reserved.";
1277: #endif /* not lint */
1278:
1279: ***************
1280: *** 109,116
1281: * of the tar and/or cpio interfaces...
1282: */
1283: f_unconditional = 1;
1284: ! f_modification_time = 1;
1285: ! f_create_dirs = 1;
1286: blocking = 0;
1287: ar_interface = TAR;
1288: ar_format = TAR;
1289:
1290: --- 112,119 -----
1291: * of the tar and/or cpio interfaces...
1292: */
1293: f_unconditional = 1;
1294: ! f_mtime = 1;
1295: ! f_dir_create = 1;
1296: blocking = 0;
1297: ar_interface = TAR;
1298: ar_format = TAR;
1299: ***************
1300: *** 114,120
1301: blocking = 0;
1302: ar_interface = TAR;
1303: ar_format = TAR;
1304: ! msgfile=stdout;
1305:
1306: /* Parse options */
1307: while ((c = taropt(argc, argv, "b:cf:hlmortuvwx")) != EOF) {
1308:
1309: --- 117,123 -----
1310: blocking = 0;
1311: ar_interface = TAR;
1312: ar_format = TAR;
1313: ! msgfile=stderr;
1314:
1315: /* Parse options */
1316: while ((c = taropt(argc, argv, "b:cf:hlmortuvwx")) != EOF) {
1317: ***************
1318: *** 258,264
1319: char c;
1320: char *place;
1321:
1322: ! optarg = NULL;
1323:
1324: if (key == NULL) { /* First time */
1325: if (argc < 2)
1326:
1327: --- 261,267 -----
1328: char c;
1329: char *place;
1330:
1331: ! optarg = (char *)NULL;
1332:
1333: if (key == (char *)NULL) { /* First time */
1334: if (argc < 2)
1335: ***************
1336: *** 260,266
1337:
1338: optarg = NULL;
1339:
1340: ! if (key == NULL) { /* First time */
1341: if (argc < 2)
1342: return EOF;
1343: key = argv[1];
1344:
1345: --- 263,269 -----
1346:
1347: optarg = (char *)NULL;
1348:
1349: ! if (key == (char *)NULL) { /* First time */
1350: if (argc < 2)
1351: return EOF;
1352: key = argv[1];
1353: ***************
1354: *** 280,286
1355: }
1356: place = strchr(optstring, c);
1357:
1358: ! if (place == NULL || c == ':') {
1359: fprintf(stderr, "%s: unknown option %c\n", argv[0], c);
1360: return ('?');
1361: }
1362:
1363: --- 283,289 -----
1364: }
1365: place = strchr(optstring, c);
1366:
1367: ! if (place == (char *)NULL || c == ':') {
1368: fprintf(stderr, "%s: unknown option %c\n", argv[0], c);
1369: return ('?');
1370: }
1371: ***************
1372: *** 323,337
1373:
1374: #endif
1375: {
1376: ! fprintf(stderr, "\
1377: ! Usage: %s -c[bfvw] device block filename..\n", myname);
1378: ! fprintf(stderr, "\
1379: ! %s -r[bvw] device block [filename...]\n", myname);
1380: ! fprintf(stderr, "\
1381: ! %s -t[vf] device\n", myname);
1382: ! fprintf(stderr, "\
1383: ! %s -u[bvw] device block [filename...]\n", myname);
1384: ! fprintf(stderr, "\
1385: ! %s -x[flmovw] device [filename...]\n", myname);
1386: exit(1);
1387: }
1388:
1389: --- 326,335 -----
1390:
1391: #endif
1392: {
1393: ! fprintf(stderr, "Usage: %s -c[bfvw] device block filename..\n", myname);
1394: ! fprintf(stderr, " %s -r[bvw] device block [filename...]\n", myname);
1395: ! fprintf(stderr, " %s -t[vf] device\n", myname);
1396: ! fprintf(stderr, " %s -u[bvw] device block [filename...]\n", myname);
1397: ! fprintf(stderr, " %s -x[flmovw] device [filename...]\n", myname);
1398: exit(1);
1399: }
1400: Index: ttyio.c
1401: *** /tmp/,RCSt1a17168 Sun Feb 12 14:09:46 1989
1402: --- ttyio.c Sun Feb 12 14:02:39 1989
1403: ***************
1404: *** 1,6
1405: /* $Source: /src386/usr/bin/pax/patch3,v $
1406: *
1407: ! * $Revision: 1.1 $
1408: *
1409: * ttyio.c - Terminal/Console I/O functions for all archive interfaces
1410: *
1411:
1412: --- 1,6 -----
1413: /* $Source: /src386/usr/bin/pax/patch3,v $
1414: *
1415: ! * $Revision: 1.1 $
1416: *
1417: * ttyio.c - Terminal/Console I/O functions for all archive interfaces
1418: *
1419: ***************
1420: *** 28,34
1421: *
1422: * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
1423: * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
1424: ! * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
1425: *
1426: * $Log: patch3,v $
1427: # Revision 1.1 92/08/28 08:02:40 bin
1428: # Initial revision
1429: #
1430: * Revision 1.1 88/12/23 18:02:39 mark
1431:
1432: --- 28,34 -----
1433: *
1434: * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
1435: * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
1436: ! * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
1437: *
1438: * $Log: patch3,v $
1439: # Revision 1.1 92/08/28 08:02:40 bin
1440: # Initial revision
1441: #
1442: * Revision 1.2 89/02/12 10:06:11 mark
1443: ***************
1444: *** 31,36
1445: * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
1446: *
1447: * $Log: patch3,v $
1448: # Revision 1.1 92/08/28 08:02:40 bin
1449: # Initial revision
1450: #
1451: * Revision 1.1 88/12/23 18:02:39 mark
1452: * Initial revision
1453: *
1454:
1455: --- 31,39 -----
1456: * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
1457: *
1458: * $Log: patch3,v $
1459: # Revision 1.1 92/08/28 08:02:40 bin
1460: # Initial revision
1461: #
1462: + * Revision 1.2 89/02/12 10:06:11 mark
1463: + * 1.2 release fixes
1464: + *
1465: * Revision 1.1 88/12/23 18:02:39 mark
1466: * Initial revision
1467: *
1468: ***************
1469: *** 37,43
1470: */
1471:
1472: #ifndef lint
1473: ! static char *ident = "$Id: patch3,v 1.1 92/08/28 08:02:40 bin Exp Locker: bin $";
1474: static char *copyright = "Copyright (c) 1989 Mark H. Colburn.\nAll rights reserved.\n";
1475: #endif /* ! lint */
1476:
1477:
1478: --- 40,46 -----
1479: */
1480:
1481: #ifndef lint
1482: ! static char *ident = "$Id: patch3,v 1.1 92/08/28 08:02:40 bin Exp Locker: bin $";
1483: static char *copyright = "Copyright (c) 1989 Mark H. Colburn.\nAll rights reserved.\n";
1484: #endif /* ! lint */
1485:
1486: ***************
1487: *** 158,164
1488: return(-1);
1489: }
1490: if (got < 0) {
1491: ! fatal(syserr());
1492: }
1493: answer[idx] = '\0';
1494: return(0);
1495:
1496: --- 161,167 -----
1497: return(-1);
1498: }
1499: if (got < 0) {
1500: ! fatal(strerror());
1501: }
1502: answer[idx] = '\0';
1503: return(0);
1504: ***************
1505: *** 244,252
1506:
1507: close_archive();
1508:
1509: ! sprintf(msg, "\
1510: ! %s: Ready for volume %u\n\
1511: ! %s: Type \"go\" when ready to proceed (or \"quit\" to abort): \07",
1512: myname, arvolume + 1, myname);
1513: for (;;) {
1514: ret = nextask(msg, answer, sizeof(answer));
1515:
1516: --- 247,253 -----
1517:
1518: close_archive();
1519:
1520: ! sprintf(msg, "
1521: %s: Ready for volume %u\n%s: Type \"go\" when ready to proceed
1522: (or \"quit\" to abort): \07",
1523: myname, arvolume + 1, myname);
1524: for (;;) {
1525: ret = nextask(msg, answer, sizeof(answer));
1526: Index: warn.c
1527: *** /tmp/,RCSt1a17173 Sun Feb 12 14:09:53 1989
1528: --- warn.c Sun Feb 12 14:02:41 1989
1529: ***************
1530: *** 1,6
1531: /* $Source: /src386/usr/bin/pax/patch3,v $
1532: *
1533: ! * $Revision: 1.1 $
1534: *
1535: * warn.c - miscellaneous user warning routines
1536: *
1537:
1538: --- 1,6 -----
1539: /* $Source: /src386/usr/bin/pax/patch3,v $
1540: *
1541: ! * $Revision: 1.1 $
1542: *
1543: * warn.c - miscellaneous user warning routines
1544: *
1545: ***************
1546: *** 27,33
1547: *
1548: * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
1549: * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
1550: ! * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
1551: *
1552: * $Log: patch3,v $
1553: # Revision 1.1 92/08/28 08:02:40 bin
1554: # Initial revision
1555: #
1556: * Revision 1.1 88/12/23 18:02:40 mark
1557:
1558: --- 27,33 -----
1559: *
1560: * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
1561: * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
1562: ! * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
1563: *
1564: * $Log: patch3,v $
1565: # Revision 1.1 92/08/28 08:02:40 bin
1566: # Initial revision
1567: #
1568: * Revision 1.2 89/02/12 10:06:15 mark
1569: ***************
1570: *** 30,35
1571: * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
1572: *
1573: * $Log: patch3,v $
1574: # Revision 1.1 92/08/28 08:02:40 bin
1575: # Initial revision
1576: #
1577: * Revision 1.1 88/12/23 18:02:40 mark
1578: * Initial revision
1579: *
1580:
1581: --- 30,38 -----
1582: * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
1583: *
1584: * $Log: patch3,v $
1585: # Revision 1.1 92/08/28 08:02:40 bin
1586: # Initial revision
1587: #
1588: + * Revision 1.2 89/02/12 10:06:15 mark
1589: + * 1.2 release fixes
1590: + *
1591: * Revision 1.1 88/12/23 18:02:40 mark
1592: * Initial revision
1593: *
1594: ***************
1595: *** 36,42
1596: */
1597:
1598: #ifndef lint
1599: ! static char *ident = "$Id: patch3,v 1.1 92/08/28 08:02:40 bin Exp Locker: bin $";
1600: static char *copyright = "Copyright (c) 1989 Mark H. Colburn.\nAll rights reserved.\n";
1601: #endif /* ! lint */
1602:
1603:
1604: --- 39,45 -----
1605: */
1606:
1607: #ifndef lint
1608: ! static char *ident = "$Id: patch3,v 1.1 92/08/28 08:02:40 bin Exp Locker: bin $";
1609: static char *copyright = "Copyright (c) 1989 Mark H. Colburn.\nAll rights reserved.\n";
1610: #endif /* ! lint */
1611:
1612: ***************
1613: *** 93,99
1614: }
1615:
1616:
1617: ! /* syserr - return pointer to appropriate system error message
1618: *
1619: * DESCRIPTION
1620: *
1621:
1622: --- 96,102 -----
1623: }
1624:
1625:
1626: ! /* strerror - return pointer to appropriate system error message
1627: *
1628: * DESCRIPTION
1629: *
1630: ***************
1631: *** 112,118
1632:
1633: #ifdef __STDC__
1634:
1635: ! char *syserr(void)
1636:
1637: #else
1638:
1639:
1640: --- 115,121 -----
1641:
1642: #ifdef __STDC__
1643:
1644: ! char *strerror(void)
1645:
1646: #else
1647:
1648: ***************
1649: *** 116,122
1650:
1651: #else
1652:
1653: ! char *syserr()
1654:
1655: #endif
1656: {
1657:
1658: --- 119,125 -----
1659:
1660: #else
1661:
1662: ! char *strerror()
1663:
1664: #endif
1665: {
1666: ***************
1667: *** 162,168
1668: {
1669: OFFSET n;
1670:
1671: ! if (n = (size / (1024 * 1024))) {
1672: fprintf(stream, "%ldm+", n);
1673: size -= n * 1024 * 1024;
1674: }
1675:
1676: --- 165,171 -----
1677: {
1678: OFFSET n;
1679:
1680: ! if (n = (size / (1024L * 1024L))) {
1681: fprintf(stream, "%ldm+", n);
1682: size -= n * 1024L * 1024L;
1683: }
1684: ***************
1685: *** 164,170
1686:
1687: if (n = (size / (1024 * 1024))) {
1688: fprintf(stream, "%ldm+", n);
1689: ! size -= n * 1024 * 1024;
1690: }
1691: if (n = (size / 1024)) {
1692: fprintf(stream, "%ldk+", n);
1693:
1694: --- 167,173 -----
1695:
1696: if (n = (size / (1024L * 1024L))) {
1697: fprintf(stream, "%ldm+", n);
1698: ! size -= n * 1024L * 1024L;
1699: }
1700: if (n = (size / 1024L)) {
1701: fprintf(stream, "%ldk+", n);
1702: ***************
1703: *** 166,172
1704: fprintf(stream, "%ldm+", n);
1705: size -= n * 1024 * 1024;
1706: }
1707: ! if (n = (size / 1024)) {
1708: fprintf(stream, "%ldk+", n);
1709: size -= n * 1024;
1710: }
1711:
1712: --- 169,175 -----
1713: fprintf(stream, "%ldm+", n);
1714: size -= n * 1024L * 1024L;
1715: }
1716: ! if (n = (size / 1024L)) {
1717: fprintf(stream, "%ldk+", n);
1718: size -= n * 1024L;
1719: }
1720: ***************
1721: *** 168,174
1722: }
1723: if (n = (size / 1024)) {
1724: fprintf(stream, "%ldk+", n);
1725: ! size -= n * 1024;
1726: }
1727: fprintf(stream, "%ld", size);
1728: }
1729:
1730: --- 171,177 -----
1731: }
1732: if (n = (size / 1024L)) {
1733: fprintf(stream, "%ldk+", n);
1734: ! size -= n * 1024L;
1735: }
1736: fprintf(stream, "%ld", size);
1737: }
1738: Index: wildmat.c
1739: *** /tmp/,RCSt1a17178 Sun Feb 12 14:09:59 1989
1740: --- wildmat.c Sun Feb 12 14:02:42 1989
1741: ***************
1742: *** 1,6
1743: /* $Source: /src386/usr/bin/pax/patch3,v $
1744: *
1745: ! * $Revision: 1.1 $
1746: *
1747: * wildmat.c - simple regular expression pattern matching routines
1748: *
1749:
1750: --- 1,6 -----
1751: /* $Source: /src386/usr/bin/pax/patch3,v $
1752: *
1753: ! * $Revision: 1.1 $
1754: *
1755: * wildmat.c - simple regular expression pattern matching routines
1756: *
1757: ***************
1758: *** 33,39
1759: *
1760: * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
1761: * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
1762: ! * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
1763: *
1764: * $Log: patch3,v $
1765: # Revision 1.1 92/08/28 08:02:40 bin
1766: # Initial revision
1767: #
1768: * Revision 1.1 88/12/23 18:02:41 mark
1769:
1770: --- 33,39 -----
1771: *
1772: * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
1773: * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
1774: ! * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
1775: *
1776: * $Log: patch3,v $
1777: # Revision 1.1 92/08/28 08:02:40 bin
1778: # Initial revision
1779: #
1780: * Revision 1.2 89/02/12 10:06:20 mark
1781: ***************
1782: *** 36,41
1783: * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
1784: *
1785: * $Log: patch3,v $
1786: # Revision 1.1 92/08/28 08:02:40 bin
1787: # Initial revision
1788: #
1789: * Revision 1.1 88/12/23 18:02:41 mark
1790: * Initial revision
1791: *
1792:
1793: --- 36,44 -----
1794: * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
1795: *
1796: * $Log: patch3,v $
1797: # Revision 1.1 92/08/28 08:02:40 bin
1798: # Initial revision
1799: #
1800: + * Revision 1.2 89/02/12 10:06:20 mark
1801: + * 1.2 release fixes
1802: + *
1803: * Revision 1.1 88/12/23 18:02:41 mark
1804: * Initial revision
1805: *
1806: ***************
1807: *** 42,48
1808: */
1809:
1810: #ifndef lint
1811: ! static char *ident = "$Id: patch3,v 1.1 92/08/28 08:02:40 bin Exp Locker: bin $";
1812: static char *copyright = "Copyright (c) 1989 Mark H. Colburn.\nAll rights reserved.\n";
1813: #endif /* ! lint */
1814:
1815:
1816: --- 45,51 -----
1817: */
1818:
1819: #ifndef lint
1820: ! static char *ident = "$Id: patch3,v 1.1 92/08/28 08:02:40 bin Exp Locker: bin $";
1821: static char *copyright = "Copyright (c) 1989 Mark H. Colburn.\nAll rights reserved.\n";
1822: #endif /* ! lint */
1823:
1824: ***************
1825: *** 97,103
1826:
1827: #endif
1828: {
1829: ! while (!wildmat(source, pattern)) {
1830: if (*++source == '\0') {
1831: return (0);
1832: }
1833:
1834: --- 100,106 -----
1835:
1836: #endif
1837: {
1838: ! while (!wildmat(pattern, source)) {
1839: if (*++source == '\0') {
1840: return (0);
1841: }
1842: ***************
1843: *** 118,125
1844: *
1845: * PARAMETERS
1846: *
1847: - * char *source - The source string which is to be compared to the
1848: - * regular expression pattern.
1849: * char *pattern - The regular expression which we are supposed to
1850: * match to.
1851: *
1852:
1853: --- 121,126 -----
1854: *
1855: * PARAMETERS
1856: *
1857: * char *pattern - The regular expression which we are supposed to
1858: * match to.
1859: * char *source - The source string which is to be compared to the
1860: ***************
1861: *** 122,127
1862: * regular expression pattern.
1863: * char *pattern - The regular expression which we are supposed to
1864: * match to.
1865: *
1866: * RETURNS
1867: *
1868:
1869: --- 123,130 -----
1870: *
1871: * char *pattern - The regular expression which we are supposed to
1872: * match to.
1873: + * char *source - The source string which is to be compared to the
1874: + * regular expression pattern.
1875: *
1876: * RETURNS
1877: *
1878: Index: Makefile
1879: *** /tmp/,RCSt1a17183 Sun Feb 12 14:10:07 1989
1880: --- Makefile Sun Feb 12 14:01:55 1989
1881: ***************
1882: *** 3,9
1883: #
1884: # Written by Mark H. Colburn ([email protected])
1885: #
1886: ! # $Id: patch3,v 1.1 92/08/28 08:02:40 bin Exp Locker: bin $
1887: #
1888:
1889: #
1890:
1891: --- 3,9 -----
1892: #
1893: # Written by Mark H. Colburn ([email protected])
1894: #
1895: ! # $Id: patch3,v 1.1 92/08/28 08:02:40 bin Exp Locker: bin $
1896: #
1897:
1898: #
1899: ***************
1900: *** 30,35
1901: CC = cc
1902:
1903: #
1904: # Set LFLAGS to whatever makes your linker happy
1905: #
1906: #LDFLAGS = -s
1907:
1908: --- 30,40 -----
1909: CC = cc
1910:
1911: #
1912: + # Set LIBS to any additional libraries that you need linked in with pax.
1913: + #
1914: + LIBS=
1915: +
1916: + #
1917: # Set LFLAGS to whatever makes your linker happy
1918: #
1919: #LDFLAGS = -s
1920: ***************
1921: *** 36,41
1922: LDFLAGS =
1923:
1924: #
1925: # Set LINTFLAGS to whatever makes your implementation of lint happy. If
1926: # you don't undef __STDC__ and you have an ANSI C compiler, lint will choke
1927: # on the function prototypes present in func.h
1928:
1929: --- 41,52 -----
1930: LDFLAGS =
1931:
1932: #
1933: + # Set COPY to the name of the command to use to copy pax to cpio and
1934: + # tar. Usually it is 'ln'.
1935: + #
1936: + COPY=ln
1937: +
1938: + #
1939: # Set LINTFLAGS to whatever makes your implementation of lint happy. If
1940: # you don't undef __STDC__ and you have an ANSI C compiler, lint will choke
1941: # on the function prototypes present in func.h.
1942: ***************
1943: *** 38,44
1944: #
1945: # Set LINTFLAGS to whatever makes your implementation of lint happy. If
1946: # you don't undef __STDC__ and you have an ANSI C compiler, lint will choke
1947: ! # on the function prototypes present in func.h
1948: #
1949: LINTFLAGS = -U__STDC__ $(POSIX)
1950:
1951:
1952: --- 49,55 -----
1953: #
1954: # Set LINTFLAGS to whatever makes your implementation of lint happy. If
1955: # you don't undef __STDC__ and you have an ANSI C compiler, lint will choke
1956: ! # on the function prototypes present in func.h.
1957: #
1958: LINTFLAGS = -U__STDC__ $(POSIX)
1959:
1960: ***************
1961: *** 53,58
1962: #
1963: MAN5 = /usr/man/man5
1964: MAN1 = /usr/man/man1
1965:
1966: #
1967: # There are three different ways to get POSIX or BSD conformant directory
1968:
1969: --- 64,71 -----
1970: #
1971: MAN5 = /usr/man/man5
1972: MAN1 = /usr/man/man1
1973: + MAN5EXT = 5
1974: + MAN1EXT = 1
1975:
1976: #
1977: # There are three different ways to get POSIX or BSD conformant directory
1978: ***************
1979: *** 80,86
1980: # Nothing beyond this point should need to be changed.
1981: #
1982:
1983: ! MISC = Makefile pax.1 tar.5 cpio.5 README PATCHLEVEL
1984: HEADERS= config.h func.h limits.h port.h pax.h
1985: SOURCE= pax.c append.c buffer.c cpio.c create.c extract.c fileio.c\
1986: link.c list.c mem.c namelist.c names.c pass.c pathname.c\
1987:
1988: --- 93,100 -----
1989: # Nothing beyond this point should need to be changed.
1990: #
1991:
1992: ! SHELL = /bin/sh
1993: ! MISC = Makefile pax.1 tar.5 cpio.5 README PATCHLEVEL
1994: HEADERS= config.h func.h limits.h port.h pax.h
1995: SOURCE= pax.c append.c buffer.c cpio.c create.c extract.c fileio.c\
1996: link.c list.c mem.c namelist.c names.c pass.c pathname.c\
1997: ***************
1998: *** 95,101
1999: all: $(PROGS)
2000:
2001: install: $(PROGS)
2002: ! mv $(PROGS) $(BINDIR)
2003: cp $(PMAN1) $(MAN1)
2004: # cp $(PMAN5) $(MAN5)
2005:
2006:
2007: --- 109,119 -----
2008: all: $(PROGS)
2009:
2010: install: $(PROGS)
2011: ! strip pax
2012: ! cp pax $(BINDIR)
2013: ! chmod 755 $(BINDIR)/pax
2014: ! ln $(BINDIR)/pax $(BINDIR)/tar
2015: ! ln $(BINDIR)/pax $(BINDIR)/cpio
2016: cp $(PMAN1) $(MAN1)
2017: # cp $(PMAN5) $(MAN5)
2018:
2019: ***************
2020: *** 107,113
2021: lint $(LINTFLAGS) $(SOURCE)
2022:
2023: pax : $(OBJECT)
2024: ! $(CC) $(CFLAGS) -o pax $(OBJECT) $(DIRENT)
2025:
2026: tar: pax
2027: rm -f tar
2028:
2029: --- 125,131 -----
2030: lint $(LINTFLAGS) $(SOURCE)
2031:
2032: pax : $(OBJECT)
2033: ! $(CC) $(CFLAGS) $(LDFLAGS) -o pax $(OBJECT) $(DIRENT) $(LIBS)
2034:
2035: tar: pax
2036: rm -f tar
2037: ***************
2038: *** 111,117
2039:
2040: tar: pax
2041: rm -f tar
2042: ! ln pax tar
2043:
2044: cpio: pax
2045: rm -f cpio
2046:
2047: --- 129,135 -----
2048:
2049: tar: pax
2050: rm -f tar
2051: ! $(COPY) pax tar
2052:
2053: cpio: pax
2054: rm -f cpio
2055: ***************
2056: *** 115,120
2057:
2058: cpio: pax
2059: rm -f cpio
2060: ! ln pax cpio
2061:
2062: $(OBJECT): $(HEADERS)
2063:
2064: --- 133,138 -----
2065:
2066: cpio: pax
2067: rm -f cpio
2068: ! $(COPY) pax cpio
2069:
2070: $(OBJECT): $(HEADERS)
2071: Index: README
2072: *** /tmp/,RCSt1a17188 Sun Feb 12 14:10:13 1989
2073: --- README Sun Feb 12 14:01:56 1989
2074: ***************
2075: *** 6,12
2076:
2077: Introduction
2078:
2079: ! This is version 1.1 of Pax, a public domain archiving utility.
2080:
2081: Pax is an archiving utility that reads and writes tar and cpio formats,
2082: both the traditional ones and the extended formats specified in IEEE
2083:
2084: --- 6,12 -----
2085:
2086: Introduction
2087:
2088: ! This is version 1.2 of Pax, an archiving utility.
2089:
2090: Pax is an archiving utility that reads and writes tar and cpio formats,
2091: both the traditional ones and the extended formats specified in IEEE
2092: ***************
2093: *** 16,25
2094: 1003.2 as a compromise in the chronic controversy over which of tar or
2095: cpio is best.
2096:
2097: ! The USENIX Association provided some support for this implementation
2098: ! project. As a result, the Pax utility is being distributed free of
2099: ! charge and may be redistributed by others in either source or binary
2100: ! form. (See the liscensing section for restrictions)
2101:
2102: The source for Pax is being posted to comp.sources.unix on USENET and
2103: will also be available by anonymous FTP on the Internet from uunet.uu.net,
2104:
2105: --- 16,25 -----
2106: 1003.2 as a compromise in the chronic controversy over which of tar or
2107: cpio is best.
2108:
2109: ! The USENIX Association provided some support for the initial
2110: ! implementation of this product. As a result, the Pax utility is being
2111: ! distributed free of charge and may be redistributed by others in either
2112: ! source or binary form. (See the liscensing section for restrictions)
2113:
2114: The source for Pax has been posted to comp.sources.unix on USENET and
2115: will also be available by anonymous FTP on the Internet from uunet.uu.net,
2116: ***************
2117: *** 21,27
2118: charge and may be redistributed by others in either source or binary
2119: form. (See the liscensing section for restrictions)
2120:
2121: ! The source for Pax is being posted to comp.sources.unix on USENET and
2122: will also be available by anonymous FTP on the Internet from uunet.uu.net,
2123: moon.honeywell.com and from one of the Berkeley machines. The source
2124: to Pax will be available via anonymous UUCP from jhereg.mn.org, the
2125:
2126: --- 21,27 -----
2127: distributed free of charge and may be redistributed by others in either
2128: source or binary form. (See the liscensing section for restrictions)
2129:
2130: ! The source for Pax has been posted to comp.sources.unix on USENET and
2131: will also be available by anonymous FTP on the Internet from uunet.uu.net,
2132: moon.src.honeywell.com and from ucb-arpa.berkeley.edu. The source
2133: to Pax is also available via anonymous UUCP from jhereg.mn.org, the
2134: ***************
2135: *** 23,30
2136:
2137: The source for Pax is being posted to comp.sources.unix on USENET and
2138: will also be available by anonymous FTP on the Internet from uunet.uu.net,
2139: ! moon.honeywell.com and from one of the Berkeley machines. The source
2140: ! to Pax will be available via anonymous UUCP from jhereg.mn.org, the
2141: author's home machine and possibly other sites.
2142:
2143: The source for Pax will continue to change as long as the definition of
2144:
2145: --- 23,30 -----
2146:
2147: The source for Pax has been posted to comp.sources.unix on USENET and
2148: will also be available by anonymous FTP on the Internet from uunet.uu.net,
2149: ! moon.src.honeywell.com and from ucb-arpa.berkeley.edu. The source
2150: ! to Pax is also available via anonymous UUCP from jhereg.mn.org, the
2151: author's home machine and possibly other sites.
2152:
2153: The source for Pax will continue to change as long as the definition of
2154: ***************
2155: *** 56,62
2156: machines:
2157:
2158: Machine Operating System/Release
2159: ! -------------------------------------------------------
2160: Altos 586 System III (2.3)
2161: AT&T UNIX PC System V.2 (Release 3.51)
2162: Cray 2 UNICOS
2163:
2164: --- 56,62 -----
2165: machines:
2166:
2167: Machine Operating System/Release
2168: ! ---------------------------------------------------
2169: Altos 586 System III (2.3)
2170: AT&T UNIX PC System V.2 (Release 3.51)
2171: Convergent S/320 CTIX/68k 6.1, UNIX SysV 3.1
2172: ***************
2173: *** 59,64
2174: -------------------------------------------------------
2175: Altos 586 System III (2.3)
2176: AT&T UNIX PC System V.2 (Release 3.51)
2177: Cray 2 UNICOS
2178: HP 9000 HP/UX 6.0.1
2179: Mac II A/UX 1.0
2180:
2181: --- 59,65 -----
2182: ---------------------------------------------------
2183: Altos 586 System III (2.3)
2184: AT&T UNIX PC System V.2 (Release 3.51)
2185: + Convergent S/320 CTIX/68k 6.1, UNIX SysV 3.1
2186: Cray 2 UNICOS
2187: Encore CC 02.00.r088
2188: HP 9000 HP/UX 6.0.1
2189: ***************
2190: *** 60,65
2191: Altos 586 System III (2.3)
2192: AT&T UNIX PC System V.2 (Release 3.51)
2193: Cray 2 UNICOS
2194: HP 9000 HP/UX 6.0.1
2195: Mac II A/UX 1.0
2196: NCR Tower System V.2
2197:
2198: --- 61,67 -----
2199: AT&T UNIX PC System V.2 (Release 3.51)
2200: Convergent S/320 CTIX/68k 6.1, UNIX SysV 3.1
2201: Cray 2 UNICOS
2202: + Encore CC 02.00.r088
2203: HP 9000 HP/UX 6.0.1
2204: IBM PC/AT Microport SV/AT V2.4
2205: Mac II A/UX 1.0
2206: ***************
2207: *** 61,66
2208: AT&T UNIX PC System V.2 (Release 3.51)
2209: Cray 2 UNICOS
2210: HP 9000 HP/UX 6.0.1
2211: Mac II A/UX 1.0
2212: NCR Tower System V.2
2213: Pyramid AT&T and Berkeley universe
2214:
2215: --- 63,69 -----
2216: Cray 2 UNICOS
2217: Encore CC 02.00.r088
2218: HP 9000 HP/UX 6.0.1
2219: + IBM PC/AT Microport SV/AT V2.4
2220: Mac II A/UX 1.0
2221: NCR Tower System V.2
2222: Pyramid AT&T and Berkeley universe
2223: ***************
2224: *** 67,72
2225: Sequent Symetry Dynix 3.0
2226: SGI Iris 4D/60G UNIX 3.0
2227: SGI Iris 4D/70G UNIX 3.0
2228: Sun 2 SunOS 3.4
2229: Sun 2 SunOS 3.5
2230: Sun 3 SunOS 3.4
2231:
2232: --- 70,77 -----
2233: Sequent Symetry Dynix 3.0
2234: SGI Iris 4D/60G UNIX 3.0
2235: SGI Iris 4D/70G UNIX 3.0
2236: + SCO Xenix 386 2.3.2
2237: + SCO Unix 386 3.2
2238: Sun 2 SunOS 3.4
2239: Sun 2 SunOS 3.5
2240: Sun 3 SunOS 3.4
2241: ***************
2242: *** 76,82
2243: VAX 8750 BSD 4.3 (Mt. Xinu)
2244: VAX 8650 BSD 4.3 (Mt. Xinu)
2245: VAX 780 BSD 4.3 (Berkeley)
2246: ! -------------------------------------------------------
2247:
2248: In future releases, the source will be moving toward ANSI C and POSIX
2249: compatibility. This should allow for portability over any system
2250:
2251: --- 81,87 -----
2252: VAX 8750 BSD 4.3 (Mt. Xinu)
2253: VAX 8650 BSD 4.3 (Mt. Xinu)
2254: VAX 780 BSD 4.3 (Berkeley)
2255: ! ---------------------------------------------------
2256:
2257: In future releases, the source will be moving toward ANSI C and POSIX
2258: compatibility. This should allow for portability over any system
2259: ***************
2260: *** 110,116
2261:
2262: THE SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
2263: IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
2264: ! WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
2265:
2266: Please report any bug or problems to:
2267:
2268:
2269: --- 115,121 -----
2270:
2271: THE SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
2272: IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
2273: ! WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
2274:
2275: Please report any bug or problems to:
2276:
2277: ***************
2278: *** 115,121
2279: Please report any bug or problems to:
2280:
2281: Mark Colburn
2282: ! NAPS International
2283: 117 Mackubin St., Suite 1
2284: St. Paul MN 55102
2285: (612) 224-9108
2286:
2287: --- 120,126 -----
2288: Please report any bug or problems to:
2289:
2290: Mark Colburn
2291: ! Minnetech Consulting, Inc.
2292: 117 Mackubin St., Suite 1
2293: St. Paul MN 55102
2294: [email protected]
2295: ***************
2296: *** 118,122
2297: NAPS International
2298: 117 Mackubin St., Suite 1
2299: St. Paul MN 55102
2300: - (612) 224-9108
2301: [email protected]
2302:
2303: --- 123,126 -----
2304: Minnetech Consulting, Inc.
2305: 117 Mackubin St., Suite 1
2306: St. Paul MN 55102
2307: [email protected]
2308: Index: PATCHLEVEL
2309: *** /tmp/,RCSt1a17193 Sun Feb 12 14:10:19 1989
2310: --- PATCHLEVEL Sun Feb 12 14:01:55 1989
2311: ***************
2312: *** 1,2
2313: ! Patchlevel 0
2314: ! $Id: patch3,v 1.1 92/08/28 08:02:40 bin Exp Locker: bin $
2315:
2316: --- 1,2 -----
2317: ! Patchlevel 1
2318: ! $Id: patch3,v 1.1 92/08/28 08:02:40 bin Exp Locker: bin $
2319:
2320:
2321:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.