mirror of
https://github.com/nghttp2/nghttp2.git
synced 2025-12-08 11:08:52 +08:00
shrpx: Replace strncpy + putting null with memcpy in ssl_pem_passwd_cb
This commit is contained in:
@@ -91,8 +91,8 @@ void set_npn_prefs(unsigned char *out, const char **protos, size_t len)
|
|||||||
}
|
}
|
||||||
} // namespace
|
} // namespace
|
||||||
|
|
||||||
|
namespace {
|
||||||
static int ssl_pem_passwd_cb(char *buf, int size, int rwflag, void *user_data)
|
int ssl_pem_passwd_cb(char *buf, int size, int rwflag, void *user_data)
|
||||||
{
|
{
|
||||||
Config *config = (Config *)user_data;
|
Config *config = (Config *)user_data;
|
||||||
int len = (int)strlen(config->private_key_passwd);
|
int len = (int)strlen(config->private_key_passwd);
|
||||||
@@ -100,12 +100,11 @@ static int ssl_pem_passwd_cb(char *buf, int size, int rwflag, void *user_data)
|
|||||||
LOG(ERROR) << "ssl_pem_passwd_cb: buf is too small " << size;
|
LOG(ERROR) << "ssl_pem_passwd_cb: buf is too small " << size;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
// Copy string including last '\0'.
|
||||||
strncpy(buf, config->private_key_passwd, len);
|
memcpy(buf, config->private_key_passwd, len+1);
|
||||||
buf[len] = '\0';
|
|
||||||
return len;
|
return len;
|
||||||
}
|
}
|
||||||
|
} // namespace
|
||||||
|
|
||||||
SSL_CTX* create_ssl_context()
|
SSL_CTX* create_ssl_context()
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user