X-Git-Url: http://git.squeep.com/?a=blobdiff_plain;f=lib%2Fpleroma%2Fweb%2Fmongooseim%2Fmongoose_im_controller.ex;h=358600e7d1ff34c0bc308fb80f4c831b6e10a459;hb=c2ad9fd5f93b8bbbea19089eb8a2456eb207ff18;hp=f8c634653f8dc21815e1e6e2a2e6eb5f1e1a7aa1;hpb=f959bf7aa6b878ee5b669c4caabd5cdc4cc2dc9e;p=akkoma diff --git a/lib/pleroma/web/mongooseim/mongoose_im_controller.ex b/lib/pleroma/web/mongooseim/mongoose_im_controller.ex index f8c634653..358600e7d 100644 --- a/lib/pleroma/web/mongooseim/mongoose_im_controller.ex +++ b/lib/pleroma/web/mongooseim/mongoose_im_controller.ex @@ -4,9 +4,14 @@ defmodule Pleroma.Web.MongooseIM.MongooseIMController do use Pleroma.Web, :controller + alias Comeonin.Pbkdf2 - alias Pleroma.User + alias Pleroma.Plugs.RateLimiter alias Pleroma.Repo + alias Pleroma.User + + plug(RateLimiter, [name: :authentication] when action in [:user_exists, :check_password]) + plug(RateLimiter, [name: :authentication, params: ["user"]] when action == :check_password) def user_exists(conn, %{"user" => username}) do with %User{} <- Repo.get_by(User, nickname: username, local: true) do @@ -29,7 +34,7 @@ defmodule Pleroma.Web.MongooseIM.MongooseIMController do else false -> conn - |> put_status(403) + |> put_status(:forbidden) |> json(false) _ ->