itsi 0.1.13 → 0.1.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (169) hide show
  1. checksums.yaml +4 -4
  2. data/Cargo.lock +113 -593
  3. data/Cargo.toml +6 -0
  4. data/crates/itsi_error/Cargo.toml +1 -0
  5. data/crates/itsi_error/src/lib.rs +100 -10
  6. data/crates/itsi_scheduler/src/itsi_scheduler.rs +1 -1
  7. data/crates/itsi_server/Cargo.toml +9 -11
  8. data/crates/itsi_server/src/default_responses/html/401.html +68 -0
  9. data/crates/itsi_server/src/default_responses/html/403.html +68 -0
  10. data/crates/itsi_server/src/default_responses/html/404.html +68 -0
  11. data/crates/itsi_server/src/default_responses/html/413.html +71 -0
  12. data/crates/itsi_server/src/default_responses/html/429.html +68 -0
  13. data/crates/itsi_server/src/default_responses/html/500.html +71 -0
  14. data/crates/itsi_server/src/default_responses/html/502.html +71 -0
  15. data/crates/itsi_server/src/default_responses/html/503.html +68 -0
  16. data/crates/itsi_server/src/default_responses/html/504.html +69 -0
  17. data/crates/itsi_server/src/default_responses/html/index.html +238 -0
  18. data/crates/itsi_server/src/default_responses/json/401.json +6 -0
  19. data/crates/itsi_server/src/default_responses/json/403.json +6 -0
  20. data/crates/itsi_server/src/default_responses/json/404.json +6 -0
  21. data/crates/itsi_server/src/default_responses/json/413.json +6 -0
  22. data/crates/itsi_server/src/default_responses/json/429.json +6 -0
  23. data/crates/itsi_server/src/default_responses/json/500.json +6 -0
  24. data/crates/itsi_server/src/default_responses/json/502.json +6 -0
  25. data/crates/itsi_server/src/default_responses/json/503.json +6 -0
  26. data/crates/itsi_server/src/default_responses/json/504.json +6 -0
  27. data/crates/itsi_server/src/default_responses/mod.rs +11 -0
  28. data/crates/itsi_server/src/lib.rs +58 -26
  29. data/crates/itsi_server/src/prelude.rs +2 -0
  30. data/crates/itsi_server/src/ruby_types/README.md +21 -0
  31. data/crates/itsi_server/src/ruby_types/itsi_body_proxy/mod.rs +8 -6
  32. data/crates/itsi_server/src/ruby_types/itsi_grpc_call.rs +344 -0
  33. data/crates/itsi_server/src/ruby_types/{itsi_grpc_stream → itsi_grpc_response_stream}/mod.rs +121 -73
  34. data/crates/itsi_server/src/ruby_types/itsi_http_request.rs +103 -40
  35. data/crates/itsi_server/src/ruby_types/itsi_http_response.rs +8 -5
  36. data/crates/itsi_server/src/ruby_types/itsi_server/file_watcher.rs +4 -4
  37. data/crates/itsi_server/src/ruby_types/itsi_server/itsi_server_config.rs +37 -17
  38. data/crates/itsi_server/src/ruby_types/itsi_server.rs +4 -3
  39. data/crates/itsi_server/src/ruby_types/mod.rs +6 -13
  40. data/crates/itsi_server/src/server/{bind.rs → binds/bind.rs} +23 -4
  41. data/crates/itsi_server/src/server/{listener.rs → binds/listener.rs} +24 -10
  42. data/crates/itsi_server/src/server/binds/mod.rs +4 -0
  43. data/crates/itsi_server/src/server/{tls.rs → binds/tls.rs} +9 -4
  44. data/crates/itsi_server/src/server/http_message_types.rs +97 -0
  45. data/crates/itsi_server/src/server/io_stream.rs +2 -1
  46. data/crates/itsi_server/src/server/middleware_stack/middleware.rs +28 -16
  47. data/crates/itsi_server/src/server/middleware_stack/middlewares/allow_list.rs +17 -8
  48. data/crates/itsi_server/src/server/middleware_stack/middlewares/auth_api_key.rs +47 -18
  49. data/crates/itsi_server/src/server/middleware_stack/middlewares/auth_basic.rs +13 -9
  50. data/crates/itsi_server/src/server/middleware_stack/middlewares/auth_jwt.rs +145 -181
  51. data/crates/itsi_server/src/server/middleware_stack/middlewares/cache_control.rs +5 -2
  52. data/crates/itsi_server/src/server/middleware_stack/middlewares/compression.rs +37 -48
  53. data/crates/itsi_server/src/server/middleware_stack/middlewares/cors.rs +25 -20
  54. data/crates/itsi_server/src/server/middleware_stack/middlewares/deny_list.rs +14 -7
  55. data/crates/itsi_server/src/server/middleware_stack/middlewares/error_response/default_responses.rs +190 -0
  56. data/crates/itsi_server/src/server/middleware_stack/middlewares/error_response.rs +125 -95
  57. data/crates/itsi_server/src/server/middleware_stack/middlewares/etag.rs +9 -5
  58. data/crates/itsi_server/src/server/middleware_stack/middlewares/header_interpretation.rs +1 -4
  59. data/crates/itsi_server/src/server/middleware_stack/middlewares/intrusion_protection.rs +25 -19
  60. data/crates/itsi_server/src/server/middleware_stack/middlewares/log_requests.rs +4 -4
  61. data/crates/itsi_server/src/server/middleware_stack/middlewares/max_body.rs +47 -0
  62. data/crates/itsi_server/src/server/middleware_stack/middlewares/mod.rs +9 -4
  63. data/crates/itsi_server/src/server/middleware_stack/middlewares/proxy.rs +260 -62
  64. data/crates/itsi_server/src/server/middleware_stack/middlewares/rate_limit.rs +29 -22
  65. data/crates/itsi_server/src/server/middleware_stack/middlewares/redirect.rs +6 -6
  66. data/crates/itsi_server/src/server/middleware_stack/middlewares/request_headers.rs +6 -5
  67. data/crates/itsi_server/src/server/middleware_stack/middlewares/response_headers.rs +4 -2
  68. data/crates/itsi_server/src/server/middleware_stack/middlewares/ruby_app.rs +51 -18
  69. data/crates/itsi_server/src/server/middleware_stack/middlewares/static_assets.rs +31 -13
  70. data/crates/itsi_server/src/server/middleware_stack/middlewares/static_response.rs +55 -0
  71. data/crates/itsi_server/src/server/middleware_stack/middlewares/string_rewrite.rs +13 -8
  72. data/crates/itsi_server/src/server/middleware_stack/mod.rs +101 -69
  73. data/crates/itsi_server/src/server/mod.rs +3 -9
  74. data/crates/itsi_server/src/server/process_worker.rs +21 -3
  75. data/crates/itsi_server/src/server/request_job.rs +2 -2
  76. data/crates/itsi_server/src/server/serve_strategy/cluster_mode.rs +8 -3
  77. data/crates/itsi_server/src/server/serve_strategy/single_mode.rs +26 -26
  78. data/crates/itsi_server/src/server/signal.rs +24 -41
  79. data/crates/itsi_server/src/server/size_limited_incoming.rs +101 -0
  80. data/crates/itsi_server/src/server/thread_worker.rs +59 -28
  81. data/crates/itsi_server/src/services/itsi_http_service.rs +239 -0
  82. data/crates/itsi_server/src/services/mime_types.rs +1416 -0
  83. data/crates/itsi_server/src/services/mod.rs +6 -0
  84. data/crates/itsi_server/src/services/password_hasher.rs +83 -0
  85. data/crates/itsi_server/src/{server → services}/rate_limiter.rs +35 -31
  86. data/crates/itsi_server/src/{server → services}/static_file_server.rs +521 -181
  87. data/crates/itsi_tracing/src/lib.rs +145 -55
  88. data/{Itsi.rb → foo/Itsi.rb} +6 -9
  89. data/gems/scheduler/Cargo.lock +7 -0
  90. data/gems/scheduler/lib/itsi/scheduler/version.rb +1 -1
  91. data/gems/scheduler/test/helpers/test_helper.rb +0 -1
  92. data/gems/scheduler/test/test_address_resolve.rb +0 -1
  93. data/gems/scheduler/test/test_network_io.rb +1 -1
  94. data/gems/scheduler/test/test_process_wait.rb +0 -1
  95. data/gems/server/Cargo.lock +113 -593
  96. data/gems/server/exe/itsi +65 -19
  97. data/gems/server/itsi-server.gemspec +4 -3
  98. data/gems/server/lib/itsi/http_request/response_status_shortcodes.rb +74 -0
  99. data/gems/server/lib/itsi/http_request.rb +116 -17
  100. data/gems/server/lib/itsi/http_response.rb +2 -0
  101. data/gems/server/lib/itsi/passfile.rb +109 -0
  102. data/gems/server/lib/itsi/server/config/dsl.rb +160 -101
  103. data/gems/server/lib/itsi/server/config.rb +58 -23
  104. data/gems/server/lib/itsi/server/default_app/default_app.rb +25 -29
  105. data/gems/server/lib/itsi/server/default_app/index.html +113 -89
  106. data/gems/server/lib/itsi/server/{Itsi.rb → default_config/Itsi-rackup.rb} +1 -1
  107. data/gems/server/lib/itsi/server/default_config/Itsi.rb +107 -0
  108. data/gems/server/lib/itsi/server/grpc/grpc_call.rb +246 -0
  109. data/gems/server/lib/itsi/server/grpc/grpc_interface.rb +100 -0
  110. data/gems/server/lib/itsi/server/grpc/reflection/v1/reflection_pb.rb +26 -0
  111. data/gems/server/lib/itsi/server/grpc/reflection/v1/reflection_services_pb.rb +122 -0
  112. data/gems/server/lib/itsi/server/route_tester.rb +107 -0
  113. data/gems/server/lib/itsi/server/typed_handlers/param_parser.rb +200 -0
  114. data/gems/server/lib/itsi/server/typed_handlers/source_parser.rb +55 -0
  115. data/gems/server/lib/itsi/server/typed_handlers.rb +17 -0
  116. data/gems/server/lib/itsi/server/version.rb +1 -1
  117. data/gems/server/lib/itsi/server.rb +82 -12
  118. data/gems/server/lib/ruby_lsp/itsi/addon.rb +111 -0
  119. data/gems/server/lib/shell_completions/completions.rb +26 -0
  120. data/gems/server/test/helpers/test_helper.rb +2 -1
  121. data/lib/itsi/version.rb +1 -1
  122. data/sandbox/README.md +5 -0
  123. data/sandbox/itsi_file/Gemfile +4 -2
  124. data/sandbox/itsi_file/Gemfile.lock +48 -6
  125. data/sandbox/itsi_file/Itsi.rb +326 -129
  126. data/sandbox/itsi_file/call.json +1 -0
  127. data/sandbox/itsi_file/echo_client/Gemfile +10 -0
  128. data/sandbox/itsi_file/echo_client/Gemfile.lock +27 -0
  129. data/sandbox/itsi_file/echo_client/README.md +95 -0
  130. data/sandbox/itsi_file/echo_client/echo_client.rb +164 -0
  131. data/sandbox/itsi_file/echo_client/gen_proto.sh +17 -0
  132. data/sandbox/itsi_file/echo_client/lib/echo_pb.rb +16 -0
  133. data/sandbox/itsi_file/echo_client/lib/echo_services_pb.rb +29 -0
  134. data/sandbox/itsi_file/echo_client/run_client.rb +64 -0
  135. data/sandbox/itsi_file/echo_client/test_compressions.sh +20 -0
  136. data/sandbox/itsi_file/echo_service_nonitsi/Gemfile +10 -0
  137. data/sandbox/itsi_file/echo_service_nonitsi/Gemfile.lock +79 -0
  138. data/sandbox/itsi_file/echo_service_nonitsi/echo.proto +26 -0
  139. data/sandbox/itsi_file/echo_service_nonitsi/echo_pb.rb +16 -0
  140. data/sandbox/itsi_file/echo_service_nonitsi/echo_services_pb.rb +29 -0
  141. data/sandbox/itsi_file/echo_service_nonitsi/server.rb +52 -0
  142. data/sandbox/itsi_sandbox_async/config.ru +0 -1
  143. data/sandbox/itsi_sandbox_rack/Gemfile.lock +2 -2
  144. data/sandbox/itsi_sandbox_rails/Gemfile +2 -2
  145. data/sandbox/itsi_sandbox_rails/Gemfile.lock +76 -2
  146. data/sandbox/itsi_sandbox_rails/app/controllers/home_controller.rb +15 -0
  147. data/sandbox/itsi_sandbox_rails/config/environments/development.rb +1 -0
  148. data/sandbox/itsi_sandbox_rails/config/environments/production.rb +1 -0
  149. data/sandbox/itsi_sandbox_rails/config/routes.rb +2 -0
  150. data/sandbox/itsi_sinatra/app.rb +0 -1
  151. data/sandbox/static_files/.env +1 -0
  152. data/sandbox/static_files/404.html +25 -0
  153. data/sandbox/static_files/_DSC0102.NEF.jpg +0 -0
  154. data/sandbox/static_files/about.html +68 -0
  155. data/sandbox/static_files/tiny.html +1 -0
  156. data/sandbox/static_files/writebook.zip +0 -0
  157. data/tasks.txt +28 -32
  158. metadata +87 -26
  159. data/crates/itsi_error/src/from.rs +0 -68
  160. data/crates/itsi_server/src/ruby_types/itsi_grpc_request.rs +0 -147
  161. data/crates/itsi_server/src/ruby_types/itsi_grpc_response.rs +0 -19
  162. data/crates/itsi_server/src/server/itsi_service.rs +0 -172
  163. data/crates/itsi_server/src/server/middleware_stack/middlewares/grpc_service.rs +0 -72
  164. data/crates/itsi_server/src/server/types.rs +0 -43
  165. data/gems/server/lib/itsi/server/grpc_interface.rb +0 -213
  166. data/sandbox/itsi_file/public/assets/index.html +0 -1
  167. /data/crates/itsi_server/src/server/{bind_protocol.rs → binds/bind_protocol.rs} +0 -0
  168. /data/crates/itsi_server/src/server/{tls → binds/tls}/locked_dir_cache.rs +0 -0
  169. /data/crates/itsi_server/src/{server → services}/cache_store.rs +0 -0
