dnssd 2.0 → 2.0.1
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 +7 -0
- data/History.txt +9 -0
- data/README.txt +1 -1
- data/Rakefile +2 -2
- data/ext/dnssd/extconf.rb +3 -0
- data/ext/dnssd/service.c +25 -1
- data/lib/dnssd.rb +1 -1
- metadata +82 -111
- data.tar.gz.sig +0 -0
- metadata.gz.sig +0 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 0c8d81b701b90525df7e2bc543879262595b7a36
|
4
|
+
data.tar.gz: b329dcb5c3f3dd2aceb00c042303bd4311009983
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: c3e53069b168de693d9d3d46dff6697fe091092b635f4e5961d3819bc200a6349d3a2a8b292f4db7d107f9e88179e7f68b9d41ab52a5378580066c58ee1023ac
|
7
|
+
data.tar.gz: 8f57f4190921acb814e3e74a86ddde676cf717b1807197661ccc406295f121c78ea522a7300df3869045286c3e9b7086befb532efe1483ba3c0df36ab8042636
|
data/History.txt
CHANGED
@@ -1,3 +1,12 @@
|
|
1
|
+
=== 2.0.1 / 2015-01-08
|
2
|
+
|
3
|
+
* Bug fix:
|
4
|
+
* Use rb_thread_fd_select() with a timeout instead of rb_thread_wait_fd()
|
5
|
+
which allows DNSSD#service to stop in a timely manner. Fixes #10 by Mick
|
6
|
+
Staugaard, #13 by Linux-cpp-lisp
|
7
|
+
* Document necessary dependencies for dnssd on debian. Issue #14 by
|
8
|
+
elmatou.
|
9
|
+
|
1
10
|
=== 2.0 / 2011-03-02
|
2
11
|
|
3
12
|
* Major enhancment
|
data/README.txt
CHANGED
data/Rakefile
CHANGED
@@ -9,8 +9,6 @@ Hoe.plugin :git
|
|
9
9
|
Hoe.plugin :compiler
|
10
10
|
|
11
11
|
HOE = Hoe.spec 'dnssd' do
|
12
|
-
self.rubyforge_name = 'dnssd'
|
13
|
-
|
14
12
|
developer 'Eric Hodel', 'drbrain@segment.net'
|
15
13
|
developer 'Aaron Patterson', 'aaronp@rubyforge.org'
|
16
14
|
developer 'Phil Hagelberg', 'phil@hagelb.org'
|
@@ -18,6 +16,8 @@ HOE = Hoe.spec 'dnssd' do
|
|
18
16
|
developer 'Charles Mills', ''
|
19
17
|
developer 'Rich Kilmer', ''
|
20
18
|
|
19
|
+
rdoc_locations << 'docs.seattlerb.org:/data/www/docs.seattlerb.org/dnssd/'
|
20
|
+
|
21
21
|
clean_globs << 'lib/dnssd/*.{so,bundle,dll}'
|
22
22
|
end
|
23
23
|
|
data/ext/dnssd/extconf.rb
CHANGED
@@ -49,6 +49,9 @@ end
|
|
49
49
|
have_func('getservbyport', 'netdb.h') ||
|
50
50
|
abort('unable to find getservbyport')
|
51
51
|
|
52
|
+
have_func('rb_thread_fd_select', 'ruby/intern.h') ||
|
53
|
+
abort('unable to find rb_thread_fd_select, your ruby is too old')
|
54
|
+
|
52
55
|
have_type('struct sockaddr_in', 'netinet/in.h') ||
|
53
56
|
abort('unable to find struct sockaddr_in')
|
54
57
|
|
data/ext/dnssd/service.c
CHANGED
@@ -211,6 +211,9 @@ dnssd_service_stop(VALUE self) {
|
|
211
211
|
static VALUE
|
212
212
|
dnssd_service_process(VALUE self) {
|
213
213
|
DNSServiceRef *client;
|
214
|
+
int dnssd_fd, result;
|
215
|
+
rb_fdset_t read;
|
216
|
+
struct timeval timeout;
|
214
217
|
|
215
218
|
get(cDNSSDService, self, DNSServiceRef, client);
|
216
219
|
|
@@ -219,11 +222,32 @@ dnssd_service_process(VALUE self) {
|
|
219
222
|
return Qnil;
|
220
223
|
}
|
221
224
|
|
222
|
-
|
225
|
+
dnssd_fd = DNSServiceRefSockFD(*client);
|
226
|
+
|
227
|
+
if (-1 == dnssd_fd)
|
228
|
+
rb_raise(eDNSSDError, "unable to get DNSSD FD for result processing");
|
229
|
+
|
230
|
+
timeout.tv_sec = 0;
|
231
|
+
timeout.tv_usec = 10000;
|
232
|
+
|
233
|
+
rb_fd_init(&read);
|
234
|
+
|
235
|
+
retry:
|
236
|
+
rb_fd_zero(&read);
|
237
|
+
rb_fd_set(dnssd_fd, &read);
|
238
|
+
|
239
|
+
result = rb_thread_fd_select(dnssd_fd + 1, &read, NULL, NULL, &timeout);
|
240
|
+
|
241
|
+
if (result == -1)
|
242
|
+
rb_sys_fail("select");
|
223
243
|
|
224
244
|
if (rb_ivar_get(self, dnssd_iv_continue) == Qfalse)
|
225
245
|
return Qnil;
|
226
246
|
|
247
|
+
/* timeout */
|
248
|
+
if (result == 0)
|
249
|
+
goto retry;
|
250
|
+
|
227
251
|
DNSServiceErrorType e = DNSServiceProcessResult(*client);
|
228
252
|
dnssd_check_error_code(e);
|
229
253
|
|
data/lib/dnssd.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,9 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: dnssd
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
prerelease:
|
6
|
-
segments:
|
7
|
-
- 2
|
8
|
-
- 0
|
9
|
-
version: "2.0"
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 2.0.1
|
10
5
|
platform: ruby
|
11
|
-
authors:
|
6
|
+
authors:
|
12
7
|
- Eric Hodel
|
13
8
|
- Aaron Patterson
|
14
9
|
- Phil Hagelberg
|
@@ -17,100 +12,86 @@ authors:
|
|
17
12
|
- Rich Kilmer
|
18
13
|
autorequire:
|
19
14
|
bindir: bin
|
20
|
-
cert_chain:
|
21
|
-
-
|
22
|
-
|
23
|
-
|
24
|
-
YWluMRgwFgYKCZImiZPyLGQBGRYIc2VnbWVudDcxEzARBgoJkiaJk/IsZAEZFgNu
|
25
|
-
ZXQwHhcNMDcxMjIxMDIwNDE0WhcNMDgxMjIwMDIwNDE0WjBBMRAwDgYDVQQDDAdk
|
26
|
-
cmJyYWluMRgwFgYKCZImiZPyLGQBGRYIc2VnbWVudDcxEzARBgoJkiaJk/IsZAEZ
|
27
|
-
FgNuZXQwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCbbgLrGLGIDE76
|
28
|
-
LV/cvxdEzCuYuS3oG9PrSZnuDweySUfdp/so0cDq+j8bqy6OzZSw07gdjwFMSd6J
|
29
|
-
U5ddZCVywn5nnAQ+Ui7jMW54CYt5/H6f2US6U0hQOjJR6cpfiymgxGdfyTiVcvTm
|
30
|
-
Gj/okWrQl0NjYOYBpDi+9PPmaH2RmLJu0dB/NylsDnW5j6yN1BEI8MfJRR+HRKZY
|
31
|
-
mUtgzBwF1V4KIZQ8EuL6I/nHVu07i6IkrpAgxpXUfdJQJi0oZAqXurAV3yTxkFwd
|
32
|
-
g62YrrW26mDe+pZBzR6bpLE+PmXCzz7UxUq3AE0gPHbiMXie3EFE0oxnsU3lIduh
|
33
|
-
sCANiQ8BAgMBAAGjOTA3MAkGA1UdEwQCMAAwCwYDVR0PBAQDAgSwMB0GA1UdDgQW
|
34
|
-
BBS5k4Z75VSpdM0AclG2UvzFA/VW5DANBgkqhkiG9w0BAQUFAAOCAQEAHagT4lfX
|
35
|
-
kP/hDaiwGct7XPuVGbrOsKRVD59FF5kETBxEc9UQ1clKWngf8JoVuEoKD774dW19
|
36
|
-
bU0GOVWO+J6FMmT/Cp7nuFJ79egMf/gy4gfUfQMuvfcr6DvZUPIs9P/TlK59iMYF
|
37
|
-
DIOQ3DxdF3rMzztNUCizN4taVscEsjCcgW6WkUJnGdqlu3OHWpQxZBJkBTjPCoc6
|
38
|
-
UW6on70SFPmAy/5Cq0OJNGEWBfgD9q7rrs/X8GGwUWqXb85RXnUVi/P8Up75E0ag
|
39
|
-
14jEc90kN+C7oI/AGCBN0j6JnEtYIEJZibjjDJTSMWlUKKkj30kq7hlUC2CepJ4v
|
40
|
-
x52qPcexcYZR7w==
|
41
|
-
-----END CERTIFICATE-----
|
42
|
-
|
43
|
-
date: 2011-03-03 00:00:00 -08:00
|
44
|
-
default_executable:
|
45
|
-
dependencies:
|
46
|
-
- !ruby/object:Gem::Dependency
|
15
|
+
cert_chain: []
|
16
|
+
date: 2015-01-08 00:00:00.000000000 Z
|
17
|
+
dependencies:
|
18
|
+
- !ruby/object:Gem::Dependency
|
47
19
|
name: minitest
|
20
|
+
requirement: !ruby/object:Gem::Requirement
|
21
|
+
requirements:
|
22
|
+
- - "~>"
|
23
|
+
- !ruby/object:Gem::Version
|
24
|
+
version: '5.4'
|
25
|
+
type: :development
|
48
26
|
prerelease: false
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
27
|
+
version_requirements: !ruby/object:Gem::Requirement
|
28
|
+
requirements:
|
29
|
+
- - "~>"
|
30
|
+
- !ruby/object:Gem::Version
|
31
|
+
version: '5.4'
|
32
|
+
- !ruby/object:Gem::Dependency
|
33
|
+
name: rdoc
|
34
|
+
requirement: !ruby/object:Gem::Requirement
|
35
|
+
requirements:
|
36
|
+
- - "~>"
|
37
|
+
- !ruby/object:Gem::Version
|
38
|
+
version: '4.0'
|
60
39
|
type: :development
|
61
|
-
version_requirements: *id001
|
62
|
-
- !ruby/object:Gem::Dependency
|
63
|
-
name: rake-compiler
|
64
40
|
prerelease: false
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
41
|
+
version_requirements: !ruby/object:Gem::Requirement
|
42
|
+
requirements:
|
43
|
+
- - "~>"
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: '4.0'
|
46
|
+
- !ruby/object:Gem::Dependency
|
47
|
+
name: rake-compiler
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
49
|
+
requirements:
|
50
|
+
- - "~>"
|
51
|
+
- !ruby/object:Gem::Version
|
52
|
+
version: '0.7'
|
75
53
|
type: :development
|
76
|
-
version_requirements: *id002
|
77
|
-
- !ruby/object:Gem::Dependency
|
78
|
-
name: hoe
|
79
54
|
prerelease: false
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
55
|
+
version_requirements: !ruby/object:Gem::Requirement
|
56
|
+
requirements:
|
57
|
+
- - "~>"
|
58
|
+
- !ruby/object:Gem::Version
|
59
|
+
version: '0.7'
|
60
|
+
- !ruby/object:Gem::Dependency
|
61
|
+
name: hoe
|
62
|
+
requirement: !ruby/object:Gem::Requirement
|
63
|
+
requirements:
|
64
|
+
- - "~>"
|
65
|
+
- !ruby/object:Gem::Version
|
66
|
+
version: '3.13'
|
91
67
|
type: :development
|
92
|
-
|
68
|
+
prerelease: false
|
69
|
+
version_requirements: !ruby/object:Gem::Requirement
|
70
|
+
requirements:
|
71
|
+
- - "~>"
|
72
|
+
- !ruby/object:Gem::Version
|
73
|
+
version: '3.13'
|
93
74
|
description: |-
|
94
75
|
DNS Service Discovery (aka Bonjour, MDNS) API for Ruby. Implements browsing,
|
95
76
|
resolving, registration and domain enumeration. Supports avahi's DNSSD
|
96
77
|
compatibility layer for avahi 0.6.25 or newer.
|
97
|
-
email:
|
78
|
+
email:
|
98
79
|
- drbrain@segment.net
|
99
80
|
- aaronp@rubyforge.org
|
100
81
|
- phil@hagelb.org
|
101
82
|
- chad@chadfowler.com
|
102
|
-
-
|
103
|
-
-
|
83
|
+
- ''
|
84
|
+
- ''
|
104
85
|
executables: []
|
105
|
-
|
106
|
-
extensions:
|
86
|
+
extensions:
|
107
87
|
- ext/dnssd/extconf.rb
|
108
|
-
extra_rdoc_files:
|
88
|
+
extra_rdoc_files:
|
109
89
|
- History.txt
|
110
90
|
- Manifest.txt
|
111
91
|
- README.txt
|
112
|
-
files:
|
113
|
-
- .autotest
|
92
|
+
files:
|
93
|
+
- ".autotest"
|
94
|
+
- ".gemtest"
|
114
95
|
- History.txt
|
115
96
|
- Manifest.txt
|
116
97
|
- README.txt
|
@@ -153,43 +134,33 @@ files:
|
|
153
134
|
- test/test_dnssd_reply_resolve.rb
|
154
135
|
- test/test_dnssd_service.rb
|
155
136
|
- test/test_dnssd_text_record.rb
|
156
|
-
- .gemtest
|
157
|
-
has_rdoc: true
|
158
137
|
homepage: http://rubyforge.org/projects/dnssd
|
159
|
-
licenses:
|
160
|
-
|
138
|
+
licenses:
|
139
|
+
- MIT
|
140
|
+
metadata: {}
|
161
141
|
post_install_message:
|
162
|
-
rdoc_options:
|
163
|
-
- --main
|
142
|
+
rdoc_options:
|
143
|
+
- "--main"
|
164
144
|
- README.txt
|
165
|
-
require_paths:
|
145
|
+
require_paths:
|
166
146
|
- lib
|
167
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
168
|
-
|
169
|
-
requirements:
|
147
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
148
|
+
requirements:
|
170
149
|
- - ">="
|
171
|
-
- !ruby/object:Gem::Version
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
version: "0"
|
176
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
177
|
-
none: false
|
178
|
-
requirements:
|
150
|
+
- !ruby/object:Gem::Version
|
151
|
+
version: '0'
|
152
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
153
|
+
requirements:
|
179
154
|
- - ">="
|
180
|
-
- !ruby/object:Gem::Version
|
181
|
-
|
182
|
-
segments:
|
183
|
-
- 0
|
184
|
-
version: "0"
|
155
|
+
- !ruby/object:Gem::Version
|
156
|
+
version: '0'
|
185
157
|
requirements: []
|
186
|
-
|
187
|
-
|
188
|
-
rubygems_version: 1.6.0
|
158
|
+
rubyforge_project:
|
159
|
+
rubygems_version: 2.4.2
|
189
160
|
signing_key:
|
190
|
-
specification_version:
|
161
|
+
specification_version: 4
|
191
162
|
summary: DNS Service Discovery (aka Bonjour, MDNS) API for Ruby
|
192
|
-
test_files:
|
163
|
+
test_files:
|
193
164
|
- test/test_dnssd.rb
|
194
165
|
- test/test_dnssd_flags.rb
|
195
166
|
- test/test_dnssd_record.rb
|
data.tar.gz.sig
DELETED
Binary file
|
metadata.gz.sig
DELETED
Binary file
|