Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
83 commits
Select commit Hold shift + click to select a range
1de0021
cbor: Scapy-native CBOR fields, codec hardening, and cbor2 CI
Sep 1, 2026
1415506
cbor: avoid Generic cls= kwargs for Python 3.7
Sep 1, 2026
3f1034c
cbor: add RFC and lifecycle regression tests for PR #5125 refactor
Sep 9, 2026
0183bca
cbor: fix RFC map-key equivalence, deterministic floats, and tag fields
Sep 9, 2026
e814722
cbor: store CBORF_ANY as CBOR_Object and drop islist workaround
Sep 9, 2026
650bd06
cbor: store unknown map extensions in per-map packet fields
Sep 9, 2026
f677cf4
cbor: restore standard Packet.do_build and slim copy()
Sep 9, 2026
6b72b80
cbor: require explicit SEQUENCE_OF framing and Scapy list limits
Sep 9, 2026
1134618
cbor: trim exports, tighten deterministic defaults, simplify byte-str…
Sep 9, 2026
c9b70bd
cbor: remove legacy Float/Tag/Simple/UNDEFINED_VALUE wrappers
Sep 9, 2026
a186b1d
cbor: compare NaN map keys by sign and significand
Sep 9, 2026
6a20240
cbor: preserve NaN sign and significand in deterministic encoding
Sep 9, 2026
0b2e54b
cbor: drop dead map key-identity helpers and stale PR noise
Sep 9, 2026
38f1ce1
cbor: invalidate CBOR_FLOAT wire cache when val is assigned
Sep 9, 2026
cce8d44
cbor: reject nonterminal SEQUENCE_OF hidden by optional/conditional
Sep 9, 2026
ecedff2
cbor: speed map-key checks and reject collection pkt instances
Sep 9, 2026
adb3852
cbor: track CBOR_ANY float wire-cache mutation
Sep 9, 2026
7256da0
cbor: require Packet subclasses with CBOR_root for collections
Sep 9, 2026
63a6303
cbor: raise ValueError for unhashable as_dict keys
Sep 9, 2026
2d2a371
cbor: compare CBORMapData equality independent of pair order
Sep 9, 2026
30f8137
cbor: share homogeneous SEQUENCE_OF/ARRAY_OF via _CBORF_HOMOGENEOUS
Sep 9, 2026
8a629fe
cbor: own SEQUENCE/ARRAY schema checks on _CBORF_compound
Sep 9, 2026
03c36e8
cbor: make item encode/decode real CBORcodec_Object methods
Sep 9, 2026
7de2531
cbor: inline cache helpers and tighten packet field ownership
Sep 9, 2026
a3bb7ff
cbor: add AdditionalInfo/SimpleValue enums and UINT64_MAX
Sep 9, 2026
b57354e
cbor: simplify float decode and indefinite child budgeting
Sep 9, 2026
3f92749
cbor: tighten SEMANTIC_TAG API and map unknown_field defaults
Sep 9, 2026
075e6c1
cbor: wrap long enum expressions and raise ARRAY_OF interop limit
Sep 9, 2026
eac65b2
cbor: add CBOR_FloatAI for half/single/double encodings
Sep 9, 2026
2a4720c
cbor: reject duplicate map keys when encoding
Sep 9, 2026
280919d
cbor: store CBOR_MAP as CBORMapData for key equivalence
Sep 9, 2026
67b0bd5
cbor: count SEQUENCE items with skip instead of double decode
Sep 9, 2026
32721e4
cbor: restore SEQUENCE build/dissect after skip-count change
Sep 9, 2026
e8c5331
cbor: fold SEQUENCE_OF next_cls_cb into homogeneous init
Sep 9, 2026
03e18e3
cbor: thin CBORF_PACKET and inline single-use helpers
Sep 9, 2026
d4fb9ed
cbor: use MajorTypes and reserved AI in non-det scanner
Sep 9, 2026
a8e4be5
cbor: add CBOR_encode_initial and fold indefinite helpers into fields
Sep 9, 2026
95ad00a
cbor: bound skip/count nesting and finish scanner cleanup
Sep 9, 2026
2f8e670
cbor: share structural skipper and harden indefinite string walks
Sep 9, 2026
3159170
cbor: restore raw well-formed decode and house item span in codec
Sep 9, 2026
eff5638
cbor: move non-det scanner to tests and trim field/API scaffolding
Sep 9, 2026
65edf06
cbor: reject unknown map keys that collide with schema names
Sep 9, 2026
e630cb8
cbor: optional semantic tags treat None defaults as empty
Sep 9, 2026
72b726d
cbor: copy ismutable defaults in Packet, drop getter materialization
Sep 9, 2026
01970e3
cbor: share Packet raw-cache validity with CBOR_Packet
Sep 9, 2026
d57892c
cbor: make counted build/dissect private compound bookkeeping
Sep 9, 2026
df3c5e8
cbor: drop dead field scaffolding and tighten nested encode/decode
Sep 9, 2026
a5ead01
cbor: fix Packet self_build typing after cache helper extract
Sep 9, 2026
b1d77f4
cbor: honor debug_dissector and slim CBOR packet init
Sep 10, 2026
6bd7bbd
cbor: compose nested and collection raw-cache fingerprints
Sep 10, 2026
fdc7ad0
cbor: separate structural parse budgets from live cardinality
Sep 10, 2026
883a343
packet: keep FlagsField defaults out of fields for bind overloads
Sep 10, 2026
60368d2
cbor: nested encode via bytes(); ANY counted build honors build()
Sep 10, 2026
b0527bc
cbor: inherit BYTE_STRING_PACKET; trim absent/budget/float helpers
Sep 10, 2026
9599f8e
Split/cbor review budgets (#48)
polybassa Sep 10, 2026
c8323fd
cbor: isolate nested TypeError test from debug_dissector pollution
Sep 10, 2026
d0ebf36
cbor: terminal SEQUENCE_OF and trim review abstractions
Sep 10, 2026
2795c42
cbor: reserve optionals with live min_items
Sep 10, 2026
293f7ec
cbor: fix absent cache and greedy unframed sequences
Sep 10, 2026
f41ab8b
cbor: reject tagged SEQUENCE_OF; slim optional dissect
Sep 10, 2026
078bb20
cbor: typed key/fingerprint kinds and enum-safe compares
Sep 11, 2026
7ac62be
cbor: close SEQUENCE_OF holes and rename unframed fields
Sep 11, 2026
288f903
cbor: allow nested framed REMAINDER_OF; bound MAP dissect
Sep 11, 2026
44e9d05
cbor: prefer ITEMS isinstance for remainder recursion
Sep 11, 2026
c934464
cbor: add MAP at-limit tests and nested indefinite remainder
Sep 11, 2026
9458654
cbor: keep unknown maps through optional tags
Sep 12, 2026
ad300a8
cbor: reject unused ITEMS kwargs in UTS
Sep 14, 2026
db2ac47
cbor: fix array budget, float fingerprints, nested packets
Sep 14, 2026
714da63
cbor: flatten ITEMS under ARRAY and fix conditional reserve
Sep 14, 2026
1232d38
cbor: reserve conditionals from decoded dependencies
Sep 14, 2026
0142717
cbor: harden UTS keyword, float, and scanner coverage
Sep 14, 2026
43077b6
cbor: support Packet APIs in conditional predicates
Sep 14, 2026
37bc185
cbor: evaluate array conditionals on the real packet
Sep 14, 2026
5fb9207
cbor: evaluate array conditionals with packet defaults
Sep 14, 2026
7541144
cbor: reserve array optionals with explicit depends_on
Sep 14, 2026
bbfb4f3
cbor: default depends_on does not reserve array suffix items
Sep 14, 2026
4fd9f6e
cbor: reserve array suffix from resolved fields, not pkt.fields
Sep 15, 2026
8167203
cbor: document depends_on as optional-tail reservation only
Sep 15, 2026
1d5f95e
cbor: drop unused ITEMS dissect helper and type-check depends_on
Sep 15, 2026
f6a7991
cbor: type depends_on as Sequence[str] to match runtime
Sep 15, 2026
f16842e
cbor: include nested child raw_packet_cache in parent fingerprint
Sep 16, 2026
90bb4ee
Merge secdev master into split/cbor-scapy-native
Oct 30, 2026
9063e59
cbor: integrate cbor2 checks into the regular test suite
Oct 30, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion .github/workflows/unittests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -208,7 +208,6 @@ jobs:
continue-on-error: true
with:
token: ${{ secrets.CODECOV_TOKEN }}

cryptography:
name: pyca/cryptography test
runs-on: ubuntu-latest
Expand Down
18 changes: 18 additions & 0 deletions scapy/cbor/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,13 +14,15 @@
CBOR_BadTag_Decoding_Error,
CBOR_Codecs,
CBOR_MajorTypes,
CBOR_SimpleValue,
CBOR_Object,
CBOR_UNSIGNED_INTEGER,
CBOR_NEGATIVE_INTEGER,
CBOR_BYTE_STRING,
CBOR_TEXT_STRING,
CBOR_ARRAY,
CBOR_MAP,
CBORMapData,
CBOR_SEMANTIC_TAG,
CBOR_SIMPLE_VALUE,
CBOR_FALSE,
Expand All @@ -47,6 +49,8 @@
from scapy.cbor.cborfields import (
CBORF_element,
CBORF_field,
CBORF_ANY,
CBOR_ABSENT,
CBORF_UNSIGNED_INTEGER,
CBORF_NEGATIVE_INTEGER,
CBORF_INTEGER,
Expand All @@ -56,12 +60,17 @@
CBORF_NULL,
CBORF_UNDEFINED,
CBORF_FLOAT,
CBORF_ITEMS,
CBORF_REMAINDER_OF,
CBORF_ARRAY,
CBORF_ARRAY_OF,
CBORF_ARRAY_INDEFINITE,
CBORF_MAP,
CBORF_SEMANTIC_TAG,
CBORF_optional,
CBORF_CONDITIONAL,
CBORF_PACKET,
CBORF_BYTE_STRING_PACKET,
)

__all__ = [
Expand All @@ -73,6 +82,7 @@
# Codecs
"CBOR_Codecs",
"CBOR_MajorTypes",
"CBOR_SimpleValue",
# Objects
"CBOR_Object",
"CBOR_UNSIGNED_INTEGER",
Expand All @@ -81,6 +91,7 @@
"CBOR_TEXT_STRING",
"CBOR_ARRAY",
"CBOR_MAP",
"CBORMapData",
"CBOR_SEMANTIC_TAG",
"CBOR_SIMPLE_VALUE",
"CBOR_FALSE",
Expand All @@ -104,6 +115,8 @@
# Field base classes
"CBORF_element",
"CBORF_field",
"CBORF_ANY",
"CBOR_ABSENT",
# Scalar fields
"CBORF_UNSIGNED_INTEGER",
"CBORF_NEGATIVE_INTEGER",
Expand All @@ -115,11 +128,16 @@
"CBORF_UNDEFINED",
"CBORF_FLOAT",
# Structured fields
"CBORF_ITEMS",
"CBORF_REMAINDER_OF",
"CBORF_ARRAY",
"CBORF_ARRAY_OF",
"CBORF_ARRAY_INDEFINITE",
"CBORF_MAP",
"CBORF_SEMANTIC_TAG",
# Complex fields
"CBORF_optional",
"CBORF_CONDITIONAL",
"CBORF_PACKET",
"CBORF_BYTE_STRING_PACKET",
]
Loading
Loading