Search this site
TiddlyWiki 5 CouchDB Adaptor
This website is a personal website. The opinions expressed here are mine and mine alone. I do not speak for any past or present employer.
Jun 6, 2011, 6:21 PM
by William Shallum
Jul 5, 2015, 1:22 AM
npsimple, the "Hello World" of NPAPI plugins
an adaptation(?), most importantly, it's clonable
notes on what to do after forking?
you handle the mess of file descriptors? do you just leave them open? oh...
what exactly do you put under HKLM\Software\MozillaPlugins? Surely not "plugin-name"...
For FF 1.5 (released almost 6 years ago), the most recent GLIBC versioned symbol appears to be v 2.3.
GLIBC version history
Did you know?
The NPN* functions are located in the glue code (npunix.c / npwin.c) and implemented by calling the browser-passed function pointers
The value to return from invoke after calling setexception is false, not true.
NP_GetValue is an *exported* function. It is used to get name / description data where the registry is not used.
NP_ = exported from plugin, NPP_ = in plugin function table, NPN_ = in browser function table
NP_GetPluginVersion has no documentation in MDC. It is called to get the plugin version. See
for signature. Strangely the npfunctions.h header says it returns a char * instead of a const char *. It looks like we can safely cast away the constness as it is used in a constant manner anyway (just passed to strdup).