Thunderbird:Backend Hacking Guide For Newbies: Difference between revisions

Line 88: Line 88:
  What is PL? How it is different than platform's C runtime, Secure C functions, etc...
  What is PL? How it is different than platform's C runtime, Secure C functions, etc...
==== NSPR ====  
==== NSPR ====  
NSPR is a cross-platform library to provide Mozilla application with OS-agnostic facilities such as threading, I/O operations, networking, logging and more. It is crucial for a Mozilla C/C++ hacker to be familiar with this framework in order to work with Thunderbird backend.
NSPR is a cross-platform library to provide Mozilla application with OS-agnostic facilities such as threading, I/O operations, networking, logging and more. It is crucial for a Mozilla C/C++ hacker to be familiar with this library in order to work with Thunderbird backend.


Although NSPR documentation is not up-to-date, still it is a very good starting point before you go and check the source code. You can find NSPR documentation at the following links.
Although NSPR documentation is not up-to-date, still it is a very good starting point before you go and check the source code. You can find NSPR documentation at the following links.
Line 103: Line 103:


* [http://www.mozilla.org/projects/security/pki/nss/ NSS Home Page]
* [http://www.mozilla.org/projects/security/pki/nss/ NSS Home Page]
==== XPCOM ====
XPCOM is Mozilla's simplified cross-platform component object model.
''IDL firebot: uuid, <link>''
* [http://developer.mozilla.org/en/docs/Using_nsCOMPtr Using nsCOMPtr]
* Reference Management
** [http://developer.mozilla.org/en/docs/XPCOM_ownership_guidelines Ownership Guide]
** [http://developer.mozilla.org/en/docs/Weak_reference#Why_can.27t_I_just_QueryInterface_between_the_pair.3F Weak References]
* [http://developer.mozilla.org/en/docs/Creating_XPCOM_Components Creating XPCOM Components]
* [http://developer.mozilla.org/en/docs/XPCOM_string_guide XPCOM string guide]


==== NECKO ====
==== NECKO ====
Line 121: Line 131:
* IRC - irc://irc.mozilla.org/#mozilla
* IRC - irc://irc.mozilla.org/#mozilla


==== XPCOM ====
==== GECKO ====
XPCOM is Mozilla's simplified cross-platform component object model.
What is Gecko
''IDL firebot: uuid, <link>''
* [http://developer.mozilla.org/en/docs/Using_nsCOMPtr Using nsCOMPtr]
* Reference Management
** [http://developer.mozilla.org/en/docs/XPCOM_ownership_guidelines Ownership Guide]
** [http://developer.mozilla.org/en/docs/Weak_reference#Why_can.27t_I_just_QueryInterface_between_the_pair.3F Weak References]
* [http://developer.mozilla.org/en/docs/Creating_XPCOM_Components Creating XPCOM Components]
* [http://developer.mozilla.org/en/docs/XPCOM_string_guide XPCOM string guide]


==== XUL ====
==== XUL ====
270

edits