opentrade лет назад: 4
Родитель
Сommit
25554dd318
5 измененных файлов с 578 добавлено и 30 удалено
  1. 558 27
      Cargo.lock
  2. 1 1
      Cargo.toml
  3. 7 1
      src/hbbr.rs
  4. 6 0
      src/lic.rs
  5. 6 1
      src/main.rs

+ 558 - 27
Cargo.lock

@@ -124,6 +124,12 @@ version = "0.5.6"
124
 source = "registry+https://github.com/rust-lang/crates.io-index"
124
 source = "registry+https://github.com/rust-lang/crates.io-index"
125
 checksum = "0e4cec68f03f32e44924783795810fa50a7035d8c8ebe78580ad7e6c703fba38"
125
 checksum = "0e4cec68f03f32e44924783795810fa50a7035d8c8ebe78580ad7e6c703fba38"
126
 
126
 
127
+[[package]]
128
+name = "bytes"
129
+version = "1.0.1"
130
+source = "registry+https://github.com/rust-lang/crates.io-index"
131
+checksum = "b700ce4376041dcd0a327fd0097c41095743c4c8af8887265942faf1100bd040"
132
+
127
 [[package]]
133
 [[package]]
128
 name = "cc"
134
 name = "cc"
129
 version = "1.0.65"
135
 version = "1.0.65"
@@ -202,7 +208,17 @@ version = "0.7.0"
202
 source = "registry+https://github.com/rust-lang/crates.io-index"
208
 source = "registry+https://github.com/rust-lang/crates.io-index"
203
 checksum = "57d24c7a13c43e870e37c1556b74555437870a04514f7685f5b354e090567171"
209
 checksum = "57d24c7a13c43e870e37c1556b74555437870a04514f7685f5b354e090567171"
204
 dependencies = [
210
 dependencies = [
205
- "core-foundation-sys",
211
+ "core-foundation-sys 0.7.0",
212
+ "libc",
213
+]
214
+
215
+[[package]]
216
+name = "core-foundation"
217
+version = "0.9.1"
218
+source = "registry+https://github.com/rust-lang/crates.io-index"
219
+checksum = "0a89e2ae426ea83155dccf10c0fa6b1463ef6d5fcb44cee0b224a408fa640a62"
220
+dependencies = [
221
+ "core-foundation-sys 0.8.2",
206
  "libc",
222
  "libc",
207
 ]
223
 ]
208
 
224
 
@@ -212,6 +228,12 @@ version = "0.7.0"
212
 source = "registry+https://github.com/rust-lang/crates.io-index"
228
 source = "registry+https://github.com/rust-lang/crates.io-index"
213
 checksum = "b3a71ab494c0b5b860bdc8407ae08978052417070c2ced38573a9157ad75b8ac"
229
 checksum = "b3a71ab494c0b5b860bdc8407ae08978052417070c2ced38573a9157ad75b8ac"
214
 
230
 
231
+[[package]]
232
+name = "core-foundation-sys"
233
+version = "0.8.2"
234
+source = "registry+https://github.com/rust-lang/crates.io-index"
235
+checksum = "ea221b5284a47e40033bf9b66f35f984ec0ea2931eb03505246cd27a963f981b"
236
+
215
 [[package]]
237
 [[package]]
216
 name = "crossbeam-utils"
238
 name = "crossbeam-utils"
217
 version = "0.8.1"
239
 version = "0.8.1"
@@ -290,7 +312,7 @@ version = "0.2.2"
290
 source = "registry+https://github.com/rust-lang/crates.io-index"
312
 source = "registry+https://github.com/rust-lang/crates.io-index"
291
 checksum = "1b391911b9a786312a10cb9d2b3d0735adfd5a8113eb3648de26a75e91b0826c"
313
 checksum = "1b391911b9a786312a10cb9d2b3d0735adfd5a8113eb3648de26a75e91b0826c"
292
 dependencies = [
314
 dependencies = [
293
- "rand",
315
+ "rand 0.7.3",
294
 ]
316
 ]
295
 
317
 
296
 [[package]]
318
 [[package]]
@@ -299,6 +321,15 @@ version = "1.6.1"
299
 source = "registry+https://github.com/rust-lang/crates.io-index"
321
 source = "registry+https://github.com/rust-lang/crates.io-index"
300
 checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457"
322
 checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457"
301
 
323
 
324
+[[package]]
325
+name = "encoding_rs"
326
+version = "0.8.28"
327
+source = "registry+https://github.com/rust-lang/crates.io-index"
328
+checksum = "80df024fbc5ac80f87dfef0d9f5209a252f2a497f7f42944cff24d8253cac065"
329
+dependencies = [
330
+ "cfg-if 1.0.0",
331
+]
332
+
302
 [[package]]
333
 [[package]]
303
 name = "env_logger"
334
 name = "env_logger"
304
 version = "0.7.1"
335
 version = "0.7.1"
@@ -347,7 +378,7 @@ checksum = "0c122a393ea57648015bf06fbd3d372378992e86b9ff5a7a497b076a28c79efe"
347
 dependencies = [
378
 dependencies = [
348
  "cfg-if 1.0.0",
379
  "cfg-if 1.0.0",
349
  "libc",
380
  "libc",
350
- "redox_syscall",
381
+ "redox_syscall 0.1.57",
351
  "winapi 0.3.9",
382
  "winapi 0.3.9",
352
 ]
383
 ]
353
 
384
 
@@ -357,6 +388,31 @@ version = "1.0.7"
357
 source = "registry+https://github.com/rust-lang/crates.io-index"
388
 source = "registry+https://github.com/rust-lang/crates.io-index"
358
 checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
389
 checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
359
 
390
 
391
+[[package]]
392
+name = "foreign-types"
393
+version = "0.3.2"
394
+source = "registry+https://github.com/rust-lang/crates.io-index"
395
+checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
396
+dependencies = [
397
+ "foreign-types-shared",
398
+]
399
+
400
+[[package]]
401
+name = "foreign-types-shared"
402
+version = "0.1.1"
403
+source = "registry+https://github.com/rust-lang/crates.io-index"
404
+checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
405
+
406
+[[package]]
407
+name = "form_urlencoded"
408
+version = "1.0.1"
409
+source = "registry+https://github.com/rust-lang/crates.io-index"
410
+checksum = "5fc25a87fa4fd2094bffb06925852034d90a17f0d1e05197d4956d3555752191"
411
+dependencies = [
412
+ "matches",
413
+ "percent-encoding",
414
+]
415
+
360
 [[package]]
416
 [[package]]
361
 name = "fuchsia-zircon"
417
 name = "fuchsia-zircon"
