diff --git a/.gitignore b/.gitignore index e0df53d1..ba56df92 100644 --- a/.gitignore +++ b/.gitignore @@ -6,6 +6,6 @@ publishers krill.log target/ tmp -ui/dist +daemon/ui/dist work package-lock.json diff --git a/Cargo.toml b/Cargo.toml index 7a320c69..a228ced6 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,38 +1,5 @@ -[package] -name = "krill" -version = "0.2.0" -authors = ["Tim Bruijnzeels ", "Martin Hoffmann "] -build = "build.rs" - -[dependencies] -actix = "^0.7" -actix-web = { version = "^0.7", features = ["alpn"] } -base64 = "^0.9" -bcder = "^0.2" -bytes = "^0.4" -chrono = { version = "^0.4", features = ["serde"] } -clap = "^2.32" -derive_more = "^0.13" -fern = "^0.5" -futures = "0.1" -hex = "^0.3" -krill_commons = "^0.2" -krill_cms_proxy = "^0.2" -lazy_static = "^1.1" -log = "^0.4" -openssl = { version = "^0.10", features = ["v110"] } -pretty = "0.5.2" -rand = "^0.5" -reqwest = "^0.9" -rpki = "^0.3" -serde = { version = "^1.0", features = ["rc"] } -serde_derive = "^1.0" -serde_json = "^1.0" -syslog = "^4.0" -toml = "^0.4" -tokio = "^0.1" -uuid = "0.7" -xml-rs = "0.8.0" +[workspace] +members = [ "client", "daemon", "pubc", "pubd" ] [patch.crates-io] krill_commons = { git="https://github.com/NLnetLabs/krill-commons.git" } diff --git a/client/Cargo.toml b/client/Cargo.toml new file mode 100644 index 00000000..cc45cc64 --- /dev/null +++ b/client/Cargo.toml @@ -0,0 +1,15 @@ +[package] +name = "krill_client" +version = "0.2.0" +authors = ["Tim Bruijnzeels ", "Martin Hoffmann "] + +[dependencies] +clap = "^2.32" +derive_more = "^0.13" +krill_commons = "^0.2" +krill_cms_proxy = "^0.2" +rpki = "^0.3" +serde = { version = "^1.0", features = ["rc"] } +serde_derive = "^1.0" +serde_json = "^1.0" + diff --git a/src/krillc/mod.rs b/client/src/client.rs similarity index 96% rename from src/krillc/mod.rs rename to client/src/client.rs index 74a8940a..2d896f72 100644 --- a/src/krillc/mod.rs +++ b/client/src/client.rs @@ -1,8 +1,6 @@ -pub mod options; -pub mod report; - use std::io; use rpki::uri; + use krill_commons::util::file; use krill_commons::util::httpclient; use krill_commons::api::admin::{ @@ -10,18 +8,20 @@ use krill_commons::api::admin::{ PublisherList, PublisherRequest }; -use crate::krillc::report::{ + +use krill_cms_proxy::api::{ClientInfo, Token, ClientAuth}; +use krill_cms_proxy::rfc8183; + +use crate::report::{ ApiResponse, ReportError }; -use crate::krillc::options::{ +use crate::options::{ Options, Command, - PublishersCommand + PublishersCommand, + Rfc8181Command }; -use krillc::options::Rfc8181Command; -use krill_cms_proxy::api::{ClientInfo, Token, ClientAuth}; -use krill_cms_proxy::rfc8183; /// Command line tool for Krill admin tasks pub struct KrillClient { @@ -212,7 +212,4 @@ impl From for Error { fn from(e: rfc8183::PublisherRequestError) -> Error { Error::PublisherRequestError(e) } -} - - -// Note: this is all tested through integration tests ('tests' folder). \ No newline at end of file +} \ No newline at end of file diff --git a/client/src/lib.rs b/client/src/lib.rs new file mode 100644 index 00000000..6ab0da9e --- /dev/null +++ b/client/src/lib.rs @@ -0,0 +1,12 @@ +extern crate clap; +#[macro_use] extern crate derive_more; +extern crate krill_commons; +extern crate krill_cms_proxy; +extern crate rpki; + +pub mod options; +pub mod report; + +mod client; +pub use client::KrillClient; +pub use client::Error; diff --git a/src/bin/krillc.rs b/client/src/main.rs similarity index 77% rename from src/bin/krillc.rs rename to client/src/main.rs index 3305dccf..c1ec11e0 100644 --- a/src/bin/krillc.rs +++ b/client/src/main.rs @@ -1,9 +1,8 @@ -extern crate krill; -extern crate krill_commons; +extern crate krill_client; -use krill::krillc::KrillClient; -use krill::krillc::options::Options; -use krill::krillc::report::ReportFormat; +use krill_client::KrillClient; +use krill_client::options::Options; +use krill_client::report::ReportFormat; fn main() { match Options::from_args() { diff --git a/src/krillc/options.rs b/client/src/options.rs similarity index 99% rename from src/krillc/options.rs rename to client/src/options.rs index e32da6b9..715cb87a 100644 --- a/src/krillc/options.rs +++ b/client/src/options.rs @@ -1,11 +1,11 @@ +use std::path::PathBuf; use std::str::FromStr; use clap::{App, Arg, SubCommand}; use rpki::uri; -use crate::krillc::report::{ +use crate::report::{ ReportFormat, ReportError }; -use std::path::PathBuf; /// This type holds all the necessary data to connect to a Krill daemon, and /// authenticate, and perform a specific action. Note that this is extracted diff --git a/src/krillc/report.rs b/client/src/report.rs similarity index 100% rename from src/krillc/report.rs rename to client/src/report.rs diff --git a/daemon/Cargo.toml b/daemon/Cargo.toml new file mode 100644 index 00000000..f5ffc010 --- /dev/null +++ b/daemon/Cargo.toml @@ -0,0 +1,48 @@ +[package] +name = "krill_daemon" +version = "0.2.0" +authors = ["Tim Bruijnzeels ", "Martin Hoffmann "] +build = "build-ui.rs" + +[dependencies] +actix = "^0.7" +actix-web = { version = "^0.7", features = ["alpn"] } +base64 = "^0.9" +bcder = "^0.2" +bytes = "^0.4" +chrono = { version = "^0.4", features = ["serde"] } +clap = "^2.32" +derive_more = "^0.13" +fern = "^0.5" +futures = "0.1" +hex = "^0.3" +krill_commons = "^0.2" +krill_cms_proxy = "^0.2" +lazy_static = "^1.1" +log = "^0.4" +openssl = { version = "^0.10", features = ["v110"] } +pretty = "0.5.2" +rand = "^0.5" +reqwest = "^0.9" +rpki = "^0.3" +serde = { version = "^1.0", features = ["rc"] } +serde_derive = "^1.0" +serde_json = "^1.0" +syslog = "^4.0" +toml = "^0.4" +tokio = "^0.1" +uuid = "0.7" +xml-rs = "0.8.0" + + +[dependencies.krill_client] +path = "../client" +version = "0.2.0" + +[dependencies.krill_pubc] +path = "../pubc" +version = "0.2.0" + +[dependencies.krill_pubd] +path = "../pubd" +version = "0.2.0" \ No newline at end of file diff --git a/build-dist.sh b/daemon/build-dist.sh similarity index 59% rename from build-dist.sh rename to daemon/build-dist.sh index 73dc897c..bd63f6d1 100755 --- a/build-dist.sh +++ b/daemon/build-dist.sh @@ -5,4 +5,6 @@ if [ ! -d "node_modules" ]; then npm install fi -yarn run build +if [ ! -d "ui/dist" ]; then + yarn run build +fi diff --git a/build.rs b/daemon/build-ui.rs similarity index 70% rename from build.rs rename to daemon/build-ui.rs index 0d4e90c9..af2497eb 100644 --- a/build.rs +++ b/daemon/build-ui.rs @@ -2,5 +2,6 @@ use std::process::Command; #[allow(dead_code)] fn main() { + println!("cargo:rerun-if-changed=ui/dev"); Command::new("./build-dist.sh").status().unwrap(); } \ No newline at end of file diff --git a/defaults/krill.conf b/daemon/defaults/krill.conf similarity index 100% rename from defaults/krill.conf rename to daemon/defaults/krill.conf diff --git a/src/krilld/auth.rs b/daemon/src/auth.rs similarity index 98% rename from src/krilld/auth.rs rename to daemon/src/auth.rs index d83171a1..cbed5b9f 100644 --- a/src/krilld/auth.rs +++ b/daemon/src/auth.rs @@ -4,7 +4,7 @@ use actix_web::{Form, HttpResponse, HttpRequest, Result}; use actix_web::http::HeaderMap; use actix_web::middleware::{Middleware, Started}; use actix_web::middleware::identity::RequestIdentity; -use crate::krilld::krillserver::KrillServer; +use crate::krillserver::KrillServer; const ADMIN_API_PATH: &str = "/api/"; diff --git a/src/bin/krilld.rs b/daemon/src/bin/krilld.rs similarity index 65% rename from src/bin/krilld.rs rename to daemon/src/bin/krilld.rs index 21e654e2..632976f0 100644 --- a/src/bin/krilld.rs +++ b/daemon/src/bin/krilld.rs @@ -1,7 +1,7 @@ -extern crate krill; +extern crate krill_daemon; -use krill::krilld::config::Config; -use krill::krilld::http::server::PubServerApp; +use krill_daemon::config::Config; +use krill_daemon::http::server::PubServerApp; fn main() { match Config::create() { diff --git a/src/krilld/config.rs b/daemon/src/config.rs similarity index 98% rename from src/krilld/config.rs rename to daemon/src/config.rs index 32e29180..35187192 100644 --- a/src/krilld/config.rs +++ b/daemon/src/config.rs @@ -12,7 +12,7 @@ use serde::de; use serde::{Deserialize, Deserializer}; use toml; use krill_commons::util::ext_serde; -use crate::krilld::http::ssl; +use crate::http::ssl; const SERVER_NAME: &str = "Krill"; @@ -190,7 +190,7 @@ impl Config { .long("config") .value_name("FILE") .help("Specify non-default config file. If no file is \ - specified './defaults/krill.conf' will be used to \ + specified './daemon/defaults/krill.conf' will be used to \ determine default values for all settings. Note that you \ can use any of the following options to override any of \ these values..") @@ -198,7 +198,7 @@ impl Config { .get_matches(); let config_file = matches.value_of("config") - .unwrap_or("./defaults/krill.conf"); + .unwrap_or("./daemon/defaults/krill.conf"); let c = Self::read_config(config_file)?; c.init_logging()?; diff --git a/src/krilld/endpoints.rs b/daemon/src/endpoints.rs similarity index 85% rename from src/krilld/endpoints.rs rename to daemon/src/endpoints.rs index 5abde631..b57b8e85 100644 --- a/src/krilld/endpoints.rs +++ b/daemon/src/endpoints.rs @@ -8,11 +8,10 @@ use krill_cms_proxy::sigmsg::SignedMessage; use krill_commons::api::{admin, publication, ErrorResponse, ErrorCode}; use krill_commons::api::admin::PublisherHandle; use krill_commons::api::rrdp::VerificationError; -use crate::krilld::http::server::HttpRequest; -use crate::krilld::krillserver::{self, KrillServer}; -use crate::krilld::pubd; -use crate::krilld::pubd::publishers::PublisherError; -use crate::krilld::pubd::repo::RrdpServerError; +use krill_pubd::publishers::PublisherError; +use krill_pubd::repo::RrdpServerError; +use crate::http::server::HttpRequest; +use crate::krillserver::{self, KrillServer}; //------------ Support Functions --------------------------------------------- @@ -260,18 +259,18 @@ impl ErrorToStatus for krillserver::Error { } } -impl ErrorToStatus for pubd::Error { +impl ErrorToStatus for krill_pubd::Error { fn status(&self) -> StatusCode { match self { - pubd::Error::IoError(_) => StatusCode::INTERNAL_SERVER_ERROR, - pubd::Error::InvalidBaseUri => StatusCode::BAD_REQUEST, - pubd::Error::InvalidHandle(_) => StatusCode::BAD_REQUEST, - pubd::Error::DuplicatePublisher(_) => StatusCode::BAD_REQUEST, - pubd::Error::UnknownPublisher(_) => StatusCode::FORBIDDEN, - pubd::Error::ConcurrentModification(_, _) => StatusCode::BAD_REQUEST, - pubd::Error::PublisherError(e) => e.status(), - pubd::Error::RrdpServerError(e) => e.status(), - pubd::Error::AggregateStoreError(_) => StatusCode::INTERNAL_SERVER_ERROR, + krill_pubd::Error::IoError(_) => StatusCode::INTERNAL_SERVER_ERROR, + krill_pubd::Error::InvalidBaseUri => StatusCode::BAD_REQUEST, + krill_pubd::Error::InvalidHandle(_) => StatusCode::BAD_REQUEST, + krill_pubd::Error::DuplicatePublisher(_) => StatusCode::BAD_REQUEST, + krill_pubd::Error::UnknownPublisher(_) => StatusCode::FORBIDDEN, + krill_pubd::Error::ConcurrentModification(_, _) => StatusCode::BAD_REQUEST, + krill_pubd::Error::PublisherError(e) => e.status(), + krill_pubd::Error::RrdpServerError(e) => e.status(), + krill_pubd::Error::AggregateStoreError(_) => StatusCode::INTERNAL_SERVER_ERROR, } } @@ -316,18 +315,18 @@ impl ToErrorCode for krillserver::Error { } } -impl ToErrorCode for pubd::Error { +impl ToErrorCode for krill_pubd::Error { fn code(&self) -> ErrorCode { match self { - pubd::Error::IoError(_) => ErrorCode::Persistence, - pubd::Error::InvalidBaseUri => ErrorCode::InvalidBaseUri, - pubd::Error::InvalidHandle(_) => ErrorCode::InvalidHandle, - pubd::Error::DuplicatePublisher(_) => ErrorCode::DuplicateHandle, - pubd::Error::UnknownPublisher(_) => ErrorCode::UnknownPublisher, - pubd::Error::ConcurrentModification(_, _) => ErrorCode::ConcurrentModification, - pubd::Error::PublisherError(e) => e.code(), - pubd::Error::RrdpServerError(e) => e.code(), - pubd::Error::AggregateStoreError(_) => ErrorCode::Persistence, + krill_pubd::Error::IoError(_) => ErrorCode::Persistence, + krill_pubd::Error::InvalidBaseUri => ErrorCode::InvalidBaseUri, + krill_pubd::Error::InvalidHandle(_) => ErrorCode::InvalidHandle, + krill_pubd::Error::DuplicatePublisher(_) => ErrorCode::DuplicateHandle, + krill_pubd::Error::UnknownPublisher(_) => ErrorCode::UnknownPublisher, + krill_pubd::Error::ConcurrentModification(_, _) => ErrorCode::ConcurrentModification, + krill_pubd::Error::PublisherError(e) => e.code(), + krill_pubd::Error::RrdpServerError(e) => e.code(), + krill_pubd::Error::AggregateStoreError(_) => ErrorCode::Persistence, } } } diff --git a/src/krilld/http/mod.rs b/daemon/src/http/mod.rs similarity index 100% rename from src/krilld/http/mod.rs rename to daemon/src/http/mod.rs diff --git a/src/krilld/http/server.rs b/daemon/src/http/server.rs similarity index 96% rename from src/krilld/http/server.rs rename to daemon/src/http/server.rs index 9997c9c0..77fbffc5 100644 --- a/src/krilld/http/server.rs +++ b/daemon/src/http/server.rs @@ -14,18 +14,17 @@ use actix_web::middleware::identity::CookieIdentityPolicy; use actix_web::middleware::identity::IdentityService; use actix_web::http::{Method, StatusCode}; use bcder::decode; -use openssl::ssl::{SslMethod, SslAcceptor, SslAcceptorBuilder, SslFiletype}; -use crate::krilld::auth; -use crate::krilld::auth::{Authorizer, CheckAuthorisation, Credentials}; -use crate::krilld::config::Config; -use crate::krilld::endpoints; -use crate::krilld::http::ssl; -use crate::krilld::krillserver; -use crate::krilld::krillserver::KrillServer; use futures::Future; +use openssl::ssl::{SslMethod, SslAcceptor, SslAcceptorBuilder, SslFiletype}; +use crate::auth::{self, Authorizer, CheckAuthorisation, Credentials}; +use crate::config::Config; +use crate::endpoints; +use crate::http::ssl; +use crate::krillserver; +use crate::krillserver::KrillServer; -const LOGIN: &[u8] = include_bytes!("../../../ui/dev/html/login.html"); -const NOT_FOUND: &[u8] = include_bytes!("../../../ui/public/404.html"); +const LOGIN: &[u8] = include_bytes!("../../ui/dev/html/login.html"); +const NOT_FOUND: &[u8] = include_bytes!("../../ui/public/404.html"); //------------ PubServerApp -------------------------------------------------- diff --git a/src/krilld/http/ssl.rs b/daemon/src/http/ssl.rs similarity index 100% rename from src/krilld/http/ssl.rs rename to daemon/src/http/ssl.rs diff --git a/src/krilld/http/statics.rs b/daemon/src/http/statics.rs similarity index 100% rename from src/krilld/http/statics.rs rename to daemon/src/http/statics.rs diff --git a/src/krilld/krillserver.rs b/daemon/src/krillserver.rs similarity index 95% rename from src/krilld/krillserver.rs rename to daemon/src/krillserver.rs index c91c1d62..32a3f709 100644 --- a/src/krilld/krillserver.rs +++ b/daemon/src/krillserver.rs @@ -7,15 +7,14 @@ use rpki::uri; use krill_commons::api::publication; use krill_commons::api::admin; use krill_commons::api::admin::PublisherHandle; -use crate::krilld::auth::Authorizer; -use crate::krilld::pubd::PubServer; -use crate::krilld::pubd; -use crate::krilld::pubd::publishers::Publisher; use krill_cms_proxy::api::{ClientInfo, ClientHandle}; use krill_cms_proxy::proxy; use krill_cms_proxy::proxy::ProxyServer; use krill_cms_proxy::rfc8183::RepositoryResponse; use krill_cms_proxy::sigmsg::SignedMessage; +use krill_pubd::PubServer; +use krill_pubd::publishers::Publisher; +use crate::auth::Authorizer; //------------ KrillServer --------------------------------------------------- @@ -70,6 +69,7 @@ impl KrillServer { work_dir ).map_err(Error::PubServer)?; + let proxy_server = ProxyServer::init( work_dir, &service_uri )?; @@ -242,7 +242,7 @@ pub enum Error { IoError(io::Error), #[display(fmt="{}", _0)] - PubServer(pubd::Error), + PubServer(krill_pubd::Error), #[display(fmt="{}", _0)] ProxyServer(proxy::Error), @@ -252,8 +252,8 @@ impl From for Error { fn from(e: io::Error) -> Self { Error::IoError(e) } } -impl From for Error { - fn from(e: pubd::Error) -> Self { Error::PubServer(e) } +impl From for Error { + fn from(e: krill_pubd::Error) -> Self { Error::PubServer(e) } } impl From for Error { diff --git a/src/lib.rs b/daemon/src/lib.rs similarity index 81% rename from src/lib.rs rename to daemon/src/lib.rs index f1e6e0ba..33aeeb4f 100644 --- a/src/lib.rs +++ b/daemon/src/lib.rs @@ -10,7 +10,6 @@ extern crate core; extern crate futures; extern crate hex; extern crate openssl; -extern crate krill_commons; #[macro_use] extern crate log; extern crate rand; extern crate reqwest; @@ -23,8 +22,16 @@ extern crate tokio; extern crate toml; extern crate uuid; extern crate xml as xmlrs; -extern crate krill_cms_proxy; -pub mod krillc; -pub mod krilld; -pub mod pubc; +extern crate krill_commons; +extern crate krill_cms_proxy; +extern crate krill_pubc; +extern crate krill_pubd; + +pub mod auth; +pub mod config; +pub mod endpoints; +pub mod krillserver; +pub mod http; + + diff --git a/tests/admin_publishers.rs b/daemon/tests/admin_publishers.rs similarity index 90% rename from tests/admin_publishers.rs rename to daemon/tests/admin_publishers.rs index 5a938dc6..8524cd96 100644 --- a/tests/admin_publishers.rs +++ b/daemon/tests/admin_publishers.rs @@ -2,21 +2,22 @@ extern crate actix; extern crate futures; extern crate reqwest; extern crate rpki; -extern crate krill; extern crate krill_commons; +extern crate krill_client; +extern crate krill_daemon; extern crate serde_json; extern crate tokio; extern crate bytes; use std::{thread, time}; use actix::System; -use krill::krillc::options::{AddPublisher, Command, Options, PublishersCommand}; -use krill::krillc::KrillClient; -use krill::krilld::config::Config; -use krill::krilld::http::server::PubServerApp; -use krill::krillc::report::ApiResponse; -use krill::krillc::report::ReportFormat; +use krill_client::options::{AddPublisher, Command, Options, PublishersCommand}; +use krill_client::KrillClient; +use krill_client::report::ApiResponse; +use krill_client::report::ReportFormat; use krill_commons::util::test; +use krill_daemon::config::Config; +use krill_daemon::http::server::PubServerApp; fn execute_krillc_command(command: Command) -> ApiResponse { let krillc_opts = Options::new( @@ -91,7 +92,7 @@ fn admin_publishers() { }); // XXX TODO: Find a better way to know the server is ready! - thread::sleep(time::Duration::from_millis(500)); + thread::sleep(time::Duration::from_millis(5000)); // Add client "alice" add_publisher(handle, base_rsync_uri_alice, token); diff --git a/tests/client_publish.rs b/daemon/tests/client_publish.rs similarity index 95% rename from tests/client_publish.rs rename to daemon/tests/client_publish.rs index 4396db50..8d671195 100644 --- a/tests/client_publish.rs +++ b/daemon/tests/client_publish.rs @@ -2,34 +2,36 @@ extern crate actix; extern crate futures; extern crate reqwest; extern crate rpki; -extern crate krill; -extern crate krill_commons; extern crate serde_json; extern crate tokio; extern crate bytes; extern crate toml; + +extern crate krill_client; extern crate krill_cms_proxy; +extern crate krill_commons; +extern crate krill_daemon; +extern crate krill_pubc; use std::{thread, time}; use std::collections::HashSet; use std::path::PathBuf; use actix::System; -use krill::krillc::KrillClient; -use krill::krillc::options::{AddPublisher, Command, Options, PublishersCommand, Rfc8181Command, AddRfc8181Client}; -use krill::krillc::report::ReportFormat; -use krill::krilld::config::Config; -use krill::krilld::http::server::PubServerApp; -use krill::pubc; -use krill::pubc::{ApiResponse, Format}; -use krill::pubc::apiclient; -use krill::pubc::cmsclient; -use krill::pubc::cmsclient::PubClient; +use krill_client::KrillClient; +use krill_client::options::{AddPublisher, Command, Options, PublishersCommand, Rfc8181Command, AddRfc8181Client}; +use krill_client::report::ReportFormat; use krill_cms_proxy::rfc8183::RepositoryResponse; use krill_commons::util::file::CurrentFile; use krill_commons::util::file; use krill_commons::util::httpclient; use krill_commons::util::test; use krill_commons::api::publication::ListReply; +use krill_daemon::config::Config; +use krill_daemon::http::server::PubServerApp; +use krill_pubc::{ApiResponse, Format}; +use krill_pubc::apiclient; +use krill_pubc::cmsclient; +use krill_pubc::cmsclient::PubClient; fn list(server_uri: &str, handle: &str, token: &str) -> apiclient::Options { let conn = apiclient::Connection::build(server_uri, handle, token).unwrap(); @@ -128,7 +130,7 @@ fn rfc8181_client_sync(state_dir: &PathBuf, sync_dir: &PathBuf) { } fn rfc8181_client_process_command(command: cmsclient::Command, state_dir: &PathBuf) -> ApiResponse { - let options = cmsclient::Options::new(state_dir.clone(), command, pubc::Format::None); + let options = cmsclient::Options::new(state_dir.clone(), command, Format::None); PubClient::execute(options).unwrap() } diff --git a/tests/health_check.rs b/daemon/tests/health_check.rs similarity index 86% rename from tests/health_check.rs rename to daemon/tests/health_check.rs index aaef811a..1481a66b 100644 --- a/tests/health_check.rs +++ b/daemon/tests/health_check.rs @@ -2,26 +2,27 @@ extern crate actix; extern crate futures; extern crate reqwest; extern crate rpki; -extern crate krill; +extern crate krill_client; extern crate krill_commons; +extern crate krill_daemon; extern crate serde_json; extern crate tokio; extern crate bytes; use std::{thread, time}; use actix::System; -use krill::krilld::config::Config; -use krill::krilld::http::server::PubServerApp; -use krill::krillc::KrillClient; -use krill::krillc::options::{ +use krill_client::KrillClient; +use krill_client::options::{ Command, Options }; -use krill::krillc::report::{ +use krill_client::report::{ ApiResponse, ReportFormat }; use krill_commons::util::test; +use krill_daemon::config::Config; +use krill_daemon::http::server::PubServerApp; /// Tests that the server can be started and a health check can be done /// through the CLI diff --git a/ui/.browserslistrc b/daemon/ui/.browserslistrc similarity index 100% rename from ui/.browserslistrc rename to daemon/ui/.browserslistrc diff --git a/ui/.env b/daemon/ui/.env similarity index 100% rename from ui/.env rename to daemon/ui/.env diff --git a/ui/.eslintrc.js b/daemon/ui/.eslintrc.js similarity index 100% rename from ui/.eslintrc.js rename to daemon/ui/.eslintrc.js diff --git a/ui/.gitignore b/daemon/ui/.gitignore similarity index 100% rename from ui/.gitignore rename to daemon/ui/.gitignore diff --git a/ui/README.md b/daemon/ui/README.md similarity index 100% rename from ui/README.md rename to daemon/ui/README.md diff --git a/ui/babel.config.js b/daemon/ui/babel.config.js similarity index 100% rename from ui/babel.config.js rename to daemon/ui/babel.config.js diff --git a/ui/cypress.json b/daemon/ui/cypress.json similarity index 100% rename from ui/cypress.json rename to daemon/ui/cypress.json diff --git a/ui/dev/html/login.html b/daemon/ui/dev/html/login.html similarity index 100% rename from ui/dev/html/login.html rename to daemon/ui/dev/html/login.html diff --git a/ui/package.json b/daemon/ui/package.json similarity index 100% rename from ui/package.json rename to daemon/ui/package.json diff --git a/ui/postcss.config.js b/daemon/ui/postcss.config.js similarity index 100% rename from ui/postcss.config.js rename to daemon/ui/postcss.config.js diff --git a/ui/public/404.html b/daemon/ui/public/404.html similarity index 100% rename from ui/public/404.html rename to daemon/ui/public/404.html diff --git a/ui/public/favicon.ico b/daemon/ui/public/favicon.ico similarity index 100% rename from ui/public/favicon.ico rename to daemon/ui/public/favicon.ico diff --git a/ui/public/index.html b/daemon/ui/public/index.html similarity index 100% rename from ui/public/index.html rename to daemon/ui/public/index.html diff --git a/ui/src/App.vue b/daemon/ui/src/App.vue similarity index 100% rename from ui/src/App.vue rename to daemon/ui/src/App.vue diff --git a/ui/src/assets/images/white_logo.svg b/daemon/ui/src/assets/images/white_logo.svg similarity index 100% rename from ui/src/assets/images/white_logo.svg rename to daemon/ui/src/assets/images/white_logo.svg diff --git a/ui/src/auth-header.js b/daemon/ui/src/auth-header.js similarity index 100% rename from ui/src/auth-header.js rename to daemon/ui/src/auth-header.js diff --git a/ui/src/element-variables.scss b/daemon/ui/src/element-variables.scss similarity index 100% rename from ui/src/element-variables.scss rename to daemon/ui/src/element-variables.scss diff --git a/ui/src/i18n.js b/daemon/ui/src/i18n.js similarity index 100% rename from ui/src/i18n.js rename to daemon/ui/src/i18n.js diff --git a/ui/src/locales/en.json b/daemon/ui/src/locales/en.json similarity index 100% rename from ui/src/locales/en.json rename to daemon/ui/src/locales/en.json diff --git a/ui/src/main.js b/daemon/ui/src/main.js similarity index 100% rename from ui/src/main.js rename to daemon/ui/src/main.js diff --git a/ui/src/plugins/element.js b/daemon/ui/src/plugins/element.js similarity index 100% rename from ui/src/plugins/element.js rename to daemon/ui/src/plugins/element.js diff --git a/ui/src/router.js b/daemon/ui/src/router.js similarity index 100% rename from ui/src/router.js rename to daemon/ui/src/router.js diff --git a/ui/src/services/APIService.js b/daemon/ui/src/services/APIService.js similarity index 100% rename from ui/src/services/APIService.js rename to daemon/ui/src/services/APIService.js diff --git a/ui/src/store.js b/daemon/ui/src/store.js similarity index 100% rename from ui/src/store.js rename to daemon/ui/src/store.js diff --git a/ui/src/views/Login.vue b/daemon/ui/src/views/Login.vue similarity index 100% rename from ui/src/views/Login.vue rename to daemon/ui/src/views/Login.vue diff --git a/ui/src/views/PublisherDetails.vue b/daemon/ui/src/views/PublisherDetails.vue similarity index 100% rename from ui/src/views/PublisherDetails.vue rename to daemon/ui/src/views/PublisherDetails.vue diff --git a/ui/src/views/Publishers.vue b/daemon/ui/src/views/Publishers.vue similarity index 100% rename from ui/src/views/Publishers.vue rename to daemon/ui/src/views/Publishers.vue diff --git a/ui/tests/e2e/.eslintrc.js b/daemon/ui/tests/e2e/.eslintrc.js similarity index 100% rename from ui/tests/e2e/.eslintrc.js rename to daemon/ui/tests/e2e/.eslintrc.js diff --git a/ui/tests/e2e/plugins/index.js b/daemon/ui/tests/e2e/plugins/index.js similarity index 100% rename from ui/tests/e2e/plugins/index.js rename to daemon/ui/tests/e2e/plugins/index.js diff --git a/ui/tests/e2e/specs/test.js b/daemon/ui/tests/e2e/specs/test.js similarity index 100% rename from ui/tests/e2e/specs/test.js rename to daemon/ui/tests/e2e/specs/test.js diff --git a/ui/tests/e2e/support/commands.js b/daemon/ui/tests/e2e/support/commands.js similarity index 100% rename from ui/tests/e2e/support/commands.js rename to daemon/ui/tests/e2e/support/commands.js diff --git a/ui/tests/e2e/support/index.js b/daemon/ui/tests/e2e/support/index.js similarity index 100% rename from ui/tests/e2e/support/index.js rename to daemon/ui/tests/e2e/support/index.js diff --git a/ui/tests/unit/.eslintrc.js b/daemon/ui/tests/unit/.eslintrc.js similarity index 100% rename from ui/tests/unit/.eslintrc.js rename to daemon/ui/tests/unit/.eslintrc.js diff --git a/ui/tests/unit/example.spec.js b/daemon/ui/tests/unit/example.spec.js similarity index 100% rename from ui/tests/unit/example.spec.js rename to daemon/ui/tests/unit/example.spec.js diff --git a/ui/vue.config.js b/daemon/ui/vue.config.js similarity index 100% rename from ui/vue.config.js rename to daemon/ui/vue.config.js diff --git a/ui/yarn.lock b/daemon/ui/yarn.lock similarity index 100% rename from ui/yarn.lock rename to daemon/ui/yarn.lock diff --git a/pubc/Cargo.toml b/pubc/Cargo.toml new file mode 100644 index 00000000..6d639ea3 --- /dev/null +++ b/pubc/Cargo.toml @@ -0,0 +1,15 @@ +[package] +name = "krill_pubc" +version = "0.2.0" +authors = ["Tim Bruijnzeels ", "Martin Hoffmann "] + +[dependencies] +clap = "^2.32" +derive_more = "^0.13" +krill_commons = "^0.2" +krill_cms_proxy = "^0.2" +rpki = "^0.3" +serde = { version = "^1.0", features = ["rc"] } +serde_derive = "^1.0" +serde_json = "^1.0" + diff --git a/src/pubc/apiclient.rs b/pubc/src/apiclient.rs similarity index 98% rename from src/pubc/apiclient.rs rename to pubc/src/apiclient.rs index 3d934601..93dfe4f1 100644 --- a/src/pubc/apiclient.rs +++ b/pubc/src/apiclient.rs @@ -5,9 +5,7 @@ use clap::{App, Arg, SubCommand}; use rpki::uri; use krill_commons::api::publication; use krill_commons::util::{httpclient, file}; -use crate::pubc; -use crate::pubc::{Format, ApiResponse}; - +use crate::{create_delta, ApiResponse, Format}; //------------ Command ------------------------------------------------------- @@ -204,7 +202,7 @@ fn sync( base_rsync: &uri::Rsync ) -> Result { let list_reply = list_query(connection)?; - let delta = pubc::create_delta( + let delta = create_delta( &list_reply, dir, base_rsync diff --git a/src/bin/pubc.rs b/pubc/src/bin/pubc.rs similarity index 90% rename from src/bin/pubc.rs rename to pubc/src/bin/pubc.rs index 179957ab..3aa4d659 100644 --- a/src/bin/pubc.rs +++ b/pubc/src/bin/pubc.rs @@ -1,7 +1,7 @@ //! Command line client for the publication server. Uses the api. -extern crate krill; +extern crate krill_pubc; -use krill::pubc::apiclient; +use krill_pubc::apiclient; fn main() { diff --git a/src/bin/pubc_cms.rs b/pubc/src/bin/pubc_cms.rs similarity index 84% rename from src/bin/pubc_cms.rs rename to pubc/src/bin/pubc_cms.rs index 200268e9..0cc9fc57 100644 --- a/src/bin/pubc_cms.rs +++ b/pubc/src/bin/pubc_cms.rs @@ -1,8 +1,8 @@ //! Command line client for the publication server. Uses the api. -extern crate krill; +extern crate krill_pubc; -use krill::pubc::cmsclient; -use krill::pubc::cmsclient::PubClient; +use krill_pubc::cmsclient; +use krill_pubc::cmsclient::PubClient; fn main() { diff --git a/src/pubc/cmsclient.rs b/pubc/src/cmsclient.rs similarity index 97% rename from src/pubc/cmsclient.rs rename to pubc/src/cmsclient.rs index a2c8ac8a..0a2947e3 100644 --- a/src/pubc/cmsclient.rs +++ b/pubc/src/cmsclient.rs @@ -11,8 +11,7 @@ use krill_cms_proxy::rfc8183; use krill_cms_proxy::rfc8183::RepositoryResponse; use krill_cms_proxy::id::{MyIdentity, ParentInfo, MyRepoInfo}; use krill_cms_proxy::proxy::{ClientProxy, ClientError}; -use crate::pubc::{ApiResponse, Format}; -use pubc; +use crate::{create_delta, ApiResponse, Format}; #[derive(Debug, Deserialize, Eq, PartialEq)] pub enum Command { @@ -154,7 +153,7 @@ impl PubClient { let repo = self.my_repo()?; let list_reply = self.list()?; - let delta = pubc::create_delta( + let delta = create_delta( &list_reply, dir, repo.sia_base() @@ -344,9 +343,6 @@ pub enum OptionsError { #[display(fmt="{}", _0)] IoError(io::Error), - #[display(fmt="{}", _0)] - TomlError(toml::de::Error), - #[display(fmt="Unsupported output format. Use text, json or none.")] UnsupportedOutputFormat, } @@ -357,12 +353,6 @@ impl From for OptionsError { } } -impl From for OptionsError { - fn from(e: toml::de::Error) -> Self { - OptionsError::TomlError(e) - } -} - //------------ Error --------------------------------------------------------- diff --git a/src/pubc/mod.rs b/pubc/src/lib.rs similarity index 93% rename from src/pubc/mod.rs rename to pubc/src/lib.rs index 1fc6f91a..bf6d91ff 100644 --- a/src/pubc/mod.rs +++ b/pubc/src/lib.rs @@ -1,3 +1,11 @@ +extern crate clap; +#[macro_use] extern crate derive_more; +extern crate rpki; +extern crate serde; +#[macro_use] extern crate serde_derive; +extern crate krill_cms_proxy; +extern crate krill_commons; + pub mod apiclient; pub mod cmsclient; diff --git a/pubd/Cargo.toml b/pubd/Cargo.toml new file mode 100644 index 00000000..a9987278 --- /dev/null +++ b/pubd/Cargo.toml @@ -0,0 +1,13 @@ +[package] +name = "krill_pubd" +version = "0.2.0" +authors = ["Tim Bruijnzeels ", "Martin Hoffmann "] + +[dependencies] +bytes = "^0.4" +derive_more = "^0.13" +krill_commons = "^0.2" +rand = "^0.5" +rpki = "^0.3" +serde = { version = "^1.0", features = ["rc"] } +serde_derive = "^1.0" \ No newline at end of file diff --git a/pubd/src/lib.rs b/pubd/src/lib.rs new file mode 100644 index 00000000..16808dd7 --- /dev/null +++ b/pubd/src/lib.rs @@ -0,0 +1,15 @@ +extern crate bytes; +#[macro_use] extern crate derive_more; +extern crate rand; +extern crate rpki; +extern crate serde; +#[macro_use] extern crate serde_derive; +extern crate krill_commons; + +pub mod publishers; +pub mod repo; + +mod pubserver; +pub use pubserver::PubServer; +pub use pubserver::Error; + diff --git a/src/krilld/pubd/publishers.rs b/pubd/src/publishers.rs similarity index 100% rename from src/krilld/pubd/publishers.rs rename to pubd/src/publishers.rs diff --git a/src/krilld/pubd/mod.rs b/pubd/src/pubserver.rs similarity index 98% rename from src/krilld/pubd/mod.rs rename to pubd/src/pubserver.rs index 19834ad5..8b93fd2f 100644 --- a/src/krilld/pubd/mod.rs +++ b/pubd/src/pubserver.rs @@ -1,6 +1,3 @@ -pub mod publishers; -pub mod repo; - use std::io; use std::path::PathBuf; use std::sync::Arc; @@ -18,22 +15,23 @@ use krill_commons::eventsourcing::{ Command, DiskAggregateStore, }; -use crate::krilld::pubd::repo::{ - RetentionTime, - RrdpServer, - RrdpServerError, - RsyncdStore, -}; -use crate::krilld::pubd::publishers::{ +use crate::publishers::{ Publisher, PublisherCommand, + PublisherCommandDetails, PublisherError, PublisherEventDetails, InitPublisherDetails }; -use crate::krilld::pubd::repo::RrdpInitDetails; -use crate::krilld::pubd::publishers::PublisherCommandDetails; -use crate::krilld::pubd::repo::RrdpCommandDetails; +use crate::repo::{ + self, + RetentionTime, + RrdpCommandDetails, + RrdpInitDetails, + RrdpServer, + RrdpServerError, + RsyncdStore, +}; //------------ PubServer ----------------------------------------------------- diff --git a/src/krilld/pubd/repo.rs b/pubd/src/repo.rs similarity index 100% rename from src/krilld/pubd/repo.rs rename to pubd/src/repo.rs diff --git a/src/krilld/mod.rs b/src/krilld/mod.rs deleted file mode 100644 index 37f430e9..00000000 --- a/src/krilld/mod.rs +++ /dev/null @@ -1,6 +0,0 @@ -pub mod http; -pub mod pubd; -pub mod auth; -pub mod config; -pub mod endpoints; -pub mod krillserver; diff --git a/test/oob/id_publisher_ta.cer b/test/oob/id_publisher_ta.cer deleted file mode 100644 index 4985e0d4..00000000 Binary files a/test/oob/id_publisher_ta.cer and /dev/null differ diff --git a/test/oob/publisher_request.xml b/test/oob/publisher_request.xml deleted file mode 100644 index 24b920aa..00000000 --- a/test/oob/publisher_request.xml +++ /dev/null @@ -1,25 +0,0 @@ - - - MIIDIDCCAgigAwIBAgIBATANBgkqhkiG9w0BAQsFADApMScwJQYDVQQDEx5Cb2Ig - QlBLSSBSZXNvdXJjZSBUcnVzdCBBbmNob3IwHhcNMTEwNzAxMDQwNzIzWhcNMTIw - NjMwMDQwNzIzWjApMScwJQYDVQQDEx5Cb2IgQlBLSSBSZXNvdXJjZSBUcnVzdCBB - bmNob3IwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDEk1f7cVzHu3r/ - fJ5gkBxnWMNJ1CP0kPtfP8oFOEVVH1lX0MHuFKhdKA4WCkGkeFtGb/4T/nGgsD+z - exZid6RR8zjHkwMLvAl0x6wdKa46XJbFu+wTSu+vlowVY9rGzH+ttv4Fj6E2Y3DG - 983/dVNJfXl00+Ts7rlvVcn9lI5dWvzsLoUOdhD4hsyKp53k8i4HexiD+0ugPeh9 - 4PKiyZOuMjSRNQSBUA3ElqJSRZz7nWvs/j6zhwHdFa+lN56575Mc5mrwr+KePwW5 - DLt3izYpjwKffVuxUKPTrhvnOOg5kBBv0ihync21LSLds6jusxaMYUwUElO8KQyn - NUAeGPd/AgMBAAGjUzBRMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFORFOC3G - PjYKn7V1/BJHDmZ4W7J+MB8GA1UdIwQYMBaAFORFOC3GPjYKn7V1/BJHDmZ4W7J+ - MA0GCSqGSIb3DQEBCwUAA4IBAQBqsP4ENtWTkNdsekYB+4hO/Afq20Ho0W8lyTkM - JO1UFDt/dzFAmTT4uM7pmwuQfqmCYjNDWon8nsdFno4tA0is3aiq6yIMAYzBE5ub - bnJMxldqLoWuakco1wYa3kZFzWPwecxgJ4ZlqTPGu0Loyjibt25IE9MfixyWDw+D - MhyfonLLgFb5jz7A3BTE63vlTp359uDbFb1nRdyoT31s3FUBK8jF4B5pWzPiLdct - bOMVjYUBs8aFC3fDXyGSr/RcjE4OOZQyTkYZn8zCPUJ4KqOPAUV9u9jx2FPvOcA3 - 1BjcmhYHqott+cnK1ITOjLe9EKejRZv/7/BFsmpzm2Zbq1KA - - \ No newline at end of file diff --git a/test/oob/repository_response.xml b/test/oob/repository_response.xml deleted file mode 100644 index 1d510a3f..00000000 --- a/test/oob/repository_response.xml +++ /dev/null @@ -1,28 +0,0 @@ - - - MIIDJDCCAgygAwIBAgIBATANBgkqhkiG9w0BAQsFADArMSkwJwYDVQQDEyBBbGlj - ZSBCUEtJIFJlc291cmNlIFRydXN0IEFuY2hvcjAeFw0xMTA3MDEwNDA3MTlaFw0x - MjA2MzAwNDA3MTlaMCsxKTAnBgNVBAMTIEFsaWNlIEJQS0kgUmVzb3VyY2UgVHJ1 - c3QgQW5jaG9yMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA0nVOC7Ik - bc9D3lNPspAp96LEmxqhfWcF70wOk8MHX2skMoHYa3UsyTMOJR4Pv+DRieLbPI8E - ExrLZRqTrY4+OKRG5sekk3zeIc40g4p8jw6aPxlPUFvJAQdsW+iOYljaPhgWMiGH - Qm2ZfsXUlvr8XtmkryGbzcaJy2CaAnUi5dwUmpMx7GEcUz+LpJ6tfyB1aF1CpnBm - pvOhIl+Tlk55Zpo2Nn1Ty0TiTX40fK/ToKZn+/5LkRBKXjGUSWlMyWBVJZVCHo/Z - PLtPbjUr0gczIYp24q4GxmAHbK12GT/4vGdnQCyadKBDF4Kv0BP6TFf+BP3aE2P7 - biQa919zuZzfCQIDAQABo1MwUTAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBQj - tovHYOZzUno6MsFjYyKdJZf3NDAfBgNVHSMEGDAWgBQjtovHYOZzUno6MsFjYyKd - JZf3NDANBgkqhkiG9w0BAQsFAAOCAQEApkybLXSqUGFf6TxVz+AXVbMtTr22tUJ+ - nMocs6lDsyXt2QC/ef3iPTECfJXJrWxCF3PaAWcjV/QQVw3Z2BqblHPmNPM0DxhJ - OBv065L041zZla4163XSzEzRHJn+99E9jPs15w7if2A1m2XH2W2gg3aSMBSqZXcM - 6Z+W6XsH0dx5c10YspJBSXRls7SsKRpS30fCs2+jSYA0AWvxCTfCNmVf6ssMmAyr - 6Ynrt3fS0MpprBPxJF3KWveHLhaUxLYefSsnsV6o3nfZYwyDlo9m7t3IQCg+Yg7k - FO2iB8/TDRIdP6bpBvpVrQ13FvWqC6CglZ0fbFRNklotIVxcP1cuNw== - - \ No newline at end of file diff --git a/test/publication/generated/error_reply_result.xml b/test/publication/generated/error_reply_result.xml deleted file mode 100644 index 23c7932a..00000000 --- a/test/publication/generated/error_reply_result.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - An object is already present at this URI, yet a "hash" attribute was not specified. - - MIIDJDCCAgygAwIBAgIBATANBgkqhkiG9w0BAQsFADArMSkwJwYDVQQDEyBDYXJvbCBCUEtJIFJlc291cmNlIFRydXN0IEFuY2hvcjAeFw0xMTA3MDEwNDA3MjRaFw0xMjA2MzAwNDA3MjRaMCsxKTAnBgNVBAMTIENhcm9sIEJQS0kgUmVzb3VyY2UgVHJ1c3QgQW5jaG9yMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAtF0MUjZ88c7YvY72T//02NUs00BE8dDaP9Yp2ByePrcy7ceJBQbL22LKDN6bASXlth+xxQjNUYeua7IwhlFX9HvcCWcClg2hR0Bqa1v4o5jitRL1COdJCvvQcg2B5p7uC74dh9e+w88z7X6u1NqZJS91Xw1GBt/Vi3xNwtlDchfcXcdGGcMObAksfQY9KrddWPfINmz0Cqx5M98BVHgUV1RJdFNBV91WTH2L7wOxW+hyo0CkvCxIfNZLlnL/nn7+OTEUFREVCU8YZz6semjzLb5q1qV46zoI5AmDB2JyddG+zPCqKbEmNWUCza4BYRRZDB/q2Z3T2p4fGV7R8jEJnQIDAQABo1MwUTAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTrAyu8b8iL0rApak4gUWaHyNjcCTAfBgNVHSMEGDAWgBTrAyu8b8iL0rApak4gUWaHyNjcCTANBgkqhkiG9w0BAQsFAAOCAQEAbrmv72xzD+2zJnZwRrX9NsbKMBu6sEtpyMIND9RduU09yK2KDZLyJ07J1UmIgzaQjcy8Lk6tbveaSOGgu4Nr8Sl0P/YZg83jvmOIa4PXJT7YSrQ9son98akGZf6dEnDhX/S15z+WpCAyuUY8Zgpq6JRSsRrn2eOlzVmf9sE9tFCC8ozSwiGTcyILf1sORqMClhebRenE1GNWJ7Pabe7NkvoN5guMVO5h0lSfHnuxQGutxd2BvD6nOC5lqQMmuPIE47yAN7PNPbwlMl32nUDkUrESCYJ2luFSg3PASHSsHw2Tg/azHFrGcMMEbhIAHd1iOGOIlRjlJhkHLJZFTJOyZw== - - - - Found some other issue. - - \ No newline at end of file diff --git a/test/publication/generated/list_query_result.xml b/test/publication/generated/list_query_result.xml deleted file mode 100644 index ad41a8bb..00000000 --- a/test/publication/generated/list_query_result.xml +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/test/publication/generated/list_reply_result.xml b/test/publication/generated/list_reply_result.xml deleted file mode 100644 index 83286446..00000000 --- a/test/publication/generated/list_reply_result.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/test/publication/generated/publish_query_result.xml b/test/publication/generated/publish_query_result.xml deleted file mode 100644 index b1749b47..00000000 --- a/test/publication/generated/publish_query_result.xml +++ /dev/null @@ -1,5 +0,0 @@ - - MIIDJDCCAgygAwIBAgIBATANBgkqhkiG9w0BAQsFADArMSkwJwYDVQQDEyBDYXJvbCBCUEtJIFJlc291cmNlIFRydXN0IEFuY2hvcjAeFw0xMTA3MDEwNDA3MjRaFw0xMjA2MzAwNDA3MjRaMCsxKTAnBgNVBAMTIENhcm9sIEJQS0kgUmVzb3VyY2UgVHJ1c3QgQW5jaG9yMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAtF0MUjZ88c7YvY72T//02NUs00BE8dDaP9Yp2ByePrcy7ceJBQbL22LKDN6bASXlth+xxQjNUYeua7IwhlFX9HvcCWcClg2hR0Bqa1v4o5jitRL1COdJCvvQcg2B5p7uC74dh9e+w88z7X6u1NqZJS91Xw1GBt/Vi3xNwtlDchfcXcdGGcMObAksfQY9KrddWPfINmz0Cqx5M98BVHgUV1RJdFNBV91WTH2L7wOxW+hyo0CkvCxIfNZLlnL/nn7+OTEUFREVCU8YZz6semjzLb5q1qV46zoI5AmDB2JyddG+zPCqKbEmNWUCza4BYRRZDB/q2Z3T2p4fGV7R8jEJnQIDAQABo1MwUTAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTrAyu8b8iL0rApak4gUWaHyNjcCTAfBgNVHSMEGDAWgBTrAyu8b8iL0rApak4gUWaHyNjcCTANBgkqhkiG9w0BAQsFAAOCAQEAbrmv72xzD+2zJnZwRrX9NsbKMBu6sEtpyMIND9RduU09yK2KDZLyJ07J1UmIgzaQjcy8Lk6tbveaSOGgu4Nr8Sl0P/YZg83jvmOIa4PXJT7YSrQ9son98akGZf6dEnDhX/S15z+WpCAyuUY8Zgpq6JRSsRrn2eOlzVmf9sE9tFCC8ozSwiGTcyILf1sORqMClhebRenE1GNWJ7Pabe7NkvoN5guMVO5h0lSfHnuxQGutxd2BvD6nOC5lqQMmuPIE47yAN7PNPbwlMl32nUDkUrESCYJ2luFSg3PASHSsHw2Tg/azHFrGcMMEbhIAHd1iOGOIlRjlJhkHLJZFTJOyZw== - MIIL9wYJKoZIhvcNAQcCoIIL6DCCC+QCAQMxDTALBglghkgBZQMEAgEwggVyBgsqhkiG9w0BCRABHKCCBWEEggVdPD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4KPG1lc3NhZ2UgeG1sbnM9Imh0dHA6Ly93d3cuYXBuaWMubmV0L3NwZWNzL3Jlc2NlcnRzL3VwLWRvd24vIiB2ZXJzaW9uPSIxIiBzZW5kZXI9IkNhcm9sIiByZWNpcGllbnQ9IkJvYiIgdHlwZT0iaXNzdWUiPgogIDxyZXF1ZXN0IGNsYXNzX25hbWU9IjIiPgpNSUlEV0RDQ0FrQUNBUUF3TXpFeE1DOEdBMVVFQXhNb01qSTRRMFl3T1RNd09FVkVNVUUxUWpOQlJFUTNORGRECk5VSTJPVFk0UkRjd056TkNOVEk0TlRDQ0FTSXdEUVlKS29aSWh2Y05BUUVCQlFBRGdnRVBBRENDQVFvQ2dnRUIKQUx4aHl0Y0ppTlFhR2dER2NuUTc5QW9QTi9yc0FuRnJzTy9vQzJ1YmFxY1Q4bnFlMHhSblhCM0l1d3E5UklLcwp5UnA0OUpzWGxMNTl6b0o2QUJpWlU4bHQrNVRKa3YrcVJ2aWtSRklPZ2xqanRJNCtBM0Y2YlM0ZnJDbnYwZGN5CmQ2Z0dIZFVxNUx6T1ZnaE5tSldDN3RRbit6WGdRQk8xdVROb21kOEsvdk1ha3pIQ0FkSGZNUFNCZlMvNzhRZEcKVTJjR2xzbFNuWEhEYURReEhXanByVC9QaHhqL29nSkJWUkQ1UXkyellEQzhIRTh2L2VxcnVMclpESUl3bXFuZgpHWTAvZjlDL2RBaTFFODB0Qk9jYnRaUm1JTU1HNDFGYkZYUE44SVNybWU5b09ub1dXa3ZPVTgybHhhY2hSZ1dWClNxNzdlWm1VMlJmQlpycTNTdlVSc0owQ0F3RUFBYUNCM3pDQjNBWUpLb1pJaHZjTkFRa09NWUhPTUlITE1BOEcKQTFVZEV3RUIvd1FGTUFNQkFmOHdEZ1lEVlIwUEFRSC9CQVFEQWdFR01JR25CZ2dyQmdFRkJRY0JDd1NCbWpDQgpsekE2QmdnckJnRUZCUWN3QllZdWNuTjVibU02THk5c2IyTmhiR2h2YzNRNk5EUXdOQzl5Y0d0cEwwRnNhV05sCkwwSnZZaTlEWVhKdmJDOHpMekJaQmdnckJnRUZCUWN3Q29aTmNuTjVibU02THk5c2IyTmhiR2h2YzNRNk5EUXcKTkM5eWNHdHBMMEZzYVdObEwwSnZZaTlEWVhKdmJDOHpMMGx2ZW5kcmQycDBSMnh6TmpOWVVqaFhNbXh2TVhkagpOMVZ2VlM1dGJtWXdEUVlKS29aSWh2Y05BUUVMQlFBRGdnRUJBSkV0d1R5VUJRUjVwU3dpWFlBTWdyWVFER1o3CmpDOHl4NHFOZzNHV1hwaFo3VUdjbnAzMC84ZFlEWW12ckRnSmszUkZzNVlpek9lTEhNekNYU29GN0hxVm9mUC8KY0gzSWo0c1ZGMmZxeUx2dnd5Zi9EMzZRTzZFQTZ6QVNPdSs2ekZnc1dZdlVkZkVMYjhCZVgzU0pDL0syU1E3Rgo1MXZZSzNYZGVNL2ptRzRleFBZRGZNVWZHS082TFQ1UE9XOGhDR0ZOeU5oZitFRGloTjh3NHBJbTQ3M1BaTWxFCkVCTWFNTkxtU2l2dnZOTWhVVk4yNWpnSEpvcjVKWldsMFQyMlpxb1hnYStVa3BFK2owbGtkc3pYdlhxM0FkNGQKQW9NSmhFSm9YYUhXMGxSRU16SURBakRxMHdoZnBIVGRYay9uMEJaNkV1MFRaMmxEV21jQTVTUHBtVEk9CjwvcmVxdWVzdD4KPC9tZXNzYWdlPgqgggMfMIIDGzCCAgOgAwIBAgIBBDANBgkqhkiG9w0BAQsFADArMSkwJwYDVQQDEyBDYXJvbCBCUEtJIFJlc291cmNlIFRydXN0IEFuY2hvcjAeFw0xMTA3MDEwNDA4MDNaFw0xMjA2MzAwNDA4MDNaMDMxMTAvBgNVBAMTKEM4NDlCMkVBMjRBNjkwOUM4NjY3QUYyOTE3NTQxMkQ4QkIxRDAwMzkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDBY0FK5NJlRiqYii7t8XX/4Vye0g+5mltYb1miCuDpsMgZPlrVhRprFu8cBzrCzvY6b0J0p+1lNoZcvkwPKIWT9YeL5VbiRL9XPjk78D0fS2Rpl7H5wUZx1vSjqzcsi//IwVETsHtFcJ9C9nNhTaZfLGWpRrzNHWtH2TUUXmXou+NnXknOO5TD6SiacrxIw4G5Z2LCsmQWDPvcnu0qdWBWcV8/0nZ0BMNXsdyRBKavANlTK4cfY7FFS8Jpqh3bcdCXRQYwx/b+cKzVbNOVs/+9j50jnx1gfe1cFWYfzjzN0uERF/4ylhaV2u1fkueDwvUUf6DNDbRwGdGubJvo3RA5AgMBAAGjQjBAMB0GA1UdDgQWBBTISbLqJKaQnIZnrykXVBLYux0AOTAfBgNVHSMEGDAWgBTrAyu8b8iL0rApak4gUWaHyNjcCTANBgkqhkiG9w0BAQsFAAOCAQEAYai1LRRG78adcxY/hc4eA023IHxPIPCwylQO8N6grJ5GTh6mmTG9LLFMK8vcbMdgwyUFzhvrSeWVJpsesnkMdUzoiNNrvXexEy5x3EQ/sEXgZt/y8/pJ/VDOhK9s8we5a7XKY8uD77Rq6ijvWx5S6E/UQd4T3X+AgSzNH11mGGoHWREUUv0SSKu/a0vU9HOzuI5woEWwn5k2n08zJC0xDRoVcaWE0P7L/+S8n/qLQlz1Phj+GOu/q2hFCBCLQRLBFdsUzlm7dATiwABZoEzR+VbUUfVcHmTSgnFXALyLepoRuK6x4MKj6Lv9uXfctILCeEW9LNC2wJQ3gusSL+wc1qGCAYcwggGDMG0CAQEwDQYJKoZIhvcNAQELBQAwKzEpMCcGA1UEAxMgQ2Fyb2wgQlBLSSBSZXNvdXJjZSBUcnVzdCBBbmNob3IXDTExMDcwMTA0MDcyNFoXDTEyMDYzMDA0MDcyNFqgDjAMMAoGA1UdFAQDAgEBMA0GCSqGSIb3DQEBCwUAA4IBAQCIE9O/NShSJgJPpv/PAzMOFlFQ5AQQLK9GQM42qnNc67ncie44bu0VugPLqLt4Z/Vr81XMIRbg1UlIU8UC/uU8YDQNOHn2Lzj0dpxAx1wdZkkKDs3I7/7LzTneWB3QfIzofKTb0+Q0Rltewj2gSn8FsH54oFZCJdxYfEvNksJmhRuNvX11qdOyvqufWDk0w8v5W7LevdT3zBtrMAZZDk5QX6vcsdL4qs6fjuASlEkqyYsvCaG1PNeaVZrxhB2kXanlgCkdR2M+agHXspN+ILAKnbLHDNOCqX17iqaWqjvy5XOVCJ7IyV5KPp+1R8KUdA6S9wjbHQD3l82Skr9jcxh1MYIBqjCCAaYCAQOAFMhJsuokppCchmevKRdUEti7HQA5MAsGCWCGSAFlAwQCAaBrMBoGCSqGSIb3DQEJAzENBgsqhkiG9w0BCRABHDAcBgkqhkiG9w0BCQUxDxcNMTEwNzAxMDQwOTA1WjAvBgkqhkiG9w0BCQQxIgQgm/3IfXFnJT/10dy9m3nuZt3i13nd6yunn6TipHrhXhowDQYJKoZIhvcNAQEBBQAEggEARUgsPpls3HpmnOg3vwgk53Z1vYLiSoYCzA5zRLyDQDwEok1ddqgCRk6DOatAPS+OOa4U5xabfJDg1b43suo/d2vlFPbym8Ja3lLnMNAWMUM6lh2W4ahbPWfnvNx6moVcw4DPJe17zVqcM2zupSUri/jNsq3kx+Hk8eDBhY7uGoFdtqeV2/4CsE7S33Rj6GjAV1j72mpGk50y0f7gi6ODKLHf+zXsOccQY/g6MU3mFYMMOyndXjraprCcgqBSzpHWqKzdkLPLuUzjYxgtuv37kut+k9xSJV+u+UjYItNnUKJNJ+zLxf3c9YhchWJOmPCGmzscwlTou6kUkR2sBms8bA== - - \ No newline at end of file diff --git a/test/publication/generated/success_reply_result.xml b/test/publication/generated/success_reply_result.xml deleted file mode 100644 index d2e45c4e..00000000 --- a/test/publication/generated/success_reply_result.xml +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/test/publication/list.xml b/test/publication/list.xml deleted file mode 100644 index ad41a8bb..00000000 --- a/test/publication/list.xml +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/test/publication/list_reply.xml b/test/publication/list_reply.xml deleted file mode 100644 index e04e05f4..00000000 --- a/test/publication/list_reply.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/test/publication/list_reply_empty.xml b/test/publication/list_reply_empty.xml deleted file mode 100644 index ebeaf282..00000000 --- a/test/publication/list_reply_empty.xml +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/test/publication/publish.xml b/test/publication/publish.xml deleted file mode 100644 index c2073188..00000000 --- a/test/publication/publish.xml +++ /dev/null @@ -1,7 +0,0 @@ - - SGVsbG8sIG15IG5hbWUgaXMgQWxpY2U= - SGVsbG8sIG15IG5hbWUgaXMgQ2Fyb2w= - SGVsbG8sIG15IG5hbWUgaXMgRXZl - - - \ No newline at end of file diff --git a/test/publication/report_error_complex.xml b/test/publication/report_error_complex.xml deleted file mode 100644 index eb02014d..00000000 --- a/test/publication/report_error_complex.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - I can't very well delete an object I do not have, are you drunk? - - - - - - - SGVsbG8sIG15IG5hbWUgaXMgRXZl - - - \ No newline at end of file diff --git a/test/publication/report_error_minimal.xml b/test/publication/report_error_minimal.xml deleted file mode 100644 index 6d525959..00000000 --- a/test/publication/report_error_minimal.xml +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/test/publication/success.xml b/test/publication/success.xml deleted file mode 100644 index d2e45c4e..00000000 --- a/test/publication/success.xml +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/test/remote/carol_child_id.xml b/test/remote/carol_child_id.xml deleted file mode 100644 index 8549b035..00000000 --- a/test/remote/carol_child_id.xml +++ /dev/null @@ -1,21 +0,0 @@ - - -MIIDJDCCAgygAwIBAgIBATANBgkqhkiG9w0BAQsFADArMSkwJwYDVQQDEyBDYXJv -bCBCUEtJIFJlc291cmNlIFRydXN0IEFuY2hvcjAeFw0xMTA3MDEwNDA3MjRaFw0x -MjA2MzAwNDA3MjRaMCsxKTAnBgNVBAMTIENhcm9sIEJQS0kgUmVzb3VyY2UgVHJ1 -c3QgQW5jaG9yMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAtF0MUjZ8 -8c7YvY72T//02NUs00BE8dDaP9Yp2ByePrcy7ceJBQbL22LKDN6bASXlth+xxQjN -UYeua7IwhlFX9HvcCWcClg2hR0Bqa1v4o5jitRL1COdJCvvQcg2B5p7uC74dh9e+ -w88z7X6u1NqZJS91Xw1GBt/Vi3xNwtlDchfcXcdGGcMObAksfQY9KrddWPfINmz0 -Cqx5M98BVHgUV1RJdFNBV91WTH2L7wOxW+hyo0CkvCxIfNZLlnL/nn7+OTEUFREV -CU8YZz6semjzLb5q1qV46zoI5AmDB2JyddG+zPCqKbEmNWUCza4BYRRZDB/q2Z3T -2p4fGV7R8jEJnQIDAQABo1MwUTAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTr -Ayu8b8iL0rApak4gUWaHyNjcCTAfBgNVHSMEGDAWgBTrAyu8b8iL0rApak4gUWaH -yNjcCTANBgkqhkiG9w0BAQsFAAOCAQEAbrmv72xzD+2zJnZwRrX9NsbKMBu6sEtp -yMIND9RduU09yK2KDZLyJ07J1UmIgzaQjcy8Lk6tbveaSOGgu4Nr8Sl0P/YZg83j -vmOIa4PXJT7YSrQ9son98akGZf6dEnDhX/S15z+WpCAyuUY8Zgpq6JRSsRrn2eOl -zVmf9sE9tFCC8ozSwiGTcyILf1sORqMClhebRenE1GNWJ7Pabe7NkvoN5guMVO5h -0lSfHnuxQGutxd2BvD6nOC5lqQMmuPIE47yAN7PNPbwlMl32nUDkUrESCYJ2luFS -g3PASHSsHw2Tg/azHFrGcMMEbhIAHd1iOGOIlRjlJhkHLJZFTJOyZw== - - \ No newline at end of file diff --git a/test/remote/cms_ta.cer b/test/remote/cms_ta.cer deleted file mode 100644 index 3281652a..00000000 Binary files a/test/remote/cms_ta.cer and /dev/null differ diff --git a/test/remote/pdu_200.der b/test/remote/pdu_200.der deleted file mode 100644 index aa23c77a..00000000 Binary files a/test/remote/pdu_200.der and /dev/null differ