This repository was archived by the owner on Apr 5, 2024. It is now read-only.
Tags: dtn7/dtn7-gold
Tags
- Connect Administrative Records with Bundle and BundleBuilder. - Make PingAgent configurable as a dtnd Agent. - Simple "dtn-tool ping" command to interact with a PingAgent. - Reassembly support for fragmented Bundles in the Store. - Structural refactoring: - Move all Go packages into the pkg directory. - Renamed bundle package to bpv7. This new name better describes that it is about bpbis and not just bundles. Furthermore, this allows to use the obvious variable name "bundle" for a bpv7.Bundle. - Unlink discovery from Core. - Move custom routing-extension block to the bpv7 package, where they shall reside with their brethren. - Bump draft-ietf-dtn-bpbis version from 26 to 31. - Restrict dtn URI node name to `[\w-._]+`, _ietf-dtn-bpbis-27_. - "Block unintelligible" status report is replaced by new "Block unsupported" status report code for non-processable blocks. - Bump draft-ietf-dtn-tcpclv4 version from 21 to 23. - Bump `go`-dependencies - Set Linux-specific socket options for a MTCP Client's connection to detect an abrupt connection loss. - Check for existence of `ExtensionBlock` before adding a new one. - Have `Bundle` and `BundleDescriptor` return the same type when calling `ID`-method. - Include nil-check for EndpointID's internal representation. - Close a MTCP Client after sending a keepalive failed. - Enable parsing of primary blocks without a CRC value. When creating, an attempt is made to enforce a CRC, since this is necessary in the absence of an integrity block (BPSec). - Exclude the peer discovery Manager's function field from the JSONFormatter used by logrus. Otherwise, the struct cannot be encoded. - Set the default `DTLSR` edge-cost > 0
0.9.0 - 2020-10-08 Added - Specific routing algorithm for data mules in sensor networks. - Additional contrib files to used dtnd with systemd and ufw. - GitHub Action to perform multiple Go Race Detector tests at night. - Add WebSocket-based variant of TCPCLv4. Changed - An invalid EndpointID struct is interpreted as dtn:none. - Compare EndpointIDs based on both scheme and authority part. - Allow any bundle.ExtensionBlock to implement a json.Marshaler for a more human readable output. This was done for the bpbis blocks. - bundle.ExtensionBlock has a "BlockTypeName" next to its type code for a human readable output. - Renamed cla/tcpcl package to cla/tcpclv4. - Renamed tcpcl to tcpclv4 in dtnd's configuration. - Bump draft-ietf-dtn-tcpclv4 version from 14 to 21. - API change on cla.Convergence and cla.ConvergenceSender. - Changed CLAType numbers to allow grouping similar Convergence Layers. Fix - Check if WebSocket Agent's channel is closed to mitigate dtn-tool from crashing.
0.8.0 - 2020-08-05 Added - REUSE compliance and a new copyright header generation script. - Sort Bundle's CanonicalBlocks on creation and block modification. - Custom SignatureBlock for cryptographic ed25519 Bundle signatures. - dtnd supports attaching a SignatureBlock for Administrative Records. Changed - Replaced TravisCI with GitHub Actions. - List all Extension Block type codes in `bundle/extension_block.go`. - Fragmentation tries to copy the original CRC type. - BundleBuilder sets flags by default: - Request delivery status bundle control flag. - Replicate block control flag for Bundle Age Block, Hop Count Block, and Previous Node Block to ease Bundle fragmentation. Removed - Drop compatibility with Go versions below 1.13. Fix - Ensure only Payload Blocks are allowed to get Block Number 1 when adding Extension Blocks to an empty Bundle. - PrimaryBlock: always overwrite CRC, don't rely on cached values - dtn-tool exchange: do not resend received Bundles
0.7.0 - 2020-08-03 Added: - `AdministrativeRecordManager` to allow more dynamic Administrative Records. - `EndpointID` gets a singleton property, _ietf-dtn-bpbis-26_. - Make repository more friendly for new contributors by - GitHub Issue template, - `CHANGELOG.md` file, and - Contributing section in `README.md`. Changed: - Enforce strict `dtn` URI scheme based on the ABNF, like this `dtn://NODE-NAME/OPTIONAL-VARIOUS-CHARS`. - Allow peer discovery to work with multiple Endpoint IDs. - CLA management is performed by the CLA Manager. - Time is normed to milliseconds, _ietf-dtn-bpbis-26_: - DTN Time: milliseconds instead of seconds - Primary Block's lifetime: milliseconds instead of microseconds - Bundle Age Block: milliseconds instead of microseconds - Bump draft-ietf-dtn-bpbis version from 24 to 26. Fixed: - `BundleBuilder` sorts CanonicalBlocks based on their block number.
Normalize RestAgent's error response field Previously, the _error_ reporting in the JSON objects were differerent for different methods. This makes a programming library unnecessarily complicated. Furthermore, the bundle/arecord package was moved into bundle. This was actually only supposed to happen in the next main release. > NOOOOOOOO!!!! YOU CAN'T ADD BREAKING FEATURES TO A PATCH RELEASE!!1 > haha commits go brrrr
New agent package for different clients in dtnd Some changes have built up for this release. The biggest change is the new agent package, which replaces the old REST interface. Further changes in headwords: - agent: MuxAgent to multiplex "child" agents - agent: PingAgent to respond to pings - agent: REST agent for a more simple use - agent: WebSocket agent for bidirectional clients - agent: new package to obsolete old REST agent within core - bundle: allow generic endpoint types - bundle: bump dtn-bpbis to version 24 - bundle: marshal Bundles to JSON - cmd/dtnsend, cmd/dtncat: remove old commands - cmd/dtntool: new CLI tool
PreviousNext