| 615 | | if(c[0] < 255) |
|---|
| 616 | | { |
|---|
| 617 | | unsigned t=(c[0]-192) << 8; |
|---|
| 618 | | |
|---|
| 619 | | if(base_read(c,1,pinfo) != 1) |
|---|
| 620 | | return ops_false; |
|---|
| 621 | | *length=t+c[0]+192; |
|---|
| 622 | | return ops_true; |
|---|
| 623 | | } |
|---|
| 624 | | return _read_scalar(length,4,pinfo); |
|---|
| | 616 | |
|---|
| | 617 | else if (c[0]>=192 && c[0]<=223) |
|---|
| | 618 | { |
|---|
| | 619 | // 2. Two-octet packet |
|---|
| | 620 | unsigned t=(c[0]-192) << 8; |
|---|
| | 621 | |
|---|
| | 622 | if(base_read(c,1,pinfo) != 1) |
|---|
| | 623 | return ops_false; |
|---|
| | 624 | *length=t+c[0]+192; |
|---|
| | 625 | return ops_true; |
|---|
| | 626 | } |
|---|
| | 627 | |
|---|
| | 628 | else if (c[0]==255) |
|---|
| | 629 | { |
|---|
| | 630 | // 3. Five-Octet packet |
|---|
| | 631 | return _read_scalar(length,4,pinfo); |
|---|
| | 632 | } |
|---|
| | 633 | |
|---|
| | 634 | else if (c[0]>=224 && c[0]<255) |
|---|
| | 635 | { |
|---|
| | 636 | // 4. Partial Body Length |
|---|
| | 637 | OPS_ERROR(&pinfo->errors,OPS_E_UNIMPLEMENTED, |
|---|
| | 638 | "New format Partial Body Length fields not yet implemented"); |
|---|
| | 639 | return ops_false; |
|---|
| | 640 | } |
|---|
| | 641 | return ops_false; |
|---|