rbbcc 0.6.3 → 0.6.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile +1 -0
- data/Gemfile.lock +3 -1
- data/lib/rbbcc/bcc.rb +5 -4
- data/lib/rbbcc/clib.rb +15 -1
- data/lib/rbbcc/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 92b4487b6e8f5b72aad25113da967b51b2feb064361676b093441b6fd0bab672
|
4
|
+
data.tar.gz: 03d71e58ddebacdbf41f0c1ad4422bcfa1b9acdda3ac568068a2a8751b594a97
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bb9234154fe245bf001676f1a6e7b1e5bcce31e4962bd0d646746d1f3c286722def93899877c9a200a516fd33366ef7c73fcf2a7a22731fb76225edb5477f449
|
7
|
+
data.tar.gz: 89415cbd8cadade4b49b53b5fd1c024198bfbd3424e0d95ecaf8e00381495570e171bcf54f4c395ddf40d762821da1425945761d80166aef724e038f43ae0f3c
|
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
@@ -8,7 +8,7 @@ GIT
|
|
8
8
|
PATH
|
9
9
|
remote: .
|
10
10
|
specs:
|
11
|
-
rbbcc (0.6.
|
11
|
+
rbbcc (0.6.4)
|
12
12
|
|
13
13
|
GEM
|
14
14
|
remote: https://rubygems.org/
|
@@ -27,6 +27,7 @@ GEM
|
|
27
27
|
coderay (~> 1.1)
|
28
28
|
method_source (~> 1.0)
|
29
29
|
rake (13.0.1)
|
30
|
+
specific_install (0.3.5)
|
30
31
|
|
31
32
|
PLATFORMS
|
32
33
|
ruby
|
@@ -39,6 +40,7 @@ DEPENDENCIES
|
|
39
40
|
rake (~> 13.0)
|
40
41
|
rbbcc!
|
41
42
|
rbbcc-hello!
|
43
|
+
specific_install
|
42
44
|
|
43
45
|
BUNDLED WITH
|
44
46
|
2.1.4
|
data/lib/rbbcc/bcc.rb
CHANGED
@@ -220,7 +220,7 @@ module RbBCC
|
|
220
220
|
end
|
221
221
|
end
|
222
222
|
|
223
|
-
def initialize(text: "", src_file: nil, hdr_file: nil, debug: 0, cflags: [], usdt_contexts: [], allow_rlimit: 0)
|
223
|
+
def initialize(text: "", src_file: nil, hdr_file: nil, debug: 0, cflags: [], usdt_contexts: [], allow_rlimit: 0, dev_name: nil)
|
224
224
|
@kprobe_fds = {}
|
225
225
|
@uprobe_fds = {}
|
226
226
|
@tracepoint_fds = {}
|
@@ -232,7 +232,7 @@ module RbBCC
|
|
232
232
|
end
|
233
233
|
|
234
234
|
if src_file && src_file.end_with?(".b")
|
235
|
-
@module = Clib.bpf_module_create_b(src_file, hdr_file, debug,
|
235
|
+
@module = Clib.bpf_module_create_b(src_file, hdr_file, debug, dev_name)
|
236
236
|
else
|
237
237
|
if src_file
|
238
238
|
text = File.read(src_file)
|
@@ -250,12 +250,13 @@ module RbBCC
|
|
250
250
|
cflags
|
251
251
|
end
|
252
252
|
|
253
|
-
@module = Clib.
|
253
|
+
@module = Clib.do_bpf_module_create_c_from_string(
|
254
254
|
text,
|
255
255
|
debug,
|
256
256
|
cflags_safe.pack("p*"),
|
257
257
|
cflags_safe.size,
|
258
|
-
allow_rlimit
|
258
|
+
allow_rlimit,
|
259
|
+
dev_name
|
259
260
|
)
|
260
261
|
end
|
261
262
|
@funcs = {}
|
data/lib/rbbcc/clib.rb
CHANGED
@@ -44,24 +44,38 @@ module RbBCC
|
|
44
44
|
end
|
45
45
|
typealias "size_t", "int"
|
46
46
|
|
47
|
-
extern 'void * bpf_module_create_c_from_string(char *, unsigned int, char **, int, long)'
|
48
47
|
extern 'void * bpf_module_create_b(char *filename, char *proto_filename, unsigned int flags, char *dev_name)'
|
49
48
|
extern 'int bpf_num_functions(void *)'
|
50
49
|
extern 'char * bpf_function_name(void *, int)'
|
51
50
|
extern 'void bpf_module_destroy(void *)'
|
52
51
|
|
53
52
|
if libbcc_version_gteq?("0.11.0")
|
53
|
+
extern 'void * bpf_module_create_c_from_string(
|
54
|
+
const char *text, unsigned int flags, const char *cflags[],
|
55
|
+
int ncflags, int allow_rlimit,
|
56
|
+
const char *dev_name)'
|
54
57
|
extern 'int bcc_func_load(
|
55
58
|
void *program, int prog_type, const char *name,
|
56
59
|
const struct bpf_insn *insns, int prog_len,
|
57
60
|
const char *license, unsigned int kern_version,
|
58
61
|
int log_level, char *log_buf, unsigned int log_buf_size,
|
59
62
|
const char *dev_name)'
|
63
|
+
def self.do_bpf_module_create_c_from_string(text, flags, cflags, ncflags, allow_limit, dev_name)
|
64
|
+
bpf_module_create_c_from_string(text, flags, cflags, ncflags, allow_limit, dev_name)
|
65
|
+
end
|
66
|
+
|
60
67
|
def self.do_bcc_func_load(mod, prog_type, name, insns, len, license, kver, loglv, buf, buf_size, device)
|
61
68
|
bcc_func_load(mod, prog_type, name, insns, len, license, kver, loglv, buf, buf_size, device)
|
62
69
|
end
|
63
70
|
else
|
71
|
+
extern 'void * bpf_module_create_c_from_string(
|
72
|
+
const char *text, unsigned int flags, const char *cflags[],
|
73
|
+
int ncflags, int allow_rlimit)'
|
64
74
|
extern 'int bcc_func_load(void *, int, char *, void *, int, char *, unsigned int, int, char *, unsigned int)'
|
75
|
+
def self.do_bpf_module_create_c_from_string(text, flags, cflags, ncflags, allow_limit, dev_name=nil)
|
76
|
+
bpf_module_create_c_from_string(text, flags, cflags, ncflags, allow_limit)
|
77
|
+
end
|
78
|
+
|
65
79
|
def self.do_bcc_func_load(mod, prog_type, name, insns, len, license, kver, loglv, buf, buf_size, device)
|
66
80
|
bcc_func_load(mod, prog_type, name, insns, len, license, kver, loglv, buf, buf_size)
|
67
81
|
end
|
data/lib/rbbcc/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rbbcc
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.6.
|
4
|
+
version: 0.6.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Uchio Kondo
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-11-
|
11
|
+
date: 2020-11-26 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: BCC port for MRI. See https://github.com/iovisor/bcc
|
14
14
|
email:
|