libddwaf 1.5.1.0.0-x86_64-linux → 1.6.2.0.0-x86_64-linux
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 71384cb7d6448729fd2488dbf2d5ceef366fc7df06a4cd06d9888ba346b7d1bc
|
4
|
+
data.tar.gz: 627d892c7476594d3be75168f5b19f5615578b4238414689f72cf3cfef95e8d8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3c2a40e35ce6a108006a1a6009d12d47d1c97a09f892e3ba2a4b4db6a40a496fed311c712ae6c86a00f88f3caff622b94d81329efe9dac01daf71403d206b16f
|
7
|
+
data.tar.gz: 9825db408ec805110df97fce952679ddded24f76c6eb2e2a619ded745209ae08683cc579ddf1a9300df9ac75373c2abcc778705ab5bbbae9d3692c0fae20b504
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,13 @@
|
|
1
|
+
# 2023-02-03 v1.6.2.0.0
|
2
|
+
|
3
|
+
- Update to libddwaf 1.6.2
|
4
|
+
- Add specs for the getter functions
|
5
|
+
|
6
|
+
# 2023-02-01 v1.5.1.0.1
|
7
|
+
|
8
|
+
- Fix incorrect size in input string limit
|
9
|
+
- Fix object freeing on `update_rule_data` and `toggle_rules`
|
10
|
+
|
1
11
|
# 2022-10-04 v1.5.1.0.0
|
2
12
|
|
3
13
|
- Update to libddwaf 1.5.1
|
data/lib/datadog/appsec/waf.rb
CHANGED
@@ -182,6 +182,7 @@ module Datadog
|
|
182
182
|
attach_function :ddwaf_object_get_unsigned, [:ddwaf_object], :uint64
|
183
183
|
attach_function :ddwaf_object_get_signed, [:ddwaf_object], :int64
|
184
184
|
attach_function :ddwaf_object_get_index, [:ddwaf_object, :size_t], :ddwaf_object
|
185
|
+
attach_function :ddwaf_object_get_bool, [:ddwaf_object], :bool
|
185
186
|
|
186
187
|
## freeers
|
187
188
|
|
@@ -203,8 +204,8 @@ module Datadog
|
|
203
204
|
end
|
204
205
|
|
205
206
|
class Obfuscator < ::FFI::Struct
|
206
|
-
layout :key_regex, :pointer, # :charptr
|
207
|
-
:value_regex, :pointer # :charptr
|
207
|
+
layout :key_regex, :pointer, # should be :charptr
|
208
|
+
:value_regex, :pointer # should be :charptr
|
208
209
|
end
|
209
210
|
|
210
211
|
layout :limits, Limits,
|
@@ -539,15 +540,21 @@ module Datadog
|
|
539
540
|
end
|
540
541
|
|
541
542
|
def update_rule_data(data)
|
542
|
-
|
543
|
+
data_obj = Datadog::AppSec::WAF.ruby_to_object(data, coerce: false)
|
544
|
+
res = Datadog::AppSec::WAF::LibDDWAF.ddwaf_update_rule_data(@handle_obj, data_obj)
|
543
545
|
|
544
546
|
RESULT_CODE[res]
|
547
|
+
ensure
|
548
|
+
Datadog::AppSec::WAF::LibDDWAF.ddwaf_object_free(data_obj) if data_obj
|
545
549
|
end
|
546
550
|
|
547
551
|
def toggle_rules(map)
|
548
|
-
|
552
|
+
map_obj = Datadog::AppSec::WAF.ruby_to_object(map, coerce: false)
|
553
|
+
res = Datadog::AppSec::WAF::LibDDWAF.ddwaf_toggle_rules(@handle_obj, map_obj)
|
549
554
|
|
550
555
|
RESULT_CODE[res]
|
556
|
+
ensure
|
557
|
+
Datadog::AppSec::WAF::LibDDWAF.ddwaf_object_free(map_obj) if map_obj
|
551
558
|
end
|
552
559
|
|
553
560
|
private
|
@@ -627,7 +634,7 @@ module Datadog
|
|
627
634
|
|
628
635
|
max_container_size = LibDDWAF::DDWAF_MAX_CONTAINER_SIZE
|
629
636
|
max_container_depth = LibDDWAF::DDWAF_MAX_CONTAINER_DEPTH
|
630
|
-
max_string_length = LibDDWAF::
|
637
|
+
max_string_length = LibDDWAF::DDWAF_MAX_STRING_LENGTH
|
631
638
|
|
632
639
|
input_obj = Datadog::AppSec::WAF.ruby_to_object(input,
|
633
640
|
max_container_size: max_container_size,
|
data/vendor/libddwaf/{libddwaf-1.5.1-linux-x86_64 → libddwaf-1.6.2-linux-x86_64}/lib/libddwaf.so
RENAMED
Binary file
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: libddwaf
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.6.2.0.0
|
5
5
|
platform: x86_64-linux
|
6
6
|
authors:
|
7
7
|
- Datadog, Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-02-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: ffi
|
@@ -42,7 +42,7 @@ files:
|
|
42
42
|
- lib/datadog/appsec/waf.rb
|
43
43
|
- lib/datadog/appsec/waf/version.rb
|
44
44
|
- lib/libddwaf.rb
|
45
|
-
- vendor/libddwaf/libddwaf-1.
|
45
|
+
- vendor/libddwaf/libddwaf-1.6.2-linux-x86_64/lib/libddwaf.so
|
46
46
|
homepage: https://github.com/DataDog/libddwaf-rb
|
47
47
|
licenses:
|
48
48
|
- BSD-3-Clause
|