From 105aa9c8ebef5463a81b52bfe85f669523ee4218 Mon Sep 17 00:00:00 2001 From: "T. Floyd Wright" Date: Thu, 21 Aug 2025 13:28:16 -0600 Subject: [PATCH] Publicize request validator signature generation logic --- lib/ex_twilio/request_validator.ex | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/lib/ex_twilio/request_validator.ex b/lib/ex_twilio/request_validator.ex index a5bfc8e..ac9ac8a 100644 --- a/lib/ex_twilio/request_validator.ex +++ b/lib/ex_twilio/request_validator.ex @@ -14,12 +14,17 @@ defmodule ExTwilio.RequestValidator do end def valid?(url, params, signature, auth_token) do + url + |> generate_signature(params, auth_token) + |> secure_compare(signature) + end + + def generate_signature(url, params, auth_token) do url |> data_for(params) |> compute_hmac(auth_token) |> Base.encode64() |> String.trim() - |> secure_compare(signature) end defp data_for(url, params), do: url <> combine(params)