diff --git a/.tool-versions b/.tool-versions index fa6f17c..20ee69b 100644 --- a/.tool-versions +++ b/.tool-versions @@ -1 +1,2 @@ -elixir 1.11.3 +erlang 25.3.2.5 +elixir 1.14.5-otp-25 diff --git a/CHANGELOG.md b/CHANGELOG.md index 10299f3..1b115b5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## v0.6.1 + +- Added handle_info for :ssl_error + ## v0.6.0 **Security** diff --git a/lib/frame/continuation.ex b/lib/frame/continuation.ex index f6e2195..d25def8 100644 --- a/lib/frame/continuation.ex +++ b/lib/frame/continuation.ex @@ -3,7 +3,7 @@ defmodule Kadabra.Frame.Continuation do defstruct [:header_block_fragment, :stream_id, end_headers: false] - use Bitwise + import Bitwise @type t :: %__MODULE__{ end_headers: boolean, diff --git a/lib/frame/data.ex b/lib/frame/data.ex index fc6d127..2608be0 100644 --- a/lib/frame/data.ex +++ b/lib/frame/data.ex @@ -3,7 +3,7 @@ defmodule Kadabra.Frame.Data do defstruct [:stream_id, :data, end_stream: false] - use Bitwise + import Bitwise alias Kadabra.Frame diff --git a/lib/frame/headers.ex b/lib/frame/headers.ex index 94b07e7..7c7310c 100644 --- a/lib/frame/headers.ex +++ b/lib/frame/headers.ex @@ -21,7 +21,7 @@ defmodule Kadabra.Frame.Headers do weight: non_neg_integer } - use Bitwise + import Bitwise alias Kadabra.Frame diff --git a/lib/frame/ping.ex b/lib/frame/ping.ex index 95f29f2..80cfd0f 100644 --- a/lib/frame/ping.ex +++ b/lib/frame/ping.ex @@ -3,7 +3,7 @@ defmodule Kadabra.Frame.Ping do defstruct [:data, stream_id: 0, ack: false] - use Bitwise + import Bitwise alias Kadabra.Frame diff --git a/lib/frame/push_promise.ex b/lib/frame/push_promise.ex index 581aa6d..461a3a2 100644 --- a/lib/frame/push_promise.ex +++ b/lib/frame/push_promise.ex @@ -5,7 +5,7 @@ defmodule Kadabra.Frame.PushPromise do header_block_fragment: nil, stream_id: nil - use Bitwise + import Bitwise alias Kadabra.Frame diff --git a/lib/frame/settings.ex b/lib/frame/settings.ex index ec09b29..b36e553 100644 --- a/lib/frame/settings.ex +++ b/lib/frame/settings.ex @@ -3,7 +3,7 @@ defmodule Kadabra.Frame.Settings do defstruct [:settings, ack: false] - use Bitwise + import Bitwise alias Kadabra.Connection diff --git a/lib/socket.ex b/lib/socket.ex index b1bb956..11e7659 100644 --- a/lib/socket.ex +++ b/lib/socket.ex @@ -86,6 +86,8 @@ defmodule Kadabra.Socket do {:verify, :verify_peer}, {:depth, 99}, {:cacerts, :certifi.cacerts()}, + {:customize_hostname_check, + [{:match_fun, :public_key.pkix_verify_hostname_match_fun(:https)}]}, {:alpn_advertised_protocols, [<<"h2">>]}, :binary ] @@ -192,4 +194,9 @@ defmodule Kadabra.Socket do Kernel.send(state.active_user, {:closed, self()}) {:noreply, %{state | socket: nil}} end + + def handle_info({:ssl_error, _socket, _reason}, state) do + Kernel.send(state.active_user, {:closed, self()}) + {:noreply, %{state | socket: nil}} + end end diff --git a/mix.exs b/mix.exs index dbf7cb8..c7d6d58 100644 --- a/mix.exs +++ b/mix.exs @@ -1,7 +1,7 @@ defmodule Kadabra.Mixfile do use Mix.Project - @version "0.6.0" + @version "0.6.1" def project do [