Replies: 2 comments
-
It doesn't address your questions directly, but if you haven't already read through the doc on updating OpenSSL in the source, it might provide some hints. And if it doesn't help, it's at least short so shouldn't be a big waste of your time. |
Beta Was this translation helpful? Give feedback.
0 replies
-
@nodejs/crypto |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Hi, sorry for the noise, but I am trying to figure out how openssl is integrated into Node.js
Looking at the source code, I see crypto_tls.cc and friends are obvious starters, but I am getting lost in the forest. Specifically, I am getting lost in the NodeJS specific wrappers (e.g. NodeBIO). The NodeJS abstraction layers are thus far a bit of a stumbling block in my comprehension efforts.
Is there a kind soul somewhere that can point me to a birds eye view of how/what parts of openssl work in Node.js?
e.g. here are some of my (admittedly random) questions.
void TcpHolder::OnDataReceivedCb(uv_stream_t* tcp, ssize_t nread,
const uv_buf_t* buf) {
TcpHolder* holder = From(tcp);
holder->ReclaimUvBuf(buf, nread);
if (nread < 0 || nread == UV_EOF) {
holder->handler_->OnEof();
} else {
holder->handler_->OnData(&holder->buffer);
}
}
So holder->handler->OnData .. .where is this redirection set up? And how is node.js working at all with libuv and openssl?
Is there a picture somewhere which describes the overall framework pattern in NodeJS (and how openssl plugs in with libuv's nonblocking io (apparently) without setting SSL_MODE_ASYNC flag anywhere.... ??
Confusion abound.
Please help!
Thank you
-Jason
Beta Was this translation helpful? Give feedback.
All reactions