]> Untitled Git - lemmy.git/blobdiff - crates/api_crud/src/user/create.rs
Making public key required. Fixes #1934
[lemmy.git] / crates / api_crud / src / user / create.rs
index ce37cd6a07ac1dd456368954a7710605e8f81156..2ce2fa366af7e6c19a813e0850900d840d089382 100644 (file)
@@ -2,9 +2,9 @@ use crate::PerformCrud;
 use actix_web::web::Data;
 use lemmy_api_common::{blocking, honeypot_check, password_length_check, person::*};
 use lemmy_apub::{
-  generate_apub_endpoint,
   generate_followers_url,
   generate_inbox_url,
+  generate_local_apub_endpoint,
   generate_shared_inbox_url,
   EndpointType,
 };
@@ -96,7 +96,7 @@ impl PerformCrud for Register {
     if !is_valid_actor_name(&data.username, context.settings().actor_name_max_length) {
       return Err(ApiError::err_plain("invalid_username").into());
     }
-    let actor_id = generate_apub_endpoint(
+    let actor_id = generate_local_apub_endpoint(
       EndpointType::Person,
       &data.username,
       &context.settings().get_protocol_and_hostname(),
@@ -109,7 +109,7 @@ impl PerformCrud for Register {
       name: data.username.to_owned(),
       actor_id: Some(actor_id.clone()),
       private_key: Some(Some(actor_keypair.private_key)),
-      public_key: Some(Some(actor_keypair.public_key)),
+      public_key: actor_keypair.public_key,
       inbox_url: Some(generate_inbox_url(&actor_id)?),
       shared_inbox_url: Some(Some(generate_shared_inbox_url(&actor_id)?)),
       admin: Some(no_admins),
@@ -179,7 +179,7 @@ impl PerformCrud for Register {
       Ok(c) => c,
       Err(_e) => {
         let default_community_name = "main";
-        let actor_id = generate_apub_endpoint(
+        let actor_id = generate_local_apub_endpoint(
           EndpointType::Community,
           default_community_name,
           &protocol_and_hostname,
@@ -189,8 +189,8 @@ impl PerformCrud for Register {
           title: "The Default Community".to_string(),
           description: Some("The Default Community".to_string()),
           actor_id: Some(actor_id.to_owned()),
-          private_key: Some(main_community_keypair.private_key),
-          public_key: Some(main_community_keypair.public_key),
+          private_key: Some(Some(main_community_keypair.private_key)),
+          public_key: main_community_keypair.public_key,
           followers_url: Some(generate_followers_url(&actor_id)?),
           inbox_url: Some(generate_inbox_url(&actor_id)?),
           shared_inbox_url: Some(Some(generate_shared_inbox_url(&actor_id)?)),