Commit Graph

18994 Commits

Author SHA1 Message Date
Isaac Connor d713770dea Include more fields in zm_dump_codecpar and zm_dump_codec 2021-06-04 15:01:48 -04:00
Isaac Connor 72d07d1428 Add a bunch of debugging about snapshot writing 2021-06-04 15:00:16 -04:00
Isaac Connor ad0e7a5c1a Use new get_packet_and_increment_it in decoder. Adjust some debugging levels 2021-06-03 18:22:18 -04:00
Isaac Connor fc6202d349 Introduce get_packet_and_increase_it just so we can lose an extra grab lock and function calls, etc. In queuePacket, if the queue is full, WAIT instead of failing to queue. 2021-06-03 18:22:18 -04:00
Isaac Connor 1b67074d35
Merge pull request #3275 from XuluniX/onvifprobe_interface
Fixed bug in onvifprobe interface selection
2021-06-03 10:06:24 -04:00
Xulunix 2cbb24d7b9 Fixed bug in onvifprobe
The arguments for "/usr/bin/zmonvif-probe.pl" was always `probe 1.1,1.2 1` with the last argument always being `1` instead of the network interface name selected in the menu.
This change fixes this issue by using the selected interface name instead of the boolean return value of the `isset()` function.
2021-06-03 02:26:24 +02:00
Isaac Connor e4d3394888 fix missing namespace on warning 2021-06-02 18:35:13 -04:00
Isaac Connor 9a03c2c16a Default to UTC when no timezone set so that montagereview continues working. Fixes #3274 2021-06-02 18:35:13 -04:00
Isaac Connor ed5262432f Fix samsite support for php <= 7.2 2021-06-02 14:59:13 -04:00
Isaac Connor 5529075fb3
Merge pull request #3273 from Carbenium/cmake-cleanup
Build: Remove some unused CMake code
2021-06-01 18:37:37 -04:00
Peter Keresztes Schmidt 0ea14317a4 Build: Remove unused cmakedefines 2021-06-01 23:54:49 +02:00
Peter Keresztes Schmidt 7ec37405a6 Build: Don't include unused CheckStructHasMember module 2021-06-01 08:43:49 +02:00
Peter Keresztes Schmidt e724a93395 Build: Remove in-tree version of CheckPrototypeDefinition
We currently don't use the module and all supported CMake versions ship this module if needed.
2021-06-01 08:41:44 +02:00
Isaac Connor bc3d1d161a
Merge pull request #3270 from Carbenium/remove-v4l1
Remove support for V4L1
2021-05-31 18:52:07 -04:00
Peter Keresztes Schmidt 81a1546a2b LocalCamera: Remove unnecessary ZM_HAS_V4L2 conditionals
V4L2 is the only V4L version we support. No need to conditionally compile those parts.
2021-06-01 00:05:05 +02:00
Peter Keresztes Schmidt f2bee0704a LocalCamera: Remove support for V4L1
Kernel support for Video4Linux 1 was removed in 2.6.38 (March 2011). It's time to drop support on our side.
2021-05-31 23:29:29 +02:00
Peter Keresztes Schmidt ed7759897b misc: Move ZM_HAS_* defines to zoneminder-config.cmake 2021-05-31 23:29:29 +02:00
Isaac Connor f8b779dc25 fix crash when in alert state with no event 2021-05-31 16:02:42 -04:00
Isaac Connor cc3bce48b7 hevc requires an open codec to set stream parameters right. Fixes garbage video when h265 passthrough 2021-05-31 16:00:17 -04:00
Isaac Connor c686fa5949 SHould reset state as well as shared_data->state 2021-05-31 16:00:17 -04:00
Isaac Connor d2941d6b87 Always print SAR and tel about unknown codec type 2021-05-31 16:00:17 -04:00
Isaac Connor 50fe7100fa Remove the code to do adaptive skipping. We should never sleep when doing Analysis unless an error occurred. 2021-05-31 12:52:24 -04:00
Isaac Connor 4825370a7f Apply height css to limit height of logout modal and apply overflow:auto to add a scrollbar if needed so that we don't have to scroll to logout. 2021-05-31 10:19:58 -04:00
Isaac Connor 0bcb30b8a9 Don't print out buffer since it isn't zero terminated 2021-05-31 10:19:58 -04:00
Isaac Connor fd21edb7a9
Merge pull request #3268 from Carbenium/remove-travis
CI: Remove Travis CI
2021-05-30 18:36:25 -04:00
Peter Keresztes Schmidt f3cb14cc17 CI: Remove Travis CI
All our CI needs are handled by GitHub Actions
2021-05-31 00:15:00 +02:00
Peter Keresztes Schmidt 764f10bf82 CI: Run packpack for Buster on GitHub Actions 2021-05-31 00:14:10 +02:00
Isaac Connor 4f2945bd57
Merge pull request #3267 from Carbenium/crypto-hashing
Crypto: Implement a generic hashing API
2021-05-30 18:07:58 -04:00
Peter Keresztes Schmidt fead79185b CI: Run ESLint job with GitHub Actions 2021-05-30 23:36:19 +02:00
Isaac Connor dab2792077
Merge pull request #3262 from Carbenium/selectable-crypto-backend
Build: Make crypto and JWT backends selectable
2021-05-30 17:06:22 -04:00
Peter Keresztes Schmidt 8129600a37 Build: Cleanup gnutls/openssl defines
We only need HAVE_LIBGNUTLS and HAVE_LIBOPENSSL to compile the right crypto backend.
2021-05-30 22:56:21 +02:00
Peter Keresztes Schmidt 5d93555d9f Crypto: Use new hashing API 2021-05-30 22:56:21 +02:00
Peter Keresztes Schmidt 9a983bb321 Crypto: Implement SHA1 hashing 2021-05-30 22:56:21 +02:00
Peter Keresztes Schmidt 8b87830e3e Use the new ByteArrayToHexString helper 2021-05-30 22:53:05 +02:00
Peter Keresztes Schmidt d2932b5d68 Utils: Add a ByteArrayToHexString helper 2021-05-30 22:53:05 +02:00
Peter Keresztes Schmidt 62f60b76d6 rtsp_auth/Authenticator: Convert to new hashing API 2021-05-30 22:53:05 +02:00
Peter Keresztes Schmidt 837b32ccff User: Convert to new hashing API 2021-05-30 22:53:05 +02:00
Peter Keresztes Schmidt 2bda413698 Crypto: Implement a generic hashing API
Currently MD5 is implemented
2021-05-30 22:53:05 +02:00
Peter Keresztes Schmidt a8b9d15d1b Utils: Add our own ASSERT macro
Using `assert` from `<cassert>` leads to unused variable warnings in release builds.
Define the `ASSERT` macro which compiles to a no-op in release builds but still avoids
the warnings.
2021-05-30 21:41:58 +02:00
Isaac Connor 28a6a3e41e the filename is incorrect so the tmpfiles.d configuration is not being included 2021-05-30 10:54:23 -04:00
Peter Keresztes Schmidt e34b6500d9 Utils: Add implementations for std::data and std::size
These can be removed once C++17 is supported.
2021-05-29 21:37:38 +02:00
Peter Keresztes Schmidt b8178dbb79 CI: Build possible crypto/jwt backend combinations 2021-05-29 21:37:30 +02:00
Peter Keresztes Schmidt 45654cb514 Build: Make the JWT backend selectable
Introduce the -DZM_JWT_BACKEND CMake option through which the JWT backend can be selected.
Supported values: jwt_cpp (default; in-tree) and libjwt

