Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Commits on Feb 19, 2015
Commits on Feb 18, 2015
  1. Add Travis badge to README

  2. @mhei

    Do not reply on broadcast requests (fixes #153)

    mhei authored committed
    According to the Modbus specification
    (, section 2.1)
    a Modbus RTU master can send a broadcast to all of it's slaves. This
    broadcasts can only be write requests as otherwise collisions could
    occur, eg. on a RS-485 bus.
    When receiving such a broadcast, the slave should process the request as
    usual, but must not reply anything, neither a normal response nor an
    exception reply in case of an error.
    Adjust the unit test for this case, too.
    Signed-off-by: Michael Heimpold <>
  3. @mhei

    Add travis hint file

    mhei authored committed
    Signed-off-by: Michael Heimpold <>
  4. @AndreySV

    Run unit tests with standard: make check (closes #205, closes #238)

    AndreySV authored committed
    This patch has been developed by Andrey Skvortsov, Michael Heimpold
    and Stéphane Raimbault.
    - avoid bash'isms and use of GNU find
    - terminate server after test run (ignored in TCP mode)
    - add *.log, *.trs to .gitignore
    - unit-test-client returns 0 on success
    - save exit code of unit-test-client for make check status
    - replace kill by killall
    - add entry in README
  5. @mhei

    modbus_send_raw_request: limit request length (fixes #207)

    mhei authored committed
    Do not allow raw request length longer than the PDU size plus
    the additional requested slave address byte.
    Without this check modbus_send_raw_request could be used to
    trigger a buffer overflow on the stack since the parameter
    is passed unchecked to memcpy.
    Thanks to Hanno Neuer for spotting this security flaw.
    Signed-off-by: Michael Heimpold <>
Commits on Feb 17, 2015
  1. Add Michael Heimpold to AUTHORS

    Michael signed the CLA of the project.
Commits on Feb 13, 2015
  1. Add Hannu Vuolasaho to AUTHORS

    Hannu signed the CLA of the project.
  2. @mhei

    Fix some coding style nitpicks

    mhei authored committed
    Signed-off-by: Michael Heimpold <>
  3. @mhei

    Introduce SPDX license identifiers

    mhei authored committed
    This replaces the lengthy license text headers with a short
    and standardized license tag. See for details.
    This is useful e.g. for license compliance tools which scan
    through files and generate a report of the licenses used
    in a project.
    Signed-off-by: Michael Heimpold <>
  4. Bump version to v3.1.2

  5. Remove Debian and Fedora packaging

    They are already included in these Linux distributions.
Commits on Oct 29, 2014
  1. Rewrite documentation macro and Makefile

    - only check if documentation tools are installed in acinclude.m4
    - don't provide built documentation in dist tarball
    - simpler Makefile
    - display warning message and check result
Commits on Oct 21, 2014
  1. Updated NEWS file

  2. Fix too low response timeouts in unit tests

    The response timeout of the client must be higher than the server
    to handle sleep/flush operations done on server side.
  3. Don't flush on illegal address errors in single write functions

    This change has introduced by 83c3410.
    Fix unit tests on some systems.
Commits on Oct 12, 2014
Commits on Sep 26, 2014
  1. @mhei

    unit-test-client: fix compilation on compilers not supporting c99 mode

    mhei authored
    This fixes the message
    "error: 'for' loop initial declarations are only allowed in C99 mode",
    spotted during cross-compiling of libmodbus.
    The compiler (gcc) actually does support -std=c99 but it gets not
    enabled by default. So a solution would be to enforce c99 mode
    via CFLAGS, but this will knock out all compilers which do not
    support this mode.
    Moving the declaration out of the loop initialisation, seems to be
    the simpler solution.
    Signed-off-by: Michael Heimpold <>
Commits on Jun 17, 2014
Commits on Jun 13, 2014
Commits on Apr 9, 2014
  1. @daschuer

    Fix crash modbus_new_rtu when baud is 0

    daschuer authored committed
Commits on Mar 1, 2014
  1. @AndreySV

    Removed function prototype without implementation

    AndreySV authored committed
    Function modbus_receive_from has no implementation in the library and is not used anywhere.
  2. @AndreySV

    Fix spelling in bandwidth-client.c

    AndreySV authored committed
Commits on Feb 21, 2014
  1. Switch test programs to a BSD license

    It concerns only the files in 'tests' directory.
  2. Fix remote buffer overflow vulnerability on write requests

    Protects against crafted write requests with a large quantity but a small
    byte count. If address + quantity was in the mapping space of the server
    and quantity greater than the response size, it was possible to crash
    the server.
    The sleep/flush sequence improves the handling of following requests.
Commits on Jan 29, 2014
Something went wrong with that request. Please try again.