diff --git a/mozilla/content/html/content/public/nsIFormProcessor.h b/mozilla/content/html/content/public/nsIFormProcessor.h
index dee3816c173..5d20b1b3d59 100644
--- a/mozilla/content/html/content/public/nsIFormProcessor.h
+++ b/mozilla/content/html/content/public/nsIFormProcessor.h
@@ -39,9 +39,11 @@ class nsString;
class nsVoidArray;
// {7E4BB410-8740-11d3-967F-00105A1B1B76}
-#define NS_IFORMPROCESSOR_CID \
+#define NS_FORMPROCESSOR_CID \
{ 0x7e4bb410, 0x8740, 0x11d3, { 0x96, 0x7f, 0x0, 0x10, 0x5a, 0x1b, 0x1b, 0x76 } }
+#define NS_FORMPROCESSOR_PROGID "component://netscape/layout/form-processor"
+
// F11C1E20-873F-11d3-967F-00105A1B1B76
#define NS_IFORMPROCESSOR_IID \
{ 0xf11c1e20, 0x873f, 0x11d3, { 0x96, 0x7f, 0x0, 0x10, 0x5a, 0x1b, 0x1b, 0x76 } }
diff --git a/mozilla/extensions/psm-glue/src/nsKeygenHandler.cpp b/mozilla/extensions/psm-glue/src/nsKeygenHandler.cpp
index 03038b3cc3d..8ab290ff437 100644
--- a/mozilla/extensions/psm-glue/src/nsKeygenHandler.cpp
+++ b/mozilla/extensions/psm-glue/src/nsKeygenHandler.cpp
@@ -66,6 +66,20 @@ nsKeygenFormProcessor::~nsKeygenFormProcessor()
NS_IF_RELEASE(mPSM);
}
+NS_METHOD
+nsKeygenFormProcessor::Create(nsISupports* aOuter, const nsIID& aIID, void* *aResult)
+{
+ nsresult rv;
+ NS_ENSURE_NO_AGGREGATION(aOuter);
+ nsKeygenFormProcessor* formProc = new nsKeygenFormProcessor();
+ if (formProc == nsnull)
+ return NS_ERROR_OUT_OF_MEMORY;
+ NS_ADDREF(formProc);
+ rv = formProc->QueryInterface(aIID, aResult);
+ NS_RELEASE(formProc);
+ return rv;
+}
+
char *
nsKeygenFormProcessor::ChooseToken(PCMT_CONTROL control,
CMKeyGenTagArg *psmarg,
diff --git a/mozilla/extensions/psm-glue/src/nsKeygenHandler.h b/mozilla/extensions/psm-glue/src/nsKeygenHandler.h
index a785bfbdcb2..6bd674639f1 100644
--- a/mozilla/extensions/psm-glue/src/nsKeygenHandler.h
+++ b/mozilla/extensions/psm-glue/src/nsKeygenHandler.h
@@ -42,6 +42,9 @@ public:
nsVoidArray& aContent,
nsString& aAttribute);
NS_DECL_ISUPPORTS
+
+ static NS_METHOD Create(nsISupports* aOuter, const nsIID& aIID, void* *aResult);
+
protected:
nsresult GetPublicKey(nsString& value, nsString& challenge,
nsString& keyType, nsString& outPublicKey,
diff --git a/mozilla/extensions/psm-glue/src/nsPSMModule.cpp b/mozilla/extensions/psm-glue/src/nsPSMModule.cpp
index 6c526345106..a3eec0becfb 100644
--- a/mozilla/extensions/psm-glue/src/nsPSMModule.cpp
+++ b/mozilla/extensions/psm-glue/src/nsPSMModule.cpp
@@ -45,7 +45,7 @@
// Define SDR object constructor
static NS_DEFINE_IID(kISupportsIID, NS_ISUPPORTS_IID);
-static NS_DEFINE_IID(kFormProcessorCID, NS_IFORMPROCESSOR_CID);
+static NS_DEFINE_CID(kFormProcessorCID, NS_FORMPROCESSOR_CID);
NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsSecretDecoderRing, init)
NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsFSecretDecoderRing, init)
@@ -157,35 +157,13 @@ static nsModuleComponentInfo components[] =
NS_CERTCONTENTLISTEN_CID,
NS_CERTCONTENTLISTEN_PROGID,
CertContentListenerConstructor
+ },
+ {
+ "Form Processor",
+ NS_FORMPROCESSOR_CID,
+ NS_FORMPROCESSOR_PROGID,
+ nsKeygenFormProcessor::Create
}
};
-#if 0
NS_IMPL_NSGETMODULE("PSMComponent", components);
-#endif
-
-extern "C" NS_EXPORT nsresult NSGetModule(nsIComponentManager *servMgr,
- nsIFile* location,
- nsIModule** result)
-{
- nsresult rv;
- // Put in code to register KEYGEN form input handler.
- rv= NS_NewGenericModule("PSMComponent",
- sizeof(components) / sizeof(components[0]),
- components, nsnull, result);
- // Register a form processor. The form processor has the opportunity to
- // modify the value's passed during form submission.
- nsKeygenFormProcessor* testFormProcessor = new nsKeygenFormProcessor();
- nsCOMPtr formProcessor;
- rv = testFormProcessor->QueryInterface(kISupportsIID,
- getter_AddRefs(formProcessor));
- if (NS_SUCCEEDED(rv) && formProcessor) {
- rv = nsServiceManager::RegisterService(kFormProcessorCID, formProcessor);
- }
- return rv;
-}
-
-
-
-
-
diff --git a/mozilla/htmlparser/src/CNavDTD.cpp b/mozilla/htmlparser/src/CNavDTD.cpp
index 3f7c9eb205c..1fe8f7271c8 100644
--- a/mozilla/htmlparser/src/CNavDTD.cpp
+++ b/mozilla/htmlparser/src/CNavDTD.cpp
@@ -64,7 +64,7 @@ static NS_DEFINE_IID(kISupportsIID, NS_ISUPPORTS_IID);
static NS_DEFINE_IID(kIDTDIID, NS_IDTD_IID);
static NS_DEFINE_IID(kClassIID, NS_INAVHTML_DTD_IID);
-static NS_DEFINE_IID(kFormProcessorCID, NS_IFORMPROCESSOR_CID);
+static NS_DEFINE_CID(kFormProcessorCID, NS_FORMPROCESSOR_CID);
static const char* kNullToken = "Error: Null token given";
static const char* kInvalidTagStackPos = "Error: invalid tag stack position";
diff --git a/mozilla/layout/html/forms/public/nsIFormProcessor.h b/mozilla/layout/html/forms/public/nsIFormProcessor.h
index dee3816c173..5d20b1b3d59 100644
--- a/mozilla/layout/html/forms/public/nsIFormProcessor.h
+++ b/mozilla/layout/html/forms/public/nsIFormProcessor.h
@@ -39,9 +39,11 @@ class nsString;
class nsVoidArray;
// {7E4BB410-8740-11d3-967F-00105A1B1B76}
-#define NS_IFORMPROCESSOR_CID \
+#define NS_FORMPROCESSOR_CID \
{ 0x7e4bb410, 0x8740, 0x11d3, { 0x96, 0x7f, 0x0, 0x10, 0x5a, 0x1b, 0x1b, 0x76 } }
+#define NS_FORMPROCESSOR_PROGID "component://netscape/layout/form-processor"
+
// F11C1E20-873F-11d3-967F-00105A1B1B76
#define NS_IFORMPROCESSOR_IID \
{ 0xf11c1e20, 0x873f, 0x11d3, { 0x96, 0x7f, 0x0, 0x10, 0x5a, 0x1b, 0x1b, 0x76 } }
diff --git a/mozilla/layout/html/forms/src/nsFormFrame.cpp b/mozilla/layout/html/forms/src/nsFormFrame.cpp
index 8b71c8584f2..8581b1e017f 100644
--- a/mozilla/layout/html/forms/src/nsFormFrame.cpp
+++ b/mozilla/layout/html/forms/src/nsFormFrame.cpp
@@ -130,7 +130,7 @@ static NS_DEFINE_IID(kIContentIID, NS_ICONTENT_IID);
static NS_DEFINE_IID(kIFrameIID, NS_IFRAME_IID);
static NS_DEFINE_IID(kIHTMLDocumentIID, NS_IHTMLDOCUMENT_IID);
static NS_DEFINE_IID(kIDOMHTMLElementIID, NS_IDOMHTMLELEMENT_IID);
-static NS_DEFINE_IID(kFormProcessorCID, NS_IFORMPROCESSOR_CID);
+static NS_DEFINE_CID(kFormProcessorCID, NS_FORMPROCESSOR_CID);
NS_IMETHODIMP
nsFormFrame::QueryInterface(REFNSIID aIID, void** aInstancePtr)
diff --git a/mozilla/parser/htmlparser/src/CNavDTD.cpp b/mozilla/parser/htmlparser/src/CNavDTD.cpp
index 3f7c9eb205c..1fe8f7271c8 100644
--- a/mozilla/parser/htmlparser/src/CNavDTD.cpp
+++ b/mozilla/parser/htmlparser/src/CNavDTD.cpp
@@ -64,7 +64,7 @@ static NS_DEFINE_IID(kISupportsIID, NS_ISUPPORTS_IID);
static NS_DEFINE_IID(kIDTDIID, NS_IDTD_IID);
static NS_DEFINE_IID(kClassIID, NS_INAVHTML_DTD_IID);
-static NS_DEFINE_IID(kFormProcessorCID, NS_IFORMPROCESSOR_CID);
+static NS_DEFINE_CID(kFormProcessorCID, NS_FORMPROCESSOR_CID);
static const char* kNullToken = "Error: Null token given";
static const char* kInvalidTagStackPos = "Error: invalid tag stack position";
diff --git a/mozilla/webshell/tests/viewer/nsViewerApp.cpp b/mozilla/webshell/tests/viewer/nsViewerApp.cpp
index e208abd2476..8ca55a9399f 100644
--- a/mozilla/webshell/tests/viewer/nsViewerApp.cpp
+++ b/mozilla/webshell/tests/viewer/nsViewerApp.cpp
@@ -117,7 +117,7 @@ static NS_DEFINE_IID(kIXPBaseWindowIID, NS_IXPBASE_WINDOW_IID);
static NS_DEFINE_IID(kMetaCharsetCID, NS_META_CHARSET_CID);
static NS_DEFINE_IID(kIMetaCharsetServiceIID, NS_IMETA_CHARSET_SERVICE_IID);
-static NS_DEFINE_IID(kFormProcessorCID, NS_IFORMPROCESSOR_CID);
+static NS_DEFINE_CID(kFormProcessorCID, NS_FORMPROCESSOR_CID);
static NS_DEFINE_IID(kFormProcessorIID, NS_IFORMPROCESSOR_IID);
static NS_DEFINE_IID(kIDOMHTMLSelectElementIID, NS_IDOMHTMLSELECTELEMENT_IID);