More constexpr

This commit is contained in:
Tatsuhiro Tsujikawa
2015-05-29 22:31:02 +09:00
parent 7582640fd5
commit 34efc6b7a4
5 changed files with 13 additions and 12 deletions

View File

@@ -69,8 +69,9 @@
namespace nghttp2 { namespace nghttp2 {
namespace { namespace {
const std::string DEFAULT_HTML = "index.html"; // TODO could be constexpr
const std::string NGHTTPD_SERVER = "nghttpd nghttp2/" NGHTTP2_VERSION; constexpr char DEFAULT_HTML[] = "index.html";
constexpr char NGHTTPD_SERVER[] = "nghttpd nghttp2/" NGHTTP2_VERSION;
} // namespace } // namespace
namespace { namespace {
@@ -739,7 +740,7 @@ int Http2Handler::submit_file_response(const std::string &status,
std::string content_length = util::utos(file_length); std::string content_length = util::utos(file_length);
std::string last_modified_str; std::string last_modified_str;
auto nva = make_array(http2::make_nv_ls(":status", status), auto nva = make_array(http2::make_nv_ls(":status", status),
http2::make_nv_ls("server", NGHTTPD_SERVER), http2::make_nv_ll("server", NGHTTPD_SERVER),
http2::make_nv_ls("content-length", content_length), http2::make_nv_ls("content-length", content_length),
http2::make_nv_ll("cache-control", "max-age=3600"), http2::make_nv_ll("cache-control", "max-age=3600"),
http2::make_nv_ls("date", sessions_->get_cached_date()), http2::make_nv_ls("date", sessions_->get_cached_date()),
@@ -769,7 +770,7 @@ int Http2Handler::submit_response(const std::string &status, int32_t stream_id,
auto nva = std::vector<nghttp2_nv>(); auto nva = std::vector<nghttp2_nv>();
nva.reserve(3 + headers.size()); nva.reserve(3 + headers.size());
nva.push_back(http2::make_nv_ls(":status", status)); nva.push_back(http2::make_nv_ls(":status", status));
nva.push_back(http2::make_nv_ls("server", NGHTTPD_SERVER)); nva.push_back(http2::make_nv_ll("server", NGHTTPD_SERVER));
nva.push_back(http2::make_nv_ls("date", sessions_->get_cached_date())); nva.push_back(http2::make_nv_ls("date", sessions_->get_cached_date()));
for (auto &nv : headers) { for (auto &nv : headers) {
nva.push_back(http2::make_nv(nv.name, nv.value, nv.no_index)); nva.push_back(http2::make_nv(nv.name, nv.value, nv.no_index));
@@ -782,7 +783,7 @@ int Http2Handler::submit_response(const std::string &status, int32_t stream_id,
int Http2Handler::submit_response(const std::string &status, int32_t stream_id, int Http2Handler::submit_response(const std::string &status, int32_t stream_id,
nghttp2_data_provider *data_prd) { nghttp2_data_provider *data_prd) {
auto nva = make_array(http2::make_nv_ls(":status", status), auto nva = make_array(http2::make_nv_ls(":status", status),
http2::make_nv_ls("server", NGHTTPD_SERVER)); http2::make_nv_ll("server", NGHTTPD_SERVER));
return nghttp2_submit_response(session_, stream_id, nva.data(), nva.size(), return nghttp2_submit_response(session_, stream_id, nva.data(), nva.size(),
data_prd); data_prd);
} }

View File

@@ -109,7 +109,7 @@ nghttp2_nv make_nv(const std::string &name, const std::string &value,
// Create nghttp2_nv from string literal |name| and |value|. // Create nghttp2_nv from string literal |name| and |value|.
template <size_t N, size_t M> template <size_t N, size_t M>
nghttp2_nv make_nv_ll(const char (&name)[N], const char (&value)[M]) { constexpr nghttp2_nv make_nv_ll(const char (&name)[N], const char (&value)[M]) {
return {(uint8_t *)name, (uint8_t *)value, N - 1, M - 1, return {(uint8_t *)name, (uint8_t *)value, N - 1, M - 1,
NGHTTP2_NV_FLAG_NONE}; NGHTTP2_NV_FLAG_NONE};
} }

View File

@@ -89,7 +89,7 @@ enum {
}; };
namespace { namespace {
auto anchors = std::array<Anchor, 5>{{ constexpr auto anchors = std::array<Anchor, 5>{{
{3, 0, 201}, {5, 0, 101}, {7, 0, 1}, {9, 7, 1}, {11, 3, 1}, {3, 0, 201}, {5, 0, 101}, {7, 0, 1}, {9, 7, 1}, {11, 3, 1},
}}; }};
} // namespace } // namespace

View File

@@ -59,7 +59,7 @@ class CertLookupTree;
} // namespace ssl } // namespace ssl
#define SHRPX_UNIX_PATH_PREFIX "unix:" constexpr char SHRPX_UNIX_PATH_PREFIX[] = "unix:";
extern const char SHRPX_OPT_PRIVATE_KEY_FILE[]; extern const char SHRPX_OPT_PRIVATE_KEY_FILE[];
extern const char SHRPX_OPT_PRIVATE_KEY_PASSWD_FILE[]; extern const char SHRPX_OPT_PRIVATE_KEY_PASSWD_FILE[];

View File

@@ -298,10 +298,10 @@ int alpn_select_proto_cb(SSL *ssl, const unsigned char **out,
#endif // OPENSSL_VERSION_NUMBER >= 0x10002000L #endif // OPENSSL_VERSION_NUMBER >= 0x10002000L
namespace { namespace {
const char *tls_names[] = {"TLSv1.2", "TLSv1.1", "TLSv1.0"}; constexpr const char *tls_names[] = {"TLSv1.2", "TLSv1.1", "TLSv1.0"};
const size_t tls_namelen = array_size(tls_names); constexpr size_t tls_namelen = array_size(tls_names);
const long int tls_masks[] = {SSL_OP_NO_TLSv1_2, SSL_OP_NO_TLSv1_1, constexpr long int tls_masks[] = {SSL_OP_NO_TLSv1_2, SSL_OP_NO_TLSv1_1,
SSL_OP_NO_TLSv1}; SSL_OP_NO_TLSv1};
} // namespace } // namespace
long int create_tls_proto_mask(const std::vector<char *> &tls_proto_list) { long int create_tls_proto_mask(const std::vector<char *> &tls_proto_list) {