fedora-iot / dbus-parsec Goto Github PK
View Code? Open in Web Editor NEWDBus PARSEC interface
License: European Union Public License 1.2
DBus PARSEC interface
License: European Union Public License 1.2
We need an appropriate license and to include the license file
Migrate from ring to openssl or another more standard crypto library/crate.
The dbus-parsec
service fails to start.
Aug 30 17:41:59 systemd[1]: Failed to start dbus-parsec.service - PARSEC-encrypted DBus secrets daemon.
Aug 30 17:42:09 systemd[1]: dbus-parsec.service: Scheduled restart job, restart counter is at 433.
Aug 30 17:42:09 systemd[1]: Stopped dbus-parsec.service - PARSEC-encrypted DBus secrets daemon.
Aug 30 17:42:09 systemd[1]: Starting dbus-parsec.service - PARSEC-encrypted DBus secrets daemon...
Aug 30 17:42:09 dbus-parsec[3928]: Error: ParsecClient(Client(Interface(OpcodeDoesNotExist)))
Aug 30 17:42:09 systemd[1]: dbus-parsec.service: Main process exited, code=exited, status=1/FAILURE
Aug 30 17:42:09 systemd[1]: dbus-parsec.service: Failed with result 'exit-code'.
Instead of just hardcoding the TPM provider, we want to select the first provider listed in list_providers
.
On both of my Fedora 38 IoT systems (x86_64 and aarch64) parsec.service fails to start. This issue was present in Fedora 37 as well.
May 26 10:36:03 hostname.example.com systemd[1]: parsec.service: Scheduled restart job, restart counter is at 4.
May 26 10:36:03 hostname.example.com systemd[1]: Stopped parsec.service - Parsec Service.
May 26 10:36:03 hostname.example.com systemd[1]: Starting parsec.service - Parsec Service...
May 26 10:36:03 hostname.example.com parsec[1268]: Error: Permission denied (os error 13)
May 26 10:36:03 hostname.example.com systemd[1]: parsec.service: Main process exited, code=exited, status=1/FAILURE
May 26 10:36:03 hostname.example.com systemd[1]: parsec.service: Failed with result 'exit-code'.
May 26 10:36:03 hostname.example.com systemd[1]: Failed to start parsec.service - Parsec Service.
Default state of /var/lib/parsec
:
[root@example parsec]# ls -al
total 0
drwxr-xr-x. 1 parsec parsec 16 May 2 21:06 .
drwxr-xr-x. 1 root root 836 May 8 15:21 ..
drwxr-xr-x. 1 dnsmasq parsec-clients 0 May 2 21:06 mappings
chown -R parsec:parsec /var/lib/parsec
allows parsec.service to start
I'm seeing the following error when trying to build this on Fedora 37
Compiling parsec-client v0.14.0
warning: unused import: `dbus::arg`
--> /builddir/build/BUILD/dbus-parsec-0.3.1/target/release/build/dbus-parsec-361de4b5cf7b1530/out/dbus_parsec_control_client.rs:3:5
|
3 | use dbus::arg;
| ^^^^^^^^^
|
= note: `#[warn(unused_imports)]` on by default
warning: unused import: `parsec_client::core::secrecy::Secret`
--> src/daemon.rs:23:5
|
23 | use parsec_client::core::secrecy::Secret;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: `#[warn(unused_imports)]` on by default
warning: unused import: `dbus::arg`
--> /builddir/build/BUILD/dbus-parsec-0.3.1/target/release/build/dbus-parsec-361de4b5cf7b1530/out/dbus_parsec_control_server.rs:3:5
|
3 | use dbus::arg;
| ^^^^^^^^^
warning: unused import: `dbus::arg`
--> /builddir/build/BUILD/dbus-parsec-0.3.1/target/release/build/dbus-parsec-361de4b5cf7b1530/out/dbus_parsec_control_client.rs:3:5
|
3 | use dbus::arg;
| ^^^^^^^^^
error[E0308]: mismatched types
--> src/agent/control.rs:38:56
|
38 | match self.parsec_client.psa_export_public_key(key_name.clone()) {
| ^^^^^^^^^^^^^^^^
| |
| expected `&str`, found struct `std::string::String`
| help: consider borrowing here: `&key_name`
error[E0308]: mismatched types
--> src/agent/control.rs:48:48
|
48 | .psa_export_public_key(key_name.clone())
| ^^^^^^^^^^^^^^^^
| |
| expected `&str`, found struct `std::string::String`
| help: consider borrowing here: `&key_name`
error[E0308]: mismatched types
--> src/agent/mod.rs:162:31
|
162 | .psa_generate_key(key_name.to_string(), key_attrs)?;
| ^^^^^^^^^^^^^^^^^^^^
| |
| expected `&str`, found struct `std::string::String`
| help: consider borrowing here: `&key_name.to_string()`
error[E0308]: mismatched types
--> src/agent/mod.rs:211:41
|
211 | .psa_asymmetric_decrypt(key_name, asym_enc_algo, wrapkey, None)
| ^^^^^^^^
| |
| expected `&str`, found struct `std::string::String`
| help: consider borrowing here: `&key_name`
For more information about this error, try `rustc --explain E0308`.
warning: `dbus-parsec` (bin "dbus-parsec") generated 3 warnings
error: could not compile `dbus-parsec` due to 4 previous errors; 3 warnings emitted
warning: build failed, waiting for other jobs to finish...
warning: `dbus-parsec` (bin "dbus-parsec-control") generated 1 warning
error: build failed
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.