home *** CD-ROM | disk | FTP | other *** search
open in:
MacOS 8.1
|
Win98
|
DOS
view JSON data
|
view as text
This file was processed as: DOS BACKUP file
(archive/dosBackupFile).
You can browse this item here: ADJSTACK.C
Confidence | Program | Detection | Match Type | Support
|
---|
100%
| dexvert
| DOS BACKUP file (archive/dosBackupFile)
| magic
| Supported |
66%
| dexvert
| Compact Compressed (Unix) (archive/compact)
| ext
| Supported |
100%
| file
| DOS 2.0-3.2 backed up file \CBTREE\LIBRARY\ADJSTACK.C
| default
| |
99%
| file
| data
| default
| |
51%
| TrID
| DOS 2.0-3.2 backup
| default
| |
48%
| TrID
| MP3 audio
| default (weak)
|
|
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| ff 01 00 00 00 5c 43 42 | 54 52 45 45 5c 4c 49 42 |.....\CB|TREE\LIB|
|00000010| 52 41 52 59 5c 41 44 4a | 53 54 41 43 4b 2e 43 00 |RARY\ADJ|STACK.C.|
|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 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000050| 00 00 00 1b 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000060| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000070| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000080| 2f 2a 20 28 43 29 20 43 | 6f 70 79 72 69 67 68 74 |/* (C) C|opyright|
|00000090| 20 31 39 38 34 2c 38 35 | 2c 38 36 2c 38 37 20 57 | 1984,85|,86,87 W|
|000000a0| 61 6c 74 65 72 20 4c 2e | 20 50 65 61 63 6f 63 6b |alter L.| Peacock|
|000000b0| 09 41 6c 6c 20 52 69 67 | 68 74 73 20 52 65 73 65 |.All Rig|hts Rese|
|000000c0| 72 76 65 64 09 20 2a 2f | 0d 0a 2f 2a 20 61 20 64 |rved. */|../* a d|
|000000d0| 20 6a 20 73 20 74 20 61 | 20 63 20 6b 20 2e 20 63 | j s t a| c k . c|
|000000e0| 09 09 09 09 09 09 09 09 | 09 09 09 09 2a 2f 0d 0a |........|....*/..|
|000000f0| 0d 0a 2f 2a 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |../*----|--------|
|00000100| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000110| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000120| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000130| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000140| 20 0d 0a 20 2a 20 61 64 | 6a 73 74 61 63 6b 28 29 | .. * ad|jstack()|
|00000150| 20 69 73 20 63 61 6c 6c | 65 64 20 62 79 20 62 74 | is call|ed by bt|
|00000160| 72 64 65 6c 65 74 28 29 | 20 74 6f 20 61 64 6a 75 |rdelet()| to adju|
|00000170| 73 74 20 43 42 54 52 45 | 45 27 73 20 69 6e 74 65 |st CBTRE|E's inte|
|00000180| 72 6e 61 6c 20 69 6e 64 | 65 78 20 0d 0a 20 2a 20 |rnal ind|ex .. * |
|00000190| 6e 6f 64 65 20 73 74 61 | 63 6b 2e 20 20 57 68 65 |node sta|ck. Whe|
|000001a0| 6e 20 74 68 65 72 65 20 | 61 72 65 20 64 75 70 6c |n there |are dupl|
|000001b0| 69 63 61 74 65 20 6b 65 | 79 73 2c 20 43 42 54 52 |icate ke|ys, CBTR|
|000001c0| 45 45 20 77 69 6c 6c 20 | 75 73 65 20 74 68 65 20 |EE will |use the |
|000001d0| 69 6e 64 65 78 20 6e 6f | 64 65 20 0d 0a 20 2a 20 |index no|de .. * |
|000001e0| 66 77 64 70 61 67 65 20 | 70 6f 69 6e 74 65 72 20 |fwdpage |pointer |
|000001f0| 74 6f 20 67 65 74 20 74 | 6f 20 74 68 65 20 6e 65 |to get t|o the ne|
|00000200| 78 74 20 73 65 71 75 65 | 6e 74 69 61 6c 20 69 6e |xt seque|ntial in|
|00000210| 64 65 78 20 6e 6f 64 65 | 2e 20 20 57 68 65 6e 20 |dex node|. When |
|00000220| 74 68 69 73 20 0d 0a 20 | 2a 20 6f 63 63 75 72 73 |this .. |* occurs|
|00000230| 20 64 75 72 69 6e 67 20 | 64 65 6c 65 74 65 73 2c | during |deletes,|
|00000240| 20 74 68 65 20 73 74 61 | 63 6b 20 6e 65 65 64 73 | the sta|ck needs|
|00000250| 20 74 6f 20 62 65 20 61 | 64 6a 75 73 74 65 64 20 | to be a|djusted |
|00000260| 61 6c 73 6f 20 69 6e 20 | 63 61 73 65 20 74 68 65 |also in |case the|
|00000270| 20 0d 0a 20 2a 20 69 6e | 64 65 78 20 69 73 20 6d | .. * in|dex is m|
|00000280| 6f 64 69 66 69 65 64 20 | 62 79 20 63 70 79 6c 74 |odified |by cpylt|
|00000290| 62 72 6f 28 29 2c 20 6f | 72 20 63 6d 70 74 6e 6f |bro(), o|r cmptno|
|000002a0| 64 65 28 29 2e 0d 0a 20 | 2a 2d 2d 2d 2d 2d 2d 2d |de()... |*-------|
|000002b0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000002c0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000002d0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000002e0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000002f0| 2d 2d 2d 2d 2a 2f 0d 0a | 0d 0a 23 69 6e 63 6c 75 |----*/..|..#inclu|
|00000300| 64 65 20 22 63 62 74 72 | 65 65 2e 68 22 0d 0a 0d |de "cbtr|ee.h"...|
|00000310| 0a 76 6f 69 64 20 61 64 | 6a 73 74 61 63 6b 28 66 |.void ad|jstack(f|
|00000320| 64 69 64 78 2c 20 69 64 | 78 62 6c 6b 2c 20 6e 6f |didx, id|xblk, no|
|00000330| 64 65 2c 20 62 74 70 61 | 72 6d 73 74 29 0d 0a 69 |de, btpa|rmst)..i|
|00000340| 6e 74 20 66 64 69 64 78 | 3b 0d 0a 6c 6f 6e 67 20 |nt fdidx|;..long |
|00000350| 6e 6f 64 65 3b 0d 0a 73 | 74 72 75 63 74 20 62 74 |node;..s|truct bt|
|00000360| 63 6f 6d 6d 6f 20 2a 62 | 74 70 61 72 6d 73 74 3b |commo *b|tparmst;|
|00000370| 0d 0a 73 74 72 75 63 74 | 20 62 74 69 64 78 62 6c |..struct| btidxbl|
|00000380| 6b 20 2a 69 64 78 62 6c | 6b 3b 0d 0a 7b 0d 0a 09 |k *idxbl|k;..{...|
|00000390| 65 78 74 65 72 6e 20 76 | 6f 69 64 20 66 72 65 65 |extern v|oid free|
|000003a0| 28 29 3b 0d 0a 09 65 78 | 74 65 72 6e 20 69 6e 74 |();...ex|tern int|
|000003b0| 09 73 70 3b 0d 0a 09 72 | 65 67 69 73 74 65 72 20 |.sp;...r|egister |
|000003c0| 69 6e 74 20 6a 3b 0d 0a | 09 69 6e 74 20 73 74 6b |int j;..|.int stk|
|000003d0| 2c 20 68 64 72 6c 6f 63 | 3b 0d 0a 09 63 68 61 72 |, hdrloc|;...char|
|000003e0| 20 2a 63 61 6c 6c 6f 63 | 28 29 3b 0d 0a 09 65 78 | *calloc|();...ex|
|000003f0| 74 65 72 6e 20 6c 6f 6e | 67 20 70 6f 70 74 6f 70 |tern lon|g poptop|
|00000400| 28 29 3b 0d 0a 09 6c 6f | 6e 67 20 73 74 6b 6e 6f |();...lo|ng stkno|
|00000410| 64 65 2c 20 2a 73 74 6b | 74 62 6c 3b 0d 0a 0d 0a |de, *stk|tbl;....|
|00000420| 09 69 66 28 28 63 68 61 | 72 20 2a 29 28 73 74 6b |.if((cha|r *)(stk|
|00000430| 74 62 6c 20 3d 20 28 6c | 6f 6e 67 20 2a 29 0d 0a |tbl = (l|ong *)..|
|00000440| 09 09 09 09 09 09 09 09 | 09 63 61 6c 6c 6f 63 28 |........|.calloc(|
|00000450| 28 75 69 6e 74 29 73 70 | 2b 31 2c 20 28 75 69 6e |(uint)sp|+1, (uin|
|00000460| 74 29 73 69 7a 65 6f 66 | 28 6c 6f 6e 67 29 29 29 |t)sizeof|(long)))|
|00000470| 20 3d 3d 20 4e 55 4c 4c | 29 0d 0a 09 09 63 6b 65 | == NULL|)....cke|
|00000480| 72 72 6f 72 28 2d 20 43 | 4b 5f 4e 4f 4d 45 4d 2c |rror(- C|K_NOMEM,|
|00000490| 20 22 34 36 22 29 3b 0d | 0a 0d 0a 09 2f 2a 20 65 | "46");.|..../* e|
|000004a0| 6d 70 74 79 20 73 74 61 | 63 6b 20 69 6e 74 6f 20 |mpty sta|ck into |
|000004b0| 74 61 62 6c 65 20 2a 2f | 0d 0a 09 73 74 6b 20 3d |table */|...stk =|
|000004c0| 20 30 3b 0d 0a 09 77 68 | 69 6c 65 20 28 20 28 73 | 0;...wh|ile ( (s|
|000004d0| 74 6b 74 62 6c 5b 73 74 | 6b 5d 20 3d 20 70 6f 70 |tktbl[st|k] = pop|
|000004e0| 74 6f 70 28 29 20 29 20 | 21 3d 20 28 6c 6f 6e 67 |top() ) |!= (long|
|000004f0| 29 20 4e 55 4c 4c 29 0d | 0a 09 09 73 74 6b 2b 2b |) NULL).|...stk++|
|00000500| 3b 0d 0a 0d 0a 09 2f 2a | 20 66 69 72 73 74 20 6d |;...../*| first m|
|00000510| 61 6b 65 20 73 75 72 65 | 20 74 68 61 74 20 77 65 |ake sure| that we|
|00000520| 20 68 61 76 65 20 74 68 | 65 20 72 69 67 68 74 20 | have th|e right |
|00000530| 72 65 63 6f 72 64 09 2a | 2f 0d 0a 0d 0a 09 6a 20 |record.*|/.....j |
|00000540| 3d 20 30 3b 0d 0a 09 73 | 74 6b 6e 6f 64 65 20 3d |= 0;...s|tknode =|
|00000550| 20 6e 6f 64 65 3b 0d 0a | 0d 0a 09 77 68 69 6c 65 | node;..|...while|
|00000560| 20 28 6a 20 3c 20 73 74 | 6b 29 20 7b 0d 0a 09 09 | (j < st|k) {....|
|00000570| 2f 2a 20 72 65 61 64 20 | 75 70 70 65 72 20 6c 65 |/* read |upper le|
|00000580| 76 65 6c 20 6e 6f 64 65 | 2e 20 63 68 65 63 6b 20 |vel node|. check |
|00000590| 66 6f 72 20 63 72 6f 73 | 73 69 6e 67 20 75 70 70 |for cros|sing upp|
|000005a0| 65 72 20 6c 65 76 65 6c | 20 6e 6f 64 65 20 2a 2f |er level| node */|
|000005b0| 0d 0a 09 09 69 66 20 28 | 73 74 6b 74 62 6c 5b 6a |....if (|stktbl[j|
|000005c0| 5d 29 0d 0a 09 09 09 67 | 65 74 69 64 78 72 28 66 |]).....g|etidxr(f|
|000005d0| 64 69 64 78 2c 20 73 74 | 6b 74 62 6c 5b 6a 5d 2c |didx, st|ktbl[j],|
|000005e0| 20 69 64 78 62 6c 6b 2c | 20 62 74 70 61 72 6d 73 | idxblk,| btparms|
|000005f0| 74 2d 3e 62 74 69 64 78 | 6c 65 6e 2c 20 62 74 70 |t->btidx|len, btp|
|00000600| 61 72 6d 73 74 2d 3e 62 | 74 6b 65 79 6c 65 6e 29 |armst->b|tkeylen)|
|00000610| 3b 0d 0a 0d 0a 09 09 2f | 2a 20 73 65 61 72 63 68 |;....../|* search|
|00000620| 20 75 70 70 65 72 20 6c | 65 76 65 6c 20 6e 6f 64 | upper l|evel nod|
|00000630| 65 20 6f 6e 20 74 68 65 | 20 73 74 61 63 6b 20 66 |e on the| stack f|
|00000640| 6f 72 20 6c 6f 63 61 74 | 65 64 20 6e 6f 64 65 20 |or locat|ed node |
|00000650| 69 6e 20 62 74 72 64 65 | 6c 65 74 20 2a 2f 0d 0a |in btrde|let */..|
|00000660| 09 09 66 6f 72 28 68 64 | 72 6c 6f 63 20 3d 20 30 |..for(hd|rloc = 0|
|00000670| 3b 20 68 64 72 6c 6f 63 | 20 3c 20 69 64 78 62 6c |; hdrloc| < idxbl|
|00000680| 6b 2d 3e 63 65 6c 6c 69 | 63 6e 74 3b 20 68 64 72 |k->celli|cnt; hdr|
|00000690| 6c 6f 63 2b 2b 29 7b 0d | 0a 09 09 09 69 66 20 28 |loc++){.|....if (|
|000006a0| 69 64 78 62 6c 6b 2d 3e | 62 74 70 61 67 65 5b 68 |idxblk->|btpage[h|
|000006b0| 64 72 6c 6f 63 5d 2e 62 | 74 70 74 72 20 3d 3d 20 |drloc].b|tptr == |
|000006c0| 73 74 6b 6e 6f 64 65 29 | 0d 0a 09 09 09 09 62 72 |stknode)|......br|
|000006d0| 65 61 6b 3b 0d 0a 09 09 | 7d 0d 0a 0d 0a 09 09 69 |eak;....|}......i|
|000006e0| 66 20 28 69 64 78 62 6c | 6b 2d 3e 62 74 70 61 67 |f (idxbl|k->btpag|
|000006f0| 65 5b 68 64 72 6c 6f 63 | 5d 2e 62 74 70 74 72 20 |e[hdrloc|].btptr |
|00000700| 21 3d 20 73 74 6b 6e 6f | 64 65 29 7b 0d 0a 09 09 |!= stkno|de){....|
|00000710| 09 2f 2a 20 6e 65 77 20 | 75 70 70 65 72 20 6c 65 |./* new |upper le|
|00000720| 76 65 6c 20 6e 6f 64 65 | 20 73 6f 20 61 64 6a 75 |vel node| so adju|
|00000730| 73 74 20 73 74 61 63 6b | 20 2a 2f 0d 0a 09 09 09 |st stack| */.....|
|00000740| 69 66 20 28 69 64 78 62 | 6c 6b 2d 3e 66 77 64 70 |if (idxb|lk->fwdp|
|00000750| 61 67 65 20 3e 20 30 29 | 0d 0a 09 09 09 09 73 74 |age > 0)|......st|
|00000760| 6b 74 62 6c 5b 6a 5d 20 | 3d 20 69 64 78 62 6c 6b |ktbl[j] |= idxblk|
|00000770| 2d 3e 66 77 64 70 61 67 | 65 3b 0d 0a 09 09 09 65 |->fwdpag|e;.....e|
|00000780| 6c 73 65 7b 20 20 20 2f | 2a 20 6e 6f 77 20 63 68 |lse{ /|* now ch|
|00000790| 65 63 6b 20 75 70 70 65 | 72 20 6c 65 76 65 6c 20 |eck uppe|r level |
|000007a0| 66 6f 72 20 74 68 69 73 | 20 6c 65 76 65 6c 20 6e |for this| level n|
|000007b0| 6f 64 65 20 2a 2f 0d 0a | 09 09 09 09 73 74 6b 6e |ode */..|....stkn|
|000007c0| 6f 64 65 20 3d 20 73 74 | 6b 74 62 6c 5b 6a 5d 3b |ode = st|ktbl[j];|
|000007d0| 0d 0a 09 09 09 09 6a 2b | 2b 3b 0d 0a 09 09 09 7d |......j+|+;.....}|
|000007e0| 0d 0a 09 09 7d 0d 0a 09 | 09 65 6c 73 65 7b 20 20 |....}...|.else{ |
|000007f0| 20 2f 2a 20 6e 6f 77 20 | 63 68 65 63 6b 20 75 70 | /* now |check up|
|00000800| 70 65 72 20 6c 65 76 65 | 6c 20 2a 2f 0d 0a 09 09 |per leve|l */....|
|00000810| 09 73 74 6b 6e 6f 64 65 | 20 3d 20 73 74 6b 74 62 |.stknode| = stktb|
|00000820| 6c 5b 6a 5d 3b 0d 0a 09 | 09 09 6a 2b 2b 3b 0d 0a |l[j];...|..j++;..|
|00000830| 09 09 7d 0d 0a 09 7d 0d | 0a 0d 0a 09 77 68 69 6c |..}...}.|....whil|
|00000840| 65 20 28 73 74 6b 2d 2d | 20 3e 20 30 29 0d 0a 09 |e (stk--| > 0)...|
|00000850| 09 70 75 73 68 64 6f 77 | 6e 28 73 74 6b 74 62 6c |.pushdow|n(stktbl|
|00000860| 5b 73 74 6b 5d 29 3b 0d | 0a 0d 0a 09 46 52 45 45 |[stk]);.|....FREE|
|00000870| 28 73 74 6b 74 62 6c 29 | 3b 0d 0a 7d 0d 0a |(stktbl)|;..}.. |
+--------+-------------------------+-------------------------+--------+--------+