Skip to content

0.28.0

Pre-release
Pre-release
Compare
Choose a tag to compare
@ssilverman ssilverman released this 15 May 03:44
· 182 commits to master since this release

Added

  • Added raw frame loopback support and a QNETHERNET_ENABLE_RAW_FRAME_LOOPBACK macro to enable.
  • Added a fourth step to the MbedTLSDemo example instructions: modify the config.
  • New EthernetFrameClass functions: destinationMAC(), sourceMAC(), etherTypeOrLength(), and payload().
  • Consolidated all the hardware abstraction layer (HAL) functions into one place: qnethernet_hal.cpp.
  • New NullPrint and PrintDecorator utility classes in the qindesign::network::util namespace.
  • Added driver_is_link_state_detectable() function to the driver. This is for detecting whether the hardware is able to read the link state.
  • Added EthernetClass::isLinkStateDetectable() to detect whether the driver is capable of detecting link state.
  • Added setOutgoingDiffServ(ds) and outgoingDiffServ() functions for modifying and accessing the differentiated services (DiffServ) field, respectively, in the outgoing IP header, to EthernetClient and EthernetUDP.
  • Added EthernetUDP::receivedDiffServ() for retrieving the DiffServ value of the last received packet.
  • Added EthernetFrameClass::clear() for clearing the outgoing and incoming buffers.

Changed

  • Updated the Mbed TLS version in the README and comments to 2.28.8 (was 2.28.6).
  • Updated mbedtls_hardware_poll() in MbedTLSDemo example for other platforms.
  • Renamed QNETHERNET_ENABLE_CUSTOM_WRITE to QNETHERNET_CUSTOM_WRITE.
  • Improved the PixelPusherServer example.
  • The address-changed callback is now called for independent IP address, netmask, and gateway changes.
  • Improved link function documentation for linkStatus(), linkState(), and isLinkStateDetectable().
  • Updated EthernetClient::setNoDelay(flag) to return whether successful.
  • Add another 2 to MEMP_NUM_SYS_TIMEOUT option for mDNS, for a total of an additional 8. Timeout exhaustion was still observed with 6. Why 8 and not 7:
  • Updated EthernetClient::connect() to return a Boolean value. (The function signatures don't change; they still return an int.) This matches the new definition at Ethernet - client.connect().
  • Changed EthernetClient::connectNoWait() return types to bool.

Fixed

  • Improved marking of unused parameters.
  • Fixed up use of __has_include(), per: __has_include (The C Preprocessor)
  • In mDNS, ensure there's at least an empty TXT record, otherwise the SRV record doesn't appear.
  • Make the alternative yield() implementation extern "C".
  • Fixed EthernetUDP data copy for zero-length outgoing packets. pbuf_take() considers NULL data an error, so only copy the data if the packet's size is not zero.