DevTools - network - implement the secureConnectionStart property for the PerformanceTiming

https://github.com/MoonchildProductions/moebius/pull/116
("/testing" and "/toolkit" in in the previous commit)
This commit is contained in:
janekptacijarabaci 2018-03-01 11:52:50 +01:00 committed by Roy Tam
commit 54f2e6eafd
32 changed files with 263 additions and 13 deletions

View file

@ -623,6 +623,14 @@ nsHttpTransaction::OnTransportStatus(nsITransport* transport,
} else if (status == NS_NET_STATUS_CONNECTED_TO) {
SetConnectEnd(TimeStamp::Now(), true);
} else if (status == NS_NET_STATUS_TLS_HANDSHAKE_ENDED) {
{
// before overwriting connectEnd, copy it to secureConnectionStart
MutexAutoLock lock(mLock);
if (mTimings.secureConnectionStart.IsNull() &&
!mTimings.connectEnd.IsNull()) {
mTimings.secureConnectionStart = mTimings.connectEnd;
}
}
SetConnectEnd(TimeStamp::Now(), false);
}
}
@ -2135,6 +2143,13 @@ nsHttpTransaction::Timings()
return timings;
}
void
nsHttpTransaction::BootstrapTimings(TimingStruct times)
{
mozilla::MutexAutoLock lock(mLock);
mTimings = times;
}
void
nsHttpTransaction::SetDomainLookupStart(mozilla::TimeStamp timeStamp, bool onlyIfNull)
{
@ -2226,6 +2241,13 @@ nsHttpTransaction::GetConnectStart()
return mTimings.connectStart;
}
mozilla::TimeStamp
nsHttpTransaction::GetSecureConnectionStart()
{
mozilla::MutexAutoLock lock(mLock);
return mTimings.secureConnectionStart;
}
mozilla::TimeStamp
nsHttpTransaction::GetConnectEnd()
{