MCPcopy Create free account
hub / github.com/apache/trafficserver / setKeyTime

Method setKeyTime

plugins/slice/HttpHeader.cc:259–286  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

257}
258
259bool
260HttpHeader::setKeyTime(char const *const keystr, int const keylen, time_t const timeval)
261{
262 if (!isValid()) {
263 return false;
264 }
265
266 bool status(false);
267
268 TSMLoc locfield(TSMimeHdrFieldFind(m_buffer, m_lochdr, keystr, keylen));
269
270 if (nullptr == locfield) {
271 DEBUG_LOG("Creating header %.*s", keylen, keystr);
272 TSMimeHdrFieldCreateNamed(m_buffer, m_lochdr, keystr, keylen, &locfield);
273 }
274
275 if (nullptr != locfield) {
276 if (TS_SUCCESS == TSMimeHdrFieldValueDateSet(m_buffer, m_lochdr, locfield, timeval)) {
277 if (TS_SUCCESS == TSMimeHdrFieldAppend(m_buffer, m_lochdr, locfield)) {
278 status = true;
279 DEBUG_LOG("Set header %.*s to %jd", keylen, keystr, static_cast<intmax_t>(timeval));
280 }
281 }
282 TSHandleMLocRelease(m_buffer, m_lochdr, locfield);
283 }
284
285 return status;
286}
287
288std::string
289HttpHeader::toString() const

Callers 1

handleNextServerHeaderFunction · 0.80

Calls 5

TSMimeHdrFieldFindFunction · 0.85
TSMimeHdrFieldAppendFunction · 0.85
TSHandleMLocReleaseFunction · 0.85

Tested by

no test coverage detected