]> git.ipfire.org Git - thirdparty/rrdtool-1.x.git/log
thirdparty/rrdtool-1.x.git
3 months agoDrop win32-specific asprintf implementation (#1246) master
Michal Suchánek [Fri, 19 Jan 2024 13:02:05 +0000 (14:02 +0100)] 
Drop win32-specific asprintf implementation (#1246)

asprintf is implemented by rrd_snprintf anyway, the win32-specific
implementation is redundant.

Same with the non-vasprintf conditional in rrd_info.

Signed-off-by: Michal Suchanek <msuchanek@suse.de>
3 months agoFix string truncation warnings related to PATH_MAX (#1244)
Michal Suchánek [Mon, 8 Jan 2024 12:59:56 +0000 (13:59 +0100)] 
Fix string truncation warnings related to PATH_MAX (#1244)

There are a number of places where rrdtool combines multiple PATH_MAX
sized strings into one.

PATH_MAX is a constant that tends to work in practice a lot of the time
but may not reflect the real capabilities of the system in real time.

In place of on-stack buffers of PATH_MAX size allocate memory
dynamically. Initialize the pointers to NULL so they can be all freed
unconditionally on exit.

Fixes: #1223
Signed-off-by: Michal Suchanek <msuchanek@suse.de>
3 months agoFix failing test pdp-calc1
Wolfgang Stöggl [Sat, 6 Jan 2024 17:00:45 +0000 (18:00 +0100)] 
Fix failing test pdp-calc1

The number of decimal places or the format can be different in the
output depending on the platform.

- The failing test has appeared under msys2 (MINGW32 and MINGW64),
  where the exponential notation has changed:
  E.g. e+000 instead of e+00
- Use DIFF9 also in test pdp-calc1, which reduces the number of
  decimal places to 7 using "%0.7e". See DIFF9 in tests/functions.
- Update the pdp-calc1 output files accordingly
- Fixes failing test pdp-calc1 under msys2

3 months agorrd_rpncalc: Quiet gcc warning by copying one extra character. (#1243)
Michal Suchánek [Sun, 7 Jan 2024 07:50:28 +0000 (08:50 +0100)] 
rrd_rpncalc: Quiet gcc warning by copying one extra character. (#1243)

gcc warns that strncpy truncates the copied string. Above the size
allocated includes space for terminating zero. Include it in the copy.

Signed-off-by: Michal Suchanek <msuchanek@suse.de>
3 months agoConstify argv, fix warnings. (#1242)
Michal Suchánek [Fri, 5 Jan 2024 14:31:48 +0000 (15:31 +0100)] 
Constify argv, fix warnings. (#1242)

* Fix perl warnings

 - cast POPs to void to avoid unused value warning
 - declare functions that don't set RETVAL as returning void

Signed-off-by: Michal Suchanek <msuchanek@suse.de>
* Constify argv

rrd has no business modifying the string pointed to by passed agrv, and
as far as gcc can see it does indeed not modify them because it compiles
with const argv.

This fixes warnings when passing const strings into rrd, and avoids the
need to duplicate all strings in the tcl bindings.

This fixes warnings like these:
[    3s] prog/sensord/rrd.c: In function 'rrdInit':
[    3s] prog/sensord/rrd.c:302:40: warning: cast discards 'const' qualifier from pointer target type [-Wcast-qual]
[    3s]   302 |                 ret = rrd_create(argc, (char**) argv);
[    3s]       |                                        ^
[    3s] prog/sensord/rrd.c: In function 'rrdUpdate':
[    3s] prog/sensord/rrd.c:458:42: warning: cast discards 'const' qualifier from pointer target type [-Wcast-qual]
[    3s]   458 |                 if ((ret = rrd_update(3, (char **) /* WEAK */ argv))) {
[    3s]       |                                          ^

Signed-off-by: Michal Suchanek <msuchanek@suse.de>
* tcl: Do not duplicate const strings

---------

Signed-off-by: Michal Suchanek <msuchanek@suse.de>
5 months agoUse new vcpkg libffi dll name ffi-8.dll (#1237)
Wolfgang Stöggl [Sun, 22 Oct 2023 11:52:56 +0000 (13:52 +0200)] 
Use new vcpkg libffi dll name ffi-8.dll (#1237)

vcpkg has been updated to 2023.10.19 Release, commit 8eb5735 in #1235.
The name of libffi.dll has changed to ffi-8.dll.

- Update `collect_rrdtool_vcpkg_files.bat`, which is used by the
  `release-windows.yml` GitHub Action:
  libffi.dll -> ffi-8.dll

5 months agorrdcached dump support (#1235)
Tobias Hintze [Fri, 20 Oct 2023 21:03:19 +0000 (23:03 +0200)] 
rrdcached dump support (#1235)

* add missing newlines (\n) for TUNE

Help strings for TUNE command were lacking the trailing newline
character. This causes the FLUSH syntax printed in the same line as
TUNE's.

* fix sendall edge cases

The `sendall` func is implemented as a loop over multiple send() calls until all bytes are sent. Previously on subsequent calls the incorrect buffer was used for sending.
This change also forbids `allow_retry` when at least one byte was successfully sent already. This would otherwise mess up the protocol, when retrying from the start.

* rrcached: implement DUMP

* update tests for remote dump support

Previously, tests replaced the daemon-based dump use with a local use.
This is changed in this commit as dump is now supported via daemon.

* update doc/rrddump

* fix format argument type

* update to latest windows vcpkg tag

11 months agoFix for overlapping areas in transparent mode (#1226)
thurban [Mon, 1 May 2023 09:09:12 +0000 (11:09 +0200)] 
Fix for overlapping areas in transparent mode (#1226)

* Fix for overlapping areas in transparent mode

11 months agoDocument wall clock time for server mode (#1227)
Johannes Christ [Fri, 28 Apr 2023 07:26:42 +0000 (09:26 +0200)] 
Document wall clock time for server mode (#1227)

12 months agodoc/rrdbuild: Add 'dc' to Debian build dependencies (#1224)
Diederik de Haas [Wed, 19 Apr 2023 06:24:26 +0000 (08:24 +0200)] 
doc/rrdbuild: Add 'dc' to Debian build dependencies (#1224)

Without `dc` the `create-with-source-4` test fails.

Co-authored-by: Tobias Oetiker <tobi@oetiker.ch>
12 months agoUpdate vcpkg GitHub Action (#1225)
Wolfgang Stöggl [Wed, 19 Apr 2023 06:23:27 +0000 (08:23 +0200)] 
Update vcpkg GitHub Action (#1225)

- Update vcpkg to current release 2023.04.15, commit 501db0f
- Current versions of libraries are e.g.:
  cairo 1.17.8, expat 2.5.0, fontconfig 2.14.2, freetype 2.12.1,
  gettext 0.21.1, glib 2.76.1, libpng 1.6.39, pango 1.50.12,
  pcre2 10.40, libxml2 2.10.3 and zlib 1.2.13
- Switch from windows-2019 to windows-2022, which includes
  Visual Studio Enterprise 2022

12 months agoSuppress more implicit fall through warnings. (#1222)
Diederik de Haas [Tue, 4 Apr 2023 12:38:33 +0000 (14:38 +0200)] 
Suppress more implicit fall through warnings. (#1222)

12 months agodoc/rrdbuild: Expand Debian build dependencies (#1220)
Diederik de Haas [Tue, 4 Apr 2023 11:54:38 +0000 (13:54 +0200)] 
doc/rrdbuild: Expand Debian build dependencies (#1220)

To build the project on a (lean) Debian Bookworm system, there are
several more build dependencies which need to be installed in order for
the `make` command to succeed.

Also add the build dependencies for python bindings.

13 months agoUpdate msys2 GitHub Action (#1214)
Wolfgang Stöggl [Tue, 7 Mar 2023 09:40:50 +0000 (10:40 +0100)] 
Update msys2 GitHub Action (#1214)

- Add groff to required msys2 packages. It has been removed from group
  base-devel: msys2/MSYS2-packages@66a18d1
- Fixes configure error:
  I need a copy of *nroff to format the documentation
- `ci-build_MSYS2.sh`:
  Add `set -e` to the bash script.
  Otherwise CI seems OK despite a build error.

13 months agoAllow to select locking mechanism (#1207)
Enrico Scholz [Thu, 2 Mar 2023 16:00:25 +0000 (17:00 +0100)] 
Allow to select locking mechanism (#1207)

* rrd: add _rrd_lock_xxx() helper functions and constants

This adds two sets of constants: these used in 'extra_flags' in various
parts of the extended api (e.g. rrd_updatex_r()), and these used within
rrd_open().

There are implemented some helper functions which help to parse command
line strings and environment variables, and to convert these two sets
of constants.

* rrd_update: pass custom RRD_LOCK_xxx flags to rrd_open()

* rrd_update: add '--locking' cli option

* rrd_open: handle RRD_LOCK_DEFAULT

When rrd_open() was called with RRD_LOCK_DEFAULT, read the locking
setup from $RRD_LOCKING environment.

* rrd_open: implement other locking methods

Allow locking to wait and make it possible to bypass locking
completely.

With this patch it is e.g. expected:

| $ RRD_LOCKING=none strace -e fcntl rrdupdate --locking block x N:1
| fcntl(3, F_SETLKW, {l_type=F_WRLCK, l_whence=SEEK_SET, l_start=0, l_len=0}) = 0

Other values for RRD_LOCKING and --locking give

 | RRD_LOCKING=... | --locking ... | fcntl()  |
 |-----------------|---------------|----------|
 | *               |               | F_SETLK  |
 | *               | block         | F_SETLKW |
 | *               | try           | F_SETLK  |
 | *               | none          |          |
 | block           |               | F_SETLKW |
 | try             |               | F_SETLK  |
 | none            |               |          |

* doc: document --locking + $RRD_LOCKING

Signed-off-by: Enrico Scholz <enrico.scholz@ensc.de>
13 months agoUpdate vcpkg GitHub Action (#1212)
Wolfgang Stöggl [Thu, 2 Mar 2023 07:31:55 +0000 (08:31 +0100)] 
Update vcpkg GitHub Action (#1212)

- Update vcpkg to current release 2023.02.24, commit a7b6122
- Use actions/checkout@v3 and actions/upload-artifact@v3 in order to
  avoid the following warning:
  Node.js 12 actions are deprecated.
- win32/collect_rrdtool_vcpkg_files.bat:
  Add required pcre2-8.dll and pixman-1-0.dll
  Remove pcre.dll, which is not required anymore

15 months agoSet CLOEXEC flag when opening files and sockets (#1206)
Enrico Scholz [Fri, 6 Jan 2023 11:02:12 +0000 (12:02 +0100)] 
Set CLOEXEC flag when opening files and sockets (#1206)

* configure: check for O_CLOEXEC
* configure: check for SOCK_CLOEXEC
* configure: check whether fopen() supports the "e" flag

Although the "e" fopen() flag (atomic FD_CLOEXEC support) is scheduled
for being added to the next POSIX version, it is not supported by all
platforms.

Check whether it is accepted and working.

Because this flag can be tested at runtime only, configure.ac uses
AC_RUN_IFELSE.  Cross compiling fallback assumes that "e" is supported.

* compat-cloexec: initial checkin
* compat-cloexec: implement missing HAVE_DECL_O_CLOEXEC case

Just define 'O_CLOEXEC' as 0;  it is used always like in

| f = open(..., flags | O_CLOEXEC);

* compat-cloexec: implement missing HAVE_DECL_SOCK_CLOEXEC case

* compat-cloexec: implement missing RD_HAVE_WORKING_FOPEN_E case

When fopen() does not support the "e" flag, parse the mode string and
run an 'open(..., O_CLOEXEC) + fdopen()' sequence when it is set.

* rrd_open: open file with O_CLOEXEC

Avoid leaking file descriptors by set the O_CLOEXEC flag.  This flag is
part of POSIX.1-2008 and there is implemented a fallback for systems
without it.

* open sockets with SOCK_CLOEXEC
* set "e" flag with fopen()
* tests: add test for _rrd_fopen()

Signed-off-by: Enrico Scholz <enrico.scholz@ensc.de>
15 months agoMerge pull request #1208 from oetiker/fix-tcp
Tobias Oetiker [Wed, 4 Jan 2023 09:44:31 +0000 (10:44 +0100)] 
Merge pull request #1208 from oetiker/fix-tcp

remove dead code

15 months agouse ubuntu 20.04 for testing fix-tcp 1208/head
Tobias Oetiker [Wed, 4 Jan 2023 08:37:24 +0000 (09:37 +0100)] 
use ubuntu 20.04 for testing

15 months agoremove dead code
Tobias Oetiker [Wed, 4 Jan 2023 08:23:56 +0000 (09:23 +0100)] 
remove dead code

16 months agoMerge pull request #1198 from ferdnyc/patch-1
Tobias Oetiker [Mon, 12 Dec 2022 10:16:30 +0000 (11:16 +0100)] 
Merge pull request #1198 from ferdnyc/patch-1

Ensure Perl manpages install to mandir

16 months agoEnsure Perl manpages install to mandir 1198/head
Frank Dana [Thu, 24 Nov 2022 23:32:50 +0000 (18:32 -0500)] 
Ensure Perl manpages install to mandir

16 months agodoc/rrdgraph: wording (#1197)
Thomas Gelf [Wed, 23 Nov 2022 08:28:03 +0000 (09:28 +0100)] 
doc/rrdgraph: wording (#1197)

thanks

17 months agoadd link. (#1194)
youpong [Tue, 1 Nov 2022 07:55:37 +0000 (16:55 +0900)] 
add link. (#1194)

17 months agoUpdate README.md
Tobias Oetiker [Mon, 31 Oct 2022 16:55:28 +0000 (17:55 +0100)] 
Update README.md

fit badges :)

17 months agoIntroduce an alternative code coverage testing (#1192)
youpong [Mon, 31 Oct 2022 13:27:06 +0000 (22:27 +0900)] 
Introduce an alternative code coverage testing  (#1192)

* add a workflow for code coverage test.
* add gcov task

17 months agoMerge pull request #1189 from klaernie/patch-1
Tobias Oetiker [Mon, 31 Oct 2022 12:51:12 +0000 (13:51 +0100)] 
Merge pull request #1189 from klaernie/patch-1

rewrite valstrfduration introduction

18 months agorewrite valstrfduration introduction 1189/head
Andre Klärner [Wed, 21 Sep 2022 07:13:15 +0000 (09:13 +0200)] 
rewrite valstrfduration introduction

19 months agofix documentation
Tobias Oetiker [Tue, 30 Aug 2022 11:44:20 +0000 (13:44 +0200)] 
fix documentation

23 months agoMerge pull request #1176 from youpong/Avoid_fallthrough_warning
Tobias Oetiker [Mon, 2 May 2022 06:53:23 +0000 (08:53 +0200)] 
Merge pull request #1176 from youpong/Avoid_fallthrough_warning

Suppress several warnings of implicit fall through

23 months agoSuppress several warnings of implicit fall through 1176/head
NAKAJIMA Yusaku [Thu, 28 Apr 2022 10:05:13 +0000 (19:05 +0900)] 
Suppress several warnings of implicit fall through

2 years agoMerge pull request #1172 from c72578/2022-04-08_Update_tarball_download_link_in_doc
Tobias Oetiker [Sat, 9 Apr 2022 08:42:53 +0000 (10:42 +0200)] 
Merge pull request #1172 from c72578/2022-04-08_Update_tarball_download_link_in_doc

Update tarball download link in doc

2 years agoUpdate tarball download link in doc 1172/head
Wolfgang Stöggl [Fri, 8 Apr 2022 16:00:47 +0000 (18:00 +0200)] 
Update tarball download link in doc

The download location of the release tarball has been moved to GitHub.

- Update the download link in doc/rrdbuild.pod
- rrdtool-release:
  Add substitution of version in download subdirectory, e.g. v1.8.0 in:
  rrdtool-1.x/releases/download/v1.8.0/rrdtool-1.8.0.tar.gz

2 years agoMerge pull request #1170 from c72578/2022-04-05_Remove_autogenerated_files
Tobias Oetiker [Thu, 7 Apr 2022 07:39:04 +0000 (09:39 +0200)] 
Merge pull request #1170 from c72578/2022-04-05_Remove_autogenerated_files

Remove autogenerated files

2 years agoUpdate CHANGES 1170/head
Wolfgang Stöggl [Wed, 6 Apr 2022 16:42:13 +0000 (18:42 +0200)] 
Update CHANGES

2 years agoRemove autogenerated files
Wolfgang Stöggl [Tue, 5 Apr 2022 20:36:31 +0000 (22:36 +0200)] 
Remove autogenerated files

The removed files are generated using bootstrap
(libtoolize, autoreconf) and they are available in release tarballs.

- Avoids outdated configure file in git
- Resolves #1163
- The following commands have been used for removal:
  git rm configure
  git rm -r conftools/
  git rm Makefile.in
  git rm *Makefile.in
  git rm src/rrd_config.h.in

2 years agoMerge pull request #1169 from c72578/2022-04-04_Add_test_for_rrd_first
Tobias Oetiker [Tue, 5 Apr 2022 07:01:05 +0000 (09:01 +0200)] 
Merge pull request #1169 from c72578/2022-04-04_Add_test_for_rrd_first

Add test for rrd_first()

2 years agoAdd test for rrd_first() 1169/head
Wolfgang Stöggl [Mon, 4 Apr 2022 16:28:19 +0000 (18:28 +0200)] 
Add test for rrd_first()

Make use of existing test "create-from-template-1", which already
creates, updates and dumps rrds and add a test for rrdtool first.

- This is a test for issue #1140

2 years agoMerge pull request #1168 from c72578/2022-04-01_Fix_unsigned_int_overflow_in_rrdtool_...
Tobias Oetiker [Mon, 4 Apr 2022 06:57:18 +0000 (08:57 +0200)] 
Merge pull request #1168 from c72578/2022-04-01_Fix_unsigned_int_overflow_in_rrdtool_first

Fix unsigned integer overflow in rrdtool first

2 years agoFix unsigned integer overflow in rrdtool first 1168/head
Wolfgang Stöggl [Fri, 1 Apr 2022 17:14:49 +0000 (19:14 +0200)] 
Fix unsigned integer overflow in rrdtool first

This fixes a signed/unsigned conversion bug in the calculation of
"then". Background info:
pdp_cnt and pdp_step are both unsigned long, whereas timer is signed.
When multiplying signed and unsigned integers (same size), a signed is
implicitly typecast to unsigned.

- A similar fix has already been applied to rrd_dump.c
  in commit e193975
- Resolves #1140

2 years agoFix tests under MSYS2 (Windows)
Wolfgang Stöggl [Fri, 25 Mar 2022 18:09:59 +0000 (19:09 +0100)] 
Fix tests under MSYS2 (Windows)

This is a follow-up to commit 7cd748e considering running the tests
in Windows under MSYS2. A similar approach has already been used in
tests\graph2 and tests\xport1 (see also: 847d679)

- Updates the following tests:
  graph1, rpn1, rpn2, vformatter1
- Avoid Windows drive letter in the path of DEF:vname=rrdfile
  under MSYS or MSYS2. Use only the filename of the rrd and not
  the full path if environmental variable MSYSTEM is set.

2 years agoMerge pull request #1166 from c72578/2022-03-24_ci-workflow_Add_autotools_to_msys2
Tobias Oetiker [Thu, 24 Mar 2022 22:02:16 +0000 (23:02 +0100)] 
Merge pull request #1166 from c72578/2022-03-24_ci-workflow_Add_autotools_to_msys2

ci-workflow.yml: Add autotools to msys2

2 years agoci-workflow.yml: Add autotools to msys2 1166/head
Wolfgang Stöggl [Thu, 24 Mar 2022 17:05:29 +0000 (18:05 +0100)] 
ci-workflow.yml: Add autotools to msys2

- Add mingw-w64-x86_64-autotools to "install:"
  Fixes:
  ./bootstrap: line 8: libtoolize: command not found
  ./bootstrap: line 11: autoreconf: command not found
- Minor modifications to ci-workflow.yml:
  * Fix yamllint errors in line 8 and 10:
    too many spaces inside brackets
  * Add "workflow_dispatch:" to allow manual run of the Windows CI
    workflow

2 years agoMerge pull request #1165 from c72578/2022-03-23_Fix_BUILD_DATE_in_rrdtool_help_output
Tobias Oetiker [Thu, 24 Mar 2022 16:00:15 +0000 (17:00 +0100)] 
Merge pull request #1165 from c72578/2022-03-23_Fix_BUILD_DATE_in_rrdtool_help_output

Fix BUILD_DATE in rrdtool help output

2 years agoFix BUILD_DATE in rrdtool help output 1165/head
Wolfgang Stöggl [Wed, 23 Mar 2022 16:58:45 +0000 (17:58 +0100)] 
Fix BUILD_DATE in rrdtool help output

- This is a followup to #1102
- Fixes segfault when running "rrdtool --help"
- Change DATE_FMT to the same date format as the __DATE__ macro [1]:
  mmm dd yyyy

[1] https://gcc.gnu.org/onlinedocs/cpp/Standard-Predefined-Macros.html

2 years agoMerge pull request #1164 from c72578/2022-03-22_Update_version_and_copyright_year_in_...
Tobias Oetiker [Wed, 23 Mar 2022 08:30:44 +0000 (09:30 +0100)] 
Merge pull request #1164 from c72578/2022-03-22_Update_version_and_copyright_year_in_git_files

Update Version and Copyright year in git files

2 years agoUpdate Version and Copyright year in git files 1164/head
Wolfgang Stöggl [Tue, 22 Mar 2022 04:41:40 +0000 (05:41 +0100)] 
Update Version and Copyright year in git files

This commit is based on running the first part of the rrdtool-release
script (before ./bootstrap).

- Part of #1163

2 years agoMerge pull request #1162 from ryandesign/patch-1
Tobias Oetiker [Mon, 21 Mar 2022 08:35:43 +0000 (09:35 +0100)] 
Merge pull request #1162 from ryandesign/patch-1

acinclude.m4: Include <stdlib.h> when using exit

2 years agoacinclude.m4: Include <stdlib.h> when using exit 1162/head
Ryan Schmidt [Sun, 20 Mar 2022 21:29:10 +0000 (16:29 -0500)] 
acinclude.m4: Include <stdlib.h> when using exit

Fixes:

conftest.c:124:33: error: implicitly declaring library function 'exit'
with type 'void (int) __attribute__((noreturn))'

2 years agoMerge pull request #1161 from c72578/2022-03-15_rrdtool-release_Create_NUMVERS_from_V...
Tobias Oetiker [Wed, 16 Mar 2022 08:20:29 +0000 (09:20 +0100)] 
Merge pull request #1161 from c72578/2022-03-15_rrdtool-release_Create_NUMVERS_from_VERSION_file

rrdtool-release: Create NUMVERS from VERSION file

2 years agorrdtool-release: Create NUMVERS from VERSION file 1161/head
Wolfgang Stöggl [Tue, 15 Mar 2022 17:13:35 +0000 (18:13 +0100)] 
rrdtool-release: Create NUMVERS from VERSION file

In the script rrdtool-release, NUMVERS has been read from the
configure file so far, which may not be up-to-date.
Generate NUMVERS from the VERSION file instead. This ensures
that only one source is used vor the version - the VERSION file.
Use the same perl command for creating NUMVERS, as in configure.ac

2 years agoUpdate version to 1.8.0 for MSVC builds (#1160)
Wolfgang Stöggl [Mon, 14 Mar 2022 20:24:09 +0000 (21:24 +0100)] 
Update version to 1.8.0 for MSVC builds (#1160)

Includes version and copyright year updates to files in the win32
subdirectory after running the rrdtool-release script.

2 years agofix category v1.8.0
Tobias Oetiker [Mon, 14 Mar 2022 14:27:22 +0000 (15:27 +0100)] 
fix category

2 years agofix version
Tobias Oetiker [Mon, 14 Mar 2022 14:21:14 +0000 (15:21 +0100)] 
fix version

2 years agoupdate conditions
Tobias Oetiker [Mon, 14 Mar 2022 14:15:54 +0000 (15:15 +0100)] 
update conditions

2 years agoadd ghostscript
Tobias Oetiker [Mon, 14 Mar 2022 14:10:57 +0000 (15:10 +0100)] 
add ghostscript

2 years agoadd pango
Tobias Oetiker [Mon, 14 Mar 2022 14:04:44 +0000 (15:04 +0100)] 
add pango

2 years agofix release
Tobias Oetiker [Mon, 14 Mar 2022 14:02:17 +0000 (15:02 +0100)] 
fix release

2 years agofix release script
Tobias Oetiker [Mon, 14 Mar 2022 13:49:12 +0000 (14:49 +0100)] 
fix release script

2 years agofix release
Tobias Oetiker [Mon, 14 Mar 2022 13:45:34 +0000 (14:45 +0100)] 
fix release

2 years agopreparing for 1.8 (#1155)
Tobias Oetiker [Mon, 14 Mar 2022 13:39:15 +0000 (14:39 +0100)] 
preparing for 1.8 (#1155)

* updated CHANGES file
* move testing to GitHub actions
* prepare release action

2 years agoUpdate vcpkg in Windows GitHub Actions
Wolfgang Stöggl [Sun, 13 Mar 2022 18:21:41 +0000 (19:21 +0100)] 
Update vcpkg in Windows GitHub Actions

- Update vcpkg to current release 2022.03.10, commit af22873
- win32/collect_rrdtool_vcpkg_files.bat:
  lzma.dll is called liblzma.dll now

2 years agoMerge pull request #1154 from mwhudson/patch-1
Tobias Oetiker [Wed, 26 Jan 2022 13:16:33 +0000 (14:16 +0100)] 
Merge pull request #1154 from mwhudson/patch-1

clear LC_ALL when setting LC_TIME in rpn2 test

2 years agoclear LC_ALL when setting LC_TIME in rpn2 test 1154/head
Michael Hudson-Doyle [Wed, 26 Jan 2022 02:50:18 +0000 (15:50 +1300)] 
clear LC_ALL when setting LC_TIME in rpn2 test

This test was failing when LC_ALL was set to C.UTF-8 and using the C.UTF-8 locale which is part of glibc 2.35, which differs in a very minor way to that that has been used by Debian/Ubuntu for years. The tests sets LC_TIME to C, presumably to try to isolate itself from such things, but that does not have any effect if LC_ALL is set in the build environment.

2 years agoMerge pull request #1153 from usaleem-ix/race-cond-jw
Tobias Oetiker [Fri, 21 Jan 2022 09:26:15 +0000 (10:26 +0100)] 
Merge pull request #1153 from usaleem-ix/race-cond-jw

Fix for a race condition in journal_write

2 years agoFix for a race condition in journal_write 1153/head
Umer Saleem [Thu, 20 Jan 2022 14:29:36 +0000 (19:29 +0500)] 
Fix for a race condition in journal_write

There is a race condition in journal_write() where journal_lock is
being acquired after checking whether journal_fh is NULL or not.
journal_fh is a static file handle that can be set to NULL by any
other thread, while current thread is blocked by
pthread_mutex_lock(). This commit fixes this race condition.

Signed-off-by: Umer Saleem <usaleem@ixsystems.com>
2 years agoMerge pull request #1152 from vinc17fr/patch-1
Tobias Oetiker [Mon, 3 Jan 2022 15:10:10 +0000 (16:10 +0100)] 
Merge pull request #1152 from vinc17fr/patch-1

Fix typo

2 years agoFix typo 1152/head
Vincent Lefèvre [Mon, 3 Jan 2022 13:53:12 +0000 (14:53 +0100)] 
Fix typo

2 years agoMerge pull request #1139 from Frazew/feature/remote-daemon-tune
Tobias Oetiker [Mon, 20 Dec 2021 12:26:55 +0000 (13:26 +0100)] 
Merge pull request #1139 from Frazew/feature/remote-daemon-tune

Draft: Add support for TUNE command in rrdcached

2 years agoMerge branch 'master' into feature/remote-daemon-tune 1139/head
Wolfgang Stöggl [Sat, 18 Dec 2021 07:29:17 +0000 (08:29 +0100)] 
Merge branch 'master' into feature/remote-daemon-tune

2 years agoUpdate vcpkg in Windows GitHub Actions
Wolfgang Stöggl [Sun, 12 Dec 2021 14:17:21 +0000 (15:17 +0100)] 
Update vcpkg in Windows GitHub Actions

- Update vcpkg to current commit 50fd3d9
- Fix pcre download error.
  Former ftp.pcre.org FTP site is no longer available

2 years agoMerge pull request #1147 from diederikdehaas/improve-debian-link
Tobias Oetiker [Mon, 13 Dec 2021 10:54:21 +0000 (11:54 +0100)] 
Merge pull request #1147 from diederikdehaas/improve-debian-link

Update Debian link to package tracker

2 years agoUpdate Debian link to package tracker 1147/head
Diederik de Haas [Sat, 11 Dec 2021 00:46:37 +0000 (01:46 +0100)] 
Update Debian link to package tracker

From there you can see all the Debian package news, go to the packaging
source and Debian's copy of the upstream source.

2 years agoUpdate vcpkg to fix Windows builds
François HORTA [Wed, 24 Nov 2021 13:47:53 +0000 (14:47 +0100)] 
Update vcpkg to fix Windows builds

PCRE changed the download server, see https://github.com/microsoft/vcpkg/issues/21201

2 years agoUse python2 for tests because for travis, fix valgrind list1 test
François HORTA [Tue, 23 Nov 2021 17:48:35 +0000 (18:48 +0100)] 
Use python2 for tests because for travis, fix valgrind list1 test

2 years agoFix broken tests
François HORTA [Tue, 23 Nov 2021 17:25:27 +0000 (18:25 +0100)] 
Fix broken tests

2 years agoRefactor the tests to reflect actual functionality
François HORTA [Tue, 23 Nov 2021 16:03:51 +0000 (17:03 +0100)] 
Refactor the tests to reflect actual functionality

2 years agoAdd support for TUNE command in rrdcached
François HORTA [Mon, 8 Nov 2021 16:35:17 +0000 (17:35 +0100)] 
Add support for TUNE command in rrdcached

2 years agoMerge pull request #1138 from veprbl/pr/python_binding_fix
Tobias Oetiker [Sun, 24 Oct 2021 11:14:40 +0000 (13:14 +0200)] 
Merge pull request #1138 from veprbl/pr/python_binding_fix

Fix python bindings installation in case of empty DESTDIR

2 years agoFix python bindings installation in case of empty DESTDIR 1138/head
Dmitry Kalinkin [Thu, 21 Oct 2021 23:34:08 +0000 (19:34 -0400)] 
Fix python bindings installation in case of empty DESTDIR

The current behaviour is to install the extension to ./usr/local (if
prefix is /usr/local), so it ends up in the temporary build directory
instead of the intended absolute prefix.

The slash after $(DESTDIR) is needed to make empty DESTDIR mean
installation to / instead of making the prefix to mean a relative
path. We make it triple slash as POSIX reserves double slashes to
possibly have a special treatment by the OS.

The change for travis is needed as "make install" is run as root, and
once the python extension is actually installed, it leaves a
root-owned .egg-info file.

2 years agoMerge pull request #1136 from oetiker/cgi-sanitizer
Tobias Oetiker [Thu, 21 Oct 2021 12:31:50 +0000 (14:31 +0200)] 
Merge pull request #1136 from oetiker/cgi-sanitizer

be more agressive in extracting bad characters from cgi variables

2 years agoUpdate src/rrd_cgi.c cgi-sanitizer 1136/head
Tobias Oetiker [Thu, 21 Oct 2021 09:24:48 +0000 (11:24 +0200)] 
Update src/rrd_cgi.c

Co-authored-by: Wolfgang Stöggl <c72578@yahoo.de>
2 years agobe more agressive in extracting bad characters from cgi variables
Tobias Oetiker [Tue, 12 Oct 2021 08:35:43 +0000 (10:35 +0200)] 
be more agressive in extracting bad characters from cgi variables

2 years agoMerge pull request #1132 from andrewchambers/xportleak
Tobias Oetiker [Fri, 3 Sep 2021 14:16:22 +0000 (16:16 +0200)] 
Merge pull request #1132 from andrewchambers/xportleak

fix leaks in xport

2 years agofix leaks in xport 1132/head
Andrew Chambers [Fri, 3 Sep 2021 01:43:22 +0000 (13:43 +1200)] 
fix leaks in xport

2 years agoMerge pull request #1125 from c72578/2021-07-13_Add_escapeJSON_to_legend_entries
Tobias Oetiker [Thu, 15 Jul 2021 06:16:43 +0000 (08:16 +0200)] 
Merge pull request #1125 from c72578/2021-07-13_Add_escapeJSON_to_legend_entries

Add escapeJSON() to legend entries

2 years agoMerge branch 'master' into 2021-07-13_Add_escapeJSON_to_legend_entries 1125/head
Tobias Oetiker [Wed, 14 Jul 2021 16:03:01 +0000 (18:03 +0200)] 
Merge branch 'master' into 2021-07-13_Add_escapeJSON_to_legend_entries

2 years agoupdate to python 3
Tobias Oetiker [Wed, 14 Jul 2021 15:57:15 +0000 (17:57 +0200)] 
update to python 3

2 years agodo not try to autobuild
Tobias Oetiker [Wed, 14 Jul 2021 15:27:06 +0000 (17:27 +0200)] 
do not try to autobuild

2 years agofix build ionstructions
Tobias Oetiker [Wed, 14 Jul 2021 11:38:39 +0000 (13:38 +0200)] 
fix build ionstructions

2 years agoadd dependencies
Tobias Oetiker [Wed, 14 Jul 2021 11:37:11 +0000 (13:37 +0200)] 
add dependencies

2 years agoCreate codeql-analysis.yml
Tobias Oetiker [Wed, 14 Jul 2021 11:31:00 +0000 (13:31 +0200)] 
Create codeql-analysis.yml

2 years agoAdd escapeJSON() to legend entries
Wolfgang Stöggl [Tue, 13 Jul 2021 18:23:54 +0000 (20:23 +0200)] 
Add escapeJSON() to legend entries

Double quotes in legends are currently not escaped, if JSON imgformat
is used for rrdtool graph. This produces invalid JSON files.
See comment in #409 for further details.

2 years agoMerge pull request #1121 from c72578/2021-06-29_vcpkg_github_action
Tobias Oetiker [Mon, 5 Jul 2021 06:23:11 +0000 (08:23 +0200)] 
Merge pull request #1121 from c72578/2021-06-29_vcpkg_github_action

Update Windows GitHub Actions

2 years agomini change to trigger travis 1121/head
Tobias Oetiker [Sun, 4 Jul 2021 15:57:23 +0000 (17:57 +0200)] 
mini change to trigger travis

2 years agoUpdate Windows GitHub Actions
Wolfgang Stöggl [Tue, 29 Jun 2021 19:16:53 +0000 (21:16 +0200)] 
Update Windows GitHub Actions

- Update ci-workflow.yml and add GitHub Actions for Windows builds
  using MSVC and vcpkg. Both, x64 and x86 builds are part of the CI.
  The required vcpkg ports are installed and cached using
  lukka/run-vcpkg@v7
- Add release-windows.yml, which enables building Windows binaries of
  RRDtool. This GitHub action is run automatically upon new tags and
  can be triggered manually. The required .exe and .dll files are
  copied using collect_rrdtool_vcpkg_files.bat and deployed by
  actions/upload-artifact@v2
- Makefile_vcpkg.msc:
  Add include\harfbuzz, which is required for building pango.
Fixes: pango-coverage.h(28): fatal error C1083:
  Cannot open include file: 'hb.h': No such file or directory

2 years agoMerge pull request #1117 from yarda/python-rpath-drop
Tobias Oetiker [Fri, 28 May 2021 06:45:06 +0000 (08:45 +0200)] 
Merge pull request #1117 from yarda/python-rpath-drop

Fix RPATH for the python bindings

2 years agoFix RPATH for the python bindings 1117/head
Jaroslav Škarvada [Wed, 26 May 2021 19:05:43 +0000 (21:05 +0200)] 
Fix RPATH for the python bindings

Fixes #1116

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
3 years agoMerge pull request #1111 from svenpanne/fix-error-formatting
Tobias Oetiker [Mon, 22 Mar 2021 15:19:08 +0000 (16:19 +0100)] 
Merge pull request #1111 from svenpanne/fix-error-formatting

Avoid segfault: Don't read and write into the same buffer.

3 years agoAvoid segfault: Don't read and write into the same buffer. 1111/head
Sven Panne [Mon, 22 Mar 2021 11:55:26 +0000 (12:55 +0100)] 
Avoid segfault: Don't read and write into the same buffer.

Using CTX->rrd_error as a source *and* destination buffer at the same time
provokes undefined behavior.  In real life you get funny error messages
and/or segfaults within vs(n)printf().

Simple solution: Use a temporary copy of the error message while writing
into it.