libddwaf 1.18.0.0.0-java → 1.18.0.0.1-java

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: 378692f8ef4f465774ed25cee3fd97a764d29af65dfbcd2ec88df7ce516c2817
4
- data.tar.gz: d8a743f2e3e1f7e728a18eb11f5f0cf44d153afc0c616ff2038b9a62e3a57040
3
+ metadata.gz: 3ae617f1f72929d30f2fb9c51949e08ccdb35b41967d89280af9b9374df36a49
4
+ data.tar.gz: e78fffa68455656d3d09e09b3d1db408b235dae402f6135bef3f85ff422b435e
5
5
  SHA512:
6
- metadata.gz: dea2b7c8a045b6c6cedcbece6337564c80b6cebfc8680e4ff7928e4b6c0c611b554af589c73e86bcc0ec58d5d96a523e64014320620913fbe1d06b5e815b84dc
7
- data.tar.gz: f69f34bcf0ef43e795c9e0b94e96bf74352950f843416bf44620745a2ab24a8944307205edb824beeff07dc15b20d8bc37b57b07cf2684cf83b82fce59ea9cc2
6
+ metadata.gz: 67060dd7c5ece8c06ed2ba7bea61f6c25d87ab34c772f7fb275b4765058c5eaca2337df8c7ee42fcf2c7235a610a53342eef61cf514c28279b943c4640668bec
7
+ data.tar.gz: 0cdffd7fe4976cb92905d2cff4e3d1b050d144dd9a8bd11f9a7520270a8853307655820f8150e2b21ce181da6101e9f8926f87750fabd782603fdc073e9c845e
data/CHANGELOG.md CHANGED
@@ -1,8 +1,14 @@
1
+ # 2025-02-20 v.1.18.0.0.1
2
+
3
+ - Fixed memory-leak in `Datadog::AppSec::WAF::Context#run` when non-empty ephemeral data passed
4
+
1
5
  # 2024-10-29 v.1.15.0.0.0
6
+
2
7
  - Update to libddwaf 1.15.0
3
8
  - Changed `Datadog::AppSec::WAF::Context#run` interface to accommodate ephemeral data ([Breaking change](https://github.com/DataDog/libddwaf/blob/master/CHANGELOG.md#v1150-unstable))
4
9
 
5
10
  # 2023-09-11 v.1.14.0.0.0
11
+
6
12
  - Update to libddwaf 1.14.0
7
13
  - Add support for `Float` and `Nil` scalar values when converting from ruby to WAF Object and vice versa.
8
14
 
@@ -35,6 +35,7 @@ module Datadog
35
35
  LibDDWAF.ddwaf_object_free(retained_obj)
36
36
  end
37
37
 
38
+ retained.clear
38
39
  LibDDWAF.ddwaf_context_destroy(context_obj)
39
40
  end
40
41
 
@@ -83,10 +84,13 @@ module Datadog
83
84
  [RESULT_CODE[code], result]
84
85
  ensure
85
86
  LibDDWAF.ddwaf_result_free(result_obj) if result_obj
87
+ LibDDWAF.ddwaf_object_free(ephemeral_data_obj) if ephemeral_data_obj
86
88
  end
87
89
 
88
90
  private
89
91
 
92
+ # FIXME: Rename into something which reflect that it's impossible to run
93
+ # libddwaf on finalized context (closed)
90
94
  def validate!
91
95
  @valid = true
92
96
  end
@@ -53,7 +53,7 @@ module Datadog
53
53
 
54
54
  cpu = case os_arch
55
55
  when 'amd64' then 'x86_64'
56
- when 'aarch64' then 'aarch64'
56
+ when 'aarch64' then local_os == 'darwin' ? 'arm64' : 'aarch64'
57
57
  else raise Error, "unsupported JRuby os.arch: #{os_arch.inspect}"
58
58
  end
59
59
 
@@ -95,7 +95,13 @@ module Datadog
95
95
  end
96
96
 
97
97
  def self.shared_lib_extname
98
- Gem::Platform.local.os == 'darwin' ? '.dylib' : '.so'
98
+ if Gem::Platform.local.os == 'darwin'
99
+ '.dylib'
100
+ elsif Gem::Platform.local.os == 'java' && java.lang.System.get_property('os.name').match(/mac/i)
101
+ '.dylib'
102
+ else
103
+ '.so'
104
+ end
99
105
  end
100
106
 
101
107
  def self.shared_lib_path
@@ -3,7 +3,7 @@ module Datadog
3
3
  module WAF
4
4
  module VERSION
5
5
  BASE_STRING = '1.18.0'
6
- STRING = "#{BASE_STRING}.0.0"
6
+ STRING = "#{BASE_STRING}.0.1"
7
7
  MINIMUM_RUBY_VERSION = '2.5'
8
8
  end
9
9
  end
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.18.0.0.0
4
+ version: 1.18.0.0.1
5
5
  platform: java
6
6
  authors:
7
7
  - Datadog, Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-11-12 00:00:00.000000000 Z
11
+ date: 2025-02-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ffi
@@ -71,7 +71,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
71
71
  - !ruby/object:Gem::Version
72
72
  version: 2.0.0
73
73
  requirements: []
74
- rubygems_version: 3.5.17
74
+ rubygems_version: 3.5.21
75
75
  signing_key:
76
76
  specification_version: 4
77
77
  summary: Datadog WAF