MCPcopy Create free account
hub / github.com/OpenVPN/openvpn3-linux / QueueCheckTypeGroup

Method QueueCheckTypeGroup

src/common/requiresqueue.cpp:379–409  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

377
378
379std::vector<RequiresQueue::ClientAttTypeGroup> RequiresQueue::QueueCheckTypeGroup() const noexcept
380{
381 std::vector<RequiresQueue::ClientAttTypeGroup> ret;
382
383 for (auto &e : slots)
384 {
385 if (!e.provided)
386 {
387 // Check if we've already spotted this type/group
388 bool found = false;
389 for (auto &r : ret)
390 {
391 ClientAttentionType t;
392 ClientAttentionGroup g;
393 std::tie(t, g) = r;
394 if (t == e.type && g == e.group)
395 {
396 // yes, we have
397 found = true;
398 break;
399 }
400 }
401 if (!found)
402 {
403 ret.push_back(std::make_tuple(e.type, e.group));
404 }
405 }
406 }
407 callbacks.RunCallback(CallbackType::CHECK_TYPE_GROUP);
408 return ret;
409}
410
411
412GVariant *RequiresQueue::QueueCheckTypeGroupGVariant() const noexcept

Callers 5

query_user_inputFunction · 0.45
selftestFunction · 0.45
mainFunction · 0.45
mainFunction · 0.45
mainFunction · 0.45

Calls 1

RunCallbackMethod · 0.80

Tested by 4

selftestFunction · 0.36
mainFunction · 0.36
mainFunction · 0.36
mainFunction · 0.36