When libjwt is chosen ZM_CRYPTO_BACKEND is taken into account to select the corresponding flavour of libjwt.
2021-05-29 21:37:30 +02:00
Peter Keresztes Schmidt caadc41bfd Build: Make the crypto backend selectable
Introduce the -DZM_CRYPTO_BACKEND CMake option through which the crypto backend can be selected.
Supported values: openssl (default) and gnutls

This commit makes OpenSSL or GnuTLS a requirement to compile/run ZoneMinder.

Following restriction applies:
  * If libjwt is not found we fall back to jwt-cpp which only supports OpenSSL
2021-05-29 21:37:30 +02:00
Peter Keresztes Schmidt b81689aa3f Remove libgcrypt as dependency
GnuTLS used gcrypt as backend but switched in ~2011 to nettle.
Thus we don't need to/shouldn't depend on it.
2021-05-29 21:37:30 +02:00
Isaac Connor 2e61ee4c95
Merge pull request #3266 from Carbenium/fill-out-of-bounds
Image: Remove std::vector out-of-bounds access when filling polygons
2021-05-29 15:05:19 -04:00
Peter Keresztes Schmidt 339cfd49bc Image: Remove std::vector out-of-bounds access when filling polygons
While iterating through `active_edges` we call `std::next`. If the current
iterator is `.end()` we are accessing out-of-bound memory.
Make sure we always have a valid iterator past `it` in the loop.

Follow-up on 6642ca4515
2021-05-29 19:58:19 +02:00
Peter Keresztes Schmidt e8adf5d331 Build: Enable std::vector ASAN annotation in libstdc++
By defining _GLIBCXX_SANITIZE_VECTOR when ASAN is enabled `std::vector` operations
will be annotated so ASAN can detect invalid accesses.

See https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_macros.html
2021-05-29 19:55:17 +02:00
Isaac Connor 09b0353592 Actually close the camera in localcamera::Close 2021-05-28 13:54:20 -04:00
Isaac Connor 855a81b975 Merge branch 'release-1.36' 2021-05-28 12:29:35 -04:00