AppId AppIdSession::pick_ss_misc_app_id() const
{
- if (api.service.get_id() == APP_ID_HTTP2 or api.service.get_id() == APP_ID_HTTP3)
+ if (api.service.get_id() == APP_ID_HTTP2 or
+ (api.service.get_id() == APP_ID_HTTP3 and !api.hsessions.empty()))
return APP_ID_NONE;
if (misc_app_id > APP_ID_NONE)
AppId AppIdSession::pick_ss_client_app_id() const
{
- if (api.service.get_id() == APP_ID_HTTP2 or api.service.get_id() == APP_ID_HTTP3)
+ if (api.service.get_id() == APP_ID_HTTP2 or
+ (api.service.get_id() == APP_ID_HTTP3 and !api.hsessions.empty()))
return APP_ID_NONE;
AppId tmp_id = APP_ID_NONE;
AppId AppIdSession::pick_ss_payload_app_id(AppId service_id) const
{
- if (service_id == APP_ID_HTTP2 or service_id == APP_ID_HTTP3)
+ if (service_id == APP_ID_HTTP2 or
+ (service_id == APP_ID_HTTP3 and !api.hsessions.empty()))
return APP_ID_NONE;
if (tp_payload_app_id_deferred)
AppId service_id = session->get_api().get_service_app_id();
OdpContext& odp_ctxt = session->get_odp_ctxt();
- if (service_id != APP_ID_HTTP2 and service_id != APP_ID_HTTP3)
+ if ((service_id != APP_ID_HTTP2 and service_id != APP_ID_HTTP3) or
+ (service_id == APP_ID_HTTP3 and session->get_api().get_hsessions_size() == 0))
{
AppId app_ids[APP_PROTOID_MAX];