Source code

Revision control

Other Tools

1
/* This Source Code Form is subject to the terms of the Mozilla Public
2
* License, v. 2.0. If a copy of the MPL was not distributed with this
3
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
4
5
#ifndef mozilla_net_DashboardTypes_h_
6
#define mozilla_net_DashboardTypes_h_
7
8
#include "nsHttp.h"
9
#include "nsString.h"
10
#include "nsTArray.h"
11
12
namespace mozilla {
13
namespace net {
14
15
struct SocketInfo {
16
nsCString host;
17
uint64_t sent;
18
uint64_t received;
19
uint16_t port;
20
bool active;
21
bool tcp;
22
};
23
24
struct HalfOpenSockets {
25
bool speculative;
26
};
27
28
struct DNSCacheEntries {
29
nsCString hostname;
30
nsTArray<nsCString> hostaddr;
31
uint16_t family;
32
int64_t expiration;
33
nsCString netInterface;
34
bool TRR;
35
};
36
37
struct HttpConnInfo {
38
uint32_t ttl;
39
uint32_t rtt;
40
nsString protocolVersion;
41
42
void SetHTTP1ProtocolVersion(HttpVersion pv);
43
void SetHTTP2ProtocolVersion(SpdyVersion pv);
44
};
45
46
struct HttpRetParams {
47
nsCString host;
48
nsTArray<HttpConnInfo> active;
49
nsTArray<HttpConnInfo> idle;
50
nsTArray<HalfOpenSockets> halfOpens;
51
uint32_t counter;
52
uint16_t port;
53
bool spdy;
54
bool ssl;
55
};
56
57
} // namespace net
58
} // namespace mozilla
59
60
#endif // mozilla_net_DashboardTypes_h_