Skip to content

Commit 9a8f93b

Browse files
authored
Merge pull request #108 from finagle/vk/finagle-18.2
Update Finagle to 18.12
2 parents f0bd9e3 + 58a2da4 commit 9a8f93b

File tree

2 files changed

+28
-27
lines changed

2 files changed

+28
-27
lines changed

build.sbt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@ lazy val buildSettings = Seq(
1010
val baseSettings = Seq(
1111
resolvers += Resolver.bintrayRepo("jeremyrsmith", "maven"),
1212
libraryDependencies ++= Seq(
13-
"com.twitter" %% "finagle-core" % "18.2.0",
14-
"com.twitter" %% "finagle-netty3" % "18.2.0",
13+
"com.twitter" %% "finagle-core" % "18.12.0",
14+
"com.twitter" %% "finagle-netty3" % "18.12.0",
1515
"org.scalatest" %% "scalatest" % "3.0.5" % "test,it",
1616
"org.scalacheck" %% "scalacheck" % "1.13.5" % "test,it",
1717
"org.scalamock" %% "scalamock-scalatest-support" % "3.4.2" % "test,it",

src/main/scala/com/twitter/finagle/postgres/codec/PgCodec.scala

Lines changed: 26 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import com.twitter.finagle.postgres.ResultSet
88
import com.twitter.finagle.postgres.connection.{AuthenticationRequired, Connection, RequestingSsl, WrongStateForEvent}
99
import com.twitter.finagle.postgres.messages._
1010
import com.twitter.finagle.postgres.values.Md5Encryptor
11-
import com.twitter.finagle.ssl.client.{ HostnameVerifier, SslClientConfiguration, SslClientEngineFactory, SslClientSessionVerifier }
11+
import com.twitter.finagle.ssl.client.{ SslClientConfiguration, SslClientEngineFactory, SslClientSessionVerifier }
1212
import com.twitter.logging.Logger
1313
import com.twitter.util.{ Future, Try }
1414
import javax.net.ssl.{SSLContext, SSLEngine, SSLSession, TrustManagerFactory}
@@ -21,7 +21,6 @@ import org.jboss.netty.handler.ssl.{SslContext, SslHandler}
2121
import scala.collection.mutable
2222

2323
import com.sun.corba.se.impl.protocol.RequestCanceledException
24-
import com.twitter.finagle.ssl.Ssl
2524
import com.twitter.finagle.transport.Transport
2625

2726
/*
@@ -193,7 +192,7 @@ class PgClientChannelHandler(
193192
if (useSsl) {
194193
new Connection(startState = RequestingSsl)
195194
} else {
196-
new Connection(startState = AuthenticationRequired)
195+
new Connection(startState = AuthenticationRequired)
197196
}
198197
}
199198

@@ -212,33 +211,35 @@ class PgClientChannelHandler(
212211

213212
val pipeline = ctx.getPipeline
214213

215-
val (engine, verifier) = ctx.getChannel.getRemoteAddress match {
214+
ctx.getChannel.getRemoteAddress match {
216215
case i: InetSocketAddress =>
217216
val address = Address(i)
218217
val config = sslConfig.getOrElse(SslClientConfiguration(hostname = Some(i.getHostString)))
219-
(sslEngineFactory(address, config).self, (s: SSLSession) => sessionVerifier(address, config, s))
220-
case _ =>
221-
(Ssl.client().self, (_: SSLSession) => true)
222-
}
223-
224-
engine.setUseClientMode(true)
225-
226-
val sslHandler = new SslHandler(engine)
227-
pipeline.addFirst("ssl", sslHandler)
228-
229-
sslHandler.handshake().addListener(new ChannelFutureListener {
230-
override def operationComplete(f: ChannelFuture) = {
231-
if (!Try(verifier(engine.getSession)).onFailure { err =>
232-
logger.error(err, "Exception thrown during SSL session verification")
233-
}.getOrElse(false)) {
234-
logger.error("SSL session verification failed")
235-
Channels.close(ctx.getChannel)
218+
val verifier = (s: SSLSession) => sessionVerifier(address, config, s)
219+
220+
val engine = sslEngineFactory(address, config).self
221+
engine.setUseClientMode(true)
222+
223+
val sslHandler = new SslHandler(engine)
224+
pipeline.addFirst("ssl", sslHandler)
225+
226+
sslHandler.handshake().addListener(new ChannelFutureListener {
227+
def operationComplete(f: ChannelFuture) = {
228+
if (!Try(verifier(engine.getSession)).onFailure { err =>
229+
logger.error(err, "Exception thrown during SSL session verification")
230+
}.getOrElse(false)) {
231+
logger.error("SSL session verification failed")
232+
Channels.close(ctx.getChannel)
233+
}
234+
}
235+
})
236+
237+
connection.receive(SwitchToSsl).foreach {
238+
Channels.fireMessageReceived(ctx, _)
236239
}
237-
}
238-
})
239240

240-
connection.receive(SwitchToSsl).foreach {
241-
Channels.fireMessageReceived(ctx, _)
241+
case _ =>
242+
Channels.fireExceptionCaught(ctx, new Exception("Unsupported socket address for SSL"))
242243
}
243244
case msg: BackendMessage =>
244245
try {

0 commit comments

Comments
 (0)