Search completed in 1.21 seconds.
Porting the Library Detector - Archive of obsolete content
the add-on is paul bakaus's
library detector.
... the
library detector tells you which javascript frameworks the current web page is using.
... for each
library that it finds, the
library detector adds an icon representing that
library to the status bar.
...And 16 more matches
Dynamic Library Linking
library linking types these data types are defined for dynamic
library linking: pr
library prstaticlinktable
library linking functions the
library linking functions are: pr_set
librarypath pr_get
librarypath pr_get
libraryname pr_free
libraryname pr_load
library pr_unload
library pr_findsymbol pr_findsymboland
library finding symbols defined in the main executable program pr_load
library cannot open a handle that references the main executable program.
... pr
library *lib; void *funcptr; funcptr = pr_findsymboland
library("functionname", &lib); when pr_findsymboland
library returns, funcptr is the value of the function pointer you want to look up, and the variable lib references the main executable program.
...remember to call pr_unload
library(lib) to close the
library handle when you are done.
...And 7 more matches
Library
the
library object represents a native
library loaded by the ctypes open() method.
... its methods let you declare symbols exported by the
library, and to manage the
library.
... method overview close(); cdata declare(name, [abi, ], returntype[, argtype1, ...]); methods close() closes the
library.
...And 6 more matches
PR_FindSymbolAndLibrary
finds a symbol in one of the currently loaded libraries, and returns both the symbol and the
library in which it was found.
... syntax #include <prlink.h> void* pr_findsymboland
library ( const char *name, pr
library **lib); parameters the function has these parameters: name the textual representation of the symbol to locate.
... lib a reference to a location at which the runtime will store the
library in which the symbol was discovered.
...And 4 more matches
PR_GetLibraryName
constructs a full
library path name.
... syntax #include <prlink.h> char* pr_get
libraryname ( const char *dir, const char *lib); parameters the function has these parameters: dir a null-terminated string representing the path name of the
library, as returned by pr_get
librarypath.
... lib the leaf name of the
library of interest.
...And 4 more matches
PR_LoadLibrary
loads a referenced
library.
... syntax #include <prlink.h> pr
library* pr_load
library(const char *name); parameters the function has this parameter: name a platform-dependent character array that names the
library to be loaded, as returned by pr_get
libraryname.
... returns if successful, returns a reference to an opaque pr
library object.
...And 4 more matches
PR_GetLibraryPath
retrieves the current default
library path.
... syntax #include <prlink.h> char* pr_get
librarypath(void); parameters the function has no parameters.
... returns a copy of the default
library pathname string.
...And 2 more matches
PR_UnloadLibrary
unloads a
library loaded with pr_load
library.
... syntax #include <prlink.h> prstatus pr_unload
library(pr
library *lib); parameters the function has this parameter: lib a reference previously returned from pr_load
library.
... description this function undoes the effect of a pr_load
library.
... after calling this function, future references to the
library using its identity as returned by pr_load
library will be invalid.
PRLibrary
an opaque structure identifying a
library.
... syntax #include <prlink.h> typedef struct pr
library pr
library; description a pr
library is an opaque structure.
... a reference to such a structure can be returned by some of the functions in the runtime and serve to identify a particular instance of a
library.
PR_SetLibraryPath
registers a default
library pathname with a runtime.
... syntax #include <prlink.h> prstatus pr_set
librarypath(const char *path); parameters the function has this parameter: path a pointer to a character array that contains the directory path that the application should use as a default.
...this may indicate that the function cannot allocate sufficient storage to make a copy of the path string description this function registers a default
library pathname with the runtime.
BundleLibrary - Archive of obsolete content
we are working on a new bundle
library compatible with the current prism version and welcome any contributions from the developer community.
...le groups: groups.webapp google analytics: ganalytics.webapp google reader: greader.webapp facebook: facebook.webapp twitter: twitter.webapp user contributed bundles gmail w/gtalk: gmail.webapp (note: work with latest version of prism!) 32 online todo lists: zip file with web apps for 32 online todo lists anywhere.fm: anywhere.fm@prism.app.webapp a service that lets you upload your entire music
library to their servers and listen from anywhere through a slick flash interface.
PR_FreeLibraryName
frees memory allocated by nspr for
library names and path names.
... syntax #include <prlink.h> void pr_free
libraryname(char *mem); parameters the function has this parameter: mem a reference to a character array that was previously allocated by the dynamic
library runtime.
Component Internals
the most common type of component is one that is written in c++ and compiled into a shared
library (a dll on a windows system or a dso on unix).
... the illustration below shows the basic relationship between the shared
library containing the component implementation code you write and the xpcom framework itself.
... in this diagram, the outer boundary is that of the module, the shared
library in which a component is defined.
...And 26 more matches
Index
nss is a
library written in the c programming language.
... a core element of nss is freebl, a base
library providing hash functions, big number calculations, and cryptographic algorithms.
... in addition to the freebl, softoken, and ckbi modules, there is an utility
library for general operations (e.g., encoding/decoding between data formats, a list of standardized object identifiers (oid)).
...And 19 more matches
NSS API Guidelines
the libraries section descibes the nss libraries, the functionality each provides, and the layer in which the
library (mostly) operates.
...the areas which need the most work (both here and throughout the code) is: the relationship of the certificate
library with just about every other component (most noticeably pkcs #12, pkcs #7, and pkcs #11) splitting low key and high key components more clearly the crypto wrappers (pkcs #11 wrappers) and high key pkcs #12 and pkcs #5 libraries nss compiles into the libraries described below.
... the layer indicates the main layer, seen in the previous diagram, in which the
library operates.
...And 19 more matches
PKCS #11 Module Specs
a single line, terminated by a '\n', '\r\n', or '\r' represents a single pkcs #11
library.
... recognized names all applications/libraries must be able recognize the following name values:
library this specifies the path to the pkcs #11
library.
... name this specifies the name of the pkcs #11
library.
...And 18 more matches
sslerr.html
ssl_error_unsupported_certificate_type -12280 "unsupported certificate type." the operation encountered a certificate that was not one of the well known certificate types handled by the certificate
library.
... ssl_error_unsupported_version -12279 "peer using unsupported version of security protocol." on a client socket, this means the remote server has attempted to negotiate the use of a version of ssl that is not supported by the nss
library, probably an invalid version number.
...if it does, it indicates a flaw in the nss ssl
library.
...And 17 more matches
Creating custom Firefox extensions with the Mozilla build system - Archive of obsolete content
in addition, an xpt (type
library) file is generated and placed in the components/ subdirectory of your extension.
...topsrcdir = @top_srcdir@ srcdir = @srcdir@ vpath = @srcdir@ include $(depth)/config/autoconf.mk is_component = 1 module = myextension
library_name = myextension use_static_libs = 1 xpi_name = myextension cppsrcs = \ myfirstcomponent.cpp \ mysecondcomponent.cpp \ myextension.cpp \ $(null) include $(topsrcdir)/config/rules.mk extra_dso_ldopts += \ $(moz_component_libs) \ $(nspr_libs) \ $(null) in this example, the first two files contain the implementation of the extension's two components.
... each module must also have a different value for the
library_name variable.
...And 15 more matches
Using js-ctypes
this is as simple as including the following line of code in the desired javascript scope: components.utils.import("resource://gre/modules/ctypes.jsm") loading a native
library once you've imported the code module, you can call the ctypes.open() method to load each native
library you wish to use.
... on windows, for example, you might load the system user32
library like this: var lib = ctypes.open("user32.dll"); on mac os x, you can load the core foundation
library from the core foundation framework like this: var corefoundation = ctypes.open("/system/
library/frameworks/corefoundation.framework/corefoundation"); the returned object is a
library object that you use to declare functions and data types for use with the loaded
library.
...instead, you'll need to create a shim
library that uses c functions that then call into the c++
library for you.
...And 14 more matches
Using Dependent Libraries In Extension Components - Archive of obsolete content
the basic strategy of the stub is to dynamically load the dependent libraries, then load the component
library and continue registration.
...srcdir = @srcdir@ topsrcdir = @top_srcdir@ vpath = @srcdir@ include $(depth)/config/autoconf.mk module = bsmedberg
library_name = bsmedberg_stub is_component = 1 force_shared_lib = 1 requires = \ xpcom \ string \ $(null) cppsrcs = bdsstubloader.cpp extra_dso_ldopts += \ $(dist)/lib/$(lib_prefix)xpcomglue_s.$(lib_suffix) \ $(xpcom_frozen_ldopts) \ $(nspr_libs) \ $(null) include $(topsrcdir)/config/rules.mk defines += -dmoz_dll_prefix=\"$(dll_prefix)\" extensions/stub/bdsstubloader.cpp // copyright (...
... // assume that we're in <extensiondir>/components, and we want to find // <extensiondir>/libraries nscomptr<nsifile> libraries; rv = alocation->getparent(getter_addrefs(libraries)); if (ns_failed(rv)) return rv; nscomptr<nsilocalfile>
library(do_queryinterface(libraries)); if (!
library) return ns_error_unexpected;
library->setnativeleafname(ns_literal_cstring("libraries"));
library->appendnative(ns_literal_cstring("dummy")); // loop through and load dependent libraries for (char const *const *dependent = kdependentlibraries; *dependent; ++dependent) {
library->setnativeleafname(nsdependentcstring(*dep...
...And 9 more matches
How Mozilla's build system works
makefile examples standard makefile header installing headers using exports compiling interfaces using xpidlsrcs installing a javascript component building a component dll building a static
library building a dynamic
library makefiles - best practices and suggestions makefile - targets makefile - variables, values makefile - *.mk files & user config building libraries there are three main types of libraries that are built in mozilla: components are shared libraries (except in static builds), which are installed to dist/bin/components.
... components are not linked against by any other
library.
...you will probably not need to create a new
library of this type.
...And 9 more matches
ctypes
the ctypes object contains methods and predefined data types used to create and manage a
library.
... method overview ctype arraytype(type[, length]); cdata cast(data, type); ctype functiontype(abi, returntype[, argtype1, ...]); cdata int64(n); string
libraryname(name);
library open(libspec); ctype pointertype(typespec); ctype structtype(name[, fields]); cdata uint64(n); properties property type description errno number the value of the latest system error.
... constants abi constants these constants are used to specify the abi used to call a native function in the
library.
...And 9 more matches
Handling common JavaScript problems - Learn web development
jquery (or whatever
library you are using) will then handle the differences in the background, so you don't have to.
...for example, you could use feature detection to determine whether a feature is supported; if it isn't, you could then run code to load a polyfill or a
library to handle the lack of support.
...but for both css and javascript, it is probably better to use an established feature detection
library rather than writing your own all the time.
...And 8 more matches
An Overview of XPCOM
xpcom is the means of accessing gecko
library functionality and embedding or extending gecko.
...when two or more related components are grouped together in a binary
library, the
library is referred to as a module.
...the network
library, for example, consists of components for each of the protocols, http, ftp, and others, which are bundled together and linked into a single
library.
...And 8 more matches
Index - Archive of obsolete content
32 porting the
library detector add-on sdk, add-ons, example, extensions, sample code, tutorial no summary!
... 235 extension
library no summary!
... 504 libraries namespace: jetpack.lib 505 twitter jetpack's twitter
library, jetpack.lib.twitter, is a very simple, lightweight layer on top of twitter's rest api.
...And 6 more matches
FC_GetInfo
name fc_getinfo - return general information about the pkcs #11
library.
... syntax ck_rv fc_getinfo(ck_info_ptr pinfo); parameters fc_getinfo has one parameter: pinfo points to a ck_info structure description fc_getinfo returns general information about the pkcs #11
library.
... on return, the ck_info structure that pinfo points to has the following information: cryptokiversion: pkcs #11 interface version number implemented by the pkcs #11
library.
...And 6 more matches
FC_Initialize
summary fc_initialize - initialize the pkcs #11
library.
...
libraryparameters should point to a string that contains the
library parameters.
... the
library parameters string has this format: "configdir='dir' certprefix='prefix1' keyprefix='prefix2' secmod='file' flags= " here are some examples.
...And 6 more matches
sslfnc.html
ssl_enable_fdx tells the ssl
library whether the application will have two threads, one reading and one writing, or just one thread doing reads and writes alternately.
... ssl_v2_compatible_hello tells the ssl
library whether or not to send ssl3 client hello messages in ssl2-compatible format.
... the ssl_enable_fdx option tells the ssl
library whether the application will have two threads, one reading and one writing, or just one thread doing reads and writes alternately.
...And 6 more matches
MMgc - Archive of obsolete content
mmgc is the tamarin (née macromedia) garbage collector, a memory management
library that has been built as part of the avm2/tamarin effort.
... it is a static
library that is linked into the flash player but kept separate, and can be incorporated into other programs.
...mmgc namespace the mmgc
library is in the c++ namespace mmgc.
...And 5 more matches
Using LDAP XPCOM with XULRunner - Archive of obsolete content
this will create two files in the components directory of the build package: mozldap.dll (or libmozldap.so or...) mozldap.xpt and two files in the root directory of the build package: on windows: nsldap32v50.dll nsldappr32v50.dll on linux: libldap50.so libprldap50.so those are the native ldap
library.
...this is due to the fact that the native ldap
library files are not found by the xulrunner process.
... the solution is to use the bsmedberg stub, described in using dependent libraries in extension components: the component
library is just a loader of the real
library and all its dependencies, so as all the needed libraries are loaded.
...And 5 more matches
An overview of NSS Internals
nss is a
library written in the c programming language.
... a core element of nss is freebl, a base
library providing hash functions, big number calculations, and cryptographic algorithms.
... in addition to the freebl, softoken, and ckbi modules, there is an utility
library for general operations (e.g., encoding/decoding between data formats, a list of standardized object identifiers (oid)).
...And 5 more matches
NSS sources building testing
because nss depends on the base
library nspr, you should download the archive that combines both nss and nspr.
...the nspr base
library was located in directory mozilla/nsprpub.
... nss/lib contains all the
library code that is used to create the runtime libraries used by applications.
...And 5 more matches
Creating the Component Code
use the calculator (after learning long division) you have to write a fair amount of code to create a component
library that gets loaded into xpcom.
...specifically, the component
library has to contain implementations for the component-related interfaces described in this chapter: nsimodule and nsifactory, which are entry points for your implementation code.
... coding for the registration process when xpcom discovers your component for the first time (via xpinstall or regxpcom, both of which are discussed in component installation overview), the first thing it tries to do is load your
library and find the symbol nsgetmodule.
...And 5 more matches
Index
96 xpcom glue guide, xpcom, xpcom glue the xpcom glue is a static
library which component developers and embedders can link against.
...the most common type of component is one that is written in c++ and compiled into a shared
library (a dll on a windows system or a dso on unix).
... 106 packaging weblock xpcom in this final part of the tutorial, we'll put all of the pieces of the web locking component - the
library itself, the type
library, the header file, and the user interface resources - into a package that can be installed on other systems.
...And 5 more matches
Standard OS Libraries
components.utils.import("resource://gre/modules/ctypes.jsm"); var lib = ctypes.open("user32.dll"); /* note: if you go to getcursorpos page on msdn, it says first argument is of structure point, so lets create that structure, * the link here shows that that x and y are type long which is ctypes.long */ // https://msdn.microsoft.com/en-us/
library/windows/desktop/dd162805%28v=vs.85%29.aspx var point = new ctypes.structtype("tagpoint", [ { "x": ctypes.long }, { "y": ctypes.long } ]); /* declare the signature of the function we are going to call */ var getcursorpos = lib.declare('getcursorpos', ctypes.winapi_abi, ctypes.bool, point.ptr ); /* use it like this */ var point = point(); var ret = getcursorpos(point.address()); ...
...one
library that linux uses, and that can be used through js-ctypes, is x11.
...therefore all the gdk
library functions are available for use.
...And 5 more matches
Plug-in Basics - Plugins
when the browser starts, it enumerates the available plug-ins (this step varies according to platform), reads resources from each plug-in file to determine the mime types for that plug-in, and registers each plug-in
library for its mime types.
... mac os x ~/
library/internet plug-ins.
... /
library/internet plug-ins.
...And 5 more matches
Using gdb on wimpy computers - Archive of obsolete content
mozilla uses pthreads for its networking
library so you need to be able to work in a threaded environment.
... the best way to do this is to set a breakpoint in main, let the program run until main and then turn off automatic
library loading.
...here's an example: [blizzard@gunhead mozilla]$ cd dist/bin/ [blizzard@gunhead bin]$ ./mozilla -g .//run-mozilla.sh -g ./mozilla-bin mozilla_five_home=/home/blizzard/src/mozilla/mozilla/dist/bin ld_
library_path=/home/blizzard/src/mozilla/mozilla/dist/bin shlib_path=/home/blizzard/src/mozilla/mozilla/dist/bin libpath=/home/blizzard/src/mozilla/mozilla/dist/bin moz_program=./mozilla-bin moz_toolkit= moz_debug=1 moz_debugger= /usr/bin/gdb ./mozilla-bin -x /tmp/mozargs22288 gnu gdb 19991004 copyright 1998 free software foundation, inc.
...And 4 more matches
Implementing feature detection - Learn web development
this article details how to write your own simple feature detection, how to use a
library to speed up implementation, and native features for feature detection such as @supports.
...etect whether the browser supports geolocation or not by using something like the following: if ("geolocation" in navigator) { navigator.geolocation.getcurrentposition(function(position) { // show the location on a map, perhaps using the google maps api }); } else { // give the user a choice of static maps instead perhaps } it is probably better to use an established feature detection
library however, rather than writing your own all the time.
...} as an example, our snapshot demo makes use of it to selectively apply the brick javascript
library and use it to handle the ui layout, but only for the small screen layout (480px wide or less).
...And 4 more matches
SpiderMonkey Build Documentation
(if you want to use spidermonkey as a
library in your c++ application, or work on improving spidermonkey itself, do a developer/debug build instead, as described below.) cd js/src # this name should end with "_opt.obj" to make the version control system ignore it.
...refer the release notes under command line tools -> new features the release notes also states that this compatibility package will no longer be provided in the near future, so the build system on macos will have to be adapted to look for headers in the sdk until then, the following should help, open /
library/developer/commandlinetools/packages/macos_sdk_headers_for_macos_10.14.pk this builds an executable named js in the directory build-release/dist/bin.
...this installs the shared
library to /usr/local/lib, the c header files to /usr/local/include, and the js executable to/usr/local/bin.
...And 4 more matches
Web Replay
the functions which are intercepted are generally at the system call and the system
library level.
... the difficulties are in figuring out the set of system
library apis to intercept, in getting the memory management and dirty memory parts of the rewind infrastructure to work, and in handling the different graphics and ipc pathways on different platforms.
... this project records all behavior outside of system
library calls which the process makes, with exceptions carved out for the allowed non-determinism and for draw targets.
...And 4 more matches
nsILocalFile
void initwithpath(in astring filepath); void launch(); pr
librarystar load(); native code only!
... load returns the result of pr_load
library() on the file.
... the caller is responsible for calling pr_unload
library() on the result.
...And 4 more matches
Twitter - Archive of obsolete content
jetpack's twitter
library, jetpack.lib.twitter, is a very simple, lightweight layer on top of twitter's rest api.
...to use this
library, you therefore need to be familiar with twitter's own api.
... (or write a patch!) arguments each and every method in the
library takes a single argument, an object.
...And 3 more matches
Mozilla Application Framework in Detail - Archive of obsolete content
xbl (extensible binding language) allows you to expand your
library of interface elements, and even construct your own xml language for defining your ui.
... the necko network
library mozilla's network
library (aka necko) provides an extensible, platform-independent api for several layers of networking from transport to presentation layers.
...applications that want to access the various mozilla xpcom libraries (networking, security, dom, etc.) use a special layer of xpcom called xpconnect, which reflects the
library interfaces into javascript (or other languages).
...And 3 more matches
Mozilla Crypto FAQ - Archive of obsolete content
in the near future the mozilla code base will include a complete open source cryptographic
library, and mozilla will include ssl support as a standard feature.
...shortly thereafter the nss developers began work on an open source implementation of the rsa algorithm; that code, together with code previously developed for other cryptographic algorithms, will be included in a new version 3.1 of the nss open source cryptographic and pki
library.
... version 3.1 of the network security services
library will include a complete open source implementation of the cryptographic algorithms needed for mozilla ssl support, including the rsa public key algorithm (now in the public domain).
...And 3 more matches
Deploying XULRunner - Archive of obsolete content
xulrunner 39 and later due to mac os x code signing rules and how they interact with the design of xulrunner (see bug 1105044 for the inside scoop), starting with xulrunner 39 the xulrunner
library files are no longer able to reside in a xulrunner framework directory.
... instead, the
library files are placed directly into the macos directory alongside the main executable file.
...you should copy this file from /
library/frameworks/xul.framework/versions/1.8/xulrunner.) libmozglue.dylib (the main xul
library) ...
...And 3 more matches
Multiprocess on Windows
this code lives in the mscom
library, located in the tree at /ipc/mscom.
... com metadata midl outputs two different types of metadata: "fast format strings" (also known as oicf) and (optionally, if a
library statement is included in the idl) type libraries (also known as typelib).
... we will now further detail each of these items: generating typelibs for all com interfaces you first need to include a
library statement in your idl.
...And 3 more matches
PR_FindSymbol
pr_findsymbol() will return an untyped reference to a symbol in a particular
library given the identity of the
library and a textual representation of the symbol in question.
... syntax #include <prlink.h> void* pr_findsymbol ( pr
library *lib, const char *name); parameters the function has these parameters: lib a valid reference to a loaded
library, as returned by pr_load
library, or null.
... description this function finds and returns an untyped reference to the specified symbol in the specified
library.
...And 3 more matches
Using JSS
the exact
library names vary according to the convention for each platform.
... for example, the nspr
library is called nspr4.dll or libnspr4.dll on windows and libnspr4.so on solaris.
... jss dependencies core
library name description binary release location nspr4 nspr os abstraction layer http://ftp.mozilla.org/pub/mozilla.org/nspr/releases plc4 nspr standard c
library replacement functions plds4 nspr data structure types nss3 nss crypto, pkcs #11, and utilities http://ftp.mozilla.org/pub/mozilla.org/security/nss/releases ssl3 nss ssl
library smime3 nss s/mime functions and types nssckbi pkcs #11 module containing built-in root ca certificates.
...And 3 more matches
nss tech note6
even on platforms for which there is only one implementation of freebl, there is now a separate freebl shared
library.
... the freebl
library implements a private interface internal to nss.
... on 32-bit windows and 32-bit os/2, this shared
library is called freebl3.dll, and the corresponding .chk file is called freebl3.chk .
...And 3 more matches
NSS tools : modutil
the jar file uses the nss pkcs #11 jar format to identify all the files to be installed, the module's name, the mechanism flags, and the cipher flags, as well as any files to be installed on the target machine, including the pkcs #11 module
library file and other files such as documentation.
...this directory should be one below which it is appropriate to store dynamic
library files, such as a server's root directory.
... -libfile
library-file specify a path to a
library file containing the implementation of the pkcs #11 interface module that is being added to the database.
...And 3 more matches
NSS tools : modutil
the jar file uses the nss pkcs #11 jar format to identify all the files to be installed, the module's name, the mechanism flags, and the cipher flags, as well as any files to be installed on the target machine, including the pkcs #11 module
library file and other files such as documentation.
...this directory should be one below which it is appropriate to store dynamic
library files, such as a server's root directory.
... -libfile
library-file specify a path to a
library file containing the implementation of the pkcs #11 interface module that is being added to the database.
...And 3 more matches
Canvas API - Web APIs
easeljs is an open-source canvas
library that makes creating games, generative art, and other highly graphical experiences easy.
... fabric.js is an open-source canvas
library with svg parsing capabilities.
... heatmap.js is an open-source
library for creating canvas-based data heat maps.
...And 3 more matches
WebGL: 2D and 3D graphics for the web - Web APIs
webgl (web graphics
library) is a javascript api for rendering high-performance interactive 3d and 2d graphics within any compatible web browser without the use of plug-ins.
... libraries glmatrix is a javascript matrix and vector
library for high-performance webgl apps.
... sylvester is an open-source
library for manipulating vectors and matrices.
...And 3 more matches
JXON - Archive of obsolete content
if you want a complete bidirectional jxon
library (modelled on the json global object), skip to the dedicated paragraph (but please read the note about the const statement compatibility).
... appendix: a complete, bidirectional, jxon
library now we can create a more complete, bidirectional, jxon
library based on all our algorithms (see: #1, #2, #3, #4, reverse).
...if you want a full browser compatibility of this
library, please replace all the const statements with the var statements.
...And 2 more matches
Source code directories overview - Archive of obsolete content
qt contains source code for the qt toolkit, a c class
library which runs on x-windows on unix, windows 95, windows 98 and window nt 4.0.
... db contains c code for the mdb/mork database which is a low-level, general-purpose and cross-platform file
library.
...this code is also known by the names, "netlib" and "necko." nsprpub contains c code for the cross platform "c" runtime
library.
...And 2 more matches
Modularization techniques - Archive of obsolete content
void **aresult); // manually registry a factory for a class static nsresult registerfactory(const nscid &aclass, nsifactory *afactory, prbool areplace); // manually registry a dynamically loaded factory for a class static nsresult registerfactory(const nscid &aclass, const char *a
library, prbool areplace, prbool apersist); // manually unregister a factory for a class static nsresult unregisterfactory(const nscid &aclass, nsifactory *afactory); // manually unregister a dynamically loaded factory for a class static nsresult unregisterfactory(const nscid &aclass, ...
... const char *a
library); // unload dynamically loaded factories that are not in use static nsresult freelibraries(); }; there are several ways a factory can make its way into the repository.
...the second takes a class id and the path to a dynamically loadable
library.
...And 2 more matches
The Joy of XUL - Archive of obsolete content
the calendar application is comprised of a xul front end and an xpcom component that leverages libical, a native
library written in c, for date operations and calendar data storage.
... xpcom/xpconnect enables integration of native code.a fully-featured open source calendar
library, libical, was harvested for the calendar project.
...the
library was initially integrated by writing an xpcom wrapper to adapt its interface.
...And 2 more matches
Index - MDN Web Docs Glossary: Definitions of Web-related terms
specifically, blink began as a fork of the webcore
library in webkit, which handles layout, rendering, and dom, but now stands on its own as a separate rendering engine.
... 300 opengl codingscripting, glossary, opengl opengl (open graphics
library) is a cross-language, multi-platform application programming interface (api) for rendering 2d and 3d vector graphics.
...the three.js
library provides many features and apis for drawing 3d scenes in your browser.
...And 2 more matches
Drawing graphics - Learn web development
we will however show how to use a webgl
library to create a 3d scene more easily, and you can find a tutorial covering raw webgl elsewhere — see getting started with webgl.
... webgl is based on opengl (open graphics
library), and allows you to communicate directly with the computer's gpu.
... using a
library because of its complexity, most people write 3d graphics code using a third party javascript
library such as three.js, playcanvas, or babylon.js.
...And 2 more matches
4.3 Release Notes
release date: 01 april 2009 introduction network security services for java (jss) 4.3 is a minor release with the following new features: sqlite-based shareable certificate and key databases libpkix: an rfc 3280 compliant certificate path validation
library pkcs11 needslogin method support hmacsha256, hmacsha384, and hmacsha512 support for all nss 3.12 initialization options jss 4.3 is tri-licensed under mpl 1.1/gpl 2.0/lgpl 2.1.
... libpkix: an rfc 3280 compliant certificate path validation
library (see pkixverify) pk11token.needslogin method (see needslogin) support hmacsha256, hmacsha384, and hmacsha512 (see hmactest.java) support for all nss 3.12 initialization options (see initializationvalues) new ssl error codes (see http://mxr.mozilla.org/security/sour...util/sslerrs.h) ssl_error_unsupported_extension_alert ssl_error_certificate_unobtainable_alert ssl_error_unrecogn...
...jss is a jni
library we provide the jss4.jar but expect you to build the jss's matching jni shared
library.
...And 2 more matches
NSS environment variables
audit data 3.11.2 nss_enable_pkix_verify boolean (any non-empty value to enable) use libpkix, rather than the old cert
library, to verify certificates.
... 3.12.4 nss_use_system_sqlite boolean (1 to enable) use the system installed sqlite
library instead of the in-tree version.
... before 3.0 use_debug_rtl boolean (1 to enable) on windows, msvc has options to build with a normal run time
library or a debug run time
library.
...And 2 more matches
NSS Tools modutil
the jar file should also contain any files to be installed on the target machine, including the pkcs #11 module
library file and other files such as documentation.
... -libfile
library-file specify a path to the dll or other
library file containing the implementation of the pkcs #11 interface module that is being added to the database.
...this directory should be one below which it is appropriate to store dynamic
library files (for example, a server's root directory or the netscape communicator root directory).
...And 2 more matches
Rebranding SpiderMonkey (1.8.5)
find ./ -type f -exec sed -i "s/$brand.pc/mozjs185.pc/" {} \; the last recursive search and replace, changes the file name of the static
library: find ./ -type f -exec sed -i "s/js_static/$brand_static/" {} \; allright, almost there.
...you may now perform the build and installation of your custom branded spidermonkey
library: make note: depending on your system you may need administrative rights to perform the installation: make install the following information isn't technically needed for using your
library but it will help other applications use your
library.
... your rebranded
library has been succesfully built and installed to libdir as specified in ./config/autoconf.mk.
...And 2 more matches
Embedded Dialog API
(testgtkembed doesn't override promptservice; it uses the default dialogs.) both are source for a
library set up as a mozilla component and factory.
...the replacement
library should be installed during application initialization.
... the default dialog-posing
library is a component (promptservice for instance is part of the embedding component), registered as a component during gecko initialization (by ns_initembedding).
...And 2 more matches
Starting WebLock
once the interface has been described in the xpidl language, the interface file can be used to generate the header files needed for the implementation code, the binary type
library files that let you use the interface of the weblock component from javascript, and even broken linkjavadoc style html documentation.
...the xpidl file for the iweblock interface can be used to generate the c++ header file, which you'll need to implement the interface in the component and also a type
library that makes the component accessible from javascript or other interpreted languages.
...there are many ways to do this: you can use standard ansi file i/o, or nspr (see the netscape portable runtime
library below for a brief description of nspr), or you can use the networking apis that gecko provides.
...And 2 more matches
Using the Gecko SDK
the frozen gecko api consists of a set of component interfaces (c++ vtables) and <tt>extern "c"</tt> symbols exported from the xpcom
library and the nspr libraries.
...when those classes or functions are used, the component must link with the corresponding static
library.
...all nspr functions are frozen by default and are not marked as such in the respective header files.) the glue
library exists to make common tasks easier.
...And 2 more matches
XPCOM
however, such decoders relied on servers sending correct mime types; images sent with incorrect mime types would not be correctly displayed.xpcom gluethe xpcom glue is a static
library which component developers and embedders can link against.
...if you create an object with a longer lifespan, you will own it until you give ownership away.xpcom referencethis reference describes the interfaces and functions provided by the xpcom
library.
... in addition, it details the various helper classes and functions, as well as the components, provided by the xpcom glue
library.
...And 2 more matches
js-ctypes reference
working with libraries to load a
library, use ctypes.open().
... the
library object is used mostly to declare native functions provided by the
library so that js-ctypes knows how to call them.
... see
library.declare() for instructions on how to declare these functions.
...And 2 more matches
Index - Web APIs
the following
library aims to abstract the access to document.cookie by defining an object (doccookies) that is partially consistent with a storage object.
...for a more scalable, non-native
library, see stringview – a c-like representation of strings based on typed arrays.
...for a more scalable, non-native
library, see stringview – a c-like representation of strings based on typed arrays.
...And 2 more matches
Viewpoints and viewers: Simulating cameras in WebXR - Web APIs
since the xrview representing the view has a transform property which is an xrrigidtransform providing the camera view, you can get the model view matrix—the transform matrix needed to move the world to simulate the desired camera position—like this: let viewmatrix = view.transform.inverse.matrix; if the
library you're using accepts an xrrigidtransform object directly, you can instead get view.transform.inverse, rather than pulling out just the array representing the view matrix.
...see multiplying two matrices in the article matrix math for the web for a clear but readable function that does this or use your preferred matrix math
library such as glmatrix to do the work.
....0); const aspectratio = viewport.width / viewport.height; const transform = mat4.create(); mat4.perspective(transform, fovradians, aspectratio, nearclip, farclip); return transform; } after converting the fov angle, fovdegrees, from degrees to radians and computing the aspect ratio of the xrviewport specified by the viewport parameter, this function uses the glmatrix
library's mat4.perspective() function to compute the perspective matrix.
...And 2 more matches
Building Firefox with Rust code - Archive of obsolete content
the build system will generate a special 'rust unified
library' crate, compiled to a static
library (libgkrust.a) which is in turn linked into xul, so all public symbols will be available to c++ code.
... if you have new rust libraries that code in libxul calls directly, then you should add the appropriate extern crate lines in toolkit/
library/rust/shared/lib.rs, and add those libraries (crates) as dependencies in toolkit/
library/rust/cargo.toml.
... if you want to call code in the "e10s" crate, you would add: extern crate e10s; to toolkit/
library/rust/shared/lib.rs; you would also need to specify the path to that crate in the dependencies section of toolkit/
library/rust/shared/cargo.toml: [dependencies] e10s = { path = "../../../../path/from/srcdir/e10s" } the e10s crate must also be checked into the tree at the appropriate path.
... crates for unit tests can be added in a similar fashion to the files in toolkit/
library/gtest/rust/.
Treehydra Manual - Archive of obsolete content
esp abstract interpretation
library treehydra includes a
library for creating abstract interpretation analyses based on esp.
... users only need to define their esp property variables, abstract values, and the flow semantics of gimple statements, and the
library will do all of the substate tracking and fixed-point solving.
... the
library is at unstable/esp.js.
...in the esp
library, these are esp.state objects.
Getting started with XULRunner - Archive of obsolete content
you can extract this to any location you like, but there are many places in the documentation that will assume that you have this installed in /
library/frameworks.
... copy this to the /
library/frameworks directory, or another location of your choice.
...installing the application creates an os x application bundle: /
library/frameworks/xul.framework/xulrunner-bin --install-app /<path>/<to>/myapp.zip once installed, you can run the application: /
library/frameworks/xul.framework/xulrunner-bin "/applications/finkle/testapp.app/contents/resources/application.ini" you may run it without installing (but with the menu bar and dock icon missing) in os x by typing: /
library/frameworks/xul.framework/xulrunner-bin "/<ful...
... this might also be simplified using a very simple shell script (i call mine "run.sh"): #!/bin/sh /
library/frameworks/xul.framework/xulrunner-bin `pwd`/application.ini linux on ubuntu, you can run the application from a terminal.
Building up a basic demo with Three.js - Game development
three.js, as with any other 3d
library, provides built-in helper functions to help you implement common 3d functionality more quickly.
...we are not trying to say it is better than any other webgl
library available, and you should feel free to try another
library, such as copperlicht, glge, or playcanvas.
... save a copy of the latest minimized three.js
library inside your directory.
...the first <script> element includes the three.js
library in the page, and we will write our example code inside the second.
3D games on the Web - Game development
the most popular javascript 3d
library is three.js, a multi-purpose tool that makes common 3d techniques simpler to implement.
...as with any other 3d
library, it provides built-in functions to help you implement common 3d functionality more quickly.
...see the building up a basic demo with playcanvas subpage for higher-level details, and further articles showing how to create demos using the playcanvas
library, and the online editor.
... building up a basic demo with three.js three.js, like any other
library, gives you a huge advantage: instead of writing hundreds of lines of webgl code to build anything interesting you can use built-in helper functions to do it a lot easier and faster.
HTML forms in legacy browsers - Learn web development
the modernizr
library there are many cases where a good "polyfill" can help a lot by providing a missing api.
... the best way to polyfill missing api is by using the modernizr
library and its spin-off project: yepnope.
... modernizr is a
library that allows you to test the availability of functionality in order to act accordingly.
... yepnope is a conditional loading
library.
Function return values - Learn web development
first of all, make a local copy of the function-
library.html file from github.
... at this point, we'd like you to have a go at writing out a couple of functions of your own and adding them to the
library.
... think about the idea of creating a function
library.
...it is a good idea to create your own
library of utility functions to do these sorts of things.
Framework main features - Learn web development
to render this component, we would write code like this in the place where we want it rendered (which will probably be inside another component): <authorcredit src="./assets/zelda.png" alt="portrait of zelda schiff" byline="zelda schiff is editor-in-chief of the
library times." /> this will ultimately render the following <figure> element in the browser, with its structure as defined in the authorcredit component, and its content as defined in the props included on the authorcredit component call: <figure> <img src="assets/zelda.png" alt="portrait of zelda schiff" > <figcaption> zelda schiff is editor-in-chief of the
library times.
...to avoid a broken experience in sufficiently complex apps with lots of views, each of the frameworks covered in this module provides a
library (or more than one
library) that helps developers implement client-side routing in their applications.
... testing
library is a suite of testing utilities that has tools for many javascript environments, including react, vue, and angular.
... here’s a quick test for our counterbutton written with the help of react testing
library — it tests a number of things, such as the button's existance, and whether the button is displaying the correct text after being clicked 0, 1, and 2 times: import react from "react"; import { render, fireevent } from "@testing-
library/react"; import "@testing-
library/jest-dom/extend-expect"; import counterbutton from "./counterbutton"; it("renders a semantic with an initial state of 0", () => { const { getbyrole } = render(<counterbutton />); const btn = getbyrole("button"); expect(btn).tobeinthedocument(); expect(btn).tohavetextcontent("clicked 0 times"); }); it("increments the count when clicked", () => { const { getbyrole } = render(<cou...
Eclipse CDT
if you're on linux, you may also need to set the "working directory" to {your-obj-dir}/dist/bin, and then select the environment tab and set ld_
library_path to ".:./plugins:." and
library_path to ".:./components:.".
...isn't
library_path for compile time, not runtime, linking?) in the workspace preferences, you may want to go to "c/c++ > debug > gdb" and deselect "stop on startup at", so that eclipse won't automatically break in main() when it launches firefox for debugging.
...instead of processing build console output, eclipse could use something like ld_preload to load its own little
library into all the processes that are invoked as part of the build process.
... this
library could then check whether the process is a compiler instance and, if so, use the processes' current working directory and the arguments that were passed to it to reliably obtain the information it needs for each source file that is compiled.
Roll your own browser: An embedding how-to
all of this is somewhat generic and has been isolated into a static
library that you can simply call on.
... if you build mozilla/embedding/base/, a static
library (on windows) called baseembed_s.lib is built.
... just link this
library to your application.
... activex control: an activex control allowing for embedding the gecko layout engine.obsolete since gecko 7.0 llmozlib & ubrowser: a static
library that allows you to embed gecko and render pages to memory.
NSPR build instructions
nspr debug build uses the release c run-time
library by default.
... to generate a debug build that uses the debug c run-time
library, specify the --enable-debug-rtl configure option.
... on mac os x, they can be executed with the following: /bin/sh: $ cd pr/tests $ dyld_
library_path=../../dist/lib ./accept pass $ $ # to run all the nspr tests...
... $ $ dyld_
library_path=../../dist/lib ../../../nspr/pr/tests/runtests.sh ../..
Optimizing Applications For NSPR
functions called in an application by a shared
library require an additional function prolog.
...for any function made available to any shared
library (most likely passed in as a function pointer), that function must have the <tt>pr_callback</tt> qualifier.
...the same
library will work on either win-nt or win-95.
... digital unix digital unix (aka, osf1) requires the latest patches for the pthreads
library.
Introduction to Network Security Services
three shared libraries export public functions: the ssl
library supports core ssl operations.
... the s/mime
library supports core s/mime operations.
... the nss
library supports core crypto operations.
...so the nss
library has the following forms: libnss3.so - unix shared
library libnss3.sl - hp-ux shared
library libnss.a - unix static
library nss3.dll - windows shared
library nss3.lib - windows import
library binding to nss3.dll nss.lib - windows static
library nss, ssl, and s/mime have all of the above forms.
NSS 3.20 release notes
nss 3.20 source distributions are available on ftp.mozilla.org for secure https download: source tarballs: https://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/nss_3_20_rtm/src/ new in nss 3.20 new functionality the tls
library has been extended to support dhe ciphersuites in server applications.
... ssl_enableweakdheprimegroup - enable the use of weak dhe group parameters that are smaller than default minimum size of the
library.
... new types in sslt.h ssldhegrouptype - enumerates the set of dhe parameters embedded in nss that can be used with function ssl_dhegroupprefset new macros in ssl.h ssl_enable_server_dhe - a socket option user to enable or disable dhe ciphersuites for a server socket notable changes in nss 3.20 the tls
library has been extended to support dhe ciphersuites in server applications.
... for backward compatibility reasons, the server side implementation of the tls
library keeps all dhe ciphersuites disabled by default.
sslintro.html
these functions tell the
library which cipher suites are permitted by policy (for example, to comply with export restrictions).
...brings an ordinary nspr socket into the ssl
library, returning a new nspr socket that can be used to make ssl calls.
... once the ssl sockets have been configured, authentication and encryption happen automatically whenever you use the communication functions from the nspr
library.
... functions used by callbacks an ssl application typically provides one or more callback functions that are called by the ssl or pkcs #11
library code under certain circumstances.
Necko FAQ
everything you wanted to know about the networking
library in mozilla...
... what do i need to build this
library?
... todo when is the next stable release of this
library going to be available?
... todo i'd like to use this
library for my project.
Rhino scopes and contexts
sealed shared scopes the ecmascript standard defines that scripts can add properties to all standard
library objects and in many cases it is also possible to change or delete their properties as well.
... such behavior may not be suitable with shared scopes since if a script by mistake adds a property to a
library object from the shared scope, that object would not be garbage collected until there are no active references to the shared scope potentially leading to memory leaks.
... in addition if a script alters some of the standard objects, the
library may not work properly for other scripts.
...to seal all objects in the standard
library passtrue for the sealed argument when calling context.initstandardobjects(scriptableobject, boolean): scriptableobject sealedsharedscope = cx.initstandardobjects(null, true); this seals only all standard
library objects, it does not seal the shared scope itself thus after callinginitstandardobjects, sealedsharedscope can be farther populated with application-specific objects and functions.
Places utilities for JavaScript
organizer_folder_anno - this annotation is associated with a folder that should be shown in the
library's left pane.
... uritypes containertypes leftpanequeries queries that appear in the
library's left pane.
... leftpanefolderid a single folder shown in the
library's left pane.
... allbookmarksfolderid the id of the "all bookmarks" folder shown in the
library's left pane.
XPCOM glue
the xpcom glue is a static
library which component developers and embedders can link against.
...this is because it forces a dependency on the nspr
library, which can otherwise be avoided.
...components using internal linkage will have shared-
library dependencies against non-frozen symbols in the xpcom libraries, and will not work with any other versions of xpcom other than the one it was compiled against.
...t.lib -libpath:c:/path/to/sdk/lib xpcomglue.lib mac -l/path/to/sdk/lib -l/path/to/sdk/bin -wl,-executable-path,/path/to/sdk/bin -lxpcomglue_s -lxpcom -lnspr4 when building against a xulrunner derived sdk, use: -l/path/to/sdk/lib -l/path/to/xulrunner-bin -wl,-executable_path,/path/to/xulrunner-bin -lxpcomglue_s -lxpcom -lnspr4 where 'xulrunner-bin' is either /
library/frameworks/xul.framework/versions/current/ or /path/to/xulrunner-build/[platform]/dist/bin -l/path/to/sdk/lib -lxpcomglue linux -l/path/to/sdk/lib -l/path/to/sdk/bin -wl,-rpath-link,/path/to/sdk/bin -lxpcomglue_s -lxpcom -lnspr4 write it exactly as stated, see notes.
How to build an XPCOM component in JavaScript
the imported
library contains functions for generating the module, factory, and the nsgetmodule and queryinterface functions for you.
... note: it doesn't do the work of creating your interface definition file or the type
library for you, so you still have to go through those steps above if they haven't been done.
... the
library provides a simple example of its use in the source code (js/xpconnect/loader/xpcomutils.jsm), but here's another using this example.
... to begin, include a line at the top of your interface to import the xpcomutils
library: components.utils.import("resource://gre/modules/xpcomutils.jsm"); then implement your interface the same way you did above, except with a few modifications so that xpcomutils can set it up properly: /*********************************************************** class definition ***********************************************************/ //class constructor function helloworld() { // if you only need to access your component from javascript, uncomment the following line: //this.wrappedjsobject = this; } // class definition helloworld.prototype = { // properties required for xpcom registration: classdescription: "my hello world javascript xpcom component", classid: components.id("{xxxxxxxx-...
Setting up the Gecko SDK
application name description of functionality regxpcom.exe registers or unregisters components with xpcom xpidl.exe generates typelib and c++ headers from xpidl xpt_dump.exe prints out information about a given typelib xpt_link.exe combines multiple typelibs into a single typelib
library name description of functionality xpcomglue.lib xpcom glue
library to be used by xpcom components.
...then, from the new dialog, select "win32 dynamic-link
library".
...in the win32 dynamic-link
library dialog that displays (see below), you can choose the default selection "an empty dll project" as the type of dll.
... we also link against a number of libraries in the object/
library modules line: nspr4.lib plds4.lib plc4.lib embedstring.lib xpcomglue.lib both of these settings are shown below: the last change you need to make to set up the gecko sdk in your project is to change the "use run-time
library" setting to "multithreaded dll." since this change is configuration dependent, you must make set the release configuration run-time
library to the release multith...
Add to iPhoto
the core foundation api is implemented by the corefoundation object, which consists of two methods to initialize and shut down the
library, a reference to the
library, and all the types and methods declared to support core foundation.
... initializing core foundation the init() method, which sets everything up, looks like this: init: function() { this.lib = ctypes.open("/system/
library/frameworks/corefoundation.framework/corefoundation"); // declaring all the apis goes here } shutting down core foundation while the core foundation system framework itself doesn't need to be shut down, we do need to close the
library we opened using the js-ctypes api; that's where the shutdown() method comes in: shutdown: function() { this.lib.close(); } select api declarations let's take a look at a few of the key apis we declare for core foundation, to see how it's done.
...this is done using the js-ctypes
library object's declare() method, just like importing a function: this.kcftypearraycallbacks = this.lib.declare("kcftypearraycallbacks", this.cfarraycallbacks); note: for the record, this is the part that requires a nightly build of firefox 3.7a5pre dated april 16, 2010 or later; this capability was introduced in that build.
... in c, the fsref is declared thusly: struct fsref { uint8 hidden[80]; /* private to file manager; •• need symbolic constant */ }; typedef struct fsref fsref; we declare it using js-ctypes like this: this.struct_fsref = new ctypes.structtype("fsref", [ {"hidden": ctypes.char.array(80)}]); the carbon
library init() and shutdown() routines are otherwise similar to how we do things for core foundation.
Web audio codec guide - Web media technologies
for example, firefox only supports aac if support is provided by the operating system or an external
library.
...this capability was introduced on each platform in different firefox releases: aac support in firefox using external
library, by platform platform first firefox version with aac support windows (vista and later) 22 android 20 linux (depends on gstreamer) 26 macos 35 [2] chrome supports aac only in mp4 containers, and only supports aac's main profile.
...this capability was introduced on each platform in different firefox releases: mp3 support with external
library, by platform, in firefox platform first firefox version with mp3 support windows (vista and later) 22 android 20 linux (depends on gstreamer) 26 macos 35 opus the opus audio format was created by the xiph.org foundation as a fully open audio format; it has been standardized by ietf as rfc 6716.
...the simplest are those which are meant for ripping cds or pulling in audio files and quickly and automatically converting them to mp3 or aac format to store in a
library, such as itunes.
Appendix: What you should know about open-source software licenses - Archive of obsolete content
when a program is linked with a
library, whether statically or using a shared
library, the combination of the two is legally speaking a combined work, a derivative of the original
library.
...the lesser general public license permits more lax criteria for linking other code with the
library.
... under the lgpl, a program that calls a
library does not need to be published as a derivative work.
Index of archived content - Archive of obsolete content
lf contributor's guide classes and inheritance content processes getting started modules private properties firefox compatibility module structure of the sdk porting the
library detector program id sdk api lifecycle sdk and xul comparison testing the add-on sdk two types of scripts working with events xul migration guide high-level apis addon-page base64 clipboard ...
...efox extensions with the mozilla build system custom about: urls default preferences deploying a plugin as an extension developing add-ons displaying web content in an extension without security issues downloading json and javascript in extensions enhanced extension installation extension etiquette extension
library extension packaging extension samples extension theming guidelines extension versioning, update and compatibility extensions support in seamonkey 2 firefox addons developer guide hiding browser chrome hotfix extension how to convert an overlay extension to restartless inline options insta...
... plug-n-hack plug-n-hack get involved plug-n-hack phase1 plug-n-hack phase2 plug-n-hack tools supported plugin architecture porting nspr to unix platforms priority content prism blogposts build bundle
library bundles configuration extensions faq hostwindow installer scripting styling proxy ui pydom rdf api rdf datasource how-to reading textual data remote xul remote debugging rsyncing the cvs repository ...
List of Mozilla-Based Applications - Archive of obsolete content
emusic download manager music downloader for emusic emusic remote music manager enlis genome personal genome browser esxx javascript application server uses mozilla rhino etna xml wysiwyg editor eudora mail and news application the upcoming version 8 will be based on thunderbird evergreen
library automation system evolution email client uses nss exe elearning xhtml editor seems to be using xul for some of their webui facebook open platform facebook open platform the fbml parser used in the platform is based on mozilla code fennec browser for mobiles as mark notes: fennec is not firefox, it’s a completely different applicati...
...xulrunner application itsnat java ajax component based web framework java software platform uses mozilla rhino javalikescript javascript extensible tooling framework uses nspr and spidermonkey jaxer ajax server jslibs javascript development runtime environment uses spidermonkey (note: this is separate from the javascript
library jslib) joybidder ebay auction tool standalone version uses xulrunner just (fr) audio a tool for setting temporal tags in audio documents jsdoc toolkit documentation tool uses mozilla rhino k-meleon gecko-based web browser for windows embeds gecko in mfc kairo.at mandelbrot creates images of mandelbrot sets xulrunner applic...
...ploader is a xulrunner application that runs headless in xvfb wikipediaondvd and wikimedia by moulin offline versions of wikipedia blog post about projects wine implementation of the windows api uses mozilla spidermonkey and the gecko activex control worksmart.net suite of web-based workplace apps uses prism wxwebconnect web browser control
library wyzo browser xb browser anonymous web browser xbusiness create and send branded invoices, quotes or estimates xdf billing and quotes software xiphos bible study software xmldbeditor database editor xpud linux desktop xpud: linux with an xul interface, 10 second boot time xra...
GRE - Archive of obsolete content
this
library provides a layer of indirection between embedding code and xpcom.
... dependent libraries and environment variables the xulrunner gre is designed so that the embedder does not need to set any environment variables such as path or ld_
library_path before calling xpcomgluestartup(), because it dynamically loads the correct dependent libraries.
...embedders will need to set the ld_
library_path environment variable and start a new process in order to embed a suite-based gre correctly.
Standalone XPCOM - Archive of obsolete content
this should have been installed in your bin/components directory to run the test, cd to your bin/ directory setenv ld_
library_path .
... ./nstestsample: error in loading shared libraries: libxpcom.so: cannot open shared object file: no such file or directory ld_
library_path not set.
... to fix, setenv ld_
library_path .
Static Analysis for Windows Code under Linux - Archive of obsolete content
build dehydra for cross-compiler build the dehydra plugin dehydra is a shared
library which will be loaded by the above plugin-support gcc.
...that is because the gcc with plugin support is needed to produce treehydra shared
library.
... but we just made a mingw cross compiler, that means it can't produce the correct shared
library.
mozilla.dev.platform FAQ - Archive of obsolete content
in order to use xr successfully in <tt>--disable-libxul</tt> mode, you have to setup dyld_
library_path to include <tt>/
library/frameworks/xul.framework/versions/1.9a1</tt> - benjamin smedberg, fri, oct 20 2006 9:12 am q: when i try to build a completely standalone xul app on os x (10.4.8).
... took an foo.app directory created with xulrunner-bin --install-app and tried to copy (using rsync -rl) the xul.framework directory into a frameworks directory in the .app bundle and then deleting the xul.framework directory from /
library/frameworks, my running my app fails silently.
... it works fine when the xul.framework is installed in /
library/frameworks.
NPN_SetValue - Archive of obsolete content
r plugin display; true=windowed, false=windowless nppvplugintransparentbool: sets transparent mode for display of a plugin; true=transparent, false=opaque nppvjavaclass nppvpluginwindowsize nppvplugintimerinterval nppvpluginscriptableinstance nppvpluginscriptableiid nppvjavascriptpushcallerbool: specifies whether you are pushing or popping the jscontext off the stack nppvpluginkeep
libraryinmemory: tells browser that the plugin dll should live longer than usual nppvpluginneedsxembed nppvpluginscriptablenpobject nppvformvalue nppvplugindrawingmodel value the value of the specified variable to be set.
... nppvpluginkeep
libraryinmemory specifies that the plugin does not want to be unloaded from memory after the page which initiated it has gone.
...the plugin calls npn_setvalue any time with nppvpluginkeep
libraryinmemory as variable parameter and value set to true.
NP_Shutdown - Archive of obsolete content
syntax #include <npapi.h> void np_shutdown(void); windows #include <npapi.h> void winapi np_shutdown(void); description the browser calls this function once after the last instance of your plug-in is destroyed, before unloading the plug-in
library itself.
... note: if enough memory is available, the browser can keep the plug-in
library loaded if it expects to create more instances in the near future.
... the browser calls np_shutdown only when the
library is finally unloaded.
Building up a basic demo with Babylon.js - Game development
as with any other 3d
library it provides built-in functions to help you implement common 3d functionality more quickly.
...the first <script> element includes the babylon.js
library in the page; we will write our example code in the second one.
...babylon.js is bundled with a complete math
library for handling vectors, colors, matrices etc.
GLSL Shaders - Game development
note: remember that you don't have to use three.js or any other
library to write your shaders — pure webgl (web graphics
library) is more than enough.
... save a copy of the latest minimized three.js
library inside your directory.
...the <script> element in the <head> includes the three.js
library in the page; we will write our code into three script tags in the <body> tag: the first one will contain the vertex shader.
Plug-in Development Overview - Gecko Plugin API Reference
to determine the mime types and file extensions that the plug-in handles, the browser loads each
library and calls into the np_getmimedescription entry point.
...in addition to the dll that goes in the plugins folder, you must also place a type
library and an extra header file in the appropriate places in your application directory.
... reg_sz "the plugin author/vendor" version: reg_sz "0.5.whatever plugin version string" hklm/software/mozillaplugins/plugin-identifier/mimetypes add a sub-key for each mime type the plugin supports, with no values install to known locations on linux and mac on linux and mac, plug-ins are installed to well-known locations: linux: /usr/lib/mozilla/plugins or /usr/lib64/mozilla/plugins mac: /
library/internet plug-ins or ~/
library/internet plug-ins ...
Third-party APIs - Learn web development
this typically involves first linking to a javascript
library available on the server via a <script> element, as seen in our mapquest example: <script src="https://api.mqcdn.com/sdk/mapquest-js/v1.3.2/mapquest.js"></script> <link type="text/css" rel="stylesheet" href="https://api.mqcdn.com/sdk/mapquest-js/v1.3.2/mapquest.css"/> you can then start using the objects available in that
library.
...this type of api is known as a restful api — instead of getting data using the features of a javascript
library like we did with mapquest, we get data by making http requests to specific urls, with data like search terms and other properties encoded in the url (often as url parameters).
...it is worth noting however that both of the apis require a javascript
library to be applied to the page.
Getting started with React - Learn web development
objective: to set up a local react development environment, create a start app, and understand the basics of how it works hello react as its official tagline states, react is a
library for building user interfaces.
... while react can be used for small pieces of an interface, it's not as easy to "drop into" an application as a
library like jquery, or even a framework like vue — it is more approachable when you build your entire app with react.
... import react from 'react'; import logo from './logo.svg'; import './app.css'; the first statement imports the react
library itself.
Getting started with Vue - Learn web development
this lets you use vue as a drop-in replacement for a
library like jquery.
...this allows you to select a different routing/state management
library if they better fit your application.
...this is a great option when migrating an existing project using a
library like jquery to vue.
Handling common HTML and CSS problems - Learn web development
for cross browser forms, it is probably better to rely on simple form elements, or selectively use advanced form elements only in supporting browsers, or using a
library that provides decent cross browser form widgets, such as jquery ui or bootstrap datepicker.
...if you want to use these in your css and you need to support older ie versions, a good move is to use keith clark's selectivizr
library — this is a small javascript
library that works on top of an existing javascript
library like jquery or mootools.
...and such tools exist: the prefix-free javascript
library can be attached to a page, and will automatically detect what capabilities are possessed by browsers viewing the page and add prefixes as appropriate.
Package management basics - Learn web development
a project dependency can be an entire javascript
library or framework — such as react or vue — or a very small utility like our human-readable date
library, or it can be a command line tool such as prettier or eslint, which we talked about in previous articles.
...in this case, the bundle is nearly 200k because it has in fact included the entire date-fns
library, not just the function we're using.
... if we had avoided any development tools and pointed a <script src=””> element to a hosted version of date-fns, roughly the same thing would have happened — all of the
library would be downloaded when our example page is loaded in a browser.
About NSPR
these facilities include threads, thread synchronization, normal file and network i/o, interval timing and calendar time, basic memory management (malloc and free) and shared
library linking.
... history a good portion of the
library's purpose, and perhaps the primary purpose in the gromit environment, was to provide the underpinnings of the java vm, more or less mapping the sys layer that sun defined for the porting of the java vm to various platforms.
... linking support for linking (shared
library loading and unloading) is part of nspr's feature set.
NSPR Contributor Guide
new features for purposes of this paper, a "new feature" is defined as some api addition that goes into the core nspr
library, for example: libnspr4.dll nspr is mostly complete.
...for purposes of this paper, a "new
library" is defined as a libary under the mozilla/nsprpub/lib directory tree and built as a separate
library.
... generally useful platform abstractions you agree to sustain, bug fix may rely on the nspr api may not rely on any other
library api new platform ports all nspr api items must be implemented platform specific headers in pr/include/md/_platformname.[h!cfg] platform specific code in pr/src/md/platform/*.c make rules in config/_platform.mk documentation the files for nspr's documentation are maintained using a proprietary word processing system [don't ask].
Hash Tables
this chapter describes the hash table functions in the plds (portable
library — data structures)
library of nspr.
... the hash table
library functions are declared in the header file plhash.h.
... warning: the nspr hash table
library functions are not thread safe.
NSPR Error Handling
pr_load_
library_error failure to load a dynamic
library.
... pr_unload_
library_error failure to unload a dynamic
library.
... pr_find_symbol_error symbol could not be found in the specified
library.
PR_VersionCheck
syntax #include <prinit.h> prbool pr_versioncheck(const char *importedversion); parameter pr_versioncheck has one parameter: importedversion the version of the shared
library being imported.
... returns the function returns one of the following values: if the version of the shared
library is compatible with that expected by the caller, pr_true.
... description pr_versioncheck tests whether the version of the
library being imported (importedversion) is compatible with the running version of the shared
library.
4.3.1 Release Notes
jss is a jni
library we provide the jss4.jar but expect you to build the jss's matching jni shared
library.
...in general, a jss jar file must be used with the jss shared
library from the exact same release.
... to obtain the version info from the jar file use, "system.out.println(org.mozilla.jss.cryptomanager.jar_jss_version)" and to check the shared
library: strings libjss4.so | grep -i header feedback bugs discovered should be reported by filing a bug report with bugzilla.
NSS_3.12_release_notes.html
e 2008 newsgroup: mozilla.dev.tech.crypto contents introduction distribution information new in nss 3.12 bugs fixed documentation compatibility feedback introduction network security services (nss) 3.12 is a minor release with the following new features: sqlite-based shareable certificate and key databases libpkix: an rfc 3280 compliant certificate path validation
library camellia cipher support tls session ticket extension (rfc 5077) nss 3.12 is tri-licensed under the mpl 1.1/gpl 2.0/lgpl 2.1.
...nss 3.12 libraries have the following versions: sqlite3: 3.3.17 nssckbi: 1.70 softokn3 and freebl3: 3.12.0.3 other nss libraries: 3.12.0.3 new in nss 3.12 3 new shared
library are shipped with nss 3.12: nssutil sqlite nssdbm 1 new include file is shipped with nss3.12: utilrename.h new functions in the nss shared
library: cert_checknamespace (see cert.h) cert_encodecertpoliciesextension (see cert.h) cert_encodeinfoaccessextension (see cert.h) cert_encodeinhibitanyextension (see cert.h) cert_encodenoticereference (see cert.h) cert_encodepolicyconstraintsextension ...
...bug 132485: built-in root certs slot description is empty bug 177184: nss_cmsdecoder_cancel might have a leak bug 232392: erroneous root ca tests in nss libraries bug 286642: util should be in a shared
library bug 287052: function to get crl entry reason code has incorrect prototype and implementation bug 299308: need additional apis in the crl cache for libpkix bug 335039: nssckfwcryptooperation_updatecombo is not declared bug 340917: crlutil should init nss read-only for some options bug 350948: freebl macro change can give 1% improvement in rsa performance on amd64 bug 352439: reference leaks in mod...
Utilities for nss samples
these utility functions are adapted from those found in the sectool
library used by the nss security tools and other nss test applications.
...*/ #ifndef _util_h #define _util_h #include <prlog.h> #include <termios.h> #include <base64.h> #include <unistd.h> #include <sys/stat.h> #include "util.h" #include <prprf.h> #include <prerror.h> #include <nss.h> #include <pk11func.h> /* * these utility functions are adapted from those found in * the sectool
library used by the nss security tools and * other nss test applications.
...*/ #include "util.h" /* * these utility functions are adapted from those found in * the sectool
library used by the nss security tools and * other nss test applications.
Python binding for NSS
the following module functions were added: ssl.get_ssl_version_from_major_minor ssl.get_default_ssl_version_range ssl.get_supported_ssl_version_range ssl.set_default_ssl_version_range ssl.ssl_
library_version_from_name ssl.ssl_
library_version_name ssl.get_cipher_suite_info ssl.ssl_cipher_suite_name ssl.ssl_cipher_suite_from_name the following deprecated module functions were removed: ssl.nssinit ssl.nss_ini ssl.nss_shutdown the following classes were added: sslciphersuiteinfo sslcha...
... ssl.tls_rsa_with_camellia_256_cbc_sha ssl.tls_rsa_with_des_cbc_sha ssl.tls_rsa_with_idea_cbc_sha ssl.tls_rsa_with_null_md5 ssl.tls_rsa_with_null_sha ssl.tls_rsa_with_null_sha256 ssl.tls_rsa_with_rc4_128_md5 ssl.tls_rsa_with_rc4_128_sha ssl.tls_rsa_with_seed_cbc_sha ssl.ssl_variant_datagram ssl.ssl_variant_stream ssl.ssl_
library_version_2 ssl.ssl_
library_version_3_0 ssl.ssl_
library_version_tls_1_0 ssl.ssl_
library_version_tls_1_1 ssl.ssl_
library_version_tls_1_2 ssl.ssl_
library_version_tls_1_3 ssl.ssl2 ssl.ssl3 ssl.tls1.0 ssl.tls1.1 ssl.tls1.2 ssl.tls1.3 the following methods were missing thread locks, this has been fixed.
... review all ref counting, numerous ref counting fixes implement cyclic garbage collection support by adding object traversal and clear methods identify static variables, move to thread local storage remove python-nss specific httplib.py, no longer needed python-nss now compatible with standard
library rewrite httplib_example.py to use standard
library and illustrate ssl, non-ssl, connection class, http class usage the following classes were added: authkeyid basicconstraints crldistributionpoint crldistributionpts certificateextension generalname signedcrl dn rdn ava certificaterequest the following module fun...
FC_Finalize
name fc_finalize - indicate that an application is done with the pkcs #11
library.
...if the
library is not initialized, it does nothing.
...fc_finalize should return ckr_cryptoki_not_initialized if the
library is not initialized.
NSPR functions
nspr is a platform abstraction
library that provides a cross-platform api to common os services.
... the ssl
library in nss implements the ssl protocol as an nspr i/o layer, which sits on top of another nspr i/o layer that represents tcp.
... pr_importtcpsocket socket i/o functions as mentioned above, the ssl
library in nss implements the ssl protocol as an nspr i/o layer.
Necko
necko is a network
library that provides a platform-independent api for several layers of networking, ranging from transport to presentation layers.
... currently the
library is built as part of the mozilla distribution.
...eventually we'd like to move to a binary distribution mechanism for the networking
library so that you can build your application that uses this
library without having to build mozilla.
Index
the finalizer's job is to clean up any resources allocated by the instance which wouldn't normally be cleaned up by the garbage collector (private data stored in the object by the application, file handles, etc.) 108 jsfreeop jsapi reference, reference, référence(2), spidermonkey various finalization api takes not jscontext * but rather either jsfreeop structure or its
library-private counterpart freeop.
... 462 js_seticumemoryfunctions sets the memory allocation and deallocation functions used by the icu internationalization
library.
...in addition to the interpreter, spidermonkey contains a just-in-time (jit) compiler, a garbage collector, code implementing the basic behavior of javascript values, a standard
library implementing ecma 262-5.1 §15 with various extensions, and a few public apis.
Signing Mozilla apps for Mac OS X
the path specified must be a full path; it's usually something similar to /users/username/
library/keychains/keychain-name.keychain.
... codesign -s mac-testing -fv \ --keychain /users/user/
library/keychains/mykeychain.keychain \ --resource-rules ./application.app/contents/_codesignature/coderesources \ --requirements '=designated => identifier "org.you.yourapp" and ( (anchor apple generic and certificate leaf[field.1.2.840.113635.100.6.1.9] ) or (anchor apple generic and certificate 1[field.1.2.840.113635.100.6.2.6] and certificate leaf[field.1.2.840.113635.100.6.1.13] an...
...d certificate leaf[subject.ou] = "43aq936h96"))' \ application.app or if you're using v2 signing, the command might look like this: codesign -s mac-testing -fv --deep \ --keychain /users/user/
library/keychains/mykeychain.keychain \ --requirements '=designated => ( (anchor apple generic and certificate leaf[field.1.2.840.113635.100.6.1.9] ) or (anchor apple generic and certificate 1[field.1.2.840.113635.100.6.2.6] and certificate leaf[field.1.2.840.113635.100.6.1.13] and certificate leaf[subject.ou] = "43aq936h96"))' \ application.app depending on your keychain preferences, the codesign command may display a popup asking for the password for the specified keychain.
The Publicity Stream API
accessing the api the publicity api can be enabled by including a javascript
library.
... this
library will detect whether native api support is enabled by the user's browser, if not it will shim in a pure html implementation.
... [is this still doable?] the javascript
library should be included from: https://myapps.mozillalabs.com/jsapi/publicity.js all apis related to open web applications are accessed under the navigator.apps object.
Using XPCOM Utilities to Make Things Easier
to write a different component
library, you could copy the listing at the end of the chapter, change very little, and paste it into a new project.
...in a debugging environment, this string will be printed to the screen when the component
library is loaded or unloaded.
... linking the full string
library (.lib or .a) into a component may raise its footprint by more than 100k (on windows), which in many cases is an unacceptable gain (see the xpcom string guide).
Mozilla internal string guide
introduction the string classes are a
library of c++ classes which are used to manage buffers of wide (16-bit) and narrow (8-bit) character strings.
...let the string
library create the class for you.
... idl the string
library is also available through idl.
XPCOM reference
this reference describes the interfaces and functions provided by the xpcom
library.
... in addition, it details the various helper classes and functions, as well as the components, provided by the xpcom glue
library.
... core xpcom functionsxpcom provides a number of global functions which are used to initialize and shut down the xpcom
library, as well as to allocate memory, get access to services, and to instantiate interfaces.foldersthe folder classes all implement the nsimsgfolder interface.
Troubleshooting XPCOM components registration
there are several common reasons that registration can fail: a component that is a binary (shared
library) fails to load a javascript component has parsing errors the shared
library loaded correctly, but registration was not successful did registration succeed?
... you may be able build your component using use_static_libs=1 in order to remove c runtime
library dependencies.
...(the -r switch from gnu ldd lists function relocations; adjust as suitable for your version) trace shared
library loading by setting the environment variable ld_debug=all while launching firefox (see `man ld.so` for details).
XPCOM tasks
like the standard libraries, xpcom must be a fairly self-contained
library, so as not to encumber clients with any unnecessary external dependencies.
... p2 classes that parallel standard
library classes should have compatible apis, i.e., nsdeque bug 18505 nsstring nsavltree nshashtable our various array classes in some cases, this might initially be provided by additional interfaces.
... p2 our various enumerator classes should be made compatible with the enumerators from the standard c
library, so that we can apply the standard algorithms to our containers.
XSLT 2.0
for users saxon-ce no extensions are required, saxon-ce runs whenever a html page is loaded that links to the saxon-ce javascript
library.
... saxon-b the xsl results extension uses the new incarnation of liveconnect (handled by java 1.6v12+ instead of mozilla-specific code) to connect with the java-based saxon-b
library, and adds support for having xslt performed automatically when visiting a page with the appropriate xslt processing instruction (and which isn't processed by firefox's own xslt 1.0 processor).
... saxon-b the extension demonstrates how one can use liveconnect code to communicate with the saxon-b
library, but one might find the javascript code module approach used inside the extension xquseme as a more reusable approach.
Using Objective-C from js-ctypes
let lib = ctypes.open(ctypes.
libraryname("objc")); function definition is the more tricky part.
... let { ctypes } = components.utils.import("resource://gre/modules/ctypes.jsm", {}); let id = ctypes.structtype("objc_object").ptr; let sel = ctypes.structtype("objc_selector").ptr; let bool = ctypes.signed_char; let lib = ctypes.open(ctypes.
libraryname("objc")); let objc_getclass = lib.declare("objc_getclass", ctypes.default_abi, id, ctypes.char.ptr); let sel_registername = lib.declare("sel_registername", ctypes.default_abi, sel, ctypes.char.ptr); let objc_msgsend = lib.declare("objc_msgsend", ctypes.default_abi, id, id, sel, "..."); let objc...
... */ // apple docs :: working with blocks - https://developer.apple.com/
library/ios/documentation/cocoa/conceptual/programmingwithobjectivec/workingwithblocks/workingwithblocks.html var _nsconcreteglobalblock = ctypes.open(ctypes.
libraryname('objc')).declare('_nsconcreteglobalblock', ctypes.voidptr_t); // //github.com/realityripple/uxp/blob/master/js/src/ctypes/
library.cpp?offset=0#271 /** * the "block descriptor" is a static singleton struct.
Initialization and Destruction - Plugins
plug-ins are native code libraries: .dll files on windows, .so or .dso files on unix, and powerpc shared
library files or 68k code resources on mac os.
...the browser calls the plug-in's np_shutdown function, which informs the plug-in that its
library is about to be unloaded, and gives it a chance to cancel any outstanding i/o requests, delete threads it created, free any memory it allocated, and perform any other closing tasks.
...it is called once after the last instance of the plug-in is destroyed, before releasing the plug-in
library itself.
Plug-in Development Overview - Plugins
to determine the mime types and file extensions that the plug-in handles, the browser loads each
library and calls into the np_getmimedescription entry point.
...in addition to the dll that goes in the plugins folder, you must also place a type
library and an extra header file in the appropriate places in your application directory.
... reg_sz "the plugin author/vendor" version: reg_sz "0.5.whatever plugin version string" hklm/software/mozillaplugins/plugin-identifier/mimetypes add a sub-key for each mime type the plugin supports, with no values install to known locations on linux and mac on linux and mac, plug-ins are installed to well-known locations: linux: /usr/lib/mozilla/plugins or /usr/lib64/mozilla/plugins mac: /
library/internet plug-ins or ~/
library/internet plug-ins ...
Console messages - Firefox Developer Tools
— includes a
library that provides a console api.
... the server-side
library creates json objects from the messages and encodes them for transmission.
... to find a suitable
library for your server code, see the chrome logger documentation.
Adding 2D content to a WebGL context - Web APIs
this project uses the glmatrix
library to perform its matrix operations, so you will need to include that in your project.
...generally people use a matrix
library rather than writing their own.
... in our case we're using the popular glmatrix
library.
Performance fundamentals - Web Performance
use css animations and transitions instead of using some
library’s animate() function, which probably currently uses many badly performing technologies (window.settimeout() or top/left positioning, for example) use css animations.
... if you want to create animations on the fly or modify them in javascript, james long has written a simple
library for that called css-animations.js.
...for example, the financial times uses a
library called fastclick for that purpose, which is available for you to use.
Mobile first - Progressive web apps (PWAs)
the full uncompressed modernizr
library is 42kb, but the version we are using in this demo is only 8kb.
...imagine you wanted to include some kind of webgl chart in the desktop version of the site requiring a webgl
library like three but didn't want it included in the mobile version?
... you could create a block to only load the
library in the case of narrow screen devices: if(window.matchmedia("(min-width: 481px)").matches) { require('three'); } we can, therefore, save the bandwidth for browsers that don't need it.
Caching compiled WebAssembly modules - WebAssembly
setting up a caching
library because indexeddb is a somewhat old-fashioned api, we wanted to provide a
library function to speed up writing caching code, and make it work better along with today's more modern apis.
... in our wasm-utils.js
library script, you'll find instantiatecachedurl() — this function fetches the wasm module at url with a version of dbversion, instantiates it with the given importobject, and returns a promise resolving to the finished wasm instance.
... errmsg => { console.log(errmsg); return webassembly.instantiatestreaming(fetch(url)).then(results => { return results.instance }); }); } caching a wasm module with the above
library function defined, getting a wasm module instance and using its exported features (while handling caching in the background) is as simple as calling it with the following parameters: a cache version, which — as we explained above — you need to update when any wasm module is updated or moved to a different url.
Compiling from Rust to WebAssembly - WebAssembly
navigate to wherever you keep your personal projects, and type this: $ cargo new --lib hello-wasm created
library `hello-wasm` project this creates a new
library in a subdirectory named hello-wasm with everything you need to get going: +-- cargo.toml +-- src +-- lib.rs first, we have cargo.toml; this is the file that we use to configure our build.
... the third line contains a use command, which imports code from a
library into your code.
... now that our
library is written, let's build it.
Content Scripts - Archive of obsolete content
this enables you to load a javascript
library like jquery by url, then pass in a simple script inline that can use jquery: // main.js var data = require("sdk/self").data; var pagemod = require("sdk/page-mod"); var contentscriptstring = '$("body").html("<h1>page matches ruleset</h1>");'; pagemod.pagemod({ include: "*.mozilla.org", contentscript: contentscriptstring, contentscriptfile: data.url("jquery.js") }); unless your content ...
... this insulation means that, for example, if a web page loads the jquery
library, then the content script won't be able to see the jquery object added by the
library - but the content script can add its own jquery object, and it won't clash with the page script's version.
Finding window handles - Archive of obsolete content
.queryinterface(ci.nsidocshelltreeitem) .treeowner .queryinterface(ci.nsiinterfacerequestor) .getinterface(ci.nsibasewindow); var hwndstring = basewindow.nativehandle; components.utils.import('resource://gre/modules/ctypes.jsm'); var user32 = ctypes.open('user32.dll'); /* http://msdn.microsoft.com/en-us/
library/ms633539%28v=vs.85%29.aspx * bool winapi setforegroundwindow( * __in_ hwnd hwnd * ); */ var setforegroundwindow = user32.declare('setforegroundwindow', ctypes.winapi_abi, ctypes.bool, // return bool ctypes.voidptr_t // hwnd ); var hwnd = ctypes.voidptr_t(ctypes.uint64(hwndstring)); var rez_setforegroundwindow = setforegroundwindow(hwnd); console.log('rez_setforegroundwindow:', rez...
...bnavigation) .queryinterface(ci.nsidocshelltreeitem) .treeowner .queryinterface(ci.nsiinterfacerequestor) .getinterface(ci.nsibasewindow); var nswindowstring = basewindow.nativehandle; components.utils.import('resource://gre/modules/ctypes.jsm'); var objc = ctypes.open(ctypes.
libraryname('objc')); // types let id = ctypes.voidptr_t; let sel = ctypes.voidptr_t; // constants let nil = ctypes.voidptr_t(0); //common functions let sel_registername = objc.declare('sel_registername', ctypes.default_abi, sel, ctypes.char.ptr); let objc_msgsend = objc.declare('objc_msgsend', ctypes.default_abi, id, id, sel, '...'); /* https://developer.apple.com/
library/mac/documentation/cocoa/ref...
StringView - Archive of obsolete content
the aims of this
library are: to create a c-like interface for strings (i.e., an array of character codes — an arraybufferview in javascript) based upon the javascript arraybuffer interface to create a highly extensible
library that anyone can extend by adding methods to the object stringview.prototype to create a collection of methods for such string-like objects (since now: stringviews) which work strictly on arrays of numbers rather than on creating new immutable javascript strings to work with unicode encodings other than javascript's default utf-16 domstrings introduction as web applications become more and more powerful, adding features such as audio and video manipulation, access to raw data using websockets, and so forth, it has become clear that there are times when it...
... stringview is a highly extensible
library, that anyone can extend by adding methods to the object stringview.prototype.
Migrating from Internal Linkage to Frozen Linkage - Archive of obsolete content
unicharutils has been modified to provide a frozen-linkage comparator: nsstring mystring = somestring; - if (mystring.equals(otherstring, nscaseinsensitivestringcomparator())) + if (mystring.equals(otherstring, caseinsensitivecompare)) return ns_ok; // woot, we're equal in all things but case when using unicharutils from frozen-linkage code, link against the unicharutil_external_s static
library.
... the following functions, however, are implemented in the glue
library and can be used from frozen-linkage code: ns_newarrayenumerator (excluding deprecated nsisupportsarray version) ns_newemptyenumerator ns_newunionenumerator nscrt functions in nscrt.h are not available to frozen-linkage code.
Drag and Drop JavaScript Wrapper - Archive of obsolete content
the
library also depends on another script
library, which you should also include, usually at the top of your xul file.
...<script src="chrome://global/content/nsdraganddrop.js" /> <script src="chrome://global/content/nstransferable.js" /> this drag and drop
library creates an object stored in the variable nsdraganddrop.
JSS build instructions for OSX 10.6 - Archive of obsolete content
cvs login cvs co -r nspr_4_8_7_rtm nspr cvs co -r nss_3_12_9_with_ckbi_1_82_rtm nss cvs co -r jss_4_3_2_rtm jss build nss for 32 and 64: cd mozilla/security/nss make nss_build_all cc="gcc -arch i386" ccc="g++ -arch i386" make nss_build_all use_64=1 build jss for 32 and 64: cd ../jss make cc="gcc -arch i386" ccc="g++ -arch i386" make use_64=1 on osx, java.
library.path doesnt seem to have /usr/lib or other paths.
...setting ld_
library_path didnt work ...
JavaScript crypto - Archive of obsolete content
*/); loading pkcs #11 modules long deletemodule(domstring modulename); long addmodule(domstring modulename, domstring
libraryfullpath, long cryptomechanismflags, long cipherflags); loads or removes a new pkcs #11 module.
...
libraryfullpath the filename of the
library prepended with its full path.
Nanojit - Archive of obsolete content
overview nanojit is a small, cross-platform c++
library that emits machine code.
...(typedef js_fastcall int32_t (*addtwofn)(int32_t); ) then, printf is hardcoded to call it with a parameter 5, and on linking with nanojit
library, the following program will display 2+5=7 now, what i need to do is generate output for this: start two = int 2 twoplustwo = add two, two ret twoplustwo this adds two and two in the most hardcoded way possible.
The new nsString class implementation (1999) - Archive of obsolete content
the nsstring class is very lightweight since it gets its functionality from the nsstrimpl static
library.
...usage patterns how to use these classes to increase the portability, thread and process safety of gecko, i suggest the following rules regarding the use of each of our string class derivatives: <center> string class</center> <center> where to use</center> nsstrimpl use to pass strings between modules who have linked the nsstrimpl function
library.
URIs and URLs - Archive of obsolete content
not all resources are network "retrievable"; e.g., human beings, corporations, and bound books in a
library can also be considered resources.
...nsiuri and nsiurl in a strict sense necko does only know urls, uris by the above definition are much too generic to be properly represented inside a
library.
Updating Commands - Archive of obsolete content
in fact, this is common enough that mozilla includes a
library which does just that.
...the code for this function is only a few lines long so you could include it directly in your code if for some reason you didn't want to include the
library.
XULRunner 1.8.0.1 Release Notes - Archive of obsolete content
to remove all installed versions of xulrunner, remove the /
library/frameworks/xul.framework directory.
... windows run the following command from the start menu -> run or from a command prompt: "c:\program files\mozilla xulrunner\1.8.0.1\xulrunner\xulrunner.exe" --install-app "c:\documents and settings\user\desktop\myapplication.xpi" the application will be installed to c:\program files\vendorname\applicationname mac os x run the following command in a command prompt: /
library/frameworks/xul.framework/xulrunner-bin --install-app ~/desktop/myapplication.xpi the application will be installed to /applications/vendor/appicationname linux run the following command in a command prompt: /opt/xulrunner/1.8.0.1/xulrunner/xulrunner --install-app ~/desktop/myapplication.xpi the application will be installed to /usr/lib/vendor/applicationname known issues firewall software ma...
XULRunner 1.8.0.4 Release Notes - Archive of obsolete content
to remove all installed versions of xulrunner, remove the /
library/frameworks/xul.framework directory.
... windows run the following command from the start menu -> run or from a command prompt: "c:\program files\mozilla xulrunner\1.8.0.4\xulrunner\xulrunner.exe" --install-app "c:\documents and settings\user\desktop\myapplication.xpi" the application will be installed to c:\program files\vendorname\applicationname mac os x run the following command in a command prompt: /
library/frameworks/xul.framework/xulrunner-bin --install-app ~/desktop/myapplication.xpi the application will be installed to /applications/vendor/applicationname linux run the following command in a command prompt: /opt/xulrunner/1.8.0.4/xulrunner/xulrunner --install-app ~/desktop/myapplication.xpi the application will be installed to /usr/lib/vendor/applicationname known issues firewall soft...
XULRunner 1.9.1 Release Notes - Archive of obsolete content
to remove all installed versions of xulrunner, remove the /
library/frameworks/xul.framework directory.
... windows run the following command from the start menu -> run or from a command prompt: "c:\program files\mozilla xulrunner\1.9.1\xulrunner\xulrunner.exe" --install-app "c:\documents and settings\user\desktop\myapplication.xpi" the application will be installed to c:\program files\vendorname\applicationname mac os x run the following command in a command prompt: /
library/frameworks/xul.framework/xulrunner-bin --install-app ~/desktop/myapplication.xpi the application will be installed to /applications/vendor/applicationname linux run the following command in a command prompt: /opt/xulrunner/1.9.1/xulrunner/xulrunner --install-app ~/desktop/myapplication.xpi the application will be installed to /usr/lib/vendor/applicationname known issues firewall software may...
XULRunner 1.9.2 Release Notes - Archive of obsolete content
to remove all installed versions of xulrunner, remove the /
library/frameworks/xul.framework directory.
... windows run the following command from the start menu -> run or from a command prompt: "c:\program files\mozilla xulrunner\1.9.2\xulrunner\xulrunner.exe" --install-app "c:\documents and settings\user\desktop\myapplication.xpi" the application will be installed to c:\program files\vendorname\applicationname mac os x run the following command in a command prompt: /
library/frameworks/xul.framework/xulrunner-bin --install-app ~/desktop/myapplication.xpi the application will be installed to /applications/vendor/applicationname linux run the following command in a command prompt: /opt/xulrunner/1.9.2/xulrunner/xulrunner --install-app ~/desktop/myapplication.xpi the application will be installed to /usr/lib/vendor/applicationname known issues firewall software may i...
XULRunner 1.9 Release Notes - Archive of obsolete content
to remove all installed versions of xulrunner, remove the /
library/frameworks/xul.framework directory.
... windows run the following command from the start menu -> run or from a command prompt: "c:\program files\mozilla xulrunner\1.9\xulrunner\xulrunner.exe" --install-app "c:\documents and settings\user\desktop\myapplication.xpi" the application will be installed to c:\program files\vendorname\applicationname mac os x run the following command in a command prompt: /
library/frameworks/xul.framework/xulrunner-bin --install-app ~/desktop/myapplication.xpi the application will be installed to /applications/vendor/applicationname linux run the following command in a command prompt: /opt/xulrunner/1.9/xulrunner/xulrunner --install-app ~/desktop/myapplication.xpi the application will be installed to /usr/lib/vendor/applicationname known issues firewall software...
XULRunner 2.0 Release Notes - Archive of obsolete content
to remove all installed versions of xulrunner, remove the /
library/frameworks/xul.framework directory.
... windows run the following command from the start menu -> run or from a command prompt: "c:\program files\mozilla xulrunner\2.0\xulrunner\xulrunner.exe" --install-app "c:\documents and settings\user\desktop\myapplication.xpi" the application will be installed to c:\program files\vendorname\applicationname mac os x run the following command in a command prompt: /
library/frameworks/xul.framework/xulrunner-bin --install-app ~/desktop/myapplication.xpi the application will be installed to /applications/vendor/applicationname linux run the following command in a command prompt: /opt/xulrunner/2.0/xulrunner/xulrunner --install-app ~/desktop/myapplication.xpi the application will be installed to /usr/lib/vendor/applicationname known issues firewall software may ide...
MacFAQ - Archive of obsolete content
if you've completed a xulrunner build, you should copy or symlink the dist/xul.framework directory to /
library/frameworks.
... note that in order to copy the framework while keeping the relative soft-links in the framework, do something like: % ( cd dist ; gnutar cf - xul.framework | ( cd /
library/frameworks ; gnutar xf - )) installing your application your application must be installed as a xulrunner app before you can open it.
2006-10-27 - Archive of obsolete content
alex is not sure if he is missing a
library or if he needs to pass extra options to configure the build.
... october 27: alex responded to peter weilbacher posting stating that he is going to look for a solaris newsgroup because he is not sure how to check if the
library is installed or where to get the packages.
JS-Engine FAQ - Archive of obsolete content
spidermonkey
library loading mechanism?
... to write wrappers in pure javascript to interface with any c
library on the system there are mechanisms such as xpcshell, wxjs, jsdb, jsni coding spidermonkey in c check out this tutorial how to compile tamarin on linux/x86 there is a patch that allows you to compile it.
Using Firebug and jQuery (Screencast) - Archive of obsolete content
we're going to take an introductory look at the firebug firefox extension and the jquery javascript
library - combining the two to build a reusable bookmarklet that can manipulate digg posts and comments.
... related links: firebug firefox extension jquery javascript
library jquery selector documentation digg learning jquery: jquerify bookmarklet if you wish to use greasemonkey instead of a bookmarklet, then by all means, please do so.
Writing JavaScript for XHTML - Archive of obsolete content
problem: my favourite js
library still breaks if you use javascript libraries like the famous prototype.js or yahoo's one, there is bad news for you: as long as the developers don't apply the fixes mentioned above, you won't be able to use them in your xml-xhtml applications.
... two possible ways still are there, but neither is very promissing: take the
library, recode it and publish it or e-mail the developers, e-mail your friends to e-mail the developers and e-mail your customers to e-mail the developers.
Archive of obsolete content
mmgc mmgc is the tamarin (née macromedia) garbage collector, a memory management
library that has been built as part of the avm2/tamarin effort.
... it is a static
library that is linked into the flash player but kept separate, and can be incorporated into other programs.
Index - Game development
14 bounding volume collision detection with three.js 3d, games, javascript, webgl, bounding boxes, collision detection, three.js this article shows how to implement collision detection between bounding boxes and spheres using the three.js
library.
...as with any other 3d
library it provides built-in functions to help you implement common 3d functionality more quickly.
Efficient animation for web games - Game development
a take-away to help combat poor animation performance, chris lord wrote animator.js, a simple, easy-to-use animation
library, heavily influenced by various parts of clutter, but with a focus on avoiding scope-creep.
...animator.js is a fire-and-forget style animation
library, designed to be used with games, or other situations where you need many, synchronised, custom animations.
WebRTC data channels - Game development
using the p2p
library one
library you can use is the p2p
library.
... this
library provides a simple api for creating peer connections and setting up streams and data channels.
Gecko FAQ - Gecko Redirect 1
ith html 4.01 compliance css: style system component (see also bug reports marked with the css1, css2, and css3 keywords) dom: see dom0, dom1, dom2 and event handling components xml rdf core javascript language interpreter (javascript engine) http 1.1 compliance bugs should generally be found on the networking, networking - general, and networking: cache components oji imagelib image
library (see also jpeg image handling and png image handling) ssl-related bugs are filed on the crypto component for information about the known bugs of a specific commercial product based on gecko, see that product's release notes.
... gecko includes the following components: document parser (handles html and xml) layout engine with content model style system (handles css, etc.) javascript runtime (spidermonkey) image
library networking
library (necko) platform-specific graphics rendering and widget sets for win32, x, and mac user preferences
library mozilla plug-in api (npapi) to support the navigator plug-in interface open java interface (oji), with sun java 1.2 jvm rdf back end font
library security
library (nss) original document information author(s): angus other contributors: ekrock, vidur, hidday...
Routers - MDN Web Docs Glossary: Definitions of Web-related terms
for spa in application layer, router is a
library that decides what web page is presented by a given url.
... learn more general knowledge for network layer context: router (computing) on wikipedia for spa in application layer context, most of the popular spa frameworks has its routing
library: angular router react router vue router ...
Advanced form styling - Learn web development
if you really need full control over the option styling, you'll have to either use some kind of
library to generate a custom control, or build your own custom control, or in the case of select use the multiple attribute, which makes all the options appear on the page, sidestepping this particular problem: <select id="select" name="select" multiple> ...
...if you really need full control over the styling, you'll have to either use some kind of
library to generate a custom control, or build your own.
How to build custom form controls - Learn web development
if not, you can iterate through the list or you may need to use a
library or pollyfill.
... here are a few libraries you should consider before coding your own: jquery ui axe accessible custom select dropdowns msdropdown nice forms if you do create alternative controls via radio buttons, your own javascript, or with a 3rd party
library, ensure it is accessible and feature-proof; that is, it needs to be able to work better with a variety of browsers whose compatibility with the web standards they use vary.
Installing basic software - Learn web development
maybe that sounds obvious to some people, but some of you are reading this article on your phone or a
library computer.
...a
library tends to be an existing javascript or css file that provides ready-rolled functionality for you to make use of in your code.
Choosing the right approach - Learn web development
async callbacks lose full control of how the function will be executed when passed to a third-party
library.
...if you want to use async/await but are concerned about older browser support, you could consider using the babeljs
library — this allows you to write your applications using the latest javascript and let babel figure out what changes if any are needed for your user’s browsers.
Strategies for carrying out testing - Learn web development
you may notice from the text in the example that it won't work in ie8 — this is a problem according to our support chart, which you'll have to work on, perhaps by using a feature detection
library to implement the functionality in a different way if the browser doesn't support css transitions (see implementing feature detection, later on in the course).
... having multiple virtual machines is very useful, particularly for windows ie/edge testing — on windows, you are not able to have multiple versions of the default browser installed side by side, so you might want to build up a
library of virtual machines to handle different tests as required, e.g.: windows 10 with edge 14 windows 10 with edge 13 windows 8.1 with ie11 windows 8 with ie10 windows 7 with ie9 windows xp with ie8 windows xp with ie7 windows xp with ie6 note: another good thing about virtual machines is that the virtual disk images are fairly self-contained.
Setting up your own test automation environment - Learn web development
previous overview: cross browser testing in this article, we will teach you how to install your own automation environment and run your own tests using selenium/webdriver and a testing
library such as selenium-webdriver for node.
...this also makes use of the util
library, which defines common conditions to use along with wait().
Cross browser testing - Learn web development
this article details how to write your own simple feature detection, how to use a
library to speed up implementation, and native features for feature detection such as @supports.
... setting up your own test automation environment in this article, we will teach you how to install your own automation environment and run your own tests using selenium/webdriver and a testing
library such as selenium-webdriver for node.
Introducing a complete toolchain - Learn web development
your toolchain will depend on your own needs, but for this example of a (possible) complete toolchain, the tools that will be installed up front will be:
library installation tools — for adding dependencies.
...
library installation tools we'll use npm to install our tools, which you first met in chapter 2.
Index
688 third party
library usage add-ons, extensions, review policy to complete the review process at addons.mozilla.org (amo), reviewers must be able to verify the code in your extension.
...in that case, when you upload your extension to amo, you will need to provide links to the
library source code.
Choosing the right memory allocator
notes memory that is allocated with the c standard
library (malloc() and free()) should not be passed between shared libraries.
... these memory buffers may be used within a single shared
library or program.
Runtime Directories
fox) and c:\users\<username>\appdata\local\virtualstore\program files\mozilla firefox\ windows 2000/xp c:\program files\mozilla firefox\ c:\documents and settings\<username>\application data\mozilla\firefox\ (or %appdata%\mozilla\firefox\) c:\documents and settings\<username>\local settings\application data\mozilla\firefox\ os x /applications/firefox.app ~/
library/application support/firefox/profiles/xxxxxxxx.default/ ~/
library/caches/firefox/profiles/xxxxxxxx.default/ linux ????
...rd\) and c:\users\<username>\appdata\local\virtualstore\program files\mozilla thunderbird\ windows 2000/xp c:\program files\mozilla thunderbird\ c:\documents and settings\<username>\application data\thunderbird\ (or %appdata%\thunderbird\) c:\documents and settings\<username>\local settings\application data\thunderbird\ os x /applications/thunderbird.app ~/
library/thunderbird/profiles/xxxxxxxx.default/ ~/
library/caches/thunderbird/profiles/xxxxxxxx.default/ linux ????
Gecko SDK
issues with the os x sdk if you need to use the xpidl utility to compile idl files on os x, it's likely that you will receive a strange error when running the tool that looks something along the lines of this: dyld:
library not loaded: /opt/local/lib/libintl.3.dylib referenced from: /users/varmaa/xulrunner-sdk/bin/./xpidl reason: image not found trace/bpt trap unfortunately, this is caused by a problem with the sdk build process which cannot currently be resolved (see bugzilla bug #430274).
...contents of the sdk the sdk contains the following: 1.9.2 idl files for frozen interfaces (under idl/) header files for frozen interfaces, xpcom functions, and nspr functions (under include/) import libraries or shared libraries (under lib/) static utility libraries (under lib/) various tools (under bin/) for more information about safely linking xpcom components using the xpcom "glue"
library, see xpcom glue.
How Mozilla determines MIME Types
also, for images loaded via <img src>, mozilla's image
library will do content sniffing (never extension sniffing) to find out the real type of the image.
... the image
library will be asked for the mime type given the content.
How to get a stacktrace for a bug report
accessing crash report ids outside of firefox if you cannot load firefox at all you can find the crash report files at this location depending on your operating system: windows : %appdata%\mozilla\firefox\crash reports\submitted\ os x : ~/
library/application support/firefox/crash reports/submitted/ linux : ~/.mozilla/firefox/crash reports/submitted/ each file in this folder contains one submitted crash report id.
... expand "~/
library/logs" and "crashreporter", then look for logs for "firefox-bin".
IPDL Tutorial
ath) { // launch child plugin process sendinit(pluginpath); } ~pluginparent() { sendshutdown(); } protected: bool recvready() { mobservers.notify("ready for action"); } }; here's how the ppluginchild might be used by a c++ implementor in the plugin process: class pluginchild : public ppluginchild { protected: void recvinit(const nscstring& pluginpath) { mplugin
library = pr_load
library(pluginpath.get()); sendready(); } void recvshutdown() { pr_unload
library(mplugin
library); } private: pr
library* mplugin
library; }; launching the subprocess and hooking these protocol actors into our ipc "transport layer" is beyond the scope of this document.
...ipdl imports these automatically because they are common, and because the base ipc
library knows how to serialize and deserialize these types.
OS.File for the main thread
using os.file from a jsm to import os.file into your chrome code, add the following line at the start of your script: components.utils.import("resource://gre/modules/osfile.jsm") promises before using os.file from the main thread, you need some understanding of the promise
library.
... let sessionstore = os.path.join(os.constants.path.profiledir, "sessionstore.js"); // under linux, this is generally "$home/.firefox/profiles/$profilename/sessionstore.js" // under macos, this is generally "$home/
library/application support/firefox/$profilename/sessionstore.js" // under windows, this is generally "%appdata%\local\temp\%profilename%"\sessionstore.js // etc.
about:memory
├───40,214,384 b (04.17%) -- add-ons │ ├──21,184,320 b (02.20%) ++ {d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/js-non-window/zones/zone(0x100496800)/compartment([system principal], jar:file:///users/njn/
library/application%20support/firefox/profiles/puna0zr8.new/extensions/%7bd10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d%7d.xpi!/bootstrap.js (from: resource://gre/modules/addons/xpiprovider.jsm:4307)) │ ├──11,583,312 b (01.20%) ++ jid1-xufzosoflzsoxg@jetpack/js-non-window/zones/zone(0x100496800) │ ├───5,574,608 b (00.58%) -- {59c81df5-4b7a-477b-912d-4e0fdf64e5f2} │ │ ├──5,529,2...
...80 b (00.57%) -- window-objects │ │ │ ├──4,175,584 b (00.43%) ++ top(chrome://chatzilla/content/chatzilla.xul, id=4293) │ │ │ └──1,353,696 b (00.14%) ++ top(chrome://chatzilla/content/output-window.html, id=4298) │ │ └─────45,328 b (00.00%) ++ js-non-window/zones/zone(0x100496800)/compartment([system principal], file:///users/njn/
library/application%20support/firefox/profiles/puna0zr8.new/extensions/%7b59c81df5-4b7a-477b-912d-4e0fdf64e5f2%7d/components/chatzilla-service.js) │ └───1,872,144 b (00.19%) ++ treestyletab@piro.sakura.ne.jp/js-non-window/zones/zone(0x100496800) more things worth pointing out are as follows.
NSPR's Position On Abrupt Thread Termination
it can happen because it called out of its own scope into some lazily implemented
library.
...they are alternatives to large state machines with mostly non-blocking
library functions.
PL_NewHashTable
the arguments keycompare and valuecompare are functions of type plhashcomparator that the hash table
library functions use to compare the keys and the values of entries.
...the hash table
library functions do not make a copy of this structure.
PR_CALLBACK
used to define pointers to functions that will be implemented by the client but called from a (different) shared
library.
... syntax #include <prtypes.h>type pr_callbackimplementation description functions that are implemented in an application (or shared
library) that are intended to be called from another shared
library (such as nspr) must be declared with the pr_callback attribute.
NSS FAQ
openssl is an open source project that implements server-side ssl, tls, and a general-purpose cryptography
library.
...it is based on the ssleay
library developed by eric a.
Getting Started With NSS
how to get involved with nss network security services (nss) is a base
library for cryptographic algorithms and secure network protocols used by mozilla software.
... the nss
library and its supporting command line tools are written in the c programming language.
JSS FAQ
nss is a fips-certified software
library.
... jss is considered a fips-compliant software
library since it only uses nss for any and all crypto routines.
NSS 3.12.4 release notes
new functions in the nss shared
library: pk11_isinternalkeyslot (see pk11pub.h) secmod_opennewslot (see pk11pub.h) new error codes (see secerr.h): sec_error_bad_info_access_method sec_error_crl_import_failed new oids (see secoidt.h) sec_oid_x509_any_policy the nssckbi pkcs #11 module's version changed to 1.75.
...whenever value exceeds 384 bytes bug 487736: libpkix passes wrong argument to der_decodetimechoice and crashes bug 487858: remove obsolete build options mozilla_security_build and mozilla_bsafe_build bug 487884: object leak in libpkix
library upon error bug 488067: pk11_importcrl reports sec_error_crl_not_found when it fails to import a crl bug 488350: nspr-free freebl interface need to do post tests only in fips mode.
NSS 3.14 release notes
the following functions have been added to the libssl
library included in nss 3.14 ssl_versionrangeget (in ssl.h) ssl_versionrangegetdefault (in ssl.h) ssl_versionrangegetsupported (in ssl.h) ssl_versionrangeset (in ssl.h) ssl_versionrangesetdefault (in ssl.h) to better ensure interoperability with peers that support tls 1.1, nss has altered how it handles certain ssl protocol layer events.
... the following functions have been added to the libssl
library included in nss 3.14: dtls_importfd (in ssl.h) dtls_gethandshaketimeout (in ssl.h) ssl_getsrtpcipher (in ssl.h) ssl_setrtpciphers (in ssl.h) support for aes-gcm support for aes-gcm has been added to the nss pkcs #11 module (softoken), based upon the draft 7 of pkcs #11 v2.30.
NSS 3.17 release notes
on windows, the new build variable use_static_rtl can be used to specify the static c runtime
library should be used.
... by default the dynamic c runtime
library is used.
NSS 3.18 release notes
a pkcs#11
library that contains root ca certificates can be loaded by tstclnt, which may either be the nssckbi
library provided by nss (-b) or another compatible
library (-r).
... on mac os x, by default the softokn shared
library will link with the sqlite
library installed by the operating system, if it is version 3.5 or newer.
NSS 3.21 release notes
l_signatureprefset - configures the enabled signature and hash algorithms for tls ssl_signatureprefget - retrieves the currently configured signature and hash algorithms ssl_signaturemaxcount - obtains the maximum number signature algorithms that can be configured with ssl_signatureprefset in utilpars.h nssutil_argparsemodulespecex - takes a module spec and breaks it into shared
library string, module name string, module parameters string, nss specific parameters string, and nss configuration parameter strings.
... nssutil_mkmodulespecex - take a shared
library string, module name string, module parameters string, nss specific parameters string, and nss configuration parameter string and returns a module string which the caller must free when it is done.
NSS 3.24 release notes
new functionality nss softoken has been updated with the latest national institute of standards and technology (nist) guidance (as of 2015): software integrity checks and post functions are executed on shared
library load.
... add a shared
library (libfreeblpriv3) on linux platforms that define freebl_lowhash.
NSS 3.40 release notes
available on ftp.mozilla.org for secure https download: source tarballs: https://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/nss_3_40_rtm/src/ new in nss 3.40 new functionality the draft-00 version of encrypted sni support is implemented tstclnt now takes -n option to specify encrypted sni key new functions none notable changes in nss 3.40 the mozilla::pkix
library has been ported from mozilla psm to nss.
... this is a c++
library for building certification paths.
NSS 3.44 release notes
notable changes in nss 3.44 it is now possible to build nss as a static
library (bug 1543545) initial support for building for ios.
...tion 1521578 - x25519 support in pk11pars.c 1540205 - freebl build fails with -dnss_disable_chachapoly 1532312 - post-handshake auth doesn't interoperate with openssl 1542741 - certutil -f crashes with segmentation fault 1546925 - allow preceding text in try comment 1534468 - expose chacha20 primitive 1418944 - quote cc/cxx variables passed to nspr 1543545 - allow to build nss as a static
library 1487597 - early data that arrives before the handshake completes can be read afterwards 1548398 - freebl_gtest not building on linux/mac 1548722 - fix some coverity warnings 1540652 - softoken/sdb.c: logically dead code 1549413 - android log lib is not included in build 1537927 - ipsec usage is too restrictive for existing deployments 1549608 - signature fails with dbm disabled 1549848 - ...
NSS Sample Code Utilities_1
nss sample code common: utilities this is a
library of utilities used by many of the samples.
...llowing: extract seed from noise file read der encoding from a file extract the password from a text file get the module password print as ascii or hexadecimal sample code #include <prlog.h> #include <termios.h> #include <base64.h> #include <unistd.h> #include <sys/stat.h> #include <prprf.h> #include "util.h" /* * these utility functions are adapted from those found in * the sectool
library used by the nss security tools and * other nss test applications.
PKCS11 FAQ
is the pkcs #11 module supplied with nss accessible through a shared
library?
... if a pkcs #11
library reports that, for example, it does not support rsa signing operations, does nss expect to be able to pull an rsa private key off the token using the c_getattributevalue call and then do the operation in software?
PKCS11 Implement
implementing pkcs #11 for nss note: this document was originally for the netscape security
library that came with netscape communicator 4.0.
...the supplied
library names are used as the default
library names; currently, these names should not include any double quotation marks.
Installation guide
if you install the libraries in a directory other than /usr/lib, you usually need to set the ld_
library_path environment variable.
.../sour...platlibs.mk#53 53 ifeq ($(os_arch), linux) 54 ifeq ($(use_64), 1) 55 extra_shared_libs += -wl,-rpath,'$$origin/../lib64:$$origin/../lib' 56 else 57 extra_shared_libs += -wl,-rpath,'$$origin/../lib' 58 endif 59 endif for example, if you install certutil in /foo/bar/nss/bin and the .so's in /foo/bar/nss/lib, then you only need to add /foo/bar/nss/bin to your path; you don't need to set ld_
library_path.
NSS_3.12.3_release_notes.html
new in nss 3.12.3 changes in behavior: in the development of nss 3.12.3, it became necessary to change some old
library behaviors due to the discovery of certain vulnerabilities in the old behaviors, and to correct some errors that had limited nss's ability to interoperate with cryptographic hardware and software from other sources.
...eed_flag in secoidt.h: sec_oid_seed_cbc in sslproto.h: tls_rsa_with_seed_cbc_sha in sslt.h: ssl_calg_seed new structure for seed support: (see blapit.h) seedcontextstr seedcontext new functions in the nss shared
library: cert_rfc1485_escapeandquote (see cert.h) cert_comparecerts (see cert.h) cert_registeralternateocspaiainfocallback (see ocsp.h) pk11_getsymkeyhandle (see pk11pqg.h) util_setforkstate (see secoid.h) nss_getalgorithmpolicy (see secoid.h) nss_setalgorithmpolicy (see secoid.h) for the 2 functions above see also (in secoidt.
Small Footprint
class generation
library if you do not include optimizer or javaadapter, nor do you use policysecuritycontroller then you do not need rhino
library for class file generation and you can remove all the classes from in org.mozilla.classfile package.
... smalljs.jar ant build script in rhino supports smalljar target that will generate smalljs.jar that does not include tools, optimizer, javaadapter and class generation
library, regular expressions, e4x implementataion and deprecated files.
FOSS
flusspferd - (newer) c++ bindings libjspp - c++ template based
library for extending & embedding spidermonkey; works with spidermonkey 1.8.5 and above, has lots of goodies spiderape - the oldest c++ bindings for spidermonkey trixul - (trixul cvs) - trixul xml-based gui toolkit embeds spidermonkey, using javascript to implement logic behind its gui, supporting calls from javascript to c++ objects rust mozjs - rust bindings used by servo gnome gjs - javascript bindings to gnome (broadly, to any l...
... http://javalikescript.free.fr/ - a general-purpose javascript platform that aims to provide an extensible tooling framework http://www.synchro.net/ - a telnet/ssh bulletin board system (bbs) and internet server (http/smtp/ftp) with extra internet services written in javascript (irc, imap, gopher, and many more) https://github.com/mindbit/libjssql/wiki - a
library that aims to provide a generic sql api for javascript that is as similar as possible to jdbc miscellaneous serverjs, a standardization effort for the fragmented server-side javascript world 0 a.d., historical rts game with javascript scripting http://soubok.googlepages.com/javascript malzilla - tool for hunting malware by deobfuscating javascripts on web pages, using spidermonkey ...
Hacking Tips
(gdb) r starting program: /home/code/mozilla-central/js/src/32-release/js -f /home/code/jaeger.js [thread debugging using libthread_db enabled] using host libthread_db
library "/lib/x86_64-linux-gnu/libthread_db.so.1".
...this method of profiling has the advantage of mixing the javascript stack with the c++ stack, which is useful to analyze
library function issues.
How to embed the JavaScript engine
by default this will build a spidermonkey shared
library that you will link into your application in a later step.
... compile the helloworld application and link to the spidermonkey
library.
SpiderMonkey Internals
in addition to the interpreter, spidermonkey contains a just-in-time (jit) compiler, a garbage collector, code implementing the basic behavior of javascript values, a standard
library implementing ecma 262-5.1 §15 with various extensions, and a few public apis.
... standard
library the methods for arrays, booleans, dates, functions, numbers, and strings are implemented using the js api.
JSAPI User Guide
but mozilla's javascript engine is a
library that can be linked into any c++ program, not just a browser.
... hello world using the spidermonkey
library to build spidermonkey from source, see spidermonkey build documentation.
JS_GetParent
each object is assigned a parent when it is created: the standard
library objects and functions all have the global object as their parent.
... objects created by standard
library functions, such as array.prototype.concat, have the global object as their parent.
JS_SetICUMemoryFunctions
sets the memory allocation and deallocation functions used by the icu internationalization
library.
... description js_seticumemoryfunctions sets the allocator functions used by the icu internationalization
library.
Using the Places favicon service
this allows efficient caching, since the default favicon will probably be cached in its decoded form by the image
library.
...however, since the uri will be different from the default favicon, the decoded image will not be cached by the image
library.
FUEL
consider using the add-ons sdk instead fuel is a javascript
library designed to help developers build extensions using terminology and interfaces that are familiar to them.
...the
library has also been implemented in thunderbird ("steel") and in seamonkey ("smile").
SMILE
this article covers features introduced in seamonkey 2 smile is a javascript
library designed to help developers build extensions using terminology and interfaces that are familiar to them.
...the
library has also been implemented in firefox ("fuel") and in thunderbird ("steel").
STEEL
consider using the functions found in appconstants.jsm or services.jsm instead steel is the scriptable thunderbird easy extension
library.
...the
library has also been implemented in firefox ("fuel") and in seamonkey ("smile").
Finishing the Component
the networking
library, necko, deals only with these interfaces when handling requests.
...nsiioservice is the part of the networking
library ("necko") that's responsible for kicking off network requests, managing protocols such as http, ftp, or file, and creating nsiuris.
How to build a binary XPCOM component using Visual Studio
then make the following tweaks: add "..\gecko-sdk\include" to additional include directories add "..\gecko-sdk\lib" to additional
library directories add "nspr4.lib xpcom.lib xpcomglue_s.lib" to additional dependencies add "xp_win;xp_win32″ to preprocessor definitions turn off precompiled headers (just to keep it simple) use a custom build step for the xpcom idl file (spawns xpidl-build.bat to process the idl with mozilla toolset, not midl) vc++ express project: xpcom-test.zip note: the project uses xpcom_glue.
...the next step is to compile the idl into a type-
library (*.xpt) and a c++ header file (*.h), which we can use to define our implementation object.
nsCOMPtr
to use this class, you must link your component or application against the xpcom glue
library.
... the class itself and the supporting functions that are used with it are not frozen, but they are available as part of the xpcom glue
library for easy reuse.
nsMemory
remarks to use the methods in this class, you must link your component or application against the xpcom glue
library.
...however, if you use these functions in your xpcom component, and if you link to the xpcom glue
library, then your component will only have a runtime dependency on the frozen xpcom api.
nsIPluginHost
void getplugintags([optional] out unsigned long aplugincount, [retval, array, size_is(aplugincount)] out nsiplugintag aresults); void handlebadplugin(in pr
libraryptr a
library, in nsiplugininstance instance); native code only!
... getplugintags() void getplugintags( out unsigned long aplugincount, optional [retval, array, size_is(aplugincount)] out nsiplugintag aresults ); parameters aplugincount optional aresults native code only!handlebadplugin void handlebadplugin( in pr
libraryptr a
library, in nsiplugininstance instance ); parameters a
library instance native code only!init void init(); parameters none.
Using the Mozilla symbol server
if you want to reload symbols, you can try: noshared
library shared
library lib on older gdb and mac os x there is a python script to download symbols from the mozilla symbol server for gdb, shark and other software that uses symbols.
... note that the symbol file for the xul
library is very large and takes some time to download.
Working with data
using arrays of pointers if you need to work with c functions that accept arrays of pointers as inputs, you can construct an array of pointers like this: var ptrarraytype = ctypes.char.ptr.array(5); var myarray = ptrarraytype(); var somecfunction =
library.declare("somecfunction", ctypes.default_abi, ctypes.void_t, ctypes.char.ptr.array() /*same as ctypes.char.ptr.ptr*/); somecfunction(myarray); line 1 declares a new array type, capable of containing 5 arrays of pointers to c characters.
... using arrays of non-pointers if a function expects an argument that is a pointer to a list of elements, this is how it is accomplished: var myarraytype = ctypes.char.array(5); var myarray = myarraytype(); var somecfunction =
library.declare("somecfunction", ctypes.default_abi, ctypes.void_t, ctypes.char.array() /*same as ctypes.char.ptr*/); somecfunction(myarray); second example: var mystruct = ctypes.structtype('foo', [{bar: ctypes.bool}]); var mystructarraytype = mystruct.array(5); var myarray = mystructarraytype(); var somecfunction =
library.declare("somecfunction", ctypes.default_abi, ctypes.void_t, mystruct.ptr); ...
ctypes.open
int add(int a, int b) { return a + b; } to make this a shared
library, a native file which can be loaded and used from js-ctypes, compile it with these commands: gcc -fpic -c mycfuntionsforunix.c gcc -shared -o mycfuntionsforunix.so mycfuntionsforunix.o a file named mycfuntionsforunix.so is successfully created.
...they can also be loaded from the system
library path.
ABI
http://en.wikipedia.org/wiki/application_binary_interface os specific windows https://msdn.microsoft.com/en-us/
library/k2b2ssfy.aspx https://msdn.microsoft.com/en-us/
library/9b372w95.aspx details with respect to js-ctypes this explains how to use it in the js-ctypes scope.
... see also ctypes functiontype
library ...
js-ctypes
abi cdata ctype ctypes functiontype int64
library uint64 view all...
... using c structs and pointers using com from js-ctypes using objective-c from js-ctypes github :: ochameau / jscpptypes a mangling
library to use c++ from js-ctypes community view mozilla forums...
Deprecated tools - Firefox Developer Tools
more details about the shader editor alternatives an alternative to this panel is this extension: https://github.com/spite/shadereditorextension, or spector.js also supports a shader editor that requires a
library to use a shader reloader hook.
... currently only the babylon
library does.
ANGLE_instanced_arrays - Web APIs
despite the name "angle", this extension works on any device if the hardware supports it and not just on windows when using the angle
library.
... "angle" just indicates that this extension has been written by the angle
library authors.
RTCDataChannel.onerror - Web APIs
the error handler passes information about the error to a ui
library's alert box function to present an error message to the user.
... let pc = new rtcpeerconnection(); let dc = pc.createdatachannel("playercontrol"); dc.onerror = function(event) { myui
library.doalertbox({ 'network error', // alert title 'the error "' + event.message + '" occurred while handling player control network messages.', event.filename, event.lineno, event.colno }); } /* ...
Matrix math for the web - Web APIs
glmatrix is an example of a
library that has a focus on speed and performance.
... the focus in the glmatrix
library is to have target arrays that are allocated before the update loop.
WebGL best practices - Web APIs
basis universal texture compression format/
library basis universal solves several of the issues mentioned above.
... it offers a way to support all common compressed texture formats with a single compressed texture file, through a javascript
library that efficiently converts formats at load time.
Using WebRTC data channels - Web APIs
even when user agents share the same underlying
library for handling stream control transmission protocol (sctp) data, there can still be variations due to how the
library is used.
... for example, both firefox and google chrome use the usrsctp
library to implement sctp, but there are still situations in which data transfer on an rtcdatachannel can fail due to differences in how they call the
library and react to errors it returns.
WebRTC API - Web APIs
interoperability because implementations of webrtc are still evolving, and because each browser has different levels of support for codecs and webrtc features, you should strongly consider making use of the adapter.js
library provided by google before you begin to write your code.
...the
library is also available as an npm package.
Writing WebSocket servers - Web APIs
practically speaking, this will be part of a
library, but the server needs to pass the data around.
... related websocket handshake
library in c++ writing websocket client applications tutorial: websocket server in c# tutorial: websocket server in vb.net tutorial: websocket server in java ...
The WebSocket API (WebSockets) - Web APIs
guides writing websocket client applications writing websocket servers writing a websocket server in c# writing a websocket server in java tools humblenet: a cross-platform networking
library that works in the browser.
... ws: a popular websocket client & server
library for node.js.
Movement, orientation, and motion: A WebXR example - Web APIs
dependencies while we will not rely upon any 3d graphics frameworks such as three.js or the like for this example, we do use the glmatrix
library for matrix math, which we've used in other examples in the past.
... the glmatrix
library's fromtranslation() function for 4x4 matrices is used to convert the viewer's start position as given in the viewerstartposition constant into a transform matrix.
Web Animations API Concepts - Web APIs
it is also a performant base on which to build a custom or commercial animation
library.
... (see animating like you just don’t care with element.animate.) in some instances, it may negate the need for a fully fledged
library entirely in the same way vanilla javascript can be used without jquery for many purposes.
Web Audio API best practices - Web APIs
if you are looking for sound creation or a more instrument-based option, tone.js is a great
library.
... r-audio, from the bbc's research & development department, is a
library of react components aiming to provide a "more intuitive, declarative interface to web audio".
Migrating from webkitAudioContext - Web APIs
note: there is a
library called webkitaudiocontext monkeypatch, which automatically fixes some of these changes to make most code targetting webkitaudiocontext to work on the standards based audiocontext out of the box, but it currently doesn't handle all of the cases below.
... please consult the readme file for that
library to see a list of apis that are automatically handled by it.
Writing Web Audio API code that works in every browser - Developer guides
this little
library will "normalise" the interfaces for you and make it look as if your code is running in a standards compliant browser, by aliasing prefixed names to the unprefixed versions.
...also, if new methods such as start are not detected in some nodes, the
library will also alias them to their old names.
ReferenceError: "x" is not defined - JavaScript
note: when loading a
library (such as jquery), make sure it is loaded before you access
library variables, such as "$".
... put the <script> tag that loads the
library before your code that uses it.
Tools for SVG - SVG: Scalable Vector Graphics
the gnome
library rsvg is used by the wikipedia to raster their svg graphics.
... raphael js url: raphaeljs.com this is a javascript
library, that acts as an abstraction layer between browser implementations.
WebAssembly Concepts - WebAssembly
so part of the glue code is implementing the functionality of each respective
library used by the c/c++ code.
... writing webassembly directly do you want to build your own compiler, or your own tools, or make a javascript
library that generates webassembly at runtime?
Reddit Example - Archive of obsolete content
el({ width: 240, height: 320, contenturl: "http://www.reddit.com/.mobile?keep_extension=true", contentscriptfile: [data.url("jquery-2.1.0.min.js"), data.url("panel.js")] }); reddit_panel.port.on("click", function(url) { require("sdk/tabs").open(url); }); this code supplies two content scripts to the panel's constructor in the contentscriptfile option: the jquery
library and the script that intercepts link clicks.
Chapter 4: Using XPCOM—Implementing advanced processes - Archive of obsolete content
on windows vista, it will be located at c:\users\username\appdata\roaming\mozilla\firefox\profiles\random number.default\ ; on windows xp or 2000, it will be c:\documents and settings\username\application data\mozilla\firefox\profiles\random number.default\ ; on linux, it will be ~/.mozilla/firefox/random number.default/ ; on mac os x, it will be ~/
library/application support/firefox/profiles/random number.default/ in the interests of security, delete these lines from prefs.js after finishing these tests.
Introduction - Archive of obsolete content
xulrunner xulrunner includes the gecko rendering engine, the necko networking
library, and several other components that provide os-independent file management, accessibility, and localization, among others.
MCD, Mission Control Desktop, AKA AutoConfig - Archive of obsolete content
if it is not possible to give access to anonymous, //you have to enable this function first, please see //http://technet.microsoft.com/de-de/
library/cc816788(ws.10).aspx // // //put everything in a try/catch try { var userinfo = new object(); // this will hold ldap results userinfo.envuser = getenv("username"); // username userinfo.envhome = getenv("home"); // user home directory var ldaphost = "example.com"; var ldapbase = "dc=company,dc=local"; if( userinfo.envuser ) { var ldapfilter = "samaccountname=" + userinfo.envuser; } ...
Creating a Mozilla Extension - Archive of obsolete content
completing this tutorial will give you a basic understanding of how mozilla's user interface (ui) is constructed, how to find the source code for the ui you want to extend, how to make an installation of mozilla modifiable, how to use mozilla's network
library to load and parse web pages in javascript, and how to use dynamic overlays to package a mozilla extension for installation by others.
Extenders - Archive of obsolete content
manifest chief mechanism for allowing advanced api use within your jetpack superpowers similar to libraries, superpowers are for adding deeper platform coupling for your jetpack sandboxes safely abstracts
library interoperability issues so you don't have to worry about them future api interface method for including not yet finalized functionality in your jetpack ...
Metro browser chrome tests - Archive of obsolete content
a simple test looks like this: gtests.push({ desc: "test loading about:blank", setup: function () { }, teardown: function () { }, run: function () { yield addtab("about:blank"); is(tab.browser.currenturi.spec, "about:blank", "about:blank is loaded"); } }); function test() { runtests(); } gtests contains individual tests that make up the
library of tests your test file will contain.
Bundles - Archive of obsolete content
this folder is located in the application data folder of the user's home directory on windows, in the ~/.webapps directory on linux and under ~/
library on os x.
Prism - Archive of obsolete content
community blog posts prism forum #prism on irc.mozilla.org goodies bundle
library contributing source code in svn bugzilla (for bugs and suggestions) open bugs, enter new bug build documentation related topics xulrunner ...
Install script template - Archive of obsolete content
plid, version); if (err != 0) { // call initinstall again in case illegal characters in plid err = initinstall(software_name, software_name, version); if (err != 0) cancelinstall(err); } //addfiles to current browser block var pluginsfolder = getfolder("plugins"); //verify disk space if(verifydiskspace(pluginsfolder, plugin_size+component_size)) { // start installing plugin shared
library reseterror(); // install the plugin shared
library to the current browser's plugin directory errblock1 = addfile (plid, version, plugin_file, pluginsfolder, null); if (errblock1!=0) { logcomment("could not add " + plugin_file + " to " + pluginsfolder + ":" + errblock1); cancelinstall(errblock1); } // start installing xpt file if this is a scriptable plugin // install to the plugi...
Return Codes - Archive of obsolete content
rce_is_directory -233 expected source file and got directory source_is_file -234 expected source directory and got file insufficient_disk_space -235 not enough disk space for install filename_too_long -236 unable_to_locate_lib_function -237 unable_to_load_
library -238 chrome_registry_error -239 malformed_install -240 key_access_denied -241 access to the registry key has been denied key_does_not_exist -242 registry key does not exist value_does_not_exist -243 registry value does not exist ...
XULRunner FAQ - Archive of obsolete content
xul was always the original language of choice for ui in mozilla applications and the main
library is called libxul, mostly the name is a hangover from that that has now stuck.
nsIContentPolicy - Archive of obsolete content
amimetype the mime type of the requested resource (for example, image/png), as reported by the networking
library, if available (may be empty if inappropriate for the type, e.g., type_refresh).
2006-09-06 - Archive of obsolete content
how to build xpcom component on mac os x a tutorial on how to build xpcom component on mac os x firefox crashes when calling a function provided by a .so
library a solution to the problem loading a shared
library when using xpcom firefoxes crashes while getting url in xpcom solutions to resolve the problem of the firefox crash when trying to get the path and the prepath of the url of the current page in xpcom meetings none during this week.
Date.prototype.toLocaleFormat() - Archive of obsolete content
polyfill when using the datejs
library you can polyfill date.prototype.tolocaledatestring() like this: if (!date.prototype.tolocaleformat) { (function() { date.prototype.tolocaleformat = function(formatstring) { return this.format(formatstring); }; }()); } specifications not part of any standard.
ECMAScript 2015 support in Mozilla - Archive of obsolete content
standard
library additions to the array object array iteration with for...of (firefox 13) array.from() (firefox 32) array.of() (firefox 25) array.prototype.fill() (firefox 31) array.prototype.find(), array.prototype.findindex() (firefox 25) array.prototype.entries(), array.prototype.keys() (firefox 28), array.prototype.values() array.prototype.copywithin() (firefox 32) get array[@@species] (firefox...
Back to the Server: Server-Side JavaScript On The Rise - Archive of obsolete content
t", fieldlabel: "", handler: formhandler }); // create the form panel, attach the inputs form_comments = new ext.form.formpanel({ labelalign: "right", width: 400, title: "comments", items: [ txt_name, txt_email, txt_message, btn_comments ], renderto: "form-comments" }); }); </script> the code in listing 6 starts by hooking in the ext js
library which is used to produce the ui elements of the form.
Implementation Status - Archive of obsolete content
l scenarios exist where controls contained inside other controls inside a repeat won't be bound correctly 333638; 7.4.5 ui binding in other xml vocabularies unsupported not a compliance requirement for an xforms processor 7.4.6 binding examples supported 7.5 xforms core function
library supported 7.6.1 boolean-from-string() supported 7.6.2 is-card-number() unsupported 7.7.1 avg() supported 7.7.2 min() supported 7.7.3 max() supported ...
Building up a basic demo with PlayCanvas - Game development
engine vs editor the engine itself can be used as a standard
library by including its javascript file directly in your html, so you can start coding right away; in addition the playcanvas toolset comes with an online editor that you can use to drag and drop components onto the scene — a great way to create games and other apps requiring scenes if you're more of a designer than a coder.
Unconventional controls - Game development
this can be accomplished using a small
library created by daniel rapp — it can be as simple as calculating the difference between two frequencies: doppler.init(function(bandwidth) { var diff = bandwidth.left - bandwidth.right; }); the diff would be the difference between the initial position of the hand and the final one.
Visual-js game engine - Game development
2) you are free to use any version of visual js
library in any other project (even commercial projects) as long as the copyright header is left intact except for plugins on sale and graphics that come with them (they have special commercial licence).
MDN Web Docs Glossary: Definitions of Web-related terms
xinclude xlink xml xpath xquery xslt other 404 502 alpn at-rule attack byte-order mark character set client cryptosystem debug digital signature execution flex-direction glsl interface
library memory management routers self-executing anonymous function stylesheet vector image ...
Accessible multimedia - Learn web development
for example, some users may not be able to hear the audio because they are in noisy environments (like a crowded bar when a sports game is being shown) or might not want to disturb others if they are in a quiet place (like a
library.) this is not a new concept — television services have had closed captioning available for quite a long time: whereas many countries offer english films with subtitles written in their own native languages, and different language subtitles are often available on dvds, for example there are different types of text track with different purposes.
Legacy layout methods - Learn web development
note: normalize is a really useful little css
library written by nicolas gallagher, which automatically does some useful basic layout fixes and makes default element styling more consistent across browsers.
The HTML5 input types - Learn web development
the reference pages linked to above provide suggestions on how to program fallbacks for non-supporting browsers; another option is to consider using a javascript
library to provide a date picker.
Video and audio content - Learn web development
similarly, in environments where having the audio playing would be a distraction or disruption (such as in a
library or when a partner is trying to sleep), having captions can be very useful.
Index - Learn web development
263 implementing feature detection article, beginner, css, codingscripting, javascript, learn, modernizr, testing, tools, cross browser, feature detection this article covered feature detection in a reasonable amount of detail, going through the main concepts and showing you how to both implement your own feature detection tests and use the modernizr
library to implement tests more easily.
Introduction to cross browser testing - Learn web development
this may involve writing different code paths that reproduce functionality in different ways aimed at different browsers, or using a polyfill to mimic any missing support using javascript or other technologies, or using a
library that allows you to write a single bit of code and then does different things in the background depending on what the browser supports.
Testopia
new reports: worst offender and case roll-up set priorities on indidual case-runs new clone options uses the latest extjs 3.0
library converts testopia into a true bugzilla extension numerous bug fixes integration points testopia integrates with bugzilla products, components, versions, and milestones to allow a single management interface for high level objects.
Command line options
"c:\program files\mozilla xulrunner\1.8.0.4\xulrunner\xulrunner.exe" --install-app "c:\users\billdo\desktop\myapplication.xpi" /opt/xulrunner/1.8.0.4/xulrunner/xulrunner --install-app ~/desktop/myapplication.xulapp /
library/frameworks/xul.framework/xulrunner-bin --install-app ~/desktop/myapplication.xpi --register-global registers xulrunner on the system for all users.
Debugging Frame Reflow
on mac this is accomplished with: $ env dyld_
library_path="`pwd`/obj-ff-dbg/dist/nightlydebug.app/contents/macos" \ ./obj-ff-dbg/dist/nightlydebug.app/contents/macos/firefox-bin > logfile.txt after loading your testcase, the log file will contain the promised information.
Debugging on Windows
unfortunately, it's hard to know which symbols to download without having vs hang and seeing the "downloading symbols for <
library>" status at the bottom left of the main window.
Eclipse CDT Manual Setup
when gcc is invoked in c++11 mode, it defines pre-processor symbols that enable conditional compilation of c++11 code in its standard
library.
Obsolete Build Caveats and Tips
this note below seems redundant as this is true by default https://msdn.microsoft.com/en-us/
library/dh8che7s%28v=vs.110%29.aspx note: starting with gecko 7.0, you should no longer include "-zc:wchar_t-" in the command line when building on windows.
Index
141 index firefox, index, mozilla found 168 pages: 142 linux compatibility matrix the following table lists the available
library versions for the mozilla.org-distributed firefox builds dependencies, and/or to build firefox.
Linux compatibility matrix
the following table lists the available
library versions for the mozilla.org-distributed firefox builds dependencies, and/or to build firefox.
Multiple Firefox profiles
here is a complete example terminal command from steps 2-3: /applications/firefox.app/contents/macos/firefox -profile /users/suzie/
library/application\ support/firefox/profiles/r99d1z7c.default if the profile manager window does not open, firefox may have been running in the background, even though it was not visible.
Firefox
linux compatibility matrixthe following table lists the available
library versions for the mozilla.org-distributed firefox builds dependencies, and/or to build firefox.multiple firefox profilesa profile in firefox is the collection of settings, customizations, add-ons, and other personalizations that a user has made or installed into their copy of firefox.
JNI.jsm
if you would like to support versions before that, you can copy and paste the contents of the jsm file int jni stands for java native interface; this
library allows calling java code running in java virtual machines (jvms), etc.
Index
5 index localization found 42 pages: 6 l10n checks internationalization, localization, localization:tools, tools l10n checks is a python script and
library similar to compare-locales.
L10n Checks
l10n checks is a python script and
library similar to compare-locales.
Localization formats
.lang files provide some features that differentiate it from gettext: .lang is not dependent on php/.po
library, so if our webdev team sets up a site without gettext support, we still have .lang.
Fonts for Mozilla 2.0's MathML engine
the fonts may be installed by extracting the font files (which have the .otf extension) from the zip archive, then following instructions for microsoft windows, or copying the files to a ~/
library/fonts folder on mac os x, or to a ~/.fonts/ directory (which may need to be created) on unix/linux systems.
DMD
first, you will need to push the libdmd.so
library to the device so that it can by dynamically loaded by fennec.
Leak-hunting strategies and tips
fix_stacks.py uses this debugging information (although it does not verify that they match the
library versions on the system).
TimerFirings logging
2082435840[100445640]: [81190] fn timer (one_shot 8000 ms): [from dladdr] gfxfontinfoloader::delayedstartcallback(nsitimer*, void*) second, on linux the code uses dladdr to get the symbol
library and address, which can be post-processed by tools/rb/fix_stacks.py.
Performance
that log can then be replayed against firefox's default memory allocator independently or through another replace-malloc
library, allowing the testing of other allocators under the exact same workload.
McCoy
this is located in: %appdata%\mozilla\mccoy (windows) ~/.mozilla/mccoy (linux) ~/
library/application support/mccoy (mac os x) it is highly recommended that you back up your profile folder and store it in a safe location whenever you create a new key; without a backup, there is no way to recover your private keys if they are lost!
NSPR Poll Method
the nspr
library provides a reference implementation of the bottom layer using the sockets api, but you can provide your own implementation of the bottom layer using another network transport api.
Introduction to NSPR
these systems can support local level thread abstractions that can be made preemptable, but run the risk of
library corruption (libc).
NSPR Types
a typical example is a function implemented in an application but called from a shared
library.
PLHashEntry
these fields are for use by the hash table
library functions and the user should not tamper with them.
PLHashTable
the number of buckets in a hash table may be changed by the
library functions during the lifetime of the table to optimize speed and space.
PRNetAddr
by default, nspr is built to support only ipv4, but it's possible to build the nspr
library to support both ipv4 and ipv6.
PRStaticLinkTable
the basic function on a dynamic
library is to acquire a pointer to a function that the
library exports.
PR_EXTERN
used to define the prototypes for functions or variables that are to be exported from a shared
library.
PR_IMPLEMENT
used to define implementations of symbols that are to be exported from a shared
library.
PR_Initialize
description pr_initialize initializes the nspr runtime and places nspr between the caller and the runtime
library.
PR_NetAddrToString
description the network address to be converted (addr) may be either an ipv4 or ipv6 address structure, assuming that the nspr
library and the host system are both configured to utilize ipv6 addressing.
PR_StringToNetAddr
if the nspr
library and the host are configured to support ipv6, both formats are supported.
Process Initialization
identity and versioning initialization and cleanup module initialization identity and versioning name and version constants pr_name pr_version pr_versioncheck initialization and cleanup nspr detects whether the
library has been initialized and performs implicit initialization if it hasn't.
NSPR API Reference
r to string conversion pr_strtod pr_dtoa pr_cnvtf long long (64-bit) integers bitmaps formatted printing linked lists linked list types prclist linked list macros pr_init_clist pr_init_static_clist pr_append_link pr_insert_link pr_next_link pr_prev_link pr_remove_link pr_remove_and_init_link pr_insert_before pr_insert_after dynamic
library linking
library linking types pr
library prstaticlinktable
library linking functions pr_set
librarypath pr_get
librarypath pr_get
libraryname pr_free
libraryname pr_load
library pr_unload
library pr_findsymbol pr_findsymboland
library finding symbols defined in the main executable program platform notes dynamic
library search path exporting ...
Building NSS
because nss is a cross-platform
library that builds on many different platforms and has many options, it may be complex to build.
HTTP delegation
or you might choose to leverage an existing http client
library and implement the callback functions as a thin layer that forwards requests from nss to the http client
library.
HTTP delegation
or you might choose to leverage an existing http client
library and implement the callback functions as a thin layer that forwards requests from nss to the http client
library.
JSS
you might want to use jss's own ssl classes if you want to use some of the capabilities found in nss's ssl/tls
library but not found in jsse.
NSS_3.12.1_release_notes.html
new in nss 3.12.1 new functions in the nss shared
library: cert_nametoasciiinvertible (see cert.h) convert an certname into its rfc1485 encoded equivalent.
NSS_3.12.2_release_notes.html
new in nss 3.12.2 new functions in the nss shared
library: sec_pkcs12addcertorchainandkey (see p12.h) new pkcs11 errors (see secerr.h) sec_error_pkcs11_general_error sec_error_pkcs11_function_failed sec_error_pkcs11_device_error bugs fixed the following bugs have been fixed in nss 3.12.2.
NSS 3.12.5 release_notes
see the following struct in nss.h for details: nssinitparametersstr other new functions in secmod.h: secmod_getskipfirstflag secmod_getdefaultmoddbflag in prlink.h nss_securememcmp port_load
libraryfromorigin modified functions sgn_update (see cryptohi.h) the parameter "input" of this function is changed from unsigned char * to const unsigned char *.
NSS 3.12.6 release notes
bug fixes bug 496993: add accessor functions for ssl_implementedciphers bug 515279: cert_pkixverifycert considers a certificate revoked if cert_processocspresponse fails for any reason bug 515870: gcc compiler warnings in nss 3.12.4 bug 518255: the input buffer for sgn_update should be declared const bug 519550: allow the specification of an alternate
library for sqlite bug 524167: crash in [[@ find_objects_by_template - nsstoken_findcertificatebyissuerandserialnumber] bug 526910: maxresponselength (initialized to pkix_default_max_response_length) is too small for downloading some crls.
NSS 3.14.2 release notes
note: please apply the patch in https://bugzilla.mozilla.org/show_bug.cgi?id=837799 if you build nss with the system sqlite
library and your system sqlite
library is older than 3.7.15.
NSS 3.15.1 release notes
new types in sslprot.h ssl_
library_version_tls_1_2 - the protocol version of tls 1.2 on the wire, value 0x0303.
NSS 3.19 release notes
it is possible to override the directory (sqlite_lib_dir) in which the nss build system will look for the sqlite
library.
NSS 3.26 release notes
/mozilla.org/security/nss/releases/nss_3_26_rtm/src/ new in nss 3.26 new functionality the selfserv test utility has been enhanced to support alpn (http/1.1) and 0-rtt added support for the system-wide crypto policy available on fedora linux, see http://fedoraproject.org/wiki/changes/cryptopolicy introduced build flag nss_disable_libpkix which allows compilation of nss without the libpkix
library notable changes in nss 3.26 the following ca certificate was added cn = isrg root x1 sha-256 fingerprint: 96:bc:ec:06:26:49:76:f3:74:60:77:9a:cf:28:c5:a7:cf:e8:a3:c0:aa:e1:1a:8f:fc:ee:05:c0:bd:df:08:c6 npn is disabled, and alpn is enabled by default the nss test suite now completes with the experimental tls 1.3 code enabled several test improvements and addi...
NSS 3.27.1 release notes
however, some applications query the list of protocol versions that are supported by the nss
library, enabling all supported tls protocol versions.
NSS 3.28.3 release notes
if an application passed type seckeyecpublickey to nss (as part of seckeypublickey), the nss
library read the uninitialized attribute.
NSS 3.29.1 release notes
if an application passed type seckeyecpublickey to nss (as part of seckeypublickey), the nss
library read the uninitialized attribute.
NSS 3.31 release notes
ssl_versionrangegetsupported can be used to query the overlap between the
library's supported range of tls versions and the systemwide policy.
NSS 3.48 release notes
applications may set environment variable nss_min_mp_pbe_iteration_count to request a higher iteration count than the
library's default, or nss_max_mp_pbe_iteration_count to request a lower iteration count for test environments.
NSS Sample Code Sample1
int server::rawexportkey(pk11symkey *key, secitem **res) { int rv = 0; secitem *data; secstatus s; s = pk11_extractkeyvalue(key); if (s != secsuccess) { rv = 1; goto done; } data = pk11_getkeydata(key); *res = secitem_dupitem(data); if (!*res) { rv = 1; goto done; } done: return rv; } // initialize the nss
library.
Build instructions
use_debug_rtl: if set to 1, on windows, causes build with debug version of the c run-time
library.
FC_GetTokenInfo
ckr_cryptoki_not_initialized the pkcs #11 module
library is not initialized.
NSS tools : vfychain
options -a the following certfile is base64 encoded -b yymmddhhmmz validate date (default: now) -d directory database directory -f enable cert fetching from aia url -o oid set policy oid for cert validation(format oid.1.2.3) -p use pkix
library to validate certificate by calling: * cert_verifycertificate if specified once, * cert_pkixverifycert if specified twice and more.
NSS tools : vfychain
options -a the following certfile is base64 encoded -b yymmddhhmmz validate date (default: now) -d directory database directory -f enable cert fetching from aia url -o oid set policy oid for cert validation(format oid.1.2.3) -p use pkix
library to validate certificate by calling: * cert_verifycertificate if specified once, * cert_pkixverifycert if specified twice and more.
Necko Architecture
necko is a modular networking
library developed as part of the mozilla project.
Rhino downloads archive
-02-10 changes in 1.5r4 rhino15r4.zip rhino 1.5r3 2002-01-27 changes in 1.5r3 rhino15r3.zip rhino 1.5r2 2001-07-27 changes in 1.5r2 rhino15r2.zip rhino 1.5r1 2000-09-10 changes in 1.5r1 rhino15r1.zip rhino 1.4r3 1999-05-10 initial public release rhino14r3.zip rhino 1.6r1 through 1.6r6 implement e4x using xmlbeans
library.
Rhino FAQ
rhino is a
library for java use, and not for general web browsers.
Scripting Java
exploratory programming is the process of learning about what a
library or api can do by writing quick programs that use it.
Future directions
no fundamental blockers currently exist, but ctypes is still using nspr's runtime
library loading facilities.
JSFreeOp
description various finalization api takes not jscontext * but rather either jsfreeop structure or its
library-private counterpart freeop.
Parser API
note: because this
library uses null for optional nodes, it is recommended that user-defined datatypes not use null as a representation of an ast node.
Profiling SpiderMonkey
here are some instrumented tests to work from: media:profiling-ammo.zip 3.) once you have some changes you'd like to try, you can just rebuild the js/src directory, since it produces its own shared
library, even in libxul and static builds.
SpiderMonkey 1.8.5
i_ldflags)) $(filter -l%,$(jsapi_ldflags))\ $(filter -%_namespace,$(jsapi_ldflags))\ $(filter -wl%,$(jsapi_ldflags)) jsapi_ldflags := $(filter-out $(mozjs_install_name_opt),$(jsapi_ldflags)) endif jsapi_ldflags := $(filter-out %libffi.a,$(jsapi_ldflags)) ldflags += $(jsapi_ldflags) future direction the spidermonkey 1.8.5 source release includes an experimental
library versioning scheme.
SpiderMonkey 1.8.7
i_ldflags)) $(filter -l%,$(jsapi_ldflags))\ $(filter -%_namespace,$(jsapi_ldflags))\ $(filter -wl%,$(jsapi_ldflags)) jsapi_ldflags := $(filter-out $(mozjs_install_name_opt),$(jsapi_ldflags)) endif jsapi_ldflags := $(filter-out %libffi.a,$(jsapi_ldflags)) ldflags += $(jsapi_ldflags) future direction the spidermonkey 1.8.5 source release includes an experimental
library versioning scheme.
SpiderMonkey 1.8.8
future direction include-followup-on-experimental-
library-versioning-scheme-here spidermonkey embedders should also be aware that mozilla has no plans to keep the jsapi, nor the jsdbgapi stable for embedders.
SpiderMonkey 17
future direction include-followup-on-experimental-
library-versioning-scheme-here spidermonkey embedders should also be aware that mozilla has no plans to keep the jsapi, nor the jsdbgapi stable for embedders.
SpiderMonkey 31
js_seticumemoryfunctions is a new function which can be used to set the allocation and deallocation functions used by the icu internationalization
library.
Mozilla Projects
necko necko is a network
library that provides a platform-independent api for several layers of networking, ranging from transport to presentation layers.
Life After XUL: Building Firefox Interfaces with HTML
problems / solutions: accessibility localization caching for working offline / pre-caching for snappy first run visual performance / jank security privacy operations tooling build process third-party
library use and management ...
Places
places utilities for javascript a
library of convenient routines that make it easier to work with places.
XPCOM Glue without mozalloc
this
library is new in xulrunner 2.0, and it's identical to xpcomglue_s, except that it's compiled without mozalloc.
Packaging WebLock
« previousnext » in this final part of the tutorial, we'll put all of the pieces of the web locking component - the
library itself, the type
library, the header file, and the user interface resources - into a package that can be installed on other systems.
Resources
weblock resources weblock installer and information the sdk download linux: http://ftp.mozilla.org/pub/mozilla/releases/mozilla1.4a/gecko-sdk-i686-pc-linux-gnu-1.4a.tar.gz windows: http://ftp.mozilla.org/pub/mozilla/releases/mozilla1.4a/gecko-sdk-win32-1.4a.zip other mozilla downloads gecko resources internal string guide external string guide the gecko networking
library ("necko") the netscape portable runtime environment embedding mozilla current module owners xpinstall xul xpcom resources the xpcom project page xulplanet's online xpcom reference information on xpconnect and scriptable components the smart pointer guide xpidl xpidl compiler reference general development resources the world wide web consortium url specification at the w3 gnu...
Using XPCOM Components
nt object and pass in the contract id for the component you want and ask for either a singleton or an instance of that component to be returned: var cmgr = components.classes["@mozilla.org/cookiemanager;1"] .getservice(); the resulting cookiemanager object then provides access to all of the methods for that component that have been defined in idl and compiled into the type
library.
Creating XPCOM components
ind component the weblock component component use in mozilla finding mozilla components using xpcom components in your cpp xpconnect: using xpcom components from script component internals creating components in cpp xpcom initialization xpcom registry manifests registration methods in xpcom autoregistration the shutdown process three parts of a xpcom component
library xpcom glue the glue
library xpcom string classes creating the component code what we'll be working on component registration the regxpcom program registration alternatives overview of the weblock module source digging in: required includes and constants identifiers in xpcom coding for the registration process the registration methods creating an instance...
Components.utils.Sandbox
for example, the code in the sandbox might be a third-party
library that sets expando properties or adds event listeners to a window.
Core XPCOM functions
xpcom provides a number of global functions which are used to initialize and shut down the xpcom
library, as well as to allocate memory, get access to services, and to instantiate interfaces.
nsSupportsWeakReference
to use this class, you must link your component or application against the xpcom glue
library.
XPCOM glue classes
when these classes are used by a component, you may need to link the component against the xpcom glue
library.
mozIStorageConnection
lasterrorstring autf8string the english error string reported by the sqlite
library for the last sqlite operation.
nsIAppShell
but if the nsiappshell->run() event loop is blocked when this call is made, gecko events will stop being processed until resumenative() is called (even if a plugin or
library is temporarily processing events on a nested event loop).
nsIComponentRegistrar
for example, if the given file is a native
library, it must export the symbol nsgetmodule.
getFile
ns_xpcom_component_dir "comsd" ns_xpcom_component_dir_list "comsdl" ns_xpcom_component_registry_file "comregf" ns_xpcom_xpti_registry_file "xptiregf" ns_xpcom_
library_file "xpcomlib" ns_gre_dir "gred" note: on mac os x, up through firefox 34 this is the contents/macos directory within the application's bundle.
nsIFile
nsifile afile); void initwithnativepath(in acstring filepath); void initwithpath(in astring filepath); boolean isdirectory(); boolean isexecutable(); boolean isfile(); boolean ishidden(); boolean isreadable(); boolean isspecial(); boolean issymlink(); boolean iswritable(); void launch(); pr
librarystar load(); void moveto(in nsifile newparentdir, in astring newname); void movetonative(in nsifile newparentdir, in acstring newname); native code only!
nsIPrefService
modules/libpref/public/nsiprefservice.idlscriptable this interface is the main entry point into the back end preferences management
library.
nsISupportsWeakReference
remarks the xpcom glue
library provides nssupportsweakreference, a canonical implementation of nsisupportsweakreference.
Reference Manual
it is because of these factored routines that nscomptr users must link with the xpcom
library.
Status, Recent Changes, and Plans
bug 59414: making operator& private may help prevent some leaks caused by casting move the factored nscomptr routines into their own
library, to reduce nscomptr clients' dependency on the xpcom
library.
xptcall FAQ
xptcall is a small low level xpcom method call
library.
Xptcall Porting Guide
overview xptcall is a
library that supports both invoking methods on arbitrary xpcom objects and implementing classes whose objects can impersonate any xpcom interface.
Mail client architecture overview
this
library has the cabability to stream messages to an html renderer such as gecko, manage individual parts of messages, and so forth.
Thunderbird Configuration Files
on windows 95/98/me, the path is usually c:\windows\application data\thunderbird\profiles\xxxxxxxx.default\ on linux, the path is usually ~/.thunderbird/xxxxxxxx.default/ on mac os x, the path is usually ~/
library/thunderbird/profiles/xxxxxxxx.default/ %appdata% is a shorthand for the application data path on windows 2000/xp/vista.
Demo Addon
it is a handy
library that keeps your code cleaner and simpler.
Thunderbird extensions
an overview of thunderbird components developer reference docs: folder classes db views (message list) message summary database mailnews protocols mailnews filters error reporting tools steel
library (obsolete as of thunderbird 52, use https://github.com/protz/thunderbird-stdlib) developing new account types useful newsgroup discussions (anything that's very old should be regarded suspiciously, because there has been significant api rewrite over the past years making most techniques considerably easier) thunderbird api docs (mostly a collection of out-of-date p...
Using JS in Mozilla code
js standard
library features feature standard can be used in code new proxy(target, handler) es2015 yes, but getprototypeof and setprototypeof handlers are not yet implemented.
Working with windows in chrome code
using fuel application object the fuel
library has been deprecated as of firefox 41 the fuel javascript
library has a simple method for sharing data between windows.
Using COM from js-ctypes
ypes.voidptr_t }, { 'getvolume': ctypes.voidptr_t }, { 'waituntildone': ctypes.voidptr_t }, { 'setsyncspeaktimeout': ctypes.voidptr_t }, { 'getsyncspeaktimeout': ctypes.voidptr_t }, { 'speakcompleteevent': ctypes.voidptr_t }, { 'isuisupported': ctypes.voidptr_t }, { 'displayui': ctypes.voidptr_t } // end ispvoice ]); // functions // http://msdn.microsoft.com/en-us/
library/windows/desktop/ms695279%28v=vs.85%29.aspx let coinitializeex = lib.declare('coinitializeex', winabi, hresult, // result lpvoid, // pvreserved dword // dwcoinit ); // http://msdn.microsoft.com/en-us/
library/windows/desktop/ms688715%28v=vs.85%29.aspx let couninitialize = lib.declare('couninitialize', winabi, void // return ); // http://msdn.microsoft.com/en-us/lib...
Memory Management
this is not an exhaustive list, but will help you to understand memory management and how it affects your use of js-ctypes: a function or static data declared using the declare() method will hold that
library alive.
Type conversion
var buffer = ctypes.char.array(10)(); var somecfunction =
library.declare("somecfunction", ctypes.default_abi, ctypes.void_t, ctypes.char.ptr); somecfunction(buffer); // here ctypes.char.array(10)() is converted to ctypes.char.ptr type implicit conversion can be tested in the following way: var mystruct = ctypes.structtype("mystructtype", [ { "v": ctypes.bool } ])(); mystruct.v = 1; console.log(mystruct.v.tostring()); // 'true' boolean type target type source converted value ctypes.bool js boolean src js number (0 or 1) if src == 0: false if src == 1: t...
Working with ArrayBuffers
.so.61.0'); break; case 'android': case 'sunos': case 'netbsd': case 'dragonfly': lib = ctypes.open('libc.so'); break; case 'linux': lib = ctypes.open('libc.so.6'); break; case 'gnu/kfreebsd': lib = ctypes.open('libc.so.0.1'); break; default: //assume unix try { lib = ctypes.open(ctypes.
libraryname('c')); } catch (ex) { throw new error('i dont know where to memcpy is defined on your operating system, "' + os.constants.sys.name + '"'); lib.close(); } } try { var memcpy = lib.declare('memcpy', os.constants.sys.name.tolowercase().indexof('win') == 0 ?
FunctionType
see also ctype cdata abi
library type conversion ...
Index - Firefox Developer Tools
however, a
library’s abstraction leaks during debugging sessions when you are forced to step through its stack frames in order to reach your own code.
Fullscreen API - Web APIs
you may wish to consider using a
library such as fscreen for vendor agnostic access to the fullscreen api.
HTMLImageElement.complete - Web APIs
examples consider a photo
library app that provides the ability to open images into a lightbox mode for improved viewing as well as editing of the image.
Basic concepts - Web APIs
indexeddb is useful for applications that store a large amount of data (for example, a catalog of dvds in a lending
library) and applications that don't need persistent internet connectivity to work (for example, mail clients, to-do lists, and notepads).
IndexedDB API - Web APIs
examples elibri: a powerful
library and ebook reader application, written by marco castelluccio, winner of the indexeddb mozilla devderby.
Intersection Observer API - Web APIs
it uses a vendor-provided
library to manage the advertisements placed periodically throughout the page, has animated graphics here and there, and uses a custom
library that draws notification boxes and the like.
Fundamentals of WebXR - Web APIs
opengl (and thus webgl by extension) does not directly offer a camera view, using a
library that simulates one on your behalf can make your job much, much easier, especially when building code that allows free movement through your virtual world.
Web audio spatialization basics - Web APIs
if you are working with 3d games and/or webxr it's a good idea to harness a 3d
library to create such functionality, rather than trying to do this all yourself from first principles.
Web Audio API - Web APIs
it can be used to simply incorporate audio into your website or application, by providing atmosphere like future
library.no, or auditory feedback on forms.
Functions and classes available to Web Workers - Web APIs
21 (21) and 26 (26) for url() constructor no support no support no support webgl with offscreencanvas webgl (web graphics
library) is a javascript api for rendering interactive 3d and 2d graphics within any compatible web browser without the use of plug-ins.
XRRigidTransform.matrix - Web APIs
the matrix is then passed into a
library function that uses webgl to render an object matching a given name using the transform matrix specified to position and orient it.
Using the alert role - Accessibility
let myalert = document.createelement("p"); myalert.setattribute("role", "alert"); let myalerttext = document.createtextnode("you must agree with our terms of service to create an account."); myalert.appendchild(myalerttext); document.body.appendchild(myalert); note: the same result can be achieved with less code when using a script
library like jquery: $("<p role='alert'>you must agree with our terms of service to create an account.</p>").appendto(document.body); example 3: adding alert role to an existing element sometimes it's useful to add an alert role to an element that is already visible on the page rather than creating a new element.
Web applications and ARIA FAQ - Accessibility
user interface
library (yui) for more information about javascript toolkit accessibility: steve faulkner's wai-aria implementation in javascript ui libraries can you show me an example of aria in action?
Accessibility documentation index - Accessibility
87 an overview of accessible web applications and widgets aria, accessibility, guide, web apps, widget most javascript libraries offer a
library of client-side widgets that mimic the behavior of familiar desktop interfaces.
Text labels and names - Accessibility
examples the following example show a simple image map (taken from h24: providing text alternatives for the area elements of image maps): <img src="welcome.gif" usemap="#map1" alt="areas in the
library.
Cross-browser Flexbox mixins - CSS: Cascading Style Sheets
acks using 2009 'box' syntax (ff and older webkit) and prefixed syntaxes (ie10, webkit browsers without flex wrapping) final standards syntax (ff, safari, chrome, ie11+, edge, opera) this was inspired by: http://dev.opera.com/articles/view/advanced-cross-browser-flexbox/ with help from: http://w3.org/tr/css3-flexbox/ http://the-echoplex.net/flexyboxes/ http://msdn.microsoft.com/en-us/
library/ie/hh772069(v=vs.85).aspx http://css-tricks.com/using-flexbox/ a complete guide to flexbox | css-tricks visual guide to css3 flexbox: flexbox playground | note: mixins are not currently supported natively in browsers.
A hybrid approach - Developer guides
one such technique for dealing with this issue uses server-side user-agent detection along with the wurfl device capability
library to send a properly sized image for the user’s device.
<input type="date"> - HTML: Hypertext Markup Language
span { position: relative; } span::after { right: -18px; position: absolute; } input:invalid + span::after { content: '✖'; } input:valid + span::after { content: '✓'; } at the moment, the best way to deal with dates in forms in a cross-browser way is to have the user enter the day, month, and year in separate controls, or to use a javascript
library such as jquery date picker.
Using the application cache - HTML: Hypertext Markup Language
in firefox, the offline cache data is stored separately from the firefox profile—next to the regular disk cache: windows vista/7: c:\users\<username>\appdata\local\mozilla\firefox\profiles\<salt>.<profile name>\offlinecache mac/linux: /users/<username>/
library/caches/firefox/profiles/<salt>.<profile name>/offlinecache in firefox the current status of the offline cache can be inspected on the about:cache page (under the "offline cache device" heading).
Using HTTP cookies - HTTP
more structured and larger amounts of data can be stored using the indexeddb api, or a
library built on it.
CSP: script-src - HTTP
examples violation case given this csp header: content-security-policy: script-src https://example.com/ the following script is blocked and won't be loaded or executed: <script src="https://not-example.com/js/
library.js"></script> note that inline event handlers are blocked as well: <button id="btn" onclick="dosomething()"> you should replace them with addeventlistener calls: document.getelementbyid("btn").addeventlistener('click', dosomething); unsafe inline script note: disallowing inline styles and inline scripts is one of the biggest security wins csp provides.
Protocol upgrade mechanism - HTTP
keep in mind that if you're opening a new connection using the websocket api, or any
library that does websockets, most or all of this is done for you.
Introduction - JavaScript
javascript contains a standard
library of objects, such as array, date, and math, and a core set of language elements such as operators, control structures, and statements.
JavaScript modules - JavaScript
this can only be a good thing — browsers can optimize loading of modules, making it more efficient than having to use a
library and do all of that extra client-side processing and extra round trips.
TypeError: cyclic object value - JavaScript
examples circular references in a circular structure like the following var circularreference = {otherdata: 123}; circularreference.myself = circularreference; json.stringify() will fail json.stringify(circularreference); // typeerror: cyclic object value to serialize circular references you can use a
library that supports them (e.g.
TypeError: "x" is not a function - JavaScript
an example helpers
library (helpers.js) let helpers = function () { }; helpers.groupby = function (objectarray, property) { return objectarray.reduce(function (acc, obj) { var key = obj[property]; if (!acc[key]) { acc[key] = []; } acc[key].push(obj); return acc; }, {}); } export default helpers; the correct import usage (app.js): import helpers from './helpers' ...
Array.prototype.sort() - JavaScript
.map(function(el, i) { return { index: i, value: el.tolowercase() }; }) // sorting the mapped array containing the reduced values mapped.sort(function(a, b) { if (a.value > b.value) { return 1; } if (a.value < b.value) { return -1; } return 0; }); // container for the resulting order var result = mapped.map(function(el){ return list[el.index]; }); there is an open source
library available called mapsort which applies this approach.
DataView - JavaScript
further, although native bigints are much faster than user-land
library equivalents, bigints will always be much slower than 32-bit integers in javascript due to the nature of their variable size.
Date.parse() - JavaScript
there are still many differences in how different hosts parse date strings, therefore date strings should be manually parsed (a
library can help if many different formats are to be accommodated).
FinalizationRegistry - JavaScript
if an application or
library depends on gc cleaning up a finalizationregistry or calling a finalizer [cleanup callback] in a timely, predictable manner, it's likely to be disappointed: the cleanup may happen much later than expected, or not at all.
JSON.stringify() - JavaScript
const circularreference = {}; circularreference.myself = circularreference; // serializing circular references throws "typeerror: cyclic object value" json.stringify(circularreference); to serialize circular references you can use a
library that supports them (e.g.
Symbol.for() - JavaScript
foo'); // create a new global symbol symbol.for('foo'); // retrieve the already created symbol // same global symbol, but not locally symbol.for('bar') === symbol.for('bar'); // true symbol('bar') === symbol('bar'); // false // the key is also used as the description var sym = symbol.for('mario'); sym.tostring(); // "symbol(mario)" to avoid name clashes with your global symbol keys and other (
library code) global symbols, it might be a good idea to prefix your symbols: symbol.for('mdn.foo'); symbol.for('mdn.bar'); specifications specification ecmascript (ecma-262)the definition of 'symbol.for' in that specification.
WeakRef - JavaScript
if an application or
library depends on gc cleaning up a weakref or calling a finalizer [cleanup callback] in a timely, predictable manner, it's likely to be disappointed: the cleanup may happen much later than expected, or not at all.
Authoring MathML - MathML
to use it, just insert one line in your document header: <script src="https://fred-wang.github.io/mathml.css/mspace.js"></script> if you need more complex constructions, you might instead consider using the heavier mathjax
library as a mathml polyfill: <script src="https://fred-wang.github.io/mathjax.js/mpadded-min.js"></script> note that these two scripts perform feature detection of the mspace or mpadded elements (see the browser compatibility table on these pages).
Progressive web apps (PWAs)
tools localforage — a nice simple javascript
library for making client-side data storage really simple; it uses indexeddb by default and falls back to web sql/web storage if necessary.
SVG: Scalable Vector Graphics
connect 4 jvectormap (interactive maps for data visualization) jointjs (javascript diagramming
library) d3 ( javascript
library for visualizing data with html, svg, and css ) ...
key - XPath
it is not a part of the core xpath function
library.