projects
/
akkoma
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add scheduled activities
[akkoma]
/
lib
/
pleroma
/
web
/
salmon
/
salmon.ex
diff --git
a/lib/pleroma/web/salmon/salmon.ex
b/lib/pleroma/web/salmon/salmon.ex
index 4d519ece4b37b6c4b1879f3bf7b2048419c3e0ed..0a9e51656db5e9fb56bb768c81694976a257ccb9 100644
(file)
--- a/
lib/pleroma/web/salmon/salmon.ex
+++ b/
lib/pleroma/web/salmon/salmon.ex
@@
-6,10
+6,12
@@
defmodule Pleroma.Web.Salmon do
@httpoison Application.get_env(:pleroma, :httpoison)
use Bitwise
@httpoison Application.get_env(:pleroma, :httpoison)
use Bitwise
+
alias Pleroma.Instances
alias Pleroma.Instances
- alias Pleroma.Web.XML
- alias Pleroma.Web.OStatus.ActivityRepresenter
alias Pleroma.User
alias Pleroma.User
+ alias Pleroma.Web.OStatus.ActivityRepresenter
+ alias Pleroma.Web.XML
+
require Logger
def decode(salmon) do
require Logger
def decode(salmon) do
@@
-84,10
+86,10
@@
defmodule Pleroma.Web.Salmon do
# Native generation of RSA keys is only available since OTP 20+ and in default build conditions
# We try at compile time to generate natively an RSA key otherwise we fallback on the old way.
try do
# Native generation of RSA keys is only available since OTP 20+ and in default build conditions
# We try at compile time to generate natively an RSA key otherwise we fallback on the old way.
try do
- _ = :public_key.generate_key({:rsa, 2048, 65537})
+ _ = :public_key.generate_key({:rsa, 2048, 65
_
537})
def generate_rsa_pem do
def generate_rsa_pem do
- key = :public_key.generate_key({:rsa, 2048, 65537})
+ key = :public_key.generate_key({:rsa, 2048, 65
_
537})
entry = :public_key.pem_entry_encode(:RSAPrivateKey, key)
pem = :public_key.pem_encode([entry]) |> String.trim_trailing()
{:ok, pem}
entry = :public_key.pem_entry_encode(:RSAPrivateKey, key)
pem = :public_key.pem_encode([entry]) |> String.trim_trailing()
{:ok, pem}
@@
-173,7
+175,9
@@
defmodule Pleroma.Web.Salmon do
feed,
[{"Content-Type", "application/magic-envelope+xml"}]
) do
feed,
[{"Content-Type", "application/magic-envelope+xml"}]
) do
- if params[:unreachable_since], do: Instances.set_reachable(url)
+ if !Map.has_key?(params, :unreachable_since) || params[:unreachable_since],
+ do: Instances.set_reachable(url)
+
Logger.debug(fn -> "Pushed to #{url}, code #{code}" end)
:ok
else
Logger.debug(fn -> "Pushed to #{url}, code #{code}" end)
:ok
else
@@
-225,7
+229,7
@@
defmodule Pleroma.Web.Salmon do
|> Enum.each(fn remote_user ->
Logger.debug(fn -> "Sending Salmon to #{remote_user.ap_id}" end)
|> Enum.each(fn remote_user ->
Logger.debug(fn -> "Sending Salmon to #{remote_user.ap_id}" end)
- Pleroma.Web.Federator.
enqueue(:publish_single_salmon,
%{
+ Pleroma.Web.Federator.
publish_single_salmon(
%{
recipient: remote_user,
feed: feed,
poster: poster,
recipient: remote_user,
feed: feed,
poster: poster,