Upload filter: anonymize filename

It replaces the original filename with a randomly generated string.
This commit is contained in:
href 2018-11-30 19:33:34 +01:00
commit e9982c521b
No known key found for this signature in database
GPG key ID: EE8296C1A152C325
2 changed files with 24 additions and 0 deletions

View file

@ -0,0 +1,10 @@
defmodule Pleroma.Upload.Filter.AnonymizeFilename do
@moduledoc "Replaces the original filename with a randomly generated string."
@behaviour Pleroma.Upload.Filter
def filter(upload) do
extension = List.last(String.split(upload.name, "."))
string = Base.url_encode64(:crypto.strong_rand_bytes(10), padding: false)
{:ok, %Pleroma.Upload{upload | name: string <> "." <> extension}}
end
end