data/Cargo.lock CHANGED
@@ -69,16 +69,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
69
69
  checksum = "69f7f8c3906b62b754cd5326047894316021dcfe5a194c8ea52bdd94934a3457"
70
70
 
71
71
  [[package]]
72
- name = "arrayref"
73
- version = "0.3.9"
74
- source = "registry+https://github.com/rust-lang/crates.io-index"
75
- checksum = "76a2e8124351fda1ef8aaaa3bbd7ebbcb486bbcd4225aca0aa0d84bb2db8fecb"
76
-
77
- [[package]]
78
- name = "arrayvec"
79
- version = "0.7.6"
72
+ name = "argon2"
73
+ version = "0.5.3"
80
74
  source = "registry+https://github.com/rust-lang/crates.io-index"
81
- checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50"
75
+ checksum = "3c3610892ee6e0cbce8ae2700349fcf8f98adb0dbfbee85aec3c9179d29cc072"
76
+ dependencies = [
77
+ "base64ct",
78
+ "blake2",
79
+ "cpufeatures",
80
+ "password-hash",
81
+ ]
82
82
 
83
83
  [[package]]
84
84
  name = "asn1-rs"
@@ -140,6 +140,7 @@ dependencies = [
140
140
  "brotli",
141
141
  "flate2",
142
142
  "futures-core",
143
+ "futures-io",
143
144
  "memchr",
144
145
  "pin-project-lite",
145
146
  "tokio",
@@ -198,7 +199,7 @@ version = "0.26.0"
198
199
  source = "registry+https://github.com/rust-lang/crates.io-index"
199
200
  checksum = "0f9dd2e03ee80ca2822dd6ea431163d2ef259f2066a4d6ccaca6d9dcb386aa43"
200
201
  dependencies = [
201
- "bindgen 0.69.5",
202
+ "bindgen",
202
203
  "cc",
203
204
  "cmake",
204
205
  "dunce",
@@ -230,12 +231,6 @@ dependencies = [
230
231
  "windows-targets 0.52.6",
231
232
  ]
232
233
 
233
- [[package]]
234
- name = "base16ct"
235
- version = "0.2.0"
236
- source = "registry+https://github.com/rust-lang/crates.io-index"
237
- checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf"
238
-
239
234
  [[package]]
240
235
  name = "base64"
241
236
  version = "0.22.1"
@@ -248,6 +243,19 @@ version = "1.7.3"
248
243
  source = "registry+https://github.com/rust-lang/crates.io-index"
249
244
  checksum = "89e25b6adfb930f02d1981565a6e5d9c547ac15a96606256d3b59040e5cd4ca3"
250
245
 
246
+ [[package]]
247
+ name = "bcrypt"
248
+ version = "0.17.0"
249
+ source = "registry+https://github.com/rust-lang/crates.io-index"
250
+ checksum = "92758ad6077e4c76a6cadbce5005f666df70d4f13b19976b1a8062eef880040f"
251
+ dependencies = [
252
+ "base64",
253
+ "blowfish",
254
+ "getrandom 0.3.1",
255
+ "subtle",
256
+ "zeroize",
257
+ ]
258
+
251
259
  [[package]]
252
260
  name = "bindgen"
253
261
  version = "0.69.5"
@@ -271,30 +279,6 @@ dependencies = [
271
279
  "which",
272
280
  ]
273
281
 
274
- [[package]]
275
- name = "bindgen"
276
- version = "0.70.1"
277
- source = "registry+https://github.com/rust-lang/crates.io-index"
278
- checksum = "f49d8fed880d473ea71efb9bf597651e77201bdd4893efe54c9e5d65ae04ce6f"
279
- dependencies = [
280
- "bitflags 2.8.0",
281
- "cexpr",
282
- "clang-sys",
283
- "itertools",
284
- "proc-macro2",
285
- "quote",
286
- "regex",
287
- "rustc-hash 1.1.0",
288
- "shlex",
289
- "syn 2.0.98",
290
- ]
291
-
292
- [[package]]
293
- name = "binstring"
294
- version = "0.1.2"
295
- source = "registry+https://github.com/rust-lang/crates.io-index"
296
- checksum = "ed79c2a8151273c70956b5e3cdfdc1ff6c1a8b9779ba59c6807d281b32ee2f86"
297
-
298
282
  [[package]]
299
283
  name = "bitflags"
300
284
  version = "1.3.2"
@@ -308,14 +292,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
308
292
  checksum = "8f68f53c83ab957f72c32642f3868eec03eb974d1fb82e453128456482613d36"
309
293
 
310
294
  [[package]]
311
- name = "blake2b_simd"
312
- version = "1.0.3"
295
+ name = "blake2"
296
+ version = "0.10.6"
313
297
  source = "registry+https://github.com/rust-lang/crates.io-index"
314
- checksum = "06e903a20b159e944f91ec8499fe1e55651480c541ea0a584f5d967c49ad9d99"
298
+ checksum = "46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe"
315
299
  dependencies = [
316
- "arrayref",
317
- "arrayvec",
318
- "constant_time_eq",
300
+ "digest",
319
301
  ]
320
302
 
321
303
  [[package]]
@@ -328,29 +310,13 @@ dependencies = [
328
310
  ]
329
311
 
330
312
  [[package]]
331
- name = "boring"
332
- version = "4.15.0"
333
- source = "registry+https://github.com/rust-lang/crates.io-index"
334
- checksum = "c84a16a47c850f899c5cb6f2ef47bedf7268447c3cb84a89b7bc35f140c859d6"
335
- dependencies = [
336
- "bitflags 2.8.0",
337
- "boring-sys",
338
- "foreign-types 0.5.0",
339
- "libc",
340
- "openssl-macros",
341
- ]
342
-
343
- [[package]]
344
- name = "boring-sys"
345
- version = "4.15.0"
313
+ name = "blowfish"
314
+ version = "0.9.1"
346
315
  source = "registry+https://github.com/rust-lang/crates.io-index"
347
- checksum = "3cf7466056d7ca35a356fbc27c89eb2f1493fb2e61c24c5f9f0277e8f402dc9e"
316
+ checksum = "e412e2cd0f2b2d93e02543ceae7917b3c70331573df19ee046bcbc35e45e87d7"
348
317
  dependencies = [
349
- "autocfg",
350
- "bindgen 0.70.1",
351
- "cmake",
352
- "fs_extra",
353
- "fslock",
318
+ "byteorder",
319
+ "cipher",
354
320
  ]
355
321
 
356
322
  [[package]]
@@ -448,6 +414,16 @@ dependencies = [
448
414
  "windows-link",
449
415
  ]
450
416
 
417
+ [[package]]
418
+ name = "cipher"
419
+ version = "0.4.4"
420
+ source = "registry+https://github.com/rust-lang/crates.io-index"
421
+ checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad"
422
+ dependencies = [
423
+ "crypto-common",
424
+ "inout",
425
+ ]
426
+
451
427
  [[package]]
452
428
  name = "clang-sys"
453
429
  version = "1.8.1"
@@ -468,17 +444,6 @@ dependencies = [
468
444
  "cc",
469
445
  ]
470
446
 
471
- [[package]]
472
- name = "coarsetime"
473
- version = "0.1.36"
474
- source = "registry+https://github.com/rust-lang/crates.io-index"
475
- checksum = "91849686042de1b41cd81490edc83afbcb0abe5a9b6f2c4114f23ce8cca1bcf4"
476
- dependencies = [
477
- "libc",
478
- "wasix",
479
- "wasm-bindgen",
480
- ]
481
-
482
447
  [[package]]
483
448
  name = "combine"
484
449
  version = "4.6.7"
@@ -502,18 +467,6 @@ dependencies = [
502
467
  "crossbeam-utils",
503
468
  ]
504
469
 
505
- [[package]]
506
- name = "const-oid"
507
- version = "0.9.6"
508
- source = "registry+https://github.com/rust-lang/crates.io-index"
509
- checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8"
510
-
511
- [[package]]
512
- name = "constant_time_eq"
513
- version = "0.3.1"
514
- source = "registry+https://github.com/rust-lang/crates.io-index"
515
- checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6"
516
-
517
470
  [[package]]
518
471
  name = "core-foundation"
519
472
  version = "0.9.4"
@@ -540,6 +493,17 @@ version = "0.8.7"
540
493
  source = "registry+https://github.com/rust-lang/crates.io-index"
541
494
  checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b"
542
495
 
496
+ [[package]]
497
+ name = "core_affinity"
498
+ version = "0.8.3"
499
+ source = "registry+https://github.com/rust-lang/crates.io-index"
500
+ checksum = "a034b3a7b624016c6e13f5df875747cc25f884156aad2abd12b6c46797971342"
501
+ dependencies = [
502
+ "libc",
503
+ "num_cpus",
504
+ "winapi",
505
+ ]
506
+
543
507
  [[package]]
544
508
  name = "cpufeatures"
545
509
  version = "0.2.17"
@@ -558,19 +522,6 @@ dependencies = [
558
522
  "cfg-if",
559
523
  ]
560
524
 
561
- [[package]]
562
- name = "crossbeam"
563
- version = "0.8.4"
564
- source = "registry+https://github.com/rust-lang/crates.io-index"
565
- checksum = "1137cd7e7fc0fb5d3c5a8678be38ec56e819125d8d7907411fe24ccb943faca8"
566
- dependencies = [
567
- "crossbeam-channel",
568
- "crossbeam-deque",
569
- "crossbeam-epoch",
570
- "crossbeam-queue",
571
- "crossbeam-utils",
572
- ]
573
-
574
525
  [[package]]
575
526
  name = "crossbeam-channel"
576
527
  version = "0.5.14"
@@ -599,33 +550,12 @@ dependencies = [
599
550
  "crossbeam-utils",
600
551
  ]
601
552
 
602
- [[package]]
603
- name = "crossbeam-queue"
604
- version = "0.3.12"
605
- source = "registry+https://github.com/rust-lang/crates.io-index"
606
- checksum = "0f58bbc28f91df819d0aa2a2c00cd19754769c2fad90579b3592b1c9ba7a3115"
607
- dependencies = [
608
- "crossbeam-utils",
609
- ]
610
-
611
553
  [[package]]
612
554
  name = "crossbeam-utils"
613
555
  version = "0.8.21"
614
556
  source = "registry+https://github.com/rust-lang/crates.io-index"
615
557
  checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28"
616
558
 
617
- [[package]]
618
- name = "crypto-bigint"
619
- version = "0.5.5"
620
- source = "registry+https://github.com/rust-lang/crates.io-index"
621
- checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76"
622
- dependencies = [
623
- "generic-array",
624
- "rand_core 0.6.4",
625
- "subtle",
626
- "zeroize",
627
- ]
628
-
629
559
  [[package]]
630
560
  name = "crypto-common"
631
561
  version = "0.1.6"
@@ -636,43 +566,12 @@ dependencies = [
636
566
  "typenum",
637
567
  ]
638
568
 
639
- [[package]]
640
- name = "ct-codecs"
641
- version = "1.1.3"
642
- source = "registry+https://github.com/rust-lang/crates.io-index"
643
- checksum = "b916ba8ce9e4182696896f015e8a5ae6081b305f74690baa8465e35f5a142ea4"
644
-
645
- [[package]]
646
- name = "dashmap"
647
- version = "6.1.0"
648
- source = "registry+https://github.com/rust-lang/crates.io-index"
649
- checksum = "5041cc499144891f3790297212f32a74fb938e5136a14943f338ef9e0ae276cf"
650
- dependencies = [
651
- "cfg-if",
652
- "crossbeam-utils",
653
- "hashbrown 0.14.5",
654
- "lock_api",
655
- "once_cell",
656
- "parking_lot_core",
657
- ]
658
-
659
569
  [[package]]
660
570
  name = "data-encoding"
661
571
  version = "2.8.0"
662
572
  source = "registry+https://github.com/rust-lang/crates.io-index"
663
573
  checksum = "575f75dfd25738df5b91b8e43e14d44bda14637a58fae779fd2b064f8bf3e010"
664
574
 
665
- [[package]]
666
- name = "der"
667
- version = "0.7.9"
668
- source = "registry+https://github.com/rust-lang/crates.io-index"
669
- checksum = "f55bf8e7b65898637379c1b74eb1551107c8294ed26d855ceb9fd1a09cfc9bc0"
670
- dependencies = [
671
- "const-oid",
672
- "pem-rfc7468",
673
- "zeroize",
674
- ]
675
-
676
575
  [[package]]
677
576
  name = "der-parser"
678
577
  version = "9.0.0"
@@ -724,7 +623,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
724
623
  checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
725
624
  dependencies = [
726
625
  "block-buffer",
727
- "const-oid",
728
626
  "crypto-common",
729
627
  "subtle",
730
628
  ]
@@ -767,57 +665,12 @@ version = "1.0.5"
767
665
  source = "registry+https://github.com/rust-lang/crates.io-index"
768
666
  checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813"
769
667
 
770
- [[package]]
771
- name = "ecdsa"
772
- version = "0.16.9"
773
- source = "registry+https://github.com/rust-lang/crates.io-index"
774
- checksum = "ee27f32b5c5292967d2d4a9d7f1e0b0aed2c15daded5a60300e4abb9d8020bca"
775
- dependencies = [
776
- "der",
777
- "digest",
778
- "elliptic-curve",
779
- "rfc6979",
780
- "signature",
781
- "spki",
782
- ]
783
-
784
- [[package]]
785
- name = "ed25519-compact"
786
- version = "2.1.1"
787
- source = "registry+https://github.com/rust-lang/crates.io-index"
788
- checksum = "e9b3460f44bea8cd47f45a0c70892f1eff856d97cd55358b2f73f663789f6190"
789
- dependencies = [
790
- "ct-codecs",
791
- "getrandom 0.2.15",
792
- ]
793
-
794
668
  [[package]]
795
669
  name = "either"
796
670
  version = "1.15.0"
797
671
  source = "registry+https://github.com/rust-lang/crates.io-index"
798
672
  checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719"
799
673
 
800
- [[package]]
801
- name = "elliptic-curve"
802
- version = "0.13.8"
803
- source = "registry+https://github.com/rust-lang/crates.io-index"
804
- checksum = "b5e6043086bf7973472e0c7dff2142ea0b680d30e18d9cc40f267efbf222bd47"
805
- dependencies = [
806
- "base16ct",
807
- "crypto-bigint",
808
- "digest",
809
- "ff",
810
- "generic-array",
811
- "group",
812
- "hkdf",
813
- "pem-rfc7468",
814
- "pkcs8",
815
- "rand_core 0.6.4",
816
- "sec1",
817
- "subtle",
818
- "zeroize",
819
- ]
820
-
821
674
  [[package]]
822
675
  name = "encoding_rs"
823
676
  version = "0.8.35"
@@ -870,16 +723,6 @@ version = "2.3.0"
870
723
  source = "registry+https://github.com/rust-lang/crates.io-index"
871
724
  checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be"
872
725
 
873
- [[package]]
874
- name = "ff"
875
- version = "0.13.1"
876
- source = "registry+https://github.com/rust-lang/crates.io-index"
877
- checksum = "c0b50bfb653653f9ca9095b427bed08ab8d75a137839d9ad64eb11810d5b6393"
878
- dependencies = [
879
- "rand_core 0.6.4",
880
- "subtle",
881
- ]
882
-
883
726
  [[package]]
884
727
  name = "filetime"
885
728
  version = "0.2.25"
@@ -914,28 +757,7 @@ version = "0.3.2"
914
757
  source = "registry+https://github.com/rust-lang/crates.io-index"
915
758
  checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
916
759
  dependencies = [
917
- "foreign-types-shared 0.1.1",
918
- ]
919
-
920
- [[package]]
921
- name = "foreign-types"
922
- version = "0.5.0"
923
- source = "registry+https://github.com/rust-lang/crates.io-index"
924
- checksum = "d737d9aa519fb7b749cbc3b962edcf310a8dd1f4b67c91c4f83975dbdd17d965"
925
- dependencies = [
926
- "foreign-types-macros",
927
- "foreign-types-shared 0.3.1",
928
- ]
929
-
930
- [[package]]
931
- name = "foreign-types-macros"
932
- version = "0.2.3"
933
- source = "registry+https://github.com/rust-lang/crates.io-index"
934
- checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742"
935
- dependencies = [
936
- "proc-macro2",
937
- "quote",
938
- "syn 2.0.98",
760
+ "foreign-types-shared",
939
761
  ]
940
762
 
941
763
  [[package]]
@@ -944,12 +766,6 @@ version = "0.1.1"
944
766
  source = "registry+https://github.com/rust-lang/crates.io-index"
945
767
  checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
946
768
 
947
- [[package]]
948
- name = "foreign-types-shared"
949
- version = "0.3.1"
950
- source = "registry+https://github.com/rust-lang/crates.io-index"
951
- checksum = "aa9a19cbb55df58761df49b23516a86d432839add4af60fc256da840f66ed35b"
952
-
953
769
  [[package]]
954
770
  name = "form_urlencoded"
955
771
  version = "1.2.1"
@@ -984,16 +800,6 @@ dependencies = [
984
800
  "libc",
985
801
  ]
986
802
 
987
- [[package]]
988
- name = "fslock"
989
- version = "0.2.1"
990
- source = "registry+https://github.com/rust-lang/crates.io-index"
991
- checksum = "04412b8935272e3a9bae6f48c7bfff74c2911f60525404edfdd28e49884c3bfb"
992
- dependencies = [
993
- "libc",
994
- "winapi",
995
- ]
996
-
997
803
  [[package]]
998
804
  name = "futures"
999
805
  version = "0.3.31"
@@ -1104,7 +910,6 @@ checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
1104
910
  dependencies = [
1105
911
  "typenum",
1106
912
  "version_check",
1107
- "zeroize",
1108
913
  ]
1109
914
 
1110
915
  [[package]]
@@ -1157,17 +962,6 @@ dependencies = [
1157
962
  "regex-syntax 0.8.5",
1158
963
  ]
1159
964
 
1160
- [[package]]
1161
- name = "group"
1162
- version = "0.13.0"
1163
- source = "registry+https://github.com/rust-lang/crates.io-index"
1164
- checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63"
1165
- dependencies = [
1166
- "ff",
1167
- "rand_core 0.6.4",
1168
- "subtle",
1169
- ]
1170
-
1171
965
  [[package]]
1172
966
  name = "h2"
1173
967
  version = "0.4.8"
@@ -1187,12 +981,6 @@ dependencies = [
1187
981
  "tracing",
1188
982
  ]
1189
983
 
1190
- [[package]]
1191
- name = "hashbrown"
1192
- version = "0.14.5"
1193
- source = "registry+https://github.com/rust-lang/crates.io-index"
1194
- checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1"
1195
-
1196
984
  [[package]]
1197
985
  name = "hashbrown"
1198
986
  version = "0.15.2"
@@ -1214,48 +1002,6 @@ version = "0.3.9"
1214
1002
  source = "registry+https://github.com/rust-lang/crates.io-index"
1215
1003
  checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024"
1216
1004
 
1217
- [[package]]
1218
- name = "hkdf"
1219
- version = "0.12.4"
1220
- source = "registry+https://github.com/rust-lang/crates.io-index"
1221
- checksum = "7b5f8eb2ad728638ea2c7d47a21db23b7b58a72ed6a38256b8a1849f15fbbdf7"
1222
- dependencies = [
1223
- "hmac",
1224
- ]
1225
-
1226
- [[package]]
1227
- name = "hmac"
1228
- version = "0.12.1"
1229
- source = "registry+https://github.com/rust-lang/crates.io-index"
1230
- checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e"
1231
- dependencies = [
1232
- "digest",
1233
- ]
1234
-
1235
- [[package]]
1236
- name = "hmac-sha1-compact"
1237
- version = "1.1.5"
1238
- source = "registry+https://github.com/rust-lang/crates.io-index"
1239
- checksum = "18492c9f6f9a560e0d346369b665ad2bdbc89fa9bceca75796584e79042694c3"
1240
-
1241
- [[package]]
1242
- name = "hmac-sha256"
1243
- version = "1.1.8"
1244
- source = "registry+https://github.com/rust-lang/crates.io-index"
1245
- checksum = "4a8575493d277c9092b988c780c94737fb9fd8651a1001e16bee3eccfc1baedb"
1246
- dependencies = [
1247
- "digest",
1248
- ]
1249
-
1250
- [[package]]
1251
- name = "hmac-sha512"
1252
- version = "1.1.6"
1253
- source = "registry+https://github.com/rust-lang/crates.io-index"
1254
- checksum = "b0b3a0f572aa8389d325f5852b9e0a333a15b0f86ecccbb3fdb6e97cd86dc67c"
1255
- dependencies = [
1256
- "digest",
1257
- ]
1258
-
1259
1005
  [[package]]
1260
1006
  name = "home"
1261
1007
  version = "0.5.11"
@@ -1299,12 +1045,6 @@ dependencies = [
1299
1045
  "pin-project-lite",
1300
1046
  ]
1301
1047
 
1302
- [[package]]
1303
- name = "http-range"
1304
- version = "0.1.5"
1305
- source = "registry+https://github.com/rust-lang/crates.io-index"
1306
- checksum = "21dec9db110f5f872ed9699c3ecf50cf16f423502706ba5c72462e28d3157573"
1307
-
1308
1048
  [[package]]
1309
1049
  name = "httparse"
1310
1050
  version = "1.10.1"
@@ -1356,25 +1096,6 @@ dependencies = [
1356
1096
  "webpki-roots",
1357
1097
  ]
1358
1098
 
1359
- [[package]]
1360
- name = "hyper-staticfile"
1361
- version = "0.10.1"
1362
- source = "registry+https://github.com/rust-lang/crates.io-index"
1363
- checksum = "bc4bce64c32578957926e75f832032f81ebb30bcee74f86c5848b13a69e547eb"
1364
- dependencies = [
1365
- "futures-util",
1366
- "http",
1367
- "http-range",
1368
- "httpdate",
1369
- "hyper",
1370
- "mime_guess",
1371
- "percent-encoding",
1372
- "rand 0.8.5",
1373
- "tokio",
1374
- "url",
1375
- "winapi",
1376
- ]
1377
-
1378
1099
  [[package]]
1379
1100
  name = "hyper-tls"
1380
1101
  version = "0.6.0"
@@ -1579,7 +1300,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
1579
1300
  checksum = "8c9c992b02b5b4c94ea26e32fe5bccb7aa7d9f390ab5c1221ff895bc7ea8b652"
1580
1301
  dependencies = [
1581
1302
  "equivalent",
1582
- "hashbrown 0.15.2",
1303
+ "hashbrown",
1583
1304
  ]
1584
1305
 
1585
1306
  [[package]]
@@ -1602,6 +1323,15 @@ dependencies = [
1602
1323
  "libc",
1603
1324
  ]
1604
1325
 
1326
+ [[package]]
1327
+ name = "inout"
1328
+ version = "0.1.4"
1329
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1330
+ checksum = "879f10e63c20629ecabbb64a8010319738c66a5cd0c29b02d63d272b03751d01"
1331
+ dependencies = [
1332
+ "generic-array",
1333
+ ]
1334
+
1605
1335
  [[package]]
1606
1336
  name = "ipnet"
1607
1337
  version = "2.11.0"
@@ -1643,35 +1373,33 @@ dependencies = [
1643
1373
 
1644
1374
  [[package]]
1645
1375
  name = "itsi-server"
1646
- version = "0.1.0"
1376
+ version = "0.1.18"
1647
1377
  dependencies = [
1378
+ "argon2",
1648
1379
  "async-channel",
1649
1380
  "async-compression",
1650
1381
  "async-trait",
1651
1382
  "base64",
1383
+ "bcrypt",
1652
1384
  "bytes",
1653
1385
  "chrono",
1654
- "crossbeam",
1655
- "dashmap",
1386
+ "core_affinity",
1656
1387
  "derive_more",
1657
1388
  "dirs",
1658
1389
  "either",
1659
- "fnv",
1660
1390
  "fs2",
1661
1391
  "futures",
1662
1392
  "globset",
1663
- "hmac",
1664
1393
  "http",
1665
1394
  "http-body-util",
1666
1395
  "httparse",
1667
1396
  "httpdate",
1668
1397
  "hyper",
1669
- "hyper-staticfile",
1670
1398
  "hyper-util",
1671
1399
  "itsi_error",
1672
1400
  "itsi_rb_helpers",
1673
1401
  "itsi_tracing",
1674
- "jwt-simple",
1402
+ "jsonwebtoken",
1675
1403
  "magnus",
1676
1404
  "md5",
1677
1405
  "moka",
@@ -1679,20 +1407,19 @@ dependencies = [
1679
1407
  "notify",
1680
1408
  "num_cpus",
1681
1409
  "parking_lot",
1410
+ "percent-encoding",
1682
1411
  "pin-project",
1683
1412
  "rand 0.9.0",
1684
- "rb-sys",
1685
1413
  "rcgen",
1686
1414
  "redis",
1687
1415
  "regex",
1688
1416
  "reqwest",
1689
- "ring",
1690
- "route-recognizer",
1691
1417
  "rustls",
1692
1418
  "rustls-pemfile",
1693
1419
  "serde",
1694
1420
  "serde_json",
1695
1421
  "serde_magnus",
1422
+ "sha-crypt",
1696
1423
  "sha2",
1697
1424
  "socket2",
1698
1425
  "sysinfo",
@@ -1704,13 +1431,13 @@ dependencies = [
1704
1431
  "tokio-util",
1705
1432
  "tracing",
1706
1433
  "url",
1707
- "uuid",
1708
1434
  ]
1709
1435
 
1710
1436
  [[package]]
1711
1437
  name = "itsi_error"
1712
1438
  version = "0.1.0"
1713
1439
  dependencies = [
1440
+ "anyhow",
1714
1441
  "httparse",
1715
1442
  "magnus",
1716
1443
  "nix",
@@ -1769,44 +1496,18 @@ dependencies = [
1769
1496
  ]
1770
1497
 
1771
1498
  [[package]]
1772
- name = "jwt-simple"
1773
- version = "0.12.12"
1499
+ name = "jsonwebtoken"
1500
+ version = "9.3.1"
1774
1501
  source = "registry+https://github.com/rust-lang/crates.io-index"
1775
- checksum = "731011e9647a71ff4f8474176ff6ce6e0d2de87a0173f15613af3a84c3e3401a"
1502
+ checksum = "5a87cc7a48537badeae96744432de36f4be2b4a34a05a5ef32e9dd8a1c169dde"
1776
1503
  dependencies = [
1777
- "anyhow",
1778
- "binstring",
1779
- "blake2b_simd",
1780
- "boring",
1781
- "coarsetime",
1782
- "ct-codecs",
1783
- "ed25519-compact",
1784
- "hmac-sha1-compact",
1785
- "hmac-sha256",
1786
- "hmac-sha512",
1787
- "k256",
1788
- "p256",
1789
- "p384",
1790
- "rand 0.8.5",
1504
+ "base64",
1505
+ "js-sys",
1506
+ "pem",
1507
+ "ring",
1791
1508
  "serde",
1792
1509
  "serde_json",
1793
- "superboring",
1794
- "thiserror 2.0.12",
1795
- "zeroize",
1796
- ]
1797
-
1798
- [[package]]
1799
- name = "k256"
1800
- version = "0.13.4"
1801
- source = "registry+https://github.com/rust-lang/crates.io-index"
1802
- checksum = "f6e3919bbaa2945715f0bb6d3934a173d1e9a59ac23767fbaaef277265a7411b"
1803
- dependencies = [
1804
- "cfg-if",
1805
- "ecdsa",
1806
- "elliptic-curve",
1807
- "once_cell",
1808
- "sha2",
1809
- "signature",
1510
+ "simple_asn1",
1810
1511
  ]
1811
1512
 
1812
1513
  [[package]]
@@ -1834,9 +1535,6 @@ name = "lazy_static"
1834
1535
  version = "1.5.0"
1835
1536
  source = "registry+https://github.com/rust-lang/crates.io-index"
1836
1537
  checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe"
1837
- dependencies = [
1838
- "spin",
1839
- ]
1840
1538
 
1841
1539
  [[package]]
1842
1540
  name = "lazycell"
@@ -1860,12 +1558,6 @@ dependencies = [
1860
1558
  "windows-targets 0.52.6",
1861
1559
  ]
1862
1560
 
1863
- [[package]]
1864
- name = "libm"
1865
- version = "0.2.11"
1866
- source = "registry+https://github.com/rust-lang/crates.io-index"
1867
- checksum = "8355be11b20d696c8f18f6cc018c4e372165b1fa8126cef092399c9951984ffa"
1868
-
1869
1561
  [[package]]
1870
1562
  name = "libredox"
1871
1563
  version = "0.1.3"
@@ -1984,16 +1676,6 @@ version = "0.3.17"
1984
1676
  source = "registry+https://github.com/rust-lang/crates.io-index"
1985
1677
  checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a"
1986
1678
 
1987
- [[package]]
1988
- name = "mime_guess"
1989
- version = "2.0.5"
1990
- source = "registry+https://github.com/rust-lang/crates.io-index"
1991
- checksum = "f7c44f8e672c00fe5308fa235f821cb4198414e1c77935c1ab6948d3fd78550e"
1992
- dependencies = [
1993
- "mime",
1994
- "unicase",
1995
- ]
1996
-
1997
1679
  [[package]]
1998
1680
  name = "minimal-lexical"
1999
1681
  version = "0.2.1"
@@ -2134,23 +1816,6 @@ dependencies = [
2134
1816
  "num-traits",
2135
1817
  ]
2136
1818
 
2137
- [[package]]
2138
- name = "num-bigint-dig"
2139
- version = "0.8.4"
2140
- source = "registry+https://github.com/rust-lang/crates.io-index"
2141
- checksum = "dc84195820f291c7697304f3cbdadd1cb7199c0efc917ff5eafd71225c136151"
2142
- dependencies = [
2143
- "byteorder",
2144
- "lazy_static",
2145
- "libm",
2146
- "num-integer",
2147
- "num-iter",
2148
- "num-traits",
2149
- "rand 0.8.5",
2150
- "smallvec",
2151
- "zeroize",
2152
- ]
2153
-
2154
1819
  [[package]]
2155
1820
  name = "num-conv"
2156
1821
  version = "0.1.0"
@@ -2166,17 +1831,6 @@ dependencies = [
2166
1831
  "num-traits",
2167
1832
  ]
2168
1833
 
2169
- [[package]]
2170
- name = "num-iter"
2171
- version = "0.1.45"
2172
- source = "registry+https://github.com/rust-lang/crates.io-index"
2173
- checksum = "1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf"
2174
- dependencies = [
2175
- "autocfg",
2176
- "num-integer",
2177
- "num-traits",
2178
- ]
2179
-
2180
1834
  [[package]]
2181
1835
  name = "num-traits"
2182
1836
  version = "0.2.19"
@@ -2184,7 +1838,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
2184
1838
  checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841"
2185
1839
  dependencies = [
2186
1840
  "autocfg",
2187
- "libm",
2188
1841
  ]
2189
1842
 
2190
1843
  [[package]]
@@ -2229,7 +1882,7 @@ checksum = "5e14130c6a98cd258fdcb0fb6d744152343ff729cbfcb28c656a9d12b999fbcd"
2229
1882
  dependencies = [
2230
1883
  "bitflags 2.8.0",
2231
1884
  "cfg-if",
2232
- "foreign-types 0.3.2",
1885
+ "foreign-types",
2233
1886
  "libc",
2234
1887
  "once_cell",
2235
1888
  "openssl-macros",
@@ -2277,30 +1930,6 @@ version = "0.1.1"
2277
1930
  source = "registry+https://github.com/rust-lang/crates.io-index"
2278
1931
  checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39"
2279
1932
 
2280
- [[package]]
2281
- name = "p256"
2282
- version = "0.13.2"
2283
- source = "registry+https://github.com/rust-lang/crates.io-index"
2284
- checksum = "c9863ad85fa8f4460f9c48cb909d38a0d689dba1f6f6988a5e3e0d31071bcd4b"
2285
- dependencies = [
2286
- "ecdsa",
2287
- "elliptic-curve",
2288
- "primeorder",
2289
- "sha2",
2290
- ]
2291
-
2292
- [[package]]
2293
- name = "p384"
2294
- version = "0.13.1"
2295
- source = "registry+https://github.com/rust-lang/crates.io-index"
2296
- checksum = "fe42f1670a52a47d448f14b6a5c61dd78fce51856e68edaa38f7ae3a46b8d6b6"
2297
- dependencies = [
2298
- "ecdsa",
2299
- "elliptic-curve",
2300
- "primeorder",
2301
- "sha2",
2302
- ]
2303
-
2304
1933
  [[package]]
2305
1934
  name = "parking"
2306
1935
  version = "2.2.1"
@@ -2330,6 +1959,17 @@ dependencies = [
2330
1959
  "windows-targets 0.52.6",
2331
1960
  ]
2332
1961
 
1962
+ [[package]]
1963
+ name = "password-hash"
1964
+ version = "0.5.0"
1965
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1966
+ checksum = "346f04948ba92c43e8469c1ee6736c7563d71012b17d40745260fe106aac2166"
1967
+ dependencies = [
1968
+ "base64ct",
1969
+ "rand_core 0.6.4",
1970
+ "subtle",
1971
+ ]
1972
+
2333
1973
  [[package]]
2334
1974
  name = "paste"
2335
1975
  version = "1.0.15"
@@ -2346,15 +1986,6 @@ dependencies = [
2346
1986
  "serde",
2347
1987
  ]
2348
1988
 
2349
- [[package]]
2350
- name = "pem-rfc7468"
2351
- version = "0.7.0"
2352
- source = "registry+https://github.com/rust-lang/crates.io-index"
2353
- checksum = "88b39c9bfcfc231068454382784bb460aae594343fb030d46e9f50a645418412"
2354
- dependencies = [
2355
- "base64ct",
2356
- ]
2357
-
2358
1989
  [[package]]
2359
1990
  name = "percent-encoding"
2360
1991
  version = "2.3.1"
@@ -2393,27 +2024,6 @@ version = "0.1.0"
2393
2024
  source = "registry+https://github.com/rust-lang/crates.io-index"
2394
2025
  checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
2395
2026
 
2396
- [[package]]
2397
- name = "pkcs1"
2398
- version = "0.7.5"
2399
- source = "registry+https://github.com/rust-lang/crates.io-index"
2400
- checksum = "c8ffb9f10fa047879315e6625af03c164b16962a5368d724ed16323b68ace47f"
2401
- dependencies = [
2402
- "der",
2403
- "pkcs8",
2404
- "spki",
2405
- ]
2406
-
2407
- [[package]]
2408
- name = "pkcs8"
2409
- version = "0.10.2"
2410
- source = "registry+https://github.com/rust-lang/crates.io-index"
2411
- checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7"
2412
- dependencies = [
2413
- "der",
2414
- "spki",
2415
- ]
2416
-
2417
2027
  [[package]]
2418
2028
  name = "pkg-config"
2419
2029
  version = "0.3.32"
@@ -2451,15 +2061,6 @@ dependencies = [
2451
2061
  "syn 2.0.98",
2452
2062
  ]
2453
2063
 
2454
- [[package]]
2455
- name = "primeorder"
2456
- version = "0.13.6"
2457
- source = "registry+https://github.com/rust-lang/crates.io-index"
2458
- checksum = "353e1ca18966c16d9deb1c69278edbc5f194139612772bd9537af60ac231e1e6"
2459
- dependencies = [
2460
- "elliptic-curve",
2461
- ]
2462
-
2463
2064
  [[package]]
2464
2065
  name = "proc-macro2"
2465
2066
  version = "1.0.93"
@@ -2636,7 +2237,7 @@ version = "0.9.111"
2636
2237
  source = "registry+https://github.com/rust-lang/crates.io-index"
2637
2238
  checksum = "64691175abc704862f60a9ca8ef06174080cc50615f2bf1d4759f46db18b4d29"
2638
2239
  dependencies = [
2639
- "bindgen 0.69.5",
2240
+ "bindgen",
2640
2241
  "lazy_static",
2641
2242
  "proc-macro2",
2642
2243
  "quote",
@@ -2808,16 +2409,6 @@ dependencies = [
2808
2409
  "windows-registry",
2809
2410
  ]
2810
2411
 
2811
- [[package]]
2812
- name = "rfc6979"
2813
- version = "0.4.0"
2814
- source = "registry+https://github.com/rust-lang/crates.io-index"
2815
- checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2"
2816
- dependencies = [
2817
- "hmac",
2818
- "subtle",
2819
- ]
2820
-
2821
2412
  [[package]]
2822
2413
  name = "ring"
2823
2414
  version = "0.17.14"
@@ -2832,33 +2423,6 @@ dependencies = [
2832
2423
  "windows-sys 0.52.0",
2833
2424
  ]
2834
2425
 
2835
- [[package]]
2836
- name = "route-recognizer"
2837
- version = "0.3.1"
2838
- source = "registry+https://github.com/rust-lang/crates.io-index"
2839
- checksum = "afab94fb28594581f62d981211a9a4d53cc8130bbcbbb89a0440d9b8e81a7746"
2840
-
2841
- [[package]]
2842
- name = "rsa"
2843
- version = "0.9.8"
2844
- source = "registry+https://github.com/rust-lang/crates.io-index"
2845
- checksum = "78928ac1ed176a5ca1d17e578a1825f3d81ca54cf41053a592584b020cfd691b"
2846
- dependencies = [
2847
- "const-oid",
2848
- "digest",
2849
- "num-bigint-dig",
2850
- "num-integer",
2851
- "num-traits",
2852
- "pkcs1",
2853
- "pkcs8",
2854
- "rand_core 0.6.4",
2855
- "sha2",
2856
- "signature",
2857
- "spki",
2858
- "subtle",
2859
- "zeroize",
2860
- ]
2861
-
2862
2426
  [[package]]
2863
2427
  name = "rustc-demangle"
2864
2428
  version = "0.1.24"
@@ -3030,20 +2594,6 @@ version = "1.2.0"
3030
2594
  source = "registry+https://github.com/rust-lang/crates.io-index"
3031
2595
  checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
3032
2596
 
3033
- [[package]]
3034
- name = "sec1"
3035
- version = "0.7.3"
3036
- source = "registry+https://github.com/rust-lang/crates.io-index"
3037
- checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc"
3038
- dependencies = [
3039
- "base16ct",
3040
- "der",
3041
- "generic-array",
3042
- "pkcs8",
3043
- "subtle",
3044
- "zeroize",
3045
- ]
3046
-
3047
2597
  [[package]]
3048
2598
  name = "security-framework"
3049
2599
  version = "2.11.1"
@@ -3147,6 +2697,18 @@ dependencies = [
3147
2697
  "serde",
3148
2698
  ]
3149
2699
 
2700
+ [[package]]
2701
+ name = "sha-crypt"
2702
+ version = "0.5.0"
2703
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2704
+ checksum = "88e79009728d8311d42d754f2f319a975f9e38f156fd5e422d2451486c78b286"
2705
+ dependencies = [
2706
+ "base64ct",
2707
+ "rand 0.8.5",
2708
+ "sha2",
2709
+ "subtle",
2710
+ ]
2711
+
3150
2712
  [[package]]
3151
2713
  name = "sha1_smol"
3152
2714
  version = "1.0.1"
@@ -3195,13 +2757,15 @@ dependencies = [
3195
2757
  ]
3196
2758
 
3197
2759
  [[package]]
3198
- name = "signature"
3199
- version = "2.2.0"
2760
+ name = "simple_asn1"
2761
+ version = "0.6.3"
3200
2762
  source = "registry+https://github.com/rust-lang/crates.io-index"
3201
- checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de"
2763
+ checksum = "297f631f50729c8c99b84667867963997ec0b50f32b2a7dbcab828ef0541e8bb"
3202
2764
  dependencies = [
3203
- "digest",
3204
- "rand_core 0.6.4",
2765
+ "num-bigint",
2766
+ "num-traits",
2767
+ "thiserror 2.0.12",
2768
+ "time",
3205
2769
  ]
3206
2770
 
3207
2771
  [[package]]
@@ -3229,22 +2793,6 @@ dependencies = [
3229
2793
  "windows-sys 0.52.0",
3230
2794
  ]
3231
2795
 
3232
- [[package]]
3233
- name = "spin"
3234
- version = "0.9.8"
3235
- source = "registry+https://github.com/rust-lang/crates.io-index"
3236
- checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67"
3237
-
3238
- [[package]]
3239
- name = "spki"
3240
- version = "0.7.3"
3241
- source = "registry+https://github.com/rust-lang/crates.io-index"
3242
- checksum = "d91ed6c858b01f942cd56b37a94b3e0a1798290327d1236e4d9cf4eaca44d29d"
3243
- dependencies = [
3244
- "base64ct",
3245
- "der",
3246
- ]
3247
-
3248
2796
  [[package]]
3249
2797
  name = "stable_deref_trait"
3250
2798
  version = "1.2.0"
@@ -3257,19 +2805,6 @@ version = "2.6.1"
3257
2805
  source = "registry+https://github.com/rust-lang/crates.io-index"
3258
2806
  checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292"
3259
2807
 
3260
- [[package]]
3261
- name = "superboring"
3262
- version = "0.1.4"
3263
- source = "registry+https://github.com/rust-lang/crates.io-index"
3264
- checksum = "515cce34a781d7250b8a65706e0f2a5b99236ea605cb235d4baed6685820478f"
3265
- dependencies = [
3266
- "getrandom 0.2.15",
3267
- "hmac-sha256",
3268
- "hmac-sha512",
3269
- "rand 0.8.5",
3270
- "rsa",
3271
- ]
3272
-
3273
2808
  [[package]]
3274
2809
  name = "syn"
3275
2810
  version = "1.0.109"
@@ -3705,12 +3240,6 @@ version = "1.18.0"
3705
3240
  source = "registry+https://github.com/rust-lang/crates.io-index"
3706
3241
  checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f"
3707
3242
 
3708
- [[package]]
3709
- name = "unicase"
3710
- version = "2.8.1"
3711
- source = "registry+https://github.com/rust-lang/crates.io-index"
3712
- checksum = "75b844d17643ee918803943289730bec8aac480150456169e647ed0b576ba539"
3713
-
3714
3243
  [[package]]
3715
3244
  name = "unicode-ident"
3716
3245
  version = "1.0.17"
@@ -3813,15 +3342,6 @@ dependencies = [
3813
3342
  "wit-bindgen-rt",
3814
3343
  ]
3815
3344
 
3816
- [[package]]
3817
- name = "wasix"
3818
- version = "0.12.21"
3819
- source = "registry+https://github.com/rust-lang/crates.io-index"
3820
- checksum = "c1fbb4ef9bbca0c1170e0b00dd28abc9e3b68669821600cad1caaed606583c6d"
3821
- dependencies = [
3822
- "wasi 0.11.0+wasi-snapshot-preview1",
3823
- ]
3824
-
3825
3345
  [[package]]
3826
3346
  name = "wasm-bindgen"
3827
3347
  version = "0.2.100"