From a14d3fa07269f3b151981fcb49efde29a7ef3daf Mon Sep 17 00:00:00 2001 From: Nadja Reitzenstein Date: Wed, 27 Oct 2021 17:53:00 +0200 Subject: [PATCH] stuff --- Cargo.lock | 458 ++++++++------------------------------------ Cargo.toml | 6 +- src/db/pass.rs | 2 +- src/db/resources.rs | 8 +- src/lib.rs | 26 +-- src/resource.rs | 5 +- 6 files changed, 95 insertions(+), 410 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 8e59626..41f97f7 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -23,24 +23,11 @@ dependencies = [ "pretty", ] -[[package]] -name = "agnostik" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0b98a97b13a75d90ab4abfcdb5268330c8392ab03a357bdab0fa9c36ccb1c6a" -dependencies = [ - "bastion-executor", - "cfg_aliases", - "lightproc", - "once_cell", - "pin-project", -] - [[package]] name = "ahash" -version = "0.7.4" +version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43bb833f0bf979d8475d38fbf09ed3b8a55e1885fe93ad3f93239fc6a4f17b98" +checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47" dependencies = [ "getrandom", "once_cell", @@ -58,9 +45,9 @@ dependencies = [ [[package]] name = "annotate-snippets" -version = "0.9.0" +version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c96c3d1062ea7101741480185a6a1275eab01cbe8b20e378d1311bc056d2e08" +checksum = "c3b9d411ecbaf79885c6df4d75fff75858d5995ff25385657a28af47e82f9c36" dependencies = [ "unicode-width", ] @@ -83,12 +70,6 @@ dependencies = [ "winapi", ] -[[package]] -name = "anyhow" -version = "1.0.44" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61604a8f862e1d5c3229fdd78f8b02c68dcf73a4c4b05fd636d12240aaa242c1" - [[package]] name = "arrayref" version = "0.3.6" @@ -151,7 +132,7 @@ dependencies = [ "parking", "polling", "slab", - "socket2 0.4.1", + "socket2", "waker-fn", "winapi", ] @@ -165,15 +146,6 @@ dependencies = [ "event-listener", ] -[[package]] -name = "async-mutex" -version = "1.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "479db852db25d9dbf6204e6cb6253698f175c15726470f78af0d918e99d6156e" -dependencies = [ - "event-listener", -] - [[package]] name = "async-net" version = "1.6.1" @@ -257,61 +229,6 @@ version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd" -[[package]] -name = "bastion" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98f4436af3631317f6c36e5b689eed30f262c60eb69fb769007f06f3b76b7173" -dependencies = [ - "anyhow", - "async-mutex", - "bastion-executor", - "crossbeam-queue", - "futures 0.3.16", - "futures-timer 3.0.2", - "fxhash", - "lazy_static", - "lever", - "lightproc", - "nuclei", - "pin-utils", - "serde", - "serde_json", - "tracing", - "tracing-subscriber", - "uuid", -] - -[[package]] -name = "bastion-executor" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27dc6c4dc1295a173dd6043f87cd7c27245802cfecc8ad7b929760d73e193f5a" -dependencies = [ - "arrayvec", - "bastion-utils", - "crossbeam-channel", - "crossbeam-epoch 0.9.5", - "crossbeam-queue", - "crossbeam-utils 0.8.5", - "futures-timer 3.0.2", - "lazy_static", - "lever", - "libc", - "lightproc", - "num_cpus", - "once_cell", - "pin-utils", - "tracing", - "winapi", -] - -[[package]] -name = "bastion-utils" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "271e48689ed6b78f7275193b86537764739174d5856e20d25e63f731218af379" - [[package]] name = "bincode" version = "1.3.3" @@ -347,9 +264,9 @@ dependencies = [ [[package]] name = "bitflags" -version = "1.2.1" +version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693" +checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "blake2b_simd" @@ -458,7 +375,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4a15248c8facb189a3c5fee74fbf1ff3adc134261d27da663b89c7d19ebaf983" dependencies = [ "capnp", - "futures 0.3.16", + "futures 0.3.17", ] [[package]] @@ -469,7 +386,7 @@ checksum = "4c4f17f96f68f2c1168ed7105d9e5cb4a095a5bef3578aee0f9c0644b85ca95e" dependencies = [ "capnp", "capnp-futures", - "futures 0.3.16", + "futures 0.3.17", ] [[package]] @@ -483,9 +400,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.0.69" +version = "1.0.71" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e70cc2f62c6ce1868963827bd677764c62d07c3d9a3e1fb1177ee1a9ab199eb2" +checksum = "79c2681d6594606957bbb8631c4b90a7fcaaa72cdb714743a437b156d6a7eedd" [[package]] name = "cexpr" @@ -508,12 +425,6 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" -[[package]] -name = "cfg_aliases" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e" - [[package]] name = "chrono" version = "0.4.19" @@ -585,65 +496,6 @@ dependencies = [ "libc", ] -[[package]] -name = "crossbeam-channel" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06ed27e177f16d65f0f0c22a213e17c696ace5dd64b14258b52f9417ccb52db4" -dependencies = [ - "cfg-if 1.0.0", - "crossbeam-utils 0.8.5", -] - -[[package]] -name = "crossbeam-epoch" -version = "0.8.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "058ed274caafc1f60c4997b5fc07bf7dc7cca454af7c6e81edffe5f33f70dace" -dependencies = [ - "autocfg", - "cfg-if 0.1.10", - "crossbeam-utils 0.7.2", - "lazy_static", - "maybe-uninit", - "memoffset 0.5.6", - "scopeguard", -] - -[[package]] -name = "crossbeam-epoch" -version = "0.9.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ec02e091aa634e2c3ada4a392989e7c3116673ef0ac5b72232439094d73b7fd" -dependencies = [ - "cfg-if 1.0.0", - "crossbeam-utils 0.8.5", - "lazy_static", - "memoffset 0.6.4", - "scopeguard", -] - -[[package]] -name = "crossbeam-queue" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b10ddc024425c88c2ad148c1b0fd53f4c6d38db9697c9f1588381212fa657c9" -dependencies = [ - "cfg-if 1.0.0", - "crossbeam-utils 0.8.5", -] - -[[package]] -name = "crossbeam-utils" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3c7c73a2d1e9fc0886a08b93e98eb643461230d5f1925e4036204d5f2e261a8" -dependencies = [ - "autocfg", - "cfg-if 0.1.10", - "lazy_static", -] - [[package]] name = "crossbeam-utils" version = "0.8.5" @@ -703,9 +555,9 @@ dependencies = [ name = "diflouroborane" version = "0.3.0" dependencies = [ + "async-channel", "async-oneshot", "async-trait", - "bastion", "bincode", "capnp", "capnp-futures", @@ -719,7 +571,6 @@ dependencies = [ "lazy_static", "libc", "lmdb-rkv", - "nuclei", "paho-mqtt", "ptr_meta", "rand", @@ -846,9 +697,9 @@ checksum = "3a471a38ef8ed83cd6e40aa59c1ffe17db6855c18e3604d9c4ed8c08ebc28678" [[package]] name = "futures" -version = "0.3.16" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1adc00f486adfc9ce99f77d717836f0c5aa84965eb0b4f051f4e83f7cab53f8b" +checksum = "a12aa0eb539080d55c3f2d45a67c3b58b6b0773c1a3ca2dfec66d58c97fd66ca" dependencies = [ "futures-channel", "futures-core", @@ -861,9 +712,9 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.16" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74ed2411805f6e4e3d9bc904c95d5d423b89b3b25dc0250aa74729de20629ff9" +checksum = "5da6ba8c3bb3c165d3c7319fc1cc8304facf1fb8db99c5de877183c08a273888" dependencies = [ "futures-core", "futures-sink", @@ -881,9 +732,9 @@ dependencies = [ [[package]] name = "futures-core" -version = "0.3.16" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af51b1b4a7fdff033703db39de8802c673eb91855f2e0d47dcf3bf2c0ef01f99" +checksum = "88d1c26957f23603395cd326b0ffe64124b818f4449552f960d815cfba83a53d" [[package]] name = "futures-core-preview" @@ -893,9 +744,9 @@ checksum = "b35b6263fb1ef523c3056565fa67b1d16f0a8604ff12b11b08c25f28a734c60a" [[package]] name = "futures-executor" -version = "0.3.16" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d0d535a57b87e1ae31437b892713aee90cd2d7b0ee48727cd11fc72ef54761c" +checksum = "45025be030969d763025784f7f355043dc6bc74093e4ecc5000ca4dc50d8745c" dependencies = [ "futures-core", "futures-task", @@ -915,9 +766,9 @@ dependencies = [ [[package]] name = "futures-io" -version = "0.3.16" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b0e06c393068f3a6ef246c75cdca793d6a46347e75286933e5e75fd2fd11582" +checksum = "522de2a0fe3e380f1bc577ba0474108faf3f6b18321dbf60b3b9c39a75073377" [[package]] name = "futures-io-preview" @@ -942,9 +793,9 @@ dependencies = [ [[package]] name = "futures-macro" -version = "0.3.16" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c54913bae956fb8df7f4dc6fc90362aa72e69148e3f39041fbe8742d21e0ac57" +checksum = "18e4a4b95cea4b4ccbcf1c5675ca7c4ee4e9e75eb79944d07defde18068f79bb" dependencies = [ "autocfg", "proc-macro-hack", @@ -978,9 +829,9 @@ dependencies = [ [[package]] name = "futures-signals" -version = "0.3.22" +version = "0.3.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e7c31ebfcb97c87ac64db66a2d4d6ae71b487d5a8ef631c80c3d7e65a772a8c" +checksum = "402d707a810e5fddfb1d5ff44174ffa96c6c1b136e7019cef5c9ef87c8977592" dependencies = [ "discard", "futures-channel", @@ -992,9 +843,9 @@ dependencies = [ [[package]] name = "futures-sink" -version = "0.3.16" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0f30aaa67363d119812743aa5f33c201a7a66329f97d1a887022971feea4b53" +checksum = "36ea153c13024fe480590b3e3d4cad89a0cfacecc24577b68f86c6ced9c2bc11" [[package]] name = "futures-sink-preview" @@ -1004,15 +855,15 @@ checksum = "86f148ef6b69f75bb610d4f9a2336d4fc88c4b5b67129d1a340dd0fd362efeec" [[package]] name = "futures-task" -version = "0.3.16" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbe54a98670017f3be909561f6ad13e810d9a51f3f061b902062ca3da80799f2" +checksum = "1d3d00f4eddb73e498a54394f228cd55853bdf059259e8e7bc6e69d408892e99" [[package]] name = "futures-test" -version = "0.3.16" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a5ac667be097531d74ff9fff9c9da7820dd63afd2312bb9c6f589211ae32080" +checksum = "46b9f6d284a9595a613f881a7b08d46abaab1005995e6fe3ccfe2398f6aea492" dependencies = [ "futures-core", "futures-executor", @@ -1035,17 +886,11 @@ dependencies = [ "pin-utils", ] -[[package]] -name = "futures-timer" -version = "3.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e64b03909df88034c26dc1547e8970b91f98bdb65165d6a4e9110d94263dbb2c" - [[package]] name = "futures-util" -version = "0.3.16" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67eb846bfd58e44a8481a00049e82c43e0ccb5d61f8dc071057cb19249dd4d78" +checksum = "36568465210a3a6ee45e1f165136d68671471a501e632e9a98d96872222b5481" dependencies = [ "autocfg", "futures 0.1.31", @@ -1078,15 +923,6 @@ dependencies = [ "slab", ] -[[package]] -name = "fxhash" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c" -dependencies = [ - "byteorder", -] - [[package]] name = "generic-array" version = "0.12.4" @@ -1145,9 +981,9 @@ dependencies = [ [[package]] name = "half" -version = "1.7.1" +version = "1.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62aca2aba2d62b4a7f5b33f3712cb1b0692779a56fb510499d5c0aa594daeaf3" +checksum = "eabb4a44450da02c90444cf74558da904edde8fb4e9035a9a6a4e15445af0bd7" [[package]] name = "hashbrown" @@ -1205,9 +1041,9 @@ dependencies = [ [[package]] name = "instant" -version = "0.1.10" +version = "0.1.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bee0328b1209d157ef001c94dd85b4f8f64139adb0eac2659f4b08382b2f474d" +checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" dependencies = [ "cfg-if 1.0.0", ] @@ -1261,22 +1097,6 @@ version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" -[[package]] -name = "lever" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4894ef6dbd1b26dbd7284530c227aab005a57b939427ace2d4d0cc62c23fb05b" -dependencies = [ - "anyhow", - "crossbeam-epoch 0.8.2", - "itertools", - "lazy_static", - "log", - "parking_lot", - "slice-group-by", - "thiserror", -] - [[package]] name = "lexical-core" version = "0.7.6" @@ -1292,9 +1112,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.101" +version = "0.2.105" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3cb00336871be5ed2c8ed44b60ae9959dc5b9f08539422ed43f09e34ecaeba21" +checksum = "869d572136620d55835903746bcb5cdc54cb2851fd0aeec53220b4bb65ef3013" [[package]] name = "libloading" @@ -1306,16 +1126,6 @@ dependencies = [ "winapi", ] -[[package]] -name = "lightproc" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebf7c202c4da35d579058d845fad7b62d3aff5fcb10c5a57fc175ac632874de0" -dependencies = [ - "crossbeam-utils 0.7.2", - "pin-utils", -] - [[package]] name = "lmdb-rkv" version = "0.14.0" @@ -1339,15 +1149,6 @@ dependencies = [ "pkg-config", ] -[[package]] -name = "lock_api" -version = "0.4.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "712a4d093c9976e24e7dbca41db895dabcbac38eb5f4045393d17a95bdfb1109" -dependencies = [ - "scopeguard", -] - [[package]] name = "log" version = "0.4.14" @@ -1378,36 +1179,12 @@ version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a3e378b66a060d48947b590737b30a1be76706c8dd7b8ba0f2fe3989c68a853f" -[[package]] -name = "maybe-uninit" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00" - [[package]] name = "memchr" version = "2.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "308cc39be01b73d0d18f82a0e7b2a3df85245f84af96fdddc5d202d27e47b86a" -[[package]] -name = "memoffset" -version = "0.5.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "043175f069eda7b85febe4a74abbaeff828d9f8b448515d3151a14a3542811aa" -dependencies = [ - "autocfg", -] - -[[package]] -name = "memoffset" -version = "0.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59accc507f1338036a0477ef61afdae33cde60840f4dfe481319ce3ad116ddf9" -dependencies = [ - "autocfg", -] - [[package]] name = "nom" version = "5.1.2" @@ -1419,23 +1196,6 @@ dependencies = [ "version_check", ] -[[package]] -name = "nuclei" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72c3a307258c4f4b95032a559cffef7b968cc2213e64b8a3a4738a101d7c7eff" -dependencies = [ - "agnostik", - "futures 0.3.16", - "futures-io", - "futures-util", - "lever", - "libc", - "once_cell", - "pin-utils", - "socket2 0.3.19", -] - [[package]] name = "num-integer" version = "0.1.44" @@ -1488,8 +1248,8 @@ name = "paho-mqtt" version = "0.8.0" source = "git+https://github.com/dequbed/paho.mqtt.rust.git?branch=master#14ec804ecf284564ee71b04345d1fdf1f75571df" dependencies = [ - "futures 0.3.16", - "futures-timer 0.3.0", + "futures 0.3.17", + "futures-timer", "libc", "log", "paho-mqtt-sys", @@ -1511,31 +1271,6 @@ version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "427c3892f9e783d91cc128285287e70a59e206ca452770ece88a76f7a3eddd72" -[[package]] -name = "parking_lot" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99" -dependencies = [ - "instant", - "lock_api", - "parking_lot_core", -] - -[[package]] -name = "parking_lot_core" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d76e8e1493bcac0d2766c42737f34458f1c8c50c0d23bcb24ea953affb273216" -dependencies = [ - "cfg-if 1.0.0", - "instant", - "libc", - "redox_syscall", - "smallvec", - "winapi", -] - [[package]] name = "peeking_take_while" version = "0.1.2" @@ -1647,9 +1382,9 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" [[package]] name = "pkg-config" -version = "0.3.19" +version = "0.3.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3831453b3449ceb48b6d9c7ad7c96d5ea673e9b470a1dc578c2ce6521230884c" +checksum = "12295df4f294471248581bc09bef3c38a5e46f1e36d6a37353621a0c6c357e1f" [[package]] name = "polling" @@ -1666,9 +1401,9 @@ dependencies = [ [[package]] name = "ppv-lite86" -version = "0.2.10" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac74c624d6b2d21f425f752262f42188365d7b8ff1aff74c82e45136510a4857" +checksum = "ed0cfbc8191465bed66e1718596ee0b0b35d5ee1f41c5df2189d0fe8bde535ba" [[package]] name = "pretty" @@ -1693,9 +1428,9 @@ checksum = "bc881b2c22681370c6a780e47af9840ef841837bc98118431d4e1868bd0c1086" [[package]] name = "proc-macro2" -version = "1.0.28" +version = "1.0.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c7ed8b8c7b886ea3ed7dde405212185f423ab44682667c8c6dd14aa1d9f6612" +checksum = "ba508cc11742c0dc5c1659771673afbab7a0efab23aa17e854cbab0837ed0b43" dependencies = [ "unicode-xid", ] @@ -1728,9 +1463,9 @@ checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" [[package]] name = "quote" -version = "1.0.9" +version = "1.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3d0b9745dc2debf507c8422de05d7226cc1f0644216dfdfead988f9b1ab32a7" +checksum = "38bc8cc6a5f2e3655e0899c1b848643b2562f853f114bfec7be120678e3ace05" dependencies = [ "proc-macro2", ] @@ -1830,9 +1565,9 @@ dependencies = [ [[package]] name = "rkyv" -version = "0.7.18" +version = "0.7.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f371763528cb5a45ff01879d08355c39d49b849e2e6e665989abe3262997bde0" +checksum = "e419b2e30d088b21c4bf3072561535305df8066e89937ad05fc205b99874c23c" dependencies = [ "bytecheck", "hashbrown", @@ -1844,9 +1579,9 @@ dependencies = [ [[package]] name = "rkyv_derive" -version = "0.7.18" +version = "0.7.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97fc962ad6ffbcc218212c465318c7c151221474350b281b4912f4890ea590b5" +checksum = "2ae58c4ba80f15f2f0842f4c61729e92c4e33a09bd78196c2b1ab9b0771a3ddf" dependencies = [ "proc-macro2", "quote", @@ -1855,9 +1590,9 @@ dependencies = [ [[package]] name = "rkyv_dyn" -version = "0.7.6" +version = "0.7.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a75e044390151cefefc450726260d1a164348c4038ccd9c81c1066e8b52155b2" +checksum = "ab74ae8478abb9bfcb2199beac8d2f60ab097794362e8cf714deb4e6ee4c9643" dependencies = [ "inventory", "lazy_static", @@ -1869,9 +1604,9 @@ dependencies = [ [[package]] name = "rkyv_dyn_derive" -version = "0.7.6" +version = "0.7.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "184c2b11917482e21af6c380505d535e27db4929ad81bc49091a7350cabacd7d" +checksum = "6cf047e16492fdf3623625bcf4d2766cfc02f3fd63f17e5fa2853e3e7405dd28" dependencies = [ "proc-macro2", "quote", @@ -1880,18 +1615,18 @@ dependencies = [ [[package]] name = "rkyv_typename" -version = "0.7.5" +version = "0.7.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41ea58eb82006d34657d395fafa4e62521c017b02ee84fd90fbd25b1b67fa923" +checksum = "c6ee35d2021e7d2264dcbe452f868bdedbdfe0b37b013415f33533cdb7af11df" dependencies = [ "rkyv_typename_derive", ] [[package]] name = "rkyv_typename_derive" -version = "0.7.5" +version = "0.7.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b362b976c52da543e6cab9325b62fc5fec98852c6fb984e71c146014f79e28f" +checksum = "158eba5bfa0aa6871dc7dd91a8150be941c6ae230429a5a3a3457a9178da3b67" dependencies = [ "proc-macro2", "quote", @@ -1918,7 +1653,7 @@ dependencies = [ "base64", "blake2b_simd", "constant_time_eq", - "crossbeam-utils 0.8.5", + "crossbeam-utils", ] [[package]] @@ -1942,12 +1677,6 @@ dependencies = [ "winapi-util", ] -[[package]] -name = "scopeguard" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" - [[package]] name = "seahash" version = "4.1.0" @@ -2022,9 +1751,9 @@ dependencies = [ [[package]] name = "sha2" -version = "0.9.6" +version = "0.9.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9204c41a1597a8c5af23c82d1c921cb01ec0a4c59e07a9c7306062829a3903f3" +checksum = "b69f9a4c9740d74c5baa3fd2e547f9525fa8088a8a958e0ca2409a514e33f5fa" dependencies = [ "block-buffer 0.9.0", "cfg-if 1.0.0", @@ -2050,9 +1779,9 @@ checksum = "7fdf1b9db47230893d76faad238fd6097fd6d6a9245cd7a4d90dbd639536bbd2" [[package]] name = "signal-hook" -version = "0.3.9" +version = "0.3.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "470c5a6397076fae0094aaf06a08e6ba6f37acb77d3b1b91ea92b4d6c8650c39" +checksum = "9c98891d737e271a2954825ef19e46bd16bdb98e2746f2eec4f7a4ef7946efd1" dependencies = [ "libc", "signal-hook-registry", @@ -2069,15 +1798,9 @@ dependencies = [ [[package]] name = "slab" -version = "0.4.4" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c307a32c1c5c437f38c7fd45d753050587732ba8628319fbdf12a7e289ccc590" - -[[package]] -name = "slice-group-by" -version = "0.2.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f7474f0b646d228360ab62ed974744617bc869d959eac8403bfa3665931a7fb" +checksum = "9def91fd1e018fe007022791f865d0ccc9b3a0d5001e01aabb8b40e46000afb5" [[package]] name = "smallvec" @@ -2105,20 +1828,9 @@ dependencies = [ [[package]] name = "socket2" -version = "0.3.19" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "122e570113d28d773067fab24266b66753f6ea915758651696b6e35e49f88d6e" -dependencies = [ - "cfg-if 1.0.0", - "libc", - "winapi", -] - -[[package]] -name = "socket2" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "765f090f0e423d2b55843402a07915add955e7d60657db13707a159727326cad" +checksum = "5dc90fe6c7be1a323296982db1836d1ea9e47b6839496dde9a541bc496df3516" dependencies = [ "libc", "winapi", @@ -2144,9 +1856,9 @@ checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a" [[package]] name = "syn" -version = "1.0.75" +version = "1.0.81" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b7f58f7e8eaa0009c5fec437aabf511bd9933e4b2d7407bd05273c01a8906ea7" +checksum = "f2afee18b8beb5a596ecb4a2dce128c719b4ba399d34126b9e4396e3f9860966" dependencies = [ "proc-macro2", "quote", @@ -2216,9 +1928,9 @@ dependencies = [ [[package]] name = "tinyvec" -version = "1.3.1" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "848a1e1181b9f6753b5e96a092749e29b11d19ede67dfbbd6c7dc7e0f49b5338" +checksum = "f83b2a3d4d9091d0abd7eba4dc2710b1718583bd4d8992e2190720ea38f391f7" dependencies = [ "tinyvec_macros", ] @@ -2231,9 +1943,9 @@ checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c" [[package]] name = "tracing" -version = "0.1.28" +version = "0.1.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84f96e095c0c82419687c20ddf5cb3eadb61f4e1405923c9dc8e53a1adacbda8" +checksum = "375a639232caf30edfc78e8d89b2d4c375515393e7af7e16f01cd96917fb2105" dependencies = [ "cfg-if 1.0.0", "pin-project-lite", @@ -2243,9 +1955,9 @@ dependencies = [ [[package]] name = "tracing-attributes" -version = "0.1.17" +version = "0.1.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4f915eb6abf914599c200260efced9203504c4c37380af10cdf3b7d36970650" +checksum = "f4f480b8f81512e825f337ad51e94c1eb5d3bbdf2b363dcd01e2b19a9ffe3f8e" dependencies = [ "proc-macro2", "quote", @@ -2312,9 +2024,9 @@ checksum = "a9b2228007eba4120145f785df0f6c92ea538f5a3635a612ecf4e334c8c1446d" [[package]] name = "typenum" -version = "1.13.0" +version = "1.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "879f6906492a7cd215bfa4cf595b600146ccfac0c79bcbd1f3000162af5e8b06" +checksum = "b63708a265f51345575b27fe43f9500ad611579e764c79edbc2037b1121959ec" [[package]] name = "ucd-trie" @@ -2324,9 +2036,9 @@ checksum = "56dee185309b50d1f11bfedef0fe6d036842e3fb77413abef29f8f8d1c5d4c1c" [[package]] name = "unicode-bidi" -version = "0.3.6" +version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "246f4c42e67e7a4e3c6106ff716a5d067d4132a642840b242e357e468a2a0085" +checksum = "1a01404663e3db436ed2746d9fefef640d868edae3cceb81c3b8d5732fda678f" [[package]] name = "unicode-normalization" @@ -2339,9 +2051,9 @@ dependencies = [ [[package]] name = "unicode-width" -version = "0.1.8" +version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9337591893a19b88d8d87f2cec1e73fad5cdfd10e5a6f349f498ad6ea2ffb1e3" +checksum = "3ed742d4ea2bd1176e236172c8429aaf54486e7ac098db29ffe6529e0ce50973" [[package]] name = "unicode-xid" diff --git a/Cargo.toml b/Cargo.toml index 2217a5c..96e56c0 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -24,8 +24,7 @@ uuid = { version = "0.8.2", features = ["serde", "v4"] } async-trait = "0.1.51" # Runtime -bastion = "0.4" -nuclei = { version = "0.1.3" } +smol = "1.2.5" # Catch&Handle POSIX process signals signal-hook = "0.3.9" @@ -61,8 +60,7 @@ rsasl = "1.4.0" # TODO update this if bindgen breaks (again) futures-signals = "0.3.22" async-oneshot = "0.5" - -smol = "1.2.5" +async-channel = "1.6" # Config and Database (De)Serialization serde = { version = "1.0.130", features = ["derive"] } diff --git a/src/db/pass.rs b/src/db/pass.rs index b410d33..35c4b6d 100644 --- a/src/db/pass.rs +++ b/src/db/pass.rs @@ -64,7 +64,7 @@ impl PassDB { for pass in iter { let (uid, pass) = pass?; let uid = unsafe { std::str::from_utf8_unchecked(uid).to_string() }; - let pass = unsafe { pass.as_str().to_string() }; + let pass = pass.as_str().to_string(); out.push((uid, pass)); } diff --git a/src/db/resources.rs b/src/db/resources.rs index ae9d13d..139f488 100644 --- a/src/db/resources.rs +++ b/src/db/resources.rs @@ -3,7 +3,7 @@ use rkyv::{Archive, Serialize, Deserialize}; use super::{ DB, }; -use crate::db::AlignedAdapter; +use crate::db::{AlignedAdapter, AllocAdapter}; use crate::db::raw::RawDB; use std::sync::Arc; use crate::db::{Environment, DatabaseFlags}; @@ -22,16 +22,16 @@ pub struct Resource { #[derive(Clone)] pub struct ResourceDB { env: Arc, - //db: DB>, + db: DB>, id_index: DB>, } impl ResourceDB { pub unsafe fn new(env: Arc, db: RawDB, id_index: RawDB) -> Self { - //let db = DB::new_unchecked(db); + let db = DB::new_unchecked(db); let id_index = DB::new_unchecked(id_index); - Self { env, /*db,*/ id_index } + Self { env, db, id_index } } pub unsafe fn open(env: Arc) -> Result { diff --git a/src/lib.rs b/src/lib.rs index bb441d7..f200d37 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -22,28 +22,4 @@ pub mod oid; mod varint; pub mod error; pub mod config; -mod permissions; - - -mod runtime { - use bastion::prelude::*; - - pub fn startup() { - let config = Config::new().hide_backtraces(); - - Bastion::init_with(config); - - Bastion::start(); - - let sup = Bastion::supervisor(|sp| { - sp .with_strategy(SupervisionStrategy::OneForAll) - .children(|children| { - children - }) - }).expect("Failed to create supervisor"); - } - - pub fn run() { - Bastion::block_until_stopped() - } -} \ No newline at end of file +mod permissions; \ No newline at end of file diff --git a/src/resource.rs b/src/resource.rs index dcc50ba..7f110f0 100644 --- a/src/resource.rs +++ b/src/resource.rs @@ -1,9 +1,8 @@ use async_trait::async_trait; use futures_signals::signal::Mutable; -use async_oneshot::{Sender }; - -use smol::channel::Receiver; +use async_oneshot::Sender; +use async_channel::Receiver; use crate::state::State; use crate::db::{