## secdev/scapy — v2.6.1…v2.7.0rc1

_175+ commits._

### Features
- **Add nbns_request() util (#4853)** (29d7360)
- **Add hybrid PQC KEM groups** (4c213f1)
- **Preliminary work for PKINIT support (#4840)** (2beb66c)
- **DHCP_am: support multiple nameservers (#4834)** (b673424)
- **DNS over TCP: support dns_resolve (#4835)** (6bd8acf)
- **Tun: add support for Darwin utun interface (#4816)** (e35797e)
- **Support Multiple Comments in Packet Object (#4798)** (d73bbc1)
- **Add additional argument for UDS_DSCEnumerator (#4826)** (7aea5cf)
- **bluetooth: Add version and company identifiers to local version commands (#4716)** (c91520d)
- **Bluetooth: Add ACL binding for HCI MON. (#4817)** (c445534)
- **Add version field for DoIP and DoIP sockets (#4828)** (3363981)
- **DCE/RPC: Add DCOM support (#4815)** (b810032)
- **Add some missing parameters to TCP_Client (#4821)** (b5ebda1)
- **SPNEGO: add new from_cli_arguments function, improvements (#4805)** (cc8e091)
- **typing: Add type annotation and override PcapReader.iter for mypy static type checking (#4803)** (723441d)
- **Radius: Add timestamp attribute (#4759)** (7fb32a1)
- **Add FD support for isotpscan (#4778)** (eb08750)
- **Add request_tgt example with a hash** (316945f)
- **BGP: support tcp_reassemble (#4756)** (6c658dd)
- **[psp] Add support for the PSP protocol (#4678)** (15c632d)
- **bluetooth: SM: Add security request packet (#4732)** (267f99a)
- **Add missing timeout in HTTP_Client request, in sr1() call (#4751)** (611c929)
- **Add doc for DMSA + check signature in SFU response (#4747)** (c419e66)
- **BGP: support undefined generic transitive extended communities sub-types (#4745)** (7ea97d7)
- **Support DMSA in Kerberos tgs_req (#4746)** (4f35234)
- **Add require_cbt support on HTTP (not S) server (#4726)** (e44c79e)
- **DHCPv6: add RFC9686 support (#4694)** (83f8bc4)
- **Add channel binding support in SSPs (#4723)** (f8f35a6)
- **BLE: Add HCI_LE_Meta_Extended_Advertising_Report event (#4686)** (fa70dbf)
- **Kerberos keytab support & other improvements (#4719)** (cd17acb)
- **Support sessions in Automaton (#4701)** (8f9c7a6)
- **Add support for more ISAKMP payloads (#4600)** (ef6da4b)
- **Add missing type in AsyncSniffer (#4665)** (6689da4)
- **Kerberos: support FAST (#4658)** (c15a670)
- **Add new required sphinx.configuration (#4654)** (6cfa84d)
- **LDAP: add/modifydn (#4652)** (b4dbb19)
- **bluetooth: Add LE Bluetooth Device Address EIR (#4621)** (cfc3532)
- **bluetooth: Add new LE Meta subtype descriptions (#4622)** (a4c6e26)
- **radiusd: add mschapv2 domain (#4644)** (3cbb62e)

### Fixes
- **Fix typo in http rst** (0085cd2)
- **Fix regression caused by #4847 (#4852)** (12a3752)
- **Fix Kerberos parsing after KB5068222 (#4850)** (6ed82a2)
- **DHCP: fix iteration of random options (#4837)** (aa1fe52)
- **Fix AclSize computation: issue #4831 (#4832)** (c7aa3e9)
- **TLS kex fix for curves with size not multiple of 8 (#4827)** (3449fb7)
- **Forwarding machine: fix and doc (#4823)** (9db27e9)
- **Fix check when closing native L3 windows socket (#4820)** (f97890d)
- **Fix blatant typos (#4811)** (d6a25bb)
- **Fix SECURITY_DESCRIPTOR computation (#4809)** (58526ec)
- **Fix conf.exts.load() on Python 3.8 (#4808)** (be3e1ae)
- **Fix: DHCPv6_am returns Reply instead of Solicit for DHCP6_Request (#4799)** (5744d95)
- **tls: fix doc name of a class (#4804)** (340d99d)
- **Fix windows CI (#4807)** (e20f373)
- **Fix bad UTF16 decoding on big endian (#4797)** (b54fdb7)
- **Fix decompression of 6LowPan src (#4792)** (6584ebe)
- **Fix #4717 & cleanup NTP control (#4791)** (b60b29b)
- **Fix mistake in AsyncSniffer stop_cb (#4781)** (0a36696)
- **Fix NSS KeyLog cannot decrypt TLS1.3 traffic. (#4767)** (0f7b0c0)
- **Fix answer function for UDS_HSFZSocket (#4776)** (149a93c)
- **Fix Segment Routing Pad1 TLV definition (#4611)** (3d1763c)
- **DCE/RPC frag fix + Cert class fixes (#4786)** (d5337f1)
- **DCE/RPC: fix length_is bug (#4785)** (42fa1c2)
- **Fix CLIUtil overlap (#4769)** (0e36b18)
- **hsfz: Fix acknowledgment transfer packet structure. (#4758)** (0022dfd)
- **Fix send_command in BluetoothUserSocket (#4754)** (c4a5756)
- **Fix conf.route.route() on linux (#4753)** (114ad9a)
- **Fix defragment6 (bug #4228) (#4631)** (027f4d4)
- **Fix: replace data variable with trigger variable in EAPOL_KEY.guess_key_number (#4703)** (d876346)
- **Better logging, cleanup of HTTP_Server code, fix in ChannelBindings of Kerberos (#4720)** (d947ff1)
- **Kerberos improvements, bug fixes in LDAP (#4709)** (be3cfbd)
- **Fix sendpfast cancellation via Ctrl+C (#4690) (#4691)** (4d499c2)
- **Fix bug if DNS compression gives an offset of exactly 46 (#4688)** (a4f958b)
- **QUIC: fix small bugs in size calculation (#4685)** (874abdc)
- **Fix #4651: Improve SOMEIP.fragment() (#4655)** (bff1ea0)
- **Fix bad content-length (#4676)** (d208e0a)
- **Fix compile_filter on *BSD with non-ether linktypes (#4670)** (96d612b)
- **DCE/RPC: various bug fixes in PKT_PRIVACY mode / client fragmentation (#4664)** (d61ab7b)
- **DceRpc fix register_dcerpc_interface duplication (#4672)** (1bdc210)
- **Fix BSD loading on 32bits (#4669)** (53b9cce)
- **DHCP: fix chaddr parsing (#4666)** (1dcad5d)
- **Fix #4635: Enhance ISO-TP Soft Socket Implementation (#4636)** (d2c6055)
- **Fix typo in RTFD config** (3e00f42)
- **Fix xdg folder permission check for cases when privileges were dropped (#4619)** (8fef083)
- **Fix IKEv2 critical bit set (#4647)** (e16a18e)
- **bluetooth4LE: BTLE_ADV PDU_type enum typo fix (#4620)** (5ed385e)

### Backend
- **Spotted some old prints in the documentation.** (ef72e1d)
- **Sessions removed** (13621d1)
- **Cache files extension** (9c9251e)
- **Object saving/loading removed** (d1115ca)
- **Switch to PyPy3.10 in tests (#4126)** (c776b9f)
- **HKDF extract public API (#4861)** (a4e81bc)
- **arping(): handle scanning on a unknown IP (#4856)** (4296eee)
- **Replace stale method name in kerberos doc (#4857)** (40cbcd2)
- **Remove duplicate arguments in call to dns_resolve() (#4847)** (90c5ff4)
- **Other minor changes to credits (#4842)** (4317859)
- **General update to the credits (#4841)** (d9ab3d6)
- **SPNEGO.from_cli_arguments: don't ask for password when unrequired (#4839)** (5eb00ba)
- **Update DHCP function assertions for compatibility** (befe516)
- **Hsfz: Improve incorrect tester field naming. (#4818)** (29433fc)
- **Update PR template checklist** (449142a)
- **Refresh included [MS-NRPC] version (#4825)** (da85567)
- **AsyncSniffer: forward error in stop() if never started (#4800)** (1e7a629)
- **Improve AutoArgparse & rework extensions (#4806)** (5739035)
- **Change get_if_raw_hwaddr to get_if_hwaddr (#4802)** (974102f)
- **packit: allow SHA-1 signatures when tests are run (#4796)** (e2941ba)
- **Bluetooth: L2CAP signaling channel: better default id, because 0 is an invalid id per the spec (#4734)** (8ddf371)
- **A few UDS, GMLAN and AutomotiveScanner updates (#4777)** (c194b84)
- **Update TLS doc (#4788)** (bdfacb6)
- **ForwardingMachine + Cert() overhaul (#4784)** (d386396)
- **DCE/RPC & Kerberos fixes (#4783)** (50edac9)
- **hsfz: incorrect_tester_address packets have addressing. (#4771)** (bd7f2a3)
- **Kerberos: GSS_Passive. Handle bad SPN case (#4775)** (254c970)
- **Tiny kerberos fixes (#4774)** (6a23034)
- **doc: unpack result to access TracerouteResult (#4763)** (8acbd1b)
- **[doc] Results.plot callback receive 2 args: (query,answer) (#4764)** (543d3f7)
- **Append non-default port to Host header in HTTP_Client requests (#4772)** (163c4bc)
- **hsfz: Improve alive check dissection. (#4760)** (71c4d88)
- **Publish NTLMSSP_DOMAIN (#4766)** (8870fba)
- **Publish LDAPHero (#4762)** (cbb09c4)
- **hsfz: vehicle ident string is only present in replays with non zero len. (#4757)** (56de4f4)
- **Ignore critical layers from filter() (#4755)** (0224542)
- **Pick available port (#4752)** (6063952)
- **Update utils.py to forward size parameter in RawPcapnpReader (#4721)** (8ceee51)
- **Type annotation bugfixes (#4740)** (65843d0)
- **Minor QoL fixes (#4750)** (38ab7de)
- **Minor SMB/Kerberos improvements (#4749)** (b564a13)
- **Include modules/ in doc and improve doc (#4748)** (8b002b6)
- **Kerberos keytab doc (#4742)** (57db4aa)
- **Make Dot11EltVendorSpecific packet extensible (#4660)** (0648c0d)
- **Update codacy badge link** (d7ce0e4)
- **Remove appveyor badge (#4725)** (7cccb9e)
- **Replace AppVeyor with Github Actions (#4724)** (cac47a0)
- **CONTRIBUTING: Drop Python 2 requirement (#4713)** (d215192)
- **Bluetooth: Make EIR_AdvertisingInterval variable length (#4711)** (9363bfd)
- **Clean up remains of field_pos_list (#4714)** (d9826a4)
- **Stun improvements (#4712)** (0a98c19)
- **Pcapng option bounds check (#4699)** (9a1ce84)
- **Select interface in TFTP automatons (#4684)** (9e4dc1d)
- **DNS 'relay' mode: include aditional records (#4687)** (494e472)
- **Begin implementing QUIC / QUIC TP Parameters (#4614)** (d63f54e)
- **bluetooth: The endinness of LL_VERSION_IND Subversion field should be little-endian. (#4662)** (20a3468)
- **Alias DLT_RAW_ALT -> DLT_RAW in compile_filter (#4677)** (ee15153)
- **Allow to set IP manually in Automaton.spawn() (#4673)** (7275516)
- **SomeIP: multi-payload, fixes #4608 (#4632)** (1b690bf)
- **Chown the history file (#4656)** (2f3f5dd)
- **SMB: Implement encryption, cleanup RequireSignature (#4643)** (f6ba322)
- **modbus: set registerVal max count to 123 (#4633)** (a444240)
- **Set threaded to False by default in sr1. (#4641)** (8eec6e8)
- **Change ID field to use little-endian byte order (#4629)** (0f2b394)
- **Github actions: an unfinished job in a PR should be overwritten (#4648)** (f998c63)

_Recap by [Repo Wrapped](https://repowrapped.com/gh/secdev/scapy?utm_source=github-action)._