opcua 0.11 → 0.12
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +109 -6
- data/Rakefile +6 -5
- data/cert/cert.h +52 -52
- data/cert/cert_key.h +101 -101
- data/example/client_get_sync.rb +15 -0
- data/example/client_get_value.rb +16 -0
- data/example/client_set_value.rb +15 -0
- data/example/server.rb +15 -3
- data/ext/opcua/client/client.c +143 -17
- data/ext/opcua/client/client.h +1 -0
- data/ext/opcua/server/extconf.rb +1 -0
- data/ext/opcua/server/server.c +252 -57
- data/ext/opcua/values.h +206 -41
- data/lib/opcua/client.rb +11 -0
- data/lib/opcua/server.rb +51 -0
- data/opcua.gemspec +1 -1
- metadata +5 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f5212a9fba61f6d2d65287c278cc581474e74bee58da6c80419b938e13062072
|
4
|
+
data.tar.gz: 3d317dcc03735236ca3a20d2f540a3ab72c20d86ab70dfb7fbb9ee777c193989
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 48f43b42d103b6f63ff12c3b234c4ffa960c56be035540d3b2cd0a452f5ac5aa30235a63ae745088cf1823c9336c6e57136f09b32bbb1cee9997b1ed85180b59
|
7
|
+
data.tar.gz: b57bd679fe3ee72eedeefbb4c09a4f202dbbb5c260780c7a955bad83c736ef29053b91a8e9e6a9e19095a3d0f6405f96f1cacda546c55dac4b7347da327e15e0
|
data/README.md
CHANGED
@@ -1,12 +1,29 @@
|
|
1
|
-
#
|
1
|
+
# OPC-UA Ruby Bindings (open62541)
|
2
2
|
|
3
|
-
|
3
|
+
The development of OPC UA applications takes currently a lot of effort. This is caused by the large possibilities of the OPC UA specification. With this implemtation we want to define some conventions, which shoud make the technology more useable.
|
4
4
|
|
5
|
-
|
6
|
-
General Public License 3.0 (see the file 'COPYING').
|
5
|
+
## Table of Contents
|
7
6
|
|
8
|
-
|
9
|
-
|
7
|
+
1. [Modelling Style](#Modelling-Style)
|
8
|
+
2. [Installation](#Installation)
|
9
|
+
3. [Examples](#Examples)
|
10
|
+
1. [Server](#Server)
|
11
|
+
1. [Create Server and Namespace](#Create-Server-and-Namespace)
|
12
|
+
2. [Create ObjectTypes](#Create-ObjectTypes)
|
13
|
+
3. [Manifest Objects](#Manifest-Objects)
|
14
|
+
4. [Find Nodes in the Addressspace](#Find-Nodes-in-the-Addressspace)
|
15
|
+
5. [Loop for getting Real Life Data](#Loop-for-getting-Real-Life-Data)
|
16
|
+
2. [Client](#Client)
|
17
|
+
|
18
|
+
## Modelling Style
|
19
|
+
|
20
|
+
The idea of the opcua-smart library is to simplify the OPC UA application generation. Since OPC UA has more than 1500 pages of basic specifications, and the number is still growing, we decided to make some simplification.
|
21
|
+
|
22
|
+
This is done by some constraints regarding the modeling functionality of OPC UA. This library deliberately does not offer all functions of OPC UA to simplify the creation of applications.
|
23
|
+
|
24
|
+
## COPYING
|
25
|
+
|
26
|
+
Copyright (C) 2019-* Jürgen "eTM" Mangler <juergen.mangler@gmail.com>. opcua-smart is freely distributable according to the terms of the GNU Lesser General Public License 3.0 (see the file 'COPYING'). This code is distributed without any warranty. See the file 'COPYING' for details.
|
10
27
|
|
11
28
|
## Installation
|
12
29
|
|
@@ -27,6 +44,92 @@ gem install opcua
|
|
27
44
|
|
28
45
|
![ccmake Config](config.png)
|
29
46
|
|
47
|
+
If the installation works correctly, but examples are still complaining about missing lib62541.so, try this:
|
48
|
+
|
49
|
+
```sh
|
50
|
+
sudo echo "/usr/local/lib" > /etc/ld.so.conf.d/local.conf # add to libs path
|
51
|
+
sudo ldconfig # update libs
|
52
|
+
sudo ldconfig -p | grep libopen62541 # check if its there
|
53
|
+
```
|
54
|
+
|
30
55
|
## EXAMPLES
|
31
56
|
|
57
|
+
### Server
|
58
|
+
|
59
|
+
The server has following steps:
|
60
|
+
* Create the server and add_namespace
|
61
|
+
* Create ObjectTypes
|
62
|
+
* Manifest ObjectTypes
|
63
|
+
* Find nodes in the adress space
|
64
|
+
* Loop for getting real life data
|
65
|
+
|
66
|
+
#### Create Server and Namespace
|
67
|
+
|
68
|
+
```ruby
|
69
|
+
server = OPCUA::Server.new
|
70
|
+
server.add_namespace "https://yourdomain/testserver"
|
71
|
+
```
|
72
|
+
|
73
|
+
|
74
|
+
#### Create ObjectTypes
|
75
|
+
|
76
|
+
Basically all new created types are subtypes of the _BaseObjectType_. With ```server.types.add_object_type(:TestObjectType)``` a new type is defined in the information model. All nodes of the new created type are defined in the ```tap{}``` region.
|
77
|
+
|
78
|
+
```ruby
|
79
|
+
to = server.types.add_object_type(:TestObjectType).tap{ |t|
|
80
|
+
t.add_variable :TestVariable
|
81
|
+
t.add_object(:TestObject, server.types.folder).tap{ |u|
|
82
|
+
u.add_object :M, mt, OPCUA::OPTIONAL
|
83
|
+
}
|
84
|
+
t.add_method :TestMethod, inputarg1: OPCUA::TYPES::STRING, inputarg2: OPCUA::TYPES::DATETIME do |node, inputarg1, inputarg2|
|
85
|
+
#do some stuff here
|
86
|
+
end
|
87
|
+
}
|
88
|
+
```
|
89
|
+
In this example the _TestObjectType_ is defined. It consits of _TestVariable_ of the _BaseVariableType_ an _TestObject_ of the _FolderType_ and a _TestMethod_.
|
90
|
+
|
91
|
+
The ``` .add_variable :TestVariable ``` command adds a variable with the name _TestVariable_.
|
92
|
+
|
93
|
+
With ```.add_object(:TestObject)``` a new object named _TestObject_ is added. The second parameter is optional and definies of which type the new object is. Default the object is from _BaseObjectType_. In this example the created object is from _FolderType_. All child nodes of the object can be definded in the ```tap{}``` area.
|
94
|
+
|
95
|
+
Methods are added with the ```.add_method(:TestMethod)``` function. Per default the method has no input and output arguments. By adding additional arguments you can define input arguments. The code for defining a method with input arguments looks like
|
96
|
+
```ruby
|
97
|
+
t.add_method :TestMethod, inputarg1: OPCUA::TYPES::STRING, inputarg2: OPCUA::TYPES::DATETIME do |node, inputarg1, inputarg2|
|
98
|
+
#do some stuff here
|
99
|
+
end
|
100
|
+
```
|
101
|
+
Input arguments can have a name and a type.
|
102
|
+
in the ```do...end```section you write the code which should be executed by calling the method.
|
103
|
+
|
104
|
+
#### Manifest Objects
|
105
|
+
|
106
|
+
ObjectTypes can be instiantiated with the ```.manifest``` method.
|
107
|
+
|
108
|
+
```ruby
|
109
|
+
testobject =server.objects.manifest(:TestObjectType, to)
|
110
|
+
```
|
111
|
+
|
112
|
+
#### Find Nodes in the Addressspace
|
113
|
+
|
114
|
+
To get a specific node u should use th ```.find``` method.
|
115
|
+
```ruby
|
116
|
+
tv = to.find(:TestVariable)
|
117
|
+
```
|
118
|
+
_tv_ is now the _TestVariable_ node.
|
119
|
+
|
120
|
+
#### Loop for getting Real Life Data
|
121
|
+
The server loop looks like follows:
|
122
|
+
```ruby
|
123
|
+
run do
|
124
|
+
sleep server.run
|
125
|
+
to.value = 'Testvariable1'
|
126
|
+
p to.value
|
127
|
+
rescue => e
|
128
|
+
puts e.message
|
129
|
+
end
|
130
|
+
```
|
131
|
+
|
132
|
+
The loop starts with ```sleep server.run```. This is recommended by the open62541 developer. With the ```.value``` function you can write or get the value of a node.
|
133
|
+
|
134
|
+
### Client
|
32
135
|
TBD. See examples subdirectory.
|
data/Rakefile
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
require 'rubygems/package_task'
|
2
2
|
require 'rake/extensiontask'
|
3
|
+
require 'fileutils'
|
3
4
|
|
4
5
|
spec = eval(File.read('opcua.gemspec'))
|
5
6
|
|
@@ -17,13 +18,13 @@ Rake.application.clear
|
|
17
18
|
|
18
19
|
task :default => [:gem]
|
19
20
|
|
20
|
-
pkg = Gem::PackageTask.new(spec)
|
21
|
+
pkg = Gem::PackageTask.new(spec) do |pkg|
|
21
22
|
pkg.need_zip = true
|
22
23
|
pkg.need_tar = true
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
24
|
+
FileUtils.mkdir 'pkg' rescue nil
|
25
|
+
FileUtils.rm_rf Dir.glob('pkg/*')
|
26
|
+
FileUtils.ln_sf "#{pkg.name}.gem", "pkg/#{spec.name}.gem"
|
27
|
+
end
|
27
28
|
|
28
29
|
task :push => :gem do |r|
|
29
30
|
`gem push pkg/opcua.gem`
|
data/cert/cert.h
CHANGED
@@ -1,70 +1,70 @@
|
|
1
1
|
unsigned char cert_der[] = {
|
2
2
|
0x30, 0x82, 0x03, 0x18, 0x30, 0x82, 0x02, 0x00, 0xa0, 0x03, 0x02, 0x01,
|
3
|
-
0x02, 0x02, 0x14,
|
4
|
-
|
3
|
+
0x02, 0x02, 0x14, 0x43, 0x81, 0x67, 0xdf, 0xdd, 0x10, 0xd4, 0xb8, 0x98,
|
4
|
+
0x8a, 0x8f, 0xea, 0xa9, 0x27, 0x85, 0xc2, 0x41, 0xd2, 0xf3, 0xa8, 0x30,
|
5
5
|
0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x0b,
|
6
6
|
0x05, 0x00, 0x30, 0x15, 0x31, 0x13, 0x30, 0x11, 0x06, 0x03, 0x55, 0x04,
|
7
7
|
0x03, 0x0c, 0x0a, 0x72, 0x75, 0x62, 0x79, 0x2d, 0x6f, 0x70, 0x63, 0x75,
|
8
|
-
0x61, 0x30, 0x1e, 0x17, 0x0d, 0x31, 0x39, 0x30, 0x36,
|
9
|
-
|
10
|
-
|
8
|
+
0x61, 0x30, 0x1e, 0x17, 0x0d, 0x31, 0x39, 0x30, 0x36, 0x33, 0x30, 0x31,
|
9
|
+
0x37, 0x32, 0x35, 0x33, 0x36, 0x5a, 0x17, 0x0d, 0x32, 0x30, 0x30, 0x36,
|
10
|
+
0x31, 0x39, 0x31, 0x37, 0x32, 0x35, 0x33, 0x36, 0x5a, 0x30, 0x15, 0x31,
|
11
11
|
0x13, 0x30, 0x11, 0x06, 0x03, 0x55, 0x04, 0x03, 0x0c, 0x0a, 0x72, 0x75,
|
12
12
|
0x62, 0x79, 0x2d, 0x6f, 0x70, 0x63, 0x75, 0x61, 0x30, 0x82, 0x01, 0x22,
|
13
13
|
0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01,
|
14
14
|
0x01, 0x05, 0x00, 0x03, 0x82, 0x01, 0x0f, 0x00, 0x30, 0x82, 0x01, 0x0a,
|
15
|
-
0x02, 0x82, 0x01, 0x01, 0x00,
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
15
|
+
0x02, 0x82, 0x01, 0x01, 0x00, 0xc4, 0x12, 0x36, 0x6d, 0x05, 0xde, 0xc7,
|
16
|
+
0x1b, 0x30, 0x2f, 0x2d, 0x20, 0xfe, 0xa7, 0x9f, 0xfe, 0x44, 0xb5, 0x1a,
|
17
|
+
0x6c, 0xa6, 0x16, 0x27, 0xd0, 0xc4, 0x4c, 0x12, 0xe5, 0xa5, 0xee, 0xc3,
|
18
|
+
0xa0, 0x6b, 0x5c, 0x1d, 0xd6, 0xe8, 0xae, 0x8c, 0x8d, 0x38, 0xa2, 0xb2,
|
19
|
+
0xc7, 0x53, 0x59, 0x12, 0x4e, 0xdd, 0x15, 0xee, 0xc2, 0xd7, 0x08, 0xd8,
|
20
|
+
0x6a, 0x6c, 0x93, 0xa6, 0xcd, 0x48, 0xbb, 0x2b, 0x3c, 0x72, 0xa9, 0x5b,
|
21
|
+
0xc5, 0x13, 0x76, 0xc5, 0x3b, 0x9a, 0xa1, 0xd3, 0xc0, 0x66, 0xd8, 0x8f,
|
22
|
+
0x47, 0xcc, 0x02, 0xd0, 0x53, 0xa2, 0x47, 0x5b, 0xa6, 0x43, 0xad, 0xc4,
|
23
|
+
0xb1, 0x73, 0x44, 0x65, 0x8f, 0x07, 0xc7, 0xda, 0x9b, 0xa6, 0x57, 0x45,
|
24
|
+
0x99, 0xfd, 0x2a, 0x47, 0x48, 0xd3, 0xe5, 0x2d, 0x95, 0xd8, 0x33, 0xba,
|
25
|
+
0x5a, 0x65, 0x38, 0x9a, 0x1a, 0xf6, 0x0e, 0x6e, 0x46, 0x35, 0x30, 0x07,
|
26
|
+
0xaa, 0x85, 0x0d, 0x10, 0x97, 0xe6, 0x1a, 0x6c, 0xb8, 0xad, 0xe0, 0xb7,
|
27
|
+
0x3d, 0x55, 0x11, 0xd8, 0xe2, 0xc2, 0xc9, 0x41, 0x8d, 0x8b, 0x7d, 0xb6,
|
28
|
+
0x3d, 0x65, 0xbf, 0xdb, 0x3f, 0x1d, 0x98, 0x3f, 0xd9, 0x25, 0xa5, 0x5c,
|
29
|
+
0x3c, 0x12, 0xeb, 0xf4, 0xca, 0xfe, 0x57, 0x80, 0xa8, 0x1b, 0x34, 0xfc,
|
30
|
+
0x7d, 0xcb, 0x2f, 0x62, 0xe1, 0x83, 0xe5, 0xa0, 0xc7, 0xb2, 0x7b, 0x12,
|
31
|
+
0x14, 0x2f, 0xe6, 0x59, 0x8b, 0x38, 0x61, 0x5f, 0x27, 0xb8, 0xe9, 0x86,
|
32
|
+
0xde, 0x06, 0x3b, 0x32, 0xa7, 0xb4, 0x1e, 0xdf, 0xc0, 0x3c, 0xb3, 0xe4,
|
33
|
+
0x84, 0x69, 0x12, 0xf2, 0x6b, 0xbe, 0xc3, 0xc1, 0x18, 0x9f, 0x5d, 0x5a,
|
34
|
+
0x0e, 0x6f, 0x73, 0xdd, 0x97, 0x3e, 0x33, 0x7f, 0x05, 0x71, 0x09, 0xf3,
|
35
|
+
0x72, 0x95, 0x1c, 0x11, 0x69, 0x98, 0x84, 0x79, 0xd5, 0x17, 0x6f, 0x9e,
|
36
|
+
0xfd, 0xe9, 0x3b, 0x6a, 0x09, 0x5b, 0xa7, 0xb8, 0xfb, 0x02, 0x03, 0x01,
|
37
37
|
0x00, 0x01, 0xa3, 0x60, 0x30, 0x5e, 0x30, 0x1d, 0x06, 0x03, 0x55, 0x1d,
|
38
|
-
0x0e, 0x04, 0x16, 0x04, 0x14,
|
39
|
-
|
40
|
-
|
38
|
+
0x0e, 0x04, 0x16, 0x04, 0x14, 0x40, 0x7c, 0x0d, 0x84, 0xeb, 0x1e, 0x0a,
|
39
|
+
0x73, 0xfe, 0x66, 0xc6, 0x62, 0x44, 0xe2, 0x65, 0xbc, 0xc1, 0x48, 0x2a,
|
40
|
+
0x7c, 0x30, 0x0f, 0x06, 0x03, 0x55, 0x1d, 0x13, 0x01, 0x01, 0xff, 0x04,
|
41
41
|
0x05, 0x30, 0x03, 0x01, 0x01, 0xff, 0x30, 0x1c, 0x06, 0x03, 0x55, 0x1d,
|
42
42
|
0x11, 0x04, 0x15, 0x30, 0x13, 0x86, 0x11, 0x72, 0x75, 0x62, 0x79, 0x2d,
|
43
43
|
0x6f, 0x70, 0x63, 0x75, 0x61, 0x3a, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74,
|
44
44
|
0x30, 0x0e, 0x06, 0x03, 0x55, 0x1d, 0x0f, 0x01, 0x01, 0xff, 0x04, 0x04,
|
45
45
|
0x03, 0x02, 0x05, 0xa0, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86,
|
46
46
|
0xf7, 0x0d, 0x01, 0x01, 0x0b, 0x05, 0x00, 0x03, 0x82, 0x01, 0x01, 0x00,
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
47
|
+
0x7e, 0xe9, 0x40, 0xa1, 0xf0, 0x43, 0x3a, 0xe3, 0xbc, 0xfc, 0xe9, 0x53,
|
48
|
+
0x04, 0xc9, 0x88, 0x1c, 0x8e, 0x3c, 0x1a, 0x83, 0xb5, 0xac, 0x82, 0xdc,
|
49
|
+
0x76, 0x70, 0xf0, 0xec, 0xc2, 0xac, 0x63, 0x56, 0x21, 0x76, 0x43, 0x9e,
|
50
|
+
0x5f, 0xa5, 0x8c, 0xea, 0x50, 0x83, 0x79, 0xb9, 0x27, 0xbb, 0x67, 0x76,
|
51
|
+
0x0e, 0x98, 0x14, 0x27, 0x60, 0x43, 0x92, 0x02, 0x61, 0xf7, 0x6e, 0x71,
|
52
|
+
0xd5, 0x53, 0x17, 0xca, 0xf8, 0x56, 0x04, 0x2b, 0x54, 0x41, 0x4e, 0x1c,
|
53
|
+
0x6a, 0xf0, 0x2c, 0x9c, 0x32, 0xb5, 0xaf, 0xed, 0x39, 0x3e, 0xb3, 0xd2,
|
54
|
+
0x28, 0x89, 0x75, 0x01, 0x77, 0xca, 0x50, 0xc2, 0x9b, 0xa9, 0x05, 0xe2,
|
55
|
+
0x40, 0x19, 0xfc, 0x2c, 0xa6, 0xee, 0xdd, 0xb8, 0xd2, 0x3a, 0xe9, 0xe1,
|
56
|
+
0x9e, 0x50, 0xe2, 0xbc, 0x54, 0x21, 0xc8, 0x42, 0x24, 0xe4, 0x11, 0xb5,
|
57
|
+
0xb4, 0x79, 0x12, 0x13, 0xd2, 0xf8, 0x78, 0x44, 0x1c, 0x62, 0xde, 0xbd,
|
58
|
+
0xf9, 0x77, 0xcf, 0x34, 0xdc, 0x77, 0xba, 0x32, 0x0e, 0x85, 0x4b, 0x19,
|
59
|
+
0xbe, 0x40, 0x98, 0x00, 0xd2, 0x93, 0x65, 0x30, 0x5b, 0x27, 0x79, 0xd6,
|
60
|
+
0xda, 0xcf, 0x82, 0xfe, 0x80, 0xcf, 0xbf, 0x86, 0x4a, 0xab, 0x38, 0xdb,
|
61
|
+
0x5c, 0x31, 0xc0, 0x91, 0x91, 0xf1, 0xc7, 0x9b, 0x2f, 0x99, 0x64, 0xf2,
|
62
|
+
0x2b, 0xba, 0x0d, 0xf8, 0x2e, 0x2d, 0x89, 0xd9, 0x20, 0x05, 0x37, 0xa3,
|
63
|
+
0x3c, 0x00, 0x20, 0x96, 0xf7, 0xc9, 0x1f, 0x1d, 0x47, 0xdb, 0x42, 0x85,
|
64
|
+
0x37, 0x35, 0xa7, 0x72, 0x92, 0x4e, 0x5a, 0x4b, 0x55, 0xc4, 0xb7, 0x7e,
|
65
|
+
0x69, 0x2e, 0x30, 0x89, 0x76, 0xc5, 0xba, 0x1e, 0xeb, 0x32, 0x47, 0x53,
|
66
|
+
0xff, 0x60, 0x5a, 0x8c, 0x36, 0x69, 0x11, 0x6c, 0xaa, 0x5c, 0x2b, 0xa8,
|
67
|
+
0xd1, 0x5a, 0xdf, 0x2e, 0x19, 0xfa, 0x51, 0xb1, 0xdf, 0x10, 0x06, 0xdf,
|
68
|
+
0x6f, 0x53, 0xaa, 0xe5
|
69
69
|
};
|
70
70
|
unsigned int cert_der_len = 796;
|
data/cert/cert_key.h
CHANGED
@@ -1,103 +1,103 @@
|
|
1
1
|
unsigned char cert_key_der[] = {
|
2
|
-
0x30, 0x82, 0x04,
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
0x00,
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
2
|
+
0x30, 0x82, 0x04, 0xa4, 0x02, 0x01, 0x00, 0x02, 0x82, 0x01, 0x01, 0x00,
|
3
|
+
0xc4, 0x12, 0x36, 0x6d, 0x05, 0xde, 0xc7, 0x1b, 0x30, 0x2f, 0x2d, 0x20,
|
4
|
+
0xfe, 0xa7, 0x9f, 0xfe, 0x44, 0xb5, 0x1a, 0x6c, 0xa6, 0x16, 0x27, 0xd0,
|
5
|
+
0xc4, 0x4c, 0x12, 0xe5, 0xa5, 0xee, 0xc3, 0xa0, 0x6b, 0x5c, 0x1d, 0xd6,
|
6
|
+
0xe8, 0xae, 0x8c, 0x8d, 0x38, 0xa2, 0xb2, 0xc7, 0x53, 0x59, 0x12, 0x4e,
|
7
|
+
0xdd, 0x15, 0xee, 0xc2, 0xd7, 0x08, 0xd8, 0x6a, 0x6c, 0x93, 0xa6, 0xcd,
|
8
|
+
0x48, 0xbb, 0x2b, 0x3c, 0x72, 0xa9, 0x5b, 0xc5, 0x13, 0x76, 0xc5, 0x3b,
|
9
|
+
0x9a, 0xa1, 0xd3, 0xc0, 0x66, 0xd8, 0x8f, 0x47, 0xcc, 0x02, 0xd0, 0x53,
|
10
|
+
0xa2, 0x47, 0x5b, 0xa6, 0x43, 0xad, 0xc4, 0xb1, 0x73, 0x44, 0x65, 0x8f,
|
11
|
+
0x07, 0xc7, 0xda, 0x9b, 0xa6, 0x57, 0x45, 0x99, 0xfd, 0x2a, 0x47, 0x48,
|
12
|
+
0xd3, 0xe5, 0x2d, 0x95, 0xd8, 0x33, 0xba, 0x5a, 0x65, 0x38, 0x9a, 0x1a,
|
13
|
+
0xf6, 0x0e, 0x6e, 0x46, 0x35, 0x30, 0x07, 0xaa, 0x85, 0x0d, 0x10, 0x97,
|
14
|
+
0xe6, 0x1a, 0x6c, 0xb8, 0xad, 0xe0, 0xb7, 0x3d, 0x55, 0x11, 0xd8, 0xe2,
|
15
|
+
0xc2, 0xc9, 0x41, 0x8d, 0x8b, 0x7d, 0xb6, 0x3d, 0x65, 0xbf, 0xdb, 0x3f,
|
16
|
+
0x1d, 0x98, 0x3f, 0xd9, 0x25, 0xa5, 0x5c, 0x3c, 0x12, 0xeb, 0xf4, 0xca,
|
17
|
+
0xfe, 0x57, 0x80, 0xa8, 0x1b, 0x34, 0xfc, 0x7d, 0xcb, 0x2f, 0x62, 0xe1,
|
18
|
+
0x83, 0xe5, 0xa0, 0xc7, 0xb2, 0x7b, 0x12, 0x14, 0x2f, 0xe6, 0x59, 0x8b,
|
19
|
+
0x38, 0x61, 0x5f, 0x27, 0xb8, 0xe9, 0x86, 0xde, 0x06, 0x3b, 0x32, 0xa7,
|
20
|
+
0xb4, 0x1e, 0xdf, 0xc0, 0x3c, 0xb3, 0xe4, 0x84, 0x69, 0x12, 0xf2, 0x6b,
|
21
|
+
0xbe, 0xc3, 0xc1, 0x18, 0x9f, 0x5d, 0x5a, 0x0e, 0x6f, 0x73, 0xdd, 0x97,
|
22
|
+
0x3e, 0x33, 0x7f, 0x05, 0x71, 0x09, 0xf3, 0x72, 0x95, 0x1c, 0x11, 0x69,
|
23
|
+
0x98, 0x84, 0x79, 0xd5, 0x17, 0x6f, 0x9e, 0xfd, 0xe9, 0x3b, 0x6a, 0x09,
|
24
|
+
0x5b, 0xa7, 0xb8, 0xfb, 0x02, 0x03, 0x01, 0x00, 0x01, 0x02, 0x82, 0x01,
|
25
|
+
0x00, 0x5e, 0x89, 0x65, 0x82, 0x95, 0x94, 0xff, 0xad, 0x65, 0x43, 0x29,
|
26
|
+
0xe0, 0x41, 0xc8, 0xb2, 0xc4, 0xd7, 0x7d, 0xf6, 0xba, 0xb2, 0x2d, 0xf6,
|
27
|
+
0x8e, 0x9b, 0x47, 0x0e, 0xc9, 0x79, 0x83, 0x31, 0x01, 0xb5, 0x22, 0x1a,
|
28
|
+
0x25, 0x17, 0xd5, 0xa9, 0x61, 0x22, 0x10, 0x98, 0x60, 0xb1, 0x18, 0x3e,
|
29
|
+
0x52, 0x96, 0x18, 0xd0, 0x21, 0x53, 0xab, 0x29, 0x25, 0xcf, 0x2a, 0x35,
|
30
|
+
0xff, 0xbe, 0xf4, 0xb7, 0xf9, 0x12, 0x54, 0x04, 0x32, 0x76, 0x9b, 0x0a,
|
31
|
+
0xa8, 0x1d, 0x7b, 0xaf, 0x6c, 0x92, 0x6a, 0x12, 0x53, 0x8c, 0xd3, 0x42,
|
32
|
+
0x7d, 0x40, 0xbe, 0x65, 0x3b, 0x3a, 0x60, 0x9b, 0x78, 0xef, 0xd9, 0xe7,
|
33
|
+
0x99, 0xda, 0x27, 0x8b, 0x89, 0x06, 0xe0, 0x07, 0x68, 0x22, 0xff, 0xf2,
|
34
|
+
0x94, 0xf3, 0xce, 0x09, 0x77, 0xb9, 0x61, 0xdf, 0x95, 0x5c, 0x3e, 0xb9,
|
35
|
+
0x57, 0x0c, 0x92, 0x92, 0xaa, 0xf9, 0x54, 0x2a, 0x2d, 0x3e, 0x9f, 0x1f,
|
36
|
+
0x34, 0x11, 0x40, 0xf6, 0x76, 0xea, 0xeb, 0x89, 0xc1, 0x61, 0x60, 0x61,
|
37
|
+
0x66, 0x10, 0xd7, 0x08, 0xe7, 0x83, 0x40, 0xa3, 0x40, 0x6b, 0x6e, 0xaf,
|
38
|
+
0x1d, 0x7b, 0x28, 0xce, 0xe2, 0x35, 0xd2, 0x0d, 0xd3, 0x81, 0x62, 0x62,
|
39
|
+
0xe9, 0xb5, 0x17, 0xfd, 0x58, 0xb7, 0xdf, 0xb0, 0x3f, 0x1e, 0x68, 0xc5,
|
40
|
+
0xf2, 0x86, 0x2d, 0x49, 0xf5, 0x93, 0xc8, 0x8a, 0xfd, 0x02, 0x6d, 0x1e,
|
41
|
+
0x18, 0xe7, 0x0a, 0xbf, 0x3d, 0x11, 0xf6, 0xdb, 0xdc, 0x2b, 0xa4, 0xf8,
|
42
|
+
0xb8, 0xc5, 0xbf, 0x9b, 0x1d, 0xbf, 0x28, 0x7b, 0x22, 0x9e, 0xf2, 0x9c,
|
43
|
+
0xcb, 0x6c, 0xe2, 0xab, 0x95, 0x40, 0x51, 0xf4, 0x2f, 0x19, 0x5b, 0xff,
|
44
|
+
0xa2, 0x65, 0x1d, 0xf2, 0xd5, 0x92, 0xef, 0xe2, 0xa8, 0x89, 0x19, 0xc7,
|
45
|
+
0x16, 0x2d, 0x4a, 0x27, 0x9c, 0xc5, 0xe1, 0x28, 0x07, 0xf2, 0x26, 0x6d,
|
46
|
+
0xa7, 0x53, 0x89, 0x77, 0xc1, 0x02, 0x81, 0x81, 0x00, 0xe2, 0xdb, 0x66,
|
47
|
+
0x27, 0x8d, 0xa8, 0x60, 0x62, 0x70, 0x72, 0x25, 0x05, 0xa3, 0x94, 0xc5,
|
48
|
+
0x09, 0xe2, 0x2c, 0xd3, 0x84, 0xa5, 0x0f, 0xeb, 0x94, 0x34, 0x01, 0x67,
|
49
|
+
0x3e, 0xb3, 0x81, 0x3e, 0x73, 0xab, 0xf5, 0x30, 0x62, 0x9e, 0xd7, 0x70,
|
50
|
+
0x71, 0x4d, 0x99, 0x3b, 0xb8, 0xfe, 0xf7, 0xb7, 0x10, 0xd3, 0xca, 0x86,
|
51
|
+
0x5b, 0x66, 0xfe, 0xa7, 0x7d, 0xe2, 0x20, 0x0d, 0x00, 0xbd, 0xcc, 0x15,
|
52
|
+
0x01, 0xc8, 0x93, 0x3b, 0xe9, 0xcb, 0x45, 0x54, 0xb4, 0xf5, 0xfe, 0x78,
|
53
|
+
0xa5, 0x8b, 0xe2, 0x6c, 0xcd, 0x07, 0xcd, 0xf4, 0x20, 0x95, 0x67, 0x9b,
|
54
|
+
0xaf, 0xbf, 0x54, 0xe2, 0xf8, 0x0a, 0x84, 0x1a, 0x9e, 0xea, 0x97, 0xe6,
|
55
|
+
0x1a, 0x11, 0x70, 0x04, 0x37, 0xb1, 0x0f, 0x5f, 0x55, 0x33, 0x75, 0x6d,
|
56
|
+
0xb6, 0x64, 0xbf, 0xbe, 0x2a, 0xaa, 0x43, 0xbc, 0x4a, 0x52, 0x9c, 0x69,
|
57
|
+
0x69, 0x19, 0xe6, 0x92, 0xa1, 0x02, 0x81, 0x81, 0x00, 0xdd, 0x42, 0x5d,
|
58
|
+
0x4b, 0x6c, 0x53, 0x8e, 0x6c, 0x8a, 0x53, 0xef, 0x9c, 0xd0, 0xc1, 0x19,
|
59
|
+
0x87, 0xe4, 0x83, 0xe2, 0x60, 0x54, 0x99, 0xaa, 0x57, 0xee, 0x35, 0x75,
|
60
|
+
0xc6, 0x46, 0x92, 0x08, 0xea, 0x19, 0x83, 0x4a, 0xad, 0xe5, 0xe0, 0x00,
|
61
|
+
0x21, 0xfb, 0xf9, 0xf7, 0x40, 0x3a, 0xa4, 0x1c, 0x66, 0xae, 0xb1, 0x1a,
|
62
|
+
0x19, 0xe4, 0x4a, 0x52, 0x57, 0x62, 0xd2, 0x6e, 0x15, 0x5a, 0xb4, 0x52,
|
63
|
+
0x70, 0x5c, 0x84, 0xb1, 0xf1, 0x8f, 0xcb, 0x3f, 0x27, 0xae, 0x9c, 0xdb,
|
64
|
+
0x35, 0xe5, 0xd5, 0x3e, 0xad, 0x18, 0x05, 0xc4, 0x7c, 0xaa, 0x59, 0x81,
|
65
|
+
0xe6, 0x22, 0xea, 0xbe, 0x88, 0x2f, 0x3a, 0xc5, 0x13, 0xf1, 0x6d, 0x4c,
|
66
|
+
0xcd, 0x8b, 0x41, 0xc8, 0x67, 0x69, 0xd0, 0xbe, 0xdf, 0x06, 0xa6, 0xf0,
|
67
|
+
0x0c, 0x93, 0x3e, 0x03, 0x7e, 0x91, 0xa5, 0x22, 0x37, 0x74, 0x93, 0x52,
|
68
|
+
0x57, 0x06, 0x91, 0x02, 0x1b, 0x02, 0x81, 0x80, 0x75, 0x63, 0xe4, 0xfb,
|
69
|
+
0xc8, 0xc0, 0xfd, 0x87, 0x52, 0xfa, 0xae, 0x0f, 0xb9, 0xf3, 0x4c, 0xf6,
|
70
|
+
0xed, 0x54, 0x16, 0xec, 0x47, 0xe1, 0xf2, 0x1c, 0xd1, 0xc0, 0x7c, 0x25,
|
71
|
+
0xa5, 0x0b, 0xd7, 0x3e, 0x52, 0x18, 0x61, 0xbe, 0x56, 0xc5, 0xd3, 0x08,
|
72
|
+
0xbe, 0x87, 0xf1, 0xb0, 0xac, 0x37, 0x91, 0x42, 0xa2, 0xe5, 0xe5, 0x1a,
|
73
|
+
0xbd, 0x34, 0x3f, 0x85, 0xd3, 0x92, 0x94, 0x47, 0xf2, 0xee, 0xfd, 0x5b,
|
74
|
+
0xdb, 0xe7, 0xdc, 0x94, 0x01, 0xbc, 0xd1, 0xb5, 0x86, 0xa9, 0xf4, 0xd2,
|
75
|
+
0x6d, 0x8d, 0x70, 0x91, 0xb4, 0x5d, 0x2d, 0xdc, 0x02, 0x94, 0x07, 0xab,
|
76
|
+
0x2d, 0x0e, 0x07, 0x19, 0x25, 0x8f, 0xf0, 0x9a, 0x95, 0x78, 0x9e, 0xf8,
|
77
|
+
0x94, 0x57, 0x6b, 0xc7, 0x49, 0xd7, 0x53, 0x94, 0xaa, 0x39, 0x34, 0xd9,
|
78
|
+
0xb2, 0x4e, 0xca, 0x60, 0x17, 0x95, 0x4f, 0x85, 0x02, 0x34, 0xb0, 0x13,
|
79
|
+
0x53, 0xf4, 0xcd, 0xa1, 0x02, 0x81, 0x81, 0x00, 0xd3, 0x4e, 0x77, 0x04,
|
80
|
+
0xfa, 0x0e, 0x8e, 0x7d, 0x70, 0x5a, 0x1b, 0x03, 0x5b, 0x86, 0x9f, 0x18,
|
81
|
+
0x5e, 0x0f, 0xea, 0x19, 0x6f, 0x92, 0x55, 0xd1, 0xa6, 0x28, 0x9e, 0x32,
|
82
|
+
0xde, 0xe0, 0xc6, 0xec, 0xb3, 0xb2, 0xe4, 0x96, 0x51, 0x6c, 0x6d, 0x14,
|
83
|
+
0x07, 0xae, 0x41, 0x08, 0xb1, 0x38, 0x5b, 0xfb, 0x60, 0xa8, 0xb8, 0xb1,
|
84
|
+
0xb3, 0x89, 0x9b, 0x3b, 0xe3, 0x9f, 0xee, 0x0c, 0x2c, 0xd4, 0xfb, 0xca,
|
85
|
+
0x5d, 0x41, 0x49, 0x23, 0xd6, 0xdd, 0x17, 0x92, 0x91, 0x3b, 0x32, 0x4b,
|
86
|
+
0x36, 0x15, 0x42, 0xc7, 0x52, 0xa2, 0xe7, 0x74, 0xdb, 0xc7, 0xa1, 0xbc,
|
87
|
+
0x24, 0xea, 0xa5, 0x4e, 0x30, 0x34, 0xe3, 0x54, 0x59, 0x84, 0xb6, 0x0d,
|
88
|
+
0xb3, 0x09, 0xff, 0x17, 0x6c, 0x42, 0x34, 0x97, 0x90, 0xa5, 0xcb, 0xa9,
|
89
|
+
0x66, 0xd1, 0x99, 0xca, 0xbd, 0xd3, 0xc4, 0x6a, 0xcb, 0xc5, 0x8a, 0xa4,
|
90
|
+
0x9c, 0x1b, 0xce, 0xb3, 0x02, 0x81, 0x81, 0x00, 0x9c, 0x88, 0x39, 0xe7,
|
91
|
+
0xce, 0x19, 0x64, 0x9f, 0x90, 0x59, 0x6e, 0x09, 0xff, 0x86, 0x0e, 0x75,
|
92
|
+
0x0b, 0xa2, 0x69, 0x1d, 0x92, 0xba, 0xa0, 0x33, 0x59, 0x48, 0x36, 0x7c,
|
93
|
+
0x03, 0x8c, 0x5a, 0x9b, 0x05, 0xcc, 0x10, 0xbe, 0xdc, 0x9d, 0xbf, 0x52,
|
94
|
+
0xdf, 0x82, 0x6f, 0x25, 0xe3, 0x80, 0x49, 0x15, 0x54, 0x88, 0xb1, 0x32,
|
95
|
+
0xa9, 0x98, 0xbe, 0x43, 0x99, 0xf7, 0x57, 0x7f, 0x00, 0xa9, 0x99, 0xc4,
|
96
|
+
0x62, 0xe0, 0x69, 0x33, 0x01, 0xf1, 0x2f, 0x0e, 0x07, 0x19, 0xcc, 0x1f,
|
97
|
+
0xa2, 0xc8, 0xab, 0x64, 0x79, 0xc0, 0x7a, 0x5d, 0xc3, 0x40, 0xb4, 0x21,
|
98
|
+
0x38, 0x29, 0x36, 0x19, 0x6f, 0x4e, 0xb1, 0x58, 0x88, 0x04, 0xa3, 0x53,
|
99
|
+
0xe2, 0xfc, 0xc7, 0xf1, 0x8b, 0x1b, 0xed, 0x25, 0x60, 0x68, 0x59, 0x7d,
|
100
|
+
0x47, 0x04, 0xde, 0x85, 0x4b, 0x17, 0x25, 0x4e, 0x01, 0x08, 0x7b, 0x50,
|
101
|
+
0x06, 0x0b, 0x2b, 0xbe
|
102
102
|
};
|
103
|
-
unsigned int cert_key_der_len =
|
103
|
+
unsigned int cert_key_der_len = 1192;
|