提交 87cfc13b 编写于 作者: R Roger Light

Add OpenSSL attribution.

上级 e9f93670
......@@ -36,4 +36,3 @@ lib/libmosquitto.so*
lib/libmosquitto.a
build/
dist/
0482c81e9e94f432b54c4216158029298fd97cc3 v0.10.1
cc6bbd205be454a700821673aa2b38355d534708 v0.12
2ae3b6e48aaf991ac5a75d556213a1fa52799869 v1.0.1
06772054acc4914437d315c10a886c7b8002b2f6 v0.9
556d9461c9659926de45b2f3dfd5a3c5181a6cf3 v1.0.2
ceed321ad554cf42da49ab60815094f06ed0c277 v0.10
307d0e7b62ea084ccff5ccd72e43f38091a8403a v0.7
cbc9453f946da062f49b27bcfabc5093b6b5fc54 v1.1.2
3e9def9b8a9bc13afde41388c0999767e26deee3 v0.1
0dac384e23eb38ed65e7653a4a3961aee3cba973 v0.13
66401b0ef8710c53c9f544440c6cdca546e129ec v1.1.1
bb690a0a8aff719d4c641818f888f5f3730b52e2 v1.1.3
089c0321127940b91eb8966c94f0f2d931257219 v0.8
5766fc3ab93d8a46624cc4a3153fa314c4dcb5ab v0.6
5766fc3ab93d8a46624cc4a3153fa314c4dcb5ab v0.6.1
9912a1c3d0f1f296ce92057a4e581f5aac0084c6 v0.9.2
29dd32d9d4b5a9ab6bbf8a529bee8088126806a8 v0.14
956d77a21a8db447ef0fa33313eb5ef5cfa80cad v0.8.3
53488316e196ac20d29a546584ca6aa39cf89579 v0.10.2
b06ea8b9331364b278d61e5ae4e8679ad9010a8a v1.1
693e4aefc7f8bed3bf2869875d1c8163ddd8add4 v0.4
693e4aefc7f8bed3bf2869875d1c8163ddd8add4 v0.4.1
693e4aefc7f8bed3bf2869875d1c8163ddd8add4 v0.4.2
0c937c6b6c5048af2236525d2ad6db2b7f351487 v1.0.4
89d29a43919cbbd6879f8d74e935f2aa9cc6136b v0.9.1
b6e777e6703fa49cabe1392cd53fa497fbe242aa v0.11.2
2c30efdf4aabe25a22a8020d1668dd05fd472d90 v0.11
83b42b819df39de8183e9e108c4e45e80ab5f537 v1.0
fd869713ee7d09ad5b28670f5e83c7c9597caf45 v1.0.5
59612a2d610b83707c25f8240de5361b0fdb6f66 v0.8.2
5def3ca7755a4dc341659061dfbe5657d37ab42d v0.8.1
98d61ee3eecbd4c144318e104cf47b8e08024112 v0.2
9d0e83adcfd5d52ea54a7808cacfce61933a2a33 v0.5
9d0e83adcfd5d52ea54a7808cacfce61933a2a33 v0.5.1
9f53d0232b1556391d8abf6900336645659b5a07 v0.5.2
9f53d0232b1556391d8abf6900336645659b5a07 v0.5.3
9f53d0232b1556391d8abf6900336645659b5a07 v0.5.4
622090cbba760c58fcfc183bbacef2efeca1a374 v0.14.3
cfc1d07f7d2d2301aefcfc0a7b27360812f63f2f v0.3
b180b175cbd136f69c837a9163ada8a1d318d0f0 v1.0.3
bc32b4d2878a7a223938e7429fc96b5a7f4fac29 v0.11.3
4823a0f26fc8af8056aef81820dfe08924880e7a v0.14.2
efed4cbb97d50fc83ca20914b26c9f51240d27d2 v0.14.1
f4331b649d5fc877af240a3c05b4f5df78a84fa5 v0.15
d6037658e2c66bde9362cf96ddd4585355706e63 v0.9.3
11c5e290ff768dd5f9be3f547332be903faa042b v0.11.1
fb01d783a9485f87e68bf138ec750c2aa1582329 v0.14.4
include config.mk
DIRS=lib
DOCDIRS=
DISTDIRS=
DIRS=lib client src
DOCDIRS=man
DISTDIRS=man
.PHONY : all docs clean reallyclean test
.PHONY : all mosquitto docs binary clean reallyclean test install uninstall dist sign copy
all : mosquitto docs
all : docs
for d in ${DIRS}; do $(MAKE) -C $${d}; done
docs :
for d in ${DOCDIRS}; do $(MAKE) -C $${d}; done
binary : mosquitto
mosquitto :
for d in ${DIRS}; do $(MAKE) -C $${d}; done
clean :
for d in ${DIRS}; do $(MAKE) -C $${d} clean; done
for d in ${DOCDIRS}; do $(MAKE) -C $${d} clean; done
......@@ -27,43 +21,6 @@ reallyclean :
$(MAKE) -C test reallyclean
-rm -f *.orig
test : mosquitto
test :
$(MAKE) -C test test
install : mosquitto
@for d in ${DIRS}; do $(MAKE) -C $${d} install; done
@for d in ${DOCDIRS}; do $(MAKE) -C $${d} install; done
$(INSTALL) -d ${DESTDIR}/etc/mosquitto
$(INSTALL) -m 644 mosquitto.conf ${DESTDIR}/etc/mosquitto/mosquitto.conf.example
$(INSTALL) -m 644 aclfile.example ${DESTDIR}/etc/mosquitto/aclfile.example
$(INSTALL) -m 644 pwfile.example ${DESTDIR}/etc/mosquitto/pwfile.example
$(INSTALL) -m 644 pskfile.example ${DESTDIR}/etc/mosquitto/pskfile.example
uninstall :
@for d in ${DIRS}; do $(MAKE) -C $${d} uninstall; done
rm -f ${DESTDIR}/etc/mosquitto/mosquitto.conf
rm -f ${DESTDIR}/etc/mosquitto/aclfile.example
rm -f ${DESTDIR}/etc/mosquitto/pwfile.example
rm -f ${DESTDIR}/etc/mosquitto/pskfile.example
dist : reallyclean
@for d in ${DISTDIRS}; do $(MAKE) -C $${d} dist; done
mkdir -p dist/mosquitto-${VERSION}
cp -r client examples installer lib logo man misc security service src test ChangeLog.txt CMakeLists.txt LICENSE.txt LICENSE-3rd-party.txt Makefile compiling.txt config.h config.mk readme.txt readme-windows.txt mosquitto.conf aclfile.example pskfile.example pwfile.example dist/mosquitto-${VERSION}/
cd dist; tar -zcf mosquitto-${VERSION}.tar.gz mosquitto-${VERSION}/
for m in man/*.xml; \
do \
hfile=$$(echo $${m} | sed -e 's#man/\(.*\)\.xml#\1#' | sed -e 's/\./-/g'); \
$(XSLTPROC) $(DB_HTML_XSL) $${m} > dist/$${hfile}.html; \
done
sign : dist
cd dist; gpg --detach-sign -a mosquitto-${VERSION}.tar.gz
copy : sign
cd dist; scp mosquitto-${VERSION}.tar.gz mosquitto-${VERSION}.tar.gz.asc mosquitto:site/mosquitto.org/files/source/
cd dist; scp *.html mosquitto:site/mosquitto.org/man/
scp ChangeLog.txt mosquitto:site/mosquitto.org/
include ../../config.mk
# Set DESTDIR if it isn't given
DESTDIR?=/
......
......@@ -24,6 +24,13 @@
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
#
# This product includes software developed by the OpenSSL Project for use in
# the OpenSSL Toolkit. (http://www.openssl.org/)
# This product includes cryptographic software written by Eric Young
# (eay@cryptsoft.com)
# This product includes software written by Tim Hudson (tjh@cryptsoft.com)
"""
This is an MQTT v3.1 client module. MQTT is a lightweight pub/sub messaging
......@@ -597,12 +604,9 @@ class Mosquitto:
# Put messages in progress in a valid state.
self._messages_reconnect_reset()
try:
self._sock = socket.create_connection((self._host, self._port))
except socket.error as err:
(msg) = err
if msg.errno != errno.EINPROGRESS:
raise
self._sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# FIXME use create_connection here
if self._tls_ca_certs != None:
self._ssl = ssl.wrap_socket(self._sock,
......@@ -613,6 +617,14 @@ class Mosquitto:
ssl_version=self._tls_version,
ciphers=self._tls_ciphers)
try:
self.socket().connect((self._host, self._port))
except socket.error as err:
(msg) = err
if msg.errno != errno.EINPROGRESS:
print(msg)
return 1
self._sock.setblocking(0)
return self._send_connect(self._keepalive, self._clean_session)
......@@ -1077,7 +1089,8 @@ class Mosquitto:
return MOSQ_ERR_AGAIN
if msg.errno == errno.EAGAIN:
return MOSQ_ERR_AGAIN
raise
print(msg)
return 1
else:
if len(command) == 0:
return 1
......@@ -1100,7 +1113,8 @@ class Mosquitto:
return MOSQ_ERR_AGAIN
if msg.errno == errno.EAGAIN:
return MOSQ_ERR_AGAIN
raise
print(msg)
return 1
else:
byte = struct.unpack("!B", byte)
byte = byte[0]
......@@ -1131,7 +1145,8 @@ class Mosquitto:
return MOSQ_ERR_AGAIN
if msg.errno == errno.EAGAIN:
return MOSQ_ERR_AGAIN
raise
print(msg)
return 1
else:
self._in_packet.to_process = self._in_packet.to_process - len(data)
self._in_packet.packet = self._in_packet.packet + data
......@@ -1169,7 +1184,8 @@ class Mosquitto:
return MOSQ_ERR_AGAIN
if msg.errno == errno.EAGAIN:
return MOSQ_ERR_AGAIN
raise
print(msg)
return 1
if write_length > 0:
packet.to_process = packet.to_process - write_length
......
......@@ -2,7 +2,7 @@ from sys import version
from distutils.core import setup
setup(name='mosquitto',
version='1.1.90',
version='1.1.1',
description='MQTT version 3.1 client class',
author='Roger Light',
author_email='roger@atchoo.org',
......
include ../config.mk
CC=cc
CFLAGS=-I../src -I../lib -I. -I.. -Wall -ggdb -DDEBUG -DWITH_CLIENT
LDFLAGS=
OBJS=context.o database.o logging.o memory.o net.o raw_send.o raw_send_client.o read_handle.o read_handle_client.o util.o
SOVERSION=1
.PHONY: all test clean reallyclean
all : fake_user msgsps_pub msgsps_sub
#packet-gen qos
all :
test :
$(MAKE) -C broker test
$(MAKE) -C lib test
fake_user : fake_user.o
${CC} $^ -o $@ ../lib/libmosquitto.so.${SOVERSION}
#${CC} $^ -o $@ -lmosquitto
fake_user.o : fake_user.c
${CC} $(CFLAGS) -c $< -o $@
msgsps_pub : msgsps_pub.o
${CC} $^ -o $@ ../lib/libmosquitto.so.${SOVERSION}
msgsps_pub.o : msgsps_pub.c msgsps_common.h
${CC} $(CFLAGS) -c $< -o $@
msgsps_sub : msgsps_sub.o
${CC} $^ -o $@ ../lib/libmosquitto.so.${SOVERSION}
msgsps_sub.o : msgsps_sub.c msgsps_common.h
${CC} $(CFLAGS) -c $< -o $@
packet-gen : packet-gen.o
${CC} $^ -o $@ ../lib/libmosquitto.so.${SOVERSION}
packet-gen.o : packet-gen.c
${CC} $(CFLAGS) -c $< -o $@
qos : qos.o
${CC} $^ -o $@ ../lib/libmosquitto.so.${SOVERSION}
qos.o : qos.c
${CC} $(CFLAGS) -c $< -o $@
random_client : random_client.o ${OBJS}
${CC} $^ -o $@ ${LDFLAGS}
random_client.o : random_client.c ../src/mqtt3.h
${CC} $(CFLAGS) -c $< -o $@
context.o : ../src/context.c ../src/mqtt3.h
${CC} $(CFLAGS) -c $< -o $@
database.o : ../src/database.c ../src/mqtt3.h
${CC} $(CFLAGS) -c $< -o $@
logging.o : ../src/logging.c ../src/mqtt3.h
${CC} $(CFLAGS) -c $< -o $@
memory.o : ../src/memory.c ../src/mqtt3.h
${CC} $(CFLAGS) -c $< -o $@
net.o : ../src/net.c ../src/mqtt3.h
${CC} $(CFLAGS) -c $< -o $@
raw_send.o : ../src/raw_send.c ../src/mqtt3.h
${CC} $(CFLAGS) -c $< -o $@
raw_send_client.o : ../src/raw_send_client.c ../src/mqtt3.h
${CC} $(CFLAGS) -c $< -o $@
read_handle.o : ../src/read_handle.c ../src/mqtt3.h
${CC} $(CFLAGS) -c $< -o $@
read_handle_client.o : ../src/read_handle_client.c ../src/mqtt3.h
${CC} $(CFLAGS) -c $< -o $@
util.o : ../src/util.c ../src/mqtt3.h
${CC} $(CFLAGS) -c $< -o $@
reallyclean : clean
-rm -f *.orig
clean :
-rm -f *.o random_client qos msgsps_pub msgsps_sub fake_user test_client *.pyc
$(MAKE) -C lib clean
$(MAKE) -C broker clean
......@@ -11,7 +11,7 @@
# should handle this as per the spec by sending a PUBREC message.
# The test will not respond to the first PUBREC message, so the client must
# resend the PUBREC message with dup=1. Note that to keep test durations low, a
# message retry timeout of less than 10 seconds is required for this test.
# message retry timeout of less than 5 seconds is required for this test.
# On receiving the second PUBREC with dup==1, the test will send the correct
# PUBREL message. The client should respond to this with the correct PUBCOMP
# message and then exit with return code=0.
......@@ -45,7 +45,7 @@ pubcomp_packet = mosq_test.gen_pubcomp(mid)
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
sock.settimeout(10)
sock.settimeout(5)
sock.bind(('', 1888))
sock.listen(5)
......
......@@ -11,7 +11,7 @@
# "pub/qos1/test", payload "message" and QoS=1.
# The test will not respond to the first PUBLISH message, so the client must
# resend the PUBLISH message with dup=1. Note that to keep test durations low, a
# message retry timeout of less than 10 seconds is required for this test.
# message retry timeout of less than 5 seconds is required for this test.
# On receiving the second PUBLISH message, the test will send the correct
# PUBACK response. On receiving the correct PUBACK response, the client should
# send a DISCONNECT message.
......@@ -60,7 +60,7 @@ client = subprocess.Popen(client_args, env=env)
try:
(conn, address) = sock.accept()
conn.settimeout(10)
conn.settimeout(5)
if mosq_test.expect_packet(conn, "connect", connect_packet):
conn.send(connack_packet)
......
......@@ -49,7 +49,7 @@ client = subprocess.Popen(client_args, env=env)
try:
(conn, address) = sock.accept()
conn.settimeout(10)
conn.settimeout(5)
if mosq_test.expect_packet(conn, "connect", connect_packet):
conn.send(connack_packet)
......
......@@ -11,7 +11,7 @@
# "pub/qos2/test", payload "message" and QoS=2.
# The test will not respond to the first PUBLISH message, so the client must
# resend the PUBLISH message with dup=1. Note that to keep test durations low, a
# message retry timeout of less than 10 seconds is required for this test.
# message retry timeout of less than 5 seconds is required for this test.
# On receiving the second PUBLISH message, the test will send the correct
# PUBREC response. On receiving the correct PUBREC response, the client should
# send a PUBREL message.
......@@ -67,7 +67,7 @@ client = subprocess.Popen(client_args, env=env)
try:
(conn, address) = sock.accept()
conn.settimeout(10)
conn.settimeout(5)
if mosq_test.expect_packet(conn, "connect", connect_packet):
conn.send(connack_packet)
......
.PHONY: all test test-compile test-compile-c test-compile-cpp c cpp python python3
.PHONY: all test python python3
.NOTPARALLEL:
LD_LIBRARY_PATH=../../lib
all :
test : c cpp python python3
test-compile : test-compile-c test-compile-cpp
test-compile-c :
$(MAKE) -C c
test-compile-cpp :
$(MAKE) -C cpp
test : python python3
c cpp python python3 : test-compile
python python3 :
./01-con-discon-success.py $@/01-con-discon-success.test
./01-will-set.py $@/01-will-set.test
./01-unpwd-set.py $@/01-unpwd-set.test
......@@ -40,6 +30,3 @@ c cpp python python3 : test-compile
./08-ssl-bad-cacert.py $@/08-ssl-bad-cacert.test
./09-util-topic-matching.py $@/09-util-topic-matching.test
clean :
$(MAKE) -C c clean
$(MAKE) -C cpp clean
-----BEGIN CERTIFICATE-----
MIICxjCCAi8CCQDNrg5WSiiRqjANBgkqhkiG9w0BAQUFADCBoDELMAkGA1UEBhMC
MIICpDCCAg0CCQDNrg5WSiiRpzANBgkqhkiG9w0BAQUFADCBoDELMAkGA1UEBhMC
R0IxFzAVBgNVBAgMDlVuaXRlZCBLaW5nZG9tMQ4wDAYDVQQHDAVEZXJieTEdMBsG
A1UECgwUTW9zcXVpdHRvIFRlc3QgU3VpdGUxDzANBgNVBAsMBkJyb2tlcjEXMBUG
A1UEAwwOYnJva2VyLXRlc3QtY2ExHzAdBgkqhkiG9w0BCQEWEHRlc3RAZXhhbXBs
ZS5jb20wHhcNMTMwMjIyMjEzMDIyWhcNMjMwMjIwMjEzMDIyWjCBrTELMAkGA1UE
ZS5jb20wHhcNMTIwNzAzMTQ0MDAwWhcNMzkxMTE4MTQ0MDAwWjCBizELMAkGA1UE
BhMCR0IxFzAVBgNVBAgMDlVuaXRlZCBLaW5nZG9tMQ4wDAYDVQQHDAVEZXJieTEd
MBsGA1UECgwUTW9zcXVpdHRvIFRlc3QgU3VpdGUxFDASBgNVBAsMC0Jyb2tlciBU
ZXN0MR4wHAYDVQQDDBVsb2NhbGhvc3Qtbm9uLXJldm9rZWQxIDAeBgkqhkiG9w0B
CQEWEXRlc3QxQGV4YW1wbGUuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKB
gQClAM49bIqhRQdDO+0Dtomi1EeH43ECWq+r9747kQ5RUJyA1m4mNHV6nQR+HMzc
amFd7XVuP4o5AAO5Q0KeyXRNVfvrljk39XqbkzmXeaTxNiMzk01MsFYlDP7i8Xt/
IvAQ6J39UN8lzY/SdqW55nAfMZmoQCIP3h+gvt4DHjAyRQIDAQABMA0GCSqGSIb3
DQEBBQUAA4GBAEhL1QRF2mrpbErgPK4zX+2UXKMQQVon2XHvI9iETk7O/e7yYSWB
N9V7oS4rMDEo6qebnnjtBRJ/bDtSkHm+I1y4Xg3nPUTPeYpvtyTzcLORr7rV336O
05xmaOCeRBZXKohcCvdbV8KA8/EjC3BI04S4pkehjgARpY/DL026VbGp
ZXN0MR4wHAYDVQQDDBVsb2NhbGhvc3QtY2xpZW50LXRlc3QwgZ8wDQYJKoZIhvcN
AQEBBQADgY0AMIGJAoGBAM1kzx27D7TooydBNi6tTIMvstPZqFviwN5JGCKxs0wI
ZAdVP1HNeECioww4HiMO6J6IfcLppLDuWr1pteSG471MjGLPc0Z6UKNejKntM30p
7649fBZ9DIomVKTJHya/jtU8hIJfSpY29FKGOe3gVjg99nFZtB1dGnycQys5FRVZ
AgMBAAEwDQYJKoZIhvcNAQEFBQADgYEAXB40zdyBFQ7BjDbDFV/vcx4E2rpVxnQ4
vtJ8TE7aaBqS9QmxlWYnx8ys/q51mVmOxbA/aIFllaSyR+P0MrgZfbWFtb/PK2IV
VnCciP7dfwqbnsW3ziRUq+mTaaNDPtT+YJrLJyTYNZPRvGIBHOt0NKzNCyvO37v3
op7ELGt0I+E=
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE REQUEST-----
MIIB7jCCAVcCAQAwga0xCzAJBgNVBAYTAkdCMRcwFQYDVQQIDA5Vbml0ZWQgS2lu
MIIBzDCCATUCAQAwgYsxCzAJBgNVBAYTAkdCMRcwFQYDVQQIDA5Vbml0ZWQgS2lu
Z2RvbTEOMAwGA1UEBwwFRGVyYnkxHTAbBgNVBAoMFE1vc3F1aXR0byBUZXN0IFN1
aXRlMRQwEgYDVQQLDAtCcm9rZXIgVGVzdDEeMBwGA1UEAwwVbG9jYWxob3N0LW5v
bi1yZXZva2VkMSAwHgYJKoZIhvcNAQkBFhF0ZXN0MUBleGFtcGxlLmNvbTCBnzAN
BgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEApQDOPWyKoUUHQzvtA7aJotRHh+NxAlqv
q/e+O5EOUVCcgNZuJjR1ep0EfhzM3GphXe11bj+KOQADuUNCnsl0TVX765Y5N/V6
m5M5l3mk8TYjM5NNTLBWJQz+4vF7fyLwEOid/VDfJc2P0nalueZwHzGZqEAiD94f
oL7eAx4wMkUCAwEAAaAAMA0GCSqGSIb3DQEBBQUAA4GBADIUaGKO+LK8MDXTGQjZ
Wr5wpJC67xgjXSdaMcx6wHicrd8wKoeKBk2ibbbNJIcIcYgdPmmNp96C0RacmtlM
dL9sIIVVO/vzsV3SVozVHZZLLtvByYV3KZu/bXpEwSa8LOK35fBNkHS2/5DJhwpR
E6pFDre+HBoEUM+h1ZKLb4Ba
aXRlMRQwEgYDVQQLDAtCcm9rZXIgVGVzdDEeMBwGA1UEAwwVbG9jYWxob3N0LWNs
aWVudC10ZXN0MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDNZM8duw+06KMn
QTYurUyDL7LT2ahb4sDeSRgisbNMCGQHVT9RzXhAoqMMOB4jDuieiH3C6aSw7lq9
abXkhuO9TIxiz3NGelCjXoyp7TN9Ke+uPXwWfQyKJlSkyR8mv47VPISCX0qWNvRS
hjnt4FY4PfZxWbQdXRp8nEMrORUVWQIDAQABoAAwDQYJKoZIhvcNAQEFBQADgYEA
uzoEdsl3JkiNIviQzDtr67k6L/vogtVSgRnCFCel16Q0i1W+mVAwUqYArwf/7fwp
UhZPd8NLSVT1pn4Nj2a2Q7S3GMpMguiQlhCol7hZOrNpc0fDGg1JSmYjCEmm3TOl
Z49eyqmE8r4xdDEAyPk3u21HYrZ5RshyS/8vfPwqR9o=
-----END CERTIFICATE REQUEST-----
-----BEGIN RSA PRIVATE KEY-----
MIICWwIBAAKBgQClAM49bIqhRQdDO+0Dtomi1EeH43ECWq+r9747kQ5RUJyA1m4m
NHV6nQR+HMzcamFd7XVuP4o5AAO5Q0KeyXRNVfvrljk39XqbkzmXeaTxNiMzk01M
sFYlDP7i8Xt/IvAQ6J39UN8lzY/SdqW55nAfMZmoQCIP3h+gvt4DHjAyRQIDAQAB
AoGAOgsUgcsC4UQ1D9OuxpWZySu/le/OOzPHhEj8JFwcm0IuK6xCxzHA+cbuY6ah
8g+B/NahbozvhKmapbshXlYjkNgWI0OY6HcLGKeW8gTduIEC69TPTRdTiZY6INhi
vsdvwkIUnzaSkm0e+NHBWY3HgcT4ziGqsb2kIQujVcRV5IECQQDY15UmhMg9ujmQ
epIAuWquIWruTCoeD/Qsm74RCvdJq8CZQmZ3TQisQn9hM2LJ98lpcGj+5AktaQdc
8/QLzucxAkEAwszA7h1wRgaFeG9GMM+pGiWTKz5dmF/mA3VBJIk8bQP6eZx4Asrj
8i6LPdeqBqvopJOMSqv89YohMQGmscafVQJADslcpVzGntb1F/ITxLLgIHGs7gUJ
ljU2TFhudJEP3dk1b/4EKLx7C+wY7ZLoeKdJ98OvlToNmiggVWlZSfjY8QJAOpyv
BDZZXMiDilw4y2EAKXzazi0irkFUjP/PzPV59/c1ezfoKDbx5SG6Ba6JWx6IjlRS
5vje0OZx3DP5+w2fTQJAAYd/wwaA9M9hIrL4LXmnznZcoHgfQ6ImNoi5TcMoZoNk
z7PaMNx+26Q+gJ1+/ILn6mdDUHVl2j1Xg6piuVOZQw==
MIICXAIBAAKBgQDNZM8duw+06KMnQTYurUyDL7LT2ahb4sDeSRgisbNMCGQHVT9R
zXhAoqMMOB4jDuieiH3C6aSw7lq9abXkhuO9TIxiz3NGelCjXoyp7TN9Ke+uPXwW
fQyKJlSkyR8mv47VPISCX0qWNvRShjnt4FY4PfZxWbQdXRp8nEMrORUVWQIDAQAB
AoGAdcKxuUMSG1AykwQhk5uKvcBwUGR/0cbte8T+0I1/1j0NVOL8feNHag+VWiEm
rkUS/CoXqNQat9LBNc5RGmh4U35orG2xi/EqcBnp/Mse2UqnOTYO3xjeP+JQBtR9
EiutMTabnaOIXox2bfb3olKA5b6phTt9Y0v8Li/jbVAhw3ECQQDslDu6ZvkKoljU
VICOteQMMPESsrXVPs5brtxyK2LQn+GBwXvy7d655Ql9jUkyops546aTB6JgYOMs
zDD3oJ7FAkEA3kE1wwap7NxtYSEbtwyIa7r+IKezG9IPwG27EHjTjPBgclOk0ZOf
W51ZD/CYNbA7fYAbqREeBwzhe5u0jfHFhQJBAOccL/T6nxMqYYibPDMtsSfPr9FK
T6OQBVs/SQ8nHxMa/NsbPpCkm04SVuEV4onam7VDlPhRHujz/TlICBYADNkCQEaA
XwJ3ea2mGphF/VmqgxfRYE2RhNJdZxu+cyl9enXpxl5dxBmq/1D7b8YLpuzY83YT
DjMqN+E6p8gjEzo3qFUCQGaSni6qTT9pT22uT3QwLthOPdVacV6a55Ci6g4XaFUR
/Es/nQdkZTbCI1ufGV2Usodsqas+lNGqnClGVHqcUg8=
-----END RSA PRIVATE KEY-----
......@@ -3,9 +3,9 @@ MIIBmDCCAQECAQEwDQYJKoZIhvcNAQEFBQAwgaAxCzAJBgNVBAYTAkdCMRcwFQYD
VQQIDA5Vbml0ZWQgS2luZ2RvbTEOMAwGA1UEBwwFRGVyYnkxHTAbBgNVBAoMFE1v
c3F1aXR0byBUZXN0IFN1aXRlMQ8wDQYDVQQLDAZCcm9rZXIxFzAVBgNVBAMMDmJy
b2tlci10ZXN0LWNhMR8wHQYJKoZIhvcNAQkBFhB0ZXN0QGV4YW1wbGUuY29tFw0x
MzAyMjIyMTE0MjhaFw0yMzAyMjAyMTE0MjhaMBwwGgIJAM2uDlZKKJGnFw0xMjA3
MDMxNTU4NDZaoA4wDDAKBgNVHRQEAwIBBDANBgkqhkiG9w0BAQUFAAOBgQB1eSbU
qouEY+28nNc7QkoDJqK/VgfVYSIgbkuaM8RP4TalndoA/eP4VJbOycZ6HbU10315
sfYhoARx8xXtz/OIU470PSUKrbeNQMXoebp5YGZHl1Gd+FvClVgzAPoJCn68rd4N
mzkDJrdpBZCTt4yxv+vkLwdBmAetcLKj/lhpbg==
MjA3MDMxNTU5MzFaFw0xMjA4MDIxNTU5MzFaMBwwGgIJAM2uDlZKKJGnFw0xMjA3
MDMxNTU4NDZaoA4wDDAKBgNVHRQEAwIBAzANBgkqhkiG9w0BAQUFAAOBgQCPcwu3
0rWWICxqPKPCXUWNgeoNygHt/n2Y+n+Y00LtHxAyfj0ag06GuW4cDH7CYNKsrt/s
59O+3VBRFisbMc1k3aSI5CFE4kSabR7OXOxnbNm/+3LFK80Wp17CjyEeFQrEg6tn
apeq3dUczj88uD7z5B/LtW5s+gGWcpgsDIA1wA==
-----END X509 CRL-----
CDAE0E564A2891AA
CDAE0E564A2891A9
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册