home *** CD-ROM | disk | FTP | other *** search
/ Source Code 1992 March / Source_Code_CD-ROM_Walnut_Creek_March_1992.iso / usenet / altsrcs / 2 / 2666 < prev    next >
SHell self-extracting ARchive  |  1991-02-07  |  13.3 KB

open in: MacOS 8.1     |     Win98     |     DOS

view JSON data     |     view as text

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

You can browse this item here: 2666

ConfidenceProgramDetectionMatch TypeSupport
100% dexvert Newsgroup Content (archive/news) magic Supported
100% dexvert SHell self-extracting ARchive (archive/shar) magic Supported
100% dexvert Internet Message Format (text/imf) magic Supported
1% dexvert Text File (text/txt) fallback Supported
100% file news or mail text default
99% file C source text default
98% file makefile script text default
97% file C source, ASCII text default
100% TrID E-Mail message (Var. 2) 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)
100% xdgMime message/rfc822 default



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 46 72 6f 6d 3a 20 62 6f | 79 74 65 72 40 62 69 6d |From: bo|yter@bim|
|00000010| 62 6f 2e 75 75 63 70 20 | 28 4d 61 6a 20 42 72 69 |bo.uucp |(Maj Bri|
|00000020| 61 6e 20 42 6f 79 74 65 | 72 29 0a 4e 65 77 73 67 |an Boyte|r).Newsg|
|00000030| 72 6f 75 70 73 3a 20 61 | 6c 74 2e 73 6f 75 72 63 |roups: a|lt.sourc|
|00000040| 65 73 0a 53 75 62 6a 65 | 63 74 3a 20 7a 69 70 63 |es.Subje|ct: zipc|
|00000050| 6f 64 65 20 28 70 61 72 | 74 20 31 20 6f 66 20 39 |ode (par|t 1 of 9|
|00000060| 29 0a 4d 65 73 73 61 67 | 65 2d 49 44 3a 20 3c 31 |).Messag|e-ID: <1|
|00000070| 39 39 31 46 65 62 36 2e | 30 33 33 37 35 38 2e 31 |991Feb6.|033758.1|
|00000080| 30 38 37 32 40 62 69 6d | 62 6f 2e 75 75 63 70 3e |0872@bim|bo.uucp>|
|00000090| 0a 44 61 74 65 3a 20 36 | 20 46 65 62 20 39 31 20 |.Date: 6| Feb 91 |
|000000a0| 30 33 3a 33 37 3a 35 38 | 20 47 4d 54 0a 0a 54 68 |03:37:58| GMT..Th|
|000000b0| 69 73 20 70 6f 73 74 69 | 6e 67 20 68 61 73 20 39 |is posti|ng has 9|
|000000c0| 20 70 61 72 74 73 2e 0a | 50 61 72 74 20 31 20 69 | parts..|Part 1 i|
|000000d0| 73 20 61 20 70 72 6f 67 | 72 61 6d 20 66 6f 72 20 |s a prog|ram for |
|000000e0| 6c 6f 6f 6b 69 6e 67 2d | 75 70 20 7a 69 70 63 6f |looking-|up zipco|
|000000f0| 64 65 73 2e 20 54 68 65 | 20 70 72 6f 67 72 61 6d |des. The| program|
|00000100| 20 68 61 73 0a 74 77 6f | 20 66 6c 61 76 6f 72 73 | has.two| flavors|
|00000110| 3a 20 61 20 6c 6f 63 61 | 6c 20 76 65 72 73 69 6f |: a loca|l versio|
|00000120| 6e 20 61 6e 64 20 61 6e | 20 72 70 63 20 76 65 72 |n and an| rpc ver|
|00000130| 73 69 6f 6e 2e 0a 50 61 | 72 74 73 20 32 2d 38 20 |sion..Pa|rts 2-8 |
|00000140| 61 72 65 20 74 68 65 20 | 74 61 62 6c 65 20 6f 66 |are the |table of|
|00000150| 20 7a 69 70 63 6f 64 65 | 73 2e 0a 50 61 72 74 20 | zipcode|s..Part |
|00000160| 39 20 69 73 20 61 20 73 | 70 65 63 69 61 6c 20 74 |9 is a s|pecial t|
|00000170| 61 62 6c 65 20 6f 66 20 | 44 65 73 65 72 74 2d 53 |able of |Desert-S|
|00000180| 74 6f 72 6d 20 61 72 6d | 79 2d 6f 6e 6c 79 20 7a |torm arm|y-only z|
|00000190| 69 70 63 6f 64 65 73 2e | 0a 49 66 20 79 6f 75 20 |ipcodes.|.If you |
|000001a0| 64 6f 6e 27 74 20 6c 69 | 6b 65 20 6d 79 20 70 72 |don't li|ke my pr|
|000001b0| 6f 67 72 61 6d 73 20 79 | 6f 75 20 6d 69 67 68 74 |ograms y|ou might|
|000001c0| 20 66 69 6e 64 20 61 6e | 6f 74 68 65 72 20 75 73 | find an|other us|
|000001d0| 65 20 66 6f 72 20 74 68 | 65 0a 7a 69 70 63 6f 64 |e for th|e.zipcod|
|000001e0| 65 20 66 69 6c 65 2e 0a | 0a 43 6f 6e 73 74 72 75 |e file..|.Constru|
|000001f0| 63 74 69 76 65 20 63 72 | 69 74 69 63 69 73 6d 20 |ctive cr|iticism |
|00000200| 69 73 20 77 65 6c 63 6f | 6d 65 20 28 74 68 69 73 |is welco|me (this|
|00000210| 20 69 73 20 6d 79 20 66 | 69 72 73 74 20 72 70 63 | is my f|irst rpc|
|00000220| 20 70 72 6f 67 72 61 6d | 0a 73 6f 20 62 65 20 6b | program|.so be k|
|00000230| 69 6e 64 29 2e 0a 0a 62 | 6f 79 74 65 72 40 66 73 |ind)...b|oyter@fs|
|00000240| 74 63 2d 63 68 76 69 6c | 6c 65 2e 61 72 6d 79 2e |tc-chvil|le.army.|
|00000250| 6d 69 6c 0a 0a 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |mil..---|--------|
|00000260| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000270| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000280| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000290| 2d 2d 2d 2d 2d 0a 23 21 | 2f 62 69 6e 2f 73 68 0a |-----.#!|/bin/sh.|
|000002a0| 23 20 54 68 69 73 20 69 | 73 20 61 20 73 68 65 6c |# This i|s a shel|
|000002b0| 6c 20 61 72 63 68 69 76 | 65 20 28 70 72 6f 64 75 |l archiv|e (produ|
|000002c0| 63 65 64 20 62 79 20 73 | 68 61 72 20 33 2e 34 39 |ced by s|har 3.49|
|000002d0| 29 0a 23 20 54 6f 20 65 | 78 74 72 61 63 74 20 74 |).# To e|xtract t|
|000002e0| 68 65 20 66 69 6c 65 73 | 20 66 72 6f 6d 20 74 68 |he files| from th|
|000002f0| 69 73 20 61 72 63 68 69 | 76 65 2c 20 73 61 76 65 |is archi|ve, save|
|00000300| 20 69 74 20 74 6f 20 61 | 20 66 69 6c 65 2c 20 72 | it to a| file, r|
|00000310| 65 6d 6f 76 65 0a 23 20 | 65 76 65 72 79 74 68 69 |emove.# |everythi|
|00000320| 6e 67 20 61 62 6f 76 65 | 20 74 68 65 20 22 21 2f |ng above| the "!/|
|00000330| 62 69 6e 2f 73 68 22 20 | 6c 69 6e 65 20 61 62 6f |bin/sh" |line abo|
|00000340| 76 65 2c 20 61 6e 64 20 | 74 79 70 65 20 22 73 68 |ve, and |type "sh|
|00000350| 20 66 69 6c 65 5f 6e 61 | 6d 65 22 2e 0a 23 0a 23 | file_na|me"..#.#|
|00000360| 20 6d 61 64 65 20 30 32 | 2f 30 36 2f 31 39 39 31 | made 02|/06/1991|
|00000370| 20 30 33 3a 32 35 20 55 | 54 43 20 62 79 20 72 6f | 03:25 U|TC by ro|
|00000380| 6f 74 40 62 69 6d 62 6f | 0a 23 20 53 6f 75 72 63 |ot@bimbo|.# Sourc|
|00000390| 65 20 64 69 72 65 63 74 | 6f 72 79 20 2f 6c 6f 63 |e direct|ory /loc|
|000003a0| 61 6c 2f 73 72 63 2f 7a | 69 70 63 6f 64 65 0a 23 |al/src/z|ipcode.#|
|000003b0| 0a 23 20 65 78 69 73 74 | 69 6e 67 20 66 69 6c 65 |.# exist|ing file|
|000003c0| 73 20 77 69 6c 6c 20 4e | 4f 54 20 62 65 20 6f 76 |s will N|OT be ov|
|000003d0| 65 72 77 72 69 74 74 65 | 6e 20 75 6e 6c 65 73 73 |erwritte|n unless|
|000003e0| 20 2d 63 20 69 73 20 73 | 70 65 63 69 66 69 65 64 | -c is s|pecified|
|000003f0| 0a 23 0a 23 20 54 68 69 | 73 20 73 68 61 72 20 63 |.#.# Thi|s shar c|
|00000400| 6f 6e 74 61 69 6e 73 3a | 0a 23 20 6c 65 6e 67 74 |ontains:|.# lengt|
|00000410| 68 20 20 6d 6f 64 65 20 | 20 20 20 20 20 20 6e 61 |h mode | na|
|00000420| 6d 65 0a 23 20 2d 2d 2d | 2d 2d 2d 20 2d 2d 2d 2d |me.# ---|--- ----|
|00000430| 2d 2d 2d 2d 2d 2d 20 2d | 2d 2d 2d 2d 2d 2d 2d 2d |------ -|--------|
|00000440| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000450| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000460| 2d 0a 23 20 20 20 31 31 | 32 32 20 2d 72 77 2d 72 |-.# 11|22 -rw-r|
|00000470| 2d 2d 72 2d 2d 20 4d 61 | 6b 65 66 69 6c 65 0a 23 |--r-- Ma|kefile.#|
|00000480| 20 20 20 31 31 39 35 20 | 2d 72 77 2d 72 2d 2d 72 | 1195 |-rw-r--r|
|00000490| 2d 2d 20 52 45 41 44 4d | 45 0a 23 20 20 20 31 30 |-- READM|E.# 10|
|000004a0| 38 33 20 2d 72 77 2d 72 | 2d 2d 72 2d 2d 20 63 6f |83 -rw-r|--r-- co|
|000004b0| 70 79 72 69 67 68 74 2e | 68 0a 23 20 20 20 32 30 |pyright.|h.# 20|
|000004c0| 39 30 20 2d 72 77 2d 72 | 2d 2d 72 2d 2d 20 6c 7a |90 -rw-r|--r-- lz|
|000004d0| 69 70 63 6f 64 65 2e 63 | 0a 23 20 20 20 33 34 34 |ipcode.c|.# 344|
|000004e0| 37 20 2d 72 77 2d 72 2d | 2d 72 2d 2d 20 72 70 63 |7 -rw-r-|-r-- rpc|
|000004f0| 2e 7a 69 70 63 6f 64 65 | 64 2e 63 0a 23 20 20 20 |.zipcode|d.c.# |
|00000500| 20 20 32 39 20 2d 72 77 | 2d 72 2d 2d 72 2d 2d 20 | 29 -rw|-r--r-- |
|00000510| 76 65 72 73 69 6f 6e 2e | 68 0a 23 0a 23 20 3d 3d |version.|h.#.# ==|
|00000520| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 20 4d 61 6b 65 |========|=== Make|
|00000530| 66 69 6c 65 20 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |file ===|========|
|00000540| 3d 3d 3d 0a 69 66 20 74 | 65 73 74 20 2d 66 20 27 |===.if t|est -f '|
|00000550| 4d 61 6b 65 66 69 6c 65 | 27 20 2d 61 20 58 22 24 |Makefile|' -a X"$|
|00000560| 31 22 20 21 3d 20 58 22 | 2d 63 22 3b 20 74 68 65 |1" != X"|-c"; the|
|00000570| 6e 0a 09 65 63 68 6f 20 | 27 78 20 2d 20 73 6b 69 |n..echo |'x - ski|
|00000580| 70 70 69 6e 67 20 4d 61 | 6b 65 66 69 6c 65 20 28 |pping Ma|kefile (|
|00000590| 46 69 6c 65 20 61 6c 72 | 65 61 64 79 20 65 78 69 |File alr|eady exi|
|000005a0| 73 74 73 29 27 0a 65 6c | 73 65 0a 65 63 68 6f 20 |sts)'.el|se.echo |
|000005b0| 27 78 20 2d 20 65 78 74 | 72 61 63 74 69 6e 67 20 |'x - ext|racting |
|000005c0| 4d 61 6b 65 66 69 6c 65 | 20 28 54 65 78 74 29 27 |Makefile| (Text)'|
|000005d0| 0a 73 65 64 20 27 73 2f | 5e 58 2f 2f 27 20 3c 3c |.sed 's/|^X//' <<|
|000005e0| 20 27 53 48 41 52 5f 45 | 4f 46 27 20 3e 20 27 4d | 'SHAR_E|OF' > 'M|
|000005f0| 61 6b 65 66 69 6c 65 27 | 20 26 26 0a 43 46 4c 41 |akefile'| &&.CFLA|
|00000600| 47 53 3d 2d 4f 0a 58 0a | 61 6c 6c 3a 20 7a 69 70 |GS=-O.X.|all: zip|
|00000610| 63 6f 64 65 20 6c 7a 69 | 70 63 6f 64 65 20 72 70 |code lzi|pcode rp|
|00000620| 63 2e 7a 69 70 63 6f 64 | 65 64 0a 58 0a 6c 7a 69 |c.zipcod|ed.X.lzi|
|00000630| 70 63 6f 64 65 3a 20 6c | 7a 69 70 63 6f 64 65 2e |pcode: l|zipcode.|
|00000640| 6f 0a 58 09 63 63 20 2d | 6f 20 6c 7a 69 70 63 6f |o.X.cc -|o lzipco|
|00000650| 64 65 20 24 7b 43 46 4c | 41 47 53 7d 20 6c 7a 69 |de ${CFL|AGS} lzi|
|00000660| 70 63 6f 64 65 2e 6f 0a | 58 0a 63 6c 65 61 6e 3a |pcode.o.|X.clean:|
|00000670| 0a 58 09 72 6d 20 2d 66 | 20 7a 69 70 63 6f 64 65 |.X.rm -f| zipcode|
|00000680| 20 2a 2e 6f 20 63 6f 72 | 65 20 6c 7a 69 70 63 6f | *.o cor|e lzipco|
|00000690| 64 65 20 72 70 63 2e 7a | 69 70 63 6f 64 65 64 0a |de rpc.z|ipcoded.|
|000006a0| 58 09 72 6d 20 2d 66 20 | 7a 69 70 63 6f 64 65 2e |X.rm -f |zipcode.|
|000006b0| 68 20 7a 69 70 63 6f 64 | 65 5f 63 6c 6e 74 2e 63 |h zipcod|e_clnt.c|
|000006c0| 20 7a 69 70 63 6f 64 65 | 5f 73 76 63 2e 63 20 7a | zipcode|_svc.c z|
|000006d0| 69 70 63 6f 64 65 5f 78 | 64 72 2e 63 0a 58 09 72 |ipcode_x|dr.c.X.r|
|000006e0| 6d 20 2d 66 20 7a 69 70 | 63 6f 64 65 2e 74 78 74 |m -f zip|code.txt|
|000006f0| 0a 58 0a 69 6e 73 74 61 | 6c 6c 3a 20 7a 69 70 63 |.X.insta|ll: zipc|
|00000700| 6f 64 65 20 72 70 63 2e | 7a 69 70 63 6f 64 65 64 |ode rpc.|zipcoded|
|00000710| 20 7a 69 70 63 6f 64 65 | 2e 74 78 74 0a 58 09 69 | zipcode|.txt.X.i|
|00000720| 6e 73 74 61 6c 6c 20 2d | 6f 20 72 6f 6f 74 20 2d |nstall -|o root -|
|00000730| 67 20 77 68 65 65 6c 20 | 2d 6d 20 37 35 35 20 7a |g wheel |-m 755 z|
|00000740| 69 70 63 6f 64 65 20 20 | 20 20 20 20 2f 75 73 72 |ipcode | /usr|
|00000750| 2f 6c 6f 63 61 6c 2f 62 | 69 6e 0a 58 09 69 6e 73 |/local/b|in.X.ins|
|00000760| 74 61 6c 6c 20 2d 6f 20 | 72 6f 6f 74 20 2d 67 20 |tall -o |root -g |
|00000770| 77 68 65 65 6c 20 2d 6d | 20 37 35 35 20 72 70 63 |wheel -m| 755 rpc|
|00000780| 2e 7a 69 70 63 6f 64 65 | 64 20 2f 75 73 72 2f 65 |.zipcode|d /usr/e|
|00000790| 74 63 0a 58 09 69 6e 73 | 74 61 6c 6c 20 2d 6f 20 |tc.X.ins|tall -o |
|000007a0| 72 6f 6f 74 20 2d 67 20 | 77 68 65 65 6c 20 2d 6d |root -g |wheel -m|
|000007b0| 20 36 34 34 20 7a 69 70 | 63 6f 64 65 2e 74 78 74 | 644 zip|code.txt|
|000007c0| 20 20 2f 75 73 72 2f 6c | 6f 63 61 6c 2f 6c 69 62 | /usr/l|ocal/lib|
|000007d0| 0a 58 09 69 6e 73 74 61 | 6c 6c 20 2d 6f 20 72 6f |.X.insta|ll -o ro|
|000007e0| 6f 74 20 2d 67 20 77 68 | 65 65 6c 20 2d 6d 20 36 |ot -g wh|eel -m 6|
|000007f0| 34 34 20 7a 69 70 63 6f | 64 65 2e 31 20 20 20 20 |44 zipco|de.1 |
|00000800| 2f 75 73 72 2f 6c 6f 63 | 61 6c 2f 6d 61 6e 2f 6d |/usr/loc|al/man/m|
|00000810| 61 6e 31 0a 58 0a 7a 69 | 70 63 6f 64 65 2e 74 78 |an1.X.zi|pcode.tx|
|00000820| 74 3a 20 7a 69 70 63 6f | 64 65 2e 74 78 74 2e 31 |t: zipco|de.txt.1|
|00000830| 20 7a 69 70 63 6f 64 65 | 2e 74 78 74 2e 32 20 7a | zipcode|.txt.2 z|
|00000840| 69 70 63 6f 64 65 2e 74 | 78 74 2e 33 20 7a 69 70 |ipcode.t|xt.3 zip|
|00000850| 63 6f 64 65 2e 74 78 74 | 2e 34 20 5c 0a 58 09 20 |code.txt|.4 \.X. |
|00000860| 20 20 20 20 7a 69 70 63 | 6f 64 65 2e 74 78 74 2e | zipc|ode.txt.|
|00000870| 35 20 7a 69 70 63 6f 64 | 65 2e 74 78 74 2e 36 20 |5 zipcod|e.txt.6 |
|00000880| 7a 69 70 63 6f 64 65 2e | 74 78 74 2e 37 20 7a 69 |zipcode.|txt.7 zi|
|00000890| 70 63 6f 64 65 2e 74 78 | 74 2e 38 0a 58 09 63 61 |pcode.tx|t.8.X.ca|
|000008a0| 74 20 7a 69 70 63 6f 64 | 65 2e 74 78 74 2e 5b 31 |t zipcod|e.txt.[1|
|000008b0| 2d 38 5d 20 3e 3e 20 7a | 69 70 63 6f 64 65 2e 74 |-8] >> z|ipcode.t|
|000008c0| 78 74 0a 58 0a 7a 69 70 | 63 6f 64 65 3a 20 7a 69 |xt.X.zip|code: zi|
|000008d0| 70 63 6f 64 65 5f 63 6c | 6e 74 2e 6f 20 7a 69 70 |pcode_cl|nt.o zip|
|000008e0| 63 6f 64 65 2e 6f 20 7a | 69 70 63 6f 64 65 5f 78 |code.o z|ipcode_x|
|000008f0| 64 72 2e 6f 0a 58 09 63 | 63 20 24 7b 43 46 4c 41 |dr.o.X.c|c ${CFLA|
|00000900| 47 53 7d 20 2d 6f 20 7a | 69 70 63 6f 64 65 20 7a |GS} -o z|ipcode z|
|00000910| 69 70 63 6f 64 65 5f 63 | 6c 6e 74 2e 6f 20 7a 69 |ipcode_c|lnt.o zi|
|00000920| 70 63 6f 64 65 2e 6f 20 | 7a 69 70 63 6f 64 65 5f |pcode.o |zipcode_|
|00000930| 78 64 72 2e 6f 0a 58 0a | 72 70 63 2e 7a 69 70 63 |xdr.o.X.|rpc.zipc|
|00000940| 6f 64 65 64 3a 20 7a 69 | 70 63 6f 64 65 5f 73 76 |oded: zi|pcode_sv|
|00000950| 63 2e 6f 20 20 72 70 63 | 2e 7a 69 70 63 6f 64 65 |c.o rpc|.zipcode|
|00000960| 64 2e 6f 20 7a 69 70 63 | 6f 64 65 5f 78 64 72 2e |d.o zipc|ode_xdr.|
|00000970| 6f 0a 58 09 63 63 20 24 | 7b 43 46 4c 41 47 53 7d |o.X.cc $|{CFLAGS}|
|00000980| 20 2d 6f 20 72 70 63 2e | 7a 69 70 63 6f 64 65 64 | -o rpc.|zipcoded|
|00000990| 20 7a 69 70 63 6f 64 65 | 5f 73 76 63 2e 6f 20 72 | zipcode|_svc.o r|
|000009a0| 70 63 2e 7a 69 70 63 6f | 64 65 64 2e 6f 20 7a 69 |pc.zipco|ded.o zi|
|000009b0| 70 63 6f 64 65 5f 78 64 | 72 2e 6f 0a 58 0a 7a 69 |pcode_xd|r.o.X.zi|
|000009c0| 70 63 6f 64 65 5f 73 76 | 63 2e 6f 3a 20 20 7a 69 |pcode_sv|c.o: zi|
|000009d0| 70 63 6f 64 65 2e 68 0a | 7a 69 70 63 6f 64 65 5f |pcode.h.|zipcode_|
|000009e0| 63 6c 6e 74 2e 6f 3a 20 | 7a 69 70 63 6f 64 65 2e |clnt.o: |zipcode.|
|000009f0| 68 0a 72 70 63 2e 7a 69 | 70 63 6f 64 65 64 2e 6f |h.rpc.zi|pcoded.o|
|00000a00| 3a 20 7a 69 70 63 6f 64 | 65 2e 68 0a 7a 69 70 63 |: zipcod|e.h.zipc|
|00000a10| 6f 64 65 5f 78 64 72 2e | 6f 3a 20 20 7a 69 70 63 |ode_xdr.|o: zipc|
|00000a20| 6f 64 65 2e 68 0a 7a 69 | 70 63 6f 64 65 2e 6f 3a |ode.h.zi|pcode.o:|
|00000a30| 20 20 20 20 20 20 7a 69 | 70 63 6f 64 65 2e 68 20 | zi|pcode.h |
|00000a40| 76 65 72 73 69 6f 6e 2e | 68 0a 58 0a 7a 69 70 63 |version.|h.X.zipc|
|00000a50| 6f 64 65 2e 68 3a 20 7a | 69 70 63 6f 64 65 2e 78 |ode.h: z|ipcode.x|
|00000a60| 0a 58 09 72 70 63 67 65 | 6e 20 7a 69 70 63 6f 64 |.X.rpcge|n zipcod|
|00000a70| 65 2e 78 0a 53 48 41 52 | 5f 45 4f 46 0a 63 68 6d |e.x.SHAR|_EOF.chm|
|00000a80| 6f 64 20 30 36 34 34 20 | 4d 61 6b 65 66 69 6c 65 |od 0644 |Makefile|
|00000a90| 20 7c 7c 0a 65 63 68 6f | 20 27 72 65 73 74 6f 72 | ||.echo| 'restor|
|00000aa0| 65 20 6f 66 20 4d 61 6b | 65 66 69 6c 65 20 66 61 |e of Mak|efile fa|
|00000ab0| 69 6c 65 64 27 0a 57 63 | 5f 63 3d 22 60 77 63 20 |iled'.Wc|_c="`wc |
|00000ac0| 2d 63 20 3c 20 27 4d 61 | 6b 65 66 69 6c 65 27 60 |-c < 'Ma|kefile'`|
|00000ad0| 22 0a 74 65 73 74 20 31 | 31 32 32 20 2d 65 71 20 |".test 1|122 -eq |
|00000ae0| 22 24 57 63 5f 63 22 20 | 7c 7c 0a 09 65 63 68 6f |"$Wc_c" |||..echo|
|00000af0| 20 27 4d 61 6b 65 66 69 | 6c 65 3a 20 6f 72 69 67 | 'Makefi|le: orig|
|00000b00| 69 6e 61 6c 20 73 69 7a | 65 20 31 31 32 32 2c 20 |inal siz|e 1122, |
|00000b10| 63 75 72 72 65 6e 74 20 | 73 69 7a 65 27 20 22 24 |current |size' "$|
|00000b20| 57 63 5f 63 22 0a 66 69 | 0a 23 20 3d 3d 3d 3d 3d |Wc_c".fi|.# =====|
|00000b30| 3d 3d 3d 3d 3d 3d 3d 3d | 20 52 45 41 44 4d 45 20 |========| README |
|00000b40| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 0a 69 |========|======.i|
|00000b50| 66 20 74 65 73 74 20 2d | 66 20 27 52 45 41 44 4d |f test -|f 'READM|
|00000b60| 45 27 20 2d 61 20 58 22 | 24 31 22 20 21 3d 20 58 |E' -a X"|$1" != X|
|00000b70| 22 2d 63 22 3b 20 74 68 | 65 6e 0a 09 65 63 68 6f |"-c"; th|en..echo|
|00000b80| 20 27 78 20 2d 20 73 6b | 69 70 70 69 6e 67 20 52 | 'x - sk|ipping R|
|00000b90| 45 41 44 4d 45 20 28 46 | 69 6c 65 20 61 6c 72 65 |EADME (F|ile alre|
|00000ba0| 61 64 79 20 65 78 69 73 | 74 73 29 27 0a 65 6c 73 |ady exis|ts)'.els|
|00000bb0| 65 0a 65 63 68 6f 20 27 | 78 20 2d 20 65 78 74 72 |e.echo '|x - extr|
|00000bc0| 61 63 74 69 6e 67 20 52 | 45 41 44 4d 45 20 28 54 |acting R|EADME (T|
|00000bd0| 65 78 74 29 27 0a 73 65 | 64 20 27 73 2f 5e 58 2f |ext)'.se|d 's/^X/|
|00000be0| 2f 27 20 3c 3c 20 27 53 | 48 41 52 5f 45 4f 46 27 |/' << 'S|HAR_EOF'|
|00000bf0| 20 3e 20 27 52 45 41 44 | 4d 45 27 20 26 26 0a 52 | > 'READ|ME' &&.R|
|00000c00| 45 41 44 4d 45 20 66 6f | 72 20 7a 69 70 63 6f 64 |EADME fo|r zipcod|
|00000c10| 65 20 70 72 6f 67 72 61 | 6d 2e 2e 2e 0a 58 0a 54 |e progra|m....X.T|
|00000c20| 68 69 73 20 70 72 6f 67 | 72 61 6d 20 68 61 73 20 |his prog|ram has |
|00000c30| 34 20 6d 61 69 6e 20 70 | 61 72 74 73 3a 0a 58 20 |4 main p|arts:.X |
|00000c40| 20 31 29 20 7a 69 70 63 | 6f 64 65 2e 74 78 74 20 | 1) zipc|ode.txt |
|00000c50| 2d 2d 20 41 6e 20 61 73 | 63 69 69 20 66 69 6c 65 |-- An as|cii file|
|00000c60| 20 6f 66 20 6b 6e 6f 77 | 6e 20 7a 69 70 63 6f 64 | of know|n zipcod|
|00000c70| 65 73 2e 20 49 20 79 6f | 75 20 64 6f 6e 27 74 0a |es. I yo|u don't.|
|00000c80| 58 20 20 20 20 20 6c 69 | 6b 65 20 6d 79 20 70 72 |X li|ke my pr|
|00000c90| 6f 67 72 61 6d 20 79 6f | 75 20 63 61 6e 20 77 72 |ogram yo|u can wr|
|00000ca0| 69 74 65 20 79 6f 75 72 | 20 6f 77 6e 20 75 73 69 |ite your| own usi|
|00000cb0| 6e 67 20 74 68 69 73 20 | 66 69 6c 65 2e 0a 58 20 |ng this |file..X |
|00000cc0| 20 20 20 20 54 68 65 20 | 66 69 6c 65 20 69 73 20 | The |file is |
|00000cd0| 73 68 69 70 70 65 64 20 | 69 6e 20 38 20 73 65 67 |shipped |in 8 seg|
|00000ce0| 6d 65 6e 74 73 2e 20 54 | 68 65 20 6c 61 73 74 20 |ments. T|he last |
|00000cf0| 73 65 67 6d 65 6e 74 20 | 69 73 0a 58 20 20 20 20 |segment |is.X |
|00000d00| 20 61 20 73 70 65 63 69 | 61 6c 20 22 61 6e 6e 65 | a speci|al "anne|
|00000d10| 78 22 20 6f 66 20 7a 69 | 70 63 6f 64 65 73 20 69 |x" of zi|pcodes i|
|00000d20| 6e 20 75 73 65 20 62 79 | 20 61 72 6d 79 20 75 6e |n use by| army un|
|00000d30| 69 74 73 20 69 6e 20 6f | 70 65 72 61 74 69 6f 6e |its in o|peration|
|00000d40| 0a 58 20 20 20 20 20 44 | 45 53 45 52 54 2d 53 54 |.X D|ESERT-ST|
|00000d50| 4f 52 4d 2e 0a 58 20 20 | 32 29 20 6c 7a 69 70 63 |ORM..X |2) lzipc|
|00000d60| 6f 64 65 20 2d 2d 20 77 | 68 65 6e 20 79 6f 75 20 |ode -- w|hen you |
|00000d70| 6d 61 6b 65 20 74 68 69 | 73 20 70 72 6f 67 72 61 |make thi|s progra|
|00000d80| 6d 2c 20 79 6f 75 20 63 | 61 6e 20 73 65 61 72 63 |m, you c|an searc|
|00000d90| 68 20 74 68 65 0a 58 20 | 20 20 20 20 61 73 63 69 |h the.X | asci|
|00000da0| 69 20 66 6f 72 20 7a 69 | 70 63 6f 64 65 73 20 28 |i for zi|pcodes (|
|00000db0| 67 69 76 65 6e 20 74 68 | 65 20 63 69 74 79 20 6e |given th|e city n|
|00000dc0| 61 6d 65 29 20 6f 72 20 | 74 68 65 20 63 69 74 79 |ame) or |the city|
|00000dd0| 20 6e 61 6d 65 0a 58 20 | 20 20 20 20 28 67 69 76 | name.X | (giv|
|00000de0| 65 6e 20 74 68 65 20 7a | 69 70 63 6f 64 65 29 2e |en the z|ipcode).|
|00000df0| 20 54 68 69 73 20 70 72 | 6f 67 72 61 6d 20 63 61 | This pr|ogram ca|
|00000e00| 6c 6c 73 20 22 65 67 72 | 65 70 22 20 74 6f 20 64 |lls "egr|ep" to d|
|00000e10| 6f 20 74 68 65 0a 58 20 | 20 20 20 20 61 63 74 75 |o the.X | actu|
|00000e20| 61 6c 20 73 65 61 72 63 | 68 2e 0a 58 20 20 33 29 |al searc|h..X 3)|
|00000e30| 20 72 70 63 2e 7a 69 70 | 63 6f 64 65 64 20 2d 2d | rpc.zip|coded --|
|00000e40| 20 61 6e 20 72 70 63 20 | 73 65 72 76 65 72 20 74 | an rpc |server t|
|00000e50| 6f 20 62 65 20 69 6e 73 | 74 61 6c 6c 65 64 20 6f |o be ins|talled o|
|00000e60| 6e 20 74 68 65 20 73 61 | 6d 65 20 68 6f 73 74 0a |n the sa|me host.|
|00000e70| 58 20 20 20 20 20 74 68 | 61 74 20 74 68 65 20 7a |X th|at the z|
|00000e80| 69 70 63 6f 64 65 2e 74 | 78 74 20 66 69 6c 65 20 |ipcode.t|xt file |
|00000e90| 72 65 73 69 64 65 73 2e | 20 59 6f 75 20 6e 65 65 |resides.| You nee|
|00000ea0| 64 20 74 6f 20 73 74 61 | 72 74 20 74 68 65 20 73 |d to sta|rt the s|
|00000eb0| 65 72 76 65 72 0a 58 20 | 20 20 20 20 62 79 20 70 |erver.X | by p|
|00000ec0| 75 74 74 69 6e 67 20 22 | 2f 75 73 72 2f 65 74 63 |utting "|/usr/etc|
|00000ed0| 2f 72 70 63 2e 7a 69 70 | 63 6f 64 65 64 20 26 22 |/rpc.zip|coded &"|
|00000ee0| 20 69 6e 20 79 6f 75 72 | 20 2f 65 74 63 2f 72 63 | in your| /etc/rc|
|00000ef0| 2e 6c 6f 63 61 6c 20 66 | 69 6c 65 0a 58 20 20 20 |.local f|ile.X |
|00000f00| 20 20 61 6e 64 20 22 7a | 69 70 63 6f 64 65 64 20 | and "z|ipcoded |
|00000f10| 35 33 36 38 37 31 30 34 | 38 22 20 69 6e 20 79 6f |53687104|8" in yo|
|00000f20| 75 72 20 2f 65 74 63 2f | 72 70 63 20 66 69 6c 65 |ur /etc/|rpc file|
|00000f30| 20 28 54 68 65 0a 58 20 | 20 20 20 20 61 73 73 69 | (The.X | assi|
|00000f40| 67 6e 6d 65 6e 74 20 6f | 66 20 35 33 36 38 37 31 |gnment o|f 536871|
|00000f50| 30 34 38 20 77 61 73 20 | 61 72 62 69 74 72 61 72 |048 was |arbitrar|
|00000f60| 79 2e 20 49 66 20 79 6f | 75 20 75 73 65 20 61 20 |y. If yo|u use a |
|00000f70| 64 69 66 66 65 72 65 6e | 74 0a 58 20 20 20 20 20 |differen|t.X |
|00000f80| 6e 75 6d 62 65 72 2c 20 | 63 68 61 6e 67 65 20 74 |number, |change t|
|00000f90| 68 65 20 61 70 70 72 6f | 70 72 69 61 74 65 20 6e |he appro|priate n|
|00000fa0| 75 6d 62 65 72 73 20 69 | 6e 20 74 68 65 20 63 6f |umbers i|n the co|
|00000fb0| 64 65 29 2e 0a 58 20 20 | 34 29 20 7a 69 70 63 6f |de)..X |4) zipco|
|00000fc0| 64 65 20 2d 2d 20 61 6e | 20 72 70 63 20 63 6c 69 |de -- an| rpc cli|
|00000fd0| 65 6e 74 20 70 72 6f 67 | 72 61 6d 20 77 68 69 63 |ent prog|ram whic|
|00000fe0| 68 20 63 61 6c 6c 73 20 | 72 70 63 2e 7a 69 70 63 |h calls |rpc.zipc|
|00000ff0| 6f 64 65 64 2e 0a 58 0a | 54 68 69 73 20 69 73 20 |oded..X.|This is |
|00001000| 6d 79 20 66 69 72 73 74 | 20 75 73 65 20 6f 66 20 |my first| use of |
|00001010| 52 50 43 2c 20 73 6f 20 | 63 6f 6e 74 61 63 74 20 |RPC, so |contact |
|00001020| 74 68 65 20 61 75 74 68 | 6f 72 20 69 66 20 79 6f |the auth|or if yo|
|00001030| 75 20 68 61 76 65 0a 61 | 6e 79 20 22 69 6d 70 72 |u have.a|ny "impr|
|00001040| 6f 76 65 6d 65 6e 74 73 | 22 2e 0a 58 0a 4d 61 6a |ovements|"..X.Maj|
|00001050| 20 42 72 69 61 6e 20 42 | 6f 79 74 65 72 0a 55 53 | Brian B|oyter.US|
|00001060| 20 41 72 6d 79 20 46 6f | 72 65 69 67 6e 20 53 63 | Army Fo|reign Sc|
|00001070| 69 65 6e 63 65 20 61 6e | 64 20 54 65 63 68 6e 6f |ience an|d Techno|
|00001080| 6c 6f 67 79 20 43 65 6e | 74 65 72 0a 43 68 61 72 |logy Cen|ter.Char|
|00001090| 6c 6f 74 74 65 73 76 69 | 6c 6c 65 2c 20 56 61 0a |lottesvi|lle, Va.|
|000010a0| 62 6f 79 74 65 72 40 66 | 73 74 63 2d 63 68 76 69 |boyter@f|stc-chvi|
|000010b0| 6c 6c 65 2e 61 72 6d 79 | 2e 6d 69 6c 0a 53 48 41 |lle.army|.mil.SHA|
|000010c0| 52 5f 45 4f 46 0a 63 68 | 6d 6f 64 20 30 36 34 34 |R_EOF.ch|mod 0644|
|000010d0| 20 52 45 41 44 4d 45 20 | 7c 7c 0a 65 63 68 6f 20 | README |||.echo |
|000010e0| 27 72 65 73 74 6f 72 65 | 20 6f 66 20 52 45 41 44 |'restore| of READ|
|000010f0| 4d 45 20 66 61 69 6c 65 | 64 27 0a 57 63 5f 63 3d |ME faile|d'.Wc_c=|
|00001100| 22 60 77 63 20 2d 63 20 | 3c 20 27 52 45 41 44 4d |"`wc -c |< 'READM|
|00001110| 45 27 60 22 0a 74 65 73 | 74 20 31 31 39 35 20 2d |E'`".tes|t 1195 -|
|00001120| 65 71 20 22 24 57 63 5f | 63 22 20 7c 7c 0a 09 65 |eq "$Wc_|c" ||..e|
|00001130| 63 68 6f 20 27 52 45 41 | 44 4d 45 3a 20 6f 72 69 |cho 'REA|DME: ori|
|00001140| 67 69 6e 61 6c 20 73 69 | 7a 65 20 31 31 39 35 2c |ginal si|ze 1195,|
|00001150| 20 63 75 72 72 65 6e 74 | 20 73 69 7a 65 27 20 22 | current| size' "|
|00001160| 24 57 63 5f 63 22 0a 66 | 69 0a 23 20 3d 3d 3d 3d |$Wc_c".f|i.# ====|
|00001170| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 20 63 6f 70 79 72 69 |========|= copyri|
|00001180| 67 68 74 2e 68 20 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |ght.h ==|========|
|00001190| 3d 3d 3d 3d 0a 69 66 20 | 74 65 73 74 20 2d 66 20 |====.if |test -f |
|000011a0| 27 63 6f 70 79 72 69 67 | 68 74 2e 68 27 20 2d 61 |'copyrig|ht.h' -a|
|000011b0| 20 58 22 24 31 22 20 21 | 3d 20 58 22 2d 63 22 3b | X"$1" !|= X"-c";|
|000011c0| 20 74 68 65 6e 0a 09 65 | 63 68 6f 20 27 78 20 2d | then..e|cho 'x -|
|000011d0| 20 73 6b 69 70 70 69 6e | 67 20 63 6f 70 79 72 69 | skippin|g copyri|
|000011e0| 67 68 74 2e 68 20 28 46 | 69 6c 65 20 61 6c 72 65 |ght.h (F|ile alre|
|000011f0| 61 64 79 20 65 78 69 73 | 74 73 29 27 0a 65 6c 73 |ady exis|ts)'.els|
|00001200| 65 0a 65 63 68 6f 20 27 | 78 20 2d 20 65 78 74 72 |e.echo '|x - extr|
|00001210| 61 63 74 69 6e 67 20 63 | 6f 70 79 72 69 67 68 74 |acting c|opyright|
|00001220| 2e 68 20 28 54 65 78 74 | 29 27 0a 73 65 64 20 27 |.h (Text|)'.sed '|
|00001230| 73 2f 5e 58 2f 2f 27 20 | 3c 3c 20 27 53 48 41 52 |s/^X//' |<< 'SHAR|
|00001240| 5f 45 4f 46 27 20 3e 20 | 27 63 6f 70 79 72 69 67 |_EOF' > |'copyrig|
|00001250| 68 74 2e 68 27 20 26 26 | 0a 23 69 66 6e 64 65 66 |ht.h' &&|.#ifndef|
|00001260| 20 5f 43 4f 50 59 52 49 | 47 48 54 5f 0a 2f 2a 0a | _COPYRI|GHT_./*.|
|00001270| 58 20 2a 20 43 6f 70 79 | 72 69 67 68 74 20 31 39 |X * Copy|right 19|
|00001280| 39 30 2c 20 42 72 69 61 | 6e 20 42 6f 79 74 65 72 |90, Bria|n Boyter|
|00001290| 0a 58 20 2a 0a 58 20 2a | 20 50 65 72 6d 69 73 73 |.X *.X *| Permiss|
|000012a0| 69 6f 6e 20 74 6f 20 75 | 73 65 2c 20 63 6f 70 79 |ion to u|se, copy|
|000012b0| 2c 20 6d 6f 64 69 66 79 | 2c 20 64 69 73 74 72 69 |, modify|, distri|
|000012c0| 62 75 74 65 2c 20 61 6e | 64 20 73 65 6c 6c 20 74 |bute, an|d sell t|
|000012d0| 68 69 73 20 73 6f 66 74 | 77 61 72 65 0a 58 20 2a |his soft|ware.X *|
|000012e0| 20 61 6e 64 20 69 74 73 | 20 64 6f 63 75 6d 65 6e | and its| documen|
|000012f0| 74 61 74 69 6f 6e 20 66 | 6f 72 20 61 6e 79 20 70 |tation f|or any p|
|00001300| 75 72 70 6f 73 65 20 69 | 73 20 68 65 72 65 62 79 |urpose i|s hereby|
|00001310| 20 67 72 61 6e 74 65 64 | 20 77 69 74 68 6f 75 74 | granted| without|
|00001320| 20 66 65 65 2c 0a 58 20 | 2a 20 70 72 6f 76 69 64 | fee,.X |* provid|
|00001330| 65 64 20 74 68 61 74 20 | 74 68 65 20 61 62 6f 76 |ed that |the abov|
|00001340| 65 20 63 6f 70 79 72 69 | 67 68 74 20 6e 6f 74 69 |e copyri|ght noti|
|00001350| 63 65 20 61 70 70 65 61 | 72 20 69 6e 20 61 6c 6c |ce appea|r in all|
|00001360| 20 63 6f 70 69 65 73 20 | 61 6e 64 0a 58 20 2a 20 | copies |and.X * |
|00001370| 74 68 61 74 20 62 6f 74 | 68 20 74 68 61 74 20 63 |that bot|h that c|
|00001380| 6f 70 79 72 69 67 68 74 | 20 6e 6f 74 69 63 65 20 |opyright| notice |
|00001390| 61 6e 64 20 74 68 69 73 | 20 70 65 72 6d 69 73 73 |and this| permiss|
|000013a0| 69 6f 6e 20 6e 6f 74 69 | 63 65 20 61 70 70 65 61 |ion noti|ce appea|
|000013b0| 72 0a 58 20 2a 20 69 6e | 20 73 75 70 70 6f 72 74 |r.X * in| support|
|000013c0| 69 6e 67 20 64 6f 63 75 | 6d 65 6e 74 61 74 69 6f |ing docu|mentatio|
|000013d0| 6e 2e 20 20 54 68 65 20 | 61 75 74 68 6f 72 20 6d |n. The |author m|
|000013e0| 61 6b 65 73 20 6e 6f 20 | 72 65 70 72 65 73 65 6e |akes no |represen|
|000013f0| 74 61 74 69 6f 6e 73 0a | 58 20 2a 20 61 62 6f 75 |tations.|X * abou|
|00001400| 74 20 74 68 65 20 73 75 | 69 74 61 62 69 6c 69 74 |t the su|itabilit|
|00001410| 79 20 6f 66 20 74 68 69 | 73 20 73 6f 66 74 77 61 |y of thi|s softwa|
|00001420| 72 65 20 66 6f 72 20 61 | 6e 79 20 70 75 72 70 6f |re for a|ny purpo|
|00001430| 73 65 2e 20 20 49 74 20 | 69 73 0a 58 20 2a 20 70 |se. It |is.X * p|
|00001440| 72 6f 76 69 64 65 64 20 | 22 61 73 20 69 73 22 20 |rovided |"as is" |
|00001450| 77 69 74 68 6f 75 74 20 | 65 78 70 72 65 73 73 20 |without |express |
|00001460| 6f 72 20 69 6d 70 6c 69 | 65 64 20 77 61 72 72 61 |or impli|ed warra|
|00001470| 6e 74 79 2e 0a 58 20 2a | 0a 58 20 2a 20 54 48 45 |nty..X *|.X * THE|
|00001480| 20 41 55 54 48 4f 52 20 | 44 49 53 43 4c 41 49 4d | AUTHOR |DISCLAIM|
|00001490| 53 20 41 4c 4c 20 57 41 | 52 52 41 4e 54 49 45 53 |S ALL WA|RRANTIES|
|000014a0| 20 57 49 54 48 20 52 45 | 47 41 52 44 20 54 4f 20 | WITH RE|GARD TO |
|000014b0| 54 48 49 53 20 53 4f 46 | 54 57 41 52 45 2c 0a 58 |THIS SOF|TWARE,.X|
|000014c0| 20 2a 20 49 4e 43 4c 55 | 44 49 4e 47 20 41 4c 4c | * INCLU|DING ALL|
|000014d0| 20 49 4d 50 4c 49 45 44 | 20 57 41 52 52 41 4e 54 | IMPLIED| WARRANT|
|000014e0| 49 45 53 20 4f 46 20 4d | 45 52 43 48 41 4e 54 41 |IES OF M|ERCHANTA|
|000014f0| 42 49 4c 49 54 59 20 41 | 4e 44 20 46 49 54 4e 45 |BILITY A|ND FITNE|
|00001500| 53 53 2c 20 49 4e 0a 58 | 20 2a 20 4e 4f 20 45 56 |SS, IN.X| * NO EV|
|00001510| 45 4e 54 20 53 48 41 4c | 4c 20 54 48 45 20 41 55 |ENT SHAL|L THE AU|
|00001520| 54 48 4f 52 20 42 45 20 | 4c 49 41 42 4c 45 20 46 |THOR BE |LIABLE F|
|00001530| 4f 52 20 41 4e 59 20 53 | 50 45 43 49 41 4c 2c 20 |OR ANY S|PECIAL, |
|00001540| 49 4e 44 49 52 45 43 54 | 20 4f 52 0a 58 20 2a 20 |INDIRECT| OR.X * |
|00001550| 43 4f 4e 53 45 51 55 45 | 4e 54 49 41 4c 20 44 41 |CONSEQUE|NTIAL DA|
|00001560| 4d 41 47 45 53 20 4f 52 | 20 41 4e 59 20 44 41 4d |MAGES OR| ANY DAM|
|00001570| 41 47 45 53 20 57 48 41 | 54 53 4f 45 56 45 52 20 |AGES WHA|TSOEVER |
|00001580| 52 45 53 55 4c 54 49 4e | 47 20 46 52 4f 4d 20 4c |RESULTIN|G FROM L|
|00001590| 4f 53 53 0a 58 20 2a 20 | 4f 46 20 55 53 45 2c 20 |OSS.X * |OF USE, |
|000015a0| 44 41 54 41 20 4f 52 20 | 50 52 4f 46 49 54 53 2c |DATA OR |PROFITS,|
|000015b0| 20 57 48 45 54 48 45 52 | 20 49 4e 20 41 4e 20 41 | WHETHER| IN AN A|
|000015c0| 43 54 49 4f 4e 20 4f 46 | 20 43 4f 4e 54 52 41 43 |CTION OF| CONTRAC|
|000015d0| 54 2c 20 4e 45 47 4c 49 | 47 45 4e 43 45 0a 58 20 |T, NEGLI|GENCE.X |
|000015e0| 2a 20 4f 52 20 4f 54 48 | 45 52 20 54 4f 52 54 49 |* OR OTH|ER TORTI|
|000015f0| 4f 55 53 20 41 43 54 49 | 4f 4e 2c 20 41 52 49 53 |OUS ACTI|ON, ARIS|
|00001600| 49 4e 47 20 4f 55 54 20 | 4f 46 20 4f 52 20 49 4e |ING OUT |OF OR IN|
|00001610| 20 43 4f 4e 4e 45 43 54 | 49 4f 4e 20 57 49 54 48 | CONNECT|ION WITH|
|00001620| 20 54 48 45 0a 58 20 2a | 20 55 53 45 20 4f 52 20 | THE.X *| USE OR |
|00001630| 50 45 52 46 4f 52 4d 41 | 4e 43 45 20 4f 46 20 54 |PERFORMA|NCE OF T|
|00001640| 48 49 53 20 53 4f 46 54 | 57 41 52 45 2e 0a 58 20 |HIS SOFT|WARE..X |
|00001650| 2a 2f 0a 58 0a 73 74 61 | 74 69 63 20 63 68 61 72 |*/.X.sta|tic char|
|00001660| 20 2a 43 6f 70 79 72 69 | 67 68 74 3d 20 22 43 6f | *Copyri|ght= "Co|
|00001670| 70 79 72 69 67 68 74 20 | 31 39 39 30 20 42 72 69 |pyright |1990 Bri|
|00001680| 61 6e 20 42 6f 79 74 65 | 72 22 3b 0a 23 64 65 66 |an Boyte|r";.#def|
|00001690| 69 6e 65 20 5f 43 4f 50 | 59 52 49 47 48 54 5f 0a |ine _COP|YRIGHT_.|
|000016a0| 23 65 6e 64 69 66 0a 53 | 48 41 52 5f 45 4f 46 0a |#endif.S|HAR_EOF.|
|000016b0| 63 68 6d 6f 64 20 30 36 | 34 34 20 63 6f 70 79 72 |chmod 06|44 copyr|
|000016c0| 69 67 68 74 2e 68 20 7c | 7c 0a 65 63 68 6f 20 27 |ight.h |||.echo '|
|000016d0| 72 65 73 74 6f 72 65 20 | 6f 66 20 63 6f 70 79 72 |restore |of copyr|
|000016e0| 69 67 68 74 2e 68 20 66 | 61 69 6c 65 64 27 0a 57 |ight.h f|ailed'.W|
|000016f0| 63 5f 63 3d 22 60 77 63 | 20 2d 63 20 3c 20 27 63 |c_c="`wc| -c < 'c|
|00001700| 6f 70 79 72 69 67 68 74 | 2e 68 27 60 22 0a 74 65 |opyright|.h'`".te|
|00001710| 73 74 20 31 30 38 33 20 | 2d 65 71 20 22 24 57 63 |st 1083 |-eq "$Wc|
|00001720| 5f 63 22 20 7c 7c 0a 09 | 65 63 68 6f 20 27 63 6f |_c" ||..|echo 'co|
|00001730| 70 79 72 69 67 68 74 2e | 68 3a 20 6f 72 69 67 69 |pyright.|h: origi|
|00001740| 6e 61 6c 20 73 69 7a 65 | 20 31 30 38 33 2c 20 63 |nal size| 1083, c|
|00001750| 75 72 72 65 6e 74 20 73 | 69 7a 65 27 20 22 24 57 |urrent s|ize' "$W|
|00001760| 63 5f 63 22 0a 66 69 0a | 23 20 3d 3d 3d 3d 3d 3d |c_c".fi.|# ======|
|00001770| 3d 3d 3d 3d 3d 3d 3d 20 | 6c 7a 69 70 63 6f 64 65 |======= |lzipcode|
|00001780| 2e 63 20 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |.c =====|========|
|00001790| 3d 0a 69 66 20 74 65 73 | 74 20 2d 66 20 27 6c 7a |=.if tes|t -f 'lz|
|000017a0| 69 70 63 6f 64 65 2e 63 | 27 20 2d 61 20 58 22 24 |ipcode.c|' -a X"$|
|000017b0| 31 22 20 21 3d 20 58 22 | 2d 63 22 3b 20 74 68 65 |1" != X"|-c"; the|
|000017c0| 6e 0a 09 65 63 68 6f 20 | 27 78 20 2d 20 73 6b 69 |n..echo |'x - ski|
|000017d0| 70 70 69 6e 67 20 6c 7a | 69 70 63 6f 64 65 2e 63 |pping lz|ipcode.c|
|000017e0| 20 28 46 69 6c 65 20 61 | 6c 72 65 61 64 79 20 65 | (File a|lready e|
|000017f0| 78 69 73 74 73 29 27 0a | 65 6c 73 65 0a 65 63 68 |xists)'.|else.ech|
|00001800| 6f 20 27 78 20 2d 20 65 | 78 74 72 61 63 74 69 6e |o 'x - e|xtractin|
|00001810| 67 20 6c 7a 69 70 63 6f | 64 65 2e 63 20 28 54 65 |g lzipco|de.c (Te|
|00001820| 78 74 29 27 0a 73 65 64 | 20 27 73 2f 5e 58 2f 2f |xt)'.sed| 's/^X//|
|00001830| 27 20 3c 3c 20 27 53 48 | 41 52 5f 45 4f 46 27 20 |' << 'SH|AR_EOF' |
|00001840| 3e 20 27 6c 7a 69 70 63 | 6f 64 65 2e 63 27 20 26 |> 'lzipc|ode.c' &|
|00001850| 26 0a 23 69 6e 63 6c 75 | 64 65 20 3c 73 74 64 69 |&.#inclu|de <stdi|
|00001860| 6f 2e 68 3e 0a 23 69 6e | 63 6c 75 64 65 20 3c 63 |o.h>.#in|clude <c|
|00001870| 74 79 70 65 2e 68 3e 0a | 23 64 65 66 69 6e 65 20 |type.h>.|#define |
|00001880| 5a 49 50 46 49 4c 45 20 | 22 2f 75 73 72 2f 6c 6f |ZIPFILE |"/usr/lo|
|00001890| 63 61 6c 2f 6c 69 62 2f | 7a 69 70 63 6f 64 65 2e |cal/lib/|zipcode.|
|000018a0| 74 78 74 22 0a 58 0a 6d | 61 69 6e 28 61 72 67 63 |txt".X.m|ain(argc|
|000018b0| 2c 61 72 67 76 29 0a 69 | 6e 74 20 20 20 20 20 20 |,argv).i|nt |
|000018c0| 20 20 61 72 67 63 20 3b | 0a 63 68 61 72 20 20 20 | argc ;|.char |
|000018d0| 20 2a 61 72 67 76 5b 5d | 20 3b 0a 7b 0a 58 09 46 | *argv[]| ;.{.X.F|
|000018e0| 49 4c 45 20 2a 7a 69 70 | 66 69 6c 65 3b 0a 58 09 |ILE *zip|file;.X.|
|000018f0| 69 6e 74 20 6b 65 79 6e | 75 6d 3b 0a 58 09 63 68 |int keyn|um;.X.ch|
|00001900| 61 72 20 62 75 66 5b 31 | 32 38 5d 3b 0a 58 09 63 |ar buf[1|28];.X.c|
|00001910| 68 61 72 20 67 72 65 70 | 62 75 66 5b 31 32 38 5d |har grep|buf[128]|
|00001920| 3b 0a 58 09 63 68 61 72 | 20 6b 65 79 77 72 64 5b |;.X.char| keywrd[|
|00001930| 31 32 38 5d 3b 0a 58 09 | 69 6e 74 20 6e 75 6d 31 |128];.X.|int num1|
|00001940| 3b 0a 58 09 69 6e 74 20 | 6e 75 6d 32 3b 0a 58 09 |;.X.int |num2;.X.|
|00001950| 69 6e 74 20 69 3b 0a 58 | 09 63 68 61 72 20 63 69 |int i;.X|.char ci|
|00001960| 74 79 5b 31 32 38 5d 3b | 0a 58 09 63 68 61 72 20 |ty[128];|.X.char |
|00001970| 2a 43 69 74 79 3b 0a 58 | 09 63 68 61 72 20 2a 6c |*City;.X|.char *l|
|00001980| 6f 77 65 72 63 61 73 65 | 28 29 3b 0a 58 09 46 49 |owercase|();.X.FI|
|00001990| 4c 45 20 2a 67 72 65 70 | 73 74 72 65 61 6d 3b 0a |LE *grep|stream;.|
|000019a0| 58 0a 58 09 69 66 20 28 | 61 72 67 63 20 21 3d 20 |X.X.if (|argc != |
|000019b0| 32 29 20 7b 0a 58 09 09 | 66 70 72 69 6e 74 66 28 |2) {.X..|fprintf(|
|000019c0| 73 74 64 65 72 72 2c 20 | 22 55 73 61 67 65 3a 20 |stderr, |"Usage: |
|000019d0| 7a 69 70 63 6f 64 65 20 | 6b 65 79 77 6f 72 64 5c |zipcode |keyword\|
|000019e0| 6e 22 29 3b 0a 58 09 09 | 65 78 69 74 20 28 31 29 |n");.X..|exit (1)|
|000019f0| 3b 0a 58 09 7d 0a 58 09 | 69 66 20 28 73 74 72 6c |;.X.}.X.|if (strl|
|00001a00| 65 6e 28 61 72 67 76 5b | 31 5d 29 20 3e 20 31 32 |en(argv[|1]) > 12|
|00001a10| 30 29 20 7b 0a 58 09 09 | 66 70 72 69 6e 74 66 28 |0) {.X..|fprintf(|
|00001a20| 73 74 64 65 72 72 2c 20 | 22 6b 65 79 77 6f 72 64 |stderr, |"keyword|
|00001a30| 20 25 73 20 74 6f 6f 20 | 6c 6f 6e 67 5c 6e 22 2c | %s too |long\n",|
|00001a40| 20 61 72 67 76 5b 31 5d | 29 3b 0a 58 09 09 65 78 | argv[1]|);.X..ex|
|00001a50| 69 74 20 28 31 29 3b 0a | 58 09 7d 0a 58 09 69 66 |it (1);.|X.}.X.if|
|00001a60| 20 28 20 6b 65 79 6e 75 | 6d 20 3d 20 69 73 6e 75 | ( keynu|m = isnu|
|00001a70| 6d 28 61 72 67 76 5b 31 | 5d 29 20 29 20 7b 0a 58 |m(argv[1|]) ) {.X|
|00001a80| 09 09 7a 69 70 66 69 6c | 65 20 3d 20 66 6f 70 65 |..zipfil|e = fope|
|00001a90| 6e 20 28 5a 49 50 46 49 | 4c 45 2c 20 22 72 22 29 |n (ZIPFI|LE, "r")|
|00001aa0| 3b 0a 58 09 09 69 66 20 | 28 7a 69 70 66 69 6c 65 |;.X..if |(zipfile|
|00001ab0| 20 3d 3d 20 4e 55 4c 4c | 29 20 7b 0a 58 09 09 09 | == NULL|) {.X...|
|00001ac0| 66 70 72 69 6e 74 66 28 | 73 74 64 65 72 72 2c 20 |fprintf(|stderr, |
|00001ad0| 22 25 73 3a 20 75 6e 61 | 62 6c 65 20 74 6f 20 6f |"%s: una|ble to o|
|00001ae0| 70 65 6e 20 7a 69 70 63 | 6f 64 65 2e 74 78 74 20 |pen zipc|ode.txt |
|00001af0| 66 69 6c 65 5c 6e 22 2c | 20 61 72 67 76 5b 30 5d |file\n",| argv[0]|
|00001b00| 29 3b 0a 58 09 09 09 65 | 78 69 74 28 31 29 20 3b |);.X...e|xit(1) ;|
|00001b10| 0a 58 09 09 7d 0a 58 09 | 09 77 68 69 6c 65 20 28 |.X..}.X.|.while (|
|00001b20| 66 67 65 74 73 28 62 75 | 66 2c 20 31 32 38 2c 20 |fgets(bu|f, 128, |
|00001b30| 7a 69 70 66 69 6c 65 29 | 20 21 3d 20 4e 55 4c 4c |zipfile)| != NULL|
|00001b40| 29 20 7b 0a 58 09 09 09 | 2a 28 62 75 66 2b 73 74 |) {.X...|*(buf+st|
|00001b50| 72 6c 65 6e 28 62 75 66 | 29 2d 32 29 20 3d 3d 20 |rlen(buf|)-2) == |
|00001b60| 27 5c 30 27 3b 0a 58 09 | 09 09 69 66 20 28 2a 28 |'\0';.X.|..if (*(|
|00001b70| 62 75 66 2b 35 29 3d 3d | 27 2d 27 29 20 7b 0a 58 |buf+5)==|'-') {.X|
|00001b80| 09 09 09 09 73 73 63 61 | 6e 66 20 28 62 75 66 2c |....ssca|nf (buf,|
|00001b90| 20 22 25 35 64 2d 25 35 | 64 22 2c 20 26 6e 75 6d | "%5d-%5|d", &num|
|00001ba0| 31 2c 20 26 6e 75 6d 32 | 29 3b 0a 58 09 09 09 09 |1, &num2|);.X....|
|00001bb0| 43 69 74 79 20 3d 20 62 | 75 66 2b 31 32 3b 0a 58 |City = b|uf+12;.X|
|00001bc0| 09 09 20 20 20 09 7d 20 | 65 6c 73 65 20 7b 0a 58 |.. .} |else {.X|
|00001bd0| 09 09 09 09 73 73 63 61 | 6e 66 20 28 62 75 66 2c |....ssca|nf (buf,|
|00001be0| 20 22 25 35 64 22 2c 20 | 26 6e 75 6d 31 29 3b 0a | "%5d", |&num1);.|
|00001bf0| 58 09 09 09 09 6e 75 6d | 32 20 3d 20 6e 75 6d 31 |X....num|2 = num1|
|00001c00| 3b 0a 58 09 09 09 09 43 | 69 74 79 20 3d 20 62 75 |;.X....C|ity = bu|
|00001c10| 66 2b 36 3b 0a 58 09 09 | 09 7d 0a 58 09 09 09 69 |f+6;.X..|.}.X...i|
|00001c20| 66 20 28 6b 65 79 6e 75 | 6d 20 3e 3d 20 6e 75 6d |f (keynu|m >= num|
|00001c30| 31 20 26 26 20 6b 65 79 | 6e 75 6d 20 3c 3d 20 6e |1 && key|num <= n|
|00001c40| 75 6d 32 29 20 7b 0a 58 | 09 09 09 09 74 72 75 6e |um2) {.X|....trun|
|00001c50| 63 20 28 43 69 74 79 29 | 3b 0a 58 09 09 09 09 70 |c (City)|;.X....p|
|00001c60| 72 62 75 66 20 28 6e 75 | 6d 31 2c 20 6e 75 6d 32 |rbuf (nu|m1, num2|
|00001c70| 2c 20 43 69 74 79 29 3b | 0a 58 09 09 09 09 62 72 |, City);|.X....br|
|00001c80| 65 61 6b 3b 0a 58 09 09 | 09 7d 0a 58 09 09 7d 0a |eak;.X..|.}.X..}.|
|00001c90| 58 09 09 66 63 6c 6f 73 | 65 20 28 7a 69 70 66 69 |X..fclos|e (zipfi|
|00001ca0| 6c 65 29 3b 0a 58 09 7d | 20 65 6c 73 65 20 7b 0a |le);.X.}| else {.|
|00001cb0| 58 09 09 73 70 72 69 6e | 74 66 20 28 67 72 65 70 |X..sprin|tf (grep|
|00001cc0| 62 75 66 2c 20 22 2f 75 | 73 72 2f 62 69 6e 2f 65 |buf, "/u|sr/bin/e|
|00001cd0| 67 72 65 70 20 2d 69 20 | 27 25 73 27 20 25 73 22 |grep -i |'%s' %s"|
|00001ce0| 2c 20 61 72 67 76 5b 31 | 5d 2c 20 5a 49 50 46 49 |, argv[1|], ZIPFI|
|00001cf0| 4c 45 29 3b 0a 58 09 09 | 67 72 65 70 73 74 72 65 |LE);.X..|grepstre|
|00001d00| 61 6d 20 3d 20 70 6f 70 | 65 6e 20 28 67 72 65 70 |am = pop|en (grep|
|00001d10| 62 75 66 2c 20 22 72 22 | 29 3b 0a 58 09 09 69 66 |buf, "r"|);.X..if|
|00001d20| 20 28 67 72 65 70 73 74 | 72 65 61 6d 20 3d 3d 20 | (grepst|ream == |
|00001d30| 4e 55 4c 4c 29 20 7b 0a | 58 09 09 09 66 70 72 69 |NULL) {.|X...fpri|
|00001d40| 6e 74 66 28 73 74 64 65 | 72 72 2c 20 22 25 73 3a |ntf(stde|rr, "%s:|
|00001d50| 20 63 61 6e 27 74 20 70 | 69 70 65 20 74 6f 20 67 | can't p|ipe to g|
|00001d60| 72 65 70 5c 6e 22 2c 20 | 61 72 67 76 5b 30 5d 20 |rep\n", |argv[0] |
|00001d70| 29 3b 0a 58 09 09 09 65 | 78 69 74 28 20 31 20 29 |);.X...e|xit( 1 )|
|00001d80| 3b 0a 58 09 09 7d 0a 58 | 0a 58 09 09 77 68 69 6c |;.X..}.X|.X..whil|
|00001d90| 65 20 28 66 67 65 74 73 | 20 28 62 75 66 2c 20 31 |e (fgets| (buf, 1|
|00001da0| 32 38 2c 20 67 72 65 70 | 73 74 72 65 61 6d 29 20 |28, grep|stream) |
|00001db0| 21 3d 20 4e 55 4c 4c 29 | 20 7b 0a 58 09 09 09 2a |!= NULL)| {.X...*|
|00001dc0| 28 62 75 66 2b 73 74 72 | 6c 65 6e 28 62 75 66 29 |(buf+str|len(buf)|
|00001dd0| 2d 32 29 20 3d 3d 20 27 | 5c 30 27 3b 0a 58 09 09 |-2) == '|\0';.X..|
|00001de0| 09 69 66 20 28 2a 28 62 | 75 66 2b 35 29 3d 3d 27 |.if (*(b|uf+5)=='|
|00001df0| 2d 27 29 20 7b 0a 58 09 | 09 09 09 73 73 63 61 6e |-') {.X.|...sscan|
|00001e00| 66 20 28 62 75 66 2c 20 | 22 25 35 64 2d 25 35 64 |f (buf, |"%5d-%5d|
|00001e10| 22 2c 20 26 6e 75 6d 31 | 2c 20 26 6e 75 6d 32 29 |", &num1|, &num2)|
|00001e20| 3b 0a 58 09 09 09 09 43 | 69 74 79 20 3d 20 62 75 |;.X....C|ity = bu|
|00001e30| 66 2b 31 32 3b 0a 58 09 | 09 20 20 20 09 7d 20 65 |f+12;.X.|. .} e|
|00001e40| 6c 73 65 20 7b 0a 58 09 | 09 09 09 73 73 63 61 6e |lse {.X.|...sscan|
|00001e50| 66 20 28 62 75 66 2c 20 | 22 25 35 64 22 2c 20 26 |f (buf, |"%5d", &|
|00001e60| 6e 75 6d 31 29 3b 0a 58 | 09 09 09 09 6e 75 6d 32 |num1);.X|....num2|
|00001e70| 20 3d 20 6e 75 6d 31 3b | 0a 58 09 09 09 09 43 69 | = num1;|.X....Ci|
|00001e80| 74 79 20 3d 20 62 75 66 | 2b 36 3b 0a 58 09 09 09 |ty = buf|+6;.X...|
|00001e90| 7d 0a 58 09 09 09 74 72 | 75 6e 63 20 28 43 69 74 |}.X...tr|unc (Cit|
|00001ea0| 79 29 3b 0a 58 09 09 09 | 70 72 62 75 66 20 28 6e |y);.X...|prbuf (n|
|00001eb0| 75 6d 31 2c 20 6e 75 6d | 32 2c 20 43 69 74 79 29 |um1, num|2, City)|
|00001ec0| 3b 0a 58 09 09 7d 0a 58 | 09 09 65 78 69 74 28 20 |;.X..}.X|..exit( |
|00001ed0| 70 63 6c 6f 73 65 28 20 | 67 72 65 70 73 74 72 65 |pclose( |grepstre|
|00001ee0| 61 6d 20 29 20 29 3b 0a | 58 09 7d 0a 7d 0a 58 0a |am ) );.|X.}.}.X.|
|00001ef0| 69 73 6e 75 6d 28 6b 65 | 79 77 72 64 29 0a 63 68 |isnum(ke|ywrd).ch|
|00001f00| 61 72 20 2a 6b 65 79 77 | 72 64 3b 0a 7b 0a 58 09 |ar *keyw|rd;.{.X.|
|00001f10| 69 6e 74 20 69 3b 0a 58 | 09 69 6e 74 20 6e 75 6d |int i;.X|.int num|
|00001f20| 3b 0a 58 0a 58 09 69 66 | 20 28 73 74 72 6c 65 6e |;.X.X.if| (strlen|
|00001f30| 28 6b 65 79 77 72 64 29 | 20 21 3d 20 35 29 0a 58 |(keywrd)| != 5).X|
|00001f40| 09 09 72 65 74 75 72 6e | 20 30 3b 0a 58 09 66 6f |..return| 0;.X.fo|
|00001f50| 72 20 28 69 3d 30 3b 20 | 69 3c 35 3b 20 69 2b 2b |r (i=0; |i<5; i++|
|00001f60| 29 0a 58 09 09 69 66 20 | 28 21 69 73 64 69 67 69 |).X..if |(!isdigi|
|00001f70| 74 28 2a 28 6b 65 79 77 | 72 64 2b 69 29 29 29 0a |t(*(keyw|rd+i))).|
|00001f80| 58 09 09 09 72 65 74 75 | 72 6e 20 30 3b 0a 58 09 |X...retu|rn 0;.X.|
|00001f90| 73 73 63 61 6e 66 28 6b | 65 79 77 72 64 2c 20 22 |sscanf(k|eywrd, "|
|00001fa0| 25 64 22 2c 20 26 6e 75 | 6d 29 3b 0a 58 09 72 65 |%d", &nu|m);.X.re|
|00001fb0| 74 75 72 6e 20 6e 75 6d | 3b 0a 7d 0a 58 0a 74 72 |turn num|;.}.X.tr|
|00001fc0| 75 6e 63 28 73 29 0a 63 | 68 61 72 20 2a 73 3b 0a |unc(s).c|har *s;.|
|00001fd0| 7b 0a 58 09 63 68 61 72 | 20 2a 63 70 3b 0a 58 09 |{.X.char| *cp;.X.|
|00001fe0| 63 70 20 3d 20 73 20 2b | 20 73 74 72 6c 65 6e 28 |cp = s +| strlen(|
|00001ff0| 73 29 3b 0a 58 09 77 68 | 69 6c 65 20 28 63 70 2d |s);.X.wh|ile (cp-|
|00002000| 2d 20 3e 3d 20 73 29 20 | 7b 0a 58 09 09 69 66 20 |- >= s) |{.X..if |
|00002010| 28 21 69 73 73 70 61 63 | 65 28 2a 63 70 29 29 20 |(!isspac|e(*cp)) |
|00002020| 62 72 65 61 6b 3b 0a 58 | 09 09 2a 63 70 20 3d 20 |break;.X|..*cp = |
|00002030| 4e 55 4c 4c 3b 0a 58 09 | 7d 0a 7d 0a 58 0a 70 72 |NULL;.X.|}.}.X.pr|
|00002040| 62 75 66 20 28 6e 31 2c | 20 6e 32 2c 20 73 29 0a |buf (n1,| n2, s).|
|00002050| 69 6e 74 20 6e 31 3b 0a | 69 6e 74 20 6e 32 3b 0a |int n1;.|int n2;.|
|00002060| 63 68 61 72 20 2a 73 3b | 0a 7b 0a 58 09 69 66 20 |char *s;|.{.X.if |
|00002070| 28 6e 31 20 3d 3d 20 6e | 32 29 0a 58 09 09 70 72 |(n1 == n|2).X..pr|
|00002080| 69 6e 74 66 20 28 22 25 | 30 35 64 20 20 20 20 20 |intf ("%|05d |
|00002090| 20 20 25 73 5c 6e 22 2c | 20 6e 31 2c 20 73 29 3b | %s\n",| n1, s);|
|000020a0| 0a 58 09 20 20 20 20 65 | 6c 73 65 0a 58 09 09 70 |.X. e|lse.X..p|
|000020b0| 72 69 6e 74 66 20 28 22 | 25 30 35 64 2d 25 30 35 |rintf ("|%05d-%05|
|000020c0| 64 20 25 73 5c 6e 22 2c | 20 6e 31 2c 20 6e 32 2c |d %s\n",| n1, n2,|
|000020d0| 20 73 29 3b 0a 7d 0a 53 | 48 41 52 5f 45 4f 46 0a | s);.}.S|HAR_EOF.|
|000020e0| 63 68 6d 6f 64 20 30 36 | 34 34 20 6c 7a 69 70 63 |chmod 06|44 lzipc|
|000020f0| 6f 64 65 2e 63 20 7c 7c | 0a 65 63 68 6f 20 27 72 |ode.c |||.echo 'r|
|00002100| 65 73 74 6f 72 65 20 6f | 66 20 6c 7a 69 70 63 6f |estore o|f lzipco|
|00002110| 64 65 2e 63 20 66 61 69 | 6c 65 64 27 0a 57 63 5f |de.c fai|led'.Wc_|
|00002120| 63 3d 22 60 77 63 20 2d | 63 20 3c 20 27 6c 7a 69 |c="`wc -|c < 'lzi|
|00002130| 70 63 6f 64 65 2e 63 27 | 60 22 0a 74 65 73 74 20 |pcode.c'|`".test |
|00002140| 32 30 39 30 20 2d 65 71 | 20 22 24 57 63 5f 63 22 |2090 -eq| "$Wc_c"|
|00002150| 20 7c 7c 0a 09 65 63 68 | 6f 20 27 6c 7a 69 70 63 | ||..ech|o 'lzipc|
|00002160| 6f 64 65 2e 63 3a 20 6f | 72 69 67 69 6e 61 6c 20 |ode.c: o|riginal |
|00002170| 73 69 7a 65 20 32 30 39 | 30 2c 20 63 75 72 72 65 |size 209|0, curre|
|00002180| 6e 74 20 73 69 7a 65 27 | 20 22 24 57 63 5f 63 22 |nt size'| "$Wc_c"|
|00002190| 0a 66 69 0a 23 20 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |.fi.# ==|========|
|000021a0| 3d 3d 3d 20 72 70 63 2e | 7a 69 70 63 6f 64 65 64 |=== rpc.|zipcoded|
|000021b0| 2e 63 20 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |.c =====|========|
|000021c0| 3d 0a 69 66 20 74 65 73 | 74 20 2d 66 20 27 72 70 |=.if tes|t -f 'rp|
|000021d0| 63 2e 7a 69 70 63 6f 64 | 65 64 2e 63 27 20 2d 61 |c.zipcod|ed.c' -a|
|000021e0| 20 58 22 24 31 22 20 21 | 3d 20 58 22 2d 63 22 3b | X"$1" !|= X"-c";|
|000021f0| 20 74 68 65 6e 0a 09 65 | 63 68 6f 20 27 78 20 2d | then..e|cho 'x -|
|00002200| 20 73 6b 69 70 70 69 6e | 67 20 72 70 63 2e 7a 69 | skippin|g rpc.zi|
|00002210| 70 63 6f 64 65 64 2e 63 | 20 28 46 69 6c 65 20 61 |pcoded.c| (File a|
|00002220| 6c 72 65 61 64 79 20 65 | 78 69 73 74 73 29 27 0a |lready e|xists)'.|
|00002230| 65 6c 73 65 0a 65 63 68 | 6f 20 27 78 20 2d 20 65 |else.ech|o 'x - e|
|00002240| 78 74 72 61 63 74 69 6e | 67 20 72 70 63 2e 7a 69 |xtractin|g rpc.zi|
|00002250| 70 63 6f 64 65 64 2e 63 | 20 28 54 65 78 74 29 27 |pcoded.c| (Text)'|
|00002260| 0a 73 65 64 20 27 73 2f | 5e 58 2f 2f 27 20 3c 3c |.sed 's/|^X//' <<|
|00002270| 20 27 53 48 41 52 5f 45 | 4f 46 27 20 3e 20 27 72 | 'SHAR_E|OF' > 'r|
|00002280| 70 63 2e 7a 69 70 63 6f | 64 65 64 2e 63 27 20 26 |pc.zipco|ded.c' &|
|00002290| 26 0a 23 69 6e 63 6c 75 | 64 65 20 3c 73 74 64 69 |&.#inclu|de <stdi|
|000022a0| 6f 2e 68 3e 0a 23 69 6e | 63 6c 75 64 65 20 3c 63 |o.h>.#in|clude <c|
|000022b0| 74 79 70 65 2e 68 3e 0a | 23 69 6e 63 6c 75 64 65 |type.h>.|#include|
|000022c0| 20 3c 72 70 63 2f 72 70 | 63 2e 68 3e 0a 23 69 6e | <rpc/rp|c.h>.#in|
|000022d0| 63 6c 75 64 65 20 22 7a | 69 70 63 6f 64 65 2e 68 |clude "z|ipcode.h|
|000022e0| 22 0a 58 0a 23 64 65 66 | 69 6e 65 20 5a 49 50 46 |".X.#def|ine ZIPF|
|000022f0| 49 4c 45 20 22 2f 75 73 | 72 2f 6c 6f 63 61 6c 2f |ILE "/us|r/local/|
|00002300| 6c 69 62 2f 7a 69 70 63 | 6f 64 65 2e 74 78 74 22 |lib/zipc|ode.txt"|
|00002310| 0a 73 74 61 74 69 63 20 | 52 45 53 55 4c 54 20 72 |.static |RESULT r|
|00002320| 65 73 75 6c 74 3b 09 2f | 2a 20 6d 75 73 74 20 62 |esult;./|* must b|
|00002330| 65 20 73 74 61 74 69 63 | 20 2a 2f 0a 58 0a 52 45 |e static| */.X.RE|
|00002340| 53 55 4c 54 20 2a 7a 69 | 70 63 6f 64 65 5f 31 28 |SULT *zi|pcode_1(|
|00002350| 6b 65 79 77 6f 72 64 29 | 0a 63 68 61 72 20 2a 2a |keyword)|.char **|
|00002360| 6b 65 79 77 6f 72 64 3b | 0a 7b 0a 58 09 46 49 4c |keyword;|.{.X.FIL|
|00002370| 45 20 2a 7a 69 70 66 69 | 6c 65 3b 0a 58 09 69 6e |E *zipfi|le;.X.in|
|00002380| 74 20 6b 65 79 6e 75 6d | 3b 0a 58 09 63 68 61 72 |t keynum|;.X.char|
|00002390| 20 62 75 66 66 65 72 5b | 31 32 38 5d 3b 0a 58 09 | buffer[|128];.X.|
|000023a0| 63 68 61 72 20 65 72 72 | 62 75 66 5b 31 32 38 5d |char err|buf[128]|
|000023b0| 3b 0a 58 09 63 68 61 72 | 20 67 72 65 70 62 75 66 |;.X.char| grepbuf|
|000023c0| 5b 31 32 38 5d 3b 0a 58 | 09 63 68 61 72 20 6b 65 |[128];.X|.char ke|
|000023d0| 79 77 72 64 5b 31 32 38 | 5d 3b 0a 58 09 69 6e 74 |ywrd[128|];.X.int|
|000023e0| 20 6e 75 6d 31 3b 0a 58 | 09 69 6e 74 20 6e 75 6d | num1;.X|.int num|
|000023f0| 32 3b 0a 58 09 69 6e 74 | 20 69 3b 0a 58 09 63 68 |2;.X.int| i;.X.ch|
|00002400| 61 72 20 63 69 74 79 5b | 31 32 38 5d 3b 0a 58 09 |ar city[|128];.X.|
|00002410| 63 68 61 72 20 2a 43 69 | 74 79 3b 0a 58 09 63 68 |char *Ci|ty;.X.ch|
|00002420| 61 72 20 2a 6c 6f 77 65 | 72 63 61 73 65 28 29 3b |ar *lowe|rcase();|
|00002430| 0a 58 09 46 49 4c 45 20 | 2a 67 72 65 70 73 74 72 |.X.FILE |*grepstr|
|00002440| 65 61 6d 3b 0a 58 09 5a | 49 50 4e 45 58 54 20 2a |eam;.X.Z|IPNEXT *|
|00002450| 7a 72 70 3b 0a 58 09 5a | 49 50 4c 49 53 54 20 2a |zrp;.X.Z|IPLIST *|
|00002460| 7a 6c 70 3b 0a 58 09 63 | 68 61 72 20 2a 70 62 75 |zlp;.X.c|har *pbu|
|00002470| 66 28 29 3b 0a 58 0a 58 | 09 78 64 72 5f 66 72 65 |f();.X.X|.xdr_fre|
|00002480| 65 28 78 64 72 5f 5a 49 | 50 4c 49 53 54 2c 20 26 |e(xdr_ZI|PLIST, &|
|00002490| 72 65 73 75 6c 74 29 3b | 09 2f 2a 20 66 72 65 65 |result);|./* free|
|000024a0| 20 6d 65 6d 6f 72 79 20 | 66 72 6f 6d 20 70 72 65 | memory |from pre|
|000024b0| 76 69 6f 75 73 20 63 61 | 6c 6c 20 2a 2f 0a 58 0a |vious ca|ll */.X.|
|000024c0| 58 09 2f 2a 20 63 68 65 | 63 6b 20 6c 65 6e 67 74 |X./* che|ck lengt|
|000024d0| 68 20 6f 66 20 6b 65 79 | 77 6f 72 64 20 2a 2f 0a |h of key|word */.|
|000024e0| 58 09 69 66 20 28 73 74 | 72 6c 65 6e 28 2a 6b 65 |X.if (st|rlen(*ke|
|000024f0| 79 77 6f 72 64 29 20 3e | 20 31 32 30 29 20 7b 0a |yword) >| 120) {.|
|00002500| 58 09 09 73 70 72 69 6e | 74 66 28 65 72 72 62 75 |X..sprin|tf(errbu|
|00002510| 66 2c 20 22 6b 65 79 77 | 6f 72 64 20 25 73 20 74 |f, "keyw|ord %s t|
|00002520| 6f 6f 20 6c 6f 6e 67 22 | 2c 20 2a 6b 65 79 77 6f |oo long"|, *keywo|
|00002530| 72 64 29 3b 0a 58 09 09 | 73 65 6e 64 5f 65 72 72 |rd);.X..|send_err|
|00002540| 6d 73 67 20 28 65 72 72 | 62 75 66 29 3b 0a 58 09 |msg (err|buf);.X.|
|00002550| 09 72 65 74 75 72 6e 20 | 28 26 72 65 73 75 6c 74 |.return |(&result|
|00002560| 29 3b 0a 58 09 7d 0a 58 | 0a 58 09 69 66 20 28 20 |);.X.}.X|.X.if ( |
|00002570| 6b 65 79 6e 75 6d 20 3d | 20 69 73 6e 75 6d 28 2a |keynum =| isnum(*|
|00002580| 6b 65 79 77 6f 72 64 29 | 20 29 20 7b 0a 2f 2a 0a |keyword)| ) {./*.|
|00002590| 58 20 2a 20 54 68 69 73 | 20 63 6f 64 65 20 66 69 |X * This| code fi|
|000025a0| 6e 64 73 20 74 68 65 20 | 63 69 74 79 20 67 69 76 |nds the |city giv|
|000025b0| 65 6e 20 61 20 6e 75 6d | 65 72 69 63 20 7a 69 70 |en a num|eric zip|
|000025c0| 63 6f 64 65 0a 58 20 2a | 20 28 63 61 6e 20 6f 6e |code.X *| (can on|
|000025d0| 6c 79 20 62 65 20 6f 6e | 65 20 6d 61 74 63 68 29 |ly be on|e match)|
|000025e0| 0a 58 20 2a 2f 0a 58 09 | 09 7a 69 70 66 69 6c 65 |.X */.X.|.zipfile|
|000025f0| 20 3d 20 66 6f 70 65 6e | 20 28 5a 49 50 46 49 4c | = fopen| (ZIPFIL|
|00002600| 45 2c 20 22 72 22 29 3b | 09 09 2f 2a 20 6f 70 65 |E, "r");|../* ope|
|00002610| 6e 20 64 61 74 61 20 66 | 69 6c 65 20 2a 2f 0a 58 |n data f|ile */.X|
|00002620| 09 09 69 66 20 28 7a 69 | 70 66 69 6c 65 20 3d 3d |..if (zi|pfile ==|
|00002630| 20 4e 55 4c 4c 29 20 7b | 0a 58 09 09 09 73 65 6e | NULL) {|.X...sen|
|00002640| 64 5f 65 72 72 6d 73 67 | 20 28 22 72 70 63 2e 7a |d_errmsg| ("rpc.z|
|00002650| 69 70 63 6f 64 65 64 3a | 20 75 6e 61 62 6c 65 20 |ipcoded:| unable |
|00002660| 74 6f 20 6f 70 65 6e 20 | 7a 69 70 63 6f 64 65 2e |to open |zipcode.|
|00002670| 74 78 74 20 66 69 6c 65 | 22 29 3b 0a 58 09 09 09 |txt file|");.X...|
|00002680| 72 65 74 75 72 6e 20 28 | 26 72 65 73 75 6c 74 29 |return (|&result)|
|00002690| 3b 0a 58 09 09 7d 0a 58 | 09 09 77 68 69 6c 65 20 |;.X..}.X|..while |
|000026a0| 28 66 67 65 74 73 28 62 | 75 66 66 65 72 2c 20 31 |(fgets(b|uffer, 1|
|000026b0| 32 38 2c 20 7a 69 70 66 | 69 6c 65 29 20 21 3d 20 |28, zipf|ile) != |
|000026c0| 4e 55 4c 4c 29 20 7b 0a | 58 09 09 09 2a 28 62 75 |NULL) {.|X...*(bu|
|000026d0| 66 66 65 72 2b 73 74 72 | 6c 65 6e 28 62 75 66 66 |ffer+str|len(buff|
|000026e0| 65 72 29 2d 32 29 20 3d | 3d 20 27 5c 30 27 3b 0a |er)-2) =|= '\0';.|
|000026f0| 58 09 09 09 69 66 20 28 | 2a 28 62 75 66 66 65 72 |X...if (|*(buffer|
|00002700| 2b 35 29 3d 3d 27 2d 27 | 29 20 7b 0a 58 09 09 09 |+5)=='-'|) {.X...|
|00002710| 09 73 73 63 61 6e 66 20 | 28 62 75 66 66 65 72 2c |.sscanf |(buffer,|
|00002720| 20 22 25 35 64 2d 25 35 | 64 22 2c 20 26 6e 75 6d | "%5d-%5|d", &num|
|00002730| 31 2c 20 26 6e 75 6d 32 | 29 3b 0a 58 09 09 09 09 |1, &num2|);.X....|
|00002740| 43 69 74 79 20 3d 20 62 | 75 66 66 65 72 2b 31 32 |City = b|uffer+12|
|00002750| 3b 0a 58 09 09 20 20 20 | 09 7d 20 65 6c 73 65 20 |;.X.. |.} else |
|00002760| 7b 0a 58 09 09 09 09 73 | 73 63 61 6e 66 20 28 62 |{.X....s|scanf (b|
|00002770| 75 66 66 65 72 2c 20 22 | 25 35 64 22 2c 20 26 6e |uffer, "|%5d", &n|
|00002780| 75 6d 31 29 3b 0a 58 09 | 09 09 09 6e 75 6d 32 20 |um1);.X.|...num2 |
|00002790| 3d 20 6e 75 6d 31 3b 0a | 58 09 09 09 09 43 69 74 |= num1;.|X....Cit|
|000027a0| 79 20 3d 20 62 75 66 66 | 65 72 2b 36 3b 0a 58 09 |y = buff|er+6;.X.|
|000027b0| 09 09 7d 0a 58 09 09 09 | 69 66 20 28 6b 65 79 6e |..}.X...|if (keyn|
|000027c0| 75 6d 20 3e 3d 20 6e 75 | 6d 31 20 26 26 20 6b 65 |um >= nu|m1 && ke|
|000027d0| 79 6e 75 6d 20 3c 3d 20 | 6e 75 6d 32 29 20 7b 0a |ynum <= |num2) {.|
|000027e0| 58 09 09 09 09 74 72 75 | 6e 63 20 28 43 69 74 79 |X....tru|nc (City|
|000027f0| 29 3b 0a 58 09 09 09 09 | 7a 6c 70 20 20 20 20 20 |);.X....|zlp |
|00002800| 20 20 20 3d 20 28 5a 49 | 50 4c 49 53 54 20 2a 29 | = (ZI|PLIST *)|
|00002810| 20 6d 61 6c 6c 6f 63 28 | 73 69 7a 65 6f 66 28 5a | malloc(|sizeof(Z|
|00002820| 49 50 4c 49 53 54 29 29 | 3b 0a 58 09 09 09 09 7a |IPLIST))|;.X....z|
|00002830| 6c 70 2d 3e 64 61 74 61 | 20 20 3d 20 28 70 62 75 |lp->data| = (pbu|
|00002840| 66 28 6e 75 6d 31 2c 20 | 6e 75 6d 32 2c 20 43 69 |f(num1, |num2, Ci|
|00002850| 74 79 29 29 3b 0a 58 09 | 09 09 09 7a 6c 70 2d 3e |ty));.X.|...zlp->|
|00002860| 6e 65 78 74 20 20 3d 20 | 4e 55 4c 4c 3b 0a 58 09 |next = |NULL;.X.|
|00002870| 09 09 09 72 65 73 75 6c | 74 2e 7a 69 70 65 72 72 |...resul|t.ziperr|
|00002880| 6f 72 20 3d 20 30 3b 0a | 58 09 09 09 09 72 65 73 |or = 0;.|X....res|
|00002890| 75 6c 74 2e 6c 69 73 74 | 3d 20 7a 6c 70 3b 0a 58 |ult.list|= zlp;.X|
|000028a0| 09 09 09 09 72 65 74 75 | 72 6e 20 28 26 72 65 73 |....retu|rn (&res|
|000028b0| 75 6c 74 29 3b 0a 58 09 | 09 09 7d 0a 58 09 09 7d |ult);.X.|..}.X..}|
|000028c0| 0a 58 09 09 66 63 6c 6f | 73 65 20 28 7a 69 70 66 |.X..fclo|se (zipf|
|000028d0| 69 6c 65 29 3b 0a 58 09 | 09 73 70 72 69 6e 74 66 |ile);.X.|.sprintf|
|000028e0| 28 65 72 72 62 75 66 2c | 20 22 72 70 63 2e 7a 69 |(errbuf,| "rpc.zi|
|000028f0| 70 63 6f 64 65 64 3a 20 | 6e 6f 20 6d 61 74 63 68 |pcoded: |no match|
|00002900| 20 66 6f 75 6e 64 20 66 | 6f 72 20 7a 69 70 63 6f | found f|or zipco|
|00002910| 64 65 20 25 30 35 64 22 | 2c 20 6b 65 79 6e 75 6d |de %05d"|, keynum|
|00002920| 29 3b 0a 58 09 09 73 65 | 6e 64 5f 65 72 72 6d 73 |);.X..se|nd_errms|
|00002930| 67 20 28 65 72 72 62 75 | 66 29 3b 0a 58 09 09 72 |g (errbu|f);.X..r|
|00002940| 65 74 75 72 6e 20 28 26 | 72 65 73 75 6c 74 29 3b |eturn (&|result);|
|00002950| 0a 58 09 7d 20 65 6c 73 | 65 20 7b 0a 2f 2a 0a 58 |.X.} els|e {./*.X|
|00002960| 20 2a 20 54 68 69 73 20 | 63 6f 64 65 20 66 69 6e | * This |code fin|
|00002970| 64 73 20 74 68 65 20 7a | 69 70 63 6f 64 65 28 73 |ds the z|ipcode(s|
|00002980| 29 20 67 69 76 65 6e 20 | 61 20 43 69 74 79 20 6e |) given |a City n|
|00002990| 61 6d 65 0a 58 20 2a 2f | 0a 58 09 09 73 70 72 69 |ame.X */|.X..spri|
|000029a0| 6e 74 66 20 28 67 72 65 | 70 62 75 66 2c 20 22 2f |ntf (gre|pbuf, "/|
|000029b0| 75 73 72 2f 62 69 6e 2f | 65 67 72 65 70 20 2d 69 |usr/bin/|egrep -i|
|000029c0| 20 27 25 73 27 20 25 73 | 22 2c 20 2a 6b 65 79 77 | '%s' %s|", *keyw|
|000029d0| 6f 72 64 2c 20 5a 49 50 | 46 49 4c 45 29 3b 0a 58 |ord, ZIP|FILE);.X|
|000029e0| 09 09 67 72 65 70 73 74 | 72 65 61 6d 20 3d 20 70 |..grepst|ream = p|
|000029f0| 6f 70 65 6e 20 28 67 72 | 65 70 62 75 66 2c 20 22 |open (gr|epbuf, "|
|00002a00| 72 22 29 3b 0a 58 09 09 | 69 66 20 28 67 72 65 70 |r");.X..|if (grep|
|00002a10| 73 74 72 65 61 6d 20 3d | 3d 20 4e 55 4c 4c 29 20 |stream =|= NULL) |
|00002a20| 7b 0a 58 09 09 09 73 65 | 6e 64 5f 65 72 72 6d 73 |{.X...se|nd_errms|
|00002a30| 67 20 28 22 72 70 63 2e | 7a 69 70 63 6f 64 65 64 |g ("rpc.|zipcoded|
|00002a40| 3a 20 63 61 6e 27 74 20 | 70 69 70 65 20 74 6f 20 |: can't |pipe to |
|00002a50| 65 67 72 65 70 22 29 3b | 0a 58 09 09 09 72 65 74 |egrep");|.X...ret|
|00002a60| 75 72 6e 20 28 26 72 65 | 73 75 6c 74 29 3b 0a 58 |urn (&re|sult);.X|
|00002a70| 09 09 7d 0a 58 0a 58 09 | 09 7a 72 70 20 3d 20 26 |..}.X.X.|.zrp = &|
|00002a80| 72 65 73 75 6c 74 2e 6c | 69 73 74 3b 0a 58 09 09 |result.l|ist;.X..|
|00002a90| 77 68 69 6c 65 20 28 66 | 67 65 74 73 20 28 62 75 |while (f|gets (bu|
|00002aa0| 66 66 65 72 2c 20 31 32 | 38 2c 20 67 72 65 70 73 |ffer, 12|8, greps|
|00002ab0| 74 72 65 61 6d 29 20 21 | 3d 20 4e 55 4c 4c 29 20 |tream) !|= NULL) |
|00002ac0| 7b 0a 58 09 09 09 2a 28 | 62 75 66 66 65 72 2b 73 |{.X...*(|buffer+s|
|00002ad0| 74 72 6c 65 6e 28 62 75 | 66 66 65 72 29 2d 32 29 |trlen(bu|ffer)-2)|
|00002ae0| 20 3d 3d 20 27 5c 30 27 | 3b 0a 58 09 09 09 69 66 | == '\0'|;.X...if|
|00002af0| 20 28 2a 28 62 75 66 66 | 65 72 2b 35 29 3d 3d 27 | (*(buff|er+5)=='|
|00002b00| 2d 27 29 20 7b 0a 58 09 | 09 09 09 73 73 63 61 6e |-') {.X.|...sscan|
|00002b10| 66 20 28 62 75 66 66 65 | 72 2c 20 22 25 35 64 2d |f (buffe|r, "%5d-|
|00002b20| 25 35 64 22 2c 20 26 6e | 75 6d 31 2c 20 26 6e 75 |%5d", &n|um1, &nu|
|00002b30| 6d 32 29 3b 0a 58 09 09 | 09 09 43 69 74 79 20 3d |m2);.X..|..City =|
|00002b40| 20 62 75 66 66 65 72 2b | 31 32 3b 0a 58 09 09 20 | buffer+|12;.X.. |
|00002b50| 20 20 09 7d 20 65 6c 73 | 65 20 7b 0a 58 09 09 09 | .} els|e {.X...|
|00002b60| 09 73 73 63 61 6e 66 20 | 28 62 75 66 66 65 72 2c |.sscanf |(buffer,|
|00002b70| 20 22 25 35 64 22 2c 20 | 26 6e 75 6d 31 29 3b 0a | "%5d", |&num1);.|
|00002b80| 58 09 09 09 09 6e 75 6d | 32 20 3d 20 6e 75 6d 31 |X....num|2 = num1|
|00002b90| 3b 0a 58 09 09 09 09 43 | 69 74 79 20 3d 20 62 75 |;.X....C|ity = bu|
|00002ba0| 66 66 65 72 2b 36 3b 0a | 58 09 09 09 7d 0a 58 09 |ffer+6;.|X...}.X.|
|00002bb0| 09 09 74 72 75 6e 63 20 | 28 43 69 74 79 29 3b 0a |..trunc |(City);.|
|00002bc0| 58 09 09 09 7a 6c 70 20 | 20 20 20 20 20 20 3d 20 |X...zlp | = |
|00002bd0| 28 5a 49 50 4c 49 53 54 | 20 2a 29 20 6d 61 6c 6c |(ZIPLIST| *) mall|
|00002be0| 6f 63 28 73 69 7a 65 6f | 66 28 5a 49 50 4c 49 53 |oc(sizeo|f(ZIPLIS|
|00002bf0| 54 29 29 3b 0a 58 09 09 | 09 2a 7a 72 70 20 20 20 |T));.X..|.*zrp |
|00002c00| 20 20 20 3d 20 7a 6c 70 | 3b 0a 58 09 09 09 7a 6c | = zlp|;.X...zl|
|00002c10| 70 2d 3e 64 61 74 61 20 | 3d 20 70 62 75 66 28 6e |p->data |= pbuf(n|
|00002c20| 75 6d 31 2c 20 6e 75 6d | 32 2c 20 43 69 74 79 29 |um1, num|2, City)|
|00002c30| 3b 0a 58 09 09 09 7a 72 | 70 20 20 20 20 20 20 20 |;.X...zr|p |
|00002c40| 3d 20 26 7a 6c 70 2d 3e | 6e 65 78 74 3b 0a 58 09 |= &zlp->|next;.X.|
|00002c50| 09 7d 0a 58 09 09 70 63 | 6c 6f 73 65 28 20 67 72 |.}.X..pc|lose( gr|
|00002c60| 65 70 73 74 72 65 61 6d | 20 29 3b 0a 58 09 09 69 |epstream| );.X..i|
|00002c70| 66 20 28 7a 72 70 20 3d | 3d 20 26 72 65 73 75 6c |f (zrp =|= &resul|
|00002c80| 74 2e 6c 69 73 74 29 20 | 7b 0a 58 09 09 09 73 70 |t.list) |{.X...sp|
|00002c90| 72 69 6e 74 66 28 65 72 | 72 62 75 66 2c 20 0a 58 |rintf(er|rbuf, .X|
|00002ca0| 09 09 09 09 22 72 70 63 | 2e 7a 69 70 63 6f 64 65 |...."rpc|.zipcode|
|00002cb0| 64 3a 20 6e 6f 20 6d 61 | 74 63 68 20 66 6f 75 6e |d: no ma|tch foun|
|00002cc0| 64 20 66 6f 72 20 6b 65 | 79 77 6f 72 64 3a 20 25 |d for ke|yword: %|
|00002cd0| 73 22 2c 20 2a 6b 65 79 | 77 6f 72 64 29 3b 0a 58 |s", *key|word);.X|
|00002ce0| 09 09 09 73 65 6e 64 5f | 65 72 72 6d 73 67 20 28 |...send_|errmsg (|
|00002cf0| 65 72 72 62 75 66 29 3b | 0a 58 09 09 09 72 65 74 |errbuf);|.X...ret|
|00002d00| 75 72 6e 20 28 26 72 65 | 73 75 6c 74 29 3b 0a 58 |urn (&re|sult);.X|
|00002d10| 09 09 7d 20 65 6c 73 65 | 20 7b 0a 58 09 09 09 2a |..} else| {.X...*|
|00002d20| 7a 72 70 20 3d 20 4e 55 | 4c 4c 3b 0a 58 09 09 09 |zrp = NU|LL;.X...|
|00002d30| 72 65 73 75 6c 74 2e 7a | 69 70 65 72 72 6f 72 20 |result.z|iperror |
|00002d40| 3d 20 30 3b 0a 58 09 09 | 7d 0a 58 09 09 72 65 74 |= 0;.X..|}.X..ret|
|00002d50| 75 72 6e 20 28 26 72 65 | 73 75 6c 74 29 3b 0a 58 |urn (&re|sult);.X|
|00002d60| 09 7d 0a 7d 0a 58 0a 69 | 73 6e 75 6d 28 6b 65 79 |.}.}.X.i|snum(key|
|00002d70| 77 72 64 29 0a 63 68 61 | 72 20 2a 6b 65 79 77 72 |wrd).cha|r *keywr|
|00002d80| 64 3b 0a 7b 0a 58 09 69 | 6e 74 20 69 3b 0a 58 09 |d;.{.X.i|nt i;.X.|
|00002d90| 69 6e 74 20 6e 75 6d 3b | 0a 58 0a 58 09 69 66 20 |int num;|.X.X.if |
|00002da0| 28 73 74 72 6c 65 6e 28 | 6b 65 79 77 72 64 29 20 |(strlen(|keywrd) |
|00002db0| 21 3d 20 35 29 0a 58 09 | 09 72 65 74 75 72 6e 20 |!= 5).X.|.return |
|00002dc0| 30 3b 0a 58 09 66 6f 72 | 20 28 69 3d 30 3b 20 69 |0;.X.for| (i=0; i|
|00002dd0| 3c 35 3b 20 69 2b 2b 29 | 0a 58 09 09 69 66 20 28 |<5; i++)|.X..if (|
|00002de0| 21 69 73 64 69 67 69 74 | 28 2a 28 6b 65 79 77 72 |!isdigit|(*(keywr|
|00002df0| 64 2b 69 29 29 29 0a 58 | 09 09 09 72 65 74 75 72 |d+i))).X|...retur|
|00002e00| 6e 20 30 3b 0a 58 09 73 | 73 63 61 6e 66 28 6b 65 |n 0;.X.s|scanf(ke|
|00002e10| 79 77 72 64 2c 20 22 25 | 64 22 2c 20 26 6e 75 6d |ywrd, "%|d", &num|
|00002e20| 29 3b 0a 58 09 72 65 74 | 75 72 6e 20 6e 75 6d 3b |);.X.ret|urn num;|
|00002e30| 0a 7d 0a 58 0a 74 72 75 | 6e 63 28 73 29 0a 63 68 |.}.X.tru|nc(s).ch|
|00002e40| 61 72 20 2a 73 3b 0a 7b | 0a 58 09 63 68 61 72 20 |ar *s;.{|.X.char |
|00002e50| 2a 63 70 3b 0a 58 09 63 | 70 20 3d 20 73 20 2b 20 |*cp;.X.c|p = s + |
|00002e60| 73 74 72 6c 65 6e 28 73 | 29 3b 0a 58 09 77 68 69 |strlen(s|);.X.whi|
|00002e70| 6c 65 20 28 63 70 2d 2d | 20 3e 3d 20 73 29 20 7b |le (cp--| >= s) {|
|00002e80| 0a 58 09 09 69 66 20 28 | 21 69 73 73 70 61 63 65 |.X..if (|!isspace|
|00002e90| 28 2a 63 70 29 29 20 62 | 72 65 61 6b 3b 0a 58 09 |(*cp)) b|reak;.X.|
|00002ea0| 09 2a 63 70 20 3d 20 4e | 55 4c 4c 3b 0a 58 09 7d |.*cp = N|ULL;.X.}|
|00002eb0| 0a 7d 0a 58 0a 63 68 61 | 72 20 2a 70 62 75 66 28 |.}.X.cha|r *pbuf(|
|00002ec0| 6e 75 6d 31 2c 20 6e 75 | 6d 32 2c 20 43 69 74 79 |num1, nu|m2, City|
|00002ed0| 29 0a 69 6e 74 20 6e 75 | 6d 31 3b 0a 69 6e 74 20 |).int nu|m1;.int |
|00002ee0| 6e 75 6d 32 3b 0a 63 68 | 61 72 20 2a 43 69 74 79 |num2;.ch|ar *City|
|00002ef0| 3b 0a 7b 0a 58 09 63 68 | 61 72 20 2a 6d 70 3b 0a |;.{.X.ch|ar *mp;.|
|00002f00| 58 09 0a 58 09 6d 70 20 | 3d 20 6d 61 6c 6c 6f 63 |X..X.mp |= malloc|
|00002f10| 28 31 35 2b 73 74 72 6c | 65 6e 28 43 69 74 79 29 |(15+strl|en(City)|
|00002f20| 29 3b 0a 58 0a 58 09 69 | 66 20 28 6e 75 6d 31 20 |);.X.X.i|f (num1 |
|00002f30| 3d 3d 20 6e 75 6d 32 29 | 0a 58 09 09 73 70 72 69 |== num2)|.X..spri|
|00002f40| 6e 74 66 20 28 6d 70 2c | 20 22 25 30 35 64 20 20 |ntf (mp,| "%05d |
|00002f50| 20 20 20 20 20 25 73 22 | 2c 20 6e 75 6d 31 2c 20 | %s"|, num1, |
|00002f60| 43 69 74 79 29 3b 0a 58 | 09 65 6c 73 65 0a 58 09 |City);.X|.else.X.|
|00002f70| 09 73 70 72 69 6e 74 66 | 20 28 6d 70 2c 20 22 25 |.sprintf| (mp, "%|
|00002f80| 30 35 64 2d 25 30 35 64 | 20 25 73 22 2c 20 6e 75 |05d-%05d| %s", nu|
|00002f90| 6d 31 2c 20 6e 75 6d 32 | 2c 20 43 69 74 79 29 3b |m1, num2|, City);|
|00002fa0| 0a 58 0a 58 09 72 65 74 | 75 72 6e 20 6d 70 3b 0a |.X.X.ret|urn mp;.|
|00002fb0| 7d 0a 58 0a 73 65 6e 64 | 5f 65 72 72 6d 73 67 20 |}.X.send|_errmsg |
|00002fc0| 28 65 72 72 6d 73 67 29 | 0a 63 68 61 72 20 2a 65 |(errmsg)|.char *e|
|00002fd0| 72 72 6d 73 67 3b 0a 7b | 0a 58 09 5a 49 50 4c 49 |rrmsg;.{|.X.ZIPLI|
|00002fe0| 53 54 20 2a 7a 6c 70 3b | 0a 58 09 63 68 61 72 20 |ST *zlp;|.X.char |
|00002ff0| 2a 73 74 72 64 75 70 28 | 29 3b 0a 58 0a 58 09 7a |*strdup(|);.X.X.z|
|00003000| 6c 70 20 20 20 20 20 20 | 20 20 3d 20 28 5a 49 50 |lp | = (ZIP|
|00003010| 4c 49 53 54 20 2a 29 20 | 6d 61 6c 6c 6f 63 28 73 |LIST *) |malloc(s|
|00003020| 69 7a 65 6f 66 28 5a 49 | 50 4c 49 53 54 29 29 3b |izeof(ZI|PLIST));|
|00003030| 0a 58 09 7a 6c 70 2d 3e | 64 61 74 61 20 20 3d 20 |.X.zlp->|data = |
|00003040| 73 74 72 64 75 70 20 28 | 65 72 72 6d 73 67 29 3b |strdup (|errmsg);|
|00003050| 0a 58 09 7a 6c 70 2d 3e | 6e 65 78 74 20 20 3d 20 |.X.zlp->|next = |
|00003060| 4e 55 4c 4c 3b 0a 58 09 | 72 65 73 75 6c 74 2e 6c |NULL;.X.|result.l|
|00003070| 69 73 74 3d 20 7a 6c 70 | 3b 0a 58 09 72 65 73 75 |ist= zlp|;.X.resu|
|00003080| 6c 74 2e 7a 69 70 65 72 | 72 6f 72 20 3d 20 30 3b |lt.ziper|ror = 0;|
|00003090| 0a 7d 0a 53 48 41 52 5f | 45 4f 46 0a 63 68 6d 6f |.}.SHAR_|EOF.chmo|
|000030a0| 64 20 30 36 34 34 20 72 | 70 63 2e 7a 69 70 63 6f |d 0644 r|pc.zipco|
|000030b0| 64 65 64 2e 63 20 7c 7c | 0a 65 63 68 6f 20 27 72 |ded.c |||.echo 'r|
|000030c0| 65 73 74 6f 72 65 20 6f | 66 20 72 70 63 2e 7a 69 |estore o|f rpc.zi|
|000030d0| 70 63 6f 64 65 64 2e 63 | 20 66 61 69 6c 65 64 27 |pcoded.c| failed'|
|000030e0| 0a 57 63 5f 63 3d 22 60 | 77 63 20 2d 63 20 3c 20 |.Wc_c="`|wc -c < |
|000030f0| 27 72 70 63 2e 7a 69 70 | 63 6f 64 65 64 2e 63 27 |'rpc.zip|coded.c'|
|00003100| 60 22 0a 74 65 73 74 20 | 33 34 34 37 20 2d 65 71 |`".test |3447 -eq|
|00003110| 20 22 24 57 63 5f 63 22 | 20 7c 7c 0a 09 65 63 68 | "$Wc_c"| ||..ech|
|00003120| 6f 20 27 72 70 63 2e 7a | 69 70 63 6f 64 65 64 2e |o 'rpc.z|ipcoded.|
|00003130| 63 3a 20 6f 72 69 67 69 | 6e 61 6c 20 73 69 7a 65 |c: origi|nal size|
|00003140| 20 33 34 34 37 2c 20 63 | 75 72 72 65 6e 74 20 73 | 3447, c|urrent s|
|00003150| 69 7a 65 27 20 22 24 57 | 63 5f 63 22 0a 66 69 0a |ize' "$W|c_c".fi.|
|00003160| 23 20 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 20 |# ======|======= |
|00003170| 76 65 72 73 69 6f 6e 2e | 68 20 3d 3d 3d 3d 3d 3d |version.|h ======|
|00003180| 3d 3d 3d 3d 3d 3d 3d 3d | 0a 69 66 20 74 65 73 74 |========|.if test|
|00003190| 20 2d 66 20 27 76 65 72 | 73 69 6f 6e 2e 68 27 20 | -f 'ver|sion.h' |
|000031a0| 2d 61 20 58 22 24 31 22 | 20 21 3d 20 58 22 2d 63 |-a X"$1"| != X"-c|
|000031b0| 22 3b 20 74 68 65 6e 0a | 09 65 63 68 6f 20 27 78 |"; then.|.echo 'x|
|000031c0| 20 2d 20 73 6b 69 70 70 | 69 6e 67 20 76 65 72 73 | - skipp|ing vers|
|000031d0| 69 6f 6e 2e 68 20 28 46 | 69 6c 65 20 61 6c 72 65 |ion.h (F|ile alre|
|000031e0| 61 64 79 20 65 78 69 73 | 74 73 29 27 0a 65 6c 73 |ady exis|ts)'.els|
|000031f0| 65 0a 65 63 68 6f 20 27 | 78 20 2d 20 65 78 74 72 |e.echo '|x - extr|
|00003200| 61 63 74 69 6e 67 20 76 | 65 72 73 69 6f 6e 2e 68 |acting v|ersion.h|
|00003210| 20 28 54 65 78 74 29 27 | 0a 73 65 64 20 27 73 2f | (Text)'|.sed 's/|
|00003220| 5e 58 2f 2f 27 20 3c 3c | 20 27 53 48 41 52 5f 45 |^X//' <<| 'SHAR_E|
|00003230| 4f 46 27 20 3e 20 27 76 | 65 72 73 69 6f 6e 2e 68 |OF' > 'v|ersion.h|
|00003240| 27 20 26 26 0a 23 64 65 | 66 69 6e 65 20 56 45 52 |' &&.#de|fine VER|
|00003250| 53 49 4f 4e 20 22 31 2e | 30 20 28 62 65 74 61 29 |SION "1.|0 (beta)|
|00003260| 22 0a 53 48 41 52 5f 45 | 4f 46 0a 63 68 6d 6f 64 |".SHAR_E|OF.chmod|
|00003270| 20 30 36 34 34 20 76 65 | 72 73 69 6f 6e 2e 68 20 | 0644 ve|rsion.h |
|00003280| 7c 7c 0a 65 63 68 6f 20 | 27 72 65 73 74 6f 72 65 |||.echo |'restore|
|00003290| 20 6f 66 20 76 65 72 73 | 69 6f 6e 2e 68 20 66 61 | of vers|ion.h fa|
|000032a0| 69 6c 65 64 27 0a 57 63 | 5f 63 3d 22 60 77 63 20 |iled'.Wc|_c="`wc |
|000032b0| 2d 63 20 3c 20 27 76 65 | 72 73 69 6f 6e 2e 68 27 |-c < 've|rsion.h'|
|000032c0| 60 22 0a 74 65 73 74 20 | 32 39 20 2d 65 71 20 22 |`".test |29 -eq "|
|000032d0| 24 57 63 5f 63 22 20 7c | 7c 0a 09 65 63 68 6f 20 |$Wc_c" |||..echo |
|000032e0| 27 76 65 72 73 69 6f 6e | 2e 68 3a 20 6f 72 69 67 |'version|.h: orig|
|000032f0| 69 6e 61 6c 20 73 69 7a | 65 20 32 39 2c 20 63 75 |inal siz|e 29, cu|
|00003300| 72 72 65 6e 74 20 73 69 | 7a 65 27 20 22 24 57 63 |rrent si|ze' "$Wc|
|00003310| 5f 63 22 0a 66 69 0a 65 | 78 69 74 20 30 0a 2d 2d |_c".fi.e|xit 0.--|
|00003320| 20 0a 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d | .------|--------|
|00003330| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003340| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003350| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003360| 2d 0a 20 20 20 4d 61 6a | 2e 20 42 72 69 61 6e 20 |-. Maj|. Brian |
|00003370| 41 20 42 6f 79 74 65 72 | 0a 20 20 20 55 53 20 41 |A Boyter|. US A|
|00003380| 72 6d 79 20 46 6f 72 65 | 69 67 6e 20 53 63 69 65 |rmy Fore|ign Scie|
|00003390| 6e 63 65 20 26 20 54 65 | 63 68 6e 6f 6c 6f 67 79 |nce & Te|chnology|
|000033a0| 20 43 65 6e 74 65 72 0a | 20 20 20 43 68 61 72 6c | Center.| Charl|
|000033b0| 6f 74 74 65 73 76 69 6c | 6c 65 2c 20 56 61 20 32 |ottesvil|le, Va 2|
|000033c0| 32 39 30 31 20 20 20 20 | 20 20 20 20 20 20 20 20 |2901 | |
|000033d0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 5f 5f 0a | | __.|
|000033e0| 20 20 20 6f 66 66 3a 20 | 28 38 30 34 29 39 38 30 | off: |(804)980|
|000033f0| 2d 37 33 36 32 20 20 20 | 20 20 20 20 20 20 20 20 |-7362 | |
|00003400| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003410| 20 20 20 28 20 20 20 20 | 29 0a 20 20 20 68 6f 6d | ( |). hom|
|00003420| 65 3a 20 20 20 20 20 39 | 37 33 2d 39 34 34 30 20 |e: 9|73-9440 |
|00003430| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003440| 20 20 20 20 20 20 20 20 | 20 20 20 20 7b 20 20 20 | | { |
|00003450| 20 20 20 7d 0a 20 20 20 | 20 20 20 20 20 20 20 20 | }. | |
|00003460| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003470| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003480| 20 20 20 20 20 20 20 20 | 28 20 20 20 20 29 0a 20 | |( ). |
|00003490| 20 20 62 6f 79 74 65 72 | 40 66 73 74 63 2d 63 68 | boyter|@fstc-ch|
|000034a0| 76 69 6c 6c 65 2e 61 72 | 6d 79 2e 6d 69 6c 20 20 |ville.ar|my.mil |
|000034b0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000034c0| 20 20 20 20 7c 7c 0a 20 | 20 20 20 20 20 20 20 20 | ||. | |
|000034d0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000034e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000034f0| 20 20 20 20 20 20 20 20 | 20 20 20 20 7c 7c 0a 20 | | ||. |
|00003500| 20 20 4a 75 73 74 20 73 | 61 79 20 67 6c 6f 77 2e | Just s|ay glow.|
|00003510| 2e 2e 2e 2e 2e 20 20 20 | 20 20 20 20 20 20 20 20 |..... | |
|00003520| 20 20 20 20 20 20 20 20 | 20 20 20 20 5f 5f 5f 5f | | ____|
|00003530| 5f 5f 5f 3c 20 20 3e 5f | 5f 5f 5f 5f 5f 5f 0a |___< >_|______. |
+--------+-------------------------+-------------------------+--------+--------+