pusher-client 0.3.1 → 0.4.0
Sign up to get free protection for your applications and to get access to all the features.
- data/Gemfile +1 -5
- data/README.rdoc +5 -2
- data/Rakefile +2 -11
- data/certs/cacert.pem +72 -343
- data/examples/hello_pusher.rb +2 -3
- data/examples/hello_pusher_async.rb +2 -3
- data/examples/hello_pusher_ssl.rb +2 -3
- data/examples/subscribe_private.rb +2 -3
- data/lib/pusher-client.rb +9 -9
- data/lib/pusher-client/socket.rb +41 -26
- data/lib/pusher-client/version.rb +3 -0
- data/lib/pusher-client/websocket.rb +12 -10
- data/pusher-client.gemspec +10 -5
- data/test/pusherclient_test.rb +21 -1
- data/test/teststrap.rb +1 -9
- metadata +39 -22
- checksums.yaml +0 -7
data/Gemfile
CHANGED
data/README.rdoc
CHANGED
@@ -1,5 +1,7 @@
|
|
1
1
|
= pusher-client (Ruby)
|
2
2
|
|
3
|
+
{<img src="https://travis-ci.org/pusher/pusher-ruby-client.png" />}[https://travis-ci.org/pusher/pusher-ruby-client]
|
4
|
+
|
3
5
|
pusher-client is a ruby gem for consuming WebSockets from the Pusher[http://pusherapp.com] web service.
|
4
6
|
|
5
7
|
The connection to Pusher can optionally be maintained in its own thread (see Asynchronous Usage).
|
@@ -16,7 +18,6 @@ may be sent on. You can't just bind a global event without subscribing to any ch
|
|
16
18
|
The application will pause at socket.connect and handle events from Pusher as they happen.
|
17
19
|
|
18
20
|
require 'pusher-client'
|
19
|
-
PusherClient.logger = Logger.new(STDOUT)
|
20
21
|
options = {:secret => 'YOUR_APPLICATION_SECRET'}
|
21
22
|
socket = PusherClient::Socket.new(YOUR_APPLICATION_KEY, options)
|
22
23
|
|
@@ -30,6 +31,9 @@ The application will pause at socket.connect and handle events from Pusher as th
|
|
30
31
|
# Subscribe to private channel
|
31
32
|
socket.subscribe('private-channel4', USER_ID)
|
32
33
|
|
34
|
+
# Subscribe to presence channel with custom data (user_id is mandatory)
|
35
|
+
socket.subscribe('presence-channel5', :user_id => USER_ID, :user_name => 'john')
|
36
|
+
|
33
37
|
# Bind to a global event (can occur on either channel1 or channel2)
|
34
38
|
socket.bind('globalevent') do |data|
|
35
39
|
puts data
|
@@ -47,7 +51,6 @@ The socket will remain open in the background as long as your main application t
|
|
47
51
|
and you can continue to subscribe/unsubscribe to channels and bind new events.
|
48
52
|
|
49
53
|
require 'pusher-client'
|
50
|
-
PusherClient.logger = Logger.new(STDOUT)
|
51
54
|
socket = PusherClient::Socket.new(YOUR_APPLICATION_KEY)
|
52
55
|
socket.connect(true) # Connect asynchronously
|
53
56
|
|
data/Rakefile
CHANGED
@@ -1,13 +1,4 @@
|
|
1
|
-
require
|
2
|
-
require 'bundler'
|
3
|
-
begin
|
4
|
-
Bundler.setup(:default, :development)
|
5
|
-
rescue Bundler::BundlerError => e
|
6
|
-
$stderr.puts e.message
|
7
|
-
$stderr.puts "Run `bundle install` to install missing gems"
|
8
|
-
exit e.status_code
|
9
|
-
end
|
10
|
-
require 'rake'
|
1
|
+
require "bundler/gem_tasks"
|
11
2
|
|
12
3
|
require 'rake/testtask'
|
13
4
|
Rake::TestTask.new(:test) do |test|
|
@@ -16,4 +7,4 @@ Rake::TestTask.new(:test) do |test|
|
|
16
7
|
test.verbose = true
|
17
8
|
end
|
18
9
|
|
19
|
-
task :default => :test
|
10
|
+
task :default => :test
|
data/certs/cacert.pem
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
##
|
2
2
|
## ca-bundle.crt -- Bundle of CA Root Certificates
|
3
3
|
##
|
4
|
-
## Certificate data from Mozilla as of:
|
4
|
+
## Certificate data from Mozilla as of: Sat Dec 29 20:03:40 2012
|
5
5
|
##
|
6
6
|
## This is a bundle of X.509 certificates of public Certificate Authorities
|
7
7
|
## (CA). These were automatically extracted from Mozilla's root certificates
|
@@ -14,7 +14,7 @@
|
|
14
14
|
## Just configure this file as the SSLCACertificateFile.
|
15
15
|
##
|
16
16
|
|
17
|
-
# @(#) $RCSfile: certdata.txt,v $ $Revision: 1.
|
17
|
+
# @(#) $RCSfile: certdata.txt,v $ $Revision: 1.87 $ $Date: 2012/12/29 16:32:45 $
|
18
18
|
|
19
19
|
GTE CyberTrust Global Root
|
20
20
|
==========================
|
@@ -147,44 +147,6 @@ WM1pF+NEHJwZRDmJXNycAA9WjQKZ7aKQRUzkuxCkPfAyAw7xzvjoyVGM5mKf5p/AfbdynMk2Omuf
|
|
147
147
|
Tqj/ZA1k
|
148
148
|
-----END CERTIFICATE-----
|
149
149
|
|
150
|
-
Verisign Class 1 Public Primary Certification Authority - G2
|
151
|
-
============================================================
|
152
|
-
-----BEGIN CERTIFICATE-----
|
153
|
-
MIIDAjCCAmsCEEzH6qqYPnHTkxD4PTqJkZIwDQYJKoZIhvcNAQEFBQAwgcExCzAJBgNVBAYTAlVT
|
154
|
-
MRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoGA1UECxMzQ2xhc3MgMSBQdWJsaWMgUHJpbWFy
|
155
|
-
eSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcyMTowOAYDVQQLEzEoYykgMTk5OCBWZXJpU2ln
|
156
|
-
biwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MR8wHQYDVQQLExZWZXJpU2lnbiBUcnVz
|
157
|
-
dCBOZXR3b3JrMB4XDTk4MDUxODAwMDAwMFoXDTI4MDgwMTIzNTk1OVowgcExCzAJBgNVBAYTAlVT
|
158
|
-
MRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoGA1UECxMzQ2xhc3MgMSBQdWJsaWMgUHJpbWFy
|
159
|
-
eSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcyMTowOAYDVQQLEzEoYykgMTk5OCBWZXJpU2ln
|
160
|
-
biwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MR8wHQYDVQQLExZWZXJpU2lnbiBUcnVz
|
161
|
-
dCBOZXR3b3JrMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCq0Lq+Fi24g9TK0g+8djHKlNgd
|
162
|
-
k4xWArzZbxpvUjZudVYKVdPfQ4chEWWKfo+9Id5rMj8bhDSVBZ1BNeuS65bdqlk/AVNtmU/t5eIq
|
163
|
-
WpDBucSmFc/IReumXY6cPvBkJHalzasab7bYe1FhbqZ/h8jit+U03EGI6glAvnOSPWvndQIDAQAB
|
164
|
-
MA0GCSqGSIb3DQEBBQUAA4GBAKlPww3HZ74sy9mozS11534Vnjty637rXC0Jh9ZrbWB85a7FkCMM
|
165
|
-
XErQr7Fd88e2CtvgFZMN3QO8x3aKtd1Pw5sTdbgBwObJW2uluIncrKTdcu1OofdPvAbT6shkdHvC
|
166
|
-
lUGcZXNY8ZCaPGqxmMnEh7zPRW1F4m4iP/68DzFc6PLZ
|
167
|
-
-----END CERTIFICATE-----
|
168
|
-
|
169
|
-
Verisign Class 2 Public Primary Certification Authority - G2
|
170
|
-
============================================================
|
171
|
-
-----BEGIN CERTIFICATE-----
|
172
|
-
MIIDAzCCAmwCEQC5L2DMiJ+hekYJuFtwbIqvMA0GCSqGSIb3DQEBBQUAMIHBMQswCQYDVQQGEwJV
|
173
|
-
UzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xPDA6BgNVBAsTM0NsYXNzIDIgUHVibGljIFByaW1h
|
174
|
-
cnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBHMjE6MDgGA1UECxMxKGMpIDE5OTggVmVyaVNp
|
175
|
-
Z24sIEluYy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTEfMB0GA1UECxMWVmVyaVNpZ24gVHJ1
|
176
|
-
c3QgTmV0d29yazAeFw05ODA1MTgwMDAwMDBaFw0yODA4MDEyMzU5NTlaMIHBMQswCQYDVQQGEwJV
|
177
|
-
UzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xPDA6BgNVBAsTM0NsYXNzIDIgUHVibGljIFByaW1h
|
178
|
-
cnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBHMjE6MDgGA1UECxMxKGMpIDE5OTggVmVyaVNp
|
179
|
-
Z24sIEluYy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTEfMB0GA1UECxMWVmVyaVNpZ24gVHJ1
|
180
|
-
c3QgTmV0d29yazCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAp4gBIXQs5xoD8JjhlzwPIQjx
|
181
|
-
nNuX6Zr8wgQGE75fUsjMHiwSViy4AWkszJkfrbCWrnkE8hM5wXuYuggs6MKEEyyqaekJ9MepAqRC
|
182
|
-
wiNPStjwDqL7MWzJ5m+ZJwf15vRMeJ5t60aG+rmGyVTyssSv1EYcWskVMP8NbPUtDm3Of3cCAwEA
|
183
|
-
ATANBgkqhkiG9w0BAQUFAAOBgQByLvl/0fFx+8Se9sVeUYpAmLho+Jscg9jinb3/7aHmZuovCfTK
|
184
|
-
1+qlK5X2JGCGTUQug6XELaDTrnhpb3LabK4I8GOSN+a7xDAXrXfMSTWqz9iP0b63GJZHc2pUIjRk
|
185
|
-
LbYWm1lbtFFZOrMLFPQS32eg9K0yZF6xRnInjBJ7xUS0rg==
|
186
|
-
-----END CERTIFICATE-----
|
187
|
-
|
188
150
|
Verisign Class 3 Public Primary Certification Authority - G2
|
189
151
|
============================================================
|
190
152
|
-----BEGIN CERTIFICATE-----
|
@@ -304,54 +266,6 @@ V9+vqDWzf4mH6eglkrh/hXqu1rweN1gqZ8mRzyqBPu3GOd/APhmcGcwTTYJBtYze4D1gCCAPRX5r
|
|
304
266
|
on+jjBXu
|
305
267
|
-----END CERTIFICATE-----
|
306
268
|
|
307
|
-
Verisign Class 1 Public Primary Certification Authority - G3
|
308
|
-
============================================================
|
309
|
-
-----BEGIN CERTIFICATE-----
|
310
|
-
MIIEGjCCAwICEQCLW3VWhFSFCwDPrzhIzrGkMA0GCSqGSIb3DQEBBQUAMIHKMQswCQYDVQQGEwJV
|
311
|
-
UzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRydXN0IE5ldHdv
|
312
|
-
cmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWduLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNl
|
313
|
-
IG9ubHkxRTBDBgNVBAMTPFZlcmlTaWduIENsYXNzIDEgUHVibGljIFByaW1hcnkgQ2VydGlmaWNh
|
314
|
-
dGlvbiBBdXRob3JpdHkgLSBHMzAeFw05OTEwMDEwMDAwMDBaFw0zNjA3MTYyMzU5NTlaMIHKMQsw
|
315
|
-
CQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRy
|
316
|
-
dXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWduLCBJbmMuIC0gRm9yIGF1dGhv
|
317
|
-
cml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlTaWduIENsYXNzIDEgUHVibGljIFByaW1hcnkg
|
318
|
-
Q2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
|
319
|
-
ggEBAN2E1Lm0+afY8wR4nN493GwTFtl63SRRZsDHJlkNrAYIwpTRMx/wgzUfbhvI3qpuFU5UJ+/E
|
320
|
-
bRrsC+MO8ESlV8dAWB6jRx9x7GD2bZTIGDnt/kIYVt/kTEkQeE4BdjVjEjbdZrwBBDajVWjVojYJ
|
321
|
-
rKshJlQGrT/KFOCsyq0GHZXi+J3x4GD/wn91K0zM2v6HmSHquv4+VNfSWXjbPG7PoBMAGrgnoeS+
|
322
|
-
Z5bKoMWznN3JdZ7rMJpfo83ZrngZPyPpXNspva1VyBtUjGP26KbqxzcSXKMpHgLZ2x87tNcPVkeB
|
323
|
-
FQRKr4Mn0cVYiMHd9qqnoxjaaKptEVHhv2Vrn5Z20T0CAwEAATANBgkqhkiG9w0BAQUFAAOCAQEA
|
324
|
-
q2aN17O6x5q25lXQBfGfMY1aqtmqRiYPce2lrVNWYgFHKkTp/j90CxObufRNG7LRX7K20ohcs5/N
|
325
|
-
y9Sn2WCVhDr4wTcdYcrnsMXlkdpUpqwxga6X3s0IrLjAl4B/bnKk52kTlWUfxJM8/XmPBNQ+T+r3
|
326
|
-
ns7NZ3xPZQL/kYVUc8f/NveGLezQXk//EZ9yBta4GvFMDSZl4kSAHsef493oCtrspSCAaWihT37h
|
327
|
-
a88HQfqDjrw43bAuEbFrskLMmrz5SCJ5ShkPshw+IHTZasO+8ih4E1Z5T21Q6huwtVexN2ZYI/Pc
|
328
|
-
D98Kh8TvhgXVOBRgmaNL3gaWcSzy27YfpO8/7g==
|
329
|
-
-----END CERTIFICATE-----
|
330
|
-
|
331
|
-
Verisign Class 2 Public Primary Certification Authority - G3
|
332
|
-
============================================================
|
333
|
-
-----BEGIN CERTIFICATE-----
|
334
|
-
MIIEGTCCAwECEGFwy0mMX5hFKeewptlQW3owDQYJKoZIhvcNAQEFBQAwgcoxCzAJBgNVBAYTAlVT
|
335
|
-
MRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEfMB0GA1UECxMWVmVyaVNpZ24gVHJ1c3QgTmV0d29y
|
336
|
-
azE6MDgGA1UECxMxKGMpIDE5OTkgVmVyaVNpZ24sIEluYy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ug
|
337
|
-
b25seTFFMEMGA1UEAxM8VmVyaVNpZ24gQ2xhc3MgMiBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZpY2F0
|
338
|
-
aW9uIEF1dGhvcml0eSAtIEczMB4XDTk5MTAwMTAwMDAwMFoXDTM2MDcxNjIzNTk1OVowgcoxCzAJ
|
339
|
-
BgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEfMB0GA1UECxMWVmVyaVNpZ24gVHJ1
|
340
|
-
c3QgTmV0d29yazE6MDgGA1UECxMxKGMpIDE5OTkgVmVyaVNpZ24sIEluYy4gLSBGb3IgYXV0aG9y
|
341
|
-
aXplZCB1c2Ugb25seTFFMEMGA1UEAxM8VmVyaVNpZ24gQ2xhc3MgMiBQdWJsaWMgUHJpbWFyeSBD
|
342
|
-
ZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEczMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
|
343
|
-
AQEArwoNwtUs22e5LeWUJ92lvuCwTY+zYVY81nzD9M0+hsuiiOLh2KRpxbXiv8GmR1BeRjmL1Za6
|
344
|
-
tW8UvxDOJxOeBUebMXoT2B/Z0wI3i60sR/COgQanDTAM6/c8DyAd3HJG7qUCyFvDyVZpTMUYwZF7
|
345
|
-
C9UTAJu878NIPkZgIIUq1ZC2zYugzDLdt/1AVbJQHFauzI13TccgTacxdu9okoqQHgiBVrKtaaNS
|
346
|
-
0MscxCM9H5n+TOgWY47GCI72MfbS+uV23bUckqNJzc0BzWjNqWm6o+sdDZykIKbBoMXRRkwXbdKs
|
347
|
-
Zj+WjOCE1Db/IlnF+RFgqF8EffIa9iVCYQ/ESrg+iQIDAQABMA0GCSqGSIb3DQEBBQUAA4IBAQA0
|
348
|
-
JhU8wI1NQ0kdvekhktdmnLfexbjQ5F1fdiLAJvmEOjr5jLX77GDx6M4EsMjdpwOPMPOY36TmpDHf
|
349
|
-
0xwLRtxyID+u7gU8pDM/CzmscHhzS5kr3zDCVLCoO1Wh/hYozUK9dG6A2ydEp85EXdQbkJgNHkKU
|
350
|
-
sQAsBNB0owIFImNjzYO1+8FtYmtpdf1dcEG59b98377BMnMiIYtYgXsVkXq642RIsH/7NiXaldDx
|
351
|
-
JBQX3RiAa0YjOVT1jmIJBB2UkKab5iXiQkWquJCtvgiPqQtCGJTPcjnhsUPgKM+351psE2tJs//j
|
352
|
-
GHyJizNdrDPXp/naOlXJWBD5qu9ats9LS98q
|
353
|
-
-----END CERTIFICATE-----
|
354
|
-
|
355
269
|
Verisign Class 3 Public Primary Certification Authority - G3
|
356
270
|
============================================================
|
357
271
|
-----BEGIN CERTIFICATE-----
|
@@ -772,31 +686,6 @@ gn2Z9DH2canPLAEnpQW5qrJITirvn5NSUZU8UnOOVkwXQMAJKOSLakhT2+zNVVXxxvjpoixMptEm
|
|
772
686
|
X36vWkzaH6byHCx+rgIW0lbQL1dTR+iS
|
773
687
|
-----END CERTIFICATE-----
|
774
688
|
|
775
|
-
UTN-USER First-Network Applications
|
776
|
-
===================================
|
777
|
-
-----BEGIN CERTIFICATE-----
|
778
|
-
MIIEZDCCA0ygAwIBAgIQRL4Mi1AAJLQR0zYwS8AzdzANBgkqhkiG9w0BAQUFADCBozELMAkGA1UE
|
779
|
-
BhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5TYWx0IExha2UgQ2l0eTEeMBwGA1UEChMVVGhl
|
780
|
-
IFVTRVJUUlVTVCBOZXR3b3JrMSEwHwYDVQQLExhodHRwOi8vd3d3LnVzZXJ0cnVzdC5jb20xKzAp
|
781
|
-
BgNVBAMTIlVUTi1VU0VSRmlyc3QtTmV0d29yayBBcHBsaWNhdGlvbnMwHhcNOTkwNzA5MTg0ODM5
|
782
|
-
WhcNMTkwNzA5MTg1NzQ5WjCBozELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5T
|
783
|
-
YWx0IExha2UgQ2l0eTEeMBwGA1UEChMVVGhlIFVTRVJUUlVTVCBOZXR3b3JrMSEwHwYDVQQLExho
|
784
|
-
dHRwOi8vd3d3LnVzZXJ0cnVzdC5jb20xKzApBgNVBAMTIlVUTi1VU0VSRmlyc3QtTmV0d29yayBB
|
785
|
-
cHBsaWNhdGlvbnMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCz+5Gh5DZVhawGNFug
|
786
|
-
mliy+LUPBXeDrjKxdpJo7CNKyXY/45y2N3kDuatpjQclthln5LAbGHNhSuh+zdMvZOOmfAz6F4Cj
|
787
|
-
DUeJT1FxL+78P/m4FoCHiZMlIJpDgmkkdihZNaEdwH+DBmQWICzTSaSFtMBhf1EI+GgVkYDLpdXu
|
788
|
-
Ozr0hAReYFmnjDRy7rh4xdE7EkpvfmUnuaRVxblvQ6TFHSyZwFKkeEwVs0CYCGtDxgGwenv1axwi
|
789
|
-
P8vv/6jQOkt2FZ7S0cYu49tXGzKiuG/ohqY/cKvlcJKrRB5AUPuco2LkbG6gyN7igEL66S/ozjIE
|
790
|
-
j3yNtxyjNTwV3Z7DrpelAgMBAAGjgZEwgY4wCwYDVR0PBAQDAgHGMA8GA1UdEwEB/wQFMAMBAf8w
|
791
|
-
HQYDVR0OBBYEFPqGydvguul49Uuo1hXf8NPhahQ8ME8GA1UdHwRIMEYwRKBCoECGPmh0dHA6Ly9j
|
792
|
-
cmwudXNlcnRydXN0LmNvbS9VVE4tVVNFUkZpcnN0LU5ldHdvcmtBcHBsaWNhdGlvbnMuY3JsMA0G
|
793
|
-
CSqGSIb3DQEBBQUAA4IBAQCk8yXM0dSRgyLQzDKrm5ZONJFUICU0YV8qAhXhi6r/fWRRzwr/vH3Y
|
794
|
-
IWp4yy9Rb/hCHTO967V7lMPDqaAt39EpHx3+jz+7qEUqf9FuVSTiuwL7MT++6LzsQCv4AdRWOOTK
|
795
|
-
RIK1YSAhZ2X28AvnNPilwpyjXEAfhZOVBt5P1CeptqX8Fs1zMT+4ZSfP1FMa8Kxun08FDAOBp4Qp
|
796
|
-
xFq9ZFdyrTvPNximmMatBrTcCKME1SmklpoSZ0qMYEWd8SOasACcaLWYUNPvji6SZbFIPiG+FTAq
|
797
|
-
DbUMo2s/rn9X9R+WfN9v3YIwLGUbQErNaLly7HF27FSOH4UMAWr6pjisH8SE
|
798
|
-
-----END CERTIFICATE-----
|
799
|
-
|
800
689
|
America Online Root Certification Authority 1
|
801
690
|
=============================================
|
802
691
|
-----BEGIN CERTIFICATE-----
|
@@ -1084,26 +973,6 @@ s58+OmJYxUmtYg5xpTKqL8aJdkNAExNnPaJUJRDL8Try2frbSVa7pv6nQTXD4IhhyYjH3zYQIphZ
|
|
1084
973
|
FL39vmwLAw==
|
1085
974
|
-----END CERTIFICATE-----
|
1086
975
|
|
1087
|
-
Sonera Class 1 Root CA
|
1088
|
-
======================
|
1089
|
-
-----BEGIN CERTIFICATE-----
|
1090
|
-
MIIDIDCCAgigAwIBAgIBJDANBgkqhkiG9w0BAQUFADA5MQswCQYDVQQGEwJGSTEPMA0GA1UEChMG
|
1091
|
-
U29uZXJhMRkwFwYDVQQDExBTb25lcmEgQ2xhc3MxIENBMB4XDTAxMDQwNjEwNDkxM1oXDTIxMDQw
|
1092
|
-
NjEwNDkxM1owOTELMAkGA1UEBhMCRkkxDzANBgNVBAoTBlNvbmVyYTEZMBcGA1UEAxMQU29uZXJh
|
1093
|
-
IENsYXNzMSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALWJHytPZwp5/8Ue+H88
|
1094
|
-
7dF+2rDNbS82rDTG29lkFwhjMDMiikzujrsPDUJVyZ0upe/3p4zDq7mXy47vPxVnqIJyY1MPQYx9
|
1095
|
-
EJUkoVqlBvqSV536pQHydekfvFYmUk54GWVYVQNYwBSujHxVX3BbdyMGNpfzJLWaRpXk3w0LBUXl
|
1096
|
-
0fIdgrvGE+D+qnr9aTCU89JFhfzyMlsy3uhsXR/LpCJ0sICOXZT3BgBLqdReLjVQCfOAl/QMF645
|
1097
|
-
2F/NM8EcyonCIvdFEu1eEpOdY6uCLrnrQkFEy0oaAIINnvmLVz5MxxftLItyM19yejhW1ebZrgUa
|
1098
|
-
HXVFsculJRwSVzb9IjcCAwEAAaMzMDEwDwYDVR0TAQH/BAUwAwEB/zARBgNVHQ4ECgQIR+IMi/ZT
|
1099
|
-
iFIwCwYDVR0PBAQDAgEGMA0GCSqGSIb3DQEBBQUAA4IBAQCLGrLJXWG04bkruVPRsoWdd44W7hE9
|
1100
|
-
28Jj2VuXZfsSZ9gqXLar5V7DtxYvyOirHYr9qxp81V9jz9yw3Xe5qObSIjiHBxTZ/75Wtf0HDjxV
|
1101
|
-
yhbMp6Z3N/vbXB9OWQaHowND9Rart4S9Tu+fMTfwRvFAttEMpWT4Y14h21VOTzF2nBBhjrZTOqMR
|
1102
|
-
vq9tfB69ri3iDGnHhVNoomG6xT60eVR4ngrHAr5i0RGCS2UvkVrCqIexVmiUefkl98HVrhq4uz2P
|
1103
|
-
qYo4Ffdz0Fpg0YCw8NzVUM1O7pJIae2yIx4wzMiUyLb1O4Z/P6Yun/Y+LLWSlj7fLJOK/4GMDw9Z
|
1104
|
-
IRlXvVWa
|
1105
|
-
-----END CERTIFICATE-----
|
1106
|
-
|
1107
976
|
Sonera Class 2 Root CA
|
1108
977
|
======================
|
1109
978
|
-----BEGIN CERTIFICATE-----
|
@@ -1170,34 +1039,6 @@ O0ESm70NRyN/PErQr8Cv9u8btRXE64PECV90i9kR+8JWsTz4cMo0jUNAE4z9mQNUecYu6oah9jrU
|
|
1170
1039
|
Cbz0vGbMPVjQV0kK7iXiQe4T+Zs4NNEA9X7nlB38aQNiuJkFBT1reBK9sG9l
|
1171
1040
|
-----END CERTIFICATE-----
|
1172
1041
|
|
1173
|
-
TDC OCES Root CA
|
1174
|
-
================
|
1175
|
-
-----BEGIN CERTIFICATE-----
|
1176
|
-
MIIFGTCCBAGgAwIBAgIEPki9xDANBgkqhkiG9w0BAQUFADAxMQswCQYDVQQGEwJESzEMMAoGA1UE
|
1177
|
-
ChMDVERDMRQwEgYDVQQDEwtUREMgT0NFUyBDQTAeFw0wMzAyMTEwODM5MzBaFw0zNzAyMTEwOTA5
|
1178
|
-
MzBaMDExCzAJBgNVBAYTAkRLMQwwCgYDVQQKEwNUREMxFDASBgNVBAMTC1REQyBPQ0VTIENBMIIB
|
1179
|
-
IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArGL2YSCyz8DGhdfjeebM7fI5kqSXLmSjhFuH
|
1180
|
-
nEz9pPPEXyG9VhDr2y5h7JNp46PMvZnDBfwGuMo2HP6QjklMxFaaL1a8z3sM8W9Hpg1DTeLpHTk0
|
1181
|
-
zY0s2RKY+ePhwUp8hjjEqcRhiNJerxomTdXkoCJHhNlktxmW/OwZ5LKXJk5KTMuPJItUGBxIYXvV
|
1182
|
-
iGjaXbXqzRowwYCDdlCqT9HU3Tjw7xb04QxQBr/q+3pJoSgrHPb8FTKjdGqPqcNiKXEx5TukYBde
|
1183
|
-
dObaE+3pHx8b0bJoc8YQNHVGEBDjkAB2QMuLt0MJIf+rTpPGWOmlgtt3xDqZsXKVSQTwtyv6e1mO
|
1184
|
-
3QIDAQABo4ICNzCCAjMwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwgewGA1UdIASB
|
1185
|
-
5DCB4TCB3gYIKoFQgSkBAQEwgdEwLwYIKwYBBQUHAgEWI2h0dHA6Ly93d3cuY2VydGlmaWthdC5k
|
1186
|
-
ay9yZXBvc2l0b3J5MIGdBggrBgEFBQcCAjCBkDAKFgNUREMwAwIBARqBgUNlcnRpZmlrYXRlciBm
|
1187
|
-
cmEgZGVubmUgQ0EgdWRzdGVkZXMgdW5kZXIgT0lEIDEuMi4yMDguMTY5LjEuMS4xLiBDZXJ0aWZp
|
1188
|
-
Y2F0ZXMgZnJvbSB0aGlzIENBIGFyZSBpc3N1ZWQgdW5kZXIgT0lEIDEuMi4yMDguMTY5LjEuMS4x
|
1189
|
-
LjARBglghkgBhvhCAQEEBAMCAAcwgYEGA1UdHwR6MHgwSKBGoESkQjBAMQswCQYDVQQGEwJESzEM
|
1190
|
-
MAoGA1UEChMDVERDMRQwEgYDVQQDEwtUREMgT0NFUyBDQTENMAsGA1UEAxMEQ1JMMTAsoCqgKIYm
|
1191
|
-
aHR0cDovL2NybC5vY2VzLmNlcnRpZmlrYXQuZGsvb2Nlcy5jcmwwKwYDVR0QBCQwIoAPMjAwMzAy
|
1192
|
-
MTEwODM5MzBagQ8yMDM3MDIxMTA5MDkzMFowHwYDVR0jBBgwFoAUYLWF7FZkfhIZJ2cdUBVLc647
|
1193
|
-
+RIwHQYDVR0OBBYEFGC1hexWZH4SGSdnHVAVS3OuO/kSMB0GCSqGSIb2fQdBAAQQMA4bCFY2LjA6
|
1194
|
-
NC4wAwIEkDANBgkqhkiG9w0BAQUFAAOCAQEACromJkbTc6gJ82sLMJn9iuFXehHTuJTXCRBuo7E4
|
1195
|
-
A9G28kNBKWKnctj7fAXmMXAnVBhOinxO5dHKjHiIzxvTkIvmI/gLDjNDfZziChmPyQE+dF10yYsc
|
1196
|
-
A+UYyAFMP8uXBV2YcaaYb7Z8vTd/vuGTJW1v8AqtFxjhA7wHKcitJuj4YfD9IQl+mo6paH1IYnK9
|
1197
|
-
AOoBmbgGglGBTvH1tJFUuSN6AJqfXY3gPGS5GhKSKseCRHI53OI8xthV9RVOyAUO28bQYqbsFbS1
|
1198
|
-
AoLbrIyigfCbmTH1ICCoiGEKB5+U/NDXG8wuF/MEJ3Zn61SD/aSQfgY9BKNDLdr8C2LqL19iUw==
|
1199
|
-
-----END CERTIFICATE-----
|
1200
|
-
|
1201
1042
|
UTN DATACorp SGC Root CA
|
1202
1043
|
========================
|
1203
1044
|
-----BEGIN CERTIFICATE-----
|
@@ -1223,32 +1064,6 @@ EZ4du5A/EkdOjtd+D2JzHVImOBwYSf0wdJrE5SIv2MCN7ZF6TACPcn9d2t0bi0Vr591pl6jFVkwP
|
|
1223
1064
|
DPafepE39peC4N1xaf92P2BNPM/3mfnGV/TJVTl4uix5yaaIK/QI
|
1224
1065
|
-----END CERTIFICATE-----
|
1225
1066
|
|
1226
|
-
UTN USERFirst Email Root CA
|
1227
|
-
===========================
|
1228
|
-
-----BEGIN CERTIFICATE-----
|
1229
|
-
MIIEojCCA4qgAwIBAgIQRL4Mi1AAJLQR0zYlJWfJiTANBgkqhkiG9w0BAQUFADCBrjELMAkGA1UE
|
1230
|
-
BhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5TYWx0IExha2UgQ2l0eTEeMBwGA1UEChMVVGhl
|
1231
|
-
IFVTRVJUUlVTVCBOZXR3b3JrMSEwHwYDVQQLExhodHRwOi8vd3d3LnVzZXJ0cnVzdC5jb20xNjA0
|
1232
|
-
BgNVBAMTLVVUTi1VU0VSRmlyc3QtQ2xpZW50IEF1dGhlbnRpY2F0aW9uIGFuZCBFbWFpbDAeFw05
|
1233
|
-
OTA3MDkxNzI4NTBaFw0xOTA3MDkxNzM2NThaMIGuMQswCQYDVQQGEwJVUzELMAkGA1UECBMCVVQx
|
1234
|
-
FzAVBgNVBAcTDlNhbHQgTGFrZSBDaXR5MR4wHAYDVQQKExVUaGUgVVNFUlRSVVNUIE5ldHdvcmsx
|
1235
|
-
ITAfBgNVBAsTGGh0dHA6Ly93d3cudXNlcnRydXN0LmNvbTE2MDQGA1UEAxMtVVROLVVTRVJGaXJz
|
1236
|
-
dC1DbGllbnQgQXV0aGVudGljYXRpb24gYW5kIEVtYWlsMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A
|
1237
|
-
MIIBCgKCAQEAsjmFpPJ9q0E7YkY3rs3BYHW8OWX5ShpHornMSMxqmNVNNRm5pELlzkniii8efNIx
|
1238
|
-
B8dOtINknS4p1aJkxIW9hVE1eaROaJB7HHqkkqgX8pgV8pPMyaQylbsMTzC9mKALi+VuG6JG+ni8
|
1239
|
-
om+rWV6lL8/K2m2qL+usobNqqrcuZzWLeeEeaYji5kbNoKXqvgvOdjp6Dpvq/NonWz1zHyLmSGHG
|
1240
|
-
TPNpsaguG7bUMSAsvIKKjqQOpdeJQ/wWWq8dcdcRWdq6hw2v+vPhwvCkxWeM1tZUOt4KpLoDd7Nl
|
1241
|
-
yP0e03RiqhjKaJMeoYV+9Udly/hNVyh00jT/MLbu9mIwFIws6wIDAQABo4G5MIG2MAsGA1UdDwQE
|
1242
|
-
AwIBxjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBSJgmd9xJ0mcABLtFBIfN49rgRufTBYBgNV
|
1243
|
-
HR8EUTBPME2gS6BJhkdodHRwOi8vY3JsLnVzZXJ0cnVzdC5jb20vVVROLVVTRVJGaXJzdC1DbGll
|
1244
|
-
bnRBdXRoZW50aWNhdGlvbmFuZEVtYWlsLmNybDAdBgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUH
|
1245
|
-
AwQwDQYJKoZIhvcNAQEFBQADggEBALFtYV2mGn98q0rkMPxTbyUkxsrt4jFcKw7u7mFVbwQ+zzne
|
1246
|
-
xRtJlOTrIEy05p5QLnLZjfWqo7NK2lYcYJeA3IKirUq9iiv/Cwm0xtcgBEXkzYABurorbs6q15L+
|
1247
|
-
5K/r9CYdFip/bDCVNy8zEqx/3cfREYxRmLLQo5HQrfafnoOTHh1CuEava2bwm3/q4wMC5QJRwarV
|
1248
|
-
NZ1yQAOJujEdxRBoUp7fooXFXAimeOZTT7Hot9MUnpOmw2TjrH5xzbyf6QMbzPvprDHBr3wVdAKZ
|
1249
|
-
w7JHpsIyYdfHb0gkUSeh1YdV8nuPmD0Wnu51tvjQjvLzxq4oW6fw8zYX/MMF08oDSlQ=
|
1250
|
-
-----END CERTIFICATE-----
|
1251
|
-
|
1252
1067
|
UTN USERFirst Hardware Root CA
|
1253
1068
|
==============================
|
1254
1069
|
-----BEGIN CERTIFICATE-----
|
@@ -1275,31 +1090,6 @@ iCrVWFCVH/A7HFe7fRQ5YiuayZSSKqMiDP+JJn1fIytH1xUdqWqeUQ0qUZ6B+dQ7XnASfxAynB67
|
|
1275
1090
|
nfhmqA==
|
1276
1091
|
-----END CERTIFICATE-----
|
1277
1092
|
|
1278
|
-
UTN USERFirst Object Root CA
|
1279
|
-
============================
|
1280
|
-
-----BEGIN CERTIFICATE-----
|
1281
|
-
MIIEZjCCA06gAwIBAgIQRL4Mi1AAJLQR0zYt4LNfGzANBgkqhkiG9w0BAQUFADCBlTELMAkGA1UE
|
1282
|
-
BhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5TYWx0IExha2UgQ2l0eTEeMBwGA1UEChMVVGhl
|
1283
|
-
IFVTRVJUUlVTVCBOZXR3b3JrMSEwHwYDVQQLExhodHRwOi8vd3d3LnVzZXJ0cnVzdC5jb20xHTAb
|
1284
|
-
BgNVBAMTFFVUTi1VU0VSRmlyc3QtT2JqZWN0MB4XDTk5MDcwOTE4MzEyMFoXDTE5MDcwOTE4NDAz
|
1285
|
-
NlowgZUxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJVVDEXMBUGA1UEBxMOU2FsdCBMYWtlIENpdHkx
|
1286
|
-
HjAcBgNVBAoTFVRoZSBVU0VSVFJVU1QgTmV0d29yazEhMB8GA1UECxMYaHR0cDovL3d3dy51c2Vy
|
1287
|
-
dHJ1c3QuY29tMR0wGwYDVQQDExRVVE4tVVNFUkZpcnN0LU9iamVjdDCCASIwDQYJKoZIhvcNAQEB
|
1288
|
-
BQADggEPADCCAQoCggEBAM6qgT+jo2F4qjEAVZURnicPHxzfOpuCaDDASmEd8S8O+r5596Uj71VR
|
1289
|
-
loTN2+O5bj4x2AogZ8f02b+U60cEPgLOKqJdhwQJ9jCdGIqXsqoc/EHSoTbL+z2RuufZcDX65OeQ
|
1290
|
-
w5ujm9M89RKZd7G3CeBo5hy485RjiGpq/gt2yb70IuRnuasaXnfBhQfdDWy/7gbHd2pBnqcP1/vu
|
1291
|
-
lBe3/IW+pKvEHDHd17bR5PDv3xaPslKT16HUiaEHLr/hARJCHhrh2JU022R5KP+6LhHC5ehbkkj7
|
1292
|
-
RwvCbNqtMoNB86XlQXD9ZZBt+vpRxPm9lisZBCzTbafc8H9vg2XiaquHhnUCAwEAAaOBrzCBrDAL
|
1293
|
-
BgNVHQ8EBAMCAcYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQU2u1kdBScFDyr3ZmpvVsoTYs8
|
1294
|
-
ydgwQgYDVR0fBDswOTA3oDWgM4YxaHR0cDovL2NybC51c2VydHJ1c3QuY29tL1VUTi1VU0VSRmly
|
1295
|
-
c3QtT2JqZWN0LmNybDApBgNVHSUEIjAgBggrBgEFBQcDAwYIKwYBBQUHAwgGCisGAQQBgjcKAwQw
|
1296
|
-
DQYJKoZIhvcNAQEFBQADggEBAAgfUrE3RHjb/c652pWWmKpVZIC1WkDdIaXFwfNfLEzIR1pp6ujw
|
1297
|
-
NTX00CXzyKakh0q9G7FzCL3Uw8q2NbtZhncxzaeAFK4T7/yxSPlrJSUtUbYsbUXBmMiKVl0+7kNO
|
1298
|
-
PmsnjtA6S4ULX9Ptaqd1y9Fahy85dRNacrACgZ++8A+EVCBibGnU4U3GDZlDAQ0Slox4nb9QorFE
|
1299
|
-
qmrPF3rPbw/U+CRVX/A0FklmPlBGyWNxODFiuGK581OtbLUrohKqGU8J2l7nk8aOFAj+8DCAGKCG
|
1300
|
-
hU3IfdeLA/5u1fedFqySLKAj5ZyRUh+U3xeUc8OzwcFxBSAAeL0TUh2oPs0AH8g=
|
1301
|
-
-----END CERTIFICATE-----
|
1302
|
-
|
1303
1093
|
Camerfirma Chambers of Commerce Root
|
1304
1094
|
====================================
|
1305
1095
|
-----BEGIN CERTIFICATE-----
|
@@ -1354,42 +1144,6 @@ IBHNfTIzSJRUTN3cecQwn+uOuFW114hcxWokPbLTBQNRxgfvzBRydD1ucs4YKIxKoHflCStFREes
|
|
1354
1144
|
t2d/AYoFWpO+ocH/+OcOZ6RHSXZddZAa9SaP8A==
|
1355
1145
|
-----END CERTIFICATE-----
|
1356
1146
|
|
1357
|
-
NetLock Qualified (Class QA) Root
|
1358
|
-
=================================
|
1359
|
-
-----BEGIN CERTIFICATE-----
|
1360
|
-
MIIG0TCCBbmgAwIBAgIBezANBgkqhkiG9w0BAQUFADCByTELMAkGA1UEBhMCSFUxETAPBgNVBAcT
|
1361
|
-
CEJ1ZGFwZXN0MScwJQYDVQQKEx5OZXRMb2NrIEhhbG96YXRiaXp0b25zYWdpIEtmdC4xGjAYBgNV
|
1362
|
-
BAsTEVRhbnVzaXR2YW55a2lhZG9rMUIwQAYDVQQDEzlOZXRMb2NrIE1pbm9zaXRldHQgS296amVn
|
1363
|
-
eXpvaSAoQ2xhc3MgUUEpIFRhbnVzaXR2YW55a2lhZG8xHjAcBgkqhkiG9w0BCQEWD2luZm9AbmV0
|
1364
|
-
bG9jay5odTAeFw0wMzAzMzAwMTQ3MTFaFw0yMjEyMTUwMTQ3MTFaMIHJMQswCQYDVQQGEwJIVTER
|
1365
|
-
MA8GA1UEBxMIQnVkYXBlc3QxJzAlBgNVBAoTHk5ldExvY2sgSGFsb3phdGJpenRvbnNhZ2kgS2Z0
|
1366
|
-
LjEaMBgGA1UECxMRVGFudXNpdHZhbnlraWFkb2sxQjBABgNVBAMTOU5ldExvY2sgTWlub3NpdGV0
|
1367
|
-
dCBLb3pqZWd5em9pIChDbGFzcyBRQSkgVGFudXNpdHZhbnlraWFkbzEeMBwGCSqGSIb3DQEJARYP
|
1368
|
-
aW5mb0BuZXRsb2NrLmh1MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAx1Ilstg91IRV
|
1369
|
-
CacbvWy5FPSKAtt2/GoqeKvld/Bu4IwjZ9ulZJm53QE+b+8tmjwi8F3JV6BVQX/yQ15YglMxZc4e
|
1370
|
-
8ia6AFQer7C8HORSjKAyr7c3sVNnaHRnUPYtLmTeriZ539+Zhqurf4XsoPuAzPS4DB6TRWO53Lhb
|
1371
|
-
m+1bOdRfYrCnjnxmOCyqsQhjF2d9zL2z8cM/z1A57dEZgxXbhxInlrfa6uWdvLrqOU+L73Sa58XQ
|
1372
|
-
0uqGURzk/mQIKAR5BevKxXEOC++r6uwSEaEYBTJp0QwsGj0lmT+1fMptsK6ZmfoIYOcZwvK9UdPM
|
1373
|
-
0wKswREMgM6r3JSda6M5UzrWhQIDAMV9o4ICwDCCArwwEgYDVR0TAQH/BAgwBgEB/wIBBDAOBgNV
|
1374
|
-
HQ8BAf8EBAMCAQYwggJ1BglghkgBhvhCAQ0EggJmFoICYkZJR1lFTEVNISBFemVuIHRhbnVzaXR2
|
1375
|
-
YW55IGEgTmV0TG9jayBLZnQuIE1pbm9zaXRldHQgU3pvbGdhbHRhdGFzaSBTemFiYWx5emF0YWJh
|
1376
|
-
biBsZWlydCBlbGphcmFzb2sgYWxhcGphbiBrZXN6dWx0LiBBIG1pbm9zaXRldHQgZWxla3Ryb25p
|
1377
|
-
a3VzIGFsYWlyYXMgam9naGF0YXMgZXJ2ZW55ZXN1bGVzZW5laywgdmFsYW1pbnQgZWxmb2dhZGFz
|
1378
|
-
YW5hayBmZWx0ZXRlbGUgYSBNaW5vc2l0ZXR0IFN6b2xnYWx0YXRhc2kgU3phYmFseXphdGJhbiwg
|
1379
|
-
YXogQWx0YWxhbm9zIFN6ZXJ6b2Rlc2kgRmVsdGV0ZWxla2JlbiBlbG9pcnQgZWxsZW5vcnplc2kg
|
1380
|
-
ZWxqYXJhcyBtZWd0ZXRlbGUuIEEgZG9rdW1lbnR1bW9rIG1lZ3RhbGFsaGF0b2sgYSBodHRwczov
|
1381
|
-
L3d3dy5uZXRsb2NrLmh1L2RvY3MvIGNpbWVuIHZhZ3kga2VyaGV0b2sgYXogaW5mb0BuZXRsb2Nr
|
1382
|
-
Lm5ldCBlLW1haWwgY2ltZW4uIFdBUk5JTkchIFRoZSBpc3N1YW5jZSBhbmQgdGhlIHVzZSBvZiB0
|
1383
|
-
aGlzIGNlcnRpZmljYXRlIGFyZSBzdWJqZWN0IHRvIHRoZSBOZXRMb2NrIFF1YWxpZmllZCBDUFMg
|
1384
|
-
YXZhaWxhYmxlIGF0IGh0dHBzOi8vd3d3Lm5ldGxvY2suaHUvZG9jcy8gb3IgYnkgZS1tYWlsIGF0
|
1385
|
-
IGluZm9AbmV0bG9jay5uZXQwHQYDVR0OBBYEFAlqYhaSsFq7VQ7LdTI6MuWyIckoMA0GCSqGSIb3
|
1386
|
-
DQEBBQUAA4IBAQCRalCc23iBmz+LQuM7/KbD7kPgz/PigDVJRXYC4uMvBcXxKufAQTPGtpvQMznN
|
1387
|
-
wNuhrWw3AkxYQTvyl5LGSKjN5Yo5iWH5Upfpvfb5lHTocQ68d4bDBsxafEp+NFAwLvt/MpqNPfMg
|
1388
|
-
W/hqyobzMUwsWYACff44yTB1HLdV47yfuqhthCgFdbOLDcCRVCHnpgu0mfVRQdzNo0ci2ccBgcTc
|
1389
|
-
R08m6h/t280NmPSjnLRzMkqWmf68f8glWPhY83ZmiVSkpj7EUFy6iRiCdUgh0k8T6GB+B3bbELVR
|
1390
|
-
5qq5aKrN9p2QdRLqOBrKROi3macqaJVmlaut74nLYKkGEsaUR+ko
|
1391
|
-
-----END CERTIFICATE-----
|
1392
|
-
|
1393
1147
|
NetLock Notary (Class A) Root
|
1394
1148
|
=============================
|
1395
1149
|
-----BEGIN CERTIFICATE-----
|
@@ -1886,37 +1640,6 @@ hGIAF728JRhX8tepb1mIvDS3LoV4nZbcFMMsilKbloxSZj2GFotHuFEJjOp9zYhys2AzsfAKRO8P
|
|
1886
1640
|
UrbnBEI=
|
1887
1641
|
-----END CERTIFICATE-----
|
1888
1642
|
|
1889
|
-
SwissSign Platinum CA - G2
|
1890
|
-
==========================
|
1891
|
-
-----BEGIN CERTIFICATE-----
|
1892
|
-
MIIFwTCCA6mgAwIBAgIITrIAZwwDXU8wDQYJKoZIhvcNAQEFBQAwSTELMAkGA1UEBhMCQ0gxFTAT
|
1893
|
-
BgNVBAoTDFN3aXNzU2lnbiBBRzEjMCEGA1UEAxMaU3dpc3NTaWduIFBsYXRpbnVtIENBIC0gRzIw
|
1894
|
-
HhcNMDYxMDI1MDgzNjAwWhcNMzYxMDI1MDgzNjAwWjBJMQswCQYDVQQGEwJDSDEVMBMGA1UEChMM
|
1895
|
-
U3dpc3NTaWduIEFHMSMwIQYDVQQDExpTd2lzc1NpZ24gUGxhdGludW0gQ0EgLSBHMjCCAiIwDQYJ
|
1896
|
-
KoZIhvcNAQEBBQADggIPADCCAgoCggIBAMrfogLi2vj8Bxax3mCq3pZcZB/HL37PZ/pEQtZ2Y5Wu
|
1897
|
-
669yIIpFR4ZieIbWIDkm9K6j/SPnpZy1IiEZtzeTIsBQnIJ71NUERFzLtMKfkr4k2HtnIuJpX+UF
|
1898
|
-
eNSH2XFwMyVTtIc7KZAoNppVRDBopIOXfw0enHb/FZ1glwCNioUD7IC+6ixuEFGSzH7VozPY1kne
|
1899
|
-
WCqv9hbrS3uQMpe5up1Y8fhXSQQeol0GcN1x2/ndi5objM89o03Oy3z2u5yg+gnOI2Ky6Q0f4nIo
|
1900
|
-
j5+saCB9bzuohTEJfwvH6GXp43gOCWcwizSC+13gzJ2BbWLuCB4ELE6b7P6pT1/9aXjvCR+htL/6
|
1901
|
-
8++QHkwFix7qepF6w9fl+zC8bBsQWJj3Gl/QKTIDE0ZNYWqFTFJ0LwYfexHihJfGmfNtf9dng34T
|
1902
|
-
aNhxKFrYzt3oEBSa/m0jh26OWnA81Y0JAKeqvLAxN23IhBQeW71FYyBrS3SMvds6DsHPWhaPpZjy
|
1903
|
-
domyExI7C3d3rLvlPClKknLKYRorXkzig3R3+jVIeoVNjZpTxN94ypeRSCtFKwH3HBqi7Ri6Cr2D
|
1904
|
-
+m+8jVeTO9TUps4e8aCxzqv9KyiaTxvXw3LbpMS/XUz13XuWae5ogObnmLo2t/5u7Su9IPhlGdpV
|
1905
|
-
CX4l3P5hYnL5fhgC72O00Puv5TtjjGePAgMBAAGjgawwgakwDgYDVR0PAQH/BAQDAgEGMA8GA1Ud
|
1906
|
-
EwEB/wQFMAMBAf8wHQYDVR0OBBYEFFCvzAeHFUdvOMW0ZdHelarp35zMMB8GA1UdIwQYMBaAFFCv
|
1907
|
-
zAeHFUdvOMW0ZdHelarp35zMMEYGA1UdIAQ/MD0wOwYJYIV0AVkBAQEBMC4wLAYIKwYBBQUHAgEW
|
1908
|
-
IGh0dHA6Ly9yZXBvc2l0b3J5LnN3aXNzc2lnbi5jb20vMA0GCSqGSIb3DQEBBQUAA4ICAQAIhab1
|
1909
|
-
Fgz8RBrBY+D5VUYI/HAcQiiWjrfFwUF1TglxeeVtlspLpYhg0DB0uMoI3LQwnkAHFmtllXcBrqS3
|
1910
|
-
NQuB2nEVqXQXOHtYyvkv+8Bldo1bAbl93oI9ZLi+FHSjClTTLJUYFzX1UWs/j6KWYTl4a0vlpqD4
|
1911
|
-
U99REJNi54Av4tHgvI42Rncz7Lj7jposiU0xEQ8mngS7twSNC/K5/FqdOxa3L8iYq/6KUFkuozv8
|
1912
|
-
KV2LwUvJ4ooTHbG/u0IdUt1O2BReEMYxB+9xJ/cbOQncguqLs5WGXv312l0xpuAxtpTmREl0xRbl
|
1913
|
-
9x8DYSjFyMsSoEJL+WuICI20MhjzdZ/EfwBPBZWcoxcCw7NTm6ogOSkrZvqdr16zktK1puEa+S1B
|
1914
|
-
aYEUtLS17Yk9zvupnTVCRLEcFHOBzyoBNZox1S2PbYTfgE1X4z/FhHXaicYwu+uPyyIIoK6q8QNs
|
1915
|
-
OktNCaUOcsZWayFCTiMlFGiudgp8DAdwZPmaL/YFOSbGDI8Zf0NebvRbFS/bYV3mZy8/CJT5YLSY
|
1916
|
-
Mdp08YSTcU1f+2BY0fvEwW2JorsgH51xkcsymxM9Pn2SUjWskpSi0xjCfMfqr3YFFt1nJ8J+HAci
|
1917
|
-
IfNAChs0B0QTwoRqjt8ZWr9/6x3iGjjRXK9HkmuAtTClyY3YqzGBH9/CZjfTk6mFhnll0g==
|
1918
|
-
-----END CERTIFICATE-----
|
1919
|
-
|
1920
1643
|
SwissSign Gold CA - G2
|
1921
1644
|
======================
|
1922
1645
|
-----BEGIN CERTIFICATE-----
|
@@ -2254,32 +1977,6 @@ hNVQA7bihKOmNqoROgHhGEvWRGizPflTdISzRpFGlgC3gCy24eMQ4tui5yiPAZZiFj4A4xylNoEY
|
|
2254
1977
|
okxSdsARo27mHbrjWr42U8U+dY+GaSlYU7Wcu2+fXMUY7N0v4ZjJ/L7fCg0=
|
2255
1978
|
-----END CERTIFICATE-----
|
2256
1979
|
|
2257
|
-
S-TRUST Authentication and Encryption Root CA 2005 PN
|
2258
|
-
=====================================================
|
2259
|
-
-----BEGIN CERTIFICATE-----
|
2260
|
-
MIIEezCCA2OgAwIBAgIQNxkY5lNUfBq1uMtZWts1tzANBgkqhkiG9w0BAQUFADCBrjELMAkGA1UE
|
2261
|
-
BhMCREUxIDAeBgNVBAgTF0JhZGVuLVd1ZXJ0dGVtYmVyZyAoQlcpMRIwEAYDVQQHEwlTdHV0dGdh
|
2262
|
-
cnQxKTAnBgNVBAoTIERldXRzY2hlciBTcGFya2Fzc2VuIFZlcmxhZyBHbWJIMT4wPAYDVQQDEzVT
|
2263
|
-
LVRSVVNUIEF1dGhlbnRpY2F0aW9uIGFuZCBFbmNyeXB0aW9uIFJvb3QgQ0EgMjAwNTpQTjAeFw0w
|
2264
|
-
NTA2MjIwMDAwMDBaFw0zMDA2MjEyMzU5NTlaMIGuMQswCQYDVQQGEwJERTEgMB4GA1UECBMXQmFk
|
2265
|
-
ZW4tV3VlcnR0ZW1iZXJnIChCVykxEjAQBgNVBAcTCVN0dXR0Z2FydDEpMCcGA1UEChMgRGV1dHNj
|
2266
|
-
aGVyIFNwYXJrYXNzZW4gVmVybGFnIEdtYkgxPjA8BgNVBAMTNVMtVFJVU1QgQXV0aGVudGljYXRp
|
2267
|
-
b24gYW5kIEVuY3J5cHRpb24gUm9vdCBDQSAyMDA1OlBOMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A
|
2268
|
-
MIIBCgKCAQEA2bVKwdMz6tNGs9HiTNL1toPQb9UY6ZOvJ44TzbUlNlA0EmQpoVXhOmCTnijJ4/Ob
|
2269
|
-
4QSwI7+Vio5bG0F/WsPoTUzVJBY+h0jUJ67m91MduwwA7z5hca2/OnpYH5Q9XIHV1W/fuJvS9eXL
|
2270
|
-
g3KSwlOyggLrra1fFi2SU3bxibYs9cEv4KdKb6AwajLrmnQDaHgTncovmwsdvs91DSaXm8f1Xgqf
|
2271
|
-
eN+zvOyauu9VjxuapgdjKRdZYgkqeQd3peDRF2npW932kKvimAoA0SVtnteFhy+S8dF2g08LOlk3
|
2272
|
-
KC8zpxdQ1iALCvQm+Z845y2kuJuJja2tyWp9iRe79n+Ag3rm7QIDAQABo4GSMIGPMBIGA1UdEwEB
|
2273
|
-
/wQIMAYBAf8CAQAwDgYDVR0PAQH/BAQDAgEGMCkGA1UdEQQiMCCkHjAcMRowGAYDVQQDExFTVFJv
|
2274
|
-
bmxpbmUxLTIwNDgtNTAdBgNVHQ4EFgQUD8oeXHngovMpttKFswtKtWXsa1IwHwYDVR0jBBgwFoAU
|
2275
|
-
D8oeXHngovMpttKFswtKtWXsa1IwDQYJKoZIhvcNAQEFBQADggEBAK8B8O0ZPCjoTVy7pWMciDMD
|
2276
|
-
pwCHpB8gq9Yc4wYfl35UvbfRssnV2oDsF9eK9XvCAPbpEW+EoFolMeKJ+aQAPzFoLtU96G7m1R08
|
2277
|
-
P7K9n3frndOMusDXtk3sU5wPBG7qNWdX4wple5A64U8+wwCSersFiXOMy6ZNwPv2AtawB6MDwidA
|
2278
|
-
nwzkhYItr5pCHdDHjfhA7p0GVxzZotiAFP7hYy0yh9WUUpY6RsZxlj33mA6ykaqP2vROJAA5Veit
|
2279
|
-
F7nTNCtKqUDMFypVZUF0Qn71wK/Ik63yGFs9iQzbRzkk+OBM8h+wPQrKBU6JIRrjKpms/H+h8Q8b
|
2280
|
-
Hz2eBIPdltkdOpQ=
|
2281
|
-
-----END CERTIFICATE-----
|
2282
|
-
|
2283
1980
|
Microsec e-Szigno Root CA
|
2284
1981
|
=========================
|
2285
1982
|
-----BEGIN CERTIFICATE-----
|
@@ -2475,28 +2172,6 @@ dyd1Lx+4ivn+xbrYNuSD7Odlt79jWvNGr4GUN9RBjNYj1h7P9WgbRGOiWrqnNVmh5XAFmw4jV5mU
|
|
2475
2172
|
Cm26OWMohpLzGITY+9HPBVZkVw==
|
2476
2173
|
-----END CERTIFICATE-----
|
2477
2174
|
|
2478
|
-
ComSign CA
|
2479
|
-
==========
|
2480
|
-
-----BEGIN CERTIFICATE-----
|
2481
|
-
MIIDkzCCAnugAwIBAgIQFBOWgxRVjOp7Y+X8NId3RDANBgkqhkiG9w0BAQUFADA0MRMwEQYDVQQD
|
2482
|
-
EwpDb21TaWduIENBMRAwDgYDVQQKEwdDb21TaWduMQswCQYDVQQGEwJJTDAeFw0wNDAzMjQxMTMy
|
2483
|
-
MThaFw0yOTAzMTkxNTAyMThaMDQxEzARBgNVBAMTCkNvbVNpZ24gQ0ExEDAOBgNVBAoTB0NvbVNp
|
2484
|
-
Z24xCzAJBgNVBAYTAklMMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA8ORUaSvTx49q
|
2485
|
-
ROR+WCf4C9DklBKK8Rs4OC8fMZwG1Cyn3gsqrhqg455qv588x26i+YtkbDqthVVRVKU4VbirgwTy
|
2486
|
-
P2Q298CNQ0NqZtH3FyrV7zb6MBBC11PN+fozc0yz6YQgitZBJzXkOPqUm7h65HkfM/sb2CEJKHxN
|
2487
|
-
GGleZIp6GZPKfuzzcuc3B1hZKKxC+cX/zT/npfo4sdAMx9lSGlPWgcxCejVb7Us6eva1jsz/D3zk
|
2488
|
-
YDaHL63woSV9/9JLEYhwVKZBqGdTUkJe5DSe5L6j7KpiXd3DTKaCQeQzC6zJMw9kglcq/QytNuEM
|
2489
|
-
rkvF7zuZ2SOzW120V+x0cAwqTwIDAQABo4GgMIGdMAwGA1UdEwQFMAMBAf8wPQYDVR0fBDYwNDAy
|
2490
|
-
oDCgLoYsaHR0cDovL2ZlZGlyLmNvbXNpZ24uY28uaWwvY3JsL0NvbVNpZ25DQS5jcmwwDgYDVR0P
|
2491
|
-
AQH/BAQDAgGGMB8GA1UdIwQYMBaAFEsBmz5WGmU2dst7l6qSBe4y5ygxMB0GA1UdDgQWBBRLAZs+
|
2492
|
-
VhplNnbLe5eqkgXuMucoMTANBgkqhkiG9w0BAQUFAAOCAQEA0Nmlfv4pYEWdfoPPbrxHbvUanlR2
|
2493
|
-
QnG0PFg/LUAlQvaBnPGJEMgOqnhPOAlXsDzACPw1jvFIUY0McXS6hMTXcpuEfDhOZAYnKuGntewI
|
2494
|
-
mbQKDdSFc8gS4TXt8QUxHXOZDOuWyt3T5oWq8Ir7dcHyCTxlZWTzTNity4hp8+SDtwy9F1qWF8pb
|
2495
|
-
/627HOkthIDYIb6FUtnUdLlphbpN7Sgy6/lhSuTENh4Z3G+EER+V9YMoGKgzkkMn3V0TBEVPh9VG
|
2496
|
-
zT2ouvDzuFYkRes3x+F2T3I5GN9+dHLHcy056mDmrRGiVod7w2ia/viMcKjfZTL0pECMocJEAw6U
|
2497
|
-
AGegcQCCSA==
|
2498
|
-
-----END CERTIFICATE-----
|
2499
|
-
|
2500
2175
|
ComSign Secured CA
|
2501
2176
|
==================
|
2502
2177
|
-----BEGIN CERTIFICATE-----
|
@@ -3045,22 +2720,6 @@ MCwXEGCSn1WHElkQwg9naRHMTh5+Spqtr0CodaxWkHS4oJyleW/c6RrIaQXpuvoDs3zk4E7Czp3o
|
|
3045
2720
|
tkYNbn5XOmeUwssfnHdKZ05phkOTOPu220+DkdRgfks+KzgHVZhepA==
|
3046
2721
|
-----END CERTIFICATE-----
|
3047
2722
|
|
3048
|
-
Verisign Class 1 Public Primary Certification Authority
|
3049
|
-
=======================================================
|
3050
|
-
-----BEGIN CERTIFICATE-----
|
3051
|
-
MIICPDCCAaUCED9pHoGc8JpK83P/uUii5N0wDQYJKoZIhvcNAQEFBQAwXzELMAkGA1UEBhMCVVMx
|
3052
|
-
FzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFzcyAxIFB1YmxpYyBQcmltYXJ5
|
3053
|
-
IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTk2MDEyOTAwMDAwMFoXDTI4MDgwMjIzNTk1OVow
|
3054
|
-
XzELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFzcyAx
|
3055
|
-
IFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIGfMA0GCSqGSIb3DQEBAQUA
|
3056
|
-
A4GNADCBiQKBgQDlGb9to1ZhLZlIcfZn3rmN67eehoAKkQ76OCWvRoiC5XOooJskXQ0fzGVuDLDQ
|
3057
|
-
VoQYh5oGmxChc9+0WDlrbsH2FdWoqD+qEgaNMax/sDTXjzRniAnNFBHiTkVWaR94AoDa3EeRKbs2
|
3058
|
-
yWNcxeDXLYd7obcysHswuiovMaruo2fa2wIDAQABMA0GCSqGSIb3DQEBBQUAA4GBAFgVKTk8d6Pa
|
3059
|
-
XCUDfGD67gmZPCcQcMgMCeazh88K4hiWNWLMv5sneYlfycQJ9M61Hd8qveXbhpxoJeUwfLaJFf5n
|
3060
|
-
0a3hUKw8fGJLj7qE1xIVGx/KXQ/BUpQqEZnae88MNhPVNdwQGVnqlMEAv3WP2fr9dgTbYruQagPZ
|
3061
|
-
RjXZ+Hxb
|
3062
|
-
-----END CERTIFICATE-----
|
3063
|
-
|
3064
2723
|
Verisign Class 3 Public Primary Certification Authority
|
3065
2724
|
=======================================================
|
3066
2725
|
-----BEGIN CERTIFICATE-----
|
@@ -3643,6 +3302,30 @@ E/rKS03Z7lNGBjvGTq2TWoF+bCpLagVFjPIhpDGQh2xlnJ2lYJU6Un/10asIbvPuW/mIPX64b24D
|
|
3643
3302
|
5EI=
|
3644
3303
|
-----END CERTIFICATE-----
|
3645
3304
|
|
3305
|
+
Hellenic Academic and Research Institutions RootCA 2011
|
3306
|
+
=======================================================
|
3307
|
+
-----BEGIN CERTIFICATE-----
|
3308
|
+
MIIEMTCCAxmgAwIBAgIBADANBgkqhkiG9w0BAQUFADCBlTELMAkGA1UEBhMCR1IxRDBCBgNVBAoT
|
3309
|
+
O0hlbGxlbmljIEFjYWRlbWljIGFuZCBSZXNlYXJjaCBJbnN0aXR1dGlvbnMgQ2VydC4gQXV0aG9y
|
3310
|
+
aXR5MUAwPgYDVQQDEzdIZWxsZW5pYyBBY2FkZW1pYyBhbmQgUmVzZWFyY2ggSW5zdGl0dXRpb25z
|
3311
|
+
IFJvb3RDQSAyMDExMB4XDTExMTIwNjEzNDk1MloXDTMxMTIwMTEzNDk1MlowgZUxCzAJBgNVBAYT
|
3312
|
+
AkdSMUQwQgYDVQQKEztIZWxsZW5pYyBBY2FkZW1pYyBhbmQgUmVzZWFyY2ggSW5zdGl0dXRpb25z
|
3313
|
+
IENlcnQuIEF1dGhvcml0eTFAMD4GA1UEAxM3SGVsbGVuaWMgQWNhZGVtaWMgYW5kIFJlc2VhcmNo
|
3314
|
+
IEluc3RpdHV0aW9ucyBSb290Q0EgMjAxMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB
|
3315
|
+
AKlTAOMupvaO+mDYLZU++CwqVE7NuYRhlFhPjz2L5EPzdYmNUeTDN9KKiE15HrcS3UN4SoqS5tdI
|
3316
|
+
1Q+kOilENbgH9mgdVc04UfCMJDGFr4PJfel3r+0ae50X+bOdOFAPplp5kYCvN66m0zH7tSYJnTxa
|
3317
|
+
71HFK9+WXesyHgLacEnsbgzImjeN9/E2YEsmLIKe0HjzDQ9jpFEw4fkrJxIH2Oq9GGKYsFk3fb7u
|
3318
|
+
8yBRQlqD75O6aRXxYp2fmTmCobd0LovUxQt7L/DICto9eQqakxylKHJzkUOap9FNhYS5qXSPFEDH
|
3319
|
+
3N6sQWRstBmbAmNtJGSPRLIl6s5ddAxjMlyNh+UCAwEAAaOBiTCBhjAPBgNVHRMBAf8EBTADAQH/
|
3320
|
+
MAsGA1UdDwQEAwIBBjAdBgNVHQ4EFgQUppFC/RNhSiOeCKQp5dgTBCPuQSUwRwYDVR0eBEAwPqA8
|
3321
|
+
MAWCAy5ncjAFggMuZXUwBoIELmVkdTAGggQub3JnMAWBAy5ncjAFgQMuZXUwBoEELmVkdTAGgQQu
|
3322
|
+
b3JnMA0GCSqGSIb3DQEBBQUAA4IBAQAf73lB4XtuP7KMhjdCSk4cNx6NZrokgclPEg8hwAOXhiVt
|
3323
|
+
XdMiKahsog2p6z0GW5k6x8zDmjR/qw7IThzh+uTczQ2+vyT+bOdrwg3IBp5OjWEopmr95fZi6hg8
|
3324
|
+
TqBTnbI6nOulnJEWtk2C4AwFSKls9cz4y51JtPACpf1wA+2KIaWuE4ZJwzNzvoc7dIsXRSZMFpGD
|
3325
|
+
/md9zU1jZ/rzAxKWeAaNsWftjj++n08C9bMJL/NMh98qy5V8AcysNnq/onN694/BtZqhFLKPM58N
|
3326
|
+
7yLcZnuEvUUXBj08yrl3NI/K6s8/MT7jiOOASSXIl7WdmplNsDz4SgCbZN2fOUvRJ9e4
|
3327
|
+
-----END CERTIFICATE-----
|
3328
|
+
|
3646
3329
|
Actalis Authentication Root CA
|
3647
3330
|
==============================
|
3648
3331
|
-----BEGIN CERTIFICATE-----
|
@@ -3822,4 +3505,50 @@ KSb12tjE8nVhz36udmNKekBlk4f4HoCMhuWG1o8O/FMsYOgWYRqiPkN7zTlgVGr18okmAWiDSKIz
|
|
3822
3505
|
UZTLfhbrES+jkkXITHHZvMmZUldGL1DPvTVp9D0VzgalLA8+9oG6lLvDu79leNKGef9JOxqDDPDe
|
3823
3506
|
eOzI8k1MGt6CKfjBWtrt7uYnXuhF0J0cUahoq0Tj0Itq4/g7u9xN12TyUb7mqqta6THuBrxzvxNi
|
3824
3507
|
Cp/HuZc=
|
3508
|
+
-----END CERTIFICATE-----
|
3509
|
+
|
3510
|
+
T-TeleSec GlobalRoot Class 3
|
3511
|
+
============================
|
3512
|
+
-----BEGIN CERTIFICATE-----
|
3513
|
+
MIIDwzCCAqugAwIBAgIBATANBgkqhkiG9w0BAQsFADCBgjELMAkGA1UEBhMCREUxKzApBgNVBAoM
|
3514
|
+
IlQtU3lzdGVtcyBFbnRlcnByaXNlIFNlcnZpY2VzIEdtYkgxHzAdBgNVBAsMFlQtU3lzdGVtcyBU
|
3515
|
+
cnVzdCBDZW50ZXIxJTAjBgNVBAMMHFQtVGVsZVNlYyBHbG9iYWxSb290IENsYXNzIDMwHhcNMDgx
|
3516
|
+
MDAxMTAyOTU2WhcNMzMxMDAxMjM1OTU5WjCBgjELMAkGA1UEBhMCREUxKzApBgNVBAoMIlQtU3lz
|
3517
|
+
dGVtcyBFbnRlcnByaXNlIFNlcnZpY2VzIEdtYkgxHzAdBgNVBAsMFlQtU3lzdGVtcyBUcnVzdCBD
|
3518
|
+
ZW50ZXIxJTAjBgNVBAMMHFQtVGVsZVNlYyBHbG9iYWxSb290IENsYXNzIDMwggEiMA0GCSqGSIb3
|
3519
|
+
DQEBAQUAA4IBDwAwggEKAoIBAQC9dZPwYiJvJK7genasfb3ZJNW4t/zN8ELg63iIVl6bmlQdTQyK
|
3520
|
+
9tPPcPRStdiTBONGhnFBSivwKixVA9ZIw+A5OO3yXDw/RLyTPWGrTs0NvvAgJ1gORH8EGoel15YU
|
3521
|
+
NpDQSXuhdfsaa3Ox+M6pCSzyU9XDFES4hqX2iys52qMzVNn6chr3IhUciJFrf2blw2qAsCTz34ZF
|
3522
|
+
iP0Zf3WHHx+xGwpzJFu5ZeAsVMhg02YXP+HMVDNzkQI6pn97djmiH5a2OK61yJN0HZ65tOVgnS9W
|
3523
|
+
0eDrXltMEnAMbEQgqxHY9Bn20pxSN+f6tsIxO0rUFJmtxxr1XV/6B7h8DR/Wgx6zAgMBAAGjQjBA
|
3524
|
+
MA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBS1A/d2O2GCahKqGFPr
|
3525
|
+
AyGUv/7OyjANBgkqhkiG9w0BAQsFAAOCAQEAVj3vlNW92nOyWL6ukK2YJ5f+AbGwUgC4TeQbIXQb
|
3526
|
+
fsDuXmkqJa9c1h3a0nnJ85cp4IaH3gRZD/FZ1GSFS5mvJQQeyUapl96Cshtwn5z2r3Ex3XsFpSzT
|
3527
|
+
ucpH9sry9uetuUg/vBa3wW306gmv7PO15wWeph6KU1HWk4HMdJP2udqmJQV0eVp+QD6CSyYRMG7h
|
3528
|
+
P0HHRwA11fXT91Q+gT3aSWqas+8QPebrb9HIIkfLzM8BMZLZGOMivgkeGj5asuRrDFR6fUNOuIml
|
3529
|
+
e9eiPZaGzPImNC1qkp2aGtAw4l1OBLBfiyB+d8E9lYLRRpo7PHi4b6HQDWSieB4pTpPDpFQUWw==
|
3530
|
+
-----END CERTIFICATE-----
|
3531
|
+
|
3532
|
+
EE Certification Centre Root CA
|
3533
|
+
===============================
|
3534
|
+
-----BEGIN CERTIFICATE-----
|
3535
|
+
MIIEAzCCAuugAwIBAgIQVID5oHPtPwBMyonY43HmSjANBgkqhkiG9w0BAQUFADB1MQswCQYDVQQG
|
3536
|
+
EwJFRTEiMCAGA1UECgwZQVMgU2VydGlmaXRzZWVyaW1pc2tlc2t1czEoMCYGA1UEAwwfRUUgQ2Vy
|
3537
|
+
dGlmaWNhdGlvbiBDZW50cmUgUm9vdCBDQTEYMBYGCSqGSIb3DQEJARYJcGtpQHNrLmVlMCIYDzIw
|
3538
|
+
MTAxMDMwMTAxMDMwWhgPMjAzMDEyMTcyMzU5NTlaMHUxCzAJBgNVBAYTAkVFMSIwIAYDVQQKDBlB
|
3539
|
+
UyBTZXJ0aWZpdHNlZXJpbWlza2Vza3VzMSgwJgYDVQQDDB9FRSBDZXJ0aWZpY2F0aW9uIENlbnRy
|
3540
|
+
ZSBSb290IENBMRgwFgYJKoZIhvcNAQkBFglwa2lAc2suZWUwggEiMA0GCSqGSIb3DQEBAQUAA4IB
|
3541
|
+
DwAwggEKAoIBAQDIIMDs4MVLqwd4lfNE7vsLDP90jmG7sWLqI9iroWUyeuuOF0+W2Ap7kaJjbMeM
|
3542
|
+
TC55v6kF/GlclY1i+blw7cNRfdCT5mzrMEvhvH2/UpvObntl8jixwKIy72KyaOBhU8E2lf/slLo2
|
3543
|
+
rpwcpzIP5Xy0xm90/XsY6KxX7QYgSzIwWFv9zajmofxwvI6Sc9uXp3whrj3B9UiHbCe9nyV0gVWw
|
3544
|
+
93X2PaRka9ZP585ArQ/dMtO8ihJTmMmJ+xAdTX7Nfh9WDSFwhfYggx/2uh8Ej+p3iDXE/+pOoYtN
|
3545
|
+
P2MbRMNE1CV2yreN1x5KZmTNXMWcg+HCCIia7E6j8T4cLNlsHaFLAgMBAAGjgYowgYcwDwYDVR0T
|
3546
|
+
AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFBLyWj7qVhy/zQas8fElyalL1BSZ
|
3547
|
+
MEUGA1UdJQQ+MDwGCCsGAQUFBwMCBggrBgEFBQcDAQYIKwYBBQUHAwMGCCsGAQUFBwMEBggrBgEF
|
3548
|
+
BQcDCAYIKwYBBQUHAwkwDQYJKoZIhvcNAQEFBQADggEBAHv25MANqhlHt01Xo/6tu7Fq1Q+e2+Rj
|
3549
|
+
xY6hUFaTlrg4wCQiZrxTFGGVv9DHKpY5P30osxBAIWrEr7BSdxjhlthWXePdNl4dp1BUoMUq5KqM
|
3550
|
+
lIpPnTX/dqQGE5Gion0ARD9V04I8GtVbvFZMIi5GQ4okQC3zErg7cBqklrkar4dBGmoYDQZPxz5u
|
3551
|
+
uSlNDUmJEYcyW+ZLBMjkXOZ0c5RdFpgTlf7727FE5TpwrDdr5rMzcijJs1eg9gIWiAYLtqZLICjU
|
3552
|
+
3j2LrTcFU3T+bsy8QxdxXvnFzBqpYe73dgzzcvRyrc9yAjYHR8/vGVCJYMzpJJUPwssd8m92kMfM
|
3553
|
+
dcGWxZ0=
|
3825
3554
|
-----END CERTIFICATE-----
|
data/examples/hello_pusher.rb
CHANGED
@@ -1,12 +1,11 @@
|
|
1
1
|
# Usage: $ PUSHER_KEY=YOURKEY ruby examples/hello_pusher.rb
|
2
2
|
|
3
|
-
|
4
|
-
require '
|
3
|
+
$:.unshift(File.expand_path("../../lib", __FILE__))
|
4
|
+
require 'pusher-client'
|
5
5
|
require 'pp'
|
6
6
|
|
7
7
|
APP_KEY = ENV['PUSHER_KEY'] # || "YOUR_APPLICATION_KEY"
|
8
8
|
|
9
|
-
PusherClient.logger = Logger.new(STDOUT)
|
10
9
|
socket = PusherClient::Socket.new(APP_KEY)
|
11
10
|
|
12
11
|
# Subscribe to a channel
|
@@ -1,12 +1,11 @@
|
|
1
1
|
# Usage: $ PUSHER_KEY=YOURKEY ruby examples/hello_pusher.rb
|
2
2
|
|
3
|
-
|
4
|
-
require '
|
3
|
+
$:.unshift(File.expand_path("../../lib", __FILE__))
|
4
|
+
require 'pusher-client'
|
5
5
|
require 'pp'
|
6
6
|
|
7
7
|
APP_KEY = ENV['PUSHER_KEY'] # || "YOUR_APPLICATION_KEY"
|
8
8
|
|
9
|
-
PusherClient.logger = Logger.new('/dev/null')
|
10
9
|
socket = PusherClient::Socket.new(APP_KEY)
|
11
10
|
socket.connect(true)
|
12
11
|
|
@@ -1,12 +1,11 @@
|
|
1
1
|
# Usage: $ PUSHER_KEY=YOURKEY ruby examples/hello_pusher.rb
|
2
2
|
|
3
|
-
|
4
|
-
require '
|
3
|
+
$:.unshift(File.expand_path("../../lib", __FILE__))
|
4
|
+
require 'pusher-client'
|
5
5
|
require 'pp'
|
6
6
|
|
7
7
|
APP_KEY = ENV['PUSHER_KEY'] # || "YOUR_APPLICATION_KEY"
|
8
8
|
|
9
|
-
PusherClient.logger = Logger.new(STDOUT)
|
10
9
|
socket = PusherClient::Socket.new(APP_KEY, { :encrypted => true } )
|
11
10
|
|
12
11
|
# Subscribe to a channel
|
@@ -1,13 +1,12 @@
|
|
1
1
|
# Usage: $ PUSHER_KEY=YOURKEY ruby examples/hello_pusher.rb
|
2
2
|
|
3
|
-
|
4
|
-
require '
|
3
|
+
$:.unshift(File.expand_path("../../lib", __FILE__))
|
4
|
+
require 'pusher-client'
|
5
5
|
require 'pp'
|
6
6
|
|
7
7
|
APP_KEY = ENV['PUSHER_KEY'] # || "YOUR_APPLICATION_KEY"
|
8
8
|
APP_SECRET = ENV['PUSHER_SECRET'] # || "YOUR_APPLICATION_SECRET"
|
9
9
|
|
10
|
-
PusherClient.logger = Logger.new(STDOUT)
|
11
10
|
socket = PusherClient::Socket.new(APP_KEY, { :encrypted => true, :secret => APP_SECRET } )
|
12
11
|
|
13
12
|
# Subscribe to a channel
|
data/lib/pusher-client.rb
CHANGED
@@ -1,14 +1,13 @@
|
|
1
|
-
autoload :Logger, 'logger'
|
2
|
-
|
3
1
|
module PusherClient
|
4
2
|
HOST = 'ws.pusherapp.com'
|
5
3
|
WS_PORT = 80
|
6
4
|
WSS_PORT = 443
|
7
5
|
|
8
|
-
@logger = Logger.new(STDOUT)
|
9
|
-
|
10
6
|
def self.logger
|
11
|
-
@logger
|
7
|
+
@logger ||= begin
|
8
|
+
require 'logger'
|
9
|
+
Logger.new(STDOUT)
|
10
|
+
end
|
12
11
|
end
|
13
12
|
|
14
13
|
def self.logger=(logger)
|
@@ -18,7 +17,8 @@ end
|
|
18
17
|
|
19
18
|
Thread.abort_on_exception = true
|
20
19
|
|
21
|
-
require
|
22
|
-
require
|
23
|
-
require
|
24
|
-
require
|
20
|
+
require 'pusher-client/version'
|
21
|
+
require 'pusher-client/websocket'
|
22
|
+
require 'pusher-client/socket'
|
23
|
+
require 'pusher-client/channel'
|
24
|
+
require 'pusher-client/channels'
|
data/lib/pusher-client/socket.rb
CHANGED
@@ -1,33 +1,36 @@
|
|
1
1
|
require 'json'
|
2
|
-
require '
|
2
|
+
require 'openssl'
|
3
3
|
require 'digest/md5'
|
4
4
|
|
5
5
|
module PusherClient
|
6
6
|
class Socket
|
7
7
|
|
8
8
|
CLIENT_ID = 'pusher-ruby-client'
|
9
|
-
VERSION = '0.3.0'
|
10
9
|
PROTOCOL = '5'
|
11
10
|
|
12
|
-
attr_accessor :encrypted, :secure
|
13
11
|
attr_reader :path, :connected, :channels, :global_channel, :socket_id
|
14
12
|
|
15
|
-
def initialize(
|
16
|
-
raise
|
13
|
+
def initialize(app_key, options={})
|
14
|
+
raise "Missing app_key" unless app_key && !app_key.empty?
|
17
15
|
|
18
|
-
@path = "/app/#{
|
19
|
-
@key =
|
16
|
+
@path = "#{options[:ws_path]}/app/#{app_key}?client=#{CLIENT_ID}&version=#{PusherClient::VERSION}&protocol=#{PROTOCOL}"
|
17
|
+
@key = app_key
|
20
18
|
@secret = options[:secret]
|
21
19
|
@socket_id = nil
|
22
20
|
@channels = Channels.new
|
23
21
|
@global_channel = Channel.new('pusher_global_channel')
|
24
22
|
@global_channel.global = true
|
25
|
-
@secure = false
|
26
23
|
@connected = false
|
27
24
|
@encrypted = options[:encrypted] || false
|
25
|
+
@private_auth_method = options[:private_auth_method]
|
26
|
+
@cert_file = options[:cert_file]
|
27
|
+
@ws_host = options[:ws_host] || HOST
|
28
|
+
@ws_port = options[:ws_port] || WS_PORT
|
29
|
+
@wss_port = options[:wss_port] || WSS_PORT
|
30
|
+
@ssl_verify = options.fetch(:ssl_verify) { true }
|
28
31
|
|
29
32
|
bind('pusher:connection_established') do |data|
|
30
|
-
socket =
|
33
|
+
socket = parser(data)
|
31
34
|
@connected = true
|
32
35
|
@socket_id = socket['socket_id']
|
33
36
|
subscribe_all
|
@@ -49,15 +52,15 @@ module PusherClient
|
|
49
52
|
end
|
50
53
|
|
51
54
|
def connect(async = false)
|
52
|
-
if @encrypted
|
53
|
-
url = "wss://#{
|
55
|
+
if @encrypted
|
56
|
+
url = "wss://#{@ws_host}:#{@wss_port}#{@path}"
|
54
57
|
else
|
55
|
-
url = "ws://#{
|
58
|
+
url = "ws://#{@ws_host}:#{@ws_port}#{@path}"
|
56
59
|
end
|
57
60
|
PusherClient.logger.debug("Pusher : connecting : #{url}")
|
58
61
|
|
59
62
|
@connection_thread = Thread.new {
|
60
|
-
options = {:ssl => @encrypted
|
63
|
+
options = {:ssl => @encrypted, :cert_file => @cert_file, :ssl_verify => @ssl_verify}
|
61
64
|
@connection = PusherWebSocket.new(url, options)
|
62
65
|
PusherClient.logger.debug "Websocket connected"
|
63
66
|
|
@@ -87,8 +90,12 @@ module PusherClient
|
|
87
90
|
end
|
88
91
|
end
|
89
92
|
|
90
|
-
def subscribe(channel_name,
|
91
|
-
|
93
|
+
def subscribe(channel_name, user_data = nil)
|
94
|
+
if user_data.is_a? Hash
|
95
|
+
@user_data = user_data.to_json
|
96
|
+
elsif not user_data.nil?
|
97
|
+
@user_data = {:user_id => user_data}.to_json
|
98
|
+
end
|
92
99
|
|
93
100
|
channel = @channels << channel_name
|
94
101
|
if @connected
|
@@ -156,14 +163,18 @@ module PusherClient
|
|
156
163
|
end
|
157
164
|
|
158
165
|
def get_private_auth(channel)
|
159
|
-
|
160
|
-
|
161
|
-
|
166
|
+
if (@private_auth_method.nil?)
|
167
|
+
string_to_sign = @socket_id + ':' + channel.name
|
168
|
+
signature = hmac(@secret, string_to_sign)
|
169
|
+
return "#{@key}:#{signature}"
|
170
|
+
else
|
171
|
+
return @private_auth_method.call(@socket_id, channel)
|
172
|
+
end
|
162
173
|
end
|
163
174
|
|
164
175
|
def get_presence_auth(channel)
|
165
176
|
string_to_sign = @socket_id + ':' + channel.name + ':' + @user_data
|
166
|
-
signature =
|
177
|
+
signature = hmac(@secret, string_to_sign)
|
167
178
|
return "#{@key}:#{signature}"
|
168
179
|
end
|
169
180
|
|
@@ -192,13 +203,17 @@ module PusherClient
|
|
192
203
|
end
|
193
204
|
|
194
205
|
def parser(data)
|
195
|
-
|
196
|
-
|
197
|
-
|
198
|
-
|
199
|
-
|
200
|
-
|
201
|
-
|
206
|
+
return data if data.is_a? Hash
|
207
|
+
return JSON.parse(data)
|
208
|
+
rescue => err
|
209
|
+
PusherClient.logger.warn(err)
|
210
|
+
PusherClient.logger.warn("Pusher : data attribute not valid JSON - you may wish to implement your own Pusher::Client.parser")
|
211
|
+
return data
|
212
|
+
end
|
213
|
+
|
214
|
+
def hmac(secret, string_to_sign)
|
215
|
+
digest = OpenSSL::Digest::SHA256.new
|
216
|
+
signature = OpenSSL::HMAC.hexdigest(digest, secret, string_to_sign)
|
202
217
|
end
|
203
218
|
end
|
204
219
|
|
@@ -1,4 +1,3 @@
|
|
1
|
-
require 'rubygems'
|
2
1
|
require 'socket'
|
3
2
|
require 'websocket'
|
4
3
|
require 'openssl'
|
@@ -7,19 +6,26 @@ module PusherClient
|
|
7
6
|
class PusherWebSocket
|
8
7
|
WAIT_EXCEPTIONS = [Errno::EAGAIN, Errno::EWOULDBLOCK]
|
9
8
|
WAIT_EXCEPTIONS << IO::WaitReadable if defined?(IO::WaitReadable)
|
10
|
-
|
9
|
+
|
10
|
+
CA_FILE = File.expand_path('../../../certs/cacert.pem', __FILE__)
|
11
|
+
|
11
12
|
attr_accessor :socket
|
12
13
|
|
13
14
|
def initialize(url, params = {})
|
14
|
-
@hs ||= WebSocket::Handshake::Client.new(:url => url
|
15
|
+
@hs ||= WebSocket::Handshake::Client.new(:url => url)
|
15
16
|
@frame ||= WebSocket::Frame::Incoming::Server.new(:version => @hs.version)
|
16
17
|
@socket = TCPSocket.new(@hs.host, @hs.port || 80)
|
18
|
+
@cert_file = params[:cert_file]
|
17
19
|
|
18
20
|
if params[:ssl] == true
|
19
21
|
ctx = OpenSSL::SSL::SSLContext.new
|
20
|
-
|
21
|
-
|
22
|
-
|
22
|
+
if params[:ssl_verify]
|
23
|
+
ctx.verify_mode = OpenSSL::SSL::VERIFY_PEER|OpenSSL::SSL::VERIFY_FAIL_IF_NO_PEER_CERT
|
24
|
+
# http://curl.haxx.se/ca/cacert.pem
|
25
|
+
ctx.ca_file = @cert_file || CA_FILE
|
26
|
+
else
|
27
|
+
ctx.verify_mode = OpenSSL::SSL::VERIFY_NONE
|
28
|
+
end
|
23
29
|
|
24
30
|
ssl_sock = OpenSSL::SSL::SSLSocket.new(@socket, ctx)
|
25
31
|
ssl_sock.sync_close = true
|
@@ -45,10 +51,6 @@ module PusherClient
|
|
45
51
|
end
|
46
52
|
end
|
47
53
|
|
48
|
-
def path_to_cert
|
49
|
-
File.join(File.dirname(File.expand_path(__FILE__)), '../../certs/cacert.pem')
|
50
|
-
end
|
51
|
-
|
52
54
|
def send(data, type = :text)
|
53
55
|
raise "no handshake!" unless @handshaked
|
54
56
|
|
data/pusher-client.gemspec
CHANGED
@@ -1,8 +1,12 @@
|
|
1
1
|
# -*- encoding: utf-8 -*-
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require 'pusher-client/version'
|
5
|
+
|
2
6
|
Gem::Specification.new do |s|
|
3
7
|
s.name = 'pusher-client'
|
4
|
-
s.version =
|
5
|
-
s.authors = ["
|
8
|
+
s.version = PusherClient::VERSION
|
9
|
+
s.authors = ["Pusher", "Logan Koester"]
|
6
10
|
s.email = ['support@pusher.com']
|
7
11
|
s.homepage = 'http://github.com/pusher/pusher-ruby-client'
|
8
12
|
s.summary = 'Client for consuming WebSockets from http://pusher.com'
|
@@ -18,8 +22,9 @@ Gem::Specification.new do |s|
|
|
18
22
|
s.licenses = ['MIT']
|
19
23
|
|
20
24
|
s.add_runtime_dependency 'websocket', '~> 1.0.0'
|
21
|
-
s.add_runtime_dependency '
|
25
|
+
s.add_runtime_dependency 'json' if RUBY_VERSION < "1.9"
|
22
26
|
|
23
|
-
s.add_development_dependency
|
24
|
-
s.add_development_dependency
|
27
|
+
s.add_development_dependency "bacon"
|
28
|
+
s.add_development_dependency "rake"
|
29
|
+
s.add_development_dependency "bundler", "~> 1.3"
|
25
30
|
end
|
data/test/pusherclient_test.rb
CHANGED
@@ -64,7 +64,7 @@ end
|
|
64
64
|
|
65
65
|
describe "A PusherClient::Socket" do
|
66
66
|
before do
|
67
|
-
@socket = PusherClient::Socket.new(TEST_APP_KEY)
|
67
|
+
@socket = PusherClient::Socket.new(TEST_APP_KEY, :secret => 'secret')
|
68
68
|
end
|
69
69
|
|
70
70
|
it 'should not connect when instantiated' do
|
@@ -109,6 +109,26 @@ describe "A PusherClient::Socket" do
|
|
109
109
|
@socket.channels['testchannel'].should.equal nil
|
110
110
|
end
|
111
111
|
|
112
|
+
it 'should subscribe to a private channel' do
|
113
|
+
@channel = @socket.subscribe('private-testchannel')
|
114
|
+
@socket.channels['private-testchannel'].should.equal @channel
|
115
|
+
@channel.subscribed.should.equal true
|
116
|
+
end
|
117
|
+
|
118
|
+
it 'should subscribe to a presence channel with user_id' do
|
119
|
+
@channel = @socket.subscribe('presence-testchannel', '123')
|
120
|
+
@socket.channels['presence-testchannel'].should.equal @channel
|
121
|
+
@socket.instance_variable_get('@user_data').should.equal '{"user_id":"123"}'
|
122
|
+
@channel.subscribed.should.equal true
|
123
|
+
end
|
124
|
+
|
125
|
+
it 'should subscribe to a presence channel with custom channel_data' do
|
126
|
+
@channel = @socket.subscribe('presence-testchannel', :user_id => '123', :user_name => 'john')
|
127
|
+
@socket.channels['presence-testchannel'].should.equal @channel
|
128
|
+
@socket.instance_variable_get('@user_data').should.equal '{"user_id":"123","user_name":"john"}'
|
129
|
+
@channel.subscribed.should.equal true
|
130
|
+
end
|
131
|
+
|
112
132
|
it 'should allow binding of global events' do
|
113
133
|
@socket.bind('testevent') { |data| PusherClient.logger.test("testchannel received #{data}") }
|
114
134
|
@socket.global_channel.callbacks.has_key?('testevent').should.equal true
|
data/test/teststrap.rb
CHANGED
@@ -1,13 +1,5 @@
|
|
1
|
-
require 'rubygems'
|
2
|
-
require 'bundler'
|
3
|
-
begin
|
4
|
-
Bundler.setup(:default, :development)
|
5
|
-
rescue Bundler::BundlerError => e
|
6
|
-
$stderr.puts e.message
|
7
|
-
$stderr.puts "Run `bundle install` to install missing gems"
|
8
|
-
exit e.status_code
|
9
|
-
end
|
10
1
|
require 'bacon'
|
2
|
+
require 'logger'
|
11
3
|
|
12
4
|
require File.dirname(__FILE__) + '/../lib/pusher-client.rb'
|
13
5
|
|
metadata
CHANGED
@@ -1,19 +1,21 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pusher-client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.0
|
5
|
+
prerelease:
|
5
6
|
platform: ruby
|
6
7
|
authors:
|
8
|
+
- Pusher
|
7
9
|
- Logan Koester
|
8
|
-
- Phil Leggetter
|
9
10
|
autorequire:
|
10
11
|
bindir: bin
|
11
12
|
cert_chain: []
|
12
|
-
date: 2013-
|
13
|
+
date: 2013-10-23 00:00:00.000000000 Z
|
13
14
|
dependencies:
|
14
15
|
- !ruby/object:Gem::Dependency
|
15
16
|
name: websocket
|
16
17
|
requirement: !ruby/object:Gem::Requirement
|
18
|
+
none: false
|
17
19
|
requirements:
|
18
20
|
- - ~>
|
19
21
|
- !ruby/object:Gem::Version
|
@@ -21,52 +23,59 @@ dependencies:
|
|
21
23
|
type: :runtime
|
22
24
|
prerelease: false
|
23
25
|
version_requirements: !ruby/object:Gem::Requirement
|
26
|
+
none: false
|
24
27
|
requirements:
|
25
28
|
- - ~>
|
26
29
|
- !ruby/object:Gem::Version
|
27
30
|
version: 1.0.0
|
28
31
|
- !ruby/object:Gem::Dependency
|
29
|
-
name:
|
32
|
+
name: bacon
|
30
33
|
requirement: !ruby/object:Gem::Requirement
|
34
|
+
none: false
|
31
35
|
requirements:
|
32
|
-
- -
|
36
|
+
- - ! '>='
|
33
37
|
- !ruby/object:Gem::Version
|
34
|
-
version: 0
|
35
|
-
type: :
|
38
|
+
version: '0'
|
39
|
+
type: :development
|
36
40
|
prerelease: false
|
37
41
|
version_requirements: !ruby/object:Gem::Requirement
|
42
|
+
none: false
|
38
43
|
requirements:
|
39
|
-
- -
|
44
|
+
- - ! '>='
|
40
45
|
- !ruby/object:Gem::Version
|
41
|
-
version: 0
|
46
|
+
version: '0'
|
42
47
|
- !ruby/object:Gem::Dependency
|
43
|
-
name:
|
48
|
+
name: rake
|
44
49
|
requirement: !ruby/object:Gem::Requirement
|
50
|
+
none: false
|
45
51
|
requirements:
|
46
|
-
- - '>='
|
52
|
+
- - ! '>='
|
47
53
|
- !ruby/object:Gem::Version
|
48
54
|
version: '0'
|
49
55
|
type: :development
|
50
56
|
prerelease: false
|
51
57
|
version_requirements: !ruby/object:Gem::Requirement
|
58
|
+
none: false
|
52
59
|
requirements:
|
53
|
-
- - '>='
|
60
|
+
- - ! '>='
|
54
61
|
- !ruby/object:Gem::Version
|
55
62
|
version: '0'
|
56
63
|
- !ruby/object:Gem::Dependency
|
57
|
-
name:
|
64
|
+
name: bundler
|
58
65
|
requirement: !ruby/object:Gem::Requirement
|
66
|
+
none: false
|
59
67
|
requirements:
|
60
|
-
- -
|
68
|
+
- - ~>
|
61
69
|
- !ruby/object:Gem::Version
|
62
|
-
version: '
|
70
|
+
version: '1.3'
|
63
71
|
type: :development
|
64
72
|
prerelease: false
|
65
73
|
version_requirements: !ruby/object:Gem::Requirement
|
74
|
+
none: false
|
66
75
|
requirements:
|
67
|
-
- -
|
76
|
+
- - ~>
|
68
77
|
- !ruby/object:Gem::Version
|
69
|
-
version: '
|
78
|
+
version: '1.3'
|
70
79
|
description: Client for consuming WebSockets from http://pusher.com
|
71
80
|
email:
|
72
81
|
- support@pusher.com
|
@@ -92,6 +101,7 @@ files:
|
|
92
101
|
- lib/pusher-client/channel.rb
|
93
102
|
- lib/pusher-client/channels.rb
|
94
103
|
- lib/pusher-client/socket.rb
|
104
|
+
- lib/pusher-client/version.rb
|
95
105
|
- lib/pusher-client/websocket.rb
|
96
106
|
- pusher-client.gemspec
|
97
107
|
- test/pusherclient_test.rb
|
@@ -100,26 +110,33 @@ files:
|
|
100
110
|
homepage: http://github.com/pusher/pusher-ruby-client
|
101
111
|
licenses:
|
102
112
|
- MIT
|
103
|
-
metadata: {}
|
104
113
|
post_install_message:
|
105
114
|
rdoc_options: []
|
106
115
|
require_paths:
|
107
116
|
- lib
|
108
117
|
required_ruby_version: !ruby/object:Gem::Requirement
|
118
|
+
none: false
|
109
119
|
requirements:
|
110
|
-
- - '>='
|
120
|
+
- - ! '>='
|
111
121
|
- !ruby/object:Gem::Version
|
112
122
|
version: '0'
|
123
|
+
segments:
|
124
|
+
- 0
|
125
|
+
hash: -363523268946277982
|
113
126
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
127
|
+
none: false
|
114
128
|
requirements:
|
115
|
-
- - '>='
|
129
|
+
- - ! '>='
|
116
130
|
- !ruby/object:Gem::Version
|
117
131
|
version: '0'
|
132
|
+
segments:
|
133
|
+
- 0
|
134
|
+
hash: -363523268946277982
|
118
135
|
requirements: []
|
119
136
|
rubyforge_project:
|
120
|
-
rubygems_version:
|
137
|
+
rubygems_version: 1.8.25
|
121
138
|
signing_key:
|
122
|
-
specification_version:
|
139
|
+
specification_version: 3
|
123
140
|
summary: Client for consuming WebSockets from http://pusher.com
|
124
141
|
test_files:
|
125
142
|
- test/pusherclient_test.rb
|
checksums.yaml
DELETED
@@ -1,7 +0,0 @@
|
|
1
|
-
---
|
2
|
-
SHA1:
|
3
|
-
metadata.gz: ae55b3f792c691e98f7154ba962328ec959bcaa2
|
4
|
-
data.tar.gz: 5ef7c4404bfc6dcac8cbda2f442b1391f9133082
|
5
|
-
SHA512:
|
6
|
-
metadata.gz: 981d27529e1cd238512413af321dc350c7130baf7b76071dcdb1ecfc7470c1200ca6e6130f72a9330b063e0338aba1066d174cc6dd5b722663552f35a68bf0da
|
7
|
-
data.tar.gz: 4d1b3c766d363790b97a408a4817953b77f1bb94beebc190b6b35b48d3457b6866d23f4ab1d05ff73d0a47d6ead1af5d04ad4fc78e8261ded32f87d234419f04
|