home *** CD-ROM | disk | FTP | other *** search
/ The Unsorted BBS Collection / thegreatunsorted.tar / thegreatunsorted / hacking / internet / desc03.sh < prev    next >
SHell self-extracting ARchive  |  1993-02-04  |  7.7 KB

open in: MacOS 8.1     |     Win98     |     DOS

browse contents    |     view JSON data     |     view as text


This file was processed as: SHell self-extracting ARchive (archive/shar).

ConfidenceProgramDetectionMatch TypeSupport
100% dexvert SHell self-extracting ARchive (archive/shar) magic Supported
1% dexvert Stanford Graphics slide Show (other/stanfordGraphicsSlideShow) ext Unsupported
1% dexvert Text File (text/txt) fallback Supported
100% file ASCII text default
100% checkBytes Printable ASCII default
100% perlTextCheck Likely Text (Perl) default
100% siegfried fmt/329 Shell Archive Format default
100% detectItEasy Format: plain text[LF] default (weak)



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 4e 65 77 73 67 72 6f 75 | 70 73 3a 20 63 6f 6d 70 |Newsgrou|ps: comp|
|00000010| 2e 73 6f 75 72 63 65 73 | 2e 6d 69 73 63 0a 46 72 |.sources|.misc.Fr|
|00000020| 6f 6d 3a 20 74 69 6d 40 | 64 65 61 6b 69 6e 2e 65 |om: tim@|deakin.e|
|00000030| 64 75 2e 61 75 20 28 54 | 69 6d 20 43 6f 6f 6b 29 |du.au (T|im Cook)|
|00000040| 0a 53 75 62 6a 65 63 74 | 3a 20 76 33 35 69 30 31 |.Subject|: v35i01|
|00000050| 34 3a 20 20 64 65 73 63 | 72 69 62 65 20 2d 20 46 |4: desc|ribe - F|
|00000060| 69 6c 65 20 44 65 73 63 | 72 69 70 74 69 6f 6e 73 |ile Desc|riptions|
|00000070| 2c 20 50 61 72 74 30 33 | 2f 30 33 0a 4d 65 73 73 |, Part03|/03.Mess|
|00000080| 61 67 65 2d 49 44 3a 20 | 3c 31 39 39 33 46 65 62 |age-ID: |<1993Feb|
|00000090| 32 2e 30 36 31 36 33 38 | 2e 32 30 35 34 35 40 73 |2.061638|.20545@s|
|000000a0| 70 61 72 6b 79 2e 69 6d | 64 2e 73 74 65 72 6c 69 |parky.im|d.sterli|
|000000b0| 6e 67 2e 63 6f 6d 3e 0a | 58 2d 4d 64 34 2d 53 69 |ng.com>.|X-Md4-Si|
|000000c0| 67 6e 61 74 75 72 65 3a | 20 63 35 66 34 38 39 65 |gnature:| c5f489e|
|000000d0| 63 37 30 62 33 36 66 39 | 34 35 65 66 34 32 63 64 |c70b36f9|45ef42cd|
|000000e0| 30 36 32 38 63 30 66 38 | 34 0a 44 61 74 65 3a 20 |0628c0f8|4.Date: |
|000000f0| 54 75 65 2c 20 32 20 46 | 65 62 20 31 39 39 33 20 |Tue, 2 F|eb 1993 |
|00000100| 30 36 3a 31 36 3a 33 38 | 20 47 4d 54 0a 41 70 70 |06:16:38| GMT.App|
|00000110| 72 6f 76 65 64 3a 20 6b | 65 6e 74 40 73 70 61 72 |roved: k|ent@spar|
|00000120| 6b 79 2e 69 6d 64 2e 73 | 74 65 72 6c 69 6e 67 2e |ky.imd.s|terling.|
|00000130| 63 6f 6d 0a 0a 53 75 62 | 6d 69 74 74 65 64 2d 62 |com..Sub|mitted-b|
|00000140| 79 3a 20 74 69 6d 40 64 | 65 61 6b 69 6e 2e 65 64 |y: tim@d|eakin.ed|
|00000150| 75 2e 61 75 20 28 54 69 | 6d 20 43 6f 6f 6b 29 0a |u.au (Ti|m Cook).|
|00000160| 50 6f 73 74 69 6e 67 2d | 6e 75 6d 62 65 72 3a 20 |Posting-|number: |
|00000170| 56 6f 6c 75 6d 65 20 33 | 35 2c 20 49 73 73 75 65 |Volume 3|5, Issue|
|00000180| 20 31 34 0a 41 72 63 68 | 69 76 65 2d 6e 61 6d 65 | 14.Arch|ive-name|
|00000190| 3a 20 64 65 73 63 72 69 | 62 65 2f 70 61 72 74 30 |: descri|be/part0|
|000001a0| 33 0a 45 6e 76 69 72 6f | 6e 6d 65 6e 74 3a 20 55 |3.Enviro|nment: U|
|000001b0| 4e 49 58 2c 20 44 42 4d | 0a 0a 23 21 20 2f 62 69 |NIX, DBM|..#! /bi|
|000001c0| 6e 2f 73 68 0a 23 20 54 | 68 69 73 20 69 73 20 61 |n/sh.# T|his is a|
|000001d0| 20 73 68 65 6c 6c 20 61 | 72 63 68 69 76 65 2e 20 | shell a|rchive. |
|000001e0| 20 52 65 6d 6f 76 65 20 | 61 6e 79 74 68 69 6e 67 | Remove |anything|
|000001f0| 20 62 65 66 6f 72 65 20 | 74 68 69 73 20 6c 69 6e | before |this lin|
|00000200| 65 2c 20 74 68 65 6e 20 | 66 65 65 64 20 69 74 0a |e, then |feed it.|
|00000210| 23 20 69 6e 74 6f 20 61 | 20 73 68 65 6c 6c 20 76 |# into a| shell v|
|00000220| 69 61 20 22 73 68 20 66 | 69 6c 65 22 20 6f 72 20 |ia "sh f|ile" or |
|00000230| 73 69 6d 69 6c 61 72 2e | 20 20 54 6f 20 6f 76 65 |similar.| To ove|
|00000240| 72 77 72 69 74 65 20 65 | 78 69 73 74 69 6e 67 20 |rwrite e|xisting |
|00000250| 66 69 6c 65 73 2c 0a 23 | 20 74 79 70 65 20 22 73 |files,.#| type "s|
|00000260| 68 20 66 69 6c 65 20 2d | 63 22 2e 0a 23 20 43 6f |h file -|c"..# Co|
|00000270| 6e 74 65 6e 74 73 3a 20 | 20 61 6c 6c 6f 63 61 74 |ntents: | allocat|
|00000280| 65 2e 63 20 6c 69 73 74 | 2e 68 20 70 61 74 68 6e |e.c list|.h pathn|
|00000290| 61 6d 65 2e 63 20 73 74 | 72 70 62 72 6b 2e 63 20 |ame.c st|rpbrk.c |
|000002a0| 76 65 72 73 69 6f 6e 2e | 68 0a 23 20 57 72 61 70 |version.|h.# Wrap|
|000002b0| 70 65 64 20 62 79 20 6b | 65 6e 74 40 73 70 61 72 |ped by k|ent@spar|
|000002c0| 6b 79 20 6f 6e 20 4d 6f | 6e 20 46 65 62 20 20 31 |ky on Mo|n Feb 1|
|000002d0| 20 31 30 3a 31 35 3a 30 | 34 20 31 39 39 33 0a 50 | 10:15:0|4 1993.P|
|000002e0| 41 54 48 3d 2f 62 69 6e | 3a 2f 75 73 72 2f 62 69 |ATH=/bin|:/usr/bi|
|000002f0| 6e 3a 2f 75 73 72 2f 75 | 63 62 3a 2f 75 73 72 2f |n:/usr/u|cb:/usr/|
|00000300| 6c 6f 63 61 6c 2f 62 69 | 6e 3a 2f 75 73 72 2f 6c |local/bi|n:/usr/l|
|00000310| 62 69 6e 20 3b 20 65 78 | 70 6f 72 74 20 50 41 54 |bin ; ex|port PAT|
|00000320| 48 0a 65 63 68 6f 20 49 | 66 20 74 68 69 73 20 61 |H.echo I|f this a|
|00000330| 72 63 68 69 76 65 20 69 | 73 20 63 6f 6d 70 6c 65 |rchive i|s comple|
|00000340| 74 65 2c 20 79 6f 75 20 | 77 69 6c 6c 20 73 65 65 |te, you |will see|
|00000350| 20 74 68 65 20 66 6f 6c | 6c 6f 77 69 6e 67 20 6d | the fol|lowing m|
|00000360| 65 73 73 61 67 65 3a 0a | 65 63 68 6f 20 27 20 20 |essage:.|echo ' |
|00000370| 20 20 20 20 20 20 20 20 | 22 73 68 61 72 3a 20 45 | |"shar: E|
|00000380| 6e 64 20 6f 66 20 61 72 | 63 68 69 76 65 20 33 20 |nd of ar|chive 3 |
|00000390| 28 6f 66 20 33 29 2e 22 | 27 0a 69 66 20 74 65 73 |(of 3)."|'.if tes|
|000003a0| 74 20 2d 66 20 27 61 6c | 6c 6f 63 61 74 65 2e 63 |t -f 'al|locate.c|
|000003b0| 27 20 2d 61 20 22 24 7b | 31 7d 22 20 21 3d 20 22 |' -a "${|1}" != "|
|000003c0| 2d 63 22 20 3b 20 74 68 | 65 6e 20 0a 20 20 65 63 |-c" ; th|en . ec|
|000003d0| 68 6f 20 73 68 61 72 3a | 20 57 69 6c 6c 20 6e 6f |ho shar:| Will no|
|000003e0| 74 20 63 6c 6f 62 62 65 | 72 20 65 78 69 73 74 69 |t clobbe|r existi|
|000003f0| 6e 67 20 66 69 6c 65 20 | 5c 22 27 61 6c 6c 6f 63 |ng file |\"'alloc|
|00000400| 61 74 65 2e 63 27 5c 22 | 0a 65 6c 73 65 0a 20 20 |ate.c'\"|.else. |
|00000410| 65 63 68 6f 20 73 68 61 | 72 3a 20 45 78 74 72 61 |echo sha|r: Extra|
|00000420| 63 74 69 6e 67 20 5c 22 | 27 61 6c 6c 6f 63 61 74 |cting \"|'allocat|
|00000430| 65 2e 63 27 5c 22 20 5c | 28 31 30 30 30 20 63 68 |e.c'\" \|(1000 ch|
|00000440| 61 72 61 63 74 65 72 73 | 5c 29 0a 20 20 73 65 64 |aracters|\). sed|
|00000450| 20 22 73 2f 5e 58 2f 2f | 22 20 3e 27 61 6c 6c 6f | "s/^X//|" >'allo|
|00000460| 63 61 74 65 2e 63 27 20 | 3c 3c 27 45 4e 44 5f 4f |cate.c' |<<'END_O|
|00000470| 46 5f 46 49 4c 45 27 0a | 58 2f 2a 20 61 6c 6c 6f |F_FILE'.|X/* allo|
|00000480| 63 61 74 65 2e 63 20 2d | 09 49 6e 74 65 72 66 61 |cate.c -|.Interfa|
|00000490| 63 65 20 74 6f 20 6d 61 | 6c 6c 6f 63 2f 72 65 61 |ce to ma|lloc/rea|
|000004a0| 6c 6c 6f 63 0a 58 20 2a | 0a 58 20 2a 20 44 45 53 |lloc.X *|.X * DES|
|000004b0| 43 52 49 50 54 49 4f 4e | 0a 58 20 2a 09 54 68 65 |CRIPTION|.X *.The|
|000004c0| 73 65 20 72 6f 75 74 69 | 6e 65 73 2c 20 61 6c 6c |se routi|nes, all|
|000004d0| 6f 63 61 74 65 20 61 6e | 64 20 72 65 5f 61 6c 6c |ocate an|d re_all|
|000004e0| 6f 63 61 74 65 20 63 61 | 6c 6c 20 6d 61 6c 6c 6f |ocate ca|ll mallo|
|000004f0| 63 28 33 29 20 61 6e 64 | 0a 58 20 2a 09 72 65 61 |c(3) and|.X *.rea|
|00000500| 6c 6c 6f 63 28 33 29 20 | 72 65 73 70 65 63 74 69 |lloc(3) |respecti|
|00000510| 76 65 6c 79 2e 20 20 49 | 66 20 6d 61 6c 6c 6f 63 |vely. I|f malloc|
|00000520| 20 6f 72 20 72 65 61 6c | 6c 6f 63 20 72 65 74 75 | or real|loc retu|
|00000530| 72 6e 73 20 4e 55 4c 4c | 2c 0a 58 20 2a 09 61 6e |rns NULL|,.X *.an|
|00000540| 20 65 72 72 6f 72 20 6d | 65 73 73 61 67 65 20 69 | error m|essage i|
|00000550| 73 20 70 72 69 6e 74 65 | 64 20 61 6e 64 20 65 78 |s printe|d and ex|
|00000560| 65 63 75 74 69 6f 6e 20 | 69 73 20 74 65 72 6d 69 |ecution |is termi|
|00000570| 6e 61 74 65 64 2c 0a 58 | 20 2a 09 6f 74 68 65 72 |nated,.X| *.other|
|00000580| 77 69 73 65 2c 20 74 68 | 65 20 76 61 6c 75 65 20 |wise, th|e value |
|00000590| 72 65 74 75 72 6e 65 64 | 20 62 79 20 6d 61 6c 6c |returned| by mall|
|000005a0| 6f 63 2f 72 65 61 6c 6c | 6f 63 20 69 73 20 72 65 |oc/reall|oc is re|
|000005b0| 74 75 72 6e 65 64 2e 0a | 58 20 2a 0a 58 20 2a 20 |turned..|X *.X * |
|000005c0| 43 6f 70 79 72 69 67 68 | 74 20 28 63 29 20 31 39 |Copyrigh|t (c) 19|
|000005d0| 39 31 2c 31 39 39 32 20 | 54 69 6d 20 43 6f 6f 6b |91,1992 |Tim Cook|
|000005e0| 2e 0a 58 20 2a 20 4e 6f | 6e 2d 70 72 6f 66 69 74 |..X * No|n-profit|
|000005f0| 20 64 69 73 74 72 69 62 | 75 74 69 6f 6e 20 61 6c | distrib|ution al|
|00000600| 6c 6f 77 65 64 2e 20 20 | 53 65 65 20 52 45 41 44 |lowed. |See READ|
|00000610| 4d 45 20 66 6f 72 20 64 | 65 74 61 69 6c 73 2e 0a |ME for d|etails..|
|00000620| 58 20 2a 2f 0a 58 0a 58 | 73 74 61 74 69 63 20 63 |X */.X.X|static c|
|00000630| 68 61 72 20 72 63 73 69 | 64 5b 5d 20 3d 20 22 24 |har rcsi|d[] = "$|
|00000640| 49 64 3a 20 61 6c 6c 6f | 63 61 74 65 2e 63 2c 76 |Id: allo|cate.c,v|
|00000650| 20 31 2e 31 20 31 39 39 | 32 2f 31 30 2f 33 30 20 | 1.1 199|2/10/30 |
|00000660| 30 36 3a 31 39 3a 33 34 | 20 74 69 6d 20 45 78 70 |06:19:34| tim Exp|
|00000670| 20 24 22 3b 0a 58 0a 58 | 23 69 6e 63 6c 75 64 65 | $";.X.X|#include|
|00000680| 20 22 63 6f 6e 66 69 67 | 2e 68 22 0a 58 0a 58 65 | "config|.h".X.Xe|
|00000690| 78 74 65 72 6e 20 56 4f | 49 44 5f 50 54 52 20 6d |xtern VO|ID_PTR m|
|000006a0| 61 6c 6c 6f 63 20 28 29 | 20 3b 0a 58 65 78 74 65 |alloc ()| ;.Xexte|
|000006b0| 72 6e 20 56 4f 49 44 5f | 50 54 52 20 72 65 61 6c |rn VOID_|PTR real|
|000006c0| 6c 6f 63 20 28 29 20 3b | 0a 58 0a 58 0a 58 56 4f |loc () ;|.X.X.XVO|
|000006d0| 49 44 5f 50 54 52 20 61 | 6c 6c 6f 63 61 74 65 20 |ID_PTR a|llocate |
|000006e0| 28 6c 65 6e 67 74 68 29 | 0a 58 20 20 20 73 69 7a |(length)|.X siz|
|000006f0| 65 5f 74 20 6c 65 6e 67 | 74 68 20 3b 0a 58 7b 0a |e_t leng|th ;.X{.|
|00000700| 58 20 20 20 56 4f 49 44 | 5f 50 54 52 20 74 6d 70 |X VOID|_PTR tmp|
|00000710| 20 3b 0a 58 0a 58 20 20 | 20 69 66 20 28 28 74 6d | ;.X.X | if ((tm|
|00000720| 70 20 3d 20 6d 61 6c 6c | 6f 63 20 28 6c 65 6e 67 |p = mall|oc (leng|
|00000730| 74 68 29 29 20 3d 3d 20 | 28 56 4f 49 44 5f 50 54 |th)) == |(VOID_PT|
|00000740| 52 29 20 4e 55 4c 4c 29 | 20 7b 0a 58 20 20 20 20 |R) NULL)| {.X |
|00000750| 20 20 70 65 72 72 6f 72 | 20 28 22 6d 61 6c 6c 6f | perror| ("mallo|
|00000760| 63 22 29 20 3b 0a 58 20 | 20 20 20 20 20 65 78 69 |c") ;.X | exi|
|00000770| 74 20 28 31 29 20 3b 20 | 7d 0a 58 20 20 20 65 6c |t (1) ; |}.X el|
|00000780| 73 65 0a 58 20 20 20 20 | 20 20 72 65 74 75 72 6e |se.X | return|
|00000790| 20 74 6d 70 20 3b 0a 58 | 20 20 20 7d 0a 58 0a 58 | tmp ;.X| }.X.X|
|000007a0| 0a 58 56 4f 49 44 5f 50 | 54 52 20 72 65 5f 61 6c |.XVOID_P|TR re_al|
|000007b0| 6c 6f 63 61 74 65 20 28 | 70 2c 20 6c 65 6e 67 74 |locate (|p, lengt|
|000007c0| 68 29 0a 58 20 20 20 56 | 4f 49 44 5f 50 54 52 20 |h).X V|OID_PTR |
|000007d0| 70 20 3b 0a 58 20 20 20 | 73 69 7a 65 5f 74 20 6c |p ;.X |size_t l|
|000007e0| 65 6e 67 74 68 20 3b 0a | 58 7b 0a 58 20 20 20 56 |ength ;.|X{.X V|
|000007f0| 4f 49 44 5f 50 54 52 20 | 74 6d 70 20 3b 0a 58 0a |OID_PTR |tmp ;.X.|
|00000800| 58 20 20 20 69 66 20 28 | 28 74 6d 70 20 3d 20 72 |X if (|(tmp = r|
|00000810| 65 61 6c 6c 6f 63 20 28 | 70 2c 20 6c 65 6e 67 74 |ealloc (|p, lengt|
|00000820| 68 29 29 20 3d 3d 20 28 | 56 4f 49 44 5f 50 54 52 |h)) == (|VOID_PTR|
|00000830| 29 20 4e 55 4c 4c 29 20 | 7b 0a 58 20 20 20 20 20 |) NULL) |{.X |
|00000840| 20 70 65 72 72 6f 72 20 | 28 22 72 65 61 6c 6c 6f | perror |("reallo|
|00000850| 63 22 29 20 3b 0a 58 20 | 20 20 20 20 20 65 78 69 |c") ;.X | exi|
|00000860| 74 20 28 31 29 20 3b 20 | 7d 0a 58 20 20 20 65 6c |t (1) ; |}.X el|
|00000870| 73 65 0a 58 20 20 20 20 | 20 20 72 65 74 75 72 6e |se.X | return|
|00000880| 20 74 6d 70 20 3b 0a 58 | 20 20 20 7d 0a 45 4e 44 | tmp ;.X| }.END|
|00000890| 5f 4f 46 5f 46 49 4c 45 | 0a 20 20 69 66 20 74 65 |_OF_FILE|. if te|
|000008a0| 73 74 20 31 30 30 30 20 | 2d 6e 65 20 60 77 63 20 |st 1000 |-ne `wc |
|000008b0| 2d 63 20 3c 27 61 6c 6c | 6f 63 61 74 65 2e 63 27 |-c <'all|ocate.c'|
|000008c0| 60 3b 20 74 68 65 6e 0a | 20 20 20 20 65 63 68 6f |`; then.| echo|
|000008d0| 20 73 68 61 72 3a 20 5c | 22 27 61 6c 6c 6f 63 61 | shar: \|"'alloca|
|000008e0| 74 65 2e 63 27 5c 22 20 | 75 6e 70 61 63 6b 65 64 |te.c'\" |unpacked|
|000008f0| 20 77 69 74 68 20 77 72 | 6f 6e 67 20 73 69 7a 65 | with wr|ong size|
|00000900| 21 0a 20 20 66 69 0a 20 | 20 23 20 65 6e 64 20 6f |!. fi. | # end o|
|00000910| 66 20 27 61 6c 6c 6f 63 | 61 74 65 2e 63 27 0a 66 |f 'alloc|ate.c'.f|
|00000920| 69 0a 69 66 20 74 65 73 | 74 20 2d 66 20 27 6c 69 |i.if tes|t -f 'li|
|00000930| 73 74 2e 68 27 20 2d 61 | 20 22 24 7b 31 7d 22 20 |st.h' -a| "${1}" |
|00000940| 21 3d 20 22 2d 63 22 20 | 3b 20 74 68 65 6e 20 0a |!= "-c" |; then .|
|00000950| 20 20 65 63 68 6f 20 73 | 68 61 72 3a 20 57 69 6c | echo s|har: Wil|
|00000960| 6c 20 6e 6f 74 20 63 6c | 6f 62 62 65 72 20 65 78 |l not cl|obber ex|
|00000970| 69 73 74 69 6e 67 20 66 | 69 6c 65 20 5c 22 27 6c |isting f|ile \"'l|
|00000980| 69 73 74 2e 68 27 5c 22 | 0a 65 6c 73 65 0a 20 20 |ist.h'\"|.else. |
|00000990| 65 63 68 6f 20 73 68 61 | 72 3a 20 45 78 74 72 61 |echo sha|r: Extra|
|000009a0| 63 74 69 6e 67 20 5c 22 | 27 6c 69 73 74 2e 68 27 |cting \"|'list.h'|
|000009b0| 5c 22 20 5c 28 31 32 38 | 38 20 63 68 61 72 61 63 |\" \(128|8 charac|
|000009c0| 74 65 72 73 5c 29 0a 20 | 20 73 65 64 20 22 73 2f |ters\). | sed "s/|
|000009d0| 5e 58 2f 2f 22 20 3e 27 | 6c 69 73 74 2e 68 27 20 |^X//" >'|list.h' |
|000009e0| 3c 3c 27 45 4e 44 5f 4f | 46 5f 46 49 4c 45 27 0a |<<'END_O|F_FILE'.|
|000009f0| 58 2f 2a 20 6c 69 73 74 | 2e 68 20 2d 09 44 65 66 |X/* list|.h -.Def|
|00000a00| 69 6e 69 74 69 6f 6e 73 | 20 66 6f 72 20 6c 69 73 |initions| for lis|
|00000a10| 74 20 6d 61 6e 69 70 75 | 6c 61 74 69 6f 6e 0a 58 |t manipu|lation.X|
|00000a20| 20 2a 0a 58 20 2a 20 43 | 6f 70 79 72 69 67 68 74 | *.X * C|opyright|
|00000a30| 20 28 63 29 20 31 39 39 | 31 2c 20 31 39 39 32 20 | (c) 199|1, 1992 |
|00000a40| 54 69 6d 20 43 6f 6f 6b | 2e 0a 58 20 2a 20 4e 6f |Tim Cook|..X * No|
|00000a50| 6e 2d 70 72 6f 66 69 74 | 20 64 69 73 74 72 69 62 |n-profit| distrib|
|00000a60| 75 74 69 6f 6e 20 61 6c | 6c 6f 77 65 64 2e 20 20 |ution al|lowed. |
|00000a70| 53 65 65 20 52 45 41 44 | 4d 45 20 66 6f 72 20 64 |See READ|ME for d|
|00000a80| 65 74 61 69 6c 73 2e 0a | 58 20 2a 0a 58 20 2a 20 |etails..|X *.X * |
|00000a90| 24 49 64 3a 20 6c 69 73 | 74 2e 68 2c 76 20 31 2e |$Id: lis|t.h,v 1.|
|00000aa0| 35 20 31 39 39 32 2f 31 | 32 2f 30 32 20 30 33 3a |5 1992/1|2/02 03:|
|00000ab0| 35 34 3a 31 30 20 74 69 | 6d 20 45 78 70 20 24 0a |54:10 ti|m Exp $.|
|00000ac0| 58 20 2a 2f 0a 58 0a 58 | 23 69 66 6e 64 65 66 20 |X */.X.X|#ifndef |
|00000ad0| 5f 4c 49 53 54 5f 48 5f | 0a 58 23 64 65 66 69 6e |_LIST_H_|.X#defin|
|00000ae0| 65 20 5f 4c 49 53 54 5f | 48 5f 0a 58 0a 58 23 69 |e _LIST_|H_.X.X#i|
|00000af0| 6e 63 6c 75 64 65 20 22 | 63 6f 6e 66 69 67 2e 68 |nclude "|config.h|
|00000b00| 22 0a 58 0a 58 73 74 72 | 75 63 74 20 6c 69 73 74 |".X.Xstr|uct list|
|00000b10| 20 7b 0a 58 20 20 20 56 | 4f 49 44 5f 50 54 52 5f | {.X V|OID_PTR_|
|00000b20| 50 54 52 20 73 74 61 72 | 74 20 3b 09 09 2f 2a 20 |PTR star|t ;../* |
|00000b30| 46 69 72 73 74 20 65 6c | 65 6d 65 6e 74 20 28 4e |First el|ement (N|
|00000b40| 55 4c 4c 20 69 66 20 65 | 6d 70 74 79 29 20 2a 2f |ULL if e|mpty) */|
|00000b50| 0a 58 20 20 20 56 4f 49 | 44 5f 50 54 52 5f 50 54 |.X VOI|D_PTR_PT|
|00000b60| 52 20 65 6e 64 20 3b 09 | 09 2f 2a 20 4c 61 73 74 |R end ;.|./* Last|
|00000b70| 20 65 6c 65 6d 65 6e 74 | 20 2a 2f 0a 58 20 20 20 | element| */.X |
|00000b80| 56 4f 49 44 5f 50 54 52 | 5f 50 54 52 20 73 5f 73 |VOID_PTR|_PTR s_s|
|00000b90| 74 61 72 74 20 3b 09 2f | 2a 20 42 65 67 69 6e 6e |tart ;./|* Beginn|
|00000ba0| 69 6e 67 20 6f 66 20 73 | 74 6f 72 61 67 65 20 2a |ing of s|torage *|
|00000bb0| 2f 0a 58 20 20 20 56 4f | 49 44 5f 50 54 52 5f 50 |/.X VO|ID_PTR_P|
|00000bc0| 54 52 20 73 5f 65 6e 64 | 20 3b 09 09 2f 2a 20 4a |TR s_end| ;../* J|
|00000bd0| 75 73 74 20 70 61 73 74 | 20 65 6e 64 20 6f 66 20 |ust past| end of |
|00000be0| 73 74 6f 72 61 67 65 20 | 2a 2f 0a 58 20 20 20 56 |storage |*/.X V|
|00000bf0| 4f 49 44 5f 50 54 52 5f | 50 54 52 20 64 61 74 61 |OID_PTR_|PTR data|
|00000c00| 20 3b 09 09 2f 2a 20 4c | 69 73 74 20 6f 66 20 70 | ;../* L|ist of p|
|00000c10| 6f 69 6e 74 65 72 73 20 | 74 6f 20 62 6c 6f 63 6b |ointers |to block|
|00000c20| 73 20 6f 66 20 73 74 6f | 72 61 67 65 20 74 6f 0a |s of sto|rage to.|
|00000c30| 58 09 09 09 09 20 20 20 | 68 6f 6c 64 20 64 61 74 |X.... |hold dat|
|00000c40| 61 20 70 6f 69 6e 74 65 | 64 20 74 6f 20 62 79 20 |a pointe|d to by |
|00000c50| 6c 69 73 74 20 69 74 65 | 6d 73 2e 20 2a 2f 0a 58 |list ite|ms. */.X|
|00000c60| 20 20 20 7d 20 3b 0a 58 | 0a 58 23 64 65 66 69 6e | } ;.X|.X#defin|
|00000c70| 65 20 6c 69 73 74 5f 69 | 6e 69 74 28 6c 29 09 28 |e list_i|nit(l).(|
|00000c80| 28 6c 29 2d 3e 73 74 61 | 72 74 20 3d 20 28 6c 29 |(l)->sta|rt = (l)|
|00000c90| 2d 3e 64 61 74 61 20 3d | 20 28 56 4f 49 44 5f 50 |->data =| (VOID_P|
|00000ca0| 54 52 5f 50 54 52 29 20 | 30 29 0a 58 0a 58 2f 2a |TR_PTR) |0).X.X/*|
|00000cb0| 0a 58 20 2a 20 4e 4f 54 | 45 3a 20 20 46 6f 72 20 |.X * NOT|E: For |
|00000cc0| 6c 69 73 74 5f 65 6c 65 | 6d 65 6e 74 73 20 74 6f |list_ele|ments to|
|00000cd0| 20 77 6f 72 6b 2c 20 77 | 65 20 6d 75 73 74 20 62 | work, w|e must b|
|00000ce0| 65 20 61 62 6c 65 20 74 | 6f 20 63 61 73 74 0a 58 |e able t|o cast.X|
|00000cf0| 20 2a 20 56 4f 49 44 5f | 50 54 52 5f 50 54 52 20 | * VOID_|PTR_PTR |
|00000d00| 74 6f 20 22 75 6e 73 69 | 67 6e 65 64 20 6c 6f 6e |to "unsi|gned lon|
|00000d10| 67 22 20 77 69 74 68 6f | 75 74 20 6c 6f 73 69 6e |g" witho|ut losin|
|00000d20| 67 20 61 6e 79 74 68 69 | 6e 67 2e 0a 58 20 2a 2f |g anythi|ng..X */|
|00000d30| 0a 58 0a 58 23 64 65 66 | 69 6e 65 20 6c 69 73 74 |.X.X#def|ine list|
|00000d40| 5f 65 6c 65 6d 65 6e 74 | 73 28 6c 29 20 5c 0a 58 |_element|s(l) \.X|
|00000d50| 09 20 20 20 28 28 6c 29 | 2d 3e 73 74 61 72 74 20 |. ((l)|->start |
|00000d60| 3f 20 28 28 75 6e 73 69 | 67 6e 65 64 20 6c 6f 6e |? ((unsi|gned lon|
|00000d70| 67 29 20 28 6c 29 2d 3e | 65 6e 64 20 2d 20 28 75 |g) (l)->|end - (u|
|00000d80| 6e 73 69 67 6e 65 64 20 | 6c 6f 6e 67 29 20 5c 0a |nsigned |long) \.|
|00000d90| 58 09 20 20 20 20 20 20 | 28 6c 29 2d 3e 73 74 61 |X. |(l)->sta|
|00000da0| 72 74 29 20 2f 20 73 69 | 7a 65 6f 66 20 28 56 4f |rt) / si|zeof (VO|
|00000db0| 49 44 5f 50 54 52 5f 50 | 54 52 29 20 3a 20 30 29 |ID_PTR_P|TR) : 0)|
|00000dc0| 0a 58 23 64 65 66 69 6e | 65 20 6c 69 73 74 5f 65 |.X#defin|e list_e|
|00000dd0| 6c 65 6d 65 6e 74 28 6c | 2c 6e 29 20 5c 0a 58 09 |lement(l|,n) \.X.|
|00000de0| 20 20 20 28 28 6c 29 2d | 3e 73 74 61 72 74 20 3f | ((l)-|>start ?|
|00000df0| 20 28 6c 29 2d 3e 73 74 | 61 72 74 5b 6e 5d 20 3a | (l)->st|art[n] :|
|00000e00| 20 28 56 4f 49 44 5f 50 | 54 52 29 20 30 29 0a 58 | (VOID_P|TR) 0).X|
|00000e10| 23 64 65 66 69 6e 65 20 | 6c 69 73 74 5f 65 6d 70 |#define |list_emp|
|00000e20| 74 79 28 6c 29 20 5c 0a | 58 09 20 20 20 28 28 6c |ty(l) \.|X. ((l|
|00000e30| 29 2d 3e 73 74 61 72 74 | 20 3d 3d 20 28 56 4f 49 |)->start| == (VOI|
|00000e40| 44 5f 50 54 52 5f 50 54 | 52 29 20 30 29 0a 58 0a |D_PTR_PT|R) 0).X.|
|00000e50| 58 23 69 66 6e 64 65 66 | 20 5f 4c 49 53 54 5f 43 |X#ifndef| _LIST_C|
|00000e60| 5f 0a 58 65 78 74 65 72 | 6e 20 56 4f 49 44 20 6c |_.Xexter|n VOID l|
|00000e70| 69 73 74 5f 70 75 73 68 | 20 28 29 20 3b 0a 58 65 |ist_push| () ;.Xe|
|00000e80| 78 74 65 72 6e 20 56 4f | 49 44 5f 50 54 52 20 6c |xtern VO|ID_PTR l|
|00000e90| 69 73 74 5f 70 6f 70 20 | 28 29 20 3b 0a 58 65 78 |ist_pop |() ;.Xex|
|00000ea0| 74 65 72 6e 20 56 4f 49 | 44 5f 50 54 52 20 6c 69 |tern VOI|D_PTR li|
|00000eb0| 73 74 5f 73 68 69 66 74 | 20 28 29 20 3b 0a 58 65 |st_shift| () ;.Xe|
|00000ec0| 78 74 65 72 6e 20 56 4f | 49 44 20 6c 69 73 74 5f |xtern VO|ID list_|
|00000ed0| 73 6f 72 74 20 28 29 20 | 3b 0a 58 65 78 74 65 72 |sort () |;.Xexter|
|00000ee0| 6e 20 56 4f 49 44 20 6c | 69 73 74 5f 66 72 65 65 |n VOID l|ist_free|
|00000ef0| 20 28 29 20 3b 0a 58 23 | 65 6e 64 69 66 09 2f 2a | () ;.X#|endif./*|
|00000f00| 20 5f 4c 49 53 54 5f 43 | 5f 20 2a 2f 0a 58 0a 58 | _LIST_C|_ */.X.X|
|00000f10| 23 65 6e 64 69 66 09 2f | 2a 20 5f 4c 49 53 54 5f |#endif./|* _LIST_|
|00000f20| 48 5f 20 2a 2f 0a 45 4e | 44 5f 4f 46 5f 46 49 4c |H_ */.EN|D_OF_FIL|
|00000f30| 45 0a 20 20 69 66 20 74 | 65 73 74 20 31 32 38 38 |E. if t|est 1288|
|00000f40| 20 2d 6e 65 20 60 77 63 | 20 2d 63 20 3c 27 6c 69 | -ne `wc| -c <'li|
|00000f50| 73 74 2e 68 27 60 3b 20 | 74 68 65 6e 0a 20 20 20 |st.h'`; |then. |
|00000f60| 20 65 63 68 6f 20 73 68 | 61 72 3a 20 5c 22 27 6c | echo sh|ar: \"'l|
|00000f70| 69 73 74 2e 68 27 5c 22 | 20 75 6e 70 61 63 6b 65 |ist.h'\"| unpacke|
|00000f80| 64 20 77 69 74 68 20 77 | 72 6f 6e 67 20 73 69 7a |d with w|rong siz|
|00000f90| 65 21 0a 20 20 66 69 0a | 20 20 23 20 65 6e 64 20 |e!. fi.| # end |
|00000fa0| 6f 66 20 27 6c 69 73 74 | 2e 68 27 0a 66 69 0a 69 |of 'list|.h'.fi.i|
|00000fb0| 66 20 74 65 73 74 20 2d | 66 20 27 70 61 74 68 6e |f test -|f 'pathn|
|00000fc0| 61 6d 65 2e 63 27 20 2d | 61 20 22 24 7b 31 7d 22 |ame.c' -|a "${1}"|
|00000fd0| 20 21 3d 20 22 2d 63 22 | 20 3b 20 74 68 65 6e 20 | != "-c"| ; then |
|00000fe0| 0a 20 20 65 63 68 6f 20 | 73 68 61 72 3a 20 57 69 |. echo |shar: Wi|
|00000ff0| 6c 6c 20 6e 6f 74 20 63 | 6c 6f 62 62 65 72 20 65 |ll not c|lobber e|
|00001000| 78 69 73 74 69 6e 67 20 | 66 69 6c 65 20 5c 22 27 |xisting |file \"'|
|00001010| 70 61 74 68 6e 61 6d 65 | 2e 63 27 5c 22 0a 65 6c |pathname|.c'\".el|
|00001020| 73 65 0a 20 20 65 63 68 | 6f 20 73 68 61 72 3a 20 |se. ech|o shar: |
|00001030| 45 78 74 72 61 63 74 69 | 6e 67 20 5c 22 27 70 61 |Extracti|ng \"'pa|
|00001040| 74 68 6e 61 6d 65 2e 63 | 27 5c 22 20 5c 28 38 36 |thname.c|'\" \(86|
|00001050| 37 20 63 68 61 72 61 63 | 74 65 72 73 5c 29 0a 20 |7 charac|ters\). |
|00001060| 20 73 65 64 20 22 73 2f | 5e 58 2f 2f 22 20 3e 27 | sed "s/|^X//" >'|
|00001070| 70 61 74 68 6e 61 6d 65 | 2e 63 27 20 3c 3c 27 45 |pathname|.c' <<'E|
|00001080| 4e 44 5f 4f 46 5f 46 49 | 4c 45 27 0a 58 2f 2a 20 |ND_OF_FI|LE'.X/* |
|00001090| 70 61 74 68 6e 61 6d 65 | 2e 63 20 2d 09 43 6f 6e |pathname|.c -.Con|
|000010a0| 73 74 72 75 63 74 20 61 | 20 70 61 74 68 6e 61 6d |struct a| pathnam|
|000010b0| 65 20 66 72 6f 6d 20 61 | 20 64 69 72 65 63 74 6f |e from a| directo|
|000010c0| 72 79 20 61 6e 64 20 62 | 61 73 65 6e 61 6d 65 0a |ry and b|asename.|
|000010d0| 58 20 2a 0a 58 20 2a 20 | 53 59 4e 4f 50 53 49 53 |X *.X * |SYNOPSIS|
|000010e0| 0a 58 20 2a 09 63 68 61 | 72 20 2a 70 61 74 68 6e |.X *.cha|r *pathn|
|000010f0| 61 6d 65 20 28 63 68 61 | 72 20 2a 64 69 72 65 63 |ame (cha|r *direc|
|00001100| 74 6f 72 79 2c 20 63 68 | 61 72 20 2a 6e 61 6d 65 |tory, ch|ar *name|
|00001110| 29 0a 58 20 2a 0a 58 20 | 2a 20 52 45 54 55 52 4e |).X *.X |* RETURN|
|00001120| 53 0a 58 20 2a 09 52 65 | 74 75 72 6e 73 20 22 64 |S.X *.Re|turns "d|
|00001130| 69 72 65 63 74 6f 72 79 | 22 20 2b 20 22 2f 22 20 |irectory|" + "/" |
|00001140| 2b 20 22 6e 61 6d 65 22 | 20 28 63 6f 70 69 65 64 |+ "name"| (copied|
|00001150| 20 69 6e 74 6f 20 73 74 | 61 74 69 63 0a 58 20 2a | into st|atic.X *|
|00001160| 09 73 74 6f 72 61 67 65 | 29 2c 20 6f 72 20 61 20 |.storage|), or a |
|00001170| 70 6f 69 6e 74 65 72 20 | 74 6f 20 22 6e 61 6d 65 |pointer |to "name|
|00001180| 22 20 69 66 20 22 64 69 | 72 65 63 74 6f 72 79 22 |" if "di|rectory"|
|00001190| 20 69 73 20 6e 75 6c 6c | 2e 0a 58 20 2a 0a 58 20 | is null|..X *.X |
|000011a0| 2a 20 43 6f 70 79 72 69 | 67 68 74 20 28 63 29 20 |* Copyri|ght (c) |
|000011b0| 31 39 39 31 2c 20 31 39 | 39 32 20 54 69 6d 20 43 |1991, 19|92 Tim C|
|000011c0| 6f 6f 6b 2e 0a 58 20 2a | 20 4e 6f 6e 2d 70 72 6f |ook..X *| Non-pro|
|000011d0| 66 69 74 20 64 69 73 74 | 72 69 62 75 74 69 6f 6e |fit dist|ribution|
|000011e0| 20 61 6c 6c 6f 77 65 64 | 2e 20 20 53 65 65 20 52 | allowed|. See R|
|000011f0| 45 41 44 4d 45 20 66 6f | 72 20 64 65 74 61 69 6c |EADME fo|r detail|
|00001200| 73 2e 0a 58 20 2a 2f 0a | 58 0a 58 73 74 61 74 69 |s..X */.|X.Xstati|
|00001210| 63 20 63 68 61 72 20 72 | 63 73 69 64 5b 5d 20 3d |c char r|csid[] =|
|00001220| 20 22 24 49 64 3a 20 70 | 61 74 68 6e 61 6d 65 2e | "$Id: p|athname.|
|00001230| 63 2c 76 20 31 2e 31 20 | 31 39 39 32 2f 31 32 2f |c,v 1.1 |1992/12/|
|00001240| 30 32 20 30 33 3a 34 38 | 3a 33 38 20 74 69 6d 20 |02 03:48|:38 tim |
|00001250| 45 78 70 20 24 22 3b 0a | 58 0a 58 23 69 6e 63 6c |Exp $";.|X.X#incl|
|00001260| 75 64 65 20 22 63 6f 6e | 66 69 67 2e 68 22 0a 58 |ude "con|fig.h".X|
|00001270| 23 69 6e 63 6c 75 64 65 | 20 3c 73 79 73 2f 70 61 |#include| <sys/pa|
|00001280| 72 61 6d 2e 68 3e 0a 58 | 0a 58 23 69 66 6e 64 65 |ram.h>.X|.X#ifnde|
|00001290| 66 20 4d 41 58 50 41 54 | 48 4c 45 4e 0a 58 23 64 |f MAXPAT|HLEN.X#d|
|000012a0| 65 66 69 6e 65 20 4d 41 | 58 50 41 54 48 4c 45 4e |efine MA|XPATHLEN|
|000012b0| 09 31 30 32 34 0a 58 23 | 65 6e 64 69 66 0a 58 0a |.1024.X#|endif.X.|
|000012c0| 58 0a 58 63 68 61 72 20 | 2a 70 61 74 68 6e 61 6d |X.Xchar |*pathnam|
|000012d0| 65 20 28 64 69 72 65 63 | 74 6f 72 79 2c 20 6e 61 |e (direc|tory, na|
|000012e0| 6d 65 29 0a 58 20 20 20 | 63 68 61 72 20 2a 64 69 |me).X |char *di|
|000012f0| 72 65 63 74 6f 72 79 2c | 20 2a 6e 61 6d 65 20 3b |rectory,| *name ;|
|00001300| 0a 58 7b 0a 58 20 20 20 | 73 74 61 74 69 63 20 63 |.X{.X |static c|
|00001310| 68 61 72 20 72 65 74 75 | 72 6e 5f 76 61 6c 75 65 |har retu|rn_value|
|00001320| 5b 4d 41 58 50 41 54 48 | 4c 45 4e 2b 31 5d 20 3b |[MAXPATH|LEN+1] ;|
|00001330| 0a 58 0a 58 20 20 20 69 | 66 20 28 64 69 72 65 63 |.X.X i|f (direc|
|00001340| 74 6f 72 79 20 26 26 20 | 2a 64 69 72 65 63 74 6f |tory && |*directo|
|00001350| 72 79 20 21 3d 20 45 4f | 53 29 20 7b 0a 58 20 20 |ry != EO|S) {.X |
|00001360| 20 20 20 20 73 74 72 63 | 70 79 20 28 72 65 74 75 | strc|py (retu|
|00001370| 72 6e 5f 76 61 6c 75 65 | 2c 20 64 69 72 65 63 74 |rn_value|, direct|
|00001380| 6f 72 79 29 20 3b 0a 58 | 20 20 20 20 20 20 73 74 |ory) ;.X| st|
|00001390| 72 63 61 74 20 28 72 65 | 74 75 72 6e 5f 76 61 6c |rcat (re|turn_val|
|000013a0| 75 65 2c 20 22 2f 22 29 | 20 3b 0a 58 20 20 20 20 |ue, "/")| ;.X |
|000013b0| 20 20 73 74 72 63 61 74 | 20 28 72 65 74 75 72 6e | strcat| (return|
|000013c0| 5f 76 61 6c 75 65 2c 20 | 6e 61 6d 65 29 20 3b 0a |_value, |name) ;.|
|000013d0| 58 20 20 20 20 20 20 72 | 65 74 75 72 6e 20 72 65 |X r|eturn re|
|000013e0| 74 75 72 6e 5f 76 61 6c | 75 65 20 3b 20 7d 0a 58 |turn_val|ue ; }.X|
|000013f0| 20 20 20 65 6c 73 65 0a | 58 20 20 20 20 20 20 72 | else.|X r|
|00001400| 65 74 75 72 6e 20 6e 61 | 6d 65 20 3b 0a 58 20 20 |eturn na|me ;.X |
|00001410| 20 7d 0a 45 4e 44 5f 4f | 46 5f 46 49 4c 45 0a 20 | }.END_O|F_FILE. |
|00001420| 20 69 66 20 74 65 73 74 | 20 38 36 37 20 2d 6e 65 | if test| 867 -ne|
|00001430| 20 60 77 63 20 2d 63 20 | 3c 27 70 61 74 68 6e 61 | `wc -c |<'pathna|
|00001440| 6d 65 2e 63 27 60 3b 20 | 74 68 65 6e 0a 20 20 20 |me.c'`; |then. |
|00001450| 20 65 63 68 6f 20 73 68 | 61 72 3a 20 5c 22 27 70 | echo sh|ar: \"'p|
|00001460| 61 74 68 6e 61 6d 65 2e | 63 27 5c 22 20 75 6e 70 |athname.|c'\" unp|
|00001470| 61 63 6b 65 64 20 77 69 | 74 68 20 77 72 6f 6e 67 |acked wi|th wrong|
|00001480| 20 73 69 7a 65 21 0a 20 | 20 66 69 0a 20 20 23 20 | size!. | fi. # |
|00001490| 65 6e 64 20 6f 66 20 27 | 70 61 74 68 6e 61 6d 65 |end of '|pathname|
|000014a0| 2e 63 27 0a 66 69 0a 69 | 66 20 74 65 73 74 20 2d |.c'.fi.i|f test -|
|000014b0| 66 20 27 73 74 72 70 62 | 72 6b 2e 63 27 20 2d 61 |f 'strpb|rk.c' -a|
|000014c0| 20 22 24 7b 31 7d 22 20 | 21 3d 20 22 2d 63 22 20 | "${1}" |!= "-c" |
|000014d0| 3b 20 74 68 65 6e 20 0a | 20 20 65 63 68 6f 20 73 |; then .| echo s|
|000014e0| 68 61 72 3a 20 57 69 6c | 6c 20 6e 6f 74 20 63 6c |har: Wil|l not cl|
|000014f0| 6f 62 62 65 72 20 65 78 | 69 73 74 69 6e 67 20 66 |obber ex|isting f|
|00001500| 69 6c 65 20 5c 22 27 73 | 74 72 70 62 72 6b 2e 63 |ile \"'s|trpbrk.c|
|00001510| 27 5c 22 0a 65 6c 73 65 | 0a 20 20 65 63 68 6f 20 |'\".else|. echo |
|00001520| 73 68 61 72 3a 20 45 78 | 74 72 61 63 74 69 6e 67 |shar: Ex|tracting|
|00001530| 20 5c 22 27 73 74 72 70 | 62 72 6b 2e 63 27 5c 22 | \"'strp|brk.c'\"|
|00001540| 20 5c 28 31 31 36 32 20 | 63 68 61 72 61 63 74 65 | \(1162 |characte|
|00001550| 72 73 5c 29 0a 20 20 73 | 65 64 20 22 73 2f 5e 58 |rs\). s|ed "s/^X|
|00001560| 2f 2f 22 20 3e 27 73 74 | 72 70 62 72 6b 2e 63 27 |//" >'st|rpbrk.c'|
|00001570| 20 3c 3c 27 45 4e 44 5f | 4f 46 5f 46 49 4c 45 27 | <<'END_|OF_FILE'|
|00001580| 0a 58 2f 2a 0a 58 20 2a | 20 43 6f 70 79 72 69 67 |.X/*.X *| Copyrig|
|00001590| 68 74 20 28 63 29 20 31 | 39 38 35 20 52 65 67 65 |ht (c) 1|985 Rege|
|000015a0| 6e 74 73 20 6f 66 20 74 | 68 65 20 55 6e 69 76 65 |nts of t|he Unive|
|000015b0| 72 73 69 74 79 20 6f 66 | 20 43 61 6c 69 66 6f 72 |rsity of| Califor|
|000015c0| 6e 69 61 2e 0a 58 20 2a | 20 41 6c 6c 20 72 69 67 |nia..X *| All rig|
|000015d0| 68 74 73 20 72 65 73 65 | 72 76 65 64 2e 0a 58 20 |hts rese|rved..X |
|000015e0| 2a 0a 58 20 2a 20 52 65 | 64 69 73 74 72 69 62 75 |*.X * Re|distribu|
|000015f0| 74 69 6f 6e 20 61 6e 64 | 20 75 73 65 20 69 6e 20 |tion and| use in |
|00001600| 73 6f 75 72 63 65 20 61 | 6e 64 20 62 69 6e 61 72 |source a|nd binar|
|00001610| 79 20 66 6f 72 6d 73 20 | 61 72 65 20 70 65 72 6d |y forms |are perm|
|00001620| 69 74 74 65 64 0a 58 20 | 2a 20 70 72 6f 76 69 64 |itted.X |* provid|
|00001630| 65 64 20 74 68 61 74 20 | 74 68 65 20 61 62 6f 76 |ed that |the abov|
|00001640| 65 20 63 6f 70 79 72 69 | 67 68 74 20 6e 6f 74 69 |e copyri|ght noti|
|00001650| 63 65 20 61 6e 64 20 74 | 68 69 73 20 70 61 72 61 |ce and t|his para|
|00001660| 67 72 61 70 68 20 61 72 | 65 0a 58 20 2a 20 64 75 |graph ar|e.X * du|
|00001670| 70 6c 69 63 61 74 65 64 | 20 69 6e 20 61 6c 6c 20 |plicated| in all |
|00001680| 73 75 63 68 20 66 6f 72 | 6d 73 20 61 6e 64 20 74 |such for|ms and t|
|00001690| 68 61 74 20 61 6e 79 20 | 64 6f 63 75 6d 65 6e 74 |hat any |document|
|000016a0| 61 74 69 6f 6e 2c 0a 58 | 20 2a 20 61 64 76 65 72 |ation,.X| * adver|
|000016b0| 74 69 73 69 6e 67 20 6d | 61 74 65 72 69 61 6c 73 |tising m|aterials|
|000016c0| 2c 20 61 6e 64 20 6f 74 | 68 65 72 20 6d 61 74 65 |, and ot|her mate|
|000016d0| 72 69 61 6c 73 20 72 65 | 6c 61 74 65 64 20 74 6f |rials re|lated to|
|000016e0| 20 73 75 63 68 0a 58 20 | 2a 20 64 69 73 74 72 69 | such.X |* distri|
|000016f0| 62 75 74 69 6f 6e 20 61 | 6e 64 20 75 73 65 20 61 |bution a|nd use a|
|00001700| 63 6b 6e 6f 77 6c 65 64 | 67 65 20 74 68 61 74 20 |cknowled|ge that |
|00001710| 74 68 65 20 73 6f 66 74 | 77 61 72 65 20 77 61 73 |the soft|ware was|
|00001720| 20 64 65 76 65 6c 6f 70 | 65 64 0a 58 20 2a 20 62 | develop|ed.X * b|
|00001730| 79 20 74 68 65 20 55 6e | 69 76 65 72 73 69 74 79 |y the Un|iversity|
|00001740| 20 6f 66 20 43 61 6c 69 | 66 6f 72 6e 69 61 2c 20 | of Cali|fornia, |
|00001750| 42 65 72 6b 65 6c 65 79 | 2e 20 20 54 68 65 20 6e |Berkeley|. The n|
|00001760| 61 6d 65 20 6f 66 20 74 | 68 65 0a 58 20 2a 20 55 |ame of t|he.X * U|
|00001770| 6e 69 76 65 72 73 69 74 | 79 20 6d 61 79 20 6e 6f |niversit|y may no|
|00001780| 74 20 62 65 20 75 73 65 | 64 20 74 6f 20 65 6e 64 |t be use|d to end|
|00001790| 6f 72 73 65 20 6f 72 20 | 70 72 6f 6d 6f 74 65 20 |orse or |promote |
|000017a0| 70 72 6f 64 75 63 74 73 | 20 64 65 72 69 76 65 64 |products| derived|
|000017b0| 0a 58 20 2a 20 66 72 6f | 6d 20 74 68 69 73 20 73 |.X * fro|m this s|
|000017c0| 6f 66 74 77 61 72 65 20 | 77 69 74 68 6f 75 74 20 |oftware |without |
|000017d0| 73 70 65 63 69 66 69 63 | 20 70 72 69 6f 72 20 77 |specific| prior w|
|000017e0| 72 69 74 74 65 6e 20 70 | 65 72 6d 69 73 73 69 6f |ritten p|ermissio|
|000017f0| 6e 2e 0a 58 20 2a 20 54 | 48 49 53 20 53 4f 46 54 |n..X * T|HIS SOFT|
|00001800| 57 41 52 45 20 49 53 20 | 50 52 4f 56 49 44 45 44 |WARE IS |PROVIDED|
|00001810| 20 60 60 41 53 20 49 53 | 27 27 20 41 4e 44 20 57 | ``AS IS|'' AND W|
|00001820| 49 54 48 4f 55 54 20 41 | 4e 59 20 45 58 50 52 45 |ITHOUT A|NY EXPRE|
|00001830| 53 53 20 4f 52 0a 58 20 | 2a 20 49 4d 50 4c 49 45 |SS OR.X |* IMPLIE|
|00001840| 44 20 57 41 52 52 41 4e | 54 49 45 53 2c 20 49 4e |D WARRAN|TIES, IN|
|00001850| 43 4c 55 44 49 4e 47 2c | 20 57 49 54 48 4f 55 54 |CLUDING,| WITHOUT|
|00001860| 20 4c 49 4d 49 54 41 54 | 49 4f 4e 2c 20 54 48 45 | LIMITAT|ION, THE|
|00001870| 20 49 4d 50 4c 49 45 44 | 0a 58 20 2a 20 57 41 52 | IMPLIED|.X * WAR|
|00001880| 52 41 4e 54 49 45 53 20 | 4f 46 20 4d 45 52 43 48 |RANTIES |OF MERCH|
|00001890| 41 4e 54 49 42 49 4c 49 | 54 59 20 41 4e 44 20 46 |ANTIBILI|TY AND F|
|000018a0| 49 54 4e 45 53 53 20 46 | 4f 52 20 41 20 50 41 52 |ITNESS F|OR A PAR|
|000018b0| 54 49 43 55 4c 41 52 20 | 50 55 52 50 4f 53 45 2e |TICULAR |PURPOSE.|
|000018c0| 0a 58 20 2a 2f 0a 58 0a | 58 23 69 66 20 64 65 66 |.X */.X.|X#if def|
|000018d0| 69 6e 65 64 28 4c 49 42 | 43 5f 53 43 43 53 29 20 |ined(LIB|C_SCCS) |
|000018e0| 26 26 20 21 64 65 66 69 | 6e 65 64 28 6c 69 6e 74 |&& !defi|ned(lint|
|000018f0| 29 0a 58 73 74 61 74 69 | 63 20 63 68 61 72 20 73 |).Xstati|c char s|
|00001900| 63 63 73 69 64 5b 5d 20 | 3d 20 22 40 28 23 29 73 |ccsid[] |= "@(#)s|
|00001910| 74 72 70 62 72 6b 2e 63 | 09 35 2e 35 20 28 42 65 |trpbrk.c|.5.5 (Be|
|00001920| 72 6b 65 6c 65 79 29 20 | 35 2f 31 30 2f 38 39 22 |rkeley) |5/10/89"|
|00001930| 3b 0a 58 23 65 6e 64 69 | 66 20 2f 2a 20 4c 49 42 |;.X#endi|f /* LIB|
|00001940| 43 5f 53 43 43 53 20 61 | 6e 64 20 6e 6f 74 20 6c |C_SCCS a|nd not l|
|00001950| 69 6e 74 20 2a 2f 0a 58 | 0a 58 63 68 61 72 20 2a |int */.X|.Xchar *|
|00001960| 0a 58 73 74 72 70 62 72 | 6b 28 73 31 2c 20 73 32 |.Xstrpbr|k(s1, s2|
|00001970| 29 0a 58 09 72 65 67 69 | 73 74 65 72 20 63 68 61 |).X.regi|ster cha|
|00001980| 72 20 2a 73 31 2c 20 2a | 73 32 3b 0a 58 7b 0a 58 |r *s1, *|s2;.X{.X|
|00001990| 09 72 65 67 69 73 74 65 | 72 20 69 6e 74 20 63 2c |.registe|r int c,|
|000019a0| 20 73 63 3b 0a 58 09 72 | 65 67 69 73 74 65 72 20 | sc;.X.r|egister |
|000019b0| 63 68 61 72 20 2a 73 63 | 61 6e 70 3b 0a 58 0a 58 |char *sc|anp;.X.X|
|000019c0| 09 66 6f 72 20 28 3b 20 | 63 20 3d 20 2a 73 31 3b |.for (; |c = *s1;|
|000019d0| 20 2b 2b 73 31 29 0a 58 | 09 09 66 6f 72 20 28 73 | ++s1).X|..for (s|
|000019e0| 63 61 6e 70 20 3d 20 73 | 32 3b 20 73 63 20 3d 20 |canp = s|2; sc = |
|000019f0| 2a 73 63 61 6e 70 2b 2b | 3b 29 0a 58 09 09 09 69 |*scanp++|;).X...i|
|00001a00| 66 20 28 73 63 20 3d 3d | 20 63 29 0a 58 09 09 09 |f (sc ==| c).X...|
|00001a10| 09 72 65 74 75 72 6e 28 | 73 31 29 3b 0a 58 09 72 |.return(|s1);.X.r|
|00001a20| 65 74 75 72 6e 28 30 29 | 3b 0a 58 7d 0a 45 4e 44 |eturn(0)|;.X}.END|
|00001a30| 5f 4f 46 5f 46 49 4c 45 | 0a 20 20 69 66 20 74 65 |_OF_FILE|. if te|
|00001a40| 73 74 20 31 31 36 32 20 | 2d 6e 65 20 60 77 63 20 |st 1162 |-ne `wc |
|00001a50| 2d 63 20 3c 27 73 74 72 | 70 62 72 6b 2e 63 27 60 |-c <'str|pbrk.c'`|
|00001a60| 3b 20 74 68 65 6e 0a 20 | 20 20 20 65 63 68 6f 20 |; then. | echo |
|00001a70| 73 68 61 72 3a 20 5c 22 | 27 73 74 72 70 62 72 6b |shar: \"|'strpbrk|
|00001a80| 2e 63 27 5c 22 20 75 6e | 70 61 63 6b 65 64 20 77 |.c'\" un|packed w|
|00001a90| 69 74 68 20 77 72 6f 6e | 67 20 73 69 7a 65 21 0a |ith wron|g size!.|
|00001aa0| 20 20 66 69 0a 20 20 23 | 20 65 6e 64 20 6f 66 20 | fi. #| end of |
|00001ab0| 27 73 74 72 70 62 72 6b | 2e 63 27 0a 66 69 0a 69 |'strpbrk|.c'.fi.i|
|00001ac0| 66 20 74 65 73 74 20 2d | 66 20 27 76 65 72 73 69 |f test -|f 'versi|
|00001ad0| 6f 6e 2e 68 27 20 2d 61 | 20 22 24 7b 31 7d 22 20 |on.h' -a| "${1}" |
|00001ae0| 21 3d 20 22 2d 63 22 20 | 3b 20 74 68 65 6e 20 0a |!= "-c" |; then .|
|00001af0| 20 20 65 63 68 6f 20 73 | 68 61 72 3a 20 57 69 6c | echo s|har: Wil|
|00001b00| 6c 20 6e 6f 74 20 63 6c | 6f 62 62 65 72 20 65 78 |l not cl|obber ex|
|00001b10| 69 73 74 69 6e 67 20 66 | 69 6c 65 20 5c 22 27 76 |isting f|ile \"'v|
|00001b20| 65 72 73 69 6f 6e 2e 68 | 27 5c 22 0a 65 6c 73 65 |ersion.h|'\".else|
|00001b30| 0a 20 20 65 63 68 6f 20 | 73 68 61 72 3a 20 45 78 |. echo |shar: Ex|
|00001b40| 74 72 61 63 74 69 6e 67 | 20 5c 22 27 76 65 72 73 |tracting| \"'vers|
|00001b50| 69 6f 6e 2e 68 27 5c 22 | 20 5c 28 32 32 33 20 63 |ion.h'\"| \(223 c|
|00001b60| 68 61 72 61 63 74 65 72 | 73 5c 29 0a 20 20 73 65 |haracter|s\). se|
|00001b70| 64 20 22 73 2f 5e 58 2f | 2f 22 20 3e 27 76 65 72 |d "s/^X/|/" >'ver|
|00001b80| 73 69 6f 6e 2e 68 27 20 | 3c 3c 27 45 4e 44 5f 4f |sion.h' |<<'END_O|
|00001b90| 46 5f 46 49 4c 45 27 0a | 58 2f 2a 20 76 65 72 73 |F_FILE'.|X/* vers|
|00001ba0| 69 6f 6e 2e 68 20 2d 09 | 44 65 73 63 72 69 62 65 |ion.h -.|Describe|
|00001bb0| 20 76 65 72 73 69 6f 6e | 0a 58 20 2a 0a 58 20 2a | version|.X *.X *|
|00001bc0| 20 54 68 69 73 20 76 65 | 72 73 69 6f 6e 20 64 65 | This ve|rsion de|
|00001bd0| 66 69 6e 69 74 69 6f 6e | 20 69 73 20 66 61 69 72 |finition| is fair|
|00001be0| 6c 79 20 61 72 62 69 74 | 72 61 72 79 20 61 74 20 |ly arbit|rary at |
|00001bf0| 74 68 65 20 6d 6f 6d 65 | 6e 74 0a 58 20 2a 2f 0a |the mome|nt.X */.|
|00001c00| 58 0a 58 23 69 66 6e 64 | 65 66 20 50 41 43 4b 41 |X.X#ifnd|ef PACKA|
|00001c10| 47 45 5f 4e 41 4d 45 0a | 58 23 64 65 66 69 6e 65 |GE_NAME.|X#define|
|00001c20| 20 50 41 43 4b 41 47 45 | 5f 4e 41 4d 45 09 22 64 | PACKAGE|_NAME."d|
|00001c30| 65 73 63 72 69 62 65 22 | 0a 58 23 65 6e 64 69 66 |escribe"|.X#endif|
|00001c40| 0a 58 0a 58 23 69 66 6e | 64 65 66 20 50 41 43 4b |.X.X#ifn|def PACK|
|00001c50| 41 47 45 5f 56 45 52 53 | 49 4f 4e 0a 58 23 64 65 |AGE_VERS|ION.X#de|
|00001c60| 66 69 6e 65 20 50 41 43 | 4b 41 47 45 5f 56 45 52 |fine PAC|KAGE_VER|
|00001c70| 53 49 4f 4e 09 22 32 2e | 30 22 0a 58 23 65 6e 64 |SION."2.|0".X#end|
|00001c80| 69 66 0a 45 4e 44 5f 4f | 46 5f 46 49 4c 45 0a 20 |if.END_O|F_FILE. |
|00001c90| 20 69 66 20 74 65 73 74 | 20 32 32 33 20 2d 6e 65 | if test| 223 -ne|
|00001ca0| 20 60 77 63 20 2d 63 20 | 3c 27 76 65 72 73 69 6f | `wc -c |<'versio|
|00001cb0| 6e 2e 68 27 60 3b 20 74 | 68 65 6e 0a 20 20 20 20 |n.h'`; t|hen. |
|00001cc0| 65 63 68 6f 20 73 68 61 | 72 3a 20 5c 22 27 76 65 |echo sha|r: \"'ve|
|00001cd0| 72 73 69 6f 6e 2e 68 27 | 5c 22 20 75 6e 70 61 63 |rsion.h'|\" unpac|
|00001ce0| 6b 65 64 20 77 69 74 68 | 20 77 72 6f 6e 67 20 73 |ked with| wrong s|
|00001cf0| 69 7a 65 21 0a 20 20 66 | 69 0a 20 20 23 20 65 6e |ize!. f|i. # en|
|00001d00| 64 20 6f 66 20 27 76 65 | 72 73 69 6f 6e 2e 68 27 |d of 've|rsion.h'|
|00001d10| 0a 66 69 0a 65 63 68 6f | 20 73 68 61 72 3a 20 45 |.fi.echo| shar: E|
|00001d20| 6e 64 20 6f 66 20 61 72 | 63 68 69 76 65 20 33 20 |nd of ar|chive 3 |
|00001d30| 5c 28 6f 66 20 33 5c 29 | 2e 0a 63 70 20 2f 64 65 |\(of 3\)|..cp /de|
|00001d40| 76 2f 6e 75 6c 6c 20 61 | 72 6b 33 69 73 64 6f 6e |v/null a|rk3isdon|
|00001d50| 65 0a 4d 49 53 53 49 4e | 47 3d 22 22 0a 66 6f 72 |e.MISSIN|G="".for|
|00001d60| 20 49 20 69 6e 20 31 20 | 32 20 33 20 3b 20 64 6f | I in 1 |2 3 ; do|
|00001d70| 0a 20 20 20 20 69 66 20 | 74 65 73 74 20 21 20 2d |. if |test ! -|
|00001d80| 66 20 61 72 6b 24 7b 49 | 7d 69 73 64 6f 6e 65 20 |f ark${I|}isdone |
|00001d90| 3b 20 74 68 65 6e 0a 09 | 4d 49 53 53 49 4e 47 3d |; then..|MISSING=|
|00001da0| 22 24 7b 4d 49 53 53 49 | 4e 47 7d 20 24 7b 49 7d |"${MISSI|NG} ${I}|
|00001db0| 22 0a 20 20 20 20 66 69 | 0a 64 6f 6e 65 0a 69 66 |". fi|.done.if|
|00001dc0| 20 74 65 73 74 20 22 24 | 7b 4d 49 53 53 49 4e 47 | test "$|{MISSING|
|00001dd0| 7d 22 20 3d 20 22 22 20 | 3b 20 74 68 65 6e 0a 20 |}" = "" |; then. |
|00001de0| 20 20 20 65 63 68 6f 20 | 59 6f 75 20 68 61 76 65 | echo |You have|
|00001df0| 20 75 6e 70 61 63 6b 65 | 64 20 61 6c 6c 20 33 20 | unpacke|d all 3 |
|00001e00| 61 72 63 68 69 76 65 73 | 2e 0a 20 20 20 20 72 6d |archives|.. rm|
|00001e10| 20 2d 66 20 61 72 6b 5b | 31 2d 39 5d 69 73 64 6f | -f ark[|1-9]isdo|
|00001e20| 6e 65 0a 65 6c 73 65 0a | 20 20 20 20 65 63 68 6f |ne.else.| echo|
|00001e30| 20 59 6f 75 20 73 74 69 | 6c 6c 20 6d 75 73 74 20 | You sti|ll must |
|00001e40| 75 6e 70 61 63 6b 20 74 | 68 65 20 66 6f 6c 6c 6f |unpack t|he follo|
|00001e50| 77 69 6e 67 20 61 72 63 | 68 69 76 65 73 3a 0a 20 |wing arc|hives:. |
|00001e60| 20 20 20 65 63 68 6f 20 | 22 20 20 20 20 20 20 20 | echo |" |
|00001e70| 20 22 20 24 7b 4d 49 53 | 53 49 4e 47 7d 0a 66 69 | " ${MIS|SING}.fi|
|00001e80| 0a 65 78 69 74 20 30 0a | 65 78 69 74 20 30 20 23 |.exit 0.|exit 0 #|
|00001e90| 20 4a 75 73 74 20 69 6e | 20 63 61 73 65 2e 2e 2e | Just in| case...|
|00001ea0| 0a | |. | |
+--------+-------------------------+-------------------------+--------+--------+