/src/mozilla-central/netwerk/build/nsNetModule.cpp
Line | Count | Source (jump to first uncovered line) |
1 | | /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ |
2 | | /* vim: set sw=4 ts=8 et tw=80 : */ |
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/. */ |
6 | | |
7 | | #include "necko-config.h" |
8 | | |
9 | | #define ALLOW_LATE_HTTPLOG_H_INCLUDE 1 |
10 | | #include "base/basictypes.h" |
11 | | |
12 | | #include "nsCOMPtr.h" |
13 | | #include "nsIClassInfoImpl.h" |
14 | | #include "mozilla/ModuleUtils.h" |
15 | | #include "nsIComponentManager.h" |
16 | | #include "nsIServiceManager.h" |
17 | | #include "nsICategoryManager.h" |
18 | | #include "nsSocketProviderService.h" |
19 | | #include "nscore.h" |
20 | | #include "nsSimpleURI.h" |
21 | | #include "nsSimpleNestedURI.h" |
22 | | #include "nsLoadGroup.h" |
23 | | #include "nsStreamLoader.h" |
24 | | #include "nsIncrementalStreamLoader.h" |
25 | | #include "nsFileStreams.h" |
26 | | #include "nsBufferedStreams.h" |
27 | | #include "nsMIMEInputStream.h" |
28 | | #include "nsSOCKSSocketProvider.h" |
29 | | #include "nsCacheService.h" |
30 | | #include "nsDiskCacheDeviceSQL.h" |
31 | | #include "nsApplicationCacheService.h" |
32 | | #include "nsMimeTypes.h" |
33 | | #include "nsDNSPrefetch.h" |
34 | | #include "nsAboutProtocolHandler.h" |
35 | | #include "nsXULAppAPI.h" |
36 | | #include "nsCategoryCache.h" |
37 | | #include "nsIContentSniffer.h" |
38 | | #include "Predictor.h" |
39 | | #include "nsIThreadPool.h" |
40 | | #include "mozilla/net/NeckoChild.h" |
41 | | #include "RedirectChannelRegistrar.h" |
42 | | |
43 | | #include "nsNetCID.h" |
44 | | |
45 | | #if defined(XP_MACOSX) || defined(XP_WIN) || defined(XP_LINUX) |
46 | | #define BUILD_NETWORK_INFO_SERVICE 1 |
47 | | #endif |
48 | | |
49 | | typedef nsCategoryCache<nsIContentSniffer> ContentSnifferCache; |
50 | | ContentSnifferCache* gNetSniffers = nullptr; |
51 | | ContentSnifferCache* gDataSniffers = nullptr; |
52 | | |
53 | | /////////////////////////////////////////////////////////////////////////////// |
54 | | |
55 | | #include "nsIOService.h" |
56 | | typedef mozilla::net::nsIOService nsIOService; |
57 | | NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR(nsIOService, nsIOService::GetInstance) |
58 | | |
59 | | #include "nsDNSService2.h" |
60 | | NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR(nsIDNSService, |
61 | | nsDNSService::GetXPCOMSingleton) |
62 | | |
63 | | #include "nsProtocolProxyService.h" |
64 | | typedef mozilla::net::nsProtocolProxyService nsProtocolProxyService; |
65 | | NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsProtocolProxyService, Init) |
66 | | |
67 | | #include "nsStreamTransportService.h" |
68 | | typedef mozilla::net::nsStreamTransportService nsStreamTransportService; |
69 | | NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsStreamTransportService, Init) |
70 | | |
71 | | #include "nsSocketTransportService2.h" |
72 | | typedef mozilla::net::nsSocketTransportService nsSocketTransportService; |
73 | | #undef LOG |
74 | | #undef LOG_ENABLED |
75 | | NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsSocketTransportService, Init) |
76 | | |
77 | | #include "nsServerSocket.h" |
78 | | typedef mozilla::net::nsServerSocket nsServerSocket; |
79 | | NS_GENERIC_FACTORY_CONSTRUCTOR(nsServerSocket) |
80 | | |
81 | | #include "TLSServerSocket.h" |
82 | | typedef mozilla::net::TLSServerSocket TLSServerSocket; |
83 | | NS_GENERIC_FACTORY_CONSTRUCTOR(TLSServerSocket) |
84 | | |
85 | | #include "nsUDPSocket.h" |
86 | | typedef mozilla::net::nsUDPSocket nsUDPSocket; |
87 | | NS_GENERIC_FACTORY_CONSTRUCTOR(nsUDPSocket) |
88 | | |
89 | | #include "nsUDPSocketProvider.h" |
90 | | NS_GENERIC_FACTORY_CONSTRUCTOR(nsUDPSocketProvider) |
91 | | |
92 | | #include "nsAsyncStreamCopier.h" |
93 | | NS_GENERIC_FACTORY_CONSTRUCTOR(nsAsyncStreamCopier) |
94 | | |
95 | | #include "nsInputStreamPump.h" |
96 | | NS_GENERIC_FACTORY_CONSTRUCTOR(nsInputStreamPump) |
97 | | |
98 | | #include "nsInputStreamChannel.h" |
99 | | typedef mozilla::net::nsInputStreamChannel nsInputStreamChannel; |
100 | | NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsInputStreamChannel, Init) |
101 | | |
102 | | #include "nsDownloader.h" |
103 | | NS_GENERIC_FACTORY_CONSTRUCTOR(nsDownloader) |
104 | | |
105 | | #include "BackgroundFileSaver.h" |
106 | | namespace mozilla { |
107 | | namespace net { |
108 | | NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(BackgroundFileSaverOutputStream, Init) |
109 | | NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(BackgroundFileSaverStreamListener, Init) |
110 | | } // namespace net |
111 | | } // namespace mozilla |
112 | | |
113 | | #include "nsSyncStreamListener.h" |
114 | | NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsSyncStreamListener, Init) |
115 | | |
116 | | NS_GENERIC_FACTORY_CONSTRUCTOR(nsAtomicFileOutputStream) |
117 | | |
118 | | NS_GENERIC_FACTORY_CONSTRUCTOR(nsSafeFileOutputStream) |
119 | | |
120 | | typedef mozilla::net::nsLoadGroup nsLoadGroup; |
121 | | NS_GENERIC_AGGREGATED_CONSTRUCTOR_INIT(nsLoadGroup, Init) |
122 | | |
123 | | #include "ArrayBufferInputStream.h" |
124 | | NS_GENERIC_FACTORY_CONSTRUCTOR(ArrayBufferInputStream) |
125 | | |
126 | | #include "nsEffectiveTLDService.h" |
127 | | NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsEffectiveTLDService, Init) |
128 | | |
129 | | #include "nsSerializationHelper.h" |
130 | | NS_GENERIC_FACTORY_CONSTRUCTOR(nsSerializationHelper) |
131 | | |
132 | | #include "CacheStorageService.h" |
133 | | typedef mozilla::net::CacheStorageService CacheStorageService; |
134 | | NS_GENERIC_FACTORY_CONSTRUCTOR(CacheStorageService) |
135 | | |
136 | | #include "LoadContextInfo.h" |
137 | | typedef mozilla::net::LoadContextInfoFactory LoadContextInfoFactory; |
138 | | NS_GENERIC_FACTORY_CONSTRUCTOR(LoadContextInfoFactory) |
139 | | |
140 | | /////////////////////////////////////////////////////////////////////////////// |
141 | | |
142 | | #include "mozilla/net/CaptivePortalService.h" |
143 | | namespace mozilla { |
144 | | namespace net { |
145 | | NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR(nsICaptivePortalService, |
146 | | CaptivePortalService::GetSingleton) |
147 | | } // namespace net |
148 | | } // namespace mozilla |
149 | | |
150 | | #include "RequestContextService.h" |
151 | | typedef mozilla::net::RequestContextService RequestContextService; |
152 | | NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(RequestContextService, Init) |
153 | | |
154 | | /////////////////////////////////////////////////////////////////////////////// |
155 | | |
156 | | extern nsresult |
157 | | net_NewIncrementalDownload(nsISupports *, const nsIID &, void **); |
158 | | |
159 | | #define NS_INCREMENTALDOWNLOAD_CID \ |
160 | | { /* a62af1ba-79b3-4896-8aaf-b148bfce4280 */ \ |
161 | | 0xa62af1ba, \ |
162 | | 0x79b3, \ |
163 | | 0x4896, \ |
164 | | {0x8a, 0xaf, 0xb1, 0x48, 0xbf, 0xce, 0x42, 0x80} \ |
165 | | } |
166 | | |
167 | | /////////////////////////////////////////////////////////////////////////////// |
168 | | |
169 | | #include "nsMIMEHeaderParamImpl.h" |
170 | | |
171 | | NS_GENERIC_FACTORY_CONSTRUCTOR(nsMIMEHeaderParamImpl) |
172 | | /////////////////////////////////////////////////////////////////////////////// |
173 | | |
174 | | #include "nsRequestObserverProxy.h" |
175 | | #include "nsSimpleStreamListener.h" |
176 | | |
177 | | typedef mozilla::net::nsRequestObserverProxy nsRequestObserverProxy; |
178 | | NS_GENERIC_FACTORY_CONSTRUCTOR(nsRequestObserverProxy) |
179 | | typedef mozilla::net::nsSimpleStreamListener nsSimpleStreamListener; |
180 | | NS_GENERIC_FACTORY_CONSTRUCTOR(nsSimpleStreamListener) |
181 | | |
182 | | /////////////////////////////////////////////////////////////////////////////// |
183 | | |
184 | | #include "nsStreamListenerTee.h" |
185 | | typedef mozilla::net::nsStreamListenerTee nsStreamListenerTee; |
186 | | NS_GENERIC_FACTORY_CONSTRUCTOR(nsStreamListenerTee) |
187 | | |
188 | | /////////////////////////////////////////////////////////////////////////////// |
189 | | |
190 | | #ifdef NECKO_COOKIES |
191 | | #include "nsCookieService.h" |
192 | | NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR(nsICookieService, |
193 | | nsCookieService::GetXPCOMSingleton) |
194 | | #endif |
195 | | |
196 | | /////////////////////////////////////////////////////////////////////////////// |
197 | | #ifdef NECKO_WIFI |
198 | | |
199 | | #include "nsWifiMonitor.h" |
200 | | #undef LOG |
201 | | #undef LOG_ENABLED |
202 | | NS_GENERIC_FACTORY_CONSTRUCTOR(nsWifiMonitor) |
203 | | |
204 | | #endif |
205 | | |
206 | | /////////////////////////////////////////////////////////////////////////////// |
207 | | // protocols |
208 | | /////////////////////////////////////////////////////////////////////////////// |
209 | | |
210 | | // about:blank is mandatory |
211 | | #include "nsAboutProtocolHandler.h" |
212 | | #include "nsAboutBlank.h" |
213 | | typedef mozilla::net::nsAboutProtocolHandler nsAboutProtocolHandler; |
214 | | typedef mozilla::net::nsSafeAboutProtocolHandler nsSafeAboutProtocolHandler; |
215 | | typedef mozilla::net::nsNestedAboutURI::Mutator nsNestedAboutURIMutator; |
216 | | NS_GENERIC_FACTORY_CONSTRUCTOR(nsAboutProtocolHandler) |
217 | | NS_GENERIC_FACTORY_CONSTRUCTOR(nsSafeAboutProtocolHandler) |
218 | | NS_GENERIC_FACTORY_CONSTRUCTOR(nsNestedAboutURIMutator) |
219 | | |
220 | | // about |
221 | | #include "nsAboutCache.h" |
222 | | #include "nsAboutCacheEntry.h" |
223 | | NS_GENERIC_FACTORY_CONSTRUCTOR(nsAboutCacheEntry) |
224 | | |
225 | | NS_GENERIC_FACTORY_CONSTRUCTOR(nsApplicationCacheService) |
226 | | |
227 | | // file |
228 | | #include "nsFileProtocolHandler.h" |
229 | | NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsFileProtocolHandler, Init) |
230 | | |
231 | | // ftp |
232 | | #include "nsFtpProtocolHandler.h" |
233 | | NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsFtpProtocolHandler, Init) |
234 | | |
235 | | // http/https |
236 | | #include "nsHttpHandler.h" |
237 | | #include "Http2Compression.h" |
238 | | #undef LOG |
239 | | #undef LOG_ENABLED |
240 | | #include "nsHttpAuthManager.h" |
241 | | #include "nsHttpBasicAuth.h" |
242 | | #include "nsHttpDigestAuth.h" |
243 | | #include "nsHttpNTLMAuth.h" |
244 | | #include "nsHttpActivityDistributor.h" |
245 | | #include "ThrottleQueue.h" |
246 | | #include "BackgroundChannelRegistrar.h" |
247 | | #undef LOG |
248 | | #undef LOG_ENABLED |
249 | | namespace mozilla { |
250 | | namespace net { |
251 | | NS_GENERIC_FACTORY_CONSTRUCTOR(nsHttpNTLMAuth) |
252 | | NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR(nsHttpHandler, nsHttpHandler::GetInstance) |
253 | | NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsHttpsHandler, Init) |
254 | | NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsHttpAuthManager, Init) |
255 | | NS_GENERIC_FACTORY_CONSTRUCTOR(nsHttpActivityDistributor) |
256 | | NS_GENERIC_FACTORY_CONSTRUCTOR(nsHttpBasicAuth) |
257 | | NS_GENERIC_FACTORY_CONSTRUCTOR(nsHttpDigestAuth) |
258 | | NS_GENERIC_FACTORY_CONSTRUCTOR(ThrottleQueue) |
259 | | NS_GENERIC_FACTORY_CONSTRUCTOR(BackgroundChannelRegistrar) |
260 | | } // namespace net |
261 | | } // namespace mozilla |
262 | | |
263 | | #include "mozilla/net/Dashboard.h" |
264 | | namespace mozilla { |
265 | | namespace net { |
266 | | NS_GENERIC_FACTORY_CONSTRUCTOR(Dashboard) |
267 | | } // namespace net |
268 | | } // namespace mozilla |
269 | | |
270 | | #ifdef XP_WIN |
271 | | #include "../socket/nsNamedPipeService.h" |
272 | | namespace mozilla { |
273 | | namespace net { |
274 | | NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(NamedPipeService, Init) |
275 | | } // namespace net |
276 | | } // namespace mozilla |
277 | | #endif |
278 | | |
279 | | // resource |
280 | | #include "nsResProtocolHandler.h" |
281 | | #include "ExtensionProtocolHandler.h" |
282 | | #include "SubstitutingProtocolHandler.h" |
283 | | typedef mozilla::net::ExtensionProtocolHandler ExtensionProtocolHandler; |
284 | | typedef mozilla::net::SubstitutingURL::Mutator SubstitutingURLMutator; |
285 | | NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsResProtocolHandler, Init) |
286 | | |
287 | | namespace mozilla { |
288 | | NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR(ExtensionProtocolHandler, |
289 | | ExtensionProtocolHandler::GetSingleton) |
290 | | NS_GENERIC_FACTORY_CONSTRUCTOR(SubstitutingURLMutator) |
291 | | } // namespace mozilla |
292 | | |
293 | | #include "nsViewSourceHandler.h" |
294 | | typedef mozilla::net::nsViewSourceHandler nsViewSourceHandler; |
295 | | NS_GENERIC_FACTORY_CONSTRUCTOR(nsViewSourceHandler) |
296 | | |
297 | | #include "nsDataHandler.h" |
298 | | |
299 | | #include "nsWyciwygProtocolHandler.h" |
300 | | NS_GENERIC_FACTORY_CONSTRUCTOR(nsWyciwygProtocolHandler) |
301 | | |
302 | | #include "WebSocketChannel.h" |
303 | | #include "WebSocketChannelChild.h" |
304 | | namespace mozilla { |
305 | | namespace net { |
306 | | static BaseWebSocketChannel* |
307 | | WebSocketChannelConstructor(bool aSecure) |
308 | 2 | { |
309 | 2 | if (IsNeckoChild()) { |
310 | 0 | return new WebSocketChannelChild(aSecure); |
311 | 0 | } |
312 | 2 | |
313 | 2 | if (aSecure) { |
314 | 1 | return new WebSocketSSLChannel; |
315 | 1 | } |
316 | 1 | return new WebSocketChannel; |
317 | 1 | } |
318 | | |
319 | | #define WEB_SOCKET_HANDLER_CONSTRUCTOR(type, secure) \ |
320 | | static nsresult \ |
321 | | type##Constructor(nsISupports *aOuter, REFNSIID aIID, \ |
322 | 2 | void **aResult) \ |
323 | 2 | { \ |
324 | 2 | nsresult rv; \ |
325 | 2 | \ |
326 | 2 | BaseWebSocketChannel * inst; \ |
327 | 2 | \ |
328 | 2 | *aResult = nullptr; \ |
329 | 2 | if (nullptr != aOuter) { \ |
330 | 0 | rv = NS_ERROR_NO_AGGREGATION; \ |
331 | 0 | return rv; \ |
332 | 0 | } \ |
333 | 2 | inst = WebSocketChannelConstructor(secure); \ |
334 | 2 | NS_ADDREF(inst); \ |
335 | 2 | rv = inst->QueryInterface(aIID, aResult); \ |
336 | 2 | NS_RELEASE(inst); \ |
337 | 2 | return rv; \ |
338 | 2 | } nsNetModule.cpp:mozilla::net::WebSocketChannelConstructor(nsISupports*, nsID const&, void**) Line | Count | Source | 322 | 1 | void **aResult) \ | 323 | 1 | { \ | 324 | 1 | nsresult rv; \ | 325 | 1 | \ | 326 | 1 | BaseWebSocketChannel * inst; \ | 327 | 1 | \ | 328 | 1 | *aResult = nullptr; \ | 329 | 1 | if (nullptr != aOuter) { \ | 330 | 0 | rv = NS_ERROR_NO_AGGREGATION; \ | 331 | 0 | return rv; \ | 332 | 0 | } \ | 333 | 1 | inst = WebSocketChannelConstructor(secure); \ | 334 | 1 | NS_ADDREF(inst); \ | 335 | 1 | rv = inst->QueryInterface(aIID, aResult); \ | 336 | 1 | NS_RELEASE(inst); \ | 337 | 1 | return rv; \ | 338 | 1 | } |
nsNetModule.cpp:mozilla::net::WebSocketSSLChannelConstructor(nsISupports*, nsID const&, void**) Line | Count | Source | 322 | 1 | void **aResult) \ | 323 | 1 | { \ | 324 | 1 | nsresult rv; \ | 325 | 1 | \ | 326 | 1 | BaseWebSocketChannel * inst; \ | 327 | 1 | \ | 328 | 1 | *aResult = nullptr; \ | 329 | 1 | if (nullptr != aOuter) { \ | 330 | 0 | rv = NS_ERROR_NO_AGGREGATION; \ | 331 | 0 | return rv; \ | 332 | 0 | } \ | 333 | 1 | inst = WebSocketChannelConstructor(secure); \ | 334 | 1 | NS_ADDREF(inst); \ | 335 | 1 | rv = inst->QueryInterface(aIID, aResult); \ | 336 | 1 | NS_RELEASE(inst); \ | 337 | 1 | return rv; \ | 338 | 1 | } |
|
339 | | |
340 | | WEB_SOCKET_HANDLER_CONSTRUCTOR(WebSocketChannel, false) |
341 | | WEB_SOCKET_HANDLER_CONSTRUCTOR(WebSocketSSLChannel, true) |
342 | | #undef WEB_SOCKET_HANDLER_CONSTRUCTOR |
343 | | } // namespace net |
344 | | } // namespace mozilla |
345 | | |
346 | | /////////////////////////////////////////////////////////////////////////////// |
347 | | |
348 | | #include "nsURLParsers.h" |
349 | | NS_GENERIC_FACTORY_CONSTRUCTOR(nsNoAuthURLParser) |
350 | | NS_GENERIC_FACTORY_CONSTRUCTOR(nsAuthURLParser) |
351 | | NS_GENERIC_FACTORY_CONSTRUCTOR(nsStdURLParser) |
352 | | |
353 | | #include "nsStandardURL.h" |
354 | | typedef mozilla::net::nsStandardURL::Mutator nsStandardURLMutator; |
355 | | NS_GENERIC_FACTORY_CONSTRUCTOR(nsStandardURLMutator) |
356 | | typedef mozilla::net::nsSimpleURI::Mutator nsSimpleURIMutator; |
357 | | NS_GENERIC_FACTORY_CONSTRUCTOR(nsSimpleURIMutator) |
358 | | |
359 | | typedef mozilla::net::nsSimpleNestedURI::Mutator nsSimpleNestedURIMutator; |
360 | | NS_GENERIC_FACTORY_CONSTRUCTOR(nsSimpleNestedURIMutator) |
361 | | |
362 | | /////////////////////////////////////////////////////////////////////////////// |
363 | | |
364 | | #include "nsIDNService.h" |
365 | | NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsIDNService, Init) |
366 | | |
367 | | /////////////////////////////////////////////////////////////////////////////// |
368 | | #if defined(XP_WIN) |
369 | | #include "nsNotifyAddrListener.h" |
370 | | NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsNotifyAddrListener, Init) |
371 | | #elif defined(MOZ_WIDGET_COCOA) |
372 | | #include "nsNetworkLinkService.h" |
373 | | NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsNetworkLinkService, Init) |
374 | | #elif defined(MOZ_WIDGET_ANDROID) |
375 | | #include "nsAndroidNetworkLinkService.h" |
376 | | NS_GENERIC_FACTORY_CONSTRUCTOR(nsAndroidNetworkLinkService) |
377 | | #elif defined(XP_LINUX) |
378 | | #include "nsNotifyAddrListener_Linux.h" |
379 | | NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsNotifyAddrListener, Init) |
380 | | #endif |
381 | | |
382 | | /////////////////////////////////////////////////////////////////////////////// |
383 | | |
384 | | #include "nsFTPDirListingConv.h" |
385 | | nsresult NS_NewFTPDirListingConv(nsFTPDirListingConv** result); |
386 | | |
387 | | #include "nsStreamConverterService.h" |
388 | | #include "nsMultiMixedConv.h" |
389 | | #include "nsHTTPCompressConv.h" |
390 | | #include "mozTXTToHTMLConv.h" |
391 | | #include "nsUnknownDecoder.h" |
392 | | |
393 | | /////////////////////////////////////////////////////////////////////////////// |
394 | | |
395 | | #ifdef BUILD_NETWORK_INFO_SERVICE |
396 | | #include "nsNetworkInfoService.h" |
397 | | typedef mozilla::net::nsNetworkInfoService nsNetworkInfoService; |
398 | | NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsNetworkInfoService, Init) |
399 | | #endif // BUILD_NETWORK_INFO_SERVICE |
400 | | |
401 | | |
402 | | #include "nsIndexedToHTML.h" |
403 | | |
404 | | nsresult NS_NewMultiMixedConv (nsMultiMixedConv** result); |
405 | | nsresult MOZ_NewTXTToHTMLConv (mozTXTToHTMLConv** result); |
406 | | nsresult NS_NewHTTPCompressConv (mozilla::net::nsHTTPCompressConv ** result); |
407 | | nsresult NS_NewStreamConv(nsStreamConverterService **aStreamConv); |
408 | | |
409 | | #define FTP_TO_INDEX "?from=text/ftp-dir&to=application/http-index-format" |
410 | | #define INDEX_TO_HTML "?from=application/http-index-format&to=text/html" |
411 | | #define MULTI_MIXED_X "?from=multipart/x-mixed-replace&to=*/*" |
412 | | #define MULTI_MIXED "?from=multipart/mixed&to=*/*" |
413 | | #define MULTI_BYTERANGES "?from=multipart/byteranges&to=*/*" |
414 | | #define UNKNOWN_CONTENT "?from=" UNKNOWN_CONTENT_TYPE "&to=*/*" |
415 | | #define GZIP_TO_UNCOMPRESSED "?from=gzip&to=uncompressed" |
416 | | #define XGZIP_TO_UNCOMPRESSED "?from=x-gzip&to=uncompressed" |
417 | | #define BROTLI_TO_UNCOMPRESSED "?from=br&to=uncompressed" |
418 | | #define COMPRESS_TO_UNCOMPRESSED "?from=compress&to=uncompressed" |
419 | | #define XCOMPRESS_TO_UNCOMPRESSED "?from=x-compress&to=uncompressed" |
420 | | #define DEFLATE_TO_UNCOMPRESSED "?from=deflate&to=uncompressed" |
421 | | |
422 | | static const mozilla::Module::CategoryEntry kNeckoCategories[] = { |
423 | | { NS_ISTREAMCONVERTER_KEY, FTP_TO_INDEX, "" }, |
424 | | { NS_ISTREAMCONVERTER_KEY, INDEX_TO_HTML, "" }, |
425 | | { NS_ISTREAMCONVERTER_KEY, MULTI_MIXED_X, "" }, |
426 | | { NS_ISTREAMCONVERTER_KEY, MULTI_MIXED, "" }, |
427 | | { NS_ISTREAMCONVERTER_KEY, MULTI_BYTERANGES, "" }, |
428 | | { NS_ISTREAMCONVERTER_KEY, UNKNOWN_CONTENT, "" }, |
429 | | { NS_ISTREAMCONVERTER_KEY, GZIP_TO_UNCOMPRESSED, "" }, |
430 | | { NS_ISTREAMCONVERTER_KEY, XGZIP_TO_UNCOMPRESSED, "" }, |
431 | | { NS_ISTREAMCONVERTER_KEY, BROTLI_TO_UNCOMPRESSED, "" }, |
432 | | { NS_ISTREAMCONVERTER_KEY, COMPRESS_TO_UNCOMPRESSED, "" }, |
433 | | { NS_ISTREAMCONVERTER_KEY, XCOMPRESS_TO_UNCOMPRESSED, "" }, |
434 | | { NS_ISTREAMCONVERTER_KEY, DEFLATE_TO_UNCOMPRESSED, "" }, |
435 | | NS_BINARYDETECTOR_CATEGORYENTRY, |
436 | | { nullptr } |
437 | | }; |
438 | | |
439 | | static nsresult |
440 | | CreateNewStreamConvServiceFactory(nsISupports* aOuter, REFNSIID aIID, void **aResult) |
441 | 0 | { |
442 | 0 | if (!aResult) { |
443 | 0 | return NS_ERROR_INVALID_POINTER; |
444 | 0 | } |
445 | 0 | if (aOuter) { |
446 | 0 | *aResult = nullptr; |
447 | 0 | return NS_ERROR_NO_AGGREGATION; |
448 | 0 | } |
449 | 0 | nsStreamConverterService* inst = nullptr; |
450 | 0 | nsresult rv = NS_NewStreamConv(&inst); |
451 | 0 | if (NS_FAILED(rv)) { |
452 | 0 | *aResult = nullptr; |
453 | 0 | return rv; |
454 | 0 | } |
455 | 0 | rv = inst->QueryInterface(aIID, aResult); |
456 | 0 | if (NS_FAILED(rv)) { |
457 | 0 | *aResult = nullptr; |
458 | 0 | } |
459 | 0 | NS_RELEASE(inst); /* get rid of extra refcnt */ |
460 | 0 | return rv; |
461 | 0 | } |
462 | | |
463 | | static nsresult |
464 | | CreateNewFTPDirListingConv(nsISupports* aOuter, REFNSIID aIID, void **aResult) |
465 | 0 | { |
466 | 0 | if (!aResult) { |
467 | 0 | return NS_ERROR_INVALID_POINTER; |
468 | 0 | } |
469 | 0 | if (aOuter) { |
470 | 0 | *aResult = nullptr; |
471 | 0 | return NS_ERROR_NO_AGGREGATION; |
472 | 0 | } |
473 | 0 | nsFTPDirListingConv* inst = nullptr; |
474 | 0 | nsresult rv = NS_NewFTPDirListingConv(&inst); |
475 | 0 | if (NS_FAILED(rv)) { |
476 | 0 | *aResult = nullptr; |
477 | 0 | return rv; |
478 | 0 | } |
479 | 0 | rv = inst->QueryInterface(aIID, aResult); |
480 | 0 | if (NS_FAILED(rv)) { |
481 | 0 | *aResult = nullptr; |
482 | 0 | } |
483 | 0 | NS_RELEASE(inst); /* get rid of extra refcnt */ |
484 | 0 | return rv; |
485 | 0 | } |
486 | | |
487 | | static nsresult |
488 | | CreateNewMultiMixedConvFactory(nsISupports* aOuter, REFNSIID aIID, void **aResult) |
489 | 0 | { |
490 | 0 | if (!aResult) { |
491 | 0 | return NS_ERROR_INVALID_POINTER; |
492 | 0 | } |
493 | 0 | if (aOuter) { |
494 | 0 | *aResult = nullptr; |
495 | 0 | return NS_ERROR_NO_AGGREGATION; |
496 | 0 | } |
497 | 0 | nsMultiMixedConv* inst = nullptr; |
498 | 0 | nsresult rv = NS_NewMultiMixedConv(&inst); |
499 | 0 | if (NS_FAILED(rv)) { |
500 | 0 | *aResult = nullptr; |
501 | 0 | return rv; |
502 | 0 | } |
503 | 0 | rv = inst->QueryInterface(aIID, aResult); |
504 | 0 | if (NS_FAILED(rv)) { |
505 | 0 | *aResult = nullptr; |
506 | 0 | } |
507 | 0 | NS_RELEASE(inst); /* get rid of extra refcnt */ |
508 | 0 | return rv; |
509 | 0 | } |
510 | | |
511 | | static nsresult |
512 | | CreateNewTXTToHTMLConvFactory(nsISupports* aOuter, REFNSIID aIID, void **aResult) |
513 | 0 | { |
514 | 0 | if (!aResult) { |
515 | 0 | return NS_ERROR_INVALID_POINTER; |
516 | 0 | } |
517 | 0 | if (aOuter) { |
518 | 0 | *aResult = nullptr; |
519 | 0 | return NS_ERROR_NO_AGGREGATION; |
520 | 0 | } |
521 | 0 | mozTXTToHTMLConv* inst = nullptr; |
522 | 0 | nsresult rv = MOZ_NewTXTToHTMLConv(&inst); |
523 | 0 | if (NS_FAILED(rv)) { |
524 | 0 | *aResult = nullptr; |
525 | 0 | return rv; |
526 | 0 | } |
527 | 0 | rv = inst->QueryInterface(aIID, aResult); |
528 | 0 | if (NS_FAILED(rv)) { |
529 | 0 | *aResult = nullptr; |
530 | 0 | } |
531 | 0 | NS_RELEASE(inst); /* get rid of extra refcnt */ |
532 | 0 | return rv; |
533 | 0 | } |
534 | | |
535 | | static nsresult |
536 | | CreateNewHTTPCompressConvFactory (nsISupports* aOuter, REFNSIID aIID, void **aResult) |
537 | 0 | { |
538 | 0 | if (!aResult) { |
539 | 0 | return NS_ERROR_INVALID_POINTER; |
540 | 0 | } |
541 | 0 | if (aOuter) { |
542 | 0 | *aResult = nullptr; |
543 | 0 | return NS_ERROR_NO_AGGREGATION; |
544 | 0 | } |
545 | 0 | mozilla::net::nsHTTPCompressConv* inst = nullptr; |
546 | 0 | nsresult rv = NS_NewHTTPCompressConv (&inst); |
547 | 0 | if (NS_FAILED(rv)) { |
548 | 0 | *aResult = nullptr; |
549 | 0 | return rv; |
550 | 0 | } |
551 | 0 | rv = inst->QueryInterface(aIID, aResult); |
552 | 0 | if (NS_FAILED(rv)) { |
553 | 0 | *aResult = nullptr; |
554 | 0 | } |
555 | 0 | NS_RELEASE(inst); /* get rid of extra refcnt */ |
556 | 0 | return rv; |
557 | 0 | } |
558 | | |
559 | | static nsresult |
560 | | CreateNewUnknownDecoderFactory(nsISupports *aOuter, REFNSIID aIID, void **aResult) |
561 | 0 | { |
562 | 0 | nsresult rv; |
563 | 0 |
|
564 | 0 | if (!aResult) { |
565 | 0 | return NS_ERROR_NULL_POINTER; |
566 | 0 | } |
567 | 0 | *aResult = nullptr; |
568 | 0 |
|
569 | 0 | if (aOuter) { |
570 | 0 | return NS_ERROR_NO_AGGREGATION; |
571 | 0 | } |
572 | 0 | |
573 | 0 | nsUnknownDecoder *inst; |
574 | 0 |
|
575 | 0 | inst = new nsUnknownDecoder(); |
576 | 0 | if (!inst) { |
577 | 0 | return NS_ERROR_OUT_OF_MEMORY; |
578 | 0 | } |
579 | 0 | NS_ADDREF(inst); |
580 | 0 | rv = inst->QueryInterface(aIID, aResult); |
581 | 0 | NS_RELEASE(inst); |
582 | 0 |
|
583 | 0 | return rv; |
584 | 0 | } |
585 | | |
586 | | static nsresult |
587 | | CreateNewBinaryDetectorFactory(nsISupports *aOuter, REFNSIID aIID, void **aResult) |
588 | 0 | { |
589 | 0 | nsresult rv; |
590 | 0 |
|
591 | 0 | if (!aResult) { |
592 | 0 | return NS_ERROR_NULL_POINTER; |
593 | 0 | } |
594 | 0 | *aResult = nullptr; |
595 | 0 |
|
596 | 0 | if (aOuter) { |
597 | 0 | return NS_ERROR_NO_AGGREGATION; |
598 | 0 | } |
599 | 0 | |
600 | 0 | auto* inst = new nsBinaryDetector(); |
601 | 0 | if (!inst) { |
602 | 0 | return NS_ERROR_OUT_OF_MEMORY; |
603 | 0 | } |
604 | 0 | NS_ADDREF(inst); |
605 | 0 | rv = inst->QueryInterface(aIID, aResult); |
606 | 0 | NS_RELEASE(inst); |
607 | 0 |
|
608 | 0 | return rv; |
609 | 0 | } |
610 | | |
611 | | /////////////////////////////////////////////////////////////////////////////// |
612 | | // Module implementation for the net library |
613 | | |
614 | | // Net module startup hook |
615 | | static nsresult nsNetStartup() |
616 | 6 | { |
617 | 6 | mozilla::net::nsStandardURL::InitGlobalObjects(); |
618 | 6 | return NS_OK; |
619 | 6 | } |
620 | | |
621 | | // Net module shutdown hook |
622 | | static void nsNetShutdown() |
623 | 0 | { |
624 | 0 | // Release the url parser that the stdurl is holding. |
625 | 0 | mozilla::net::nsStandardURL::ShutdownGlobalObjects(); |
626 | 0 |
|
627 | 0 | // Release global state used by the URL helper module. |
628 | 0 | net_ShutdownURLHelper(); |
629 | | #ifdef XP_MACOSX |
630 | | net_ShutdownURLHelperOSX(); |
631 | | #endif |
632 | |
|
633 | 0 | // Release DNS service reference. |
634 | 0 | nsDNSPrefetch::Shutdown(); |
635 | 0 |
|
636 | 0 | // Release the Websocket Admission Manager |
637 | 0 | mozilla::net::WebSocketChannel::Shutdown(); |
638 | 0 |
|
639 | 0 | mozilla::net::Http2CompressionCleanup(); |
640 | 0 |
|
641 | 0 | mozilla::net::RedirectChannelRegistrar::Shutdown(); |
642 | 0 |
|
643 | 0 | delete gNetSniffers; |
644 | 0 | gNetSniffers = nullptr; |
645 | 0 | delete gDataSniffers; |
646 | 0 | gDataSniffers = nullptr; |
647 | 0 | } |
648 | | |
649 | | NS_DEFINE_NAMED_CID(NS_IOSERVICE_CID); |
650 | | NS_DEFINE_NAMED_CID(NS_STREAMTRANSPORTSERVICE_CID); |
651 | | NS_DEFINE_NAMED_CID(NS_SOCKETTRANSPORTSERVICE_CID); |
652 | | NS_DEFINE_NAMED_CID(NS_SERVERSOCKET_CID); |
653 | | NS_DEFINE_NAMED_CID(NS_TLSSERVERSOCKET_CID); |
654 | | NS_DEFINE_NAMED_CID(NS_UDPSOCKET_CID); |
655 | | NS_DEFINE_NAMED_CID(NS_SOCKETPROVIDERSERVICE_CID); |
656 | | NS_DEFINE_NAMED_CID(NS_DNSSERVICE_CID); |
657 | | NS_DEFINE_NAMED_CID(NS_IDNSERVICE_CID); |
658 | | NS_DEFINE_NAMED_CID(NS_EFFECTIVETLDSERVICE_CID); |
659 | | NS_DEFINE_NAMED_CID(NS_SIMPLEURI_CID); |
660 | | NS_DEFINE_NAMED_CID(NS_SIMPLEURIMUTATOR_CID); |
661 | | NS_DEFINE_NAMED_CID(NS_SIMPLENESTEDURI_CID); |
662 | | NS_DEFINE_NAMED_CID(NS_SIMPLENESTEDURIMUTATOR_CID); |
663 | | NS_DEFINE_NAMED_CID(NS_ASYNCSTREAMCOPIER_CID); |
664 | | NS_DEFINE_NAMED_CID(NS_INPUTSTREAMPUMP_CID); |
665 | | NS_DEFINE_NAMED_CID(NS_INPUTSTREAMCHANNEL_CID); |
666 | | NS_DEFINE_NAMED_CID(NS_STREAMLOADER_CID); |
667 | | NS_DEFINE_NAMED_CID(NS_INCREMENTALSTREAMLOADER_CID); |
668 | | NS_DEFINE_NAMED_CID(NS_DOWNLOADER_CID); |
669 | | NS_DEFINE_NAMED_CID(NS_BACKGROUNDFILESAVEROUTPUTSTREAM_CID); |
670 | | NS_DEFINE_NAMED_CID(NS_BACKGROUNDFILESAVERSTREAMLISTENER_CID); |
671 | | NS_DEFINE_NAMED_CID(NS_SYNCSTREAMLISTENER_CID); |
672 | | NS_DEFINE_NAMED_CID(NS_REQUESTOBSERVERPROXY_CID); |
673 | | NS_DEFINE_NAMED_CID(NS_SIMPLESTREAMLISTENER_CID); |
674 | | NS_DEFINE_NAMED_CID(NS_STREAMLISTENERTEE_CID); |
675 | | NS_DEFINE_NAMED_CID(NS_LOADGROUP_CID); |
676 | | NS_DEFINE_NAMED_CID(NS_LOCALFILEINPUTSTREAM_CID); |
677 | | NS_DEFINE_NAMED_CID(NS_LOCALFILEOUTPUTSTREAM_CID); |
678 | | NS_DEFINE_NAMED_CID(NS_ATOMICLOCALFILEOUTPUTSTREAM_CID); |
679 | | NS_DEFINE_NAMED_CID(NS_SAFELOCALFILEOUTPUTSTREAM_CID); |
680 | | NS_DEFINE_NAMED_CID(NS_INCREMENTALDOWNLOAD_CID); |
681 | | NS_DEFINE_NAMED_CID(NS_STDURLPARSER_CID); |
682 | | NS_DEFINE_NAMED_CID(NS_NOAUTHURLPARSER_CID); |
683 | | NS_DEFINE_NAMED_CID(NS_AUTHURLPARSER_CID); |
684 | | NS_DEFINE_NAMED_CID(NS_STANDARDURL_CID); |
685 | | NS_DEFINE_NAMED_CID(NS_STANDARDURLMUTATOR_CID); |
686 | | NS_DEFINE_NAMED_CID(NS_ARRAYBUFFERINPUTSTREAM_CID); |
687 | | NS_DEFINE_NAMED_CID(NS_BUFFEREDINPUTSTREAM_CID); |
688 | | NS_DEFINE_NAMED_CID(NS_BUFFEREDOUTPUTSTREAM_CID); |
689 | | NS_DEFINE_NAMED_CID(NS_MIMEINPUTSTREAM_CID); |
690 | | NS_DEFINE_NAMED_CID(NS_PROTOCOLPROXYSERVICE_CID); |
691 | | NS_DEFINE_NAMED_CID(NS_STREAMCONVERTERSERVICE_CID); |
692 | | #if defined(XP_WIN) |
693 | | NS_DEFINE_NAMED_CID(NS_NAMEDPIPESERVICE_CID); |
694 | | #endif |
695 | | NS_DEFINE_NAMED_CID(NS_DASHBOARD_CID); |
696 | | NS_DEFINE_NAMED_CID(NS_FTPDIRLISTINGCONVERTER_CID); |
697 | | NS_DEFINE_NAMED_CID(NS_NSINDEXEDTOHTMLCONVERTER_CID); |
698 | | NS_DEFINE_NAMED_CID(NS_MULTIMIXEDCONVERTER_CID); |
699 | | NS_DEFINE_NAMED_CID(NS_UNKNOWNDECODER_CID); |
700 | | NS_DEFINE_NAMED_CID(NS_BINARYDETECTOR_CID); |
701 | | NS_DEFINE_NAMED_CID(NS_HTTPCOMPRESSCONVERTER_CID); |
702 | | NS_DEFINE_NAMED_CID(MOZITXTTOHTMLCONV_CID); |
703 | | NS_DEFINE_NAMED_CID(NS_MIMEHEADERPARAM_CID); |
704 | | NS_DEFINE_NAMED_CID(NS_FILEPROTOCOLHANDLER_CID); |
705 | | NS_DEFINE_NAMED_CID(NS_HTTPPROTOCOLHANDLER_CID); |
706 | | NS_DEFINE_NAMED_CID(NS_HTTPSPROTOCOLHANDLER_CID); |
707 | | NS_DEFINE_NAMED_CID(NS_HTTPBASICAUTH_CID); |
708 | | NS_DEFINE_NAMED_CID(NS_HTTPDIGESTAUTH_CID); |
709 | | NS_DEFINE_NAMED_CID(NS_HTTPNTLMAUTH_CID); |
710 | | NS_DEFINE_NAMED_CID(NS_HTTPAUTHMANAGER_CID); |
711 | | NS_DEFINE_NAMED_CID(NS_HTTPACTIVITYDISTRIBUTOR_CID); |
712 | | NS_DEFINE_NAMED_CID(NS_THROTTLEQUEUE_CID); |
713 | | NS_DEFINE_NAMED_CID(NS_BACKGROUNDCHANNELREGISTRAR_CID); |
714 | | NS_DEFINE_NAMED_CID(NS_FTPPROTOCOLHANDLER_CID); |
715 | | NS_DEFINE_NAMED_CID(NS_RESPROTOCOLHANDLER_CID); |
716 | | NS_DEFINE_NAMED_CID(NS_EXTENSIONPROTOCOLHANDLER_CID); |
717 | | NS_DEFINE_NAMED_CID(NS_SUBSTITUTINGURL_CID); |
718 | | NS_DEFINE_NAMED_CID(NS_SUBSTITUTINGURLMUTATOR_CID); |
719 | | NS_DEFINE_NAMED_CID(NS_ABOUTPROTOCOLHANDLER_CID); |
720 | | NS_DEFINE_NAMED_CID(NS_SAFEABOUTPROTOCOLHANDLER_CID); |
721 | | NS_DEFINE_NAMED_CID(NS_ABOUT_BLANK_MODULE_CID); |
722 | | NS_DEFINE_NAMED_CID(NS_NESTEDABOUTURI_CID); |
723 | | NS_DEFINE_NAMED_CID(NS_NESTEDABOUTURIMUTATOR_CID); |
724 | | NS_DEFINE_NAMED_CID(NS_ABOUT_CACHE_MODULE_CID); |
725 | | NS_DEFINE_NAMED_CID(NS_ABOUT_CACHE_ENTRY_MODULE_CID); |
726 | | NS_DEFINE_NAMED_CID(NS_SOCKSSOCKETPROVIDER_CID); |
727 | | NS_DEFINE_NAMED_CID(NS_SOCKS4SOCKETPROVIDER_CID); |
728 | | NS_DEFINE_NAMED_CID(NS_UDPSOCKETPROVIDER_CID); |
729 | | NS_DEFINE_NAMED_CID(NS_CACHESERVICE_CID); |
730 | | NS_DEFINE_NAMED_CID(NS_APPLICATIONCACHESERVICE_CID); |
731 | | #ifdef NECKO_COOKIES |
732 | | NS_DEFINE_NAMED_CID(NS_COOKIEMANAGER_CID); |
733 | | NS_DEFINE_NAMED_CID(NS_COOKIESERVICE_CID); |
734 | | #endif |
735 | | #ifdef NECKO_WIFI |
736 | | NS_DEFINE_NAMED_CID(NS_WIFI_MONITOR_COMPONENT_CID); |
737 | | #endif |
738 | | NS_DEFINE_NAMED_CID(NS_DATAPROTOCOLHANDLER_CID); |
739 | | NS_DEFINE_NAMED_CID(NS_VIEWSOURCEHANDLER_CID); |
740 | | NS_DEFINE_NAMED_CID(NS_WYCIWYGPROTOCOLHANDLER_CID); |
741 | | NS_DEFINE_NAMED_CID(NS_WEBSOCKETPROTOCOLHANDLER_CID); |
742 | | NS_DEFINE_NAMED_CID(NS_WEBSOCKETSSLPROTOCOLHANDLER_CID); |
743 | | #if defined(XP_WIN) |
744 | | NS_DEFINE_NAMED_CID(NS_NETWORK_LINK_SERVICE_CID); |
745 | | #elif defined(MOZ_WIDGET_COCOA) |
746 | | NS_DEFINE_NAMED_CID(NS_NETWORK_LINK_SERVICE_CID); |
747 | | #elif defined(MOZ_WIDGET_ANDROID) |
748 | | NS_DEFINE_NAMED_CID(NS_NETWORK_LINK_SERVICE_CID); |
749 | | #elif defined(XP_LINUX) |
750 | | NS_DEFINE_NAMED_CID(NS_NETWORK_LINK_SERVICE_CID); |
751 | | #endif |
752 | | NS_DEFINE_NAMED_CID(NS_SERIALIZATION_HELPER_CID); |
753 | | NS_DEFINE_NAMED_CID(NS_CACHE_STORAGE_SERVICE_CID); |
754 | | NS_DEFINE_NAMED_CID(NS_NSILOADCONTEXTINFOFACTORY_CID); |
755 | | NS_DEFINE_NAMED_CID(NS_NETWORKPREDICTOR_CID); |
756 | | NS_DEFINE_NAMED_CID(NS_CAPTIVEPORTAL_CID); |
757 | | NS_DEFINE_NAMED_CID(NS_REQUESTCONTEXTSERVICE_CID); |
758 | | #ifdef BUILD_NETWORK_INFO_SERVICE |
759 | | NS_DEFINE_NAMED_CID(NETWORKINFOSERVICE_CID); |
760 | | #endif // BUILD_NETWORK_INFO_SERVICE |
761 | | |
762 | | static const mozilla::Module::CIDEntry kNeckoCIDs[] = { |
763 | | { &kNS_IOSERVICE_CID, false, nullptr, nsIOServiceConstructor }, |
764 | | { &kNS_STREAMTRANSPORTSERVICE_CID, false, nullptr, nsStreamTransportServiceConstructor }, |
765 | | { &kNS_SOCKETTRANSPORTSERVICE_CID, false, nullptr, nsSocketTransportServiceConstructor }, |
766 | | { &kNS_SERVERSOCKET_CID, false, nullptr, nsServerSocketConstructor }, |
767 | | { &kNS_TLSSERVERSOCKET_CID, false, nullptr, TLSServerSocketConstructor }, |
768 | | { &kNS_UDPSOCKET_CID, false, nullptr, nsUDPSocketConstructor }, |
769 | | { &kNS_SOCKETPROVIDERSERVICE_CID, false, nullptr, nsSocketProviderService::Create }, |
770 | | { &kNS_DNSSERVICE_CID, false, nullptr, nsIDNSServiceConstructor }, |
771 | | { &kNS_IDNSERVICE_CID, false, nullptr, nsIDNServiceConstructor }, |
772 | | { &kNS_EFFECTIVETLDSERVICE_CID, false, nullptr, nsEffectiveTLDServiceConstructor }, |
773 | | { &kNS_SIMPLEURI_CID, false, nullptr, nsSimpleURIMutatorConstructor }, // do_CreateInstance returns mutator |
774 | | { &kNS_SIMPLEURIMUTATOR_CID, false, nullptr, nsSimpleURIMutatorConstructor }, |
775 | | { &kNS_SIMPLENESTEDURI_CID, false, nullptr, nsSimpleNestedURIMutatorConstructor }, // do_CreateInstance returns mutator |
776 | | { &kNS_SIMPLENESTEDURIMUTATOR_CID, false, nullptr, nsSimpleNestedURIMutatorConstructor }, |
777 | | { &kNS_ASYNCSTREAMCOPIER_CID, false, nullptr, nsAsyncStreamCopierConstructor }, |
778 | | { &kNS_INPUTSTREAMPUMP_CID, false, nullptr, nsInputStreamPumpConstructor }, |
779 | | { &kNS_INPUTSTREAMCHANNEL_CID, false, nullptr, nsInputStreamChannelConstructor }, |
780 | | { &kNS_STREAMLOADER_CID, false, nullptr, mozilla::net::nsStreamLoader::Create }, |
781 | | { &kNS_INCREMENTALSTREAMLOADER_CID, false, nullptr, nsIncrementalStreamLoader::Create }, |
782 | | { &kNS_DOWNLOADER_CID, false, nullptr, nsDownloaderConstructor }, |
783 | | { &kNS_BACKGROUNDFILESAVEROUTPUTSTREAM_CID, false, nullptr, |
784 | | mozilla::net::BackgroundFileSaverOutputStreamConstructor }, |
785 | | { &kNS_BACKGROUNDFILESAVERSTREAMLISTENER_CID, false, nullptr, |
786 | | mozilla::net::BackgroundFileSaverStreamListenerConstructor }, |
787 | | { &kNS_SYNCSTREAMLISTENER_CID, false, nullptr, nsSyncStreamListenerConstructor }, |
788 | | { &kNS_REQUESTOBSERVERPROXY_CID, false, nullptr, nsRequestObserverProxyConstructor }, |
789 | | { &kNS_SIMPLESTREAMLISTENER_CID, false, nullptr, nsSimpleStreamListenerConstructor }, |
790 | | { &kNS_STREAMLISTENERTEE_CID, false, nullptr, nsStreamListenerTeeConstructor }, |
791 | | { &kNS_LOADGROUP_CID, false, nullptr, nsLoadGroupConstructor }, |
792 | | { &kNS_LOCALFILEINPUTSTREAM_CID, false, nullptr, nsFileInputStream::Create }, |
793 | | { &kNS_LOCALFILEOUTPUTSTREAM_CID, false, nullptr, nsFileOutputStream::Create }, |
794 | | { &kNS_ATOMICLOCALFILEOUTPUTSTREAM_CID, false, nullptr, nsAtomicFileOutputStreamConstructor }, |
795 | | { &kNS_SAFELOCALFILEOUTPUTSTREAM_CID, false, nullptr, nsSafeFileOutputStreamConstructor }, |
796 | | { &kNS_INCREMENTALDOWNLOAD_CID, false, nullptr, net_NewIncrementalDownload }, |
797 | | { &kNS_STDURLPARSER_CID, false, nullptr, nsStdURLParserConstructor }, |
798 | | { &kNS_NOAUTHURLPARSER_CID, false, nullptr, nsNoAuthURLParserConstructor }, |
799 | | { &kNS_AUTHURLPARSER_CID, false, nullptr, nsAuthURLParserConstructor }, |
800 | | { &kNS_STANDARDURL_CID, false, nullptr, nsStandardURLMutatorConstructor }, // do_CreateInstance returns mutator |
801 | | { &kNS_STANDARDURLMUTATOR_CID, false, nullptr, nsStandardURLMutatorConstructor }, |
802 | | { &kNS_ARRAYBUFFERINPUTSTREAM_CID, false, nullptr, ArrayBufferInputStreamConstructor }, |
803 | | { &kNS_BUFFEREDINPUTSTREAM_CID, false, nullptr, nsBufferedInputStream::Create }, |
804 | | { &kNS_BUFFEREDOUTPUTSTREAM_CID, false, nullptr, nsBufferedOutputStream::Create }, |
805 | | { &kNS_MIMEINPUTSTREAM_CID, false, nullptr, nsMIMEInputStreamConstructor }, |
806 | | { &kNS_PROTOCOLPROXYSERVICE_CID, true, nullptr, nsProtocolProxyServiceConstructor }, |
807 | | { &kNS_STREAMCONVERTERSERVICE_CID, false, nullptr, CreateNewStreamConvServiceFactory }, |
808 | | #if defined (XP_WIN) |
809 | | { &kNS_NAMEDPIPESERVICE_CID, false, NULL, mozilla::net::NamedPipeServiceConstructor }, |
810 | | #endif |
811 | | { &kNS_DASHBOARD_CID, false, nullptr, mozilla::net::DashboardConstructor }, |
812 | | { &kNS_FTPDIRLISTINGCONVERTER_CID, false, nullptr, CreateNewFTPDirListingConv }, |
813 | | { &kNS_NSINDEXEDTOHTMLCONVERTER_CID, false, nullptr, nsIndexedToHTML::Create }, |
814 | | { &kNS_MULTIMIXEDCONVERTER_CID, false, nullptr, CreateNewMultiMixedConvFactory }, |
815 | | { &kNS_UNKNOWNDECODER_CID, false, nullptr, CreateNewUnknownDecoderFactory }, |
816 | | { &kNS_BINARYDETECTOR_CID, false, nullptr, CreateNewBinaryDetectorFactory }, |
817 | | { &kNS_HTTPCOMPRESSCONVERTER_CID, false, nullptr, CreateNewHTTPCompressConvFactory }, |
818 | | { &kMOZITXTTOHTMLCONV_CID, false, nullptr, CreateNewTXTToHTMLConvFactory }, |
819 | | { &kNS_MIMEHEADERPARAM_CID, false, nullptr, nsMIMEHeaderParamImplConstructor }, |
820 | | { &kNS_FILEPROTOCOLHANDLER_CID, false, nullptr, nsFileProtocolHandlerConstructor }, |
821 | | { &kNS_HTTPPROTOCOLHANDLER_CID, false, nullptr, mozilla::net::nsHttpHandlerConstructor }, |
822 | | { &kNS_HTTPSPROTOCOLHANDLER_CID, false, nullptr, mozilla::net::nsHttpsHandlerConstructor }, |
823 | | { &kNS_HTTPBASICAUTH_CID, false, nullptr, mozilla::net::nsHttpBasicAuthConstructor }, |
824 | | { &kNS_HTTPDIGESTAUTH_CID, false, nullptr, mozilla::net::nsHttpDigestAuthConstructor }, |
825 | | { &kNS_HTTPNTLMAUTH_CID, false, nullptr, mozilla::net::nsHttpNTLMAuthConstructor }, |
826 | | { &kNS_HTTPAUTHMANAGER_CID, false, nullptr, mozilla::net::nsHttpAuthManagerConstructor }, |
827 | | { &kNS_HTTPACTIVITYDISTRIBUTOR_CID, false, nullptr, mozilla::net::nsHttpActivityDistributorConstructor }, |
828 | | { &kNS_THROTTLEQUEUE_CID, false, nullptr, mozilla::net::ThrottleQueueConstructor }, |
829 | | { &kNS_BACKGROUNDCHANNELREGISTRAR_CID, false, nullptr, mozilla::net::BackgroundChannelRegistrarConstructor }, |
830 | | { &kNS_FTPPROTOCOLHANDLER_CID, false, nullptr, nsFtpProtocolHandlerConstructor }, |
831 | | { &kNS_RESPROTOCOLHANDLER_CID, false, nullptr, nsResProtocolHandlerConstructor }, |
832 | | { &kNS_EXTENSIONPROTOCOLHANDLER_CID, false, nullptr, mozilla::ExtensionProtocolHandlerConstructor }, |
833 | | { &kNS_SUBSTITUTINGURL_CID, false, nullptr, mozilla::SubstitutingURLMutatorConstructor }, // do_CreateInstance returns mutator |
834 | | { &kNS_SUBSTITUTINGURLMUTATOR_CID, false, nullptr, mozilla::SubstitutingURLMutatorConstructor }, |
835 | | { &kNS_ABOUTPROTOCOLHANDLER_CID, false, nullptr, nsAboutProtocolHandlerConstructor }, |
836 | | { &kNS_SAFEABOUTPROTOCOLHANDLER_CID, false, nullptr, nsSafeAboutProtocolHandlerConstructor }, |
837 | | { &kNS_ABOUT_BLANK_MODULE_CID, false, nullptr, nsAboutBlank::Create }, |
838 | | { &kNS_NESTEDABOUTURI_CID, false, nullptr, nsNestedAboutURIMutatorConstructor }, // do_CreateInstance returns mutator |
839 | | { &kNS_NESTEDABOUTURIMUTATOR_CID, false, nullptr, nsNestedAboutURIMutatorConstructor }, |
840 | | { &kNS_ABOUT_CACHE_MODULE_CID, false, nullptr, nsAboutCache::Create }, |
841 | | { &kNS_ABOUT_CACHE_ENTRY_MODULE_CID, false, nullptr, nsAboutCacheEntryConstructor }, |
842 | | { &kNS_SOCKSSOCKETPROVIDER_CID, false, nullptr, nsSOCKSSocketProvider::CreateV5 }, |
843 | | { &kNS_SOCKS4SOCKETPROVIDER_CID, false, nullptr, nsSOCKSSocketProvider::CreateV4 }, |
844 | | { &kNS_UDPSOCKETPROVIDER_CID, false, nullptr, nsUDPSocketProviderConstructor }, |
845 | | { &kNS_CACHESERVICE_CID, false, nullptr, nsCacheService::Create }, |
846 | | { &kNS_APPLICATIONCACHESERVICE_CID, false, nullptr, nsApplicationCacheServiceConstructor }, |
847 | | #ifdef NECKO_COOKIES |
848 | | { &kNS_COOKIEMANAGER_CID, false, nullptr, nsICookieServiceConstructor }, |
849 | | { &kNS_COOKIESERVICE_CID, false, nullptr, nsICookieServiceConstructor }, |
850 | | #endif |
851 | | #ifdef NECKO_WIFI |
852 | | { &kNS_WIFI_MONITOR_COMPONENT_CID, false, nullptr, nsWifiMonitorConstructor }, |
853 | | #endif |
854 | | { &kNS_DATAPROTOCOLHANDLER_CID, false, nullptr, nsDataHandler::Create }, |
855 | | { &kNS_VIEWSOURCEHANDLER_CID, false, nullptr, nsViewSourceHandlerConstructor }, |
856 | | { &kNS_WYCIWYGPROTOCOLHANDLER_CID, false, nullptr, nsWyciwygProtocolHandlerConstructor }, |
857 | | { &kNS_WEBSOCKETPROTOCOLHANDLER_CID, false, nullptr, |
858 | | mozilla::net::WebSocketChannelConstructor }, |
859 | | { &kNS_WEBSOCKETSSLPROTOCOLHANDLER_CID, false, nullptr, |
860 | | mozilla::net::WebSocketSSLChannelConstructor }, |
861 | | #if defined(XP_WIN) |
862 | | { &kNS_NETWORK_LINK_SERVICE_CID, false, nullptr, nsNotifyAddrListenerConstructor }, |
863 | | #elif defined(MOZ_WIDGET_COCOA) |
864 | | { &kNS_NETWORK_LINK_SERVICE_CID, false, nullptr, nsNetworkLinkServiceConstructor }, |
865 | | #elif defined(MOZ_WIDGET_ANDROID) |
866 | | { &kNS_NETWORK_LINK_SERVICE_CID, false, nullptr, nsAndroidNetworkLinkServiceConstructor }, |
867 | | #elif defined(XP_LINUX) |
868 | | { &kNS_NETWORK_LINK_SERVICE_CID, false, nullptr, nsNotifyAddrListenerConstructor }, |
869 | | #endif |
870 | | { &kNS_SERIALIZATION_HELPER_CID, false, nullptr, nsSerializationHelperConstructor }, |
871 | | { &kNS_CACHE_STORAGE_SERVICE_CID, false, nullptr, CacheStorageServiceConstructor }, |
872 | | { &kNS_NSILOADCONTEXTINFOFACTORY_CID, false, nullptr, LoadContextInfoFactoryConstructor }, |
873 | | { &kNS_NETWORKPREDICTOR_CID, false, nullptr, mozilla::net::Predictor::Create }, |
874 | | { &kNS_CAPTIVEPORTAL_CID, false, nullptr, mozilla::net::nsICaptivePortalServiceConstructor }, |
875 | | { &kNS_REQUESTCONTEXTSERVICE_CID, false, nullptr, RequestContextServiceConstructor }, |
876 | | #ifdef BUILD_NETWORK_INFO_SERVICE |
877 | | { &kNETWORKINFOSERVICE_CID, false, nullptr, nsNetworkInfoServiceConstructor }, |
878 | | #endif |
879 | | { nullptr } |
880 | | }; |
881 | | |
882 | | static const mozilla::Module::ContractIDEntry kNeckoContracts[] = { |
883 | | { NS_IOSERVICE_CONTRACTID, &kNS_IOSERVICE_CID }, |
884 | | { NS_NETUTIL_CONTRACTID, &kNS_IOSERVICE_CID }, |
885 | | { NS_STREAMTRANSPORTSERVICE_CONTRACTID, &kNS_STREAMTRANSPORTSERVICE_CID }, |
886 | | { NS_SOCKETTRANSPORTSERVICE_CONTRACTID, &kNS_SOCKETTRANSPORTSERVICE_CID }, |
887 | | { NS_SERVERSOCKET_CONTRACTID, &kNS_SERVERSOCKET_CID }, |
888 | | { NS_TLSSERVERSOCKET_CONTRACTID, &kNS_TLSSERVERSOCKET_CID }, |
889 | | { NS_UDPSOCKET_CONTRACTID, &kNS_UDPSOCKET_CID }, |
890 | | { NS_SOCKETPROVIDERSERVICE_CONTRACTID, &kNS_SOCKETPROVIDERSERVICE_CID }, |
891 | | { NS_DNSSERVICE_CONTRACTID, &kNS_DNSSERVICE_CID }, |
892 | | { NS_IDNSERVICE_CONTRACTID, &kNS_IDNSERVICE_CID }, |
893 | | { NS_EFFECTIVETLDSERVICE_CONTRACTID, &kNS_EFFECTIVETLDSERVICE_CID }, |
894 | | { NS_SIMPLEURIMUTATOR_CONTRACTID, &kNS_SIMPLEURIMUTATOR_CID }, |
895 | | { NS_ASYNCSTREAMCOPIER_CONTRACTID, &kNS_ASYNCSTREAMCOPIER_CID }, |
896 | | { NS_INPUTSTREAMPUMP_CONTRACTID, &kNS_INPUTSTREAMPUMP_CID }, |
897 | | { NS_INPUTSTREAMCHANNEL_CONTRACTID, &kNS_INPUTSTREAMCHANNEL_CID }, |
898 | | { NS_STREAMLOADER_CONTRACTID, &kNS_STREAMLOADER_CID }, |
899 | | { NS_INCREMENTALSTREAMLOADER_CONTRACTID, &kNS_INCREMENTALSTREAMLOADER_CID }, |
900 | | { NS_DOWNLOADER_CONTRACTID, &kNS_DOWNLOADER_CID }, |
901 | | { NS_BACKGROUNDFILESAVEROUTPUTSTREAM_CONTRACTID, &kNS_BACKGROUNDFILESAVEROUTPUTSTREAM_CID }, |
902 | | { NS_BACKGROUNDFILESAVERSTREAMLISTENER_CONTRACTID, &kNS_BACKGROUNDFILESAVERSTREAMLISTENER_CID }, |
903 | | { NS_SYNCSTREAMLISTENER_CONTRACTID, &kNS_SYNCSTREAMLISTENER_CID }, |
904 | | { NS_REQUESTOBSERVERPROXY_CONTRACTID, &kNS_REQUESTOBSERVERPROXY_CID }, |
905 | | { NS_SIMPLESTREAMLISTENER_CONTRACTID, &kNS_SIMPLESTREAMLISTENER_CID }, |
906 | | { NS_STREAMLISTENERTEE_CONTRACTID, &kNS_STREAMLISTENERTEE_CID }, |
907 | | { NS_LOADGROUP_CONTRACTID, &kNS_LOADGROUP_CID }, |
908 | | { NS_LOCALFILEINPUTSTREAM_CONTRACTID, &kNS_LOCALFILEINPUTSTREAM_CID }, |
909 | | { NS_LOCALFILEOUTPUTSTREAM_CONTRACTID, &kNS_LOCALFILEOUTPUTSTREAM_CID }, |
910 | | { NS_ATOMICLOCALFILEOUTPUTSTREAM_CONTRACTID, &kNS_ATOMICLOCALFILEOUTPUTSTREAM_CID }, |
911 | | { NS_SAFELOCALFILEOUTPUTSTREAM_CONTRACTID, &kNS_SAFELOCALFILEOUTPUTSTREAM_CID }, |
912 | | { NS_INCREMENTALDOWNLOAD_CONTRACTID, &kNS_INCREMENTALDOWNLOAD_CID }, |
913 | | { NS_STDURLPARSER_CONTRACTID, &kNS_STDURLPARSER_CID }, |
914 | | { NS_NOAUTHURLPARSER_CONTRACTID, &kNS_NOAUTHURLPARSER_CID }, |
915 | | { NS_AUTHURLPARSER_CONTRACTID, &kNS_AUTHURLPARSER_CID }, |
916 | | { NS_STANDARDURLMUTATOR_CONTRACTID, &kNS_STANDARDURLMUTATOR_CID }, |
917 | | { NS_ARRAYBUFFERINPUTSTREAM_CONTRACTID, &kNS_ARRAYBUFFERINPUTSTREAM_CID }, |
918 | | { NS_BUFFEREDINPUTSTREAM_CONTRACTID, &kNS_BUFFEREDINPUTSTREAM_CID }, |
919 | | { NS_BUFFEREDOUTPUTSTREAM_CONTRACTID, &kNS_BUFFEREDOUTPUTSTREAM_CID }, |
920 | | { NS_MIMEINPUTSTREAM_CONTRACTID, &kNS_MIMEINPUTSTREAM_CID }, |
921 | | { NS_PROTOCOLPROXYSERVICE_CONTRACTID, &kNS_PROTOCOLPROXYSERVICE_CID }, |
922 | | { NS_STREAMCONVERTERSERVICE_CONTRACTID, &kNS_STREAMCONVERTERSERVICE_CID }, |
923 | | #if defined(XP_WIN) |
924 | | { NS_NAMEDPIPESERVICE_CONTRACTID, &kNS_NAMEDPIPESERVICE_CID }, |
925 | | #endif |
926 | | { NS_DASHBOARD_CONTRACTID, &kNS_DASHBOARD_CID }, |
927 | | { NS_ISTREAMCONVERTER_KEY FTP_TO_INDEX, &kNS_FTPDIRLISTINGCONVERTER_CID }, |
928 | | { NS_ISTREAMCONVERTER_KEY INDEX_TO_HTML, &kNS_NSINDEXEDTOHTMLCONVERTER_CID }, |
929 | | { NS_ISTREAMCONVERTER_KEY MULTI_MIXED_X, &kNS_MULTIMIXEDCONVERTER_CID }, |
930 | | { NS_ISTREAMCONVERTER_KEY MULTI_BYTERANGES, &kNS_MULTIMIXEDCONVERTER_CID }, |
931 | | { NS_ISTREAMCONVERTER_KEY MULTI_MIXED, &kNS_MULTIMIXEDCONVERTER_CID }, |
932 | | { NS_ISTREAMCONVERTER_KEY UNKNOWN_CONTENT, &kNS_UNKNOWNDECODER_CID }, |
933 | | { NS_BINARYDETECTOR_CONTRACTID, &kNS_BINARYDETECTOR_CID }, |
934 | | { NS_ISTREAMCONVERTER_KEY GZIP_TO_UNCOMPRESSED, &kNS_HTTPCOMPRESSCONVERTER_CID }, |
935 | | { NS_ISTREAMCONVERTER_KEY XGZIP_TO_UNCOMPRESSED, &kNS_HTTPCOMPRESSCONVERTER_CID }, |
936 | | { NS_ISTREAMCONVERTER_KEY BROTLI_TO_UNCOMPRESSED, &kNS_HTTPCOMPRESSCONVERTER_CID }, |
937 | | { NS_ISTREAMCONVERTER_KEY COMPRESS_TO_UNCOMPRESSED, &kNS_HTTPCOMPRESSCONVERTER_CID }, |
938 | | { NS_ISTREAMCONVERTER_KEY XCOMPRESS_TO_UNCOMPRESSED, &kNS_HTTPCOMPRESSCONVERTER_CID }, |
939 | | { NS_ISTREAMCONVERTER_KEY DEFLATE_TO_UNCOMPRESSED, &kNS_HTTPCOMPRESSCONVERTER_CID }, |
940 | | { MOZ_TXTTOHTMLCONV_CONTRACTID, &kMOZITXTTOHTMLCONV_CID }, |
941 | | { NS_MIMEHEADERPARAM_CONTRACTID, &kNS_MIMEHEADERPARAM_CID }, |
942 | | { NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX "file", &kNS_FILEPROTOCOLHANDLER_CID }, |
943 | | { NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX "http", &kNS_HTTPPROTOCOLHANDLER_CID }, |
944 | | { NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX "https", &kNS_HTTPSPROTOCOLHANDLER_CID }, |
945 | | { NS_HTTP_AUTHENTICATOR_CONTRACTID_PREFIX "basic", &kNS_HTTPBASICAUTH_CID }, |
946 | | { NS_HTTP_AUTHENTICATOR_CONTRACTID_PREFIX "digest", &kNS_HTTPDIGESTAUTH_CID }, |
947 | | { NS_HTTP_AUTHENTICATOR_CONTRACTID_PREFIX "ntlm", &kNS_HTTPNTLMAUTH_CID }, |
948 | | { NS_HTTPAUTHMANAGER_CONTRACTID, &kNS_HTTPAUTHMANAGER_CID }, |
949 | | { NS_HTTPACTIVITYDISTRIBUTOR_CONTRACTID, &kNS_HTTPACTIVITYDISTRIBUTOR_CID }, |
950 | | { NS_THROTTLEQUEUE_CONTRACTID, &kNS_THROTTLEQUEUE_CID }, |
951 | | { NS_BACKGROUNDCHANNELREGISTRAR_CONTRACTID, &kNS_BACKGROUNDCHANNELREGISTRAR_CID }, |
952 | | { NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX "ftp", &kNS_FTPPROTOCOLHANDLER_CID }, |
953 | | { NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX "resource", &kNS_RESPROTOCOLHANDLER_CID }, |
954 | | { NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX "moz-extension", &kNS_EXTENSIONPROTOCOLHANDLER_CID }, |
955 | | { NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX "about", &kNS_ABOUTPROTOCOLHANDLER_CID }, |
956 | | { NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX "moz-safe-about", &kNS_SAFEABOUTPROTOCOLHANDLER_CID }, |
957 | | { NS_ABOUT_MODULE_CONTRACTID_PREFIX "blank", &kNS_ABOUT_BLANK_MODULE_CID }, |
958 | | { NS_ABOUT_MODULE_CONTRACTID_PREFIX "cache", &kNS_ABOUT_CACHE_MODULE_CID }, |
959 | | { NS_ABOUT_MODULE_CONTRACTID_PREFIX "cache-entry", &kNS_ABOUT_CACHE_ENTRY_MODULE_CID }, |
960 | | { NS_NETWORK_SOCKET_CONTRACTID_PREFIX "socks", &kNS_SOCKSSOCKETPROVIDER_CID }, |
961 | | { NS_NETWORK_SOCKET_CONTRACTID_PREFIX "socks4", &kNS_SOCKS4SOCKETPROVIDER_CID }, |
962 | | { NS_NETWORK_SOCKET_CONTRACTID_PREFIX "udp", &kNS_UDPSOCKETPROVIDER_CID }, |
963 | | { NS_CACHESERVICE_CONTRACTID, &kNS_CACHESERVICE_CID }, |
964 | | { NS_APPLICATIONCACHESERVICE_CONTRACTID, &kNS_APPLICATIONCACHESERVICE_CID }, |
965 | | #ifdef NECKO_COOKIES |
966 | | { NS_COOKIEMANAGER_CONTRACTID, &kNS_COOKIEMANAGER_CID }, |
967 | | { NS_COOKIESERVICE_CONTRACTID, &kNS_COOKIESERVICE_CID }, |
968 | | #endif |
969 | | #ifdef NECKO_WIFI |
970 | | { NS_WIFI_MONITOR_CONTRACTID, &kNS_WIFI_MONITOR_COMPONENT_CID }, |
971 | | #endif |
972 | | { NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX "data", &kNS_DATAPROTOCOLHANDLER_CID }, |
973 | | { NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX "view-source", &kNS_VIEWSOURCEHANDLER_CID }, |
974 | | { NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX "wyciwyg", &kNS_WYCIWYGPROTOCOLHANDLER_CID }, |
975 | | { NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX "ws", &kNS_WEBSOCKETPROTOCOLHANDLER_CID }, |
976 | | { NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX "wss", &kNS_WEBSOCKETSSLPROTOCOLHANDLER_CID }, |
977 | | #if defined(XP_WIN) |
978 | | { NS_NETWORK_LINK_SERVICE_CONTRACTID, &kNS_NETWORK_LINK_SERVICE_CID }, |
979 | | #elif defined(MOZ_WIDGET_COCOA) |
980 | | { NS_NETWORK_LINK_SERVICE_CONTRACTID, &kNS_NETWORK_LINK_SERVICE_CID }, |
981 | | #elif defined(MOZ_WIDGET_ANDROID) |
982 | | { NS_NETWORK_LINK_SERVICE_CONTRACTID, &kNS_NETWORK_LINK_SERVICE_CID }, |
983 | | #elif defined(XP_LINUX) |
984 | | { NS_NETWORK_LINK_SERVICE_CONTRACTID, &kNS_NETWORK_LINK_SERVICE_CID }, |
985 | | #endif |
986 | | { NS_SERIALIZATION_HELPER_CONTRACTID, &kNS_SERIALIZATION_HELPER_CID }, |
987 | | { NS_CACHE_STORAGE_SERVICE_CONTRACTID, &kNS_CACHE_STORAGE_SERVICE_CID }, |
988 | | { NS_CACHE_STORAGE_SERVICE_CONTRACTID2, &kNS_CACHE_STORAGE_SERVICE_CID }, |
989 | | { NS_NSILOADCONTEXTINFOFACTORY_CONTRACTID, &kNS_NSILOADCONTEXTINFOFACTORY_CID }, |
990 | | { NS_NETWORKPREDICTOR_CONTRACTID, &kNS_NETWORKPREDICTOR_CID }, |
991 | | { NS_CAPTIVEPORTAL_CONTRACTID, &kNS_CAPTIVEPORTAL_CID }, |
992 | | { NS_REQUESTCONTEXTSERVICE_CONTRACTID, &kNS_REQUESTCONTEXTSERVICE_CID }, |
993 | | #ifdef BUILD_NETWORK_INFO_SERVICE |
994 | | { NETWORKINFOSERVICE_CONTRACT_ID, &kNETWORKINFOSERVICE_CID }, |
995 | | #endif |
996 | | { nullptr } |
997 | | }; |
998 | | |
999 | | static const mozilla::Module kNeckoModule = { |
1000 | | mozilla::Module::kVersion, |
1001 | | kNeckoCIDs, |
1002 | | kNeckoContracts, |
1003 | | kNeckoCategories, |
1004 | | nullptr, |
1005 | | nsNetStartup, |
1006 | | nsNetShutdown |
1007 | | }; |
1008 | | |
1009 | | NSMODULE_DEFN(necko) = &kNeckoModule; |