mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-22 09:45:41 +00:00
d4f64ba24e
This patch removes the ability to select which protocols you want included in necko, a wholly untested configuration that is broken in practice. We have no need of this kind of configurability in necko. In addition, this removes the final vestiges of rtsp support, which was originally removed in bug 1295885 but still had some stuff hanging around behind some ifdefs (that were never true). MozReview-Commit-ID: KOEaDmit2IL --HG-- extra : rebase_source : f6c2fdb972aaba46e922cda801252dc953550b94
1096 lines
45 KiB
C++
1096 lines
45 KiB
C++
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
|
|
/* vim: set sw=4 ts=8 et tw=80 : */
|
|
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
#include "necko-config.h"
|
|
|
|
#define ALLOW_LATE_HTTPLOG_H_INCLUDE 1
|
|
#include "base/basictypes.h"
|
|
|
|
#include "nsCOMPtr.h"
|
|
#include "nsIClassInfoImpl.h"
|
|
#include "mozilla/ModuleUtils.h"
|
|
#include "nsIComponentManager.h"
|
|
#include "nsIServiceManager.h"
|
|
#include "nsICategoryManager.h"
|
|
#include "nsSocketProviderService.h"
|
|
#include "nscore.h"
|
|
#include "nsSimpleURI.h"
|
|
#include "nsSimpleNestedURI.h"
|
|
#include "nsLoadGroup.h"
|
|
#include "nsStreamLoader.h"
|
|
#include "nsIncrementalStreamLoader.h"
|
|
#include "nsUnicharStreamLoader.h"
|
|
#include "nsFileStreams.h"
|
|
#include "nsBufferedStreams.h"
|
|
#include "nsMIMEInputStream.h"
|
|
#include "nsSOCKSSocketProvider.h"
|
|
#include "nsCacheService.h"
|
|
#include "nsDiskCacheDeviceSQL.h"
|
|
#include "nsApplicationCache.h"
|
|
#include "nsApplicationCacheService.h"
|
|
#include "nsMimeTypes.h"
|
|
#include "nsDNSPrefetch.h"
|
|
#include "nsAboutProtocolHandler.h"
|
|
#include "nsXULAppAPI.h"
|
|
#include "nsCategoryCache.h"
|
|
#include "nsIContentSniffer.h"
|
|
#include "Predictor.h"
|
|
#include "nsIThreadPool.h"
|
|
#include "mozilla/net/NeckoChild.h"
|
|
|
|
#include "nsNetCID.h"
|
|
|
|
#ifndef XP_MACOSX
|
|
#define BUILD_BINHEX_DECODER 1
|
|
#endif
|
|
|
|
#if defined(XP_MACOSX) || defined(XP_WIN) || defined(XP_LINUX)
|
|
#define BUILD_NETWORK_INFO_SERVICE 1
|
|
#endif
|
|
|
|
typedef nsCategoryCache<nsIContentSniffer> ContentSnifferCache;
|
|
ContentSnifferCache* gNetSniffers = nullptr;
|
|
ContentSnifferCache* gDataSniffers = nullptr;
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
#include "nsIOService.h"
|
|
typedef mozilla::net::nsIOService nsIOService;
|
|
NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR(nsIOService, nsIOService::GetInstance)
|
|
|
|
#include "nsDNSService2.h"
|
|
NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR(nsIDNSService,
|
|
nsDNSService::GetXPCOMSingleton)
|
|
|
|
#include "nsProtocolProxyService.h"
|
|
typedef mozilla::net::nsProtocolProxyService nsProtocolProxyService;
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsProtocolProxyService, Init)
|
|
|
|
#include "nsStreamTransportService.h"
|
|
typedef mozilla::net::nsStreamTransportService nsStreamTransportService;
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsStreamTransportService, Init)
|
|
|
|
#include "nsSocketTransportService2.h"
|
|
typedef mozilla::net::nsSocketTransportService nsSocketTransportService;
|
|
#undef LOG
|
|
#undef LOG_ENABLED
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsSocketTransportService, Init)
|
|
|
|
#include "nsServerSocket.h"
|
|
typedef mozilla::net::nsServerSocket nsServerSocket;
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsServerSocket)
|
|
|
|
#include "TLSServerSocket.h"
|
|
typedef mozilla::net::TLSServerSocket TLSServerSocket;
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(TLSServerSocket)
|
|
|
|
#include "nsUDPSocket.h"
|
|
typedef mozilla::net::nsUDPSocket nsUDPSocket;
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsUDPSocket)
|
|
|
|
#include "nsUDPSocketProvider.h"
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsUDPSocketProvider)
|
|
|
|
#include "nsAsyncStreamCopier.h"
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsAsyncStreamCopier)
|
|
|
|
#include "nsInputStreamPump.h"
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsInputStreamPump)
|
|
|
|
#include "nsInputStreamChannel.h"
|
|
typedef mozilla::net::nsInputStreamChannel nsInputStreamChannel;
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsInputStreamChannel, Init)
|
|
|
|
#include "nsDownloader.h"
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsDownloader)
|
|
|
|
#include "BackgroundFileSaver.h"
|
|
namespace mozilla {
|
|
namespace net {
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(BackgroundFileSaverOutputStream, Init)
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(BackgroundFileSaverStreamListener, Init)
|
|
} // namespace net
|
|
} // namespace mozilla
|
|
|
|
#include "nsSyncStreamListener.h"
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsSyncStreamListener, Init)
|
|
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsAtomicFileOutputStream)
|
|
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsSafeFileOutputStream)
|
|
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsFileStream)
|
|
|
|
typedef mozilla::net::nsLoadGroup nsLoadGroup;
|
|
NS_GENERIC_AGGREGATED_CONSTRUCTOR_INIT(nsLoadGroup, Init)
|
|
|
|
#include "ArrayBufferInputStream.h"
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(ArrayBufferInputStream)
|
|
|
|
#include "nsEffectiveTLDService.h"
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsEffectiveTLDService, Init)
|
|
|
|
#include "nsSerializationHelper.h"
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsSerializationHelper)
|
|
|
|
#include "RedirectChannelRegistrar.h"
|
|
typedef mozilla::net::RedirectChannelRegistrar RedirectChannelRegistrar;
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(RedirectChannelRegistrar)
|
|
|
|
#include "CacheStorageService.h"
|
|
typedef mozilla::net::CacheStorageService CacheStorageService;
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(CacheStorageService)
|
|
|
|
#include "LoadContextInfo.h"
|
|
typedef mozilla::net::LoadContextInfoFactory LoadContextInfoFactory;
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(LoadContextInfoFactory)
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
#include "mozilla/net/CaptivePortalService.h"
|
|
namespace mozilla {
|
|
namespace net {
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(CaptivePortalService)
|
|
} // namespace net
|
|
} // namespace mozilla
|
|
|
|
#include "RequestContextService.h"
|
|
typedef mozilla::net::RequestContextService RequestContextService;
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(RequestContextService, Init)
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
extern nsresult
|
|
net_NewIncrementalDownload(nsISupports *, const nsIID &, void **);
|
|
|
|
#define NS_INCREMENTALDOWNLOAD_CID \
|
|
{ /* a62af1ba-79b3-4896-8aaf-b148bfce4280 */ \
|
|
0xa62af1ba, \
|
|
0x79b3, \
|
|
0x4896, \
|
|
{0x8a, 0xaf, 0xb1, 0x48, 0xbf, 0xce, 0x42, 0x80} \
|
|
}
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
#include "nsMIMEHeaderParamImpl.h"
|
|
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsMIMEHeaderParamImpl)
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
#include "nsRequestObserverProxy.h"
|
|
#include "nsSimpleStreamListener.h"
|
|
#include "nsDirIndexParser.h"
|
|
#include "nsDirIndex.h"
|
|
|
|
typedef mozilla::net::nsRequestObserverProxy nsRequestObserverProxy;
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsRequestObserverProxy)
|
|
typedef mozilla::net::nsSimpleStreamListener nsSimpleStreamListener;
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsSimpleStreamListener)
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsDirIndexParser, Init)
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsDirIndex)
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
#include "nsStreamListenerTee.h"
|
|
typedef mozilla::net::nsStreamListenerTee nsStreamListenerTee;
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsStreamListenerTee)
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
#ifdef NECKO_COOKIES
|
|
#include "nsCookieService.h"
|
|
NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR(nsICookieService,
|
|
nsCookieService::GetXPCOMSingleton)
|
|
#endif
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
#ifdef NECKO_WIFI
|
|
|
|
#include "nsWifiMonitor.h"
|
|
#undef LOG
|
|
#undef LOG_ENABLED
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsWifiMonitor)
|
|
|
|
#endif
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
// protocols
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
// about:blank is mandatory
|
|
#include "nsAboutProtocolHandler.h"
|
|
#include "nsAboutBlank.h"
|
|
typedef mozilla::net::nsAboutProtocolHandler nsAboutProtocolHandler;
|
|
typedef mozilla::net::nsSafeAboutProtocolHandler nsSafeAboutProtocolHandler;
|
|
typedef mozilla::net::nsNestedAboutURI nsNestedAboutURI;
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsAboutProtocolHandler)
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsSafeAboutProtocolHandler)
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsNestedAboutURI)
|
|
|
|
// about
|
|
#include "nsAboutCache.h"
|
|
#include "nsAboutCacheEntry.h"
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsAboutCacheEntry)
|
|
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsApplicationCacheService)
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsApplicationCacheNamespace)
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsApplicationCache)
|
|
|
|
// file
|
|
#include "nsFileProtocolHandler.h"
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsFileProtocolHandler, Init)
|
|
|
|
// ftp
|
|
#include "nsFtpProtocolHandler.h"
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsFtpProtocolHandler, Init)
|
|
|
|
// http/https
|
|
#include "nsHttpHandler.h"
|
|
#include "Http2Compression.h"
|
|
#undef LOG
|
|
#undef LOG_ENABLED
|
|
#include "nsHttpAuthManager.h"
|
|
#include "nsHttpChannelAuthProvider.h"
|
|
#include "nsHttpBasicAuth.h"
|
|
#include "nsHttpDigestAuth.h"
|
|
#include "nsHttpNTLMAuth.h"
|
|
#include "nsHttpActivityDistributor.h"
|
|
#include "ThrottleQueue.h"
|
|
#include "BackgroundChannelRegistrar.h"
|
|
#undef LOG
|
|
#undef LOG_ENABLED
|
|
namespace mozilla {
|
|
namespace net {
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsHttpNTLMAuth)
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsHttpHandler, Init)
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsHttpsHandler, Init)
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsHttpAuthManager, Init)
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsHttpChannelAuthProvider)
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsHttpActivityDistributor)
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsHttpBasicAuth)
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsHttpDigestAuth)
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(ThrottleQueue)
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(BackgroundChannelRegistrar)
|
|
} // namespace net
|
|
} // namespace mozilla
|
|
|
|
#include "mozilla/net/Dashboard.h"
|
|
namespace mozilla {
|
|
namespace net {
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(Dashboard)
|
|
} // namespace net
|
|
} // namespace mozilla
|
|
|
|
#ifdef XP_WIN
|
|
#include "../socket/nsNamedPipeService.h"
|
|
namespace mozilla {
|
|
namespace net {
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(NamedPipeService, Init)
|
|
} // namespace net
|
|
} // namespace mozilla
|
|
#endif
|
|
|
|
// resource
|
|
#include "nsResProtocolHandler.h"
|
|
#include "ExtensionProtocolHandler.h"
|
|
#include "SubstitutingProtocolHandler.h"
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsResProtocolHandler, Init)
|
|
|
|
namespace mozilla {
|
|
NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR(ExtensionProtocolHandler,
|
|
ExtensionProtocolHandler::GetSingleton)
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(SubstitutingURL)
|
|
} // namespace mozilla
|
|
|
|
#include "nsDeviceProtocolHandler.h"
|
|
typedef mozilla::net::nsDeviceProtocolHandler nsDeviceProtocolHandler;
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsDeviceProtocolHandler)
|
|
|
|
#include "nsViewSourceHandler.h"
|
|
typedef mozilla::net::nsViewSourceHandler nsViewSourceHandler;
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsViewSourceHandler)
|
|
|
|
#include "nsDataHandler.h"
|
|
|
|
#include "nsWyciwygProtocolHandler.h"
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsWyciwygProtocolHandler)
|
|
|
|
#include "WebSocketChannel.h"
|
|
#include "WebSocketChannelChild.h"
|
|
namespace mozilla {
|
|
namespace net {
|
|
static BaseWebSocketChannel*
|
|
WebSocketChannelConstructor(bool aSecure)
|
|
{
|
|
if (IsNeckoChild()) {
|
|
return new WebSocketChannelChild(aSecure);
|
|
}
|
|
|
|
if (aSecure) {
|
|
return new WebSocketSSLChannel;
|
|
}
|
|
return new WebSocketChannel;
|
|
}
|
|
|
|
#define WEB_SOCKET_HANDLER_CONSTRUCTOR(type, secure) \
|
|
static nsresult \
|
|
type##Constructor(nsISupports *aOuter, REFNSIID aIID, \
|
|
void **aResult) \
|
|
{ \
|
|
nsresult rv; \
|
|
\
|
|
BaseWebSocketChannel * inst; \
|
|
\
|
|
*aResult = nullptr; \
|
|
if (nullptr != aOuter) { \
|
|
rv = NS_ERROR_NO_AGGREGATION; \
|
|
return rv; \
|
|
} \
|
|
inst = WebSocketChannelConstructor(secure); \
|
|
NS_ADDREF(inst); \
|
|
rv = inst->QueryInterface(aIID, aResult); \
|
|
NS_RELEASE(inst); \
|
|
return rv; \
|
|
}
|
|
|
|
WEB_SOCKET_HANDLER_CONSTRUCTOR(WebSocketChannel, false)
|
|
WEB_SOCKET_HANDLER_CONSTRUCTOR(WebSocketSSLChannel, true)
|
|
#undef WEB_SOCKET_HANDLER_CONSTRUCTOR
|
|
} // namespace net
|
|
} // namespace mozilla
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
#include "nsURLParsers.h"
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsNoAuthURLParser)
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsAuthURLParser)
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsStdURLParser)
|
|
|
|
#include "nsStandardURL.h"
|
|
typedef mozilla::net::nsStandardURL nsStandardURL;
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsStandardURL)
|
|
typedef mozilla::net::nsSimpleURI nsSimpleURI;
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsSimpleURI)
|
|
|
|
#ifdef MOZ_RUST_URLPARSE
|
|
#include "mozilla/net/RustURL.h"
|
|
typedef mozilla::net::RustURL RustURL;
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(RustURL)
|
|
#endif // MOZ_RUST_URLPARSE
|
|
|
|
typedef mozilla::net::nsSimpleNestedURI nsSimpleNestedURI;
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsSimpleNestedURI)
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
#include "nsIDNService.h"
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsIDNService, Init)
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
#if defined(XP_WIN)
|
|
#include "nsNotifyAddrListener.h"
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsNotifyAddrListener, Init)
|
|
#elif defined(MOZ_WIDGET_COCOA)
|
|
#include "nsNetworkLinkService.h"
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsNetworkLinkService, Init)
|
|
#elif defined(MOZ_WIDGET_ANDROID)
|
|
#include "nsAndroidNetworkLinkService.h"
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsAndroidNetworkLinkService)
|
|
#elif defined(XP_LINUX)
|
|
#include "nsNotifyAddrListener_Linux.h"
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsNotifyAddrListener, Init)
|
|
#endif
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
#include "nsFTPDirListingConv.h"
|
|
nsresult NS_NewFTPDirListingConv(nsFTPDirListingConv** result);
|
|
|
|
#include "nsStreamConverterService.h"
|
|
#include "nsMultiMixedConv.h"
|
|
#include "nsHTTPCompressConv.h"
|
|
#include "mozTXTToHTMLConv.h"
|
|
#include "nsUnknownDecoder.h"
|
|
|
|
#include "nsTXTToHTMLConv.h"
|
|
namespace mozilla {
|
|
namespace net {
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsTXTToHTMLConv, Init)
|
|
} // namespace net
|
|
} // namespace mozilla
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
#ifdef BUILD_NETWORK_INFO_SERVICE
|
|
#include "nsNetworkInfoService.h"
|
|
typedef mozilla::net::nsNetworkInfoService nsNetworkInfoService;
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsNetworkInfoService, Init)
|
|
#endif // BUILD_NETWORK_INFO_SERVICE
|
|
|
|
|
|
#include "nsIndexedToHTML.h"
|
|
#ifdef BUILD_BINHEX_DECODER
|
|
#include "nsBinHexDecoder.h"
|
|
#endif
|
|
|
|
nsresult NS_NewMultiMixedConv (nsMultiMixedConv** result);
|
|
nsresult MOZ_NewTXTToHTMLConv (mozTXTToHTMLConv** result);
|
|
nsresult NS_NewHTTPCompressConv (mozilla::net::nsHTTPCompressConv ** result);
|
|
nsresult NS_NewStreamConv(nsStreamConverterService **aStreamConv);
|
|
|
|
#define FTP_TO_INDEX "?from=text/ftp-dir&to=application/http-index-format"
|
|
#define INDEX_TO_HTML "?from=application/http-index-format&to=text/html"
|
|
#define MULTI_MIXED_X "?from=multipart/x-mixed-replace&to=*/*"
|
|
#define MULTI_MIXED "?from=multipart/mixed&to=*/*"
|
|
#define MULTI_BYTERANGES "?from=multipart/byteranges&to=*/*"
|
|
#define UNKNOWN_CONTENT "?from=" UNKNOWN_CONTENT_TYPE "&to=*/*"
|
|
#define GZIP_TO_UNCOMPRESSED "?from=gzip&to=uncompressed"
|
|
#define XGZIP_TO_UNCOMPRESSED "?from=x-gzip&to=uncompressed"
|
|
#define BROTLI_TO_UNCOMPRESSED "?from=br&to=uncompressed"
|
|
#define COMPRESS_TO_UNCOMPRESSED "?from=compress&to=uncompressed"
|
|
#define XCOMPRESS_TO_UNCOMPRESSED "?from=x-compress&to=uncompressed"
|
|
#define DEFLATE_TO_UNCOMPRESSED "?from=deflate&to=uncompressed"
|
|
#define PLAIN_TO_HTML "?from=text/plain&to=text/html"
|
|
|
|
#ifdef BUILD_BINHEX_DECODER
|
|
#define BINHEX_TO_WILD "?from=application/mac-binhex40&to=*/*"
|
|
#endif
|
|
|
|
static const mozilla::Module::CategoryEntry kNeckoCategories[] = {
|
|
{ NS_ISTREAMCONVERTER_KEY, FTP_TO_INDEX, "" },
|
|
{ NS_ISTREAMCONVERTER_KEY, INDEX_TO_HTML, "" },
|
|
{ NS_ISTREAMCONVERTER_KEY, MULTI_MIXED_X, "" },
|
|
{ NS_ISTREAMCONVERTER_KEY, MULTI_MIXED, "" },
|
|
{ NS_ISTREAMCONVERTER_KEY, MULTI_BYTERANGES, "" },
|
|
{ NS_ISTREAMCONVERTER_KEY, UNKNOWN_CONTENT, "" },
|
|
{ NS_ISTREAMCONVERTER_KEY, GZIP_TO_UNCOMPRESSED, "" },
|
|
{ NS_ISTREAMCONVERTER_KEY, XGZIP_TO_UNCOMPRESSED, "" },
|
|
{ NS_ISTREAMCONVERTER_KEY, BROTLI_TO_UNCOMPRESSED, "" },
|
|
{ NS_ISTREAMCONVERTER_KEY, COMPRESS_TO_UNCOMPRESSED, "" },
|
|
{ NS_ISTREAMCONVERTER_KEY, XCOMPRESS_TO_UNCOMPRESSED, "" },
|
|
{ NS_ISTREAMCONVERTER_KEY, DEFLATE_TO_UNCOMPRESSED, "" },
|
|
#ifdef BUILD_BINHEX_DECODER
|
|
{ NS_ISTREAMCONVERTER_KEY, BINHEX_TO_WILD, "" },
|
|
#endif
|
|
{ NS_ISTREAMCONVERTER_KEY, PLAIN_TO_HTML, "" },
|
|
NS_BINARYDETECTOR_CATEGORYENTRY,
|
|
{ nullptr }
|
|
};
|
|
|
|
#ifdef BUILD_BINHEX_DECODER
|
|
typedef mozilla::net::nsBinHexDecoder nsBinHexDecoder;
|
|
NS_GENERIC_FACTORY_CONSTRUCTOR(nsBinHexDecoder)
|
|
#endif
|
|
|
|
static nsresult
|
|
CreateNewStreamConvServiceFactory(nsISupports* aOuter, REFNSIID aIID, void **aResult)
|
|
{
|
|
if (!aResult) {
|
|
return NS_ERROR_INVALID_POINTER;
|
|
}
|
|
if (aOuter) {
|
|
*aResult = nullptr;
|
|
return NS_ERROR_NO_AGGREGATION;
|
|
}
|
|
nsStreamConverterService* inst = nullptr;
|
|
nsresult rv = NS_NewStreamConv(&inst);
|
|
if (NS_FAILED(rv)) {
|
|
*aResult = nullptr;
|
|
return rv;
|
|
}
|
|
rv = inst->QueryInterface(aIID, aResult);
|
|
if (NS_FAILED(rv)) {
|
|
*aResult = nullptr;
|
|
}
|
|
NS_RELEASE(inst); /* get rid of extra refcnt */
|
|
return rv;
|
|
}
|
|
|
|
static nsresult
|
|
CreateNewFTPDirListingConv(nsISupports* aOuter, REFNSIID aIID, void **aResult)
|
|
{
|
|
if (!aResult) {
|
|
return NS_ERROR_INVALID_POINTER;
|
|
}
|
|
if (aOuter) {
|
|
*aResult = nullptr;
|
|
return NS_ERROR_NO_AGGREGATION;
|
|
}
|
|
nsFTPDirListingConv* inst = nullptr;
|
|
nsresult rv = NS_NewFTPDirListingConv(&inst);
|
|
if (NS_FAILED(rv)) {
|
|
*aResult = nullptr;
|
|
return rv;
|
|
}
|
|
rv = inst->QueryInterface(aIID, aResult);
|
|
if (NS_FAILED(rv)) {
|
|
*aResult = nullptr;
|
|
}
|
|
NS_RELEASE(inst); /* get rid of extra refcnt */
|
|
return rv;
|
|
}
|
|
|
|
static nsresult
|
|
CreateNewMultiMixedConvFactory(nsISupports* aOuter, REFNSIID aIID, void **aResult)
|
|
{
|
|
if (!aResult) {
|
|
return NS_ERROR_INVALID_POINTER;
|
|
}
|
|
if (aOuter) {
|
|
*aResult = nullptr;
|
|
return NS_ERROR_NO_AGGREGATION;
|
|
}
|
|
nsMultiMixedConv* inst = nullptr;
|
|
nsresult rv = NS_NewMultiMixedConv(&inst);
|
|
if (NS_FAILED(rv)) {
|
|
*aResult = nullptr;
|
|
return rv;
|
|
}
|
|
rv = inst->QueryInterface(aIID, aResult);
|
|
if (NS_FAILED(rv)) {
|
|
*aResult = nullptr;
|
|
}
|
|
NS_RELEASE(inst); /* get rid of extra refcnt */
|
|
return rv;
|
|
}
|
|
|
|
static nsresult
|
|
CreateNewTXTToHTMLConvFactory(nsISupports* aOuter, REFNSIID aIID, void **aResult)
|
|
{
|
|
if (!aResult) {
|
|
return NS_ERROR_INVALID_POINTER;
|
|
}
|
|
if (aOuter) {
|
|
*aResult = nullptr;
|
|
return NS_ERROR_NO_AGGREGATION;
|
|
}
|
|
mozTXTToHTMLConv* inst = nullptr;
|
|
nsresult rv = MOZ_NewTXTToHTMLConv(&inst);
|
|
if (NS_FAILED(rv)) {
|
|
*aResult = nullptr;
|
|
return rv;
|
|
}
|
|
rv = inst->QueryInterface(aIID, aResult);
|
|
if (NS_FAILED(rv)) {
|
|
*aResult = nullptr;
|
|
}
|
|
NS_RELEASE(inst); /* get rid of extra refcnt */
|
|
return rv;
|
|
}
|
|
|
|
static nsresult
|
|
CreateNewHTTPCompressConvFactory (nsISupports* aOuter, REFNSIID aIID, void **aResult)
|
|
{
|
|
if (!aResult) {
|
|
return NS_ERROR_INVALID_POINTER;
|
|
}
|
|
if (aOuter) {
|
|
*aResult = nullptr;
|
|
return NS_ERROR_NO_AGGREGATION;
|
|
}
|
|
mozilla::net::nsHTTPCompressConv* inst = nullptr;
|
|
nsresult rv = NS_NewHTTPCompressConv (&inst);
|
|
if (NS_FAILED(rv)) {
|
|
*aResult = nullptr;
|
|
return rv;
|
|
}
|
|
rv = inst->QueryInterface(aIID, aResult);
|
|
if (NS_FAILED(rv)) {
|
|
*aResult = nullptr;
|
|
}
|
|
NS_RELEASE(inst); /* get rid of extra refcnt */
|
|
return rv;
|
|
}
|
|
|
|
static nsresult
|
|
CreateNewUnknownDecoderFactory(nsISupports *aOuter, REFNSIID aIID, void **aResult)
|
|
{
|
|
nsresult rv;
|
|
|
|
if (!aResult) {
|
|
return NS_ERROR_NULL_POINTER;
|
|
}
|
|
*aResult = nullptr;
|
|
|
|
if (aOuter) {
|
|
return NS_ERROR_NO_AGGREGATION;
|
|
}
|
|
|
|
nsUnknownDecoder *inst;
|
|
|
|
inst = new nsUnknownDecoder();
|
|
if (!inst) {
|
|
return NS_ERROR_OUT_OF_MEMORY;
|
|
}
|
|
NS_ADDREF(inst);
|
|
rv = inst->QueryInterface(aIID, aResult);
|
|
NS_RELEASE(inst);
|
|
|
|
return rv;
|
|
}
|
|
|
|
static nsresult
|
|
CreateNewBinaryDetectorFactory(nsISupports *aOuter, REFNSIID aIID, void **aResult)
|
|
{
|
|
nsresult rv;
|
|
|
|
if (!aResult) {
|
|
return NS_ERROR_NULL_POINTER;
|
|
}
|
|
*aResult = nullptr;
|
|
|
|
if (aOuter) {
|
|
return NS_ERROR_NO_AGGREGATION;
|
|
}
|
|
|
|
auto* inst = new nsBinaryDetector();
|
|
if (!inst) {
|
|
return NS_ERROR_OUT_OF_MEMORY;
|
|
}
|
|
NS_ADDREF(inst);
|
|
rv = inst->QueryInterface(aIID, aResult);
|
|
NS_RELEASE(inst);
|
|
|
|
return rv;
|
|
}
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
// Module implementation for the net library
|
|
|
|
// Net module startup hook
|
|
static nsresult nsNetStartup()
|
|
{
|
|
return NS_OK;
|
|
}
|
|
|
|
// Net module shutdown hook
|
|
static void nsNetShutdown()
|
|
{
|
|
// Release the url parser that the stdurl is holding.
|
|
nsStandardURL::ShutdownGlobalObjects();
|
|
|
|
// Release global state used by the URL helper module.
|
|
net_ShutdownURLHelper();
|
|
#ifdef XP_MACOSX
|
|
net_ShutdownURLHelperOSX();
|
|
#endif
|
|
|
|
// Release DNS service reference.
|
|
nsDNSPrefetch::Shutdown();
|
|
|
|
// Release the Websocket Admission Manager
|
|
mozilla::net::WebSocketChannel::Shutdown();
|
|
|
|
mozilla::net::Http2CompressionCleanup();
|
|
|
|
delete gNetSniffers;
|
|
gNetSniffers = nullptr;
|
|
delete gDataSniffers;
|
|
gDataSniffers = nullptr;
|
|
}
|
|
|
|
NS_DEFINE_NAMED_CID(NS_IOSERVICE_CID);
|
|
NS_DEFINE_NAMED_CID(NS_STREAMTRANSPORTSERVICE_CID);
|
|
NS_DEFINE_NAMED_CID(NS_SOCKETTRANSPORTSERVICE_CID);
|
|
NS_DEFINE_NAMED_CID(NS_SERVERSOCKET_CID);
|
|
NS_DEFINE_NAMED_CID(NS_TLSSERVERSOCKET_CID);
|
|
NS_DEFINE_NAMED_CID(NS_UDPSOCKET_CID);
|
|
NS_DEFINE_NAMED_CID(NS_SOCKETPROVIDERSERVICE_CID);
|
|
NS_DEFINE_NAMED_CID(NS_DNSSERVICE_CID);
|
|
NS_DEFINE_NAMED_CID(NS_IDNSERVICE_CID);
|
|
NS_DEFINE_NAMED_CID(NS_EFFECTIVETLDSERVICE_CID);
|
|
NS_DEFINE_NAMED_CID(NS_SIMPLEURI_CID);
|
|
NS_DEFINE_NAMED_CID(NS_SIMPLENESTEDURI_CID);
|
|
NS_DEFINE_NAMED_CID(NS_ASYNCSTREAMCOPIER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_INPUTSTREAMPUMP_CID);
|
|
NS_DEFINE_NAMED_CID(NS_INPUTSTREAMCHANNEL_CID);
|
|
NS_DEFINE_NAMED_CID(NS_STREAMLOADER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_INCREMENTALSTREAMLOADER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_UNICHARSTREAMLOADER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_DOWNLOADER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_BACKGROUNDFILESAVEROUTPUTSTREAM_CID);
|
|
NS_DEFINE_NAMED_CID(NS_BACKGROUNDFILESAVERSTREAMLISTENER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_SYNCSTREAMLISTENER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_REQUESTOBSERVERPROXY_CID);
|
|
NS_DEFINE_NAMED_CID(NS_SIMPLESTREAMLISTENER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_STREAMLISTENERTEE_CID);
|
|
NS_DEFINE_NAMED_CID(NS_LOADGROUP_CID);
|
|
NS_DEFINE_NAMED_CID(NS_LOCALFILEINPUTSTREAM_CID);
|
|
NS_DEFINE_NAMED_CID(NS_LOCALFILEOUTPUTSTREAM_CID);
|
|
NS_DEFINE_NAMED_CID(NS_ATOMICLOCALFILEOUTPUTSTREAM_CID);
|
|
NS_DEFINE_NAMED_CID(NS_SAFELOCALFILEOUTPUTSTREAM_CID);
|
|
NS_DEFINE_NAMED_CID(NS_LOCALFILESTREAM_CID);
|
|
NS_DEFINE_NAMED_CID(NS_INCREMENTALDOWNLOAD_CID);
|
|
NS_DEFINE_NAMED_CID(NS_STDURLPARSER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_NOAUTHURLPARSER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_AUTHURLPARSER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_STANDARDURL_CID);
|
|
#ifdef MOZ_RUST_URLPARSE
|
|
NS_DEFINE_NAMED_CID(NS_RUSTURL_CID);
|
|
#endif
|
|
NS_DEFINE_NAMED_CID(NS_ARRAYBUFFERINPUTSTREAM_CID);
|
|
NS_DEFINE_NAMED_CID(NS_BUFFEREDINPUTSTREAM_CID);
|
|
NS_DEFINE_NAMED_CID(NS_BUFFEREDOUTPUTSTREAM_CID);
|
|
NS_DEFINE_NAMED_CID(NS_MIMEINPUTSTREAM_CID);
|
|
NS_DEFINE_NAMED_CID(NS_PROTOCOLPROXYSERVICE_CID);
|
|
NS_DEFINE_NAMED_CID(NS_STREAMCONVERTERSERVICE_CID);
|
|
#if defined(XP_WIN)
|
|
NS_DEFINE_NAMED_CID(NS_NAMEDPIPESERVICE_CID);
|
|
#endif
|
|
NS_DEFINE_NAMED_CID(NS_DASHBOARD_CID);
|
|
NS_DEFINE_NAMED_CID(NS_FTPDIRLISTINGCONVERTER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_NSINDEXEDTOHTMLCONVERTER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_DIRINDEXPARSER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_MULTIMIXEDCONVERTER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_UNKNOWNDECODER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_BINARYDETECTOR_CID);
|
|
NS_DEFINE_NAMED_CID(NS_HTTPCOMPRESSCONVERTER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_NSTXTTOHTMLCONVERTER_CID);
|
|
#ifdef BUILD_BINHEX_DECODER
|
|
NS_DEFINE_NAMED_CID(NS_BINHEXDECODER_CID);
|
|
#endif
|
|
NS_DEFINE_NAMED_CID(MOZITXTTOHTMLCONV_CID);
|
|
NS_DEFINE_NAMED_CID(NS_DIRINDEX_CID);
|
|
NS_DEFINE_NAMED_CID(NS_MIMEHEADERPARAM_CID);
|
|
NS_DEFINE_NAMED_CID(NS_FILEPROTOCOLHANDLER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_HTTPPROTOCOLHANDLER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_HTTPSPROTOCOLHANDLER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_HTTPBASICAUTH_CID);
|
|
NS_DEFINE_NAMED_CID(NS_HTTPDIGESTAUTH_CID);
|
|
NS_DEFINE_NAMED_CID(NS_HTTPNTLMAUTH_CID);
|
|
NS_DEFINE_NAMED_CID(NS_HTTPAUTHMANAGER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_HTTPCHANNELAUTHPROVIDER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_HTTPACTIVITYDISTRIBUTOR_CID);
|
|
NS_DEFINE_NAMED_CID(NS_THROTTLEQUEUE_CID);
|
|
NS_DEFINE_NAMED_CID(NS_BACKGROUNDCHANNELREGISTRAR_CID);
|
|
NS_DEFINE_NAMED_CID(NS_FTPPROTOCOLHANDLER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_RESPROTOCOLHANDLER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_EXTENSIONPROTOCOLHANDLER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_SUBSTITUTINGURL_CID);
|
|
NS_DEFINE_NAMED_CID(NS_ABOUTPROTOCOLHANDLER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_SAFEABOUTPROTOCOLHANDLER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_ABOUT_BLANK_MODULE_CID);
|
|
NS_DEFINE_NAMED_CID(NS_NESTEDABOUTURI_CID);
|
|
NS_DEFINE_NAMED_CID(NS_ABOUT_CACHE_MODULE_CID);
|
|
NS_DEFINE_NAMED_CID(NS_ABOUT_CACHE_ENTRY_MODULE_CID);
|
|
NS_DEFINE_NAMED_CID(NS_SOCKSSOCKETPROVIDER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_SOCKS4SOCKETPROVIDER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_UDPSOCKETPROVIDER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_CACHESERVICE_CID);
|
|
NS_DEFINE_NAMED_CID(NS_APPLICATIONCACHESERVICE_CID);
|
|
NS_DEFINE_NAMED_CID(NS_APPLICATIONCACHENAMESPACE_CID);
|
|
NS_DEFINE_NAMED_CID(NS_APPLICATIONCACHE_CID);
|
|
#ifdef NECKO_COOKIES
|
|
NS_DEFINE_NAMED_CID(NS_COOKIEMANAGER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_COOKIESERVICE_CID);
|
|
#endif
|
|
#ifdef NECKO_WIFI
|
|
NS_DEFINE_NAMED_CID(NS_WIFI_MONITOR_COMPONENT_CID);
|
|
#endif
|
|
NS_DEFINE_NAMED_CID(NS_DATAPROTOCOLHANDLER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_DEVICEPROTOCOLHANDLER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_VIEWSOURCEHANDLER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_WYCIWYGPROTOCOLHANDLER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_WEBSOCKETPROTOCOLHANDLER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_WEBSOCKETSSLPROTOCOLHANDLER_CID);
|
|
#if defined(XP_WIN)
|
|
NS_DEFINE_NAMED_CID(NS_NETWORK_LINK_SERVICE_CID);
|
|
#elif defined(MOZ_WIDGET_COCOA)
|
|
NS_DEFINE_NAMED_CID(NS_NETWORK_LINK_SERVICE_CID);
|
|
#elif defined(MOZ_WIDGET_ANDROID)
|
|
NS_DEFINE_NAMED_CID(NS_NETWORK_LINK_SERVICE_CID);
|
|
#elif defined(XP_LINUX)
|
|
NS_DEFINE_NAMED_CID(NS_NETWORK_LINK_SERVICE_CID);
|
|
#endif
|
|
NS_DEFINE_NAMED_CID(NS_SERIALIZATION_HELPER_CID);
|
|
NS_DEFINE_NAMED_CID(NS_REDIRECTCHANNELREGISTRAR_CID);
|
|
NS_DEFINE_NAMED_CID(NS_CACHE_STORAGE_SERVICE_CID);
|
|
NS_DEFINE_NAMED_CID(NS_NSILOADCONTEXTINFOFACTORY_CID);
|
|
NS_DEFINE_NAMED_CID(NS_NETWORKPREDICTOR_CID);
|
|
NS_DEFINE_NAMED_CID(NS_CAPTIVEPORTAL_CID);
|
|
NS_DEFINE_NAMED_CID(NS_REQUESTCONTEXTSERVICE_CID);
|
|
#ifdef BUILD_NETWORK_INFO_SERVICE
|
|
NS_DEFINE_NAMED_CID(NETWORKINFOSERVICE_CID);
|
|
#endif // BUILD_NETWORK_INFO_SERVICE
|
|
|
|
static const mozilla::Module::CIDEntry kNeckoCIDs[] = {
|
|
{ &kNS_IOSERVICE_CID, false, nullptr, nsIOServiceConstructor },
|
|
{ &kNS_STREAMTRANSPORTSERVICE_CID, false, nullptr, nsStreamTransportServiceConstructor },
|
|
{ &kNS_SOCKETTRANSPORTSERVICE_CID, false, nullptr, nsSocketTransportServiceConstructor },
|
|
{ &kNS_SERVERSOCKET_CID, false, nullptr, nsServerSocketConstructor },
|
|
{ &kNS_TLSSERVERSOCKET_CID, false, nullptr, TLSServerSocketConstructor },
|
|
{ &kNS_UDPSOCKET_CID, false, nullptr, nsUDPSocketConstructor },
|
|
{ &kNS_SOCKETPROVIDERSERVICE_CID, false, nullptr, nsSocketProviderService::Create },
|
|
{ &kNS_DNSSERVICE_CID, false, nullptr, nsIDNSServiceConstructor },
|
|
{ &kNS_IDNSERVICE_CID, false, nullptr, nsIDNServiceConstructor },
|
|
{ &kNS_EFFECTIVETLDSERVICE_CID, false, nullptr, nsEffectiveTLDServiceConstructor },
|
|
{ &kNS_SIMPLEURI_CID, false, nullptr, nsSimpleURIConstructor },
|
|
{ &kNS_SIMPLENESTEDURI_CID, false, nullptr, nsSimpleNestedURIConstructor },
|
|
{ &kNS_ASYNCSTREAMCOPIER_CID, false, nullptr, nsAsyncStreamCopierConstructor },
|
|
{ &kNS_INPUTSTREAMPUMP_CID, false, nullptr, nsInputStreamPumpConstructor },
|
|
{ &kNS_INPUTSTREAMCHANNEL_CID, false, nullptr, nsInputStreamChannelConstructor },
|
|
{ &kNS_STREAMLOADER_CID, false, nullptr, mozilla::net::nsStreamLoader::Create },
|
|
{ &kNS_INCREMENTALSTREAMLOADER_CID, false, nullptr, nsIncrementalStreamLoader::Create },
|
|
{ &kNS_UNICHARSTREAMLOADER_CID, false, nullptr, nsUnicharStreamLoader::Create },
|
|
{ &kNS_DOWNLOADER_CID, false, nullptr, nsDownloaderConstructor },
|
|
{ &kNS_BACKGROUNDFILESAVEROUTPUTSTREAM_CID, false, nullptr,
|
|
mozilla::net::BackgroundFileSaverOutputStreamConstructor },
|
|
{ &kNS_BACKGROUNDFILESAVERSTREAMLISTENER_CID, false, nullptr,
|
|
mozilla::net::BackgroundFileSaverStreamListenerConstructor },
|
|
{ &kNS_SYNCSTREAMLISTENER_CID, false, nullptr, nsSyncStreamListenerConstructor },
|
|
{ &kNS_REQUESTOBSERVERPROXY_CID, false, nullptr, nsRequestObserverProxyConstructor },
|
|
{ &kNS_SIMPLESTREAMLISTENER_CID, false, nullptr, nsSimpleStreamListenerConstructor },
|
|
{ &kNS_STREAMLISTENERTEE_CID, false, nullptr, nsStreamListenerTeeConstructor },
|
|
{ &kNS_LOADGROUP_CID, false, nullptr, nsLoadGroupConstructor },
|
|
{ &kNS_LOCALFILEINPUTSTREAM_CID, false, nullptr, nsFileInputStream::Create },
|
|
{ &kNS_LOCALFILEOUTPUTSTREAM_CID, false, nullptr, nsFileOutputStream::Create },
|
|
{ &kNS_ATOMICLOCALFILEOUTPUTSTREAM_CID, false, nullptr, nsAtomicFileOutputStreamConstructor },
|
|
{ &kNS_SAFELOCALFILEOUTPUTSTREAM_CID, false, nullptr, nsSafeFileOutputStreamConstructor },
|
|
{ &kNS_LOCALFILESTREAM_CID, false, nullptr, nsFileStreamConstructor },
|
|
{ &kNS_INCREMENTALDOWNLOAD_CID, false, nullptr, net_NewIncrementalDownload },
|
|
{ &kNS_STDURLPARSER_CID, false, nullptr, nsStdURLParserConstructor },
|
|
{ &kNS_NOAUTHURLPARSER_CID, false, nullptr, nsNoAuthURLParserConstructor },
|
|
{ &kNS_AUTHURLPARSER_CID, false, nullptr, nsAuthURLParserConstructor },
|
|
{ &kNS_STANDARDURL_CID, false, nullptr, nsStandardURLConstructor },
|
|
#ifdef MOZ_RUST_URLPARSE
|
|
{ &kNS_RUSTURL_CID, false, nullptr, RustURLConstructor },
|
|
#endif
|
|
{ &kNS_ARRAYBUFFERINPUTSTREAM_CID, false, nullptr, ArrayBufferInputStreamConstructor },
|
|
{ &kNS_BUFFEREDINPUTSTREAM_CID, false, nullptr, nsBufferedInputStream::Create },
|
|
{ &kNS_BUFFEREDOUTPUTSTREAM_CID, false, nullptr, nsBufferedOutputStream::Create },
|
|
{ &kNS_MIMEINPUTSTREAM_CID, false, nullptr, nsMIMEInputStreamConstructor },
|
|
{ &kNS_PROTOCOLPROXYSERVICE_CID, true, nullptr, nsProtocolProxyServiceConstructor },
|
|
{ &kNS_STREAMCONVERTERSERVICE_CID, false, nullptr, CreateNewStreamConvServiceFactory },
|
|
#if defined (XP_WIN)
|
|
{ &kNS_NAMEDPIPESERVICE_CID, false, NULL, mozilla::net::NamedPipeServiceConstructor },
|
|
#endif
|
|
{ &kNS_DASHBOARD_CID, false, nullptr, mozilla::net::DashboardConstructor },
|
|
{ &kNS_FTPDIRLISTINGCONVERTER_CID, false, nullptr, CreateNewFTPDirListingConv },
|
|
{ &kNS_NSINDEXEDTOHTMLCONVERTER_CID, false, nullptr, nsIndexedToHTML::Create },
|
|
{ &kNS_DIRINDEXPARSER_CID, false, nullptr, nsDirIndexParserConstructor },
|
|
{ &kNS_MULTIMIXEDCONVERTER_CID, false, nullptr, CreateNewMultiMixedConvFactory },
|
|
{ &kNS_UNKNOWNDECODER_CID, false, nullptr, CreateNewUnknownDecoderFactory },
|
|
{ &kNS_BINARYDETECTOR_CID, false, nullptr, CreateNewBinaryDetectorFactory },
|
|
{ &kNS_HTTPCOMPRESSCONVERTER_CID, false, nullptr, CreateNewHTTPCompressConvFactory },
|
|
{ &kNS_NSTXTTOHTMLCONVERTER_CID, false, nullptr, mozilla::net::nsTXTToHTMLConvConstructor },
|
|
#ifdef BUILD_BINHEX_DECODER
|
|
{ &kNS_BINHEXDECODER_CID, false, nullptr, nsBinHexDecoderConstructor },
|
|
#endif
|
|
{ &kMOZITXTTOHTMLCONV_CID, false, nullptr, CreateNewTXTToHTMLConvFactory },
|
|
{ &kNS_DIRINDEX_CID, false, nullptr, nsDirIndexConstructor },
|
|
{ &kNS_MIMEHEADERPARAM_CID, false, nullptr, nsMIMEHeaderParamImplConstructor },
|
|
{ &kNS_FILEPROTOCOLHANDLER_CID, false, nullptr, nsFileProtocolHandlerConstructor },
|
|
{ &kNS_HTTPPROTOCOLHANDLER_CID, false, nullptr, mozilla::net::nsHttpHandlerConstructor },
|
|
{ &kNS_HTTPSPROTOCOLHANDLER_CID, false, nullptr, mozilla::net::nsHttpsHandlerConstructor },
|
|
{ &kNS_HTTPBASICAUTH_CID, false, nullptr, mozilla::net::nsHttpBasicAuthConstructor },
|
|
{ &kNS_HTTPDIGESTAUTH_CID, false, nullptr, mozilla::net::nsHttpDigestAuthConstructor },
|
|
{ &kNS_HTTPNTLMAUTH_CID, false, nullptr, mozilla::net::nsHttpNTLMAuthConstructor },
|
|
{ &kNS_HTTPAUTHMANAGER_CID, false, nullptr, mozilla::net::nsHttpAuthManagerConstructor },
|
|
{ &kNS_HTTPCHANNELAUTHPROVIDER_CID, false, nullptr, mozilla::net::nsHttpChannelAuthProviderConstructor },
|
|
{ &kNS_HTTPACTIVITYDISTRIBUTOR_CID, false, nullptr, mozilla::net::nsHttpActivityDistributorConstructor },
|
|
{ &kNS_THROTTLEQUEUE_CID, false, nullptr, mozilla::net::ThrottleQueueConstructor },
|
|
{ &kNS_BACKGROUNDCHANNELREGISTRAR_CID, false, nullptr, mozilla::net::BackgroundChannelRegistrarConstructor },
|
|
{ &kNS_FTPPROTOCOLHANDLER_CID, false, nullptr, nsFtpProtocolHandlerConstructor },
|
|
{ &kNS_RESPROTOCOLHANDLER_CID, false, nullptr, nsResProtocolHandlerConstructor },
|
|
{ &kNS_EXTENSIONPROTOCOLHANDLER_CID, false, nullptr, mozilla::ExtensionProtocolHandlerConstructor },
|
|
{ &kNS_SUBSTITUTINGURL_CID, false, nullptr, mozilla::SubstitutingURLConstructor },
|
|
{ &kNS_ABOUTPROTOCOLHANDLER_CID, false, nullptr, nsAboutProtocolHandlerConstructor },
|
|
{ &kNS_SAFEABOUTPROTOCOLHANDLER_CID, false, nullptr, nsSafeAboutProtocolHandlerConstructor },
|
|
{ &kNS_ABOUT_BLANK_MODULE_CID, false, nullptr, nsAboutBlank::Create },
|
|
{ &kNS_NESTEDABOUTURI_CID, false, nullptr, nsNestedAboutURIConstructor },
|
|
{ &kNS_ABOUT_CACHE_MODULE_CID, false, nullptr, nsAboutCache::Create },
|
|
{ &kNS_ABOUT_CACHE_ENTRY_MODULE_CID, false, nullptr, nsAboutCacheEntryConstructor },
|
|
{ &kNS_SOCKSSOCKETPROVIDER_CID, false, nullptr, nsSOCKSSocketProvider::CreateV5 },
|
|
{ &kNS_SOCKS4SOCKETPROVIDER_CID, false, nullptr, nsSOCKSSocketProvider::CreateV4 },
|
|
{ &kNS_UDPSOCKETPROVIDER_CID, false, nullptr, nsUDPSocketProviderConstructor },
|
|
{ &kNS_CACHESERVICE_CID, false, nullptr, nsCacheService::Create },
|
|
{ &kNS_APPLICATIONCACHESERVICE_CID, false, nullptr, nsApplicationCacheServiceConstructor },
|
|
{ &kNS_APPLICATIONCACHENAMESPACE_CID, false, nullptr, nsApplicationCacheNamespaceConstructor },
|
|
{ &kNS_APPLICATIONCACHE_CID, false, nullptr, nsApplicationCacheConstructor },
|
|
#ifdef NECKO_COOKIES
|
|
{ &kNS_COOKIEMANAGER_CID, false, nullptr, nsICookieServiceConstructor },
|
|
{ &kNS_COOKIESERVICE_CID, false, nullptr, nsICookieServiceConstructor },
|
|
#endif
|
|
#ifdef NECKO_WIFI
|
|
{ &kNS_WIFI_MONITOR_COMPONENT_CID, false, nullptr, nsWifiMonitorConstructor },
|
|
#endif
|
|
{ &kNS_DATAPROTOCOLHANDLER_CID, false, nullptr, nsDataHandler::Create },
|
|
{ &kNS_DEVICEPROTOCOLHANDLER_CID, false, nullptr, nsDeviceProtocolHandlerConstructor},
|
|
{ &kNS_VIEWSOURCEHANDLER_CID, false, nullptr, nsViewSourceHandlerConstructor },
|
|
{ &kNS_WYCIWYGPROTOCOLHANDLER_CID, false, nullptr, nsWyciwygProtocolHandlerConstructor },
|
|
{ &kNS_WEBSOCKETPROTOCOLHANDLER_CID, false, nullptr,
|
|
mozilla::net::WebSocketChannelConstructor },
|
|
{ &kNS_WEBSOCKETSSLPROTOCOLHANDLER_CID, false, nullptr,
|
|
mozilla::net::WebSocketSSLChannelConstructor },
|
|
#if defined(XP_WIN)
|
|
{ &kNS_NETWORK_LINK_SERVICE_CID, false, nullptr, nsNotifyAddrListenerConstructor },
|
|
#elif defined(MOZ_WIDGET_COCOA)
|
|
{ &kNS_NETWORK_LINK_SERVICE_CID, false, nullptr, nsNetworkLinkServiceConstructor },
|
|
#elif defined(MOZ_WIDGET_ANDROID)
|
|
{ &kNS_NETWORK_LINK_SERVICE_CID, false, nullptr, nsAndroidNetworkLinkServiceConstructor },
|
|
#elif defined(XP_LINUX)
|
|
{ &kNS_NETWORK_LINK_SERVICE_CID, false, nullptr, nsNotifyAddrListenerConstructor },
|
|
#endif
|
|
{ &kNS_SERIALIZATION_HELPER_CID, false, nullptr, nsSerializationHelperConstructor },
|
|
{ &kNS_REDIRECTCHANNELREGISTRAR_CID, false, nullptr, RedirectChannelRegistrarConstructor },
|
|
{ &kNS_CACHE_STORAGE_SERVICE_CID, false, nullptr, CacheStorageServiceConstructor },
|
|
{ &kNS_NSILOADCONTEXTINFOFACTORY_CID, false, nullptr, LoadContextInfoFactoryConstructor },
|
|
{ &kNS_NETWORKPREDICTOR_CID, false, nullptr, mozilla::net::Predictor::Create },
|
|
{ &kNS_CAPTIVEPORTAL_CID, false, nullptr, mozilla::net::CaptivePortalServiceConstructor },
|
|
{ &kNS_REQUESTCONTEXTSERVICE_CID, false, nullptr, RequestContextServiceConstructor },
|
|
#ifdef BUILD_NETWORK_INFO_SERVICE
|
|
{ &kNETWORKINFOSERVICE_CID, false, nullptr, nsNetworkInfoServiceConstructor },
|
|
#endif
|
|
{ nullptr }
|
|
};
|
|
|
|
static const mozilla::Module::ContractIDEntry kNeckoContracts[] = {
|
|
{ NS_IOSERVICE_CONTRACTID, &kNS_IOSERVICE_CID },
|
|
{ NS_NETUTIL_CONTRACTID, &kNS_IOSERVICE_CID },
|
|
{ NS_STREAMTRANSPORTSERVICE_CONTRACTID, &kNS_STREAMTRANSPORTSERVICE_CID },
|
|
{ NS_SOCKETTRANSPORTSERVICE_CONTRACTID, &kNS_SOCKETTRANSPORTSERVICE_CID },
|
|
{ NS_SERVERSOCKET_CONTRACTID, &kNS_SERVERSOCKET_CID },
|
|
{ NS_TLSSERVERSOCKET_CONTRACTID, &kNS_TLSSERVERSOCKET_CID },
|
|
{ NS_UDPSOCKET_CONTRACTID, &kNS_UDPSOCKET_CID },
|
|
{ NS_SOCKETPROVIDERSERVICE_CONTRACTID, &kNS_SOCKETPROVIDERSERVICE_CID },
|
|
{ NS_DNSSERVICE_CONTRACTID, &kNS_DNSSERVICE_CID },
|
|
{ NS_IDNSERVICE_CONTRACTID, &kNS_IDNSERVICE_CID },
|
|
{ NS_EFFECTIVETLDSERVICE_CONTRACTID, &kNS_EFFECTIVETLDSERVICE_CID },
|
|
{ NS_SIMPLEURI_CONTRACTID, &kNS_SIMPLEURI_CID },
|
|
{ NS_ASYNCSTREAMCOPIER_CONTRACTID, &kNS_ASYNCSTREAMCOPIER_CID },
|
|
{ NS_INPUTSTREAMPUMP_CONTRACTID, &kNS_INPUTSTREAMPUMP_CID },
|
|
{ NS_INPUTSTREAMCHANNEL_CONTRACTID, &kNS_INPUTSTREAMCHANNEL_CID },
|
|
{ NS_STREAMLOADER_CONTRACTID, &kNS_STREAMLOADER_CID },
|
|
{ NS_INCREMENTALSTREAMLOADER_CONTRACTID, &kNS_INCREMENTALSTREAMLOADER_CID },
|
|
{ NS_UNICHARSTREAMLOADER_CONTRACTID, &kNS_UNICHARSTREAMLOADER_CID },
|
|
{ NS_DOWNLOADER_CONTRACTID, &kNS_DOWNLOADER_CID },
|
|
{ NS_BACKGROUNDFILESAVEROUTPUTSTREAM_CONTRACTID, &kNS_BACKGROUNDFILESAVEROUTPUTSTREAM_CID },
|
|
{ NS_BACKGROUNDFILESAVERSTREAMLISTENER_CONTRACTID, &kNS_BACKGROUNDFILESAVERSTREAMLISTENER_CID },
|
|
{ NS_SYNCSTREAMLISTENER_CONTRACTID, &kNS_SYNCSTREAMLISTENER_CID },
|
|
{ NS_REQUESTOBSERVERPROXY_CONTRACTID, &kNS_REQUESTOBSERVERPROXY_CID },
|
|
{ NS_SIMPLESTREAMLISTENER_CONTRACTID, &kNS_SIMPLESTREAMLISTENER_CID },
|
|
{ NS_STREAMLISTENERTEE_CONTRACTID, &kNS_STREAMLISTENERTEE_CID },
|
|
{ NS_LOADGROUP_CONTRACTID, &kNS_LOADGROUP_CID },
|
|
{ NS_LOCALFILEINPUTSTREAM_CONTRACTID, &kNS_LOCALFILEINPUTSTREAM_CID },
|
|
{ NS_LOCALFILEOUTPUTSTREAM_CONTRACTID, &kNS_LOCALFILEOUTPUTSTREAM_CID },
|
|
{ NS_ATOMICLOCALFILEOUTPUTSTREAM_CONTRACTID, &kNS_ATOMICLOCALFILEOUTPUTSTREAM_CID },
|
|
{ NS_SAFELOCALFILEOUTPUTSTREAM_CONTRACTID, &kNS_SAFELOCALFILEOUTPUTSTREAM_CID },
|
|
{ NS_LOCALFILESTREAM_CONTRACTID, &kNS_LOCALFILESTREAM_CID },
|
|
{ NS_INCREMENTALDOWNLOAD_CONTRACTID, &kNS_INCREMENTALDOWNLOAD_CID },
|
|
{ NS_STDURLPARSER_CONTRACTID, &kNS_STDURLPARSER_CID },
|
|
{ NS_NOAUTHURLPARSER_CONTRACTID, &kNS_NOAUTHURLPARSER_CID },
|
|
{ NS_AUTHURLPARSER_CONTRACTID, &kNS_AUTHURLPARSER_CID },
|
|
{ NS_STANDARDURL_CONTRACTID, &kNS_STANDARDURL_CID },
|
|
#ifdef MOZ_RUST_URLPARSE
|
|
{ NS_RUSTURL_CONTRACTID, &kNS_RUSTURL_CID },
|
|
#endif
|
|
{ NS_ARRAYBUFFERINPUTSTREAM_CONTRACTID, &kNS_ARRAYBUFFERINPUTSTREAM_CID },
|
|
{ NS_BUFFEREDINPUTSTREAM_CONTRACTID, &kNS_BUFFEREDINPUTSTREAM_CID },
|
|
{ NS_BUFFEREDOUTPUTSTREAM_CONTRACTID, &kNS_BUFFEREDOUTPUTSTREAM_CID },
|
|
{ NS_MIMEINPUTSTREAM_CONTRACTID, &kNS_MIMEINPUTSTREAM_CID },
|
|
{ NS_PROTOCOLPROXYSERVICE_CONTRACTID, &kNS_PROTOCOLPROXYSERVICE_CID },
|
|
{ NS_STREAMCONVERTERSERVICE_CONTRACTID, &kNS_STREAMCONVERTERSERVICE_CID },
|
|
#if defined(XP_WIN)
|
|
{ NS_NAMEDPIPESERVICE_CONTRACTID, &kNS_NAMEDPIPESERVICE_CID },
|
|
#endif
|
|
{ NS_DASHBOARD_CONTRACTID, &kNS_DASHBOARD_CID },
|
|
{ NS_ISTREAMCONVERTER_KEY FTP_TO_INDEX, &kNS_FTPDIRLISTINGCONVERTER_CID },
|
|
{ NS_ISTREAMCONVERTER_KEY INDEX_TO_HTML, &kNS_NSINDEXEDTOHTMLCONVERTER_CID },
|
|
{ NS_DIRINDEXPARSER_CONTRACTID, &kNS_DIRINDEXPARSER_CID },
|
|
{ NS_ISTREAMCONVERTER_KEY MULTI_MIXED_X, &kNS_MULTIMIXEDCONVERTER_CID },
|
|
{ NS_ISTREAMCONVERTER_KEY MULTI_BYTERANGES, &kNS_MULTIMIXEDCONVERTER_CID },
|
|
{ NS_ISTREAMCONVERTER_KEY MULTI_MIXED, &kNS_MULTIMIXEDCONVERTER_CID },
|
|
{ NS_ISTREAMCONVERTER_KEY UNKNOWN_CONTENT, &kNS_UNKNOWNDECODER_CID },
|
|
{ NS_GENERIC_CONTENT_SNIFFER, &kNS_UNKNOWNDECODER_CID },
|
|
{ NS_BINARYDETECTOR_CONTRACTID, &kNS_BINARYDETECTOR_CID },
|
|
{ NS_ISTREAMCONVERTER_KEY GZIP_TO_UNCOMPRESSED, &kNS_HTTPCOMPRESSCONVERTER_CID },
|
|
{ NS_ISTREAMCONVERTER_KEY XGZIP_TO_UNCOMPRESSED, &kNS_HTTPCOMPRESSCONVERTER_CID },
|
|
{ NS_ISTREAMCONVERTER_KEY BROTLI_TO_UNCOMPRESSED, &kNS_HTTPCOMPRESSCONVERTER_CID },
|
|
{ NS_ISTREAMCONVERTER_KEY COMPRESS_TO_UNCOMPRESSED, &kNS_HTTPCOMPRESSCONVERTER_CID },
|
|
{ NS_ISTREAMCONVERTER_KEY XCOMPRESS_TO_UNCOMPRESSED, &kNS_HTTPCOMPRESSCONVERTER_CID },
|
|
{ NS_ISTREAMCONVERTER_KEY DEFLATE_TO_UNCOMPRESSED, &kNS_HTTPCOMPRESSCONVERTER_CID },
|
|
{ NS_ISTREAMCONVERTER_KEY PLAIN_TO_HTML, &kNS_NSTXTTOHTMLCONVERTER_CID },
|
|
#ifdef BUILD_BINHEX_DECODER
|
|
{ NS_ISTREAMCONVERTER_KEY BINHEX_TO_WILD, &kNS_BINHEXDECODER_CID },
|
|
#endif
|
|
{ MOZ_TXTTOHTMLCONV_CONTRACTID, &kMOZITXTTOHTMLCONV_CID },
|
|
{ "@mozilla.org/dirIndex;1", &kNS_DIRINDEX_CID },
|
|
{ NS_MIMEHEADERPARAM_CONTRACTID, &kNS_MIMEHEADERPARAM_CID },
|
|
{ NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX "file", &kNS_FILEPROTOCOLHANDLER_CID },
|
|
{ NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX "http", &kNS_HTTPPROTOCOLHANDLER_CID },
|
|
{ NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX "https", &kNS_HTTPSPROTOCOLHANDLER_CID },
|
|
{ NS_HTTP_AUTHENTICATOR_CONTRACTID_PREFIX "basic", &kNS_HTTPBASICAUTH_CID },
|
|
{ NS_HTTP_AUTHENTICATOR_CONTRACTID_PREFIX "digest", &kNS_HTTPDIGESTAUTH_CID },
|
|
{ NS_HTTP_AUTHENTICATOR_CONTRACTID_PREFIX "ntlm", &kNS_HTTPNTLMAUTH_CID },
|
|
{ NS_HTTPAUTHMANAGER_CONTRACTID, &kNS_HTTPAUTHMANAGER_CID },
|
|
{ NS_HTTPCHANNELAUTHPROVIDER_CONTRACTID, &kNS_HTTPCHANNELAUTHPROVIDER_CID },
|
|
{ NS_HTTPACTIVITYDISTRIBUTOR_CONTRACTID, &kNS_HTTPACTIVITYDISTRIBUTOR_CID },
|
|
{ NS_THROTTLEQUEUE_CONTRACTID, &kNS_THROTTLEQUEUE_CID },
|
|
{ NS_BACKGROUNDCHANNELREGISTRAR_CONTRACTID, &kNS_BACKGROUNDCHANNELREGISTRAR_CID },
|
|
{ NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX "ftp", &kNS_FTPPROTOCOLHANDLER_CID },
|
|
{ NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX "resource", &kNS_RESPROTOCOLHANDLER_CID },
|
|
{ NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX "moz-extension", &kNS_EXTENSIONPROTOCOLHANDLER_CID },
|
|
{ NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX "about", &kNS_ABOUTPROTOCOLHANDLER_CID },
|
|
{ NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX "moz-safe-about", &kNS_SAFEABOUTPROTOCOLHANDLER_CID },
|
|
{ NS_ABOUT_MODULE_CONTRACTID_PREFIX "blank", &kNS_ABOUT_BLANK_MODULE_CID },
|
|
{ NS_ABOUT_MODULE_CONTRACTID_PREFIX "cache", &kNS_ABOUT_CACHE_MODULE_CID },
|
|
{ NS_ABOUT_MODULE_CONTRACTID_PREFIX "cache-entry", &kNS_ABOUT_CACHE_ENTRY_MODULE_CID },
|
|
{ NS_NETWORK_SOCKET_CONTRACTID_PREFIX "socks", &kNS_SOCKSSOCKETPROVIDER_CID },
|
|
{ NS_NETWORK_SOCKET_CONTRACTID_PREFIX "socks4", &kNS_SOCKS4SOCKETPROVIDER_CID },
|
|
{ NS_NETWORK_SOCKET_CONTRACTID_PREFIX "udp", &kNS_UDPSOCKETPROVIDER_CID },
|
|
{ NS_CACHESERVICE_CONTRACTID, &kNS_CACHESERVICE_CID },
|
|
{ NS_APPLICATIONCACHESERVICE_CONTRACTID, &kNS_APPLICATIONCACHESERVICE_CID },
|
|
{ NS_APPLICATIONCACHENAMESPACE_CONTRACTID, &kNS_APPLICATIONCACHENAMESPACE_CID },
|
|
{ NS_APPLICATIONCACHE_CONTRACTID, &kNS_APPLICATIONCACHE_CID },
|
|
#ifdef NECKO_COOKIES
|
|
{ NS_COOKIEMANAGER_CONTRACTID, &kNS_COOKIEMANAGER_CID },
|
|
{ NS_COOKIESERVICE_CONTRACTID, &kNS_COOKIESERVICE_CID },
|
|
#endif
|
|
#ifdef NECKO_WIFI
|
|
{ NS_WIFI_MONITOR_CONTRACTID, &kNS_WIFI_MONITOR_COMPONENT_CID },
|
|
#endif
|
|
{ NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX "data", &kNS_DATAPROTOCOLHANDLER_CID },
|
|
{ NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX "moz-device", &kNS_DEVICEPROTOCOLHANDLER_CID },
|
|
{ NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX "view-source", &kNS_VIEWSOURCEHANDLER_CID },
|
|
{ NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX "wyciwyg", &kNS_WYCIWYGPROTOCOLHANDLER_CID },
|
|
{ NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX "ws", &kNS_WEBSOCKETPROTOCOLHANDLER_CID },
|
|
{ NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX "wss", &kNS_WEBSOCKETSSLPROTOCOLHANDLER_CID },
|
|
#if defined(XP_WIN)
|
|
{ NS_NETWORK_LINK_SERVICE_CONTRACTID, &kNS_NETWORK_LINK_SERVICE_CID },
|
|
#elif defined(MOZ_WIDGET_COCOA)
|
|
{ NS_NETWORK_LINK_SERVICE_CONTRACTID, &kNS_NETWORK_LINK_SERVICE_CID },
|
|
#elif defined(MOZ_WIDGET_ANDROID)
|
|
{ NS_NETWORK_LINK_SERVICE_CONTRACTID, &kNS_NETWORK_LINK_SERVICE_CID },
|
|
#elif defined(XP_LINUX)
|
|
{ NS_NETWORK_LINK_SERVICE_CONTRACTID, &kNS_NETWORK_LINK_SERVICE_CID },
|
|
#endif
|
|
{ NS_SERIALIZATION_HELPER_CONTRACTID, &kNS_SERIALIZATION_HELPER_CID },
|
|
{ NS_REDIRECTCHANNELREGISTRAR_CONTRACTID, &kNS_REDIRECTCHANNELREGISTRAR_CID },
|
|
{ NS_CACHE_STORAGE_SERVICE_CONTRACTID, &kNS_CACHE_STORAGE_SERVICE_CID },
|
|
{ NS_CACHE_STORAGE_SERVICE_CONTRACTID2, &kNS_CACHE_STORAGE_SERVICE_CID },
|
|
{ NS_NSILOADCONTEXTINFOFACTORY_CONTRACTID, &kNS_NSILOADCONTEXTINFOFACTORY_CID },
|
|
{ NS_NETWORKPREDICTOR_CONTRACTID, &kNS_NETWORKPREDICTOR_CID },
|
|
{ NS_CAPTIVEPORTAL_CONTRACTID, &kNS_CAPTIVEPORTAL_CID },
|
|
{ NS_REQUESTCONTEXTSERVICE_CONTRACTID, &kNS_REQUESTCONTEXTSERVICE_CID },
|
|
#ifdef BUILD_NETWORK_INFO_SERVICE
|
|
{ NETWORKINFOSERVICE_CONTRACT_ID, &kNETWORKINFOSERVICE_CID },
|
|
#endif
|
|
{ nullptr }
|
|
};
|
|
|
|
static const mozilla::Module kNeckoModule = {
|
|
mozilla::Module::kVersion,
|
|
kNeckoCIDs,
|
|
kNeckoContracts,
|
|
kNeckoCategories,
|
|
nullptr,
|
|
nsNetStartup,
|
|
nsNetShutdown
|
|
};
|
|
|
|
NSMODULE_DEFN(necko) = &kNeckoModule;
|