David Renshaw
5eee3639d8
prepare for v0.1.16 release
2024-10-07 12:38:06 +03:00
David Renshaw
4ce5a5e359
annotated new test
2024-10-07 12:38:06 +03:00
Jonah Beckford
27ea6745e5
Support signed offsets
...
Both Structs and Lists support two's complement "Signed" offsets:
> B (30 bits) = Offset, in words, from the end
> of the pointer to the start of the struct's
> data section. Signed.
> B (30 bits) = Offset, in words, from the end
> of the pointer to the start of the first
> element of the list. Signed.
The prior code only supported positive offsets
because it used the Java >>> operator, which
is an unsigned shift operator. The Java >>
operator is the signed shift operator.
Audited the remaining uses of the shift
operator; they were correct and they are
documented as such.
Positive offsets are only guaranteed in a Canonical message.
2024-10-07 12:38:05 +03:00
Jonah Beckford
c7d5354f23
Use word arithmetic for SegmentReader
...
Prior to this change, the start index was treated as a byte index
rather than a word index.
2024-10-07 12:38:05 +03:00
Joan-Roch Sala
63048cb1bc
use Optional<MessageReader> as return type
2024-10-07 12:38:03 +03:00
Joan-Roch Sala
ce32e367a3
Support Serialize.tryRead and SerializePacked.tryRead
2024-10-07 12:37:35 +03:00
David Renshaw
04f2189d48
bump version numbers
2024-10-07 12:37:24 +03:00
David Renshaw
9ddeb1ef5a
prepare for 0.1.15 release
2024-10-07 12:37:23 +03:00
David Renshaw
3e2034f45d
fix reading of upgraded pointer lists
2024-10-07 12:37:22 +03:00
David Renshaw
257f646ec1
bump version to 0.1.15-SNAPSHOT
2024-10-07 12:36:43 +03:00
David Renshaw
acd5713fa6
prepare to release 1.1.14
2024-10-07 12:36:43 +03:00
Martin Dindoffer
169755b94d
Fix integer overflow in computeSerializedSizeInWords
2024-10-07 12:34:54 +03:00
Martin Dindoffer
28567eda73
Fix integer overflow in bounds checking
2024-10-07 12:33:58 +03:00
Vaci Koblizek
ca7ceed32f
remove AsynchronousByteListenChannel
2022-08-31 14:43:14 +01:00
octeep
e3f447d4c7
use java nio AsynchronousByteChannel instead for Serialize
2022-08-31 14:43:14 +01:00
Vaci Koblizek
ee0d727ade
pass null captable in ListReader test
2022-08-08 16:28:52 +01:00
Martin Dindoffer
2094289256
Avoid duplicate bitwise operations when reading primitive list pointers
2022-08-08 16:28:52 +01:00
Martin Dindoffer
e8338d826e
Performance-related cleanup
...
* Remove unnecessary bitwise and in WirePointer
* Remove always true condition in Serialize
* Pre-size segment ArrayList in Serialize
* Remove unused local var in Serialize
* Remove unnecessary bit shift in PackedOutputStream#write
* Make fields final in BuilderArena and Serialize
* Make Iterator classes static in DataList and TextList
* Pre-size ArrayList in ReaderArena constructor
2022-08-08 16:28:52 +01:00
Martin Dindoffer
04d0692c64
Fix integer overflow when calculating zeroing range in zeroObject
...
Lists can have up to 29 bits of elements. We multiply that by a constant of 8 (Bytes per word), so basically any element size can cause on overflow.
2022-08-08 16:28:52 +01:00
Martin Dindoffer
58c906f555
Introduce constant for nesting limit in LayoutTest
2022-08-08 16:28:52 +01:00
Martin Dindoffer
529a3daa6f
Fix integer overflow in setListPointer size calculation
2022-08-08 16:28:52 +01:00
Martin Dindoffer
b1eadaee6c
Fix intege overflow in _setBooleanElement in a primitive list
2022-08-08 16:28:52 +01:00
Martin Dindoffer
89d1c5722e
Fix integer overflow in computeSerializedSizeInWords
2022-08-08 16:28:52 +01:00
Martin Dindoffer
e77372b1cd
Fix integer overflow in bounds checking
2022-08-08 16:28:52 +01:00
Vaci Koblizek
949103ca5d
Merge remote-tracking branch 'sandstorm/master'
2022-05-02 17:18:21 +01:00
Martin Dindoffer
89db62ae9a
#122 Add bound checks for struct size
...
Also fix incorrect bounds comparison in SegmentReader
2022-04-09 10:36:07 -04:00
jan
3119bb5fab
Fix generic structs with non-generic interface as type parameter.
2022-03-21 01:27:06 +01:00
Vaci Koblizek
7c521d5840
avoid var in ClientHook
2022-03-06 16:47:37 +00:00
Vaci Koblizek
3ec3dbae57
remove captable contexts from capability
2022-03-06 16:47:19 +00:00
Vaci Koblizek
f510bd19aa
move captable contexts
2022-03-06 16:46:39 +00:00
Vaci
8c6b9c8caa
Avoid use of var
2022-03-06 16:37:33 +00:00
Vaci Koblizek
4171577bf0
Move NULL and BROKEN brands to ClientHook
2022-03-06 14:09:49 +00:00
Vaci
59701de848
Provide fallback to original interface.
2022-03-06 14:09:42 +00:00
Vaci
3b4ee42cc3
remove unused import
2022-03-06 13:32:01 +00:00
Vaci Koblizek
9bb1032274
avoid truncating struct size
2021-11-10 12:13:27 +00:00
Vaci Koblizek
9a32482541
Merge remote-tracking branch 'sandstorm/master' into vaci/merge2
2021-11-10 11:15:53 +00:00
David Renshaw
0eb4abed7a
bump to 0.1.14-SNAPSHOT
2021-10-11 11:06:05 -04:00
David Renshaw
3474af3973
prepare for v0.1.13 release
2021-10-11 10:57:32 -04:00
David Renshaw
ab303cbc28
add more robustness to integer wrapping problems
2021-10-08 14:24:22 -04:00
David Renshaw
059252cba5
bump to v0.1.13-SNAPSHOT
2021-10-05 17:17:15 -04:00
David Renshaw
335f56f73b
prepare for v0.1.12 release
2021-10-05 17:07:23 -04:00
David Renshaw
57dec34d2c
fix bug in short to int conversion in StructPointer
2021-10-05 17:03:57 -04:00
David Renshaw
c1cb55e277
bump to v0.1.12-SNAPSHOST
2021-10-01 22:16:17 -04:00
David Renshaw
2efe917ffc
prepare for v0.1.11 release
2021-10-01 22:03:53 -04:00
David Renshaw
8f5f200858
verify that a list pointer has the correct kind
2021-10-01 21:59:52 -04:00
David Renshaw
104fb11104
add bounds checking in readListPointer
2021-10-01 21:59:21 -04:00
David Renshaw
ddd43a491b
throw exception on negative segment sizes
2021-10-01 21:56:49 -04:00
David Renshaw
f3e66a6e0b
update versions to 0.1.11-SNAPSHOT
2021-08-27 21:23:00 -04:00
David Renshaw
b1a197be75
prepare for 0.1.10 release
2021-08-27 21:13:49 -04:00
Vaci Koblizek
4fc6ffdce5
try fixing jdk version to 11
2021-08-19 10:05:52 +01:00