shrpx: Replace strncpy + putting null with memcpy in ssl_pem_passwd_cb

This commit is contained in:
Tatsuhiro Tsujikawa 2012-12-07 23:42:58 +09:00
parent 06220f7fdf
commit 65e965791f
1 changed files with 5 additions and 6 deletions

View File

@ -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()
{ {