362
 version = "0.3.3"
418
 version = "0.3.3"
@@ -476,7 +532,18 @@ checksum = "fc587bc0ec293155d5bfa6b9891ec18a1e330c234f896ea47fbada4cadbe47e6"
476
 dependencies = [
532
 dependencies = [
477
  "cfg-if 0.1.10",
533
  "cfg-if 0.1.10",
478
  "libc",
534
  "libc",
479
- "wasi",
535
+ "wasi 0.9.0+wasi-snapshot-preview1",
536
+]
537
+
538
+[[package]]
539
+name = "getrandom"
540
+version = "0.2.2"
541
+source = "registry+https://github.com/rust-lang/crates.io-index"
542
+checksum = "c9495705279e7140bf035dde1f6e750c162df8b625267cd52cc44e0b156732c8"
543
+dependencies = [
544
+ "cfg-if 1.0.0",
545
+ "libc",
546
+ "wasi 0.10.2+wasi-snapshot-preview1",
480
 ]
547
 ]
481
 
548
 
482
 [[package]]
549
 [[package]]
@@ -485,6 +552,26 @@ version = "0.3.0"
485
 source = "registry+https://github.com/rust-lang/crates.io-index"
552
 source = "registry+https://github.com/rust-lang/crates.io-index"
486
 checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574"
553
 checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574"
487
 
554
 
555
+[[package]]
556
+name = "h2"
557
+version = "0.2.7"
558
+source = "registry+https://github.com/rust-lang/crates.io-index"
559
+checksum = "5e4728fd124914ad25e99e3d15a9361a879f6620f63cb56bbb08f95abb97a535"
560
+dependencies = [
561
+ "bytes 0.5.6",
562
+ "fnv",
563
+ "futures-core",
564
+ "futures-sink",
565
+ "futures-util",
566
+ "http",
567
+ "indexmap",
568
+ "slab",
569
+ "tokio",
570
+ "tokio-util",
571
+ "tracing",
572
+ "tracing-futures",
573
+]
574
+
488
 [[package]]
575
 [[package]]
489
 name = "hashbrown"
576
 name = "hashbrown"
490
 version = "0.9.1"
577
 version = "0.9.1"
@@ -499,7 +586,7 @@ name = "hbb_common"
499
 version = "0.1.0"
586
 version = "0.1.0"
