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

Function transactionContFunc

tests/tools/plugins/test_hooks.cc:55–94  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

53TSHttpTxn activeTxn;
54
55int
56transactionContFunc(TSCont, TSEvent event, void *eventData)
57{
58 logFile << "Transaction: event=" << TSHttpEventNameLookup(event) << std::endl;
59
60 Dbg(dbg_ctl, "Transaction: event=%s(%d) eventData=%p", TSHttpEventNameLookup(event), event, eventData);
61
62 switch (event) {
63 case TS_EVENT_HTTP_TXN_CLOSE: {
64 auto txn = static_cast<TSHttpTxn>(eventData);
65
66 Dbg(dbg_ctl, "Transaction: ssn=%p", TSHttpTxnSsnGet(txn));
67
68 // Don't assume any order of continuation execution on the same hook.
69 ALWAYS_ASSERT((txn == activeTxn) or !activeTxn)
70
71 ALWAYS_ASSERT(TSHttpTxnSsnGet(txn) == activeSsn)
72
73 TSHttpTxnReenable(txn, TS_EVENT_HTTP_CONTINUE);
74 } break;
75
76 case TS_EVENT_HTTP_READ_REQUEST_HDR: {
77 auto txn = static_cast<TSHttpTxn>(eventData);
78
79 Dbg(dbg_ctl, "Transaction: ssn=%p", TSHttpTxnSsnGet(txn));
80
81 ALWAYS_ASSERT(txn == activeTxn)
82 ALWAYS_ASSERT(TSHttpTxnSsnGet(txn) == activeSsn)
83
84 TSHttpTxnReenable(txn, TS_EVENT_HTTP_CONTINUE);
85 } break;
86
87 default: {
88 ALWAYS_ASSERT(false)
89 } break;
90
91 } // end switch
92
93 return 0;
94}
95
96TSCont tCont;
97

Callers

nothing calls this directly

Calls 3

TSHttpEventNameLookupFunction · 0.85
TSHttpTxnSsnGetFunction · 0.85
TSHttpTxnReenableFunction · 0.85

Tested by

no test coverage detected