lilleman
939eda7269
Key a TLV input like the read side, drop tagId, copy TLV octets at parse, and export only Tlvs, TlvInputs and Tlv
Mirror / push (push) Has been cancelled
Test / lint (pull_request) Successful in 29s
Test / test (18) (pull_request) Successful in 31s
Test / test (20) (pull_request) Successful in 31s
Test / test (22) (pull_request) Successful in 37s
Test / test (24) (pull_request) Successful in 31s
Test / test (26) (pull_request) Successful in 38s
2026-09-27 15:18:08 +02:00
lilleman
f6a66336cd
Count and detach a repeatable TLV's occurrences in reassembly, and let only byte or integer tags repeat
Mirror / push (push) Successful in 4s
Test / lint (pull_request) Successful in 21s
Test / test (18) (pull_request) Successful in 29s
Test / test (20) (pull_request) Successful in 30s
Test / test (22) (pull_request) Successful in 35s
Test / test (24) (pull_request) Successful in 30s
Test / test (26) (pull_request) Successful in 29s
2026-09-24 00:17:19 +02:00
lilleman
10877c9f5f
Read every occurrence of a repeatable TLV, and drop the unread tlvMap
Test / lint (pull_request) Successful in 20s
Test / test (18) (pull_request) Successful in 30s
Test / test (20) (pull_request) Successful in 28s
Test / test (22) (pull_request) Successful in 30s
Test / test (24) (pull_request) Successful in 29s
Mirror / push (push) Successful in 4s
Test / test (26) (pull_request) Successful in 30s
2026-09-24 00:13:38 +02:00
lilleman
0620d205d6
Take back the surface the compiler cannot guard
Mirror / push (push) Has been cancelled
Test / lint (pull_request) Successful in 21s
Test / test (18) (pull_request) Successful in 29s
Test / test (22) (pull_request) Successful in 31s
Test / test (20) (pull_request) Successful in 29s
Test / test (24) (pull_request) Successful in 29s
Test / test (26) (pull_request) Successful in 31s
2026-09-21 10:38:40 +02:00
lilleman
faa5482c7a
Spell a refused NaN as NaN, where JSON spells it null
2026-09-21 10:29:43 +02:00
lilleman
e7e71ca9bd
Refuse a non-finite number where a text field coerces one
Test / test (18) (pull_request) Successful in 36s
Test / test (20) (pull_request) Successful in 30s
Test / test (22) (pull_request) Successful in 30s
Test / test (26) (pull_request) Successful in 30s
Mirror / push (push) Successful in 4s
Test / lint (pull_request) Successful in 21s
Test / test (24) (pull_request) Successful in 29s
2026-09-21 10:22:41 +02:00
lilleman
a7eb4923f5
Say what is true for a TLV too, and cover the to half of the check
Mirror / push (push) Successful in 5s
Test / lint (pull_request) Successful in 21s
Test / test (18) (pull_request) Successful in 30s
Test / test (20) (pull_request) Successful in 29s
Test / test (22) (pull_request) Successful in 31s
Test / test (24) (pull_request) Successful in 29s
Test / test (26) (pull_request) Successful in 30s
2026-09-21 08:20:59 +02:00
lilleman
dc690b912f
Name the option a refused address came from, and the data a 0.5.0 consumer stored
Mirror / push (push) Successful in 4s
Test / lint (pull_request) Successful in 20s
Test / test (18) (pull_request) Successful in 35s
Test / test (20) (pull_request) Successful in 30s
Test / test (22) (pull_request) Successful in 29s
Test / test (24) (pull_request) Successful in 29s
Test / test (26) (pull_request) Successful in 30s
2026-09-21 08:14:08 +02:00
lilleman
f870b7530f
Cover the guarded address writers, and cut what the code already says
Mirror / push (push) Successful in 5s
Test / lint (pull_request) Successful in 22s
Test / test (18) (pull_request) Successful in 29s
Test / test (20) (pull_request) Successful in 30s
Test / test (22) (pull_request) Successful in 37s
Test / test (24) (pull_request) Successful in 29s
Test / test (26) (pull_request) Successful in 30s
2026-09-21 08:08:42 +02:00
lilleman
c1e0407942
Refuse a NULL inside a C-Octet String, which ends the field on the peer
Mirror / push (push) Successful in 4s
Test / lint (pull_request) Successful in 21s
Test / test (18) (pull_request) Successful in 29s
Test / test (20) (pull_request) Successful in 29s
Test / test (22) (pull_request) Successful in 31s
Test / test (24) (pull_request) Successful in 35s
Test / test (26) (pull_request) Successful in 30s
2026-09-21 07:59:08 +02:00
lilleman
7db242e375
Read and write every text field on the wire as latin1
Mirror / push (push) Successful in 5s
Test / lint (pull_request) Successful in 22s
Test / test (18) (pull_request) Successful in 29s
Test / test (20) (pull_request) Successful in 30s
Test / test (22) (pull_request) Successful in 30s
Test / test (24) (pull_request) Successful in 29s
Test / test (26) (pull_request) Successful in 30s
2026-09-21 07:54:25 +02:00
lilleman
039951e69b
Refuse a PDU whose optional parameters do not end on command_length ( #87 )
...
* Regression tests for a truncated TLV tail refused rather than accepted
* Refuse a PDU whose optional parameters do not end on command_length
* Assert the bare TLV header refusal against jsmpp instead of recording it as a defect
* Note the truncated TLV tail defect as fixed in the java-client findings
* Derive the padding position, share the bare TLV fixture and trim the decision record
* Regression tests for a PDU whose trailing C-Octet String a peer left out
* An absent trailing C-Octet String consumes no octet, so a bodyless PDU still parses
* Bound the TLV loop by the buffer it was given rather than a second spelling of its length
* Answer the stability review's questions in the record and pin the array contract
2026-09-06 18:01:35 +02:00
lilleman
b9f77ec969
Decode a receipt body before reading it and stop an unnameable state TLV overriding it
2026-08-27 16:08:54 +02:00
lilleman
8a182604b7
Address the CodeRabbit review: inbound SMS, binary payloads and untrusted input
2026-08-27 11:52:43 +02:00
lilleman
884afdb87b
Stop a thrown listener escaping, bound what a peer can pin, and drop the body from failure responses
2026-08-27 10:55:34 +02:00
lilleman
5af75a3c57
Close the stability findings and settle the sendResp, sendSms and unbind contracts
2026-08-27 00:17:48 +02:00
lilleman
fd2f98464f
Add session, client and server with the promise result API
2026-08-25 16:46:32 +02:00
lilleman
649e93cdde
Add the PDU codec with bounds-checked parsing and typed encoding
2026-08-25 16:28:59 +02:00
lilleman
4299a8cc35
Add TLV and command tables with per-command parameter types
2026-08-25 16:19:06 +02:00
lilleman
854c89f609
Port SMPP definitions: constants, errors, encodings and wire types
2026-08-25 16:07:34 +02:00