Daniel Kouril wrote: > Linux). If I build Mozilla from sources and build the component in the > Mozilla source tree using the headers and libraries (and Makefile rules) > from the tree, everyhing works well. I can use regxpcom to update the [SNIP] > But I'd like to get it to work with a standard Mozilla distribution as > available from the Mozilla site. I downloaded > mozilla-i686-pc-linux-gnu-1.4.tar.gz from the Mozilla ftp archive, > unpacked it and copied the component (ie. the .so library along with
A couple questions:
1) did you change the nsIHttpAuthenticator interface at all? you can't do that
No, I'm using nsIHttpAuthenticator.idl from netwerk/protocol/http/public/ without any changes.
2) did you add any new interfaces? if not, you don't need to distribute an xpt file, only your component.
I just implemented a new class nsHttpGssapiAuth inhereted from nsIHttpAuthenticator, addressable by CONTRACTID "@mozilla.org/network/http-authenticator;1?scheme=negotiate" (as described in nsIHttpAuthenticator.idl). I didn't add any new idl, but the nsIHttpAuthenticator.idl. But even if I tryied to only copy the library to the component directory, I'm still unable to get it registered.
3) when you built your component for 1.4, did you use a 1.4 source tree,
or did you use a current trunk tree? there have been changes since 1.4 that might make your component not-backwards-compatible. nsIHttpAuthenticator is not a frozen interface, and in fact it did change several days before 1.4 was released, to fix bug 203813 (see http://bonsai.mozilla.org/cvslog.cgi?file=mozilla/netwerk/protocol/http/public/nsIHttpAuthenticator.idl).
I'm using mozilla 1.4 from http://ftp.mozilla.org/pub/mozilla/releases/mozilla1.4/src/ as the source tree. I also tryied to use standalone Gecko SDK 1.4, with similar result -- everything works well if the component (built using Gecko SDK) is used in the Mozilla source tree, but when I copy it to the distribution tree, the regxpcom doesn't register it in the compreg.dat file.
I placed my current code at http://negotiateauth.mozdev.org/negoauth.tar.gz. Please could you have a look at it (it's not large) and advise me what's wrong with the code? Thank you very much beforehand,
-- Dan
