Browse Source

src: move crypto_bio/clienthello to crypto ns

Currently, node_crypto_bio and node_crypto_clienthello are not in the
crypto namespace but simply in the node namespace. Not sure if this was
intentional or not, but I think it would make sense to move them to be
consistent.

PR-URL: https://github.com/nodejs/node/pull/13957
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: James M Snell <jasnell@gmail.com>
v6.x
Daniel Bevenius 8 years ago
committed by Myles Borins
parent
commit
51364b746f
No known key found for this signature in database GPG Key ID: 933B01F40B5CA946
  1. 2
      src/node_crypto_bio.cc
  2. 2
      src/node_crypto_bio.h
  3. 2
      src/node_crypto_clienthello-inl.h
  4. 2
      src/node_crypto_clienthello.cc
  5. 2
      src/node_crypto_clienthello.h
  6. 24
      src/tls_wrap.cc
  7. 4
      src/tls_wrap.h

2
src/node_crypto_bio.cc

@ -6,6 +6,7 @@
#include <string.h>
namespace node {
namespace crypto {
const BIO_METHOD NodeBIO::method = {
BIO_TYPE_MEM,
@ -467,4 +468,5 @@ NodeBIO::~NodeBIO() {
write_head_ = nullptr;
}
} // namespace crypto
} // namespace node

2
src/node_crypto_bio.h

@ -11,6 +11,7 @@
#include "v8.h"
namespace node {
namespace crypto {
class NodeBIO {
public:
@ -135,6 +136,7 @@ class NodeBIO {
Buffer* write_head_;
};
} // namespace crypto
} // namespace node
#endif // defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS

2
src/node_crypto_clienthello-inl.h

@ -7,6 +7,7 @@
#include "util-inl.h"
namespace node {
namespace crypto {
inline void ClientHelloParser::Reset() {
frame_len_ = 0;
@ -53,6 +54,7 @@ inline bool ClientHelloParser::IsPaused() const {
return state_ == kPaused;
}
} // namespace crypto
} // namespace node
#endif // defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS

2
src/node_crypto_clienthello.cc

@ -2,6 +2,7 @@
#include "node_crypto_clienthello-inl.h"
namespace node {
namespace crypto {
void ClientHelloParser::Parse(const uint8_t* data, size_t avail) {
switch (state_) {
@ -223,4 +224,5 @@ bool ClientHelloParser::ParseTLSClientHello(const uint8_t* data, size_t avail) {
return true;
}
} // namespace crypto
} // namespace node

2
src/node_crypto_clienthello.h

@ -9,6 +9,7 @@
#include <stdlib.h> // nullptr
namespace node {
namespace crypto {
class ClientHelloParser {
public:
@ -112,6 +113,7 @@ class ClientHelloParser {
const uint8_t* tls_ticket_;
};
} // namespace crypto
} // namespace node
#endif // defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS

24
src/tls_wrap.cc

@ -117,10 +117,10 @@ void TLSWrap::NewSessionDoneCb() {
void TLSWrap::InitSSL() {
// Initialize SSL
enc_in_ = NodeBIO::New();
enc_out_ = NodeBIO::New();
NodeBIO::FromBIO(enc_in_)->AssignEnvironment(env());
NodeBIO::FromBIO(enc_out_)->AssignEnvironment(env());
enc_in_ = crypto::NodeBIO::New();
enc_out_ = crypto::NodeBIO::New();
crypto::NodeBIO::FromBIO(enc_in_)->AssignEnvironment(env());
crypto::NodeBIO::FromBIO(enc_out_)->AssignEnvironment(env());
SSL_set_bio(ssl_, enc_in_, enc_out_);
@ -149,7 +149,7 @@ void TLSWrap::InitSSL() {
SSL_set_accept_state(ssl_);
} else if (is_client()) {
// Enough space for server response (hello, cert)
NodeBIO::FromBIO(enc_in_)->set_initial(kInitialClientBufferLength);
crypto::NodeBIO::FromBIO(enc_in_)->set_initial(kInitialClientBufferLength);
SSL_set_connect_state(ssl_);
} else {
// Unexpected
@ -157,7 +157,7 @@ void TLSWrap::InitSSL() {
}
// Initialize ring for queud clear data
clear_in_ = new NodeBIO();
clear_in_ = new crypto::NodeBIO();
clear_in_->AssignEnvironment(env());
}
@ -289,7 +289,9 @@ void TLSWrap::EncOut() {
char* data[kSimultaneousBufferCount];
size_t size[arraysize(data)];
size_t count = arraysize(data);
write_size_ = NodeBIO::FromBIO(enc_out_)->PeekMultiple(data, size, &count);
write_size_ = crypto::NodeBIO::FromBIO(enc_out_)->PeekMultiple(data,
size,
&count);
CHECK(write_size_ != 0 && count != 0);
Local<Object> req_wrap_obj =
@ -335,7 +337,7 @@ void TLSWrap::EncOutCb(WriteWrap* req_wrap, int status) {
}
// Commit
NodeBIO::FromBIO(wrap->enc_out_)->Read(nullptr, wrap->write_size_);
crypto::NodeBIO::FromBIO(wrap->enc_out_)->Read(nullptr, wrap->write_size_);
// Ensure that the progress will be made and `InvokeQueued` will be called.
wrap->ClearIn();
@ -653,7 +655,7 @@ void TLSWrap::OnAllocImpl(size_t suggested_size, uv_buf_t* buf, void* ctx) {
}
size_t size = 0;
buf->base = NodeBIO::FromBIO(wrap->enc_in_)->PeekWritable(&size);
buf->base = crypto::NodeBIO::FromBIO(wrap->enc_in_)->PeekWritable(&size);
buf->len = size;
}
@ -717,7 +719,7 @@ void TLSWrap::DoRead(ssize_t nread,
}
// Commit read data
NodeBIO* enc_in = NodeBIO::FromBIO(enc_in_);
crypto::NodeBIO* enc_in = crypto::NodeBIO::FromBIO(enc_in_);
enc_in->Commit(nread);
// Parse ClientHello first
@ -788,7 +790,7 @@ void TLSWrap::EnableSessionCallbacks(
"EnableSessionCallbacks after destroySSL");
}
wrap->enable_session_callbacks();
NodeBIO::FromBIO(wrap->enc_in_)->set_initial(kMaxHelloLength);
crypto::NodeBIO::FromBIO(wrap->enc_in_)->set_initial(kMaxHelloLength);
wrap->hello_parser_.Start(SSLWrap<TLSWrap>::OnClientHello,
OnClientHelloParseEnd,
wrap);

4
src/tls_wrap.h

@ -17,10 +17,10 @@
namespace node {
// Forward-declarations
class NodeBIO;
class WriteWrap;
namespace crypto {
class SecureContext;
class NodeBIO;
}
class TLSWrap : public AsyncWrap,
@ -151,7 +151,7 @@ class TLSWrap : public AsyncWrap,
StreamBase* stream_;
BIO* enc_in_;
BIO* enc_out_;
NodeBIO* clear_in_;
crypto::NodeBIO* clear_in_;
size_t write_size_;
typedef ListHead<WriteItem, &WriteItem::member_> WriteItemList;
WriteItemList write_item_queue_;

Loading…
Cancel
Save