Browse Source

Fix: use conn.firstUnderlyingConn

conn.meekSession.underlyingConn is not safe for concurrent use
mirokuratczyk 2 years ago
parent
commit
2d27cdc07b
1 changed files with 2 additions and 2 deletions
  1. 2 2
      psiphon/server/meek.go

+ 2 - 2
psiphon/server/meek.go

@@ -1650,7 +1650,7 @@ func (conn *meekConn) SetReplay(PRNG *prng.PRNG) {
 
 	if conn.meekServer.normalizer != nil {
 		// The underlying conn is wrapped with a normalizer.
-		normalizer, ok := conn.meekSession.underlyingConn.(*transforms.HTTPNormalizer)
+		normalizer, ok := underlyingConn.(*transforms.HTTPNormalizer)
 		if ok {
 			underlyingConn = normalizer.Conn
 		}
@@ -1674,7 +1674,7 @@ func (conn *meekConn) GetReplay() (*prng.Seed, bool) {
 
 	if conn.meekServer.normalizer != nil {
 		// The underlying conn is wrapped with a normalizer.
-		normalizer, ok := conn.meekSession.underlyingConn.(*transforms.HTTPNormalizer)
+		normalizer, ok := underlyingConn.(*transforms.HTTPNormalizer)
 		if ok {
 			underlyingConn = normalizer.Conn
 		}