libddwaf 1.5.1.0.0-x86_64-darwin → 1.5.1.0.1-x86_64-darwin

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a35c1c6b48d5a2f652a9e726e8651ac2dcd82d91e875f859c511d7a096b1ef05
4
- data.tar.gz: 7cbec901402fb39d79a84dcd01bf6b5739c5f11f8e6c3ae9d43ffc9c6d7310cd
3
+ metadata.gz: e0a596d9f94ee5aed556adfa96b6e005e5e49754c4bbcfb9b58becc61e97fd41
4
+ data.tar.gz: 7c4d3f254272fcca470bb6d6d57c4b08ee9a7af6dc0a3e8a691d73399ed2eab1
5
5
  SHA512:
6
- metadata.gz: 4a3f7f7b47d3fd5de075d22cc749998611f79b688012494a979ef5435a6785bfd5dfc198e970f33224ae0ad8669b4f76b76c56fd3cdff1fc0f861c4e037b245c
7
- data.tar.gz: 5f81bd74f5f95f74fcab502d38de48de621a45fe7f1da4c1854f61c6f9a57171288ede0ff61490963c692f3929de1c610b613d3dd4fe71882f12ae62d1950af9
6
+ metadata.gz: c39d0828579f5d75ccdf6bd73e986fde409abdb0aa82d47fe8a667efa79e316c109fd65691471718fc0e2dc03ef6f6aea5b36b4518cdd9cd8149760372f86f60
7
+ data.tar.gz: '085b54fe799d706da464a5b4488d25c2b2e3529d1db235d1900a5b0e0567f0f92c12246d51350b1a6e97dfcc83a4a655794c2bfc498295535179483d54be6d65'
data/CHANGELOG.md CHANGED
@@ -1,3 +1,8 @@
1
+ # 2023-02-01 v1.5.1.0.1
2
+
3
+ - Fix incorrect size in input string limit
4
+ - Fix object freeing on `update_rule_data` and `toggle_rules`
5
+
1
6
  # 2022-10-04 v1.5.1.0.0
2
7
 
3
8
  - Update to libddwaf 1.5.1
@@ -3,7 +3,7 @@ module Datadog
3
3
  module WAF
4
4
  module VERSION
5
5
  BASE_STRING = '1.5.1'
6
- STRING = "#{BASE_STRING}.0.0"
6
+ STRING = "#{BASE_STRING}.0.1"
7
7
  MINIMUM_RUBY_VERSION = '2.1'
8
8
  end
9
9
  end
@@ -203,8 +203,8 @@ module Datadog
203
203
  end
204
204
 
205
205
  class Obfuscator < ::FFI::Struct
206
- layout :key_regex, :pointer, # :charptr
207
- :value_regex, :pointer # :charptr
206
+ layout :key_regex, :pointer, # should be :charptr
207
+ :value_regex, :pointer # should be :charptr
208
208
  end
209
209
 
210
210
  layout :limits, Limits,
@@ -539,15 +539,21 @@ module Datadog
539
539
  end
540
540
 
541
541
  def update_rule_data(data)
542
- res = Datadog::AppSec::WAF::LibDDWAF.ddwaf_update_rule_data(@handle_obj, Datadog::AppSec::WAF.ruby_to_object(data, coerce: false))
542
+ data_obj = Datadog::AppSec::WAF.ruby_to_object(data, coerce: false)
543
+ res = Datadog::AppSec::WAF::LibDDWAF.ddwaf_update_rule_data(@handle_obj, data_obj)
543
544
 
544
545
  RESULT_CODE[res]
546
+ ensure
547
+ Datadog::AppSec::WAF::LibDDWAF.ddwaf_object_free(data_obj) if data_obj
545
548
  end
546
549
 
547
550
  def toggle_rules(map)
548
- res = Datadog::AppSec::WAF::LibDDWAF.ddwaf_toggle_rules(@handle_obj, Datadog::AppSec::WAF.ruby_to_object(map, coerce: false))
551
+ map_obj = Datadog::AppSec::WAF.ruby_to_object(map, coerce: false)
552
+ res = Datadog::AppSec::WAF::LibDDWAF.ddwaf_toggle_rules(@handle_obj, map_obj)
549
553
 
550
554
  RESULT_CODE[res]
555
+ ensure
556
+ Datadog::AppSec::WAF::LibDDWAF.ddwaf_object_free(map_obj) if map_obj
551
557
  end
552
558
 
553
559
  private
@@ -627,7 +633,7 @@ module Datadog
627
633
 
628
634
  max_container_size = LibDDWAF::DDWAF_MAX_CONTAINER_SIZE
629
635
  max_container_depth = LibDDWAF::DDWAF_MAX_CONTAINER_DEPTH
630
- max_string_length = LibDDWAF::DDWAF_MAX_CONTAINER_SIZE
636
+ max_string_length = LibDDWAF::DDWAF_MAX_STRING_LENGTH
631
637
 
632
638
  input_obj = Datadog::AppSec::WAF.ruby_to_object(input,
633
639
  max_container_size: max_container_size,
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.5.1.0.0
4
+ version: 1.5.1.0.1
5
5
  platform: x86_64-darwin
6
6
  authors:
7
7
  - Datadog, Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-10-04 00:00:00.000000000 Z
11
+ date: 2023-02-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ffi
@@ -63,7 +63,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
63
63
  - !ruby/object:Gem::Version
64
64
  version: 2.0.0
65
65
  requirements: []
66
- rubygems_version: 3.3.22
66
+ rubygems_version: 3.4.4
67
67
  signing_key:
68
68
  specification_version: 4
69
69
  summary: Datadog WAF