eventmachine 1.2.3-x86-mingw32 → 1.2.5-x86-mingw32
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 +4 -4
- data/CHANGELOG.md +9 -0
- data/ext/cmain.cpp +2 -2
- data/ext/ed.cpp +2 -2
- data/ext/em.cpp +1 -1
- data/ext/em.h +1 -1
- data/ext/eventmachine.h +1 -1
- data/ext/extconf.rb +8 -8
- data/ext/rubymain.cpp +1 -1
- data/java/src/com/rubyeventmachine/EmReactor.java +8 -2
- data/lib/1.9/fastfilereaderext.so +0 -0
- data/lib/1.9/rubyeventmachine.so +0 -0
- data/lib/2.0/fastfilereaderext.so +0 -0
- data/lib/2.0/rubyeventmachine.so +0 -0
- data/lib/2.1/fastfilereaderext.so +0 -0
- data/lib/2.1/rubyeventmachine.so +0 -0
- data/lib/2.2/fastfilereaderext.so +0 -0
- data/lib/2.2/rubyeventmachine.so +0 -0
- data/lib/2.3/fastfilereaderext.so +0 -0
- data/lib/2.3/rubyeventmachine.so +0 -0
- data/lib/em/version.rb +1 -1
- data/tests/test_ipv6.rb +3 -1
- data/tests/test_threaded_resource.rb +2 -0
- data/tests/test_timers.rb +7 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 94a7adfe0994ad28cc3436b19f15699396d42502
|
4
|
+
data.tar.gz: 83bc8cbe5c49477ad13d6ed991f381dda4aa4e93
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e74771d1ccde88a58d03bb4f20059a28c934d45612622460f3e5226663db269e6e56e21dcf16e98cb7cf128491acf3c56f216398b4038352b1caf3423311b729
|
7
|
+
data.tar.gz: 30eff5534f7fa343da26fe2d853880a265808ffec874591b9cb1be95df08bf8aca8d54ccbf961f93f3b04dcaafaba4f2f16e38fcc691a5d598128e3dc197cbc4
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,14 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
+
## 1.2.5 (July 27, 2017)
|
4
|
+
* Java: Use long for larger values in oneshot timer intervals [#784, #794]
|
5
|
+
|
6
|
+
## 1.2.4 (July 27, 2017)
|
7
|
+
* Java: Add EM_PROTO_SSL/TLS definitions [#773, #791]
|
8
|
+
* Fix IPv6 UDP get_peername [#788]
|
9
|
+
* Allow for larger values in oneshot timer intervals [#784, #793]
|
10
|
+
* Update extconf.rb to allow MinGW builds with OpenSSL 1.1.0 [#785]
|
11
|
+
|
3
12
|
## 1.2.3 (February 22, 2017)
|
4
13
|
* Pure Ruby: Add get_sockname [#308, #772]
|
5
14
|
* Fix segfault when an Exception is raised from unbind callback [#765, #766]
|
data/ext/cmain.cpp
CHANGED
@@ -100,10 +100,10 @@ extern "C" void evma_run_machine()
|
|
100
100
|
evma_install_oneshot_timer
|
101
101
|
**************************/
|
102
102
|
|
103
|
-
extern "C" const uintptr_t evma_install_oneshot_timer (
|
103
|
+
extern "C" const uintptr_t evma_install_oneshot_timer (uint64_t milliseconds)
|
104
104
|
{
|
105
105
|
ensure_eventmachine("evma_install_oneshot_timer");
|
106
|
-
return EventMachine->InstallOneshotTimer (
|
106
|
+
return EventMachine->InstallOneshotTimer (milliseconds);
|
107
107
|
}
|
108
108
|
|
109
109
|
|
data/ext/ed.cpp
CHANGED
@@ -2002,8 +2002,8 @@ bool DatagramDescriptor::GetPeername (struct sockaddr *s, socklen_t *len)
|
|
2002
2002
|
{
|
2003
2003
|
bool ok = false;
|
2004
2004
|
if (s) {
|
2005
|
-
*len = sizeof(
|
2006
|
-
memset (s, 0, sizeof(
|
2005
|
+
*len = sizeof(ReturnAddress);
|
2006
|
+
memset (s, 0, sizeof(ReturnAddress));
|
2007
2007
|
memcpy (s, &ReturnAddress, sizeof(ReturnAddress));
|
2008
2008
|
ok = true;
|
2009
2009
|
}
|
data/ext/em.cpp
CHANGED
@@ -1151,7 +1151,7 @@ void EventMachine_t::_RunTimers()
|
|
1151
1151
|
EventMachine_t::InstallOneshotTimer
|
1152
1152
|
***********************************/
|
1153
1153
|
|
1154
|
-
const uintptr_t EventMachine_t::InstallOneshotTimer (
|
1154
|
+
const uintptr_t EventMachine_t::InstallOneshotTimer (uint64_t milliseconds)
|
1155
1155
|
{
|
1156
1156
|
if (Timers.size() > MaxOutstandingTimers)
|
1157
1157
|
return false;
|
data/ext/em.h
CHANGED
@@ -142,7 +142,7 @@ class EventMachine_t
|
|
142
142
|
void ScheduleHalt();
|
143
143
|
bool Stopping();
|
144
144
|
void SignalLoopBreaker();
|
145
|
-
const uintptr_t InstallOneshotTimer (
|
145
|
+
const uintptr_t InstallOneshotTimer (uint64_t);
|
146
146
|
const uintptr_t ConnectToServer (const char *, int, const char *, int);
|
147
147
|
const uintptr_t ConnectToUnixServer (const char *);
|
148
148
|
|
data/ext/eventmachine.h
CHANGED
@@ -51,7 +51,7 @@ extern "C" {
|
|
51
51
|
bool evma_run_machine_once();
|
52
52
|
void evma_run_machine();
|
53
53
|
void evma_release_library();
|
54
|
-
const uintptr_t evma_install_oneshot_timer (
|
54
|
+
const uintptr_t evma_install_oneshot_timer (uint64_t milliseconds);
|
55
55
|
const uintptr_t evma_connect_to_server (const char *bind_addr, int bind_port, const char *server, int port);
|
56
56
|
const uintptr_t evma_connect_to_unix_server (const char *server);
|
57
57
|
|
data/ext/extconf.rb
CHANGED
@@ -26,10 +26,10 @@ def append_library(libs, lib)
|
|
26
26
|
end
|
27
27
|
|
28
28
|
SSL_HEADS = %w(openssl/ssl.h openssl/err.h)
|
29
|
-
SSL_LIBS =
|
30
|
-
|
31
|
-
|
32
|
-
|
29
|
+
SSL_LIBS = %w(crypto ssl)
|
30
|
+
# OpenSSL 1.1.0 and above for Windows use the Unix library names
|
31
|
+
# OpenSSL 0.9.8 and 1.0.x for Windows use the *eay32 library names
|
32
|
+
SSL_LIBS_WIN = RUBY_PLATFORM =~ /mswin|mingw|bccwin/ ? %w(ssleay32 libeay32) : []
|
33
33
|
|
34
34
|
def dir_config_wrapper(pretty_name, name, idefault=nil, ldefault=nil)
|
35
35
|
inc, lib = dir_config(name, idefault, ldefault)
|
@@ -88,15 +88,15 @@ if ENV['CROSS_COMPILING']
|
|
88
88
|
end
|
89
89
|
elsif dir_config_wrapper('OpenSSL', 'ssl')
|
90
90
|
# If the user has provided a --with-ssl-dir argument, we must respect it or fail.
|
91
|
-
add_define 'WITH_SSL' if check_libs(SSL_LIBS) && check_heads(SSL_HEADS)
|
91
|
+
add_define 'WITH_SSL' if (check_libs(SSL_LIBS) || check_libs(SSL_LIBS_WIN)) && check_heads(SSL_HEADS)
|
92
92
|
elsif pkg_config_wrapper('OpenSSL', 'openssl')
|
93
93
|
# If we can detect OpenSSL by pkg-config, use it as the next-best option
|
94
|
-
add_define 'WITH_SSL' if check_libs(SSL_LIBS) && check_heads(SSL_HEADS)
|
95
|
-
elsif check_libs(SSL_LIBS) && check_heads(SSL_HEADS)
|
94
|
+
add_define 'WITH_SSL' if (check_libs(SSL_LIBS) || check_libs(SSL_LIBS_WIN)) && check_heads(SSL_HEADS)
|
95
|
+
elsif (check_libs(SSL_LIBS) || check_libs(SSL_LIBS_WIN)) && check_heads(SSL_HEADS)
|
96
96
|
# If we don't even need any options to find a usable OpenSSL, go with it
|
97
97
|
add_define 'WITH_SSL'
|
98
98
|
elsif dir_config_search('OpenSSL', 'ssl', ['/usr/local', '/opt/local', '/usr/local/opt/openssl']) do
|
99
|
-
check_libs(SSL_LIBS) && check_heads(SSL_HEADS)
|
99
|
+
(check_libs(SSL_LIBS) || check_libs(SSL_LIBS_WIN)) && check_heads(SSL_HEADS)
|
100
100
|
end
|
101
101
|
# Finally, look for OpenSSL in alternate locations including MacPorts and HomeBrew
|
102
102
|
add_define 'WITH_SSL'
|
data/ext/rubymain.cpp
CHANGED
@@ -262,7 +262,7 @@ t_add_oneshot_timer
|
|
262
262
|
|
263
263
|
static VALUE t_add_oneshot_timer (VALUE self UNUSED, VALUE interval)
|
264
264
|
{
|
265
|
-
const uintptr_t f = evma_install_oneshot_timer (
|
265
|
+
const uintptr_t f = evma_install_oneshot_timer (FIX2LONG (interval));
|
266
266
|
if (!f)
|
267
267
|
rb_raise (rb_eRuntimeError, "%s", "ran out of timers; use #set_max_timers to increase limit");
|
268
268
|
return BSIG2NUM (f);
|
@@ -48,7 +48,13 @@ public class EmReactor {
|
|
48
48
|
public final int EM_SSL_HANDSHAKE_COMPLETED = 108;
|
49
49
|
public final int EM_SSL_VERIFY = 109;
|
50
50
|
public final int EM_PROXY_TARGET_UNBOUND = 110;
|
51
|
-
|
51
|
+
public final int EM_PROXY_COMPLETED = 111;
|
52
|
+
|
53
|
+
public final int EM_PROTO_SSLv2 = 2;
|
54
|
+
public final int EM_PROTO_SSLv3 = 4;
|
55
|
+
public final int EM_PROTO_TLSv1 = 8;
|
56
|
+
public final int EM_PROTO_TLSv1_1 = 16;
|
57
|
+
public final int EM_PROTO_TLSv1_2 = 32;
|
52
58
|
|
53
59
|
private Selector mySelector;
|
54
60
|
private TreeMap<Long, ArrayList<Long>> Timers;
|
@@ -373,7 +379,7 @@ public class EmReactor {
|
|
373
379
|
}
|
374
380
|
}
|
375
381
|
|
376
|
-
public long installOneshotTimer (
|
382
|
+
public long installOneshotTimer (long milliseconds) {
|
377
383
|
long s = createBinding();
|
378
384
|
long deadline = new Date().getTime() + milliseconds;
|
379
385
|
|
Binary file
|
data/lib/1.9/rubyeventmachine.so
CHANGED
Binary file
|
Binary file
|
data/lib/2.0/rubyeventmachine.so
CHANGED
Binary file
|
Binary file
|
data/lib/2.1/rubyeventmachine.so
CHANGED
Binary file
|
Binary file
|
data/lib/2.2/rubyeventmachine.so
CHANGED
Binary file
|
Binary file
|
data/lib/2.3/rubyeventmachine.so
CHANGED
Binary file
|
data/lib/em/version.rb
CHANGED
data/tests/test_ipv6.rb
CHANGED
@@ -35,11 +35,13 @@ class TestIPv6 < Test::Unit::TestCase
|
|
35
35
|
def test_ipv6_udp_local_server
|
36
36
|
@@received_data = nil
|
37
37
|
@local_port = next_port
|
38
|
+
@@remote_ip = nil
|
38
39
|
setup_timeout(2)
|
39
40
|
|
40
41
|
EM.run do
|
41
42
|
EM.open_datagram_socket(@@public_ipv6, @local_port) do |s|
|
42
43
|
def s.receive_data data
|
44
|
+
_port, @@remote_ip = Socket.unpack_sockaddr_in(s.get_peername)
|
43
45
|
@@received_data = data
|
44
46
|
EM.stop
|
45
47
|
end
|
@@ -49,7 +51,7 @@ class TestIPv6 < Test::Unit::TestCase
|
|
49
51
|
c.send_datagram "ipv6/udp", @@public_ipv6, @local_port
|
50
52
|
end
|
51
53
|
end
|
52
|
-
|
54
|
+
assert_equal @@remote_ip, @@public_ipv6
|
53
55
|
assert_equal "ipv6/udp", @@received_data
|
54
56
|
end
|
55
57
|
|
data/tests/test_timers.rb
CHANGED
@@ -93,6 +93,13 @@ class TestTimers < Test::Unit::TestCase
|
|
93
93
|
assert_equal 4, x
|
94
94
|
end
|
95
95
|
|
96
|
+
def test_oneshot_timer_large_future_value
|
97
|
+
large_value = 11948602000
|
98
|
+
EM.run {
|
99
|
+
EM.add_timer(large_value) { EM.stop }
|
100
|
+
EM.add_timer(0.02) { EM.stop }
|
101
|
+
}
|
102
|
+
end
|
96
103
|
|
97
104
|
# This test is only applicable to compiled versions of the reactor.
|
98
105
|
# Pure ruby and java versions have no built-in limit on the number of outstanding timers.
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: eventmachine
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.2.
|
4
|
+
version: 1.2.5
|
5
5
|
platform: x86-mingw32
|
6
6
|
authors:
|
7
7
|
- Francis Cianfrocca
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2017-
|
12
|
+
date: 2017-07-28 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: test-unit
|