1 # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
2 # vim: set filetype=python:
3 # This Source Code Form is subject to the terms of the Mozilla Public
4 # License, v. 2.0. If a copy of the MPL was not distributed with this
5 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 BUG_COMPONENT = ("Core", "Networking: HTTP")
11 "nsIBackgroundChannelRegistrar.idl",
13 "nsIEarlyHintObserver.idl",
14 "nsIHttpActivityObserver.idl",
15 "nsIHttpAuthenticableChannel.idl",
16 "nsIHttpAuthenticator.idl",
17 "nsIHttpAuthManager.idl",
19 "nsIHttpChannelAuthProvider.idl",
20 "nsIHttpChannelChild.idl",
21 "nsIHttpChannelInternal.idl",
22 "nsIHttpHeaderVisitor.idl",
23 "nsIHttpProtocolHandler.idl",
24 "nsINetworkErrorLogging.idl",
25 "nsIObliviousHttp.idl",
26 "nsIObliviousHttpChannel.idl",
27 "nsIRaceCacheWithNetwork.idl",
28 "nsIReplacedHttpResponse.idl",
29 "nsITlsHandshakeListener.idl",
30 "nsIWellKnownOpportunisticUtils.idl",
33 XPIDL_MODULE = "necko_http"
36 "nsCORSListenerProxy.h",
39 "nsHttpHeaderArray.h",
40 "nsHttpRequestHead.h",
41 "nsHttpResponseHead.h",
44 EXPORTS.mozilla.net += [
45 "AltDataOutputStreamChild.h",
46 "AltDataOutputStreamParent.h",
49 "AltSvcTransactionChild.h",
50 "AltSvcTransactionParent.h",
51 "BackgroundChannelRegistrar.h",
52 "BackgroundDataBridgeChild.h",
53 "BackgroundDataBridgeParent.h",
55 "EarlyHintPreloader.h",
56 "EarlyHintRegistrar.h",
57 "EarlyHintsService.h",
59 "HttpBackgroundChannelChild.h",
60 "HttpBackgroundChannelParent.h",
63 "HttpChannelParent.h",
64 "HttpConnectionMgrChild.h",
65 "HttpConnectionMgrParent.h",
66 "HttpConnectionMgrShell.h",
68 "HttpTransactionChild.h",
69 "HttpTransactionParent.h",
70 "HttpTransactionShell.h",
71 "nsAHttpTransaction.h",
74 "NullHttpTransaction.h",
75 "OpaqueResponseUtils.h",
76 "ParentChannelListener.h",
77 "PHttpChannelParams.h",
79 "ReplacedHttpResponse.h",
80 "SpeculativeTransaction.h",
85 "nsHttpChannelAuthProvider.cpp", # redefines GetAuthType
89 "AltDataOutputStreamChild.cpp",
90 "AltDataOutputStreamParent.cpp",
91 "AlternateServices.cpp",
92 "AltServiceChild.cpp",
93 "AltServiceParent.cpp",
94 "AltSvcTransactionChild.cpp",
95 "AltSvcTransactionParent.cpp",
97 "BackgroundChannelRegistrar.cpp",
98 "BackgroundDataBridgeChild.cpp",
99 "BackgroundDataBridgeParent.cpp",
100 "BinaryHttpRequest.cpp",
101 "CacheControlParser.cpp",
102 "CachePushChecker.cpp",
103 "ConnectionDiagnostics.cpp",
104 "ConnectionEntry.cpp",
105 "ConnectionHandle.cpp",
106 "DnsAndConnectSocket.cpp",
107 "EarlyHintPreconnect.cpp",
108 "EarlyHintPreloader.cpp",
109 "EarlyHintRegistrar.cpp",
110 "EarlyHintsService.cpp",
111 "Http2Compression.cpp",
115 "Http2StreamBase.cpp",
116 "Http2StreamTunnel.cpp",
119 "Http3WebTransportSession.cpp",
120 "Http3WebTransportStream.cpp",
122 "HttpBackgroundChannelChild.cpp",
123 "HttpBackgroundChannelParent.cpp",
124 "HttpBaseChannel.cpp",
125 "HttpChannelChild.cpp",
126 "HttpChannelParent.cpp",
127 "HttpConnectionBase.cpp",
128 "HttpConnectionMgrChild.cpp",
129 "HttpConnectionMgrParent.cpp",
130 "HttpConnectionUDP.cpp",
132 "HTTPSRecordResolver.cpp",
133 "HttpTrafficAnalyzer.cpp",
134 "HttpTransactionChild.cpp",
135 "HttpTransactionParent.cpp",
136 "InterceptedHttpChannel.cpp",
139 "nsCORSListenerProxy.cpp",
141 "nsHttpActivityDistributor.cpp",
142 "nsHttpAuthCache.cpp",
143 "nsHttpAuthManager.cpp",
144 "nsHttpBasicAuth.cpp",
146 "nsHttpChunkedDecoder.cpp",
147 "nsHttpConnection.cpp",
148 "nsHttpConnectionInfo.cpp",
149 "nsHttpConnectionMgr.cpp",
150 "nsHttpDigestAuth.cpp",
151 "nsHttpHeaderArray.cpp",
152 "nsHttpNTLMAuth.cpp",
153 "nsHttpRequestHead.cpp",
154 "nsHttpResponseHead.cpp",
155 "nsHttpTransaction.cpp",
156 "nsServerTiming.cpp",
157 "NullHttpChannel.cpp",
158 "NullHttpTransaction.cpp",
159 "ObliviousHttpChannel.cpp",
160 "ObliviousHttpService.cpp",
161 "OpaqueResponseUtils.cpp",
162 "ParentChannelListener.cpp",
163 "PendingTransactionInfo.cpp",
164 "PendingTransactionQueue.cpp",
165 "QuicSocketControl.cpp",
166 "ReplacedHttpResponse.cpp",
167 "SpeculativeTransaction.cpp",
169 "TLSTransportLayer.cpp",
170 "TRRServiceChannel.cpp",
171 "WebTransportCertificateVerifier.cpp",
174 if CONFIG["MOZ_WIDGET_TOOLKIT"] == "windows":
179 if CONFIG["TARGET_OS"] == "OSX":
181 "MicrosoftEntraSSOUtils.mm",
184 "-framework AuthenticationServices",
187 # These files cannot be built in unified mode because of OS X headers.
193 "HttpChannelParams.ipdlh",
194 "PAltDataOutputStream.ipdl",
196 "PAltSvcTransaction.ipdl",
197 "PBackgroundDataBridge.ipdl",
198 "PHttpBackgroundChannel.ipdl",
200 "PHttpConnectionMgr.ipdl",
201 "PHttpTransaction.ipdl",
204 include("/ipc/chromium/chromium-config.mozbuild")
206 FINAL_LIBRARY = "xul"
214 "/netwerk/socket/neqo_glue",
215 "/netwerk/url-classifier",
218 DEFINES["MOZ_APP_UA_NAME"] = f'"{CONFIG["MOZ_APP_UA_NAME"]}"'
220 if CONFIG["MOZ_AUTH_EXTENSION"]:
225 EXTRA_JS_MODULES += [
226 "HPKEConfigManager.sys.mjs",
227 "NetworkErrorLogging.sys.mjs",
228 "WellKnownOpportunisticUtils.sys.mjs",
235 include("/tools/fuzzing/libfuzzer-config.mozbuild")