home *** CD-ROM | disk | FTP | other *** search
MacBinary | 1991-10-10 | 5.5 KB | [TEXT/MPS ] |
open in:
MacOS 8.1
|
Win98
|
DOS
browse contents |
view JSON data
|
view as text
This file was processed as: MacBinary
(archive/macBinary).
Confidence | Program | Detection | Match Type | Support
|
---|
10%
| dexvert
| MacBinary (archive/macBinary)
| fallback
| Supported |
1%
| dexvert
| Text File (text/txt)
| fallback
| Supported |
100%
| file
| MacBinary II, Thu Oct 10 15:57:23 1991, modified Thu Oct 10 15:57:23 1991, creator 'MPS ', type ASCII, 4940 bytes "netinet_in.h" , at 0x13cc 428 bytes resource
| default (weak)
| |
99%
| file
| data
| default
| |
74%
| TrID
| Macintosh plain text (MacBinary)
| default
| |
25%
| TrID
| MacBinary 2
| default (weak)
| |
100%
| siegfried
| fmt/1762 MacBinary (II)
| default
| |
100%
| lsar
| MacBinary
| default
|
|
id metadata |
---|
key | value |
---|
macFileType | [TEXT] |
macFileCreator | [MPS ] |
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 0c 6e 65 74 69 6e 65 | 74 5f 69 6e 2e 68 00 00 |..netine|t_in.h..|
|00000010| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 54 45 58 54 4d 50 53 | 20 00 00 00 00 00 00 00 |.TEXTMPS| .......|
|00000050| 00 00 00 00 00 13 4c 00 | 00 01 ac a5 1a 61 23 a5 |......L.|.....a#.|
|00000060| 1a 61 23 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |.a#.....|........|
|00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 05 ac 00 00 |........|........|
|00000080| 2f 2a 0d 20 2a 20 43 6f | 70 79 72 69 67 68 74 20 |/*. * Co|pyright |
|00000090| 28 63 29 20 31 39 38 32 | 2c 20 31 39 38 36 2c 20 |(c) 1982|, 1986, |
|000000a0| 31 39 39 30 20 52 65 67 | 65 6e 74 73 20 6f 66 20 |1990 Reg|ents of |
|000000b0| 74 68 65 20 55 6e 69 76 | 65 72 73 69 74 79 20 6f |the Univ|ersity o|
|000000c0| 66 20 43 61 6c 69 66 6f | 72 6e 69 61 2e 0d 20 2a |f Califo|rnia.. *|
|000000d0| 20 41 6c 6c 20 72 69 67 | 68 74 73 20 72 65 73 65 | All rig|hts rese|
|000000e0| 72 76 65 64 2e 0d 20 2a | 0d 20 2a 20 52 65 64 69 |rved.. *|. * Redi|
|000000f0| 73 74 72 69 62 75 74 69 | 6f 6e 20 69 73 20 6f 6e |stributi|on is on|
|00000100| 6c 79 20 70 65 72 6d 69 | 74 74 65 64 20 75 6e 74 |ly permi|tted unt|
|00000110| 69 6c 20 6f 6e 65 20 79 | 65 61 72 20 61 66 74 65 |il one y|ear afte|
|00000120| 72 20 74 68 65 20 66 69 | 72 73 74 20 73 68 69 70 |r the fi|rst ship|
|00000130| 6d 65 6e 74 0d 20 2a 20 | 6f 66 20 34 2e 34 42 53 |ment. * |of 4.4BS|
|00000140| 44 20 62 79 20 74 68 65 | 20 52 65 67 65 6e 74 73 |D by the| Regents|
|00000150| 2e 20 20 4f 74 68 65 72 | 77 69 73 65 2c 20 72 65 |. Other|wise, re|
|00000160| 64 69 73 74 72 69 62 75 | 74 69 6f 6e 20 61 6e 64 |distribu|tion and|
|00000170| 20 75 73 65 20 69 6e 20 | 73 6f 75 72 63 65 20 61 | use in |source a|
|00000180| 6e 64 0d 20 2a 20 62 69 | 6e 61 72 79 20 66 6f 72 |nd. * bi|nary for|
|00000190| 6d 73 20 61 72 65 20 70 | 65 72 6d 69 74 74 65 64 |ms are p|ermitted|
|000001a0| 20 70 72 6f 76 69 64 65 | 64 20 74 68 61 74 3a 20 | provide|d that: |
|000001b0| 28 31 29 20 73 6f 75 72 | 63 65 20 64 69 73 74 72 |(1) sour|ce distr|
|000001c0| 69 62 75 74 69 6f 6e 73 | 20 72 65 74 61 69 6e 0d |ibutions| retain.|
|000001d0| 20 2a 20 74 68 69 73 20 | 65 6e 74 69 72 65 20 63 | * this |entire c|
|000001e0| 6f 70 79 72 69 67 68 74 | 20 6e 6f 74 69 63 65 20 |opyright| notice |
|000001f0| 61 6e 64 20 63 6f 6d 6d | 65 6e 74 2c 20 61 6e 64 |and comm|ent, and|
|00000200| 20 28 32 29 20 64 69 73 | 74 72 69 62 75 74 69 6f | (2) dis|tributio|
|00000210| 6e 73 20 69 6e 63 6c 75 | 64 69 6e 67 0d 20 2a 20 |ns inclu|ding. * |
|00000220| 62 69 6e 61 72 69 65 73 | 20 64 69 73 70 6c 61 79 |binaries| display|
|00000230| 20 74 68 65 20 66 6f 6c | 6c 6f 77 69 6e 67 20 61 | the fol|lowing a|
|00000240| 63 6b 6e 6f 77 6c 65 64 | 67 65 6d 65 6e 74 3a 20 |cknowled|gement: |
|00000250| 20 54 68 69 73 20 70 72 | 6f 64 75 63 74 20 69 6e | This pr|oduct in|
|00000260| 63 6c 75 64 65 73 0d 20 | 2a 20 73 6f 66 74 77 61 |cludes. |* softwa|
|00000270| 72 65 20 64 65 76 65 6c | 6f 70 65 64 20 62 79 20 |re devel|oped by |
|00000280| 74 68 65 20 55 6e 69 76 | 65 72 73 69 74 79 20 6f |the Univ|ersity o|
|00000290| 66 20 43 61 6c 69 66 6f | 72 6e 69 61 2c 20 42 65 |f Califo|rnia, Be|
|000002a0| 72 6b 65 6c 65 79 20 61 | 6e 64 20 69 74 73 0d 20 |rkeley a|nd its. |
|000002b0| 2a 20 63 6f 6e 74 72 69 | 62 75 74 6f 72 73 27 27 |* contri|butors''|
|000002c0| 20 69 6e 20 74 68 65 20 | 64 6f 63 75 6d 65 6e 74 | in the |document|
|000002d0| 61 74 69 6f 6e 20 6f 72 | 20 6f 74 68 65 72 20 6d |ation or| other m|
|000002e0| 61 74 65 72 69 61 6c 73 | 20 70 72 6f 76 69 64 65 |aterials| provide|
|000002f0| 64 20 77 69 74 68 20 74 | 68 65 0d 20 2a 20 64 69 |d with t|he. * di|
|00000300| 73 74 72 69 62 75 74 69 | 6f 6e 20 61 6e 64 20 69 |stributi|on and i|
|00000310| 6e 20 61 6c 6c 20 61 64 | 76 65 72 74 69 73 69 6e |n all ad|vertisin|
|00000320| 67 20 6d 61 74 65 72 69 | 61 6c 73 20 6d 65 6e 74 |g materi|als ment|
|00000330| 69 6f 6e 69 6e 67 20 66 | 65 61 74 75 72 65 73 20 |ioning f|eatures |
|00000340| 6f 72 20 75 73 65 0d 20 | 2a 20 6f 66 20 74 68 69 |or use. |* of thi|
|00000350| 73 20 73 6f 66 74 77 61 | 72 65 2e 20 20 4e 65 69 |s softwa|re. Nei|
|00000360| 74 68 65 72 20 74 68 65 | 20 6e 61 6d 65 20 6f 66 |ther the| name of|
|00000370| 20 74 68 65 20 55 6e 69 | 76 65 72 73 69 74 79 20 | the Uni|versity |
|00000380| 6e 6f 72 20 74 68 65 20 | 6e 61 6d 65 73 20 6f 66 |nor the |names of|
|00000390| 0d 20 2a 20 69 74 73 20 | 63 6f 6e 74 72 69 62 75 |. * its |contribu|
|000003a0| 74 6f 72 73 20 6d 61 79 | 20 62 65 20 75 73 65 64 |tors may| be used|
|000003b0| 20 74 6f 20 65 6e 64 6f | 72 73 65 20 6f 72 20 70 | to endo|rse or p|
|000003c0| 72 6f 6d 6f 74 65 20 70 | 72 6f 64 75 63 74 73 20 |romote p|roducts |
|000003d0| 64 65 72 69 76 65 64 20 | 66 72 6f 6d 0d 20 2a 20 |derived |from. * |
|000003e0| 74 68 69 73 20 73 6f 66 | 74 77 61 72 65 20 77 69 |this sof|tware wi|
|000003f0| 74 68 6f 75 74 20 73 70 | 65 63 69 66 69 63 20 70 |thout sp|ecific p|
|00000400| 72 69 6f 72 20 77 72 69 | 74 74 65 6e 20 70 65 72 |rior wri|tten per|
|00000410| 6d 69 73 73 69 6f 6e 2e | 0d 20 2a 20 54 48 49 53 |mission.|. * THIS|
|00000420| 20 53 4f 46 54 57 41 52 | 45 20 49 53 20 50 52 4f | SOFTWAR|E IS PRO|
|00000430| 56 49 44 45 44 20 41 53 | 20 49 53 27 27 20 41 4e |VIDED AS| IS'' AN|
|00000440| 44 20 57 49 54 48 4f 55 | 54 20 41 4e 59 20 45 58 |D WITHOU|T ANY EX|
|00000450| 50 52 45 53 53 20 4f 52 | 20 49 4d 50 4c 49 45 44 |PRESS OR| IMPLIED|
|00000460| 0d 20 2a 20 57 41 52 52 | 41 4e 54 49 45 53 2c 20 |. * WARR|ANTIES, |
|00000470| 49 4e 43 4c 55 44 49 4e | 47 2c 20 57 49 54 48 4f |INCLUDIN|G, WITHO|
|00000480| 55 54 20 4c 49 4d 49 54 | 41 54 49 4f 4e 2c 20 54 |UT LIMIT|ATION, T|
|00000490| 48 45 20 49 4d 50 4c 49 | 45 44 20 57 41 52 52 41 |HE IMPLI|ED WARRA|
|000004a0| 4e 54 49 45 53 20 4f 46 | 0d 20 2a 20 4d 45 52 43 |NTIES OF|. * MERC|
|000004b0| 48 41 4e 54 41 42 49 4c | 49 54 59 20 41 4e 44 20 |HANTABIL|ITY AND |
|000004c0| 46 49 54 4e 45 53 53 20 | 46 4f 52 20 41 20 50 41 |FITNESS |FOR A PA|
|000004d0| 52 54 49 43 55 4c 41 52 | 20 50 55 52 50 4f 53 45 |RTICULAR| PURPOSE|
|000004e0| 2e 0d 20 2a 0d 20 2a 09 | 40 28 23 29 69 6e 2e 68 |.. *. *.|@(#)in.h|
|000004f0| 09 37 2e 31 30 20 28 42 | 65 72 6b 65 6c 65 79 29 |.7.10 (B|erkeley)|
|00000500| 20 36 2f 32 38 2f 39 30 | 0d 20 2a 2f 0d 0d 2f 2a | 6/28/90|. */../*|
|00000510| 0d 20 2a 20 43 6f 6e 73 | 74 61 6e 74 73 20 61 6e |. * Cons|tants an|
|00000520| 64 20 73 74 72 75 63 74 | 75 72 65 73 20 64 65 66 |d struct|ures def|
|00000530| 69 6e 65 64 20 62 79 20 | 74 68 65 20 69 6e 74 65 |ined by |the inte|
|00000540| 72 6e 65 74 20 73 79 73 | 74 65 6d 2c 0d 20 2a 20 |rnet sys|tem,. * |
|00000550| 50 65 72 20 52 46 43 20 | 37 39 30 2c 20 53 65 70 |Per RFC |790, Sep|
|00000560| 74 65 6d 62 65 72 20 31 | 39 38 31 2e 0d 20 2a 2f |tember 1|981.. */|
|00000570| 0d 0d 2f 2a 0d 20 2a 20 | 50 72 6f 74 6f 63 6f 6c |../*. * |Protocol|
|00000580| 73 0d 20 2a 2f 0d 23 64 | 65 66 69 6e 65 09 49 50 |s. */.#d|efine.IP|
|00000590| 50 52 4f 54 4f 5f 49 50 | 09 09 30 09 09 2f 2a 20 |PROTO_IP|..0../* |
|000005a0| 64 75 6d 6d 79 20 66 6f | 72 20 49 50 20 2a 2f 0d |dummy fo|r IP */.|
|000005b0| 23 64 65 66 69 6e 65 09 | 49 50 50 52 4f 54 4f 5f |#define.|IPPROTO_|
|000005c0| 49 43 4d 50 09 09 31 09 | 09 2f 2a 20 63 6f 6e 74 |ICMP..1.|./* cont|
|000005d0| 72 6f 6c 20 6d 65 73 73 | 61 67 65 20 70 72 6f 74 |rol mess|age prot|
|000005e0| 6f 63 6f 6c 20 2a 2f 0d | 23 64 65 66 69 6e 65 09 |ocol */.|#define.|
|000005f0| 49 50 50 52 4f 54 4f 5f | 47 47 50 09 09 33 09 09 |IPPROTO_|GGP..3..|
|00000600| 2f 2a 20 67 61 74 65 77 | 61 79 5e 32 20 28 64 65 |/* gatew|ay^2 (de|
|00000610| 70 72 65 63 61 74 65 64 | 29 20 2a 2f 0d 23 64 65 |precated|) */.#de|
|00000620| 66 69 6e 65 09 49 50 50 | 52 4f 54 4f 5f 54 43 50 |fine.IPP|ROTO_TCP|
|00000630| 09 09 36 09 09 2f 2a 20 | 74 63 70 20 2a 2f 0d 23 |..6../* |tcp */.#|
|00000640| 64 65 66 69 6e 65 09 49 | 50 50 52 4f 54 4f 5f 45 |define.I|PPROTO_E|
|00000650| 47 50 09 09 38 09 09 2f | 2a 20 65 78 74 65 72 69 |GP..8../|* exteri|
|00000660| 6f 72 20 67 61 74 65 77 | 61 79 20 70 72 6f 74 6f |or gatew|ay proto|
|00000670| 63 6f 6c 20 2a 2f 0d 23 | 64 65 66 69 6e 65 09 49 |col */.#|define.I|
|00000680| 50 50 52 4f 54 4f 5f 50 | 55 50 09 09 31 32 09 09 |PPROTO_P|UP..12..|
|00000690| 2f 2a 20 70 75 70 20 2a | 2f 0d 23 64 65 66 69 6e |/* pup *|/.#defin|
|000006a0| 65 09 49 50 50 52 4f 54 | 4f 5f 55 44 50 09 09 31 |e.IPPROT|O_UDP..1|
|000006b0| 37 09 09 2f 2a 20 75 73 | 65 72 20 64 61 74 61 67 |7../* us|er datag|
|000006c0| 72 61 6d 20 70 72 6f 74 | 6f 63 6f 6c 20 2a 2f 0d |ram prot|ocol */.|
|000006d0| 23 64 65 66 69 6e 65 09 | 49 50 50 52 4f 54 4f 5f |#define.|IPPROTO_|
|000006e0| 49 44 50 09 09 32 32 09 | 09 2f 2a 20 78 6e 73 20 |IDP..22.|./* xns |
|000006f0| 69 64 70 20 2a 2f 0d 23 | 64 65 66 69 6e 65 09 49 |idp */.#|define.I|
|00000700| 50 50 52 4f 54 4f 5f 54 | 50 09 09 32 39 20 09 09 |PPROTO_T|P..29 ..|
|00000710| 2f 2a 20 74 70 2d 34 20 | 77 2f 20 63 6c 61 73 73 |/* tp-4 |w/ class|
|00000720| 20 6e 65 67 6f 74 69 61 | 74 69 6f 6e 20 2a 2f 0d | negotia|tion */.|
|00000730| 23 64 65 66 69 6e 65 09 | 49 50 50 52 4f 54 4f 5f |#define.|IPPROTO_|
|00000740| 45 4f 4e 09 09 38 30 09 | 09 2f 2a 20 49 53 4f 20 |EON..80.|./* ISO |
|00000750| 63 6e 6c 70 20 2a 2f 0d | 0d 23 64 65 66 69 6e 65 |cnlp */.|.#define|
|00000760| 09 49 50 50 52 4f 54 4f | 5f 52 41 57 09 09 32 35 |.IPPROTO|_RAW..25|
|00000770| 35 09 09 2f 2a 20 72 61 | 77 20 49 50 20 70 61 63 |5../* ra|w IP pac|
|00000780| 6b 65 74 20 2a 2f 0d 23 | 64 65 66 69 6e 65 09 49 |ket */.#|define.I|
|00000790| 50 50 52 4f 54 4f 5f 4d | 41 58 09 09 32 35 36 0d |PPROTO_M|AX..256.|
|000007a0| 0d 0d 2f 2a 0d 20 2a 20 | 4c 6f 63 61 6c 20 70 6f |../*. * |Local po|
|000007b0| 72 74 20 6e 75 6d 62 65 | 72 20 63 6f 6e 76 65 6e |rt numbe|r conven|
|000007c0| 74 69 6f 6e 73 3a 0d 20 | 2a 20 50 6f 72 74 73 20 |tions:. |* Ports |
|000007d0| 3c 20 49 50 50 4f 52 54 | 5f 52 45 53 45 52 56 45 |< IPPORT|_RESERVE|
|000007e0| 44 20 61 72 65 20 72 65 | 73 65 72 76 65 64 20 66 |D are re|served f|
|000007f0| 6f 72 0d 20 2a 20 70 72 | 69 76 69 6c 65 67 65 64 |or. * pr|ivileged|
|00000800| 20 70 72 6f 63 65 73 73 | 65 73 20 28 65 2e 67 2e | process|es (e.g.|
|00000810| 20 72 6f 6f 74 29 2e 0d | 20 2a 20 50 6f 72 74 73 | root)..| * Ports|
|00000820| 20 3e 20 49 50 50 4f 52 | 54 5f 55 53 45 52 52 45 | > IPPOR|T_USERRE|
|00000830| 53 45 52 56 45 44 20 61 | 72 65 20 72 65 73 65 72 |SERVED a|re reser|
|00000840| 76 65 64 0d 20 2a 20 66 | 6f 72 20 73 65 72 76 65 |ved. * f|or serve|
|00000850| 72 73 2c 20 6e 6f 74 20 | 6e 65 63 65 73 73 61 72 |rs, not |necessar|
|00000860| 69 6c 79 20 70 72 69 76 | 69 6c 65 67 65 64 2e 0d |ily priv|ileged..|
|00000870| 20 2a 2f 0d 23 64 65 66 | 69 6e 65 09 49 50 50 4f | */.#def|ine.IPPO|
|00000880| 52 54 5f 52 45 53 45 52 | 56 45 44 09 09 31 30 32 |RT_RESER|VED..102|
|00000890| 34 0d 23 64 65 66 69 6e | 65 09 49 50 50 4f 52 54 |4.#defin|e.IPPORT|
|000008a0| 5f 55 53 45 52 52 45 53 | 45 52 56 45 44 09 35 30 |_USERRES|ERVED.50|
|000008b0| 30 30 0d 0d 2f 2a 0d 20 | 2a 20 49 6e 74 65 72 6e |00../*. |* Intern|
|000008c0| 65 74 20 61 64 64 72 65 | 73 73 20 28 61 20 73 74 |et addre|ss (a st|
|000008d0| 72 75 63 74 75 72 65 20 | 66 6f 72 20 68 69 73 74 |ructure |for hist|
|000008e0| 6f 72 69 63 61 6c 20 72 | 65 61 73 6f 6e 73 29 0d |orical r|easons).|
|000008f0| 20 2a 2f 0d 73 74 72 75 | 63 74 20 69 6e 5f 61 64 | */.stru|ct in_ad|
|00000900| 64 72 20 7b 0d 09 75 5f | 6c 6f 6e 67 20 73 5f 61 |dr {..u_|long s_a|
|00000910| 64 64 72 3b 0d 7d 3b 0d | 0d 2f 2a 0d 20 2a 20 44 |ddr;.};.|./*. * D|
|00000920| 65 66 69 6e 69 74 69 6f | 6e 73 20 6f 66 20 62 69 |efinitio|ns of bi|
|00000930| 74 73 20 69 6e 20 69 6e | 74 65 72 6e 65 74 20 61 |ts in in|ternet a|
|00000940| 64 64 72 65 73 73 20 69 | 6e 74 65 67 65 72 73 2e |ddress i|ntegers.|
|00000950| 0d 20 2a 20 4f 6e 20 73 | 75 62 6e 65 74 73 2c 20 |. * On s|ubnets, |
|00000960| 74 68 65 20 64 65 63 6f | 6d 70 6f 73 69 74 69 6f |the deco|mpositio|
|00000970| 6e 20 6f 66 20 61 64 64 | 72 65 73 73 65 73 20 74 |n of add|resses t|
|00000980| 6f 20 68 6f 73 74 20 61 | 6e 64 20 6e 65 74 20 70 |o host a|nd net p|
|00000990| 61 72 74 73 0d 20 2a 20 | 69 73 20 64 6f 6e 65 20 |arts. * |is done |
|000009a0| 61 63 63 6f 72 64 69 6e | 67 20 74 6f 20 73 75 62 |accordin|g to sub|
|000009b0| 6e 65 74 20 6d 61 73 6b | 2c 20 6e 6f 74 20 74 68 |net mask|, not th|
|000009c0| 65 20 6d 61 73 6b 73 20 | 68 65 72 65 2e 0d 20 2a |e masks |here.. *|
|000009d0| 2f 0d 23 64 65 66 69 6e | 65 09 49 4e 5f 43 4c 41 |/.#defin|e.IN_CLA|
|000009e0| 53 53 41 28 69 29 09 09 | 28 28 28 6c 6f 6e 67 29 |SSA(i)..|(((long)|
|000009f0| 28 69 29 20 26 20 30 78 | 38 30 30 30 30 30 30 30 |(i) & 0x|80000000|
|00000a00| 29 20 3d 3d 20 30 29 0d | 23 64 65 66 69 6e 65 09 |) == 0).|#define.|
|00000a10| 49 4e 5f 43 4c 41 53 53 | 41 5f 4e 45 54 09 09 30 |IN_CLASS|A_NET..0|
|00000a20| 78 66 66 30 30 30 30 30 | 30 0d 23 64 65 66 69 6e |xff00000|0.#defin|
|00000a30| 65 09 49 4e 5f 43 4c 41 | 53 53 41 5f 4e 53 48 49 |e.IN_CLA|SSA_NSHI|
|00000a40| 46 54 09 32 34 0d 23 64 | 65 66 69 6e 65 09 49 4e |FT.24.#d|efine.IN|
|00000a50| 5f 43 4c 41 53 53 41 5f | 48 4f 53 54 09 09 30 78 |_CLASSA_|HOST..0x|
|00000a60| 30 30 66 66 66 66 66 66 | 0d 23 64 65 66 69 6e 65 |00ffffff|.#define|
|00000a70| 09 49 4e 5f 43 4c 41 53 | 53 41 5f 4d 41 58 09 09 |.IN_CLAS|SA_MAX..|
|00000a80| 31 32 38 0d 0d 23 64 65 | 66 69 6e 65 09 49 4e 5f |128..#de|fine.IN_|
|00000a90| 43 4c 41 53 53 42 28 69 | 29 09 09 28 28 28 6c 6f |CLASSB(i|)..(((lo|
|00000aa0| 6e 67 29 28 69 29 20 26 | 20 30 78 63 30 30 30 30 |ng)(i) &| 0xc0000|
|00000ab0| 30 30 30 29 20 3d 3d 20 | 30 78 38 30 30 30 30 30 |000) == |0x800000|
|00000ac0| 30 30 29 0d 23 64 65 66 | 69 6e 65 09 49 4e 5f 43 |00).#def|ine.IN_C|
|00000ad0| 4c 41 53 53 42 5f 4e 45 | 54 09 09 30 78 66 66 66 |LASSB_NE|T..0xfff|
|00000ae0| 66 30 30 30 30 0d 23 64 | 65 66 69 6e 65 09 49 4e |f0000.#d|efine.IN|
|00000af0| 5f 43 4c 41 53 53 42 5f | 4e 53 48 49 46 54 09 31 |_CLASSB_|NSHIFT.1|
|00000b00| 36 0d 23 64 65 66 69 6e | 65 09 49 4e 5f 43 4c 41 |6.#defin|e.IN_CLA|
|00000b10| 53 53 42 5f 48 4f 53 54 | 09 09 30 78 30 30 30 30 |SSB_HOST|..0x0000|
|00000b20| 66 66 66 66 0d 23 64 65 | 66 69 6e 65 09 49 4e 5f |ffff.#de|fine.IN_|
|00000b30| 43 4c 41 53 53 42 5f 4d | 41 58 09 09 36 35 35 33 |CLASSB_M|AX..6553|
|00000b40| 36 0d 0d 23 64 65 66 69 | 6e 65 09 49 4e 5f 43 4c |6..#defi|ne.IN_CL|
|00000b50| 41 53 53 43 28 69 29 09 | 09 28 28 28 6c 6f 6e 67 |ASSC(i).|.(((long|
|00000b60| 29 28 69 29 20 26 20 30 | 78 65 30 30 30 30 30 30 |)(i) & 0|xe000000|
|00000b70| 30 29 20 3d 3d 20 30 78 | 63 30 30 30 30 30 30 30 |0) == 0x|c0000000|
|00000b80| 29 0d 23 64 65 66 69 6e | 65 09 49 4e 5f 43 4c 41 |).#defin|e.IN_CLA|
|00000b90| 53 53 43 5f 4e 45 54 09 | 09 30 78 66 66 66 66 66 |SSC_NET.|.0xfffff|
|00000ba0| 66 30 30 0d 23 64 65 66 | 69 6e 65 09 49 4e 5f 43 |f00.#def|ine.IN_C|
|00000bb0| 4c 41 53 53 43 5f 4e 53 | 48 49 46 54 09 38 0d 23 |LASSC_NS|HIFT.8.#|
|00000bc0| 64 65 66 69 6e 65 09 49 | 4e 5f 43 4c 41 53 53 43 |define.I|N_CLASSC|
|00000bd0| 5f 48 4f 53 54 09 09 30 | 78 30 30 30 30 30 30 66 |_HOST..0|x000000f|
|00000be0| 66 0d 0d 23 64 65 66 69 | 6e 65 09 49 4e 5f 43 4c |f..#defi|ne.IN_CL|
|00000bf0| 41 53 53 44 28 69 29 09 | 09 28 28 28 6c 6f 6e 67 |ASSD(i).|.(((long|
|00000c00| 29 28 69 29 20 26 20 30 | 78 66 30 30 30 30 30 30 |)(i) & 0|xf000000|
|00000c10| 30 29 20 3d 3d 20 30 78 | 65 30 30 30 30 30 30 30 |0) == 0x|e0000000|
|00000c20| 29 0d 23 64 65 66 69 6e | 65 09 49 4e 5f 4d 55 4c |).#defin|e.IN_MUL|
|00000c30| 54 49 43 41 53 54 28 69 | 29 09 09 49 4e 5f 43 4c |TICAST(i|)..IN_CL|
|00000c40| 41 53 53 44 28 69 29 0d | 0d 23 64 65 66 69 6e 65 |ASSD(i).|.#define|
|00000c50| 09 49 4e 5f 45 58 50 45 | 52 49 4d 45 4e 54 41 4c |.IN_EXPE|RIMENTAL|
|00000c60| 28 69 29 09 28 28 28 6c | 6f 6e 67 29 28 69 29 20 |(i).(((l|ong)(i) |
|00000c70| 26 20 30 78 65 30 30 30 | 30 30 30 30 29 20 3d 3d |& 0xe000|0000) ==|
|00000c80| 20 30 78 65 30 30 30 30 | 30 30 30 29 0d 23 64 65 | 0xe0000|000).#de|
|00000c90| 66 69 6e 65 09 49 4e 5f | 42 41 44 43 4c 41 53 53 |fine.IN_|BADCLASS|
|00000ca0| 28 69 29 09 09 28 28 28 | 6c 6f 6e 67 29 28 69 29 |(i)..(((|long)(i)|
|00000cb0| 20 26 20 30 78 66 30 30 | 30 30 30 30 30 29 20 3d | & 0xf00|00000) =|
|00000cc0| 3d 20 30 78 66 30 30 30 | 30 30 30 30 29 0d 0d 23 |= 0xf000|0000)..#|
|00000cd0| 64 65 66 69 6e 65 09 49 | 4e 41 44 44 52 5f 41 4e |define.I|NADDR_AN|
|00000ce0| 59 09 09 28 75 5f 6c 6f | 6e 67 29 30 78 30 30 30 |Y..(u_lo|ng)0x000|
|00000cf0| 30 30 30 30 30 0d 23 64 | 65 66 69 6e 65 09 49 4e |00000.#d|efine.IN|
|00000d00| 41 44 44 52 5f 42 52 4f | 41 44 43 41 53 54 09 28 |ADDR_BRO|ADCAST.(|
|00000d10| 75 5f 6c 6f 6e 67 29 30 | 78 66 66 66 66 66 66 66 |u_long)0|xfffffff|
|00000d20| 66 09 2f 2a 20 6d 75 73 | 74 20 62 65 20 6d 61 73 |f./* mus|t be mas|
|00000d30| 6b 65 64 20 2a 2f 0d 23 | 69 66 6e 64 65 66 20 4b |ked */.#|ifndef K|
|00000d40| 45 52 4e 45 4c 0d 23 64 | 65 66 69 6e 65 09 49 4e |ERNEL.#d|efine.IN|
|00000d50| 41 44 44 52 5f 4e 4f 4e | 45 09 09 30 78 66 66 66 |ADDR_NON|E..0xfff|
|00000d60| 66 66 66 66 66 09 09 2f | 2a 20 2d 31 20 72 65 74 |fffff../|* -1 ret|
|00000d70| 75 72 6e 20 2a 2f 0d 23 | 65 6e 64 69 66 0d 0d 23 |urn */.#|endif..#|
|00000d80| 64 65 66 69 6e 65 09 49 | 4e 5f 4c 4f 4f 50 42 41 |define.I|N_LOOPBA|
|00000d90| 43 4b 4e 45 54 09 09 31 | 32 37 09 09 09 2f 2a 20 |CKNET..1|27.../* |
|00000da0| 6f 66 66 69 63 69 61 6c | 21 20 2a 2f 0d 0d 2f 2a |official|! */../*|
|00000db0| 0d 20 2a 20 53 6f 63 6b | 65 74 20 61 64 64 72 65 |. * Sock|et addre|
|00000dc0| 73 73 2c 20 69 6e 74 65 | 72 6e 65 74 20 73 74 79 |ss, inte|rnet sty|
|00000dd0| 6c 65 2e 0d 20 2a 2f 0d | 73 74 72 75 63 74 20 73 |le.. */.|struct s|
|00000de0| 6f 63 6b 61 64 64 72 5f | 69 6e 20 7b 0d 09 75 5f |ockaddr_|in {..u_|
|00000df0| 63 68 61 72 09 73 69 6e | 5f 6c 65 6e 3b 0d 09 75 |char.sin|_len;..u|
|00000e00| 5f 63 68 61 72 09 73 69 | 6e 5f 66 61 6d 69 6c 79 |_char.si|n_family|
|00000e10| 3b 0d 09 75 5f 73 68 6f | 72 74 09 73 69 6e 5f 70 |;..u_sho|rt.sin_p|
|00000e20| 6f 72 74 3b 0d 09 73 74 | 72 75 63 74 09 69 6e 5f |ort;..st|ruct.in_|
|00000e30| 61 64 64 72 20 73 69 6e | 5f 61 64 64 72 3b 0d 09 |addr sin|_addr;..|
|00000e40| 63 68 61 72 09 73 69 6e | 5f 7a 65 72 6f 5b 38 5d |char.sin|_zero[8]|
|00000e50| 3b 0d 7d 3b 0d 0d 2f 2a | 0d 20 2a 20 53 74 72 75 |;.};../*|. * Stru|
|00000e60| 63 74 75 72 65 20 75 73 | 65 64 20 74 6f 20 64 65 |cture us|ed to de|
|00000e70| 73 63 72 69 62 65 20 49 | 50 20 6f 70 74 69 6f 6e |scribe I|P option|
|00000e80| 73 2e 0d 20 2a 20 55 73 | 65 64 20 74 6f 20 73 74 |s.. * Us|ed to st|
|00000e90| 6f 72 65 20 6f 70 74 69 | 6f 6e 73 20 69 6e 74 65 |ore opti|ons inte|
|00000ea0| 72 6e 61 6c 6c 79 2c 20 | 74 6f 20 70 61 73 73 20 |rnally, |to pass |
|00000eb0| 74 68 65 6d 20 74 6f 20 | 61 20 70 72 6f 63 65 73 |them to |a proces|
|00000ec0| 73 2c 0d 20 2a 20 6f 72 | 20 74 6f 20 72 65 73 74 |s,. * or| to rest|
|00000ed0| 6f 72 65 20 6f 70 74 69 | 6f 6e 73 20 72 65 74 72 |ore opti|ons retr|
|00000ee0| 69 65 76 65 64 20 65 61 | 72 6c 69 65 72 2e 0d 20 |ieved ea|rlier.. |
|00000ef0| 2a 20 54 68 65 20 69 70 | 5f 64 73 74 20 69 73 20 |* The ip|_dst is |
|00000f00| 75 73 65 64 20 66 6f 72 | 20 74 68 65 20 66 69 72 |used for| the fir|
|00000f10| 73 74 2d 68 6f 70 20 67 | 61 74 65 77 61 79 20 77 |st-hop g|ateway w|
|00000f20| 68 65 6e 20 75 73 69 6e | 67 20 61 20 73 6f 75 72 |hen usin|g a sour|
|00000f30| 63 65 20 72 6f 75 74 65 | 0d 20 2a 20 28 74 68 69 |ce route|. * (thi|
|00000f40| 73 20 67 65 74 73 20 70 | 75 74 20 69 6e 74 6f 20 |s gets p|ut into |
|00000f50| 74 68 65 20 68 65 61 64 | 65 72 20 70 72 6f 70 65 |the head|er prope|
|00000f60| 72 29 2e 0d 20 2a 2f 0d | 73 74 72 75 63 74 20 69 |r).. */.|struct i|
|00000f70| 70 5f 6f 70 74 73 20 7b | 0d 09 73 74 72 75 63 74 |p_opts {|..struct|
|00000f80| 09 69 6e 5f 61 64 64 72 | 20 69 70 5f 64 73 74 3b |.in_addr| ip_dst;|
|00000f90| 09 09 2f 2a 20 66 69 72 | 73 74 20 68 6f 70 2c 20 |../* fir|st hop, |
|00000fa0| 30 20 77 2f 6f 20 73 72 | 63 20 72 74 20 2a 2f 0d |0 w/o sr|c rt */.|
|00000fb0| 09 63 68 61 72 09 69 70 | 5f 6f 70 74 73 5b 34 30 |.char.ip|_opts[40|
|00000fc0| 5d 3b 09 09 2f 2a 20 61 | 63 74 75 61 6c 6c 79 20 |];../* a|ctually |
|00000fd0| 76 61 72 69 61 62 6c 65 | 20 69 6e 20 73 69 7a 65 |variable| in size|
|00000fe0| 20 2a 2f 0d 7d 3b 0d 0d | 2f 2a 0d 20 2a 20 4f 70 | */.};..|/*. * Op|
|00000ff0| 74 69 6f 6e 73 20 66 6f | 72 20 75 73 65 20 77 69 |tions fo|r use wi|
|00001000| 74 68 20 5b 67 73 5d 65 | 74 73 6f 63 6b 6f 70 74 |th [gs]e|tsockopt|
|00001010| 20 61 74 20 74 68 65 20 | 49 50 20 6c 65 76 65 6c | at the |IP level|
|00001020| 2e 0d 20 2a 20 46 69 72 | 73 74 20 77 6f 72 64 20 |.. * Fir|st word |
|00001030| 6f 66 20 63 6f 6d 6d 65 | 6e 74 20 69 73 20 64 61 |of comme|nt is da|
|00001040| 74 61 20 74 79 70 65 3b | 20 62 6f 6f 6c 20 69 73 |ta type;| bool is|
|00001050| 20 73 74 6f 72 65 64 20 | 69 6e 20 69 6e 74 2e 0d | stored |in int..|
|00001060| 20 2a 2f 0d 23 64 65 66 | 69 6e 65 09 49 50 5f 4f | */.#def|ine.IP_O|
|00001070| 50 54 49 4f 4e 53 09 31 | 09 2f 2a 20 62 75 66 2f |PTIONS.1|./* buf/|
|00001080| 69 70 5f 6f 70 74 73 3b | 20 73 65 74 2f 67 65 74 |ip_opts;| set/get|
|00001090| 20 49 50 20 70 65 72 2d | 70 61 63 6b 65 74 20 6f | IP per-|packet o|
|000010a0| 70 74 69 6f 6e 73 20 2a | 2f 0d 23 64 65 66 69 6e |ptions *|/.#defin|
|000010b0| 65 09 49 50 5f 48 44 52 | 49 4e 43 4c 09 32 09 2f |e.IP_HDR|INCL.2./|
|000010c0| 2a 20 69 6e 74 3b 20 68 | 65 61 64 65 72 20 69 73 |* int; h|eader is|
|000010d0| 20 69 6e 63 6c 75 64 65 | 64 20 77 69 74 68 20 64 | include|d with d|
|000010e0| 61 74 61 20 28 72 61 77 | 29 20 2a 2f 0d 23 64 65 |ata (raw|) */.#de|
|000010f0| 66 69 6e 65 09 49 50 5f | 54 4f 53 09 09 33 09 2f |fine.IP_|TOS..3./|
|00001100| 2a 20 69 6e 74 3b 20 49 | 50 20 74 79 70 65 20 6f |* int; I|P type o|
|00001110| 66 20 73 65 72 76 69 63 | 65 20 61 6e 64 20 70 72 |f servic|e and pr|
|00001120| 65 63 65 64 65 6e 63 65 | 20 2a 2f 0d 23 64 65 66 |ecedence| */.#def|
|00001130| 69 6e 65 09 49 50 5f 54 | 54 4c 09 09 34 09 2f 2a |ine.IP_T|TL..4./*|
|00001140| 20 69 6e 74 3b 20 49 50 | 20 74 69 6d 65 20 74 6f | int; IP| time to|
|00001150| 20 6c 69 76 65 20 2a 2f | 0d 23 64 65 66 69 6e 65 | live */|.#define|
|00001160| 09 49 50 5f 52 45 43 56 | 4f 50 54 53 09 35 09 2f |.IP_RECV|OPTS.5./|
|00001170| 2a 20 62 6f 6f 6c 3b 20 | 72 65 63 65 69 76 65 20 |* bool; |receive |
|00001180| 61 6c 6c 20 49 50 20 6f | 70 74 69 6f 6e 73 20 77 |all IP o|ptions w|
|00001190| 2f 64 61 74 61 67 72 61 | 6d 20 2a 2f 0d 23 64 65 |/datagra|m */.#de|
|000011a0| 66 69 6e 65 09 49 50 5f | 52 45 43 56 52 45 54 4f |fine.IP_|RECVRETO|
|000011b0| 50 54 53 09 36 09 2f 2a | 20 62 6f 6f 6c 3b 20 72 |PTS.6./*| bool; r|
|000011c0| 65 63 65 69 76 65 20 49 | 50 20 6f 70 74 69 6f 6e |eceive I|P option|
|000011d0| 73 20 66 6f 72 20 72 65 | 73 70 6f 6e 73 65 20 2a |s for re|sponse *|
|000011e0| 2f 0d 23 64 65 66 69 6e | 65 09 49 50 5f 52 45 43 |/.#defin|e.IP_REC|
|000011f0| 56 44 53 54 41 44 44 52 | 09 37 09 2f 2a 20 62 6f |VDSTADDR|.7./* bo|
|00001200| 6f 6c 3b 20 72 65 63 65 | 69 76 65 20 49 50 20 64 |ol; rece|ive IP d|
|00001210| 73 74 20 61 64 64 72 20 | 77 2f 64 61 74 61 67 72 |st addr |w/datagr|
|00001220| 61 6d 20 2a 2f 0d 23 64 | 65 66 69 6e 65 09 49 50 |am */.#d|efine.IP|
|00001230| 5f 52 45 54 4f 50 54 53 | 09 38 09 2f 2a 20 69 70 |_RETOPTS|.8./* ip|
|00001240| 5f 6f 70 74 73 3b 20 73 | 65 74 2f 67 65 74 20 49 |_opts; s|et/get I|
|00001250| 50 20 70 65 72 2d 70 61 | 63 6b 65 74 20 6f 70 74 |P per-pa|cket opt|
|00001260| 69 6f 6e 73 20 2a 2f 0d | 0d 2f 2f 0d 2f 2f 20 54 |ions */.|.//.// T|
|00001270| 68 65 20 6e 65 74 77 6f | 72 6b 20 6d 61 63 72 6f |he netwo|rk macro|
|00001280| 73 20 61 72 65 20 69 6e | 20 6d 61 63 68 69 6e 65 |s are in| machine|
|00001290| 2f 65 6e 64 69 61 6e 2e | 68 20 66 6f 72 20 34 2e |/endian.|h for 4.|
|000012a0| 33 72 65 6e 6f 2c 20 62 | 75 74 20 66 6f 72 20 0d |3reno, b|ut for .|
|000012b0| 2f 2f 20 73 75 6e 20 63 | 6f 6d 70 61 74 69 62 69 |// sun c|ompatibi|
|000012c0| 6c 69 74 79 2c 20 49 20 | 70 6c 61 63 65 64 20 74 |lity, I |placed t|
|000012d0| 68 65 6d 20 68 65 72 65 | 2d 20 43 68 61 72 6c 69 |hem here|- Charli|
|000012e0| 65 20 52 65 69 6d 61 6e | 0d 2f 2f 0d 23 64 65 66 |e Reiman|.//.#def|
|000012f0| 69 6e 65 20 6e 74 6f 68 | 6c 28 78 29 20 78 0d 23 |ine ntoh|l(x) x.#|
|00001300| 64 65 66 69 6e 65 20 6e | 74 6f 68 73 28 78 29 20 |define n|tohs(x) |
|00001310| 78 0d 23 64 65 66 69 6e | 65 20 68 74 6f 6e 6c 28 |x.#defin|e htonl(|
|00001320| 78 29 20 78 0d 23 64 65 | 66 69 6e 65 20 68 74 6f |x) x.#de|fine hto|
|00001330| 6e 73 28 78 29 20 78 0d | 0d 23 69 66 64 65 66 20 |ns(x) x.|.#ifdef |
|00001340| 4b 45 52 4e 45 4c 0d 65 | 78 74 65 72 6e 09 73 74 |KERNEL.e|xtern.st|
|00001350| 72 75 63 74 20 64 6f 6d | 61 69 6e 20 69 6e 65 74 |ruct dom|ain inet|
|00001360| 64 6f 6d 61 69 6e 3b 0d | 65 78 74 65 72 6e 09 73 |domain;.|extern.s|
|00001370| 74 72 75 63 74 20 70 72 | 6f 74 6f 73 77 20 69 6e |truct pr|otosw in|
|00001380| 65 74 73 77 5b 5d 3b 0d | 73 74 72 75 63 74 09 69 |etsw[];.|struct.i|
|00001390| 6e 5f 61 64 64 72 20 69 | 6e 5f 6d 61 6b 65 61 64 |n_addr i|n_makead|
|000013a0| 64 72 28 29 3b 0d 75 5f | 6c 6f 6e 67 09 69 6e 5f |dr();.u_|long.in_|
|000013b0| 6e 65 74 6f 66 28 29 2c | 20 69 6e 5f 6c 6e 61 6f |netof(),| in_lnao|
|000013c0| 66 28 29 3b 0d 23 65 6e | 64 69 66 0d 00 00 00 00 |f();.#en|dif.....|
|000013d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000013e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000013f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001400| 00 00 01 00 00 00 01 6e | 00 00 00 6e 00 00 00 3e |.......n|...n...>|
|00001410| 54 3a 0d 53 79 73 74 65 | 6d 20 4d 61 6e 61 67 65 |T:.Syste|m Manage|
|00001420| 72 20 26 20 50 6f 73 74 | 6d 61 73 74 65 72 20 20 |r & Post|master |
|00001430| 0c 6e 65 74 69 6e 65 74 | 2f 69 6e 2e 68 15 02 00 |.netinet|/in.h...|
|00001440| 00 00 54 45 58 54 4d 50 | 53 20 00 00 ff ff ff ff |..TEXTMP|S ......|
|00001450| 00 00 54 45 58 54 4d 50 | 53 20 00 00 ff ff ff ff |..TEXTMP|S ......|
|00001460| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001470| 00 00 a4 87 86 20 00 00 | 13 4c 00 00 01 ac 7c 20 |..... ..|.L....| |
|00001480| 20 20 20 74 6f 6c 6c 20 | 66 72 65 65 20 63 75 73 | toll |free cus|
|00001490| 74 6f 6d 65 72 20 73 65 | 72 76 69 63 65 20 6e 75 |tomer se|rvice nu|
|000014a0| 6d 62 65 72 2e 22 0d 2b | 31 20 36 31 37 20 38 36 |mber.".+|1 617 86|
|000014b0| 34 20 30 36 36 35 20 20 | 4e 49 43 3a 20 5b 43 4b |4 0665 |NIC: [CK|
|000014c0| 44 31 5d 20 20 20 20 7c | 20 20 2d 50 2e 20 48 61 |D1] || -P. Ha|
|000014d0| 6c 6c 61 6d 2d 42 61 6b | 65 72 20 3c 68 61 6c 6c |llam-Bak|er <hall|
|000014e0| 61 6d 40 7a 77 73 30 30 | 39 2e 64 65 73 79 2e 64 |am@zws00|9.desy.d|
|000014f0| 65 3e 0d ad ad a0 b2 b3 | ba b1 b2 a0 ad ad f4 e1 |e>......|........|
|00001500| 00 00 00 48 00 09 4d 6f | 6e 61 63 6f 00 00 00 00 |...H..Mo|naco....|
|00001510| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001520| 00 00 00 00 00 00 00 06 | 00 04 00 3c 00 24 01 dd |........|...<.$..|
|00001530| 02 3d 00 3c 00 24 01 dd | 02 3d a5 1a 28 e3 00 00 |.=.<.$..|.=..(...|
|00001540| 08 74 00 00 0d d5 00 00 | 0b 62 01 00 00 00 00 1e |.t......|.b......|
|00001550| 00 3c 00 24 01 dd 02 3d | 00 3c 00 24 01 dd 02 3d |.<.$...=|.<.$...=|
|00001560| 00 00 0b 62 00 00 00 00 | 00 00 00 00 00 00 00 00 |...b....|........|
|00001570| 01 00 00 00 01 6e 00 00 | 00 6e 00 00 00 3e 00 49 |.....n..|.n...>.I|
|00001580| aa b4 14 34 00 00 00 1c | 00 3e 00 00 4d 50 53 52 |...4....|.>..MPSR|
|00001590| 00 01 00 0a 03 ed ff ff | 00 00 00 00 00 00 00 00 |........|........|
|000015a0| 03 f0 ff ff 00 00 00 4c | 00 4f de 60 00 00 00 00 |.......L|.O.`....|
|000015b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000015c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000015d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000015e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000015f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
+--------+-------------------------+-------------------------+--------+--------+