500
 dependencies = [
587
 dependencies = [
501
  "anyhow",
588
  "anyhow",
502
- "bytes",
589
+ "bytes 0.5.6",
503
  "confy",
590
  "confy",
504
  "directories-next",
591
  "directories-next",
505
  "dirs-next",
592
  "dirs-next",
@@ -513,7 +600,7 @@ dependencies = [
513
  "protobuf",
600
  "protobuf",
514
  "protobuf-codegen-pure",
601
  "protobuf-codegen-pure",
515
  "quinn",
602
  "quinn",
516
- "rand",
603
+ "rand 0.7.3",
517
  "regex",
604
  "regex",
518
  "serde",
605
  "serde",
519
  "serde_derive",
606
  "serde_derive",
@@ -531,10 +618,10 @@ dependencies = [
531
 name = "hbbs"
618
 name = "hbbs"
532
 version = "1.1.3"
619
 version = "1.1.3"
533
 dependencies = [
620
 dependencies = [
534
- "cc",
535
  "clap",
621
  "clap",
536
  "hbb_common",
622
  "hbb_common",
537
  "lazy_static",
623
  "lazy_static",
624
+ "reqwest",
538
  "rocksdb",
625
  "rocksdb",
539
  "rust-ini",
626
  "rust-ini",
540
  "serde",
627
  "serde",
@@ -551,6 +638,39 @@ dependencies = [
551
  "libc",
638
  "libc",
552
 ]
639
 ]
553
 
640
 
641
+[[package]]
642
+name = "http"
643
+version = "0.2.4"
644
+source = "registry+https://github.com/rust-lang/crates.io-index"
645
+checksum = "527e8c9ac747e28542699a951517aa9a6945af506cd1f2e1b53a576c17b6cc11"
646
+dependencies = [
647
+ "bytes 1.0.1",
648
+ "fnv",
649
+ "itoa",
650
+]
651
+
652
+[[package]]
653
+name = "http-body"
654
+version = "0.3.1"
655
+source = "registry+https://github.com/rust-lang/crates.io-index"
656
+checksum = "13d5ff830006f7646652e057693569bfe0d51760c0085a071769d142a205111b"
657
+dependencies = [
658
+ "bytes 0.5.6",
659
+ "http",
660
+]
661
+
662
+[[package]]
663
+name = "httparse"
664
+version = "1.3.6"
665
+source = "registry+https://github.com/rust-lang/crates.io-index"
666
+checksum = "bc35c995b9d93ec174cf9a27d425c7892722101e14993cd227fdb51d70cf9589"
667
+
668
+[[package]]
669
+name = "httpdate"
670
+version = "0.3.2"
671
+source = "registry+https://github.com/rust-lang/crates.io-index"
672
+checksum = "494b4d60369511e7dea41cf646832512a94e542f68bb9c49e54518e0f468eb47"
673
+
554
 [[package]]
674
 [[package]]
555
 name = "humantime"
675
 name = "humantime"
556
 version = "1.3.0"
676
 version = "1.3.0"
@@ -566,6 +686,64 @@ version = "2.0.1"
566
 source = "registry+https://github.com/rust-lang/crates.io-index"
686
 source = "registry+https://github.com/rust-lang/crates.io-index"
567
 checksum = "3c1ad908cc71012b7bea4d0c53ba96a8cba9962f048fa68d143376143d863b7a"
687
 checksum = "3c1ad908cc71012b7bea4d0c53ba96a8cba9962f048fa68d143376143d863b7a"
568
 
688
 
689
+[[package]]
690
+name = "hyper"
691
+version = "0.13.10"
692
+source = "registry+https://github.com/rust-lang/crates.io-index"
693
+checksum = "8a6f157065790a3ed2f88679250419b5cdd96e714a0d65f7797fd337186e96bb"
694
+dependencies = [
695
+ "bytes 0.5.6",
696
+ "futures-channel",
697
+ "futures-core",
698
+ "futures-util",
699
+ "h2",
700
+ "http",
701
+ "http-body",
702
+ "httparse",
703
+ "httpdate",
704
+ "itoa",
705
+ "pin-project",
706
+ "socket2",
707
+ "tokio",
708
+ "tower-service",
709
+ "tracing",
710
+ "want",
711
+]
712
+
713
+[[package]]
714
+name = "hyper-tls"
715
+version = "0.4.3"
716
+source = "registry+https://github.com/rust-lang/crates.io-index"
717
+checksum = "d979acc56dcb5b8dddba3917601745e877576475aa046df3226eabdecef78eed"
718
+dependencies = [
719
+ "bytes 0.5.6",
720
+ "hyper",
721
+ "native-tls",
722
+ "tokio",
723
+ "tokio-tls",
724
+]
725
+
726
+[[package]]
727
+name = "idna"
728
+version = "0.2.2"
729
+source = "registry+https://github.com/rust-lang/crates.io-index"
730
+checksum = "89829a5d69c23d348314a7ac337fe39173b61149a9864deabd260983aed48c21"
731
+dependencies = [
732
+ "matches",
733
+ "unicode-bidi",
734
+ "unicode-normalization",
735
+]
736
+
737
+[[package]]
738
+name = "indexmap"
739
+version = "1.6.2"
740
+source = "registry+https://github.com/rust-lang/crates.io-index"
741
+checksum = "824845a0bf897a9042383849b02c1bc219c2383772efcd5c6f9766fa4b81aef3"
742
+dependencies = [
743
+ "autocfg",
744
+ "hashbrown",
745
+]
746
+
569
 [[package]]
747
 [[package]]
570
 name = "iovec"
748
 name = "iovec"
571
 version = "0.1.4"
749
 version = "0.1.4"
@@ -575,6 +753,12 @@ dependencies = [
575
  "libc",
753
  "libc",
576
 ]
754
 ]
577
 
755
 
756
+[[package]]
757
+name = "ipnet"
758
+version = "2.3.0"
759
+source = "registry+https://github.com/rust-lang/crates.io-index"
760
+checksum = "47be2f14c678be2fdcab04ab1171db51b2762ce6f0a8ee87c8dd4a04ed216135"
761
+
578
 [[package]]
762
 [[package]]
579
 name = "itertools"
763
 name = "itertools"
580
 version = "0.9.0"
764
 version = "0.9.0"
@@ -688,12 +872,34 @@ dependencies = [
688
  "winapi 0.3.9",
872
  "winapi 0.3.9",
689
 ]
873
 ]
690
 
874
 
875
+[[package]]
876
+name = "matches"
877
+version = "0.1.8"
878
+source = "registry+https://github.com/rust-lang/crates.io-index"
879
+checksum = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08"
880
+
691
 [[package]]
881
 [[package]]
692
 name = "memchr"
882
 name = "memchr"
693
 version = "2.3.4"
883
 version = "2.3.4"
694
 source = "registry+https://github.com/rust-lang/crates.io-index"
884
 source = "registry+https://github.com/rust-lang/crates.io-index"
695
 checksum = "0ee1c47aaa256ecabcaea351eae4a9b01ef39ed810004e298d2511ed284b1525"
885
 checksum = "0ee1c47aaa256ecabcaea351eae4a9b01ef39ed810004e298d2511ed284b1525"
696
 
886
 
887
+[[package]]
888
+name = "mime"
889
+version = "0.3.16"
890
+source = "registry+https://github.com/rust-lang/crates.io-index"
891
+checksum = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d"
892
+
893
+[[package]]
894
+name = "mime_guess"
895
+version = "2.0.3"
896
+source = "registry+https://github.com/rust-lang/crates.io-index"
897
+checksum = "2684d4c2e97d99848d30b324b00c8fcc7e5c897b7cbb5819b09e7c90e8baf212"
898
+dependencies = [
899
+ "mime",
900
+ "unicase",
901
+]
902
+
697
 [[package]]
903
 [[package]]
698
 name = "mio"
904
 name = "mio"
699
 version = "0.6.22"
905
 version = "0.6.22"
@@ -758,6 +964,24 @@ dependencies = [
758
  "winapi 0.3.9",
964
  "winapi 0.3.9",
759
 ]
965
 ]
760
 
966
 
967
+[[package]]
968
+name = "native-tls"
969
+version = "0.2.7"
970
+source = "registry+https://github.com/rust-lang/crates.io-index"
971
+checksum = "b8d96b2e1c8da3957d58100b09f102c6d9cfdfced01b7ec5a8974044bb09dbd4"
972
+dependencies = [
973
+ "lazy_static",
974
+ "libc",
975
+ "log",
976
+ "openssl",
977
+ "openssl-probe",
978
+ "openssl-sys",
979
+ "schannel",
980
+ "security-framework 2.2.0",
981
+ "security-framework-sys 2.2.0",
982
+ "tempfile",
983
+]
984
+
761
 [[package]]
985
 [[package]]
762
 name = "net2"
986
 name = "net2"
763
 version = "0.2.36"
987
 version = "0.2.36"
@@ -807,12 +1031,39 @@ version = "1.5.2"
807
 source = "registry+https://github.com/rust-lang/crates.io-index"
1031
 source = "registry+https://github.com/rust-lang/crates.io-index"
808
 checksum = "13bd41f508810a131401606d54ac32a467c97172d74ba7662562ebba5ad07fa0"
1032
 checksum = "13bd41f508810a131401606d54ac32a467c97172d74ba7662562ebba5ad07fa0"
809
 
1033
 
1034
+[[package]]
1035
+name = "openssl"
1036
+version = "0.10.33"
1037
+source = "registry+https://github.com/rust-lang/crates.io-index"
1038
+checksum = "a61075b62a23fef5a29815de7536d940aa35ce96d18ce0cc5076272db678a577"
1039
+dependencies = [
1040
+ "bitflags",
1041
+ "cfg-if 1.0.0",
1042
+ "foreign-types",
1043
+ "libc",
1044
+ "once_cell",
1045
+ "openssl-sys",
1046
+]
1047
+
810
 [[package]]
1048
 [[package]]
811
 name = "openssl-probe"
1049
 name = "openssl-probe"
812
 version = "0.1.2"
1050
 version = "0.1.2"
813
 source = "registry+https://github.com/rust-lang/crates.io-index"
1051
 source = "registry+https://github.com/rust-lang/crates.io-index"
814
 checksum = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de"
1052
 checksum = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de"
815
 
1053
 
1054
+[[package]]
1055
+name = "openssl-sys"
1056
+version = "0.9.61"
1057
+source = "registry+https://github.com/rust-lang/crates.io-index"
1058
+checksum = "313752393519e876837e09e1fa183ddef0be7735868dced3196f4472d536277f"
1059
+dependencies = [
1060
+ "autocfg",
1061
+ "cc",
1062
+ "libc",
1063
+ "pkg-config",
1064
+ "vcpkg",
1065
+]
1066
+
816
 [[package]]
1067
 [[package]]
817
 name = "ordered-multimap"
1068
 name = "ordered-multimap"
818
 version = "0.3.1"
1069
 version = "0.3.1"
@@ -829,6 +1080,12 @@ version = "0.1.2"
829
 source = "registry+https://github.com/rust-lang/crates.io-index"
1080
 source = "registry+https://github.com/rust-lang/crates.io-index"
830
 checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099"
1081
 checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099"
831
 
1082
 
1083
+[[package]]
1084
+name = "percent-encoding"
1085
+version = "2.1.0"
1086
+source = "registry+https://github.com/rust-lang/crates.io-index"
1087
+checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e"
1088
+
832
 [[package]]
1089
 [[package]]
833
 name = "pin-project"
1090
 name = "pin-project"
834
 version = "1.0.2"
1091
 version = "1.0.2"
@@ -958,7 +1215,7 @@ version = "0.6.1"
958
 source = "registry+https://github.com/rust-lang/crates.io-index"
1215
 source = "registry+https://github.com/rust-lang/crates.io-index"
959
 checksum = "88de58d76d8f82fb28e5c89302119c102bb5b9ce57b034186b559b63ba147a0f"
1216
 checksum = "88de58d76d8f82fb28e5c89302119c102bb5b9ce57b034186b559b63ba147a0f"
960
 dependencies = [
1217
 dependencies = [
961
- "bytes",
1218
+ "bytes 0.5.6",
962
  "err-derive",
1219
  "err-derive",
963
  "futures",
1220
  "futures",
964
  "libc",
1221
  "libc",
@@ -976,10 +1233,10 @@ version = "0.6.1"
976
 source = "registry+https://github.com/rust-lang/crates.io-index"
1233
 source = "registry+https://github.com/rust-lang/crates.io-index"
977
 checksum = "f0ea0a358c179c6b7af34805c675d1664a9c6a234a7acd7efdbb32d2f39d3d2a"
1234
 checksum = "f0ea0a358c179c6b7af34805c675d1664a9c6a234a7acd7efdbb32d2f39d3d2a"
978
 dependencies = [
1235
 dependencies = [
979
- "bytes",
1236
+ "bytes 0.5.6",
980
  "ct-logs",
1237
  "ct-logs",
981
  "err-derive",
1238
  "err-derive",
982
- "rand",
1239
+ "rand 0.7.3",
983
  "ring",
1240
  "ring",
984
  "rustls",
1241
  "rustls",
985
  "rustls-native-certs",
1242
  "rustls-native-certs",
@@ -1003,11 +1260,23 @@ version = "0.7.3"
1003
 source = "registry+https://github.com/rust-lang/crates.io-index"
1260
 source = "registry+https://github.com/rust-lang/crates.io-index"
1004
 checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
1261
 checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
1005
 dependencies = [
1262
 dependencies = [
1006
- "getrandom",
1263
+ "getrandom 0.1.15",
1264
+ "libc",
1265
+ "rand_chacha 0.2.2",
1266
+ "rand_core 0.5.1",
1267
+ "rand_hc 0.2.0",
1268
+]
1269
+
1270
+[[package]]
1271
+name = "rand"
1272
+version = "0.8.3"
1273
+source = "registry+https://github.com/rust-lang/crates.io-index"
1274
+checksum = "0ef9e7e66b4468674bfcb0c81af8b7fa0bb154fa9f28eb840da5c447baeb8d7e"
1275
+dependencies = [
1007
  "libc",
1276
  "libc",
1008
- "rand_chacha",
1009
- "rand_core",
1010
- "rand_hc",
1277
+ "rand_chacha 0.3.0",
1278
+ "rand_core 0.6.2",
1279
+ "rand_hc 0.3.0",
1011
 ]
1280
 ]
1012
 
1281
 
1013
 [[package]]
1282
 [[package]]
@@ -1017,7 +1286,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
1017
 checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402"
1286
 checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402"
1018
 dependencies = [
1287
 dependencies = [
1019
  "ppv-lite86",
1288
  "ppv-lite86",
1020
- "rand_core",
1289
+ "rand_core 0.5.1",
1290
+]
1291
+
1292
+[[package]]
1293
+name = "rand_chacha"
1294
+version = "0.3.0"
1295
+source = "registry+https://github.com/rust-lang/crates.io-index"
1296
+checksum = "e12735cf05c9e10bf21534da50a147b924d555dc7a547c42e6bb2d5b6017ae0d"
1297
+dependencies = [
1298
+ "ppv-lite86",
1299
+ "rand_core 0.6.2",
1021
 ]
1300
 ]
1022
 
1301
 
1023
 [[package]]
1302
 [[package]]
@@ -1026,7 +1305,16 @@ version = "0.5.1"
1026
 source = "registry+https://github.com/rust-lang/crates.io-index"
1305
 source = "registry+https://github.com/rust-lang/crates.io-index"
1027
 checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
1306
 checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
1028
 dependencies = [
1307
 dependencies = [
1029
- "getrandom",
1308
+ "getrandom 0.1.15",
1309
+]
1310
+
1311
+[[package]]
1312
+name = "rand_core"
1313
+version = "0.6.2"
1314
+source = "registry+https://github.com/rust-lang/crates.io-index"
1315
+checksum = "34cf66eb183df1c5876e2dcf6b13d57340741e8dc255b48e40a26de954d06ae7"
1316
+dependencies = [
1317
+ "getrandom 0.2.2",
1030
 ]
1318
 ]
1031
 
1319
 
1032
 [[package]]
1320
 [[package]]
@@ -1035,7 +1323,16 @@ version = "0.2.0"
1035
 source = "registry+https://github.com/rust-lang/crates.io-index"
1323
 source = "registry+https://github.com/rust-lang/crates.io-index"
1036
 checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
1324
 checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
1037
 dependencies = [
1325
 dependencies = [
1038
- "rand_core",
1326
+ "rand_core 0.5.1",
1327
+]
1328
+
1329
+[[package]]
1330
+name = "rand_hc"
1331
+version = "0.3.0"
1332
+source = "registry+https://github.com/rust-lang/crates.io-index"
1333
+checksum = "3190ef7066a446f2e7f42e239d161e905420ccab01eb967c9eb27d21b2322a73"
1334
+dependencies = [
1335
+ "rand_core 0.6.2",
1039
 ]
1336
 ]
1040
 
1337
 
1041
 [[package]]
1338
 [[package]]
@@ -1044,14 +1341,23 @@ version = "0.1.57"
1044
 source = "registry+https://github.com/rust-lang/crates.io-index"
1341
 source = "registry+https://github.com/rust-lang/crates.io-index"
1045
 checksum = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce"
1342
 checksum = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce"
1046
 
1343
 
1344
+[[package]]
1345
+name = "redox_syscall"
1346
+version = "0.2.5"
1347
+source = "registry+https://github.com/rust-lang/crates.io-index"
1348
+checksum = "94341e4e44e24f6b591b59e47a8a027df12e008d73fd5672dbea9cc22f4507d9"
1349
+dependencies = [
1350
+ "bitflags",
1351
+]
1352
+
1047
 [[package]]
1353
 [[package]]
1048
 name = "redox_users"
1354
 name = "redox_users"
1049
 version = "0.3.5"
1355
 version = "0.3.5"
1050
 source = "registry+https://github.com/rust-lang/crates.io-index"
1356
 source = "registry+https://github.com/rust-lang/crates.io-index"
1051
 checksum = "de0737333e7a9502c789a36d7c7fa6092a49895d4faa31ca5df163857ded2e9d"
1357
 checksum = "de0737333e7a9502c789a36d7c7fa6092a49895d4faa31ca5df163857ded2e9d"
1052
 dependencies = [
1358
 dependencies = [
1053
- "getrandom",
1054
- "redox_syscall",
1359
+ "getrandom 0.1.15",
1360
+ "redox_syscall 0.1.57",
1055
  "rust-argon2",
1361
  "rust-argon2",
1056
 ]
1362
 ]
1057
 
1363
 
@@ -1073,6 +1379,50 @@ version = "0.6.21"
1073
 source = "registry+https://github.com/rust-lang/crates.io-index"
1379
 source = "registry+https://github.com/rust-lang/crates.io-index"
1074
 checksum = "3b181ba2dcf07aaccad5448e8ead58db5b742cf85dfe035e2227f137a539a189"
1380
 checksum = "3b181ba2dcf07aaccad5448e8ead58db5b742cf85dfe035e2227f137a539a189"
1075
 
1381
 
1382
+[[package]]
1383
+name = "remove_dir_all"
1384
+version = "0.5.3"
1385
+source = "registry+https://github.com/rust-lang/crates.io-index"
1386
+checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7"
1387
+dependencies = [
1388
+ "winapi 0.3.9",
1389
+]
1390
+
1391
+[[package]]
1392
+name = "reqwest"
1393
+version = "0.10.10"
1394
+source = "registry+https://github.com/rust-lang/crates.io-index"
1395
+checksum = "0718f81a8e14c4dbb3b34cf23dc6aaf9ab8a0dfec160c534b3dbca1aaa21f47c"
1396
+dependencies = [
1397
+ "base64 0.13.0",
1398
+ "bytes 0.5.6",
1399
+ "encoding_rs",
1400
+ "futures-core",
1401
+ "futures-util",
1402
+ "http",
1403
+ "http-body",
1404
+ "hyper",
1405
+ "hyper-tls",
1406
+ "ipnet",
1407
+ "js-sys",
1408
+ "lazy_static",
1409
+ "log",
1410
+ "mime",
1411
+ "mime_guess",
1412
+ "native-tls",
1413
+ "percent-encoding",
1414
+ "pin-project-lite 0.2.0",
1415
+ "serde",
1416
+ "serde_urlencoded",
1417
+ "tokio",
1418
+ "tokio-tls",
1419
+ "url",
1420
+ "wasm-bindgen",
1421
+ "wasm-bindgen-futures",
1422
+ "web-sys",
1423
+ "winreg",
1424
+]
1425
+
1076
 [[package]]
1426
 [[package]]
1077
 name = "ring"
1427
 name = "ring"
1078
 version = "0.16.18"
1428
 version = "0.16.18"
@@ -1148,7 +1498,7 @@ dependencies = [
1148
  "openssl-probe",
1498
  "openssl-probe",
1149
  "rustls",
1499
  "rustls",
1150
  "schannel",
1500
  "schannel",
1151
- "security-framework",
1501
+ "security-framework 0.4.4",
1152
 ]
1502
 ]
1153
 
1503
 
1154
 [[package]]
1504
 [[package]]
@@ -1190,10 +1540,23 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
1190
 checksum = "64808902d7d99f78eaddd2b4e2509713babc3dc3c85ad6f4c447680f3c01e535"
1540
 checksum = "64808902d7d99f78eaddd2b4e2509713babc3dc3c85ad6f4c447680f3c01e535"
1191
 dependencies = [
1541
 dependencies = [
1192
  "bitflags",
1542
  "bitflags",
1193
- "core-foundation",
1194
- "core-foundation-sys",
1543
+ "core-foundation 0.7.0",
1544
+ "core-foundation-sys 0.7.0",
1195
  "libc",
1545
  "libc",
1196
- "security-framework-sys",
1546
+ "security-framework-sys 0.4.3",
1547
+]
1548
+
1549
+[[package]]
1550
+name = "security-framework"
1551
+version = "2.2.0"
1552
+source = "registry+https://github.com/rust-lang/crates.io-index"
1553
+checksum = "3670b1d2fdf6084d192bc71ead7aabe6c06aa2ea3fbd9cc3ac111fa5c2b1bd84"
1554
+dependencies = [
1555
+ "bitflags",
1556
+ "core-foundation 0.9.1",
1557
+ "core-foundation-sys 0.8.2",
1558
+ "libc",
1559
+ "security-framework-sys 2.2.0",
1197
 ]
1560
 ]
1198
 
1561
 
1199
 [[package]]
1562
 [[package]]
@@ -1202,7 +1565,17 @@ version = "0.4.3"
1202
 source = "registry+https://github.com/rust-lang/crates.io-index"
1565
 source = "registry+https://github.com/rust-lang/crates.io-index"
1203
 checksum = "17bf11d99252f512695eb468de5516e5cf75455521e69dfe343f3b74e4748405"
1566
 checksum = "17bf11d99252f512695eb468de5516e5cf75455521e69dfe343f3b74e4748405"
1204
 dependencies = [
1567
 dependencies = [
1205
- "core-foundation-sys",
1568
+ "core-foundation-sys 0.7.0",
1569
+ "libc",
1570
+]
1571
+
1572
+[[package]]
1573
+name = "security-framework-sys"
1574
+version = "2.2.0"
1575
+source = "registry+https://github.com/rust-lang/crates.io-index"
1576
+checksum = "3676258fd3cfe2c9a0ec99ce3038798d847ce3e4bb17746373eb9f0f1ac16339"
1577
+dependencies = [
1578
+ "core-foundation-sys 0.8.2",
1206
  "libc",
1579
  "libc",
1207
 ]
1580
 ]
1208
 
1581
 
@@ -1234,6 +1607,18 @@ dependencies = [
1234
  "serde",
1607
  "serde",
1235
 ]
1608
 ]
1236
 
1609
 
1610
+[[package]]
1611
+name = "serde_urlencoded"
1612
+version = "0.7.0"
1613
+source = "registry+https://github.com/rust-lang/crates.io-index"
1614
+checksum = "edfa57a7f8d9c1d260a549e7224100f6c43d43f9103e06dd8b4095a9b2b43ce9"
1615
+dependencies = [
1616
+ "form_urlencoded",
1617
+ "itoa",
1618
+ "ryu",
1619
+ "serde",
1620
+]
1621
+
1237
 [[package]]
1622
 [[package]]
1238
 name = "shlex"
1623
 name = "shlex"
1239
 version = "0.1.1"
1624
 version = "0.1.1"
@@ -1263,7 +1648,7 @@ checksum = "2c29947abdee2a218277abeca306f25789c938e500ea5a9d4b12a5a504466902"
1263
 dependencies = [
1648
 dependencies = [
1264
  "cfg-if 1.0.0",
1649
  "cfg-if 1.0.0",
1265
  "libc",
1650
  "libc",
1266
- "redox_syscall",
1651
+ "redox_syscall 0.1.57",
1267
  "winapi 0.3.9",
1652
  "winapi 0.3.9",
1268
 ]
1653
 ]
1269
 
1654
 
@@ -1313,6 +1698,20 @@ dependencies = [
1313
  "unicode-xid",
1698
  "unicode-xid",
1314
 ]
1699
 ]
1315
 
1700
 
1701
+[[package]]
1702
+name = "tempfile"
1703
+version = "3.2.0"
1704
+source = "registry+https://github.com/rust-lang/crates.io-index"
1705
+checksum = "dac1c663cfc93810f88aed9b8941d48cabf856a1b111c29a40439018d870eb22"
1706
+dependencies = [
1707
+ "cfg-if 1.0.0",
1708
+ "libc",
1709
+ "rand 0.8.3",
1710
+ "redox_syscall 0.2.5",
1711
+ "remove_dir_all",
1712
+ "winapi 0.3.9",
1713
+]
1714
+
1316
 [[package]]
1715
 [[package]]
1317
 name = "termcolor"
1716
 name = "termcolor"
1318
 version = "1.1.2"
1717
 version = "1.1.2"
@@ -1340,13 +1739,28 @@ dependencies = [
1340
  "lazy_static",
1739
  "lazy_static",
1341
 ]
1740
 ]
1342
 
1741
 
1742
+[[package]]
1743
+name = "tinyvec"
1744
+version = "1.2.0"
1745
+source = "registry+https://github.com/rust-lang/crates.io-index"
1746
+checksum = "5b5220f05bb7de7f3f53c7c065e1199b3172696fe2db9f9c4d8ad9b4ee74c342"
1747
+dependencies = [
1748
+ "tinyvec_macros",
1749
+]
1750
+
1751
+[[package]]
1752
+name = "tinyvec_macros"
1753
+version = "0.1.0"
1754
+source = "registry+https://github.com/rust-lang/crates.io-index"
1755
+checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c"
1756
+
1343
 [[package]]
1757
 [[package]]
1344
 name = "tokio"
1758
 name = "tokio"
1345
 version = "0.2.23"
1759
 version = "0.2.23"
1346
 source = "registry+https://github.com/rust-lang/crates.io-index"
1760
 source = "registry+https://github.com/rust-lang/crates.io-index"
1347
 checksum = "a6d7ad61edd59bfcc7e80dababf0f4aed2e6d5e0ba1659356ae889752dfc12ff"
1761
 checksum = "a6d7ad61edd59bfcc7e80dababf0f4aed2e6d5e0ba1659356ae889752dfc12ff"
1348
 dependencies = [
1762
 dependencies = [
1349
- "bytes",
1763
+ "bytes 0.5.6",
1350
  "fnv",
1764
  "fnv",
1351
  "futures-core",
1765
  "futures-core",
1352
  "iovec",
1766
  "iovec",
@@ -1375,13 +1789,23 @@ dependencies = [
1375
  "syn",
1789
  "syn",
1376
 ]
1790
 ]
1377
 
1791
 
1792
+[[package]]
1793
+name = "tokio-tls"
1794
+version = "0.3.1"
1795
+source = "registry+https://github.com/rust-lang/crates.io-index"
1796
+checksum = "9a70f4fcd7b3b24fb194f837560168208f669ca8cb70d0c4b862944452396343"
1797
+dependencies = [
1798
+ "native-tls",
1799
+ "tokio",
1800
+]
1801
+
1378
 [[package]]
1802
 [[package]]
1379
 name = "tokio-util"
1803
 name = "tokio-util"
1380
 version = "0.3.1"
1804
 version = "0.3.1"
1381
 source = "registry+https://github.com/rust-lang/crates.io-index"
1805
 source = "registry+https://github.com/rust-lang/crates.io-index"
1382
 checksum = "be8242891f2b6cbef26a2d7e8605133c2c554cd35b3e4948ea892d6d68436499"
1806
 checksum = "be8242891f2b6cbef26a2d7e8605133c2c554cd35b3e4948ea892d6d68436499"
1383
 dependencies = [
1807
 dependencies = [
1384
- "bytes",
1808
+ "bytes 0.5.6",
1385
  "futures-core",
1809
  "futures-core",
1386
  "futures-io",
1810
  "futures-io",
1387
  "futures-sink",
1811
  "futures-sink",
@@ -1399,6 +1823,12 @@ dependencies = [
1399
  "serde",
1823
  "serde",
1400
 ]
1824
 ]
1401
 
1825
 
1826
+[[package]]
1827
+name = "tower-service"
1828
+version = "0.3.1"
1829
+source = "registry+https://github.com/rust-lang/crates.io-index"
1830
+checksum = "360dfd1d6d30e05fda32ace2c8c70e9c0a9da713275777f5a4dbb8a1893930c6"
1831
+
1402
 [[package]]
1832
 [[package]]
1403
 name = "tracing"
1833
 name = "tracing"
1404
 version = "0.1.22"
1834
 version = "0.1.22"
@@ -1406,6 +1836,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
1406
 checksum = "9f47026cdc4080c07e49b37087de021820269d996f581aac150ef9e5583eefe3"
1836
 checksum = "9f47026cdc4080c07e49b37087de021820269d996f581aac150ef9e5583eefe3"
1407
 dependencies = [
1837
 dependencies = [
1408
  "cfg-if 1.0.0",
1838
  "cfg-if 1.0.0",
1839
+ "log",
1409
  "pin-project-lite 0.2.0",
1840
  "pin-project-lite 0.2.0",
1410
  "tracing-attributes",
1841
  "tracing-attributes",
1411
  "tracing-core",
1842
  "tracing-core",
@@ -1431,6 +1862,49 @@ dependencies = [
1431
  "lazy_static",
1862
  "lazy_static",
1432
 ]
1863
 ]
1433
 
1864
 
1865
+[[package]]
1866
+name = "tracing-futures"
1867
+version = "0.2.5"
1868
+source = "registry+https://github.com/rust-lang/crates.io-index"
1869
+checksum = "97d095ae15e245a057c8e8451bab9b3ee1e1f68e9ba2b4fbc18d0ac5237835f2"
1870
+dependencies = [
1871
+ "pin-project",
1872
+ "tracing",
1873
+]
1874
+
1875
+[[package]]
1876
+name = "try-lock"
1877
+version = "0.2.3"
1878
+source = "registry+https://github.com/rust-lang/crates.io-index"
1879
+checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642"
1880
+
1881
+[[package]]
1882
+name = "unicase"
1883
+version = "2.6.0"
1884
+source = "registry+https://github.com/rust-lang/crates.io-index"
1885
+checksum = "50f37be617794602aabbeee0be4f259dc1778fabe05e2d67ee8f79326d5cb4f6"
1886
+dependencies = [
1887
+ "version_check",
1888
+]
1889
+
1890
+[[package]]
1891
+name = "unicode-bidi"
1892
+version = "0.3.5"
1893
+source = "registry+https://github.com/rust-lang/crates.io-index"
1894
+checksum = "eeb8be209bb1c96b7c177c7420d26e04eccacb0eeae6b980e35fcb74678107e0"
1895
+dependencies = [
1896
+ "matches",
1897
+]
1898
+
1899
+[[package]]
1900
+name = "unicode-normalization"
1901
+version = "0.1.17"
1902
+source = "registry+https://github.com/rust-lang/crates.io-index"
1903
+checksum = "07fbfce1c8a97d547e8b5334978438d9d6ec8c20e38f56d4a4374d181493eaef"
1904
+dependencies = [
1905
+ "tinyvec",
1906
+]
1907
+
1434
 [[package]]
1908
 [[package]]
1435
 name = "unicode-width"
1909
 name = "unicode-width"
1436
 version = "0.1.8"
1910
 version = "0.1.8"
@@ -1449,6 +1923,24 @@ version = "0.7.1"
1449
 source = "registry+https://github.com/rust-lang/crates.io-index"
1923
 source = "registry+https://github.com/rust-lang/crates.io-index"
1450
 checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a"
1924
 checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a"
1451
 
1925
 
1926
+[[package]]
1927
+name = "url"
1928
+version = "2.2.1"
1929
+source = "registry+https://github.com/rust-lang/crates.io-index"
1930
+checksum = "9ccd964113622c8e9322cfac19eb1004a07e636c545f325da085d5cdde6f1f8b"
1931
+dependencies = [
1932
+ "form_urlencoded",
1933
+ "idna",
1934
+ "matches",
1935
+ "percent-encoding",
1936
+]
1937
+
1938
+[[package]]
1939
+name = "vcpkg"
1940
+version = "0.2.11"
1941
+source = "registry+https://github.com/rust-lang/crates.io-index"
1942
+checksum = "b00bca6106a5e23f3eee943593759b7fcddb00554332e856d990c893966879fb"
1943
+
1452
 [[package]]
1944
 [[package]]
1453
 name = "vec_map"
1945
 name = "vec_map"
1454
 version = "0.8.2"
1946
 version = "0.8.2"
@@ -1461,12 +1953,28 @@ version = "0.9.2"
1461
 source = "registry+https://github.com/rust-lang/crates.io-index"
1953
 source = "registry+https://github.com/rust-lang/crates.io-index"
1462
 checksum = "b5a972e5669d67ba988ce3dc826706fb0a8b01471c088cb0b6110b805cc36aed"
1954
 checksum = "b5a972e5669d67ba988ce3dc826706fb0a8b01471c088cb0b6110b805cc36aed"
1463
 
1955
 
1956
+[[package]]
1957
+name = "want"
1958
+version = "0.3.0"
1959
+source = "registry+https://github.com/rust-lang/crates.io-index"
1960
+checksum = "1ce8a968cb1cd110d136ff8b819a556d6fb6d919363c61534f6860c7eb172ba0"
1961
+dependencies = [
1962
+ "log",
1963
+ "try-lock",
1964
+]
1965
+
1464
 [[package]]
1966
 [[package]]
1465
 name = "wasi"
1967
 name = "wasi"
1466
 version = "0.9.0+wasi-snapshot-preview1"
1968
 version = "0.9.0+wasi-snapshot-preview1"
1467
 source = "registry+https://github.com/rust-lang/crates.io-index"
1969
 source = "registry+https://github.com/rust-lang/crates.io-index"
1468
 checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
1970
 checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
1469
 
1971
 
1972
+[[package]]
1973
+name = "wasi"
1974
+version = "0.10.2+wasi-snapshot-preview1"
1975
+source = "registry+https://github.com/rust-lang/crates.io-index"
1976
+checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6"
1977
+
1470
 [[package]]
1978
 [[package]]
1471
 name = "wasm-bindgen"
1979
 name = "wasm-bindgen"
1472
 version = "0.2.68"
1980
 version = "0.2.68"
@@ -1474,6 +1982,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
1474
 checksum = "1ac64ead5ea5f05873d7c12b545865ca2b8d28adfc50a49b84770a3a97265d42"
1982
 checksum = "1ac64ead5ea5f05873d7c12b545865ca2b8d28adfc50a49b84770a3a97265d42"
1475
 dependencies = [
1983
 dependencies = [
1476
  "cfg-if 0.1.10",
1984
  "cfg-if 0.1.10",
1985
+ "serde",
1986
+ "serde_json",
1477
  "wasm-bindgen-macro",
1987
  "wasm-bindgen-macro",
1478
 ]
1988
 ]
1479
 
1989
 
@@ -1492,6 +2002,18 @@ dependencies = [
1492
  "wasm-bindgen-shared",
2002
  "wasm-bindgen-shared",
1493
 ]
2003
 ]
1494
 
2004
 
2005
+[[package]]
2006
+name = "wasm-bindgen-futures"
2007
+version = "0.4.18"
2008
+source = "registry+https://github.com/rust-lang/crates.io-index"
2009
+checksum = "b7866cab0aa01de1edf8b5d7936938a7e397ee50ce24119aef3e1eaa3b6171da"
2010
+dependencies = [
2011
+ "cfg-if 0.1.10",
2012
+ "js-sys",
2013
+ "wasm-bindgen",
2014
+ "web-sys",
2015
+]
2016
+
1495
 [[package]]
2017
 [[package]]
1496
 name = "wasm-bindgen-macro"
2018
 name = "wasm-bindgen-macro"
1497
 version = "0.2.68"
2019
 version = "0.2.68"
@@ -1593,6 +2115,15 @@ version = "0.4.0"
1593
 source = "registry+https://github.com/rust-lang/crates.io-index"
2115
 source = "registry+https://github.com/rust-lang/crates.io-index"
1594
 checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
2116
 checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
1595
 
2117
 
2118
+[[package]]
2119
+name = "winreg"
2120
+version = "0.7.0"
2121
+source = "registry+https://github.com/rust-lang/crates.io-index"
2122
+checksum = "0120db82e8a1e0b9fb3345a539c478767c0048d842860994d96113d5b667bd69"
2123
+dependencies = [
2124
+ "winapi 0.3.9",
2125
+]
2126
+
1596
 [[package]]
2127
 [[package]]
1597
 name = "ws2_32-sys"
2128
 name = "ws2_32-sys"
1598
 version = "0.2.1"
2129
 version = "0.2.1"

+ 1 - 1
Cargo.toml

@@ -19,9 +19,9 @@ serde_json = "1.0"
19
 lazy_static = "1.4"
19
 lazy_static = "1.4"
20
 clap = "2.33"
20
 clap = "2.33"
21
 rust-ini = "0.16"
21
 rust-ini = "0.16"
22
+reqwest = "0.10"
22
 
23
 
23
 [build-dependencies]
24
 [build-dependencies]
24
-cc = "1.0"
25
 hbb_common = { path = "libs/hbb_common" }
25
 hbb_common = { path = "libs/hbb_common" }
26
 
26
 
27
 [workspace]
27
 [workspace]

+ 7 - 1
src/hbbr.rs

@@ -3,14 +3,17 @@ mod relay_server;
3
 use hbb_common::{env_logger::*, ResultType};
3
 use hbb_common::{env_logger::*, ResultType};
4
 use relay_server::*;
4
 use relay_server::*;
5
 use std::sync::{Arc, Mutex};
5
 use std::sync::{Arc, Mutex};
6
+mod lic;
6
 
7
 
7
 fn main() -> ResultType<()> {
8
 fn main() -> ResultType<()> {
8
     init_from_env(Env::default().filter_or(DEFAULT_FILTER_ENV, "info"));
9
     init_from_env(Env::default().filter_or(DEFAULT_FILTER_ENV, "info"));
9
     let args = format!(
10
     let args = format!(
10
         "-p, --port=[NUMBER(default={})] 'Sets the listening port'
11
         "-p, --port=[NUMBER(default={})] 'Sets the listening port'
11
         -k, --key=[KEY] 'Only allow the client with the same key'
12
         -k, --key=[KEY] 'Only allow the client with the same key'
13
+        {}
12
         ",
14
         ",
13
-        DEFAULT_PORT
15
+        DEFAULT_PORT,
16
+        lic::EMAIL_ARG
14
     );
17
     );
15
     let matches = App::new("hbbr")
18
     let matches = App::new("hbbr")
16
         .version(hbbs::VERSION)
19
         .version(hbbs::VERSION)
@@ -18,6 +21,9 @@ fn main() -> ResultType<()> {
18
         .about("RustDesk Relay Server")
21
         .about("RustDesk Relay Server")
19
         .args_from_usage(&args)
22
         .args_from_usage(&args)
20
         .get_matches();
23
         .get_matches();
24
+    if !lic::check_lic(matches.value_of("email").unwrap_or("")) {
25
+        return Ok(());
26
+    }
21
     let stop: Arc<Mutex<bool>> = Default::default();
27
     let stop: Arc<Mutex<bool>> = Default::default();
22
     start(
28
     start(
23
         matches.value_of("port").unwrap_or(DEFAULT_PORT),
29
         matches.value_of("port").unwrap_or(DEFAULT_PORT),

+ 6 - 0
src/lic.rs

@@ -0,0 +1,6 @@
1
+pub fn check_lic(email: &str) -> bool {
2
+    true
3
+}
4
+
5
+pub const EMAIL_ARG: &'static str =
6
+    "-m, --email=[EMAIL] 'Sets your email address registered with RustDesk'";

+ 6 - 1
src/main.rs

@@ -4,6 +4,7 @@
4
 use clap::App;
4
 use clap::App;
5
 use hbb_common::{env_logger::*, log, ResultType};
5
 use hbb_common::{env_logger::*, log, ResultType};
6
 use hbbs::*;
6
 use hbbs::*;
7
+mod lic;
7
 use ini::Ini;
8
 use ini::Ini;
8
 use std::sync::{Arc, Mutex};
9
 use std::sync::{Arc, Mutex};
9
 
10
 
@@ -17,8 +18,9 @@ fn main() -> ResultType<()> {
17
         -u, --software-url=[URL] 'Sets download url of RustDesk software of newest version'
18
         -u, --software-url=[URL] 'Sets download url of RustDesk software of newest version'
18
         -r, --relay-servers=[HOST] 'Sets the default relay servers, seperated by colon'
19
         -r, --relay-servers=[HOST] 'Sets the default relay servers, seperated by colon'
19
         -C, --change-id=[BOOL(default=Y)] 'Sets if support to change id'
20
         -C, --change-id=[BOOL(default=Y)] 'Sets if support to change id'
21
+        {}
20
         -k, --key=[KEY] 'Only allow the client with the same key'",
22
         -k, --key=[KEY] 'Only allow the client with the same key'",
21
-        DEFAULT_PORT,
23
+        DEFAULT_PORT, lic::EMAIL_ARG
22
     );
24
     );
23
     let matches = App::new("hbbs")
25
     let matches = App::new("hbbs")
24
         .version(crate::VERSION)
26
         .version(crate::VERSION)
@@ -62,6 +64,9 @@ fn main() -> ResultType<()> {
62
     log::info!("serial={}", serial);
64
     log::info!("serial={}", serial);
63
     log::info!("rendezvous-servers={:?}", rendezvous_servers);
65
     log::info!("rendezvous-servers={:?}", rendezvous_servers);
64
     let stop: Arc<Mutex<bool>> = Default::default();
66
     let stop: Arc<Mutex<bool>> = Default::default();
67
+    if !lic::check_lic(&get_arg("email", "")) {
68
+        return Ok(());
69
+    }
65
     RendezvousServer::start(
70
     RendezvousServer::start(
66
         &addr,
71
         &addr,
67
         &addr2,
72
         &addr2,