Skip to content

Commit 8ee9f02

Browse files
illegalprimeMichael Eden
authored andcommitted
Set correct masks on server and client
Fixes #104 regression
1 parent 6ba7ddf commit 8ee9f02

File tree

3 files changed

+10
-5
lines changed

3 files changed

+10
-5
lines changed

src/client/builder.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -545,7 +545,7 @@ impl<'u> ClientBuilder<'u> {
545545
return Err(WebSocketError::ResponseError("Connection field must be 'Upgrade'"));
546546
}
547547

548-
Ok(Client::unchecked(reader, response.headers))
548+
Ok(Client::unchecked(reader, response.headers, true, false))
549549
}
550550
}
551551

src/client/mod.rs

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -120,14 +120,19 @@ impl<S> Client<S>
120120
/// a stream that has a websocket connection already set up.
121121
/// If in doubt, don't use this!
122122
#[doc(hidden)]
123-
pub fn unchecked(stream: BufReader<S>, headers: Headers) -> Self {
123+
pub fn unchecked(
124+
stream: BufReader<S>,
125+
headers: Headers,
126+
out_mask: bool,
127+
in_mask: bool,
128+
) -> Self {
124129
Client {
125130
headers: headers,
126131
stream: stream,
127132
// NOTE: these are always true & false, see
128133
// https://tools.ietf.org/html/rfc6455#section-5
129-
sender: Sender::new(true),
130-
receiver: Receiver::new(false),
134+
sender: Sender::new(out_mask),
135+
receiver: Receiver::new(in_mask),
131136
}
132137
}
133138

src/server/upgrade/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ impl<S> WsUpgrade<S>
128128
None => BufReader::new(self.stream),
129129
};
130130

131-
Ok(Client::unchecked(stream, self.headers))
131+
Ok(Client::unchecked(stream, self.headers, false, true))
132132
}
133133

134134
/// Reject the client's request to make a websocket connection.

0 commit comments

Comments
 (0)