Search completed in 1.12 seconds.
HTMLSlotElement: slotchange event - Web APIs
the
slotchange event is fired on an html
slotelement instance (<
slot> element) when the node(s) contained in that
slot change.
... note: the
slotchange event doesn't fire if the children of a
slotted node change — only if you change (e.g.
... bubbles yes cancelable no interface event event handler property none in order to trigger a
slotchange event, one has to set or remove the
slot attribute.
...And 4 more matches
Slottable: assignedSlot - Web APIs
the assigned
slot read-only property of the
slottable interface returns an html
slotelement representing the <
slot> element the node is inserted in.
... syntax var
slotelement = elementinstance.assigned
slot value an html
slotelement instance, or null if the element is not assigned to a
slot, or if the associated shadow root was attached with its mode set to closed (see element.attachshadow for further details).
... examples in our simple-template example (see it live), we create a trivial custom element example called <my-paragraph> in which a shadow root is attached and then populated using the contents of a template that contains a
slot named my-text.
...And 4 more matches
HTMLSlotElement.assignedSlot - Web APIs
the assigned
slot property of the text interface returns the html
slotelement object associated with the element.
... syntax var html
slotelement = text.assigned
slot value a html
slotelement object.
... specifications specification status comment domthe definition of 'assigned
slot' in that specification.
... desktopmobilechromeedgefirefoxinternet exploreroperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetassigned
slotchrome full support 53edge full support ≤18firefox full support yesie ?
Using templates and slots - Web Components
this article explains how you can use the <template> and <
slot> elements to create a flexible template that can then be used to populate the shadow dom of a web component.
... adding flexibility with
slots so far so good, but the element isn't very flexible.
...we can make it possible to display different text in each element instance in a nice declarative way using the <
slot> element.
...And 23 more matches
HTMLSlotElement - Web APIs
the html
slotelement interface of the shadow dom api enables access to the name and assigned nodes of an html <
slot> element.
... properties html
slotelement.name domstring: can be used to get and set the
slot's name.
... methods html
slotelement.assignednodes() returns a sequence of the nodes assigned to this
slot, and if the flatten option is set to true, the assigned nodes of any other
slots that are descendants of this
slot.
...And 9 more matches
::slotted() - CSS: Cascading Style Sheets
the ::
slotted() css pseudo-element represents any element that has been placed into a
slot inside an html template (see using templates and
slots for more information).
...note also that this selector won't select a text node placed into a
slot; it only targets actual elements.
... /* selects any element placed inside a
slot */ ::
slotted(*) { font-weight: bold; } /* selects any <span> placed inside a
slot */ ::
slotted(span) { font-weight: bold; } syntax ::
slotted( <compound-selector-list> )where <compound-selector-list> = <compound-selector>#where <compound-selector> = [ <type-selector>?
...And 7 more matches
JSObjectOps.getRequiredSlot
the jsobjectops.getrequired
slot and setrequired
slot callbacks get and set a required
slot—one that should already have been allocated.
... syntax typedef jsval (*jsgetrequired
slotop)(jscontext *cx, jsobject *obj, uint32
slot); typedef jsbool (*jssetrequired
slotop)(jscontext *cx, jsobject *obj, uint32
slot, jsval v); name type description cx jscontext * the js context in which we access the
slot.
... obj jsobject * the object whose
slot we access.
...And 6 more matches
JS_GetReservedSlot
access an object's reserved
slots.
... syntax // added in spidermonkey 42 js::value js_getreserved
slot(jsobject *obj, uint32_t index); void js_setreserved
slot(jsobject *obj, uint32_t index, js::value v); // obsolete since spidermonkey 42 jsval js_getreserved
slot(jsobject *obj, uint32_t index); void js_setreserved
slot(jsobject *obj, uint32_t index, jsval v); name type description obj jsobject * an object that has reserved
slots.
... index uint32_t index of the reserved
slot to access.
...And 6 more matches
<slot> - HTML: Hypertext Markup Language
the html <
slot> element—part of the web components technology suite—is a placeholder inside a web component that you can fill with your own markup, which lets you create separate dom trees and present them together.
... content categories flow content, phrasing content permitted content transparent events
slotchange tag omission none, both the starting and ending tag are mandatory.
... permitted parents any element that accepts phrasing content implicit aria role no corresponding role permitted aria roles no role permitted dom interface html
slotelement attributes this element includes the global attributes.
...And 6 more matches
Element.slot - Web APIs
the
slot property of the element interface returns the name of the shadow dom
slot the element is inserted in.
... a
slot is a placeholder inside a web component that users can fill with their own markup (see using templates and
slots for more information).
... syntax var astring = element.
slot element.
slot = astring value a domstring.
...And 5 more matches
FC_GetSlotInfo
name fc_get
slotinfo - get information about a particular
slot in the system.
... syntax ck_rv fc_get
slotinfo( ck_
slot_id
slotid, ck_
slot_info_ptr pinfo ); parameters fc_get
slotinfo takes two parameters:
slotid [in] pinfo [out] the address of a ck_
slot_info structure.
... description fc_get
slotinfo stores the information about the
slot in the ck_
slot_info structure that pinfo points to.
...And 4 more matches
JSReserveSlotsOp
jsreserve
slotsop is the type of the jsclass.reserve
slots.
... syntax typedef uint32 (* jsreserve
slotsop)(jscontext *cx, jsobject *obj); name type description cx jscontext * the js context in which the new object is being created.
...a class cannot freely use a reserve
slots hook to reserve a different number of
slots for each object.
...And 4 more matches
HTMLSlotElement.assignedNodes() - Web APIs
the assignednodes() property of the html
slotelement interface returns a sequence of the nodes assigned to this
slot, and if the flatten option is set to true, the assigned nodes of any other
slots that are descendants of this
slot.
... if no assigned nodes are found, it returns the
slot's fallback content.
... syntax var assignednodes = html
slotelement.assignednodes(options) parameters options optional an object that sets options for the nodes to be returned.
...And 4 more matches
FC_GetSlotList
name fc_get
slotlist - obtain a list of
slots in the system.
... syntax ck_rv fc_get
slotlist( ck_bbool tokenpresent, ck_
slot_id_ptr p
slotlist, ck_ulong_ptr pulcount ); parameters tokenpresent [in] if true only
slots with a token present are included in the list, otherwise all
slots are included.
... p
slotlist [out] either null or a pointer to an existing array of ck_
slot_id objects.
...And 3 more matches
HTMLSlotElement.assignedElements() - Web APIs
the assignedelements() property of the html
slotelement interface returns a sequence of the elements assigned to this
slot (and no other nodes).
... if the flatten option is set to true, it also returns the assigned elements of any other
slots that are descendants of this
slot.
... if no assigned nodes are found, it returns the
slot's fallback content.
...And 3 more matches
HTMLSlotElement.name - Web APIs
the name property of the html
slotelement interface returns or sets the
slot name.
... a
slot is a placeholder inside a web component that users can fill with their own markup.
... syntax var name = html
slotelement.name html
slotelement.name = name value a domstring.
...And 3 more matches
JS_SetAllNonReservedSlotsToUndefined
this article covers features introduced in spidermonkey 24 assign undefined to all of the object's non-reserved
slots.
... note: this is done for all
slots, regardless of the associated property descriptor.
... syntax void js_setallnonreserved
slotstoundefined(jscontext *cx, jsobject *objarg); name type description cx jscontext * the context in which to clear the object.
...And 2 more matches
Slottable - Web APIs
the
slottable mixin defines features that allow nodes to become the contents of a <
slot> element — the following features are included in both element and text.
... properties
slottable.assigned
slot read only returns the <
slot> the node is inserted in.
... specifications specification status comment domthe definition of '
slottable' in that specification.
...And 2 more matches
FC_WaitForSlotEvent
name fc_waitfor
slotevent - waits for a
slot event, such as token insertion or token removal, to occur.
... syntax ck_rv fc_waitfor
slotevent(ck_flags flags, ck_
slot_id_ptr p
slot ck_void_ptr preserved); parameters fc_waitfor
slotevent takes three parameters: [input] flags [input] p
slot.
... return value fc_waitfor
slotevent always returns ckr_function_not_supported.
... examples see also fc_waitfor
slotevent ...
slot - HTML: Hypertext Markup Language
the
slot global attribute assigns a
slot in a shadow dom shadow tree to an element: an element with a
slot attribute is assigned to the
slot created by the <
slot> element whose name attribute's value matches that
slot attribute's value.
... for examples, see our using templates and
slots guide.
... specifications specification status comment html living standardthe definition of '
slot attribute' in that specification.
... living standard domthe definition of '
slot attribute' in that specification.
Index
you can use the tool to add and delete pkcs #11 modules, change passwords, set defaults, list module contents, enable or disable
slots, enable or disable fips 140-2 compliance, and assign default providers for cryptographic operations.
...modutil can add and delete pkcs #11 modules, change passwords on security databases, set defaults, list module contents, enable or disable
slots, enable or disable fips 140-2 compliance, and assign default providers for cryptographic operations.
... -disable modulename disable all
slots on the named module.
...And 36 more matches
nss tech note5
ck_mechanism_type ciphermech = ckm_des_cbc_pad <big>(for example)</big> choose a
slot on which to to do the operation pk11
slotinfo*
slot = pk11_getbest
slot(ciphermech, null); or pk11
slotinfo*
slot = pk11_getinternalkey
slot(); /* alwys returns internal
slot, may not be optimal */ prepare the key if using a raw key /* turn the raw key into a secitem */ secitem keyitem; keyitem.data = /* ptr to an array of key bytes */ keyitem.le...
...n = /* length of the array of key bytes */ /* turn the secitem into a key object */ pk11symkey* symkey = pk11_importsymkey(
slot, ciphermech, pk11_originunwrap, cka_encrypt, &keyitem, null); if generating the key - see section generate a symmetric key <big>prepare the parameter for crypto context.
...when all done with encrypt/decrypt ops, clean up</big> <big>pk11_freesymkey(symkey); secitem_freeitem(secparam, pr_true); pk11_free
slot(
slot);</big> note: aes encryption, a fixed blocksize of 16 bytes is used.
...And 35 more matches
NSS PKCS11 Functions
secmod_loadusermodule secmod_unloadusermodule secmod_openuserdb secmod_closeuserdb pk11_findcertfromnickname pk11_findkeybyanycert pk11_get
slotname pk11_gettokenname pk11_ishw pk11_ispresent pk11_isreadonly pk11_setpasswordfunc secmod_loadusermodule load a new pkcs #11 module based on a modulespec.
...once the database is closed, the
slot will remain as an empty
slot until it's used again with secmod_openuserdb().
... syntax #include <pk11pub.h> secstatus secmod_closeuserdb(pk11
slotinfo *
slot) parameters this function has the following parameter:
slot a pointer to a
slot info structure.
...And 27 more matches
Enc Dec MAC Using Key Wrap CertReq PKCS10 CSR
input has no header but has trailer\n"); port_free(filedata.data); rv = secfailure; goto cleanup; } } } hextobuf(body, item, ishexdata); cleanup: if (file) { pr_close(file); } return rv; } /* * generate the private key */ seckeyprivatekey * generateprivatekey(keytype keytype, pk11
slotinfo *
slot, int size, int publicexponent, const char *noise, seckeypublickey **pubkeyp, const char *pqgfile, secupwdata *pwdata) { ck_mechanism_type mechanism; secoidtag algtag; pk11rsagenparams rsaparams; void *params; seckeyprivatekey *privkey = null; secstatus rv; ...
... this may take a few moments...\n\n"); privkey = pk11_generatekeypair(
slot, mechanism, params, pubkeyp, pr_true /*isperm*/, pr_true /*issensitive*/, pwdata); cleanup: return privkey; } /* * get the certificate request from csr */ static certcertificaterequest * getcertrequest(char *infilename, prbool ascii) { certsigneddata signeddata; secitem reqder; certcertif...
...&req->subject : &issuercert->subject), validity, req); cert_destroyvalidity(validity); } cleanup: if ( issuercert ) { cert_destroycertificate (issuercert); } return cert; } /* * add a certificate to the nss database */ secstatus addcert(pk11
slotinfo *
slot, certcertdbhandle *handle, const char *name, char *trusts, char *infilename, prbool ascii, prbool emailcert, void *pwdata) { secitem certder; secstatus rv; certcerttrust *trust = null; certcertificate *cert = null; certder.data = null; /* read in the entire file specified with the -i argument */ rv = readderfromfile(&...
...And 20 more matches
pkfnc.html
pk11_findcertfromnickname pk11_findkeybyanycert pk11_get
slotname pk11_gettokenname pk11_ishw pk11_ispresent pk11_isreadonly pk11_setpasswordfunc pk11_findcertfromnickname finds a certificate from its nickname.
... pk11_findkeybyanycert finds the private key associated with a specified certificate in any available
slot.
... pk11_get
slotname gets the name of a
slot.
...And 17 more matches
sample2
trail = null; body = nonbody; if (body) { trail = strstr(++body, trailer); if (trail != null) { pr_fprintf(pr_stderr, "input has no header but has trailer\n"); port_free(filedata.data); rv = secfailure; goto cleanup; } } } hextobuf(body, item, ishexdata); cleanup: if (file) { pr_close(file); } return rv; } /* * generate the private key */ seckeyprivatekey * generateprivatekey(keytype keytype, pk11
slotinfo *
slot, int size, int publicexponent, const char *noise, seckeypublickey **pubkeyp, const char *pqgfile, secupwdata *pwdata) { ck_mechanism_type mechanism; secoidtag algtag; pk11rsagenparams rsaparams; void *params; seckeyprivatekey *privkey = null; secstatus rv; unsigned char randbuf[blocksize + 1]; rv = generaterandom(randbuf, blocksize); if (rv != secsuccess) { fprintf(stderr, "error while ...
...this may take a few moments...\n\n"); privkey = pk11_generatekeypair(
slot, mechanism, params, pubkeyp, pr_true /*isperm*/, pr_true /*issensitive*/, pwdata); cleanup: return privkey; } /* * get the certificate request from csr */ static certcertificaterequest * getcertrequest(char *infilename, prbool ascii) { certsigneddata signeddata; secitem reqder; certcertificaterequest *certreq = null; secstatus rv = secsuccess; prarenapool *arena = null; reqder.data = null; arena ...
...&req->subject : &issuercert->subject), validity, req); cert_destroyvalidity(validity); } cleanup: if ( issuercert ) { cert_destroycertificate (issuercert); } return cert; } /* * add a certificate to the nss database */ secstatus addcert(pk11
slotinfo *
slot, certcertdbhandle *handle, const char *name, char *trusts, char *infilename, prbool ascii, prbool emailcert, void *pwdata) { secitem certder; secstatus rv; certcerttrust *trust = null; certcertificate *cert = null; certder.data = null; /* read in the entire file specified with the -i argument */ rv = readderfromfile(&certder, infilename, ascii); if (rv != secsuccess) { pr_fprintf(pr_std...
...And 16 more matches
Bytecode Descriptions
subsequent initprop instructions must fill in all
slots of the new object before it is used in any other way.
...fun must be a method, getter, or setter, so that it has a [[homeobject]]
slot.
...format: jof_argc, jof_invoke, jof_typeset, jof_ic spreadcall stack: callee, this, args ⇒ rval like jsop::call, but the arguments are provided in an array rather than a span of stack
slots.
...And 16 more matches
Enc Dec MAC Output Public Key as CSR
rv = secfailure; goto cleanup; } rv = pk11_pubwrapsymkey(ckm_rsa_pkcs, pubkey, key, data); if (rv != secsuccess) { rv = secfailure; } else { *wrappedkey = data; return secsuccess; } cleanup: if (data) { secitem_freeitem(data, pr_true); } return rv; } /* * generate a symmetric key */ pk11symkey * generatesymkey(pk11
slotinfo *
slot, ck_mechanism_type mechanism, int keysize, secitem *keyid, secupwdata *pwdata) { secstatus rv; pk11symkey *key; /* generate the symmetric key */ key = pk11_tokenkeygen(
slot, mechanism, null, keysize, keyid, pr_false, pwdata); if (!key) { pr_fprintf(pr_stderr, "symmetric key generation failed \n"); } return key; }...
...{ pr_fprintf(pr_stderr, "input has no header but has trailer\n"); port_free(filedata.data); return secfailure; } } } cleanup: pr_close(file); atob_convertasciitoitem(item, body); return secsuccess; } /* * generate the private key */ seckeyprivatekey * generateprivatekey(keytype keytype, pk11
slotinfo *
slot, int size, int publicexponent, const char *noisefilename, seckeypublickey **pubkeyp, const char *pqgfile, secupwdata *pwdata) { ck_mechanism_type mechanism; secoidtag algtag; pk11rsagenparams rsaparams; void *params; seckeyprivatekey *privkey = null; secstatus rv; u...
... this may take a few moments...\n\n"); privkey = pk11_generatekeypair(
slot, mechanism, params, pubkeyp, pr_true /*isperm*/, pr_true /*issensitive*/, pwdata); cleanup: return privkey; } /* * extract the public key request from csr */ seckeypublickey * extractpublickeyfromcertrequest(const char *infilename, prbool ascii) { certsigneddata signeddata; secitem reqder; certcertifi...
...And 14 more matches
NSS tools : modutil
modutil can add and delete pkcs #11 modules, change passwords on security databases, set defaults, list module contents, enable or disable
slots, enable or disable fips 140-2 compliance, and assign default providers for cryptographic operations.
... -disable modulename disable all
slots on the named module.
... use the -
slot argument to disable a specific
slot.
...And 13 more matches
NSS tools : modutil
modutil can add and delete pkcs #11 modules, change passwords on security databases, set defaults, list module contents, enable or disable
slots, enable or disable fips 140-2 compliance, and assign default providers for cryptographic operations.
... -disable modulename disable all
slots on the named module.
... use the -
slot argument to disable a specific
slot.
...And 13 more matches
Encrypt Decrypt MAC Keys As Session Objects
(pk11symkey* key, secitem* buf) { secstatus rv = pk11_readrawattribute(pk11_typesymkey, key, cka_id, buf); if (rv != secsuccess) { pr_fprintf(pr_stderr, "pk11_readrawattribute returned (%d)\n", rv); pr_fprintf(pr_stderr, "could not read symkey cka_id attribute\n"); return rv; } return rv; } /* * generate a symmetric key */ pk11symkey * generatesymkey(pk11
slotinfo *
slot, ck_mechanism_type mechanism, int keysize, secitem *keyid, secupwdata *pwdata) { secstatus rv; pk11symkey *key; if (pk11_needlogin(
slot)) { rv = pk11_authenticate(
slot, pr_true, pwdata); if (rv != secsuccess) { pr_fprintf(pr_stderr, "could not authenticate to token %s.\n", pk11_gettokenname(
slot)); ...
... return null; } } /* generate the symmetric key */ key = pk11_tokenkeygen(
slot, mechanism, null, keysize, keyid, pr_true, pwdata); if (!key) { pr_fprintf(pr_stderr, "symmetric key generation failed \n"); } return key; } /* * macinit */ secstatus macinit(pk11context *ctx) { secstatus rv = pk11_digestbegin(ctx); if (rv != secsuccess) { pr_fprintf(pr_stderr, "compute mac failed : pk11_digestbegin()\n"); } return rv; } /* * macupdate */ secstatus macupdate(pk11context *ctx, unsigned char *msg, unsigned int msglen) { secstatus rv = pk11_digestop(ctx, msg, msglen); if (rv != secsuccess) { pr_fprintf(pr_stderr, "compute mac failed : digestop()\n"); } return r...
...eaderfile); if (rv != secsuccess) { pr_fprintf(pr_stderr, "write pad failure\n"); goto cleanup; } rv = secsuccess; cleanup: if (ctxmac != null) { pk11_destroycontext(ctxmac, pr_true); } if (ctxenc != null) { pk11_destroycontext(ctxenc, pr_true); } return rv; } /* * find the key for the given mechanism */ pk11symkey* findkey(pk11
slotinfo *
slot, ck_mechanism_type mechanism, secitem *keybuf, secupwdata *pwdata) { secstatus rv; pk11symkey *key; if (pk11_needlogin(
slot)) { rv = pk11_authenticate(
slot, pr_true, pwdata); if (rv != secsuccess) { pr_fprintf(pr_stderr, "could not authenticate to token %s.\n", pk11_gettokennam...
...And 10 more matches
Encrypt and decrypt MAC using token
(pk11symkey* key, secitem* buf) { secstatus rv = pk11_readrawattribute(pk11_typesymkey, key, cka_id, buf); if (rv != secsuccess) { pr_fprintf(pr_stderr, "pk11_readrawattribute returned (%d)\n", rv); pr_fprintf(pr_stderr, "could not read symkey cka_id attribute\n"); return rv; } return rv; } /* * generate a symmetric key */ pk11symkey * generatesymkey(pk11
slotinfo *
slot, ck_mechanism_type mechanism, int keysize, secitem *keyid, secupwdata *pwdata) { secstatus rv; pk11symkey *key; if (pk11_needlogin(
slot)) { rv = pk11_authenticate(
slot, pr_true, pwdata); if (rv != secsuccess) { pr_fprintf(pr_stderr, "could not authenticate to token %s.\n", pk11_gettokenname(
slot)); ...
... return null; } } /* generate the symmetric key */ key = pk11_tokenkeygen(
slot, mechanism, null, keysize, keyid, pr_true, pwdata); if (!key) { pr_fprintf(pr_stderr, "symmetric key generation failed \n"); } return key; } /* * macinit */ secstatus macinit(pk11context *ctx) { secstatus rv = pk11_digestbegin(ctx); if (rv != secsuccess) { pr_fprintf(pr_stderr, "compute mac failed : pk11_digestbegin()\n"); } return rv; } /* * macupdate */ secstatus macupdate(pk11context *ctx, unsigned char *msg, unsigned int msglen) { secstatus rv = pk11_digestop(ctx, msg, msglen); if (rv != secsuccess) { pr_fprintf(pr_stderr, "compute mac failed : digestop()\n"); } return r...
...eaderfile); if (rv != secsuccess) { pr_fprintf(pr_stderr, "write pad failure\n"); goto cleanup; } rv = secsuccess; cleanup: if (ctxmac != null) { pk11_destroycontext(ctxmac, pr_true); } if (ctxenc != null) { pk11_destroycontext(ctxenc, pr_true); } return rv; } /* * find the key for the given mechanism */ pk11symkey* findkey(pk11
slotinfo *
slot, ck_mechanism_type mechanism, secitem *keybuf, secupwdata *pwdata) { secstatus rv; pk11symkey *key; if (pk11_needlogin(
slot)) { rv = pk11_authenticate(
slot, pr_true, pwdata); if (rv != secsuccess) { pr_fprintf(pr_stderr, "could not authenticate to token %s.\n", pk11_gettokennam...
...And 10 more matches
Encrypt Decrypt_MAC_Using Token
*/ pk11symkey * generatesymkey(pk11
slotinfo *
slot, ck_mechanism_type mechanism, int keysize, secitem *keyid, secupwdata *pwdata) { secstatus rv; pk11symkey *key; if (pk11_needlogin(
slot)) { rv = pk11_authenticate(
slot, pr_true, pwdata); if (rv != secsuccess) { pr_fprintf(pr_stderr, "could not authenticate to token %s.\n", pk11_gettokenname(
slot)); ...
...*/ key = pk11_tokenkeygen(
slot, mechanism, null, keysize, keyid, pr_true, pwdata); if (!key) { pr_fprintf(pr_stderr, "symmetric key generation failed \n"); } return key; } /* * macinit */ secstatus macinit(pk11context *ctx) { secstatus rv = pk11_digestbegin(ctx); if (rv != secsuccess) { pr_fprintf(pr_stderr, "compute mac failed : pk11_digestbegin()\n"); } return rv; } /* * macupdate */ secstatus macupdate(pk11context *ctx, unsigned char *msg, unsigned int msglen) { secstatus rv = pk11_digestop(ctx, msg, msglen); if (rv != secsuccess) { pr_fprintf(pr_stderr, "compute mac failed : digestop()\n"); } return ...
... */ pk11symkey* findkey(pk11
slotinfo *
slot, ck_mechanism_type mechanism, secitem *keybuf, secupwdata *pwdata) { secstatus rv; pk11symkey *key; if (pk11_needlogin(
slot)) { rv = pk11_authenticate(
slot, pr_true, pwdata); if (rv != secsuccess) { pr_fprintf(pr_stderr, "could not authenticate to token %s.\n", pk11_gettokennam...
...And 10 more matches
NSS Sample Code Sample_3_Basic Encryption and MACing
(pk11symkey* key, secitem* buf) { secstatus rv = pk11_readrawattribute(pk11_typesymkey, key, cka_id, buf); if (rv != secsuccess) { pr_fprintf(pr_stderr, "pk11_readrawattribute returned (%d)\n", rv); pr_fprintf(pr_stderr, "could not read symkey cka_id attribute\n"); return rv; } return rv; } /* * generate a symmetric key */ pk11symkey * generatesymkey(pk11
slotinfo *
slot, ck_mechanism_type mechanism, int keysize, secitem *keyid, secupwdata *pwdata) { secstatus rv; pk11symkey *key; if (pk11_needlogin(
slot)) { rv = pk11_authenticate(
slot, pr_true, pwdata); if (rv != secsuccess) { pr_fprintf(pr_stderr, "could not authenticate to token %s.\n", pk11_gettokenname(
slot)); ...
... return null; } } /* generate the symmetric key */ key = pk11_tokenkeygen(
slot, mechanism, null, keysize, keyid, pr_true, pwdata); if (!key) { pr_fprintf(pr_stderr, "symmetric key generation failed \n"); } return key; } /* * macinit */ secstatus macinit(pk11context *ctx) { secstatus rv = pk11_digestbegin(ctx); if (rv != secsuccess) { pr_fprintf(pr_stderr, "compute mac failed : pk11_digestbegin()\n"); } return rv; } /* * macupdate */ secstatus macupdate(pk11context *ctx, unsigned char *msg, unsigned int msglen) { secstatus rv = pk11_digestop(ctx, msg, msglen); if (rv != secsuccess) { pr_fprintf(pr_stderr, "compute mac failed : digestop()\n"); } return r...
...eaderfile); if (rv != secsuccess) { pr_fprintf(pr_stderr, "write pad failure\n"); goto cleanup; } rv = secsuccess; cleanup: if (ctxmac != null) { pk11_destroycontext(ctxmac, pr_true); } if (ctxenc != null) { pk11_destroycontext(ctxenc, pr_true); } return rv; } /* * find the key for the given mechanism */ pk11symkey* findkey(pk11
slotinfo *
slot, ck_mechanism_type mechanism, secitem *keybuf, secupwdata *pwdata) { secstatus rv; pk11symkey *key; if (pk11_needlogin(
slot)) { rv = pk11_authenticate(
slot, pr_true, pwdata); if (rv != secsuccess) { pr_fprintf(pr_stderr, "could not authenticate to token %s.\n", pk11_gettokennam...
...And 10 more matches
NSS Tools modutil
you can use the tool to add and delete pkcs #11 modules, change passwords, set defaults, list module contents, enable or disable
slots, enable or disable fips 140-2 compliance, and assign default providers for cryptographic operations.
...use modulename to display detailed information about a particular module and its
slots and tokens.
... -enable modulename enable all
slots on the named module.
...And 10 more matches
Index - Web APIs
1168 element.
slot api, element, property, reference, shadow dom,
slot the
slot property of the element interface returns the name of the shadow dom
slot the element is inserted in.
... 1895 html
slotelement api, html
slotelement, interface, reference, shadow dom fired on an html
slotelement instance (<
slot> element) when the node(s) contained in that
slot change.
... 1896 html
slotelement.assignedelements() api, html
slotelement, method, reference, web components, assignedelements, shadow dom the assignedelements() property of the html
slotelement interface returns a sequence of the elements assigned to this
slot (and no other nodes).
...And 10 more matches
EncDecMAC using token object - sample 3
* gather a cka_id */ secstatus gathercka_id(pk11symkey* key, secitem* buf) { secstatus rv = pk11_readrawattribute(pk11_typesymkey, key, cka_id, buf); if (rv != secsuccess) { pr_fprintf(pr_stderr, "pk11_readrawattribute returned (%d)\n", rv); pr_fprintf(pr_stderr, "could not read symkey cka_id attribute\n"); return rv; } return rv; } /* * generate a symmetric key */ pk11symkey * generatesymkey(pk11
slotinfo *
slot, ck_mechanism_type mechanism, int keysize, secitem *keyid, secupwdata *pwdata) { secstatus rv; pk11symkey *key; if (pk11_needlogin(
slot)) { rv = pk11_authenticate(
slot, pr_true, pwdata); if (rv != secsuccess) { pr_fprintf(pr_stderr, "could not authenticate to token %s.\n", pk11_gettokenname(
slot)); return null; } } /* generate the symmetric key */ key = pk11_tokenkeygen(
slot, mechanism,...
... = sizeof(pad[0]); writetoheaderfile(paditem.data, paditem.len, pad, headerfile); if (rv != secsuccess) { pr_fprintf(pr_stderr, "write pad failure\n"); goto cleanup; } rv = secsuccess; cleanup: if (ctxmac != null) { pk11_destroycontext(ctxmac, pr_true); } if (ctxenc != null) { pk11_destroycontext(ctxenc, pr_true); } return rv; } /* * find the key for the given mechanism */ pk11symkey* findkey(pk11
slotinfo *
slot, ck_mechanism_type mechanism, secitem *keybuf, secupwdata *pwdata) { secstatus rv; pk11symkey *key; if (pk11_needlogin(
slot)) { rv = pk11_authenticate(
slot, pr_true, pwdata); if (rv != secsuccess) { pr_fprintf(pr_stderr, "could not authenticate to token %s.\n", pk11_gettokenname(
slot)); if (
slot) { pk11_free
slot(
slot); } return null; } } key = pk11_findfixedkey(
slot, mechanism, keybuf, ...
...0); if (!key) { pr_fprintf(pr_stderr, "pk11_findfixedkey failed (err %d)\n", pr_geterror()); pk11_free
slot(
slot); return null; } return key; } /* * decrypt and verify mac */ secstatus decryptandverifymac(const char* outfilename, char *encryptedfilename, secitem *citem, secitem *macitem, pk11symkey* ek, pk11symkey* mk, secitem *ivitem, secitem *paditem) { secstatus rv; prfiledesc* infile; prfiledesc* outfile; unsigned char decbuf[64]; unsigned int decbuflen; unsigned char ptext[blocksize]; unsigned int ptextlen = 0; unsigned char ctext[64]; unsigned int ctextlen; unsigned char newmac[digestsize]; unsigned int newmaclen = 0; unsigned int newptextlen = 0; unsigned int count = 0; unsigned int temp = 0; unsigned int blocknumber = 0; secitem noparams = { sibuffer, null, 0 }; pk11context *ctxmac = nu...
...And 9 more matches
NSS functions
pk11_findcertandkeybyrecipientlist mxr 3.2 and later pk11_findcertandkeybyrecipientlistnew mxr 3.2 and later pk11_findcertbyissuerandsn mxr 3.2 and later pk11_findcertfromdercert mxr 3.2 and later pk11_findcertfromnickname mxr 3.2 and later pk11_findcertin
slot mxr 3.2 and later pk11_findgenericobjects mxr 3.9.2 and later pk11_findfixedkey mxr 3.2 and later pk11_findkeybyanycert mxr 3.2 and later pk11_findkeybydercert mxr 3.2 and later pk11_findprivatekeyfromcert mxr 3.2 and later pk11_fi...
...nd
slotbyname mxr 3.2 and later pk11_find
slotsbynames mxr 3.9 and later pk11_fortezzahaskea mxr 3.2 and later pk11_fortezzamapsig mxr 3.2 and later pk11_free
slot mxr 3.2 and later pk11_free
slotlist mxr 3.2 and later pk11_free
slotlistelement mxr 3.11 and later pk11_freesymkey mxr 3.2 and later pk11_generatefortezzaiv mxr 3.2 and later pk11_generatekeypair mxr 3.2 and later pk11_generatekeypairwithflags mxr 3.10.2 and later pk11_generatekeypairwithopflags mxr 3.12 and later ...
... pk11_generatenewparam mxr 3.2 and later pk11_generaterandom mxr 3.2 and later pk11_generaterandomon
slot mxr 3.11 and later pk11_getalltokens mxr 3.2 and later pk11_getall
slotsforcert mxr 3.12 and later pk11_getbestkeylength mxr 3.2 and later pk11_getbest
slot mxr 3.2 and later pk11_getbest
slotmultiple mxr 3.2 and later pk11_getbestwrapmechanism mxr 3.2 and later pk11_getblocksize mxr 3.2 and later pk11_getcertfromprivatekey mxr 3.9.3 and later pk11_getcurrentwrapindex mxr ...
...And 9 more matches
JIT Optimization Strategies
getprop_definite
slot optimizes access to a well-known regular property on an object.
... function someconstructor() { this.x = 10; // x is a definite
slot property this.y = 10; // y is a definite
slot property somecomplicatedfunctioncall(); this.z = 20; // z is not a definite
slot property.
...furthermore, even if the object type is monomorphic, the optimization will fail if the property being accessed is not a definite
slot as described above.
...And 9 more matches
Key Values - Web APIs
vk_exit qt::key_exit (0x0102000a) "favoriteclear0" clears the program or content stored in the first favorites list
slot.
... vk_clear_favorite_0 "favoriteclear1" clears the program or content stored in the second favorites list
slot.
... vk_clear_favorite_1 "favoriteclear2" clears the program or content stored in the third favorites list
slot.
...And 9 more matches
PKCS #11 Module Specs
slotparams - space separated list of name/value pairs where the name is a
slotid and the value is a space separated list of parameters related to that
slotid.
... valid
slotparams values are:
slotflags - comma separated list of cipher groups which this
slot is expected to be the default implementation for (case-insensitive).
... sample file: library= name="netscape internal crypto module" parameters="configdir=/u/relyea/.netscape certprefix= secmod=secmod.db" nss="flags=internal,pkcs11module trustorder=1 cipherorder=-1 ciphers=
slotparams={0x1=[
slotflags='rsa,dsa,dh,rc4,rc2,des,md2,md5,sha1,ssl,tls,publiccerts,random'] 0x2=[
slotflags='rsa' askpw=only]}" library=dkck32.dll name="datakey signasure 3600" nss="trustorder=50 ciphers= " library=swft32.dll name="netscape software fortezza" parameters="keyfile=/u/relyea/keyfile" nss="trustorder=50 ciphers=fortezza
slotparams=0x1=[
slotflags='fortezza']" library=core32.dll name="litro...
...And 8 more matches
Web Components
html templates: the <template> and <
slot> elements enable you to write markup templates that are not displayed in the rendered page.
... if required, define an html template using <template> and <
slot>.
... using templates and
slots a guide showing how to define a reusable html structure using <template> and <
slot> elements, and then use that structure inside your web components.
...And 8 more matches
Cryptography functions
pk11_findcertandkeybyrecipientlist mxr 3.2 and later pk11_findcertandkeybyrecipientlistnew mxr 3.2 and later pk11_findcertbyissuerandsn mxr 3.2 and later pk11_findcertfromdercert mxr 3.2 and later pk11_findcertfromnickname mxr 3.2 and later pk11_findcertin
slot mxr 3.2 and later pk11_findgenericobjects mxr 3.9.2 and later pk11_findfixedkey mxr 3.2 and later pk11_findkeybyanycert mxr 3.2 and later pk11_findkeybydercert mxr 3.2 and later pk11_findprivatekeyfromcert mxr 3.2 and later pk11_fi...
...nd
slotbyname mxr 3.2 and later pk11_find
slotsbynames mxr 3.9 and later pk11_fortezzahaskea mxr 3.2 and later pk11_fortezzamapsig mxr 3.2 and later pk11_free
slot mxr 3.2 and later pk11_free
slotlist mxr 3.2 and later pk11_free
slotlistelement mxr 3.11 and later pk11_freesymkey mxr 3.2 and later pk11_generatefortezzaiv mxr 3.2 and later pk11_generatekeypair mxr 3.2 and later pk11_generatekeypairwithflags mxr 3.10.2 and later pk11_generatekeypairwithopflags mxr 3.12 and later ...
... pk11_generatenewparam mxr 3.2 and later pk11_generaterandom mxr 3.2 and later pk11_generaterandomon
slot mxr 3.11 and later pk11_getalltokens mxr 3.2 and later pk11_getall
slotsforcert mxr 3.12 and later pk11_getbestkeylength mxr 3.2 and later pk11_getbest
slot mxr 3.2 and later pk11_getbest
slotmultiple mxr 3.2 and later pk11_getbestwrapmechanism mxr 3.2 and later pk11_getblocksize mxr 3.2 and later pk11_getcertfromprivatekey mxr 3.9.3 and later pk11_getcurrentwrapindex mxr ...
...And 7 more matches
NSS Sample Code Sample1
(servername); } server::~server() { if (mservername) pl_strfree(mservername); if (mwrappedenckey) secitem_freeitem(mwrappedenckey, pr_true); if (mwrappedmackey) secitem_freeitem(mwrappedmackey, pr_true); if (menckey) pk11_freesymkey(menckey); if (mmackey) pk11_freesymkey(mmackey); } int server::init() { int rv = 0; seckeyprivatekey *prvkey = 0; seckeypublickey *pubkey = 0; pk11
slotinfo *
slot = 0; pk11rsagenparams rsaparams; secstatus s; // see if there is already a private key with this name.
... rv = getprivatekey(&prvkey); if (rv == 0 && prvkey) goto done; rv = 0; // these could be parameters to the init function rsaparams.keysizeinbits = 1024; rsaparams.pe = 65537;
slot = pk11_getinternalkey
slot(); if (!
slot) { rv = 1; goto done; } prvkey = pk11_generatekeypair(
slot, ckm_rsa_pkcs_key_pair_gen, &rsaparams, &pubkey, pr_true, pr_true, 0); if (!prvkey) { rv = 1; goto done; } // set the nickname on the private key so that it // can be found later.
... s = pk11_setprivatekeynickname(prvkey, mservername); if (s != secsuccess) { rv = 1; goto done; } done: if (
slot) pk11_free
slot(
slot); if (pubkey) seckey_destroypublickey(pubkey); if (prvkey) seckey_destroyprivatekey(prvkey); return rv; } int server::generatekeys() { int rv = 0; seckeypublickey *pubkey = 0; pk11
slotinfo *
slot = 0; // choose a
slot to use
slot = pk11_getinternalkey
slot(); if (!
slot) { rv = 1; goto done; } // get our own public key to use for wrapping rv = getpublickey(&pubkey); if (rv) goto done; // do the encryption (aes) key if (!mwrappedenckey) { pk11symkey *key = 0; // the key size is 128 bits (16 bytes) key = pk11_keygen(
slot, ckm_aes_key_gen, 0, 128/8, 0); if (!key) { rv = 1; goto aes_done; } rv = wrapkey(key...
...And 6 more matches
Index
all native objects have a jsclass, which is stored as a private (int-tagged) pointer in object
slots.
... 137 jsobjectops.getrequired
slot jsapi reference, obsolete, spidermonkey get and set a required
slot, one that should already have been allocated.
... these operations are infallible, so required
slots must be pre-allocated, or implementations must suppress out-of-memory errors.
...And 6 more matches
PKCS11 FAQ
nss typically holds one session read-only session per
slot, in which some of the non-multipart functions are handled.
... our plugin provides several
slots with different capabilities.
...for example, if the rsa
slot unwraps a key, nss needs to move that key to a
slot that can do the symmetric operations.
...And 5 more matches
PKCS11 Implement
slot and token management c_get
slotlist the nss calls c_get
slotlist on startup or when it loads a new module, requests all the module's
slots, and keeps track of the list from that point on.
... the
slots are expected to remain static: that is, the module never has more
slots or fewer
slots than the number on the original list.
... c_get
slotinfo the nss calls c_get
slotinfo on startup or when it loads a new module and reads in the information that can be viewed on the
slot information page.
...And 5 more matches
Python binding for NSS
the following class methods were added: pk11
slot.check_security_officer_passwd pk11
slot.check_user_passwd pk11
slot.change_passwd pk11
slot.init_pin release 0.17.0 release date 2014-11-07 scm tag pynss_release_0_17_0 source download https://ftp.mozilla.org/pub/mozilla.org/security/python-nss/releases/pynss_release_0_17_0/src/ change log the pri...
...mary enhancement in this version is adding support for pbkdf2 the following module functions were added: nss.create_pbev2_algorithm_id the following class methods were added: nss.algorithmid.get_pbe_crypto_mechanism nss.algorithmid.get_pbe_iv nss.pk11
slot.pbe_key_gen nss.pk11
slot.format_lines nss.pk11
slot.format nss.pk11symkey.format_lines nss.pk11symkey.format nss.secitem.to_base64 nss.secitem.format_lines nss.secitem.format the following files were added: doc/examples/pbkdf2_example.py the secitem constructor added 'ascii' parameter to permit initialization from base64 and/or pem textual data.
...lognode nss.certverifylog error.certverifyerror (exception) nss.authorityinfoaccess nss.authorityinfoaccesses the following class methods were added: nss.certificate.is_ca_cert nss.certificate.verify nss.certificate.verify_with_log nss.certificate.get_cert_chain nss.certificate.check_ocsp_status nss.pk11
slot.list_certs nss.certverifylognode.format_lines nss.certverifylog.format_lines nss.crldistributionpts.format_lines the following class properties were added: nss.certverifylognode.certificate nss.certverifylognode.error nss.certverifylognode.depth nss.certverifylog.count the following module functions were a...
...And 5 more matches
NSS API Guidelines
the pkcs11wrap library provides functions for selecting/finding pkcs #11 modules and
slots.
... it also provides functions that invoke operations in selected modules and
slots, such as key selection and generation, signing, encryption and decryption, etc.
... examples of the previous strategies can be found in security/nss/lib/pk11wrap/pk11
slot.c.
...And 4 more matches
NSS Sample Code Sample_2_Initialization of NSS
swc>]" " [-f <passwdffile>]\n\n", progname); fprintf(stderr, "%-15s specify a db directory path\n\n", "-d <dbdirpath>"); fprintf(stderr, "%-15s specify a plaintext password\n\n", "-p <plainpasswc>"); fprintf(stderr, "%-15s specify a password file\n\n", "-f <plainpasswc>"); exit(-1); } /* initialize the
slot password */ char *init
slotpassword(pk11
slotinfo *
slot, prbool retry, void *arg) { file *input; file *output; char *p0 = null; char *p1 = null; secupwdata *pwdata = (secupwdata *) arg; if (pwdata->source == pw_fromfile) { return filepasswd(
slot, retry, pwdata->data); } if (pwdata->source == pw_plaintext) { ...
...try again.\n"); } /* clear out the duplicate password string */ if (p1) { port_memset(p1, 0, port_strlen(p1)); port_free(p1); } fclose(input); fclose(output); return p0; } /* change the password */ secstatus changepw(pk11
slotinfo *
slot, char *oldpass, char *newpass, char *oldpwfile, char *newpwfile) { secstatus rv; secupwdata pwdata; secupwdata newpwdata; char *oldpw = null; char *newpw = null; if (oldpass) { pwdata.source = pw_plaintext; pwdata.data = oldpass; } else if (oldpwfile) { pwdata.source = pw_fromfile; pwdata.data = ol...
...dpwfile; } else { pwdata.source = pw_none; pwdata.data = null; } if (newpass) { newpwdata.source = pw_plaintext; newpwdata.data = newpass; } else if (newpwfile) { newpwdata.source = pw_fromfile; newpwdata.data = null; } else { newpwdata.source = pw_none; newpwdata.data = null; } if (pk11_needuserinit(
slot)) { newpw = init
slotpassword(
slot, pr_false, &pwdata); rv = pk11_initpin(
slot, (char*)null, newpw); } else { for (;;) { oldpw = getmodulepassword(
slot, pr_false, &pwdata); if (pk11_checkuserpassword(
slot, oldpw) != secsuccess) { if (pwdata.source == pw_none) { pr_fprintf(pr_stderr, "invalid password.
...And 4 more matches
Initialize NSS database - sample 2
t char *progname) { fprintf(stderr, "\nusage: %s -d [-p ]" " [-f ]\n\n", progname); fprintf(stderr, "%-15s specify a db directory path\n\n", "-d "); fprintf(stderr, "%-15s specify a plaintext password\n\n", "-p "); fprintf(stderr, "%-15s specify a password file\n\n", "-f "); exit(-1); } /* * init
slotpassword */ char * init
slotpassword(pk11
slotinfo *
slot, prbool retry, void *arg) { file *input; file *output; char *p0 = null; char *p1 = null; secupwdata *pwdata = (secupwdata *) arg; if (pwdata->source == pw_fromfile) { return filepasswd(
slot, retry, pwdata->data); } if (pwdata->source == pw_plaintext) { ...
...try again.\n"); } /* clear out the duplicate password string */ if (p1) { port_memset(p1, 0, port_strlen(p1)); port_free(p1); } fclose(input); fclose(output); return p0; } /* * changepw */ secstatus changepw(pk11
slotinfo *
slot, char *oldpass, char *newpass, char *oldpwfile, char *newpwfile) { secstatus rv; secupwdata pwdata; secupwdata newpwdata; char *oldpw = null; char *newpw = null; if (oldpass) { pwdata.source = pw_plaintext; pwdata.data = oldpass; } else if (oldpwfile) { pwdata.source = pw_fromfile; pwdata.data = oldpwfile; ...
... } else { pwdata.source = pw_none; pwdata.data = null; } if (newpass) { newpwdata.source = pw_plaintext; newpwdata.data = newpass; } else if (newpwfile) { newpwdata.source = pw_fromfile; newpwdata.data = null; } else { newpwdata.source = pw_none; newpwdata.data = null; } if (pk11_needuserinit(
slot)) { newpw = init
slotpassword(
slot, pr_false, &pwdata); rv = pk11_initpin(
slot, (char*)null, newpw); if (rv == secsuccess) { pr_fprintf(pr_stderr, "pk11_initpin failed.\n"); return secfailure; } } else { for (;;) { oldpw = getmodulepassword(
slot, pr_false, &pwdata); if (pk11_checkuserpassword(
slot, oldpw) != secsuc...
...And 4 more matches
NSS tools : pk12util
nss tools : pk12util name pk12util — export and import keys and certificate to or from a pkcs #12 file and the nss database synopsis pk12util [-i p12file|-l p12file|-o p12file] [-d [sql:]directory] [-h tokenname] [-p dbprefix] [-r] [-v] [-k
slotpasswordfile|-k
slotpassword] [-w p12filepasswordfile|-w p12filepassword] description the pkcs #12 utility, pk12util, enables sharing certificates among any server that supports pkcs#12.
... -k
slotpasswordfile specify the text file containing the
slot's password.
... -k
slotpassword specify the
slot's password.
...And 4 more matches
certutil
unless specified otherwise the default token is an internal
slot (specifically, internal
slot 2).
... this
slot can also be explicitly named with the string "internal".
... an internal
slots is a virtual
slot maintained in software, rather than a hardware device.
...And 4 more matches
NSS tools : pk12util
keys and certificate to or from a pkcs #12 file and the nss database synopsis pk12util [-i p12file [-h tokenname] [-v] [common-options] ] [ -l p12file [-h tokenname] [-r] [common-options] ] [ -o p12file -n certname [-c keycipher] [-c certcipher] [-m|--key_len keylen] [-n|--cert_key_len certkeylen] [common-options] ] [ common-options are: [-d [sql:]directory] [-p dbprefix] [-k
slotpasswordfile|-k
slotpassword] [-w p12filepasswordfile|-w p12filepassword] ] description the pkcs #12 utility, pk12util, enables sharing certificates among any server that supports pkcs#12.
... -k
slotpasswordfile specify the text file containing the
slot's password.
... -k
slotpassword specify the
slot's password.
...And 4 more matches
Property cache
to be more precise regarding property specs, y's properties have the same names, getters, setters, property attributes, and
slot offsets, and they are in the same order, as x's properties at t0.
... furthermore, y at t1 has the same number of fixed
slots that x had at t0, and either both have a
slot array or neither does.
...(the existence of this property is guaranteed by the basic layout guarantee above.) (informally: two objects with the same shape have the same method properties.) branded object guarantee — if at time t0 the object x has shape s; and x is branded (x->branded()); and x has an own property p, which is a writable, function-valued data property with the stub getter and setter and a
slot; and at time t1 an object y has shape s; and no shape-regenerating gc occurred; then y is x, and at time t1 x's own property p has the same function value it had at time t0.
...And 4 more matches
JSObject - Archive of obsolete content
get
slot retrieves the value of an array element of a javascript object.
... set
slot sets the value of an array element of a javascript object.
... declaration public object getmember(string name) get
slot method.
...And 3 more matches
Responsive images - Learn web development
a space the width of the
slot the image will fill when the media condition is true (480px) note: for the
slot width, you may provide an absolute length (px, em) or a length relative to the viewport (vw), but not percentages.
... you may have noticed that the last
slot width has no media condition (this is the default that is chosen when none of the media conditions are true).
... look at the
slot size given to that media query.
...And 3 more matches
NSC_InitToken
syntax ck_rv nsc_inittoken( ck_
slot_id
slotid, ck_char_ptr ppin, ck_ulong ulpinlen, ck_char_ptr plabel ); parameters nsc_inittoken() has the following parameters:
slotid the id of the token's
slot ppin the password of the security officer (so) ulpinlen the length in bytes of the so password plabel points to the label of the token, which must be padded with spaces to 32 bytes and not be null-terminated description nsc_inittoken() initializes a brand new token or re-initializes a token that was initialized before.
... ckr_
slot_id_invalid:
slot id is invalid.
... ckr_token_write_protected
slot id is 1.
...And 3 more matches
sslerr.html
another token may also have been inserted into the same
slot.
... ssl_error_token_
slot_not_found -12204 "no pkcs#11 token could be found to do a required operation." a cryptographic operation required a pkcs#11 token with specific abilities, and no token could be found in any
slot, including the "soft token" in the internal virtual
slot, that could do the job.
... sec_error_no_
slot_selected -8125 no
slot or token was selected.
...And 3 more matches
Invariants
but note that a stack frame is not necessarily newer than the next stack frame down, thanks to generators!) an object's scope chain (found by chasing jsobject::f
slots[js
slot_parent]) never forms a cycle.
...even if the function is native, there is serious trouble: js_newobject with null parent argument calculates the parent from cx->fp->scopechain, which can be stale if we're on trace.) the chain of properties starting at any jsshape and chasing jsshape::parent never forms a cycle and does not contain any duplicate jsscopeproperty::
slot values other than -1.
...the same
slot being allocated to more than one property would be a problem for obvious reasons.) all jsshapes in dictionary-mode objects have the in_dictionary flag set.
...And 3 more matches
JSAPI reference
been removed in js 1.8.5, though js_enterlocalrootscope obsolete since javascript 1.8.5 js_leavelocalrootscope obsolete since javascript 1.8.5 js_leavelocalrootscopewithresult obsolete since javascript 1.8.5 js_forgetlocalroot obsolete since javascript 1.8.5 added in spidermonkey 1.8 if an object contains references to other gc things that are not stored in spidermonkey data structures ("
slots"), it must implement the jstraceop hook to enable the garbage collector to traverse those references.
...te js_forwardgetpropertyto added in spidermonkey 17 js_forwardgetelementto added in spidermonkey 17 js_getpropertydescriptor added in spidermonkey 31 js_getpropertydescriptorbyid added in spidermonkey 1.8.1 js_getownpropertydescriptor added in spidermonkey 31 js_getownpropertydescriptorbyid added in spidermonkey 31 js_getownucpropertydescriptor added in spidermonkey 45 js_setallnonreserved
slotstoundefined added in spidermonkey 24 js_aliasproperty obsolete since jsapi 8 js_clearscope obsolete since jsapi 18 js_clearnonglobalobject added in spidermonkey 18 obsolete since jsapi 34 js_defineownproperty added in spidermonkey 1.8.5 obsolete since jsapi 33 js_definepropertywithtinyid obsolete since jsapi 30 js_defineucpropertywithtinyid obsolete since jsapi 30 js_getpropertydefault ...
... struct jsclass jsclass.flags jsclass.call jsclass.construct struct jsfunctionspec struct jspropertyspec js_initclass js_linkconstructorandprototype added in spidermonkey 17 js::propertyspecnameissymbol added in spidermonkey 38 js::propertyspecnameequalsid added in spidermonkey 38 js::propertyspecnametopermanentid added in spidermonkey 38 js_getreserved
slot js_setreserved
slot struct jsextendedclass obsolete since javascript 1.8.5 struct jsobjectops obsolete since javascript 1.8.5 struct jsxmlobjectops obsolete since javascript 1.8.5 struct jsproperty obsolete since jsapi 16 adding native properties and methods to classes: jsnative struct jsfunctionspec js_fs added in spidermonkey 1.8 js_fn added in spidermonkey 1.8 js_sym_fn added i...
...And 3 more matches
NSS Sample Code sample6
* in a real app, this function should obtain the password using secure means * such as prompting an operator, or retrieving it over a secure communication * channel */ char *passwdcb(pk11
slotinfo *info, prbool retry, void *arg); int main(int argc, char **argv) { secstatus rv; /* initialize nss */ pk11_setpasswordfunc(passwdcb); /* the nss db must be initialized read-write since we'll be creating * keys in it.
...should succeed on first run on a fresh db, * should fail on successive runs because key with that id already exists */ genkey(2); /* generate a key with id 1 - this will fail because key with that id * already exists */ genkey(1); } void genkey(int id) { pk11
slotinfo*
slot = null; pk11symkey* key = null; secitem keyiditem; int keyid[1]; ck_mechanism_type ciphermech; /* using ckm_aes_cbc_pad mechanism for example */ ciphermech = ckm_aes_cbc_pad;
slot = pk11_getinternalkey
slot(); /*
slot = pk11_getbest
slot(ciphermech, null); didn't work.
... */ if (
slot == null) { fprintf(stderr, "unable to find security device (err %d)\n", pr_geterror()); return; } keyid[0] = id; keyiditem.type = sibuffer; keyiditem.data = (void *)keyid; keyiditem.len = sizeof(keyid[0]); /* note: keysize must be 0 for fixed key-length algorithms like des.
...And 2 more matches
Utilities for nss samples
in the single password * case a line would just have the passord whereas in the multi- * password variant they could be of the form * * token_1_name:its_password * token_2_name:its_password * */ extern char * filepasswd(pk11
slotinfo *
slot, prbool retry, void *arg); /* * getmodulepassword */ extern char * getmodulepassword(pk11
slotinfo *
slot, int retry, void *pwdata); /* * generaterandom */ extern secstatus generaterandom(unsigned char *rbuf, int rsize); /* * filetoitem */ extern secstatus filetoitem(secitem *dst, ...
...in the single password * case a line would just have the passord whereas in the multi- * password variant they could be of the form * * token_1_name:its_password * token_2_name:its_password * */ char * filepasswd(pk11
slotinfo *
slot, prbool retry, void *arg) { char* phrases, *phrase; prfiledesc *fd; print32 nb; char *pwfile = arg; int i; const long maxpwdfilesize = 4096; char* tokenname = null; int tokenlen = 0; if (!pwfile) return 0; if (retry) { return 0; /* no good retrying - the files contents will be the same */ } phrases = port_zalloc(maxpwdf...
.../ } fd = pr_open(pwfile, pr_rdonly, 0); if (!fd) { fprintf(stderr, "no password file \"%s\" exists.\n", pwfile); port_free(phrases); return null; } nb = pr_read(fd, phrases, maxpwdfilesize); pr_close(fd); if (nb == 0) { fprintf(stderr,"password file contains no data\n"); port_free(phrases); return null; } if (
slot) { tokenname = pk11_gettokenname(
slot); if (tokenname) { tokenlen = port_strlen(tokenname); } } i = 0; do { int startphrase = i; int phraselen; /* handle the windows eol case */ while (phrases[i] != '\r' && phrases[i] != '\n' && i < nb) i++; /* terminate passphrase */ phrases[i++] = '\0'; /* ...
...And 2 more matches
NSS Tools certutil
unless specified otherwise the default token is an internal
slot (specifically, internal
slot 2).
... this
slot can also be explicitly named with the string "internal".
... an internal
slots is a virtual
slot maintained in software, rather than a hardware device.
...And 2 more matches
Bytecodes
the space for a single javascript value is called a "
slot", so the categories are: argument
slots: holds the actual arguments passed to the current frame.
... local
slots: holds the local variables used by the current code.
... expression
slots: holds the temporary space that you need to calculate expressions on a stack.
...And 2 more matches
Functions
when a flat closure is created, all the closed-on values are copied from the stack into reserved
slots of the function object.
... to evaluate a name, instead of walking the scope chain, we just take the value from the reserved
slot.
...jsop_{get,call}upvar (in algol-like functions only, i think?) todo d
slot instructions.
...And 2 more matches
Exact Stack Rooting
gcpointers that reside in gcthings fall into one of these cases: storage in a normal property, storage in a reserved
slot, or storage with js_{get|set}private.
...the private field is frequently used to store things that are not gcpointers, so the gc cannot automatically handle this
slot.
... this means it must be manually traced by the object's owner: this is both fragile and more expensive than using an extra reserved
slot, or even just putting a new property on the object.
...And 2 more matches
JIT Optimization Outcomes
notfixed
slot the property being accessed is not stored at a known location in the object.
... inconsistentfixed
slot the property being accessed is not stored at a known location in the object.
... this can occur if the operation is polymorphic on different object types and one or more of the object types contain the property at a different
slot than the others.
...And 2 more matches
WebIDL bindings
[storein
slot] used to flag attributes that can be gotten very quickly from the js object by the jit.
... so for example, given this idl: interface myinterface { [pure, storein
slot] attribute long myattribute; }; the c++ implementation of myinterface would clear the cached value by calling mozilla::dom::myinterface_binding::clearcachedmyattributevalue(cx, this).
... unlike [storein
slot] this does not cause the getter to be eagerly called at js wrapper creation time; the caching is lazy.
...And 2 more matches
NSS 3.55 release notes
pk11_findcertin
slot is added.
... with this function, a given
slot can be queried with a der-encoded certificate, providing performance and usability improvements over other mechanisms.
... bug 1649633 - add pk11_findcertin
slot to search a given
slot for a der-encoded certificate.
... bug 1651520 - fix
slotlock race in nsc_gettokeninfo.
NSS Sample Code sample2
*/ #include "nss.h" #include "pk11pub.h" /* example key & iv */ unsigned char gkey[] = {0xe8, 0xa7, 0x7c, 0xe2, 0x05, 0x63, 0x6a, 0x31}; unsigned char giv[] = {0xe4, 0xbb, 0x3b, 0xd3, 0xc3, 0x71, 0x2e, 0x58}; int main(int argc, char **argv) { ck_mechanism_type ciphermech; pk11
slotinfo*
slot = null; pk11symkey* symkey = null; secitem* secparam = null; pk11context* enccontext = null; secitem keyitem, ivitem; secstatus rv, rv1, rv2; unsigned char data[1024], buf1[1024], buf2[1024]; int i, result_len, tmp1_outlen, tmp2_outlen; /* initialize nss * if your application code has already initial...
...if you choose something else, then data padding is the * application's responsibility */ ciphermech = ckm_des_cbc_pad;
slot = pk11_getbest
slot(ciphermech, null); /*
slot = pk11_getinternalkey
slot(); is a simpler alternative but in * theory, it *may not* return the optimal
slot for the operation.
... for * des ops, internal
slot is typically the best
slot */ if (
slot == null) { fprintf(stderr, "unable to find security device (err %d)\n", pr_geterror()); goto out; } /* nss passes blobs around as secitems.
...we use pk11_originunwrap * to indicate the key was unwrapped - which is what should be done * normally anyway - using raw keys isn't a good idea */ symkey = pk11_importsymkey(
slot, ciphermech, pk11_originunwrap, cka_encrypt, &keyitem, null); if (symkey == null) { fprintf(stderr, "failure to import key into nss (err %d)\n", pr_geterror()); goto out; } /* set up the pkcs11 encryption paramters.
NSS Sample Code sample3
3: hashing, mac /* * demonstration program for hashing and macs */ #include <iostream.h> #include "pk11pub.h" #include "nss.h" static void printdigest(unsigned char *digest, unsigned int len) { int i; cout << "length: " << len << endl; for(i = 0;i < len;i++) printf("%02x ", digest[i]); cout << endl; } /* * main */ int main(int argc, const char *argv[]) { int status = 0; pk11
slotinfo *
slot = 0; pk11symkey *key = 0; pk11context *context = 0; unsigned char data[80]; unsigned char digest[20]; /*is there a way to tell how large the output is?*/ unsigned int len; secstatus s; /* initialize nss * if your application code has already initialized nss, you can skip it * here.
... * this code uses the simplest of the init functions, which does not * require a nss database to exist */ nss_nodb_init("."); /* get a
slot to use for the crypto operations */
slot = pk11_getinternalkey
slot(); if (!
slot) { cout << "getinternalkey
slot failed" << endl; status = 1; goto done; } /* * part 1 - simple hashing */ cout << "part 1 -- simple hashing" << endl; /* initialize data */ memset(data, 0xbc, sizeof data); /* create a context for hashing (digesting) */ context = pk11_createdigestcontext(sec_oid_md5); if (!context) { cout << "createdigestcontext failed" << endl; goto done; } s = pk11_digestbegin(context); if (s != secsuccess) { cout << "digestbegin failed" << endl; goto done; } s = pk11_digestop(context, data, sizeo...
...= secsuccess) { cout << "digestfinal failed" << endl; goto done; } /* print digest */ printdigest(digest, len); pk11_destroycontext(context, pr_true); context = 0; /* * part 2 - hashing with included secret key */ cout << "part 2 -- hashing with included secret key" << endl; /* initialize data */ memset(data, 0xbc, sizeof data); /* create a key */ key = pk11_keygen(
slot, ckm_generic_secret_key_gen, 0, 128, 0); if (!key) { cout << "create key failed" << endl; goto done; } cout << (void *)key << endl; /* create parameters for crypto context */ /* note: params must be provided, but may be empty */ secitem noparams; noparams.type = sibuffer; noparams.data = 0; noparams.len = 0; /* create context using the same
slot as the key */ // context = pk...
...*/ if (key) pk11_freesymkey(key); if (
slot) pk11_free
slot(
slot); return status; } ...
NSS Sample Code sample5
*pubkey = null; certsubjectpublickeyinfo *spki = null; seckeyprivatekey *pvtkey = null; int modulus_len, i, outlen; char *buf1 = null; char *buf2 = null; char *pubkstr = base64_encoded_subjectpublickeyinfo; char *pvtkstr = base64_encoded_privatekeyinfo; secitem der; secitem nickname; pk11
slotinfo *
slot = null; /* initialize nss * you need to explicitly authenticate to the internal token if you use * nss_init insteadf of nss_nodb_init * invoke this after getting the internal token handle * pk11_authenticate(
slot, pr_false, null); */ rv = nss_nodb_init("."); if (rv != secsuccess) { fprintf(stderr, "nss initialization failed (err %d)\n", ...
...pr_geterror()); goto cleanup; } /* get internal
slot */
slot = pk11_getinternalkey
slot(); if (
slot == null) { fprintf(stderr, "couldn't find
slot (err %d)\n", pr_geterror()); goto cleanup; } rv = atob_convertasciitoitem(&der, pubkstr); if (rv!= secsuccess) { fprintf(stderr, "atob_convertasciitoitem failed %d\n", pr_geterror()); goto cleanup; } spki = seckey_decodedersubjectpublickeyinfo(&der); secitem_freeitem(&der, pr_false); pubkey = seckey_extractpublickey(spki); if (pubkey == null) { fprintf(stderr, "couldn't extract public key (err %d)\n", pr_geterror()); goto cleanup; } modulus_len = seckey_publickeystrength(pubkey); fprintf(stderr, "public key modulus %d bytes\n", modulus_len); buf1 = (char *)malloc(modulus_len); bu...
... * publicvalue arg (4th) can be null for rsa key - i think it is even * ignored */ pk11_importderprivatekeyinfoandreturnkey(
slot, &der, null, null, pr_false, pr_true, ku_all, &pvtkey, null); secitem_freeitem(&der, pr_false); if (pvtkey == null) { fprintf(stderr, "couldn't extract private key (err %d)\n", pr_geterror()); goto cleanup; } /* clear buf1 */ for (i=0;i<modulus_len;i++) { buf1[i]= '\0'; } /* decr...
... pr_geterror()); goto cleanup; } fprintf(stderr, "result of decryption, outlen = %d\n", outlen); fprintf(stderr, "result of decryption, buf = \n%s\n", buf1); cleanup: if (cert) cert_destroycertificate(cert); if (pubkey) seckey_destroypublickey(pubkey); if (pvtkey) seckey_destroyprivatekey(pvtkey); if (spki) seckey_destroysubjectpublickeyinfo(spki); if (
slot) pk11_free
slot(
slot); if (buf1) free(buf1); if (buf2) free(buf2); exit(1); } ...
gtstd.html
figure 2.1 relationships among nss libraries, cryptographic modules,
slots, and tokens as shown in the figure, ssl communicates with pkcs #11 modules through the pkcs #11 interface.
... a pkcs #11 module always has one or more
slots, which may be implemented as physical hardware
slots in some form of physical reader (for example, for smart cards) or as conceptual
slots in software.
... each
slot for a pkcs #11 module can in turn contain a token, which is the hardware or software device that actually provides cryptographic services and optionally stores certificates and keys.
...the security module database tool allows you to add and delete pkcs #11 modules, change passwords, set defaults, list module contents, enable or disable
slots, enable or disable fips-140-1 compliance, and assign default providers for cryptographic operations.
ssltyp.html
types and structures managing secitem memory types and structures these types and structures are described here: certcertdbhandle certcertificate pk11
slotinfo secitem seckeyprivatekey secstatus additional types used by a single function only are described with the function's entry in each chapter.
...<a name="> many of the structures presented here (certcertdbhandle, certcertificate, pk11
slotinfo, and seckeyprivatekey) are opaque--that is, they are types defined as structures (for example, certcertdbhandlestr) that may change in future releases of network security services.
... pk11
slotinfo an opaque structure representing a physical or logical pkcs #11
slot.
... syntax #include <pk11expt.h> typedef struct pk11
slotinfostr pk11
slotinfo; secitem a structure that points to other structures.
NSS tools : signtool
netscape internal pkcs #11 module (this module is internally loaded)
slots: 2
slots attached status: loaded
slot: communicator internal cryptographic services version 4.0 token: communicator generic crypto svcs
slot: communicator user private key and certificate services token: communicator certificate db 2.
... cryptos (this is an external module) dll name: core32
slots: 1
slots attached status: loaded
slot: litronic 210 token: ----------------------------------------------- using netscape signing tool and a smart card to sign files the signtool command normally takes an argument of the -k option to specify a signing certificate.
...netscape internal pkcs #11 module (this module is internally loaded)
slots: 2
slots attached status: loaded
slot: communicator internal cryptographic services version 4.0 token: communicator generic crypto svcs
slot: communicator user private key and certificate services token: communicator certificate db ----------------------------------------------- this unix example shows that netscape signing tool is using a fips-140-1 module: ...
...netscape internal fips pkcs #11 module (this module is internally loaded)
slots: 1
slots attached status: loaded
slot: netscape internal fips-140-1 cryptographic services token: communicator certificate db ----------------------------------------------- see also signver (1) the nss wiki has information on the new database design and how to configure applications to use it.
JSClass.flags
mxr id search for jsclass_emulates_undefined jsclass_has_reserved_
slots(n) indicates that instances of this class have n reserved
slots.
...the
slots initially contain unspecified valid jsval values.
... they can be accessed using js_getreserved
slot and js_setreserved
slot.
... (the jsclass.reserve
slots hook also allocates reserved
slots to objects.) mxr id search for jsclass_has_reserved_
slots jsclass_global_flags this flag is only relevant for the class of an object that is used as a global object.
Text - Web APIs
text.assigned
slot read only returns the html
slotelement object associated with the element.
... properties included from
slotable the text interface includes the following property, defined on the
slotable mixin.
...
slotable.assigned
slot read only returns a html
slotelement representing the <
slot> the node is inserted in.
... added the assigned
slot property.
MMgc - Archive of obsolete content
1 is the set
slot method in the avm- and some assembly code in the avm+.
...on the other hand if the black is a huge array and only a couple
slots had new objects written to them we are wasting time by marking the whole thing.
...here you divide memory into "cards" and when a white object is written to a black object you mark the card containing the
slot the pointer to the white object was written to.
NSS 3.45 release notes
new in nss 3.45 new functionality new functions in pk11pub.h: pk11_findrawcertswithsubject - finds all certificates on the given
slot with the given subject distinguished name and returns them as der bytes.
... bug 1550579 - replace arm32 curve25519 implementation with one from fiat-crypto bug 1551129 - support static linking on windows bug 1552262 - expose a function pk11_findrawcertswithsubject for finding certificates with a given subject on a given
slot bug 1546229 - add ipsec ike support to softoken bug 1554616 - add support for the elbrus lcc compiler (<=1.23) bug 1543874 - expose an external clock for ssl this adds new experimental functions: ssl_settimefunc, ssl_createantireplaycontext, ssl_setantireplaycontext, and ssl_releaseantireplaycontext.
...only relevant for clients that might have copied the unit test code verbatim bug 1550022 - ensure nssutil3 gets built on android bug 1528174 - chacha20poly1305 should no longer modify output length on failure bug 1549382 - don't leak in pkcs#11 modules if c_get
slotinfo() returns error bug 1551041 - fix builds using gcc < 4.3 on big-endian architectures bug 1554659 - add versioning to openbsd builds to fix link time errors using nss bug 1553443 - send session ticket only after handshake is marked as finished bug 1550708 - fix gyp scripts on solaris sparc so that libfreebl_64fpu_3.so builds bug 1554336 - optimize away unneeded loop in mpi.c bug 155...
NSS Sample Code Utilities_1
in the single password * case a line would just have the password whereas in the multi- * password variant they could be of the form * * token_1_name:its_password * token_2_name:its_password * */ char *filepasswd(pk11
slotinfo *
slot, prbool retry, void *arg) { char* phrases, *phrase; prfiledesc *fd; print32 nb; char *pwfile = arg; int i; const long maxpwdfilesize = 4096; char* tokenname = null; int tokenlen = 0; if (!pwfile) return 0; if (retry) { return 0; /* no good retrying - the file contents will be the same */ } phrases = port_zalloc(maxpwdfi...
.../ } fd = pr_open(pwfile, pr_rdonly, 0); if (!fd) { fprintf(stderr, "no password file \"%s\" exists.\n", pwfile); port_free(phrases); return null; } nb = pr_read(fd, phrases, maxpwdfilesize); pr_close(fd); if (nb == 0) { fprintf(stderr,"password file contains no data\n"); port_free(phrases); return null; } if (
slot) { tokenname = pk11_gettokenname(
slot); if (tokenname) { tokenlen = port_strlen(tokenname); } } i = 0; do { int startphrase = i; int phraselen; /* handle the windows eol case */ while (phrases[i] != '\r' && phrases[i] != '\n' && i < nb) i++; /* terminate passphrase */ phrases[i++] = '\0'; /* ...
...clean up any eol before the start of the next passphrase */ while ( (i<nb) analyze="" char="" current="" getmodulepassword="" if="" int="" now="" passphrase="" phrase="&phrases[startphrase];" phraselen="" pk11
slotinfo="" pwdata="=" pwdata-="" retry="" return="" secupwdata="" the="" void="" while="">source != pw_none) { pr_fprintf(pr_stderr, "incorrect password/pin entered.\n"); return null; } switch (pwdata->source) { case pw_none: sprintf(prompt, "enter password or pin for \"%s\":", pk11_gettokenname(
slot)); return getpassword(stdin, stdout, prompt, checkpassword); case pw_fromfile: pw = filepasswd(
slot, retry, pwdata->data); pwdata->source = pw_plaintext; pwdata->data = pl_strdup(pw); ...
FC_GetTokenInfo
syntax ck_rv fc_gettokeninfo(ck_
slot_id
slotid, ck_token_info_ptr pinfo); parameters fc_gettokeninfo has two parameters:
slotid the id of the token's
slot pinfo points to a ck_token_info structure description fc_gettokeninfo returns information about the token in the specified
slot.
... ckr_
slot_id_invalid the specified
slot number is out of the defined range of values.
... see also fc_get
slotinfo, nsc_gettokeninfo ...
NSS tools : certutil
unless specified otherwise the default token is an internal
slot.
... $ certutil -k -d sql:/home/my/sharednssdb certutil: checking token "nss certificate db" in
slot "nss user private key and certificate services " < 0> rsa 455a6673bde9375c2887ec8bf8016b3f9f35861d thawte freemail member's thawte consulting (pty) ltd.
... $ certutil -u -d sql:/home/my/sharednssdb
slot: nss user private key and certificate services token: nss certificate db
slot: nss internal cryptographic services token: nss generic crypto services adding certificates to the database existing certificates or certificate requests can be added manually to the certificate database, even if they were generated elsewhere.
NSS Tools pk12util
synopsis pk12util -i p12file [-h tokenname] [-v] [common-options] or pk12util -o p12file -n certname [-c keycipher] [-c certcipher] [-m | --key_len keylen] [-n | --cert_key_len certkeylen] [common-options] or pk12util -l p12file [-h tokenname] [-r] [common-options] where [common-options] = [-d dir] [-p dbprefix] [-k
slotpasswordfile | -k
slotpassword] [-w p12filepasswordfile | -w p12filepassword] syntax to run the pkcs #12 tool, type ther command pk12util option [arguments] where option and arguments are combinations of the options and arguments listed in the following section.
... -h tokenname specify the name of the token to import into or export from -v enable debug logging when importing -k
slotpasswordfile specify the text file containing the
slot's password -k
slotpassword specify a
slot's password -w p12filepasswordfile specify the text file containing the pkcs 12 file's password -w p12filepassword specify the pkcs 12 file's password -c key-cipher specify the key encryption algorithm -c certcipher specify the pfx encryption algorithm -m | --key_len keylen specify the d...
... error codes pk12util can return the following values: 0 - no error 1 - user cancelled 2 - usage error 6 - nls init error 8 - certificate db open error 9 - key db open error 10 - file initialization error 11 - unicode conversion error 12 - temporary file creation error 13 - pkcs11 get
slot error 14 - pkcs12 decoder start error 15 - error read from import file 16 - pkcs12 decode error 17 - pkcs12 decoder verify error 18 - pkcs12 decoder validate bags error 19 - pkcs12 decoder import bags error 20 - key db conversion version 3 to version 2 error 21 - cert db conversion version 7 to version 5 error 22 - cert and key dbs patch error 23 - get default cert db error 24 - find cert by nick...
JSAPI User Guide
to get extra argv
slots, use jsfunctionspec.extra.
...if these values must not be accessible from javascript, use reserved
slots instead.
... to protect the compiled script from garbage collection, the application creates a compiled script object by calling js_newscriptobject and makes that object gc-reachable using js_setproperty, js_setreserved
slot, js_add*root, or some other function.
JSFastNative
vp jsval * the arguments, including the this argument, the return-value
slot, and the callee function object are accessible through this pointer using macros described below.
...(the return value and the callee are stored in the same stack
slot.) js_this(cx, vp) returns the this argument as a jsval, or jsval_null on error.
... js_rval(cx, vp) returns the jsval that is currently in the return-value
slot.
JSObjectOps.setProto
these callbacks share the same type, jssetobject
slotop.
... syntax typedef jsbool (*jssetobject
slotop)(jscontext *cx, jsobject *obj, uint32
slot, jsobject *pobj); name type description cx jscontext * pointer to the js context in which the object's prototype or parent is being modified.
...
slot uint32 the index of the
slot being modified: js
slot_proto for the jsobjectops.setproto callback, and js
slot_parent for the jsobjectops.setparent callback.
Element - Web APIs
element.
slot returns the name of the shadow dom
slot the element is inserted in.
... properties included from
slotable the element interface includes the following property, defined on the
slotable mixin.
...
slotable.assigned
slotread only returns a html
slotelement representing the <
slot> the node is inserted in.
Falsy - MDN Web Docs Glossary: Definitions of Web-related terms
"" empty string value null null - the absence of any value undefined undefined - the primitive value nan nan - not a number objects are falsy if and only if they have the [[ishtmldda]] internal
slot.
... this
slot only exists in document.all and cannot be set using javascript.
NSS_3.11.10_release_notes.html
bug 291384: certutil -k behavior doesn't match usage bug 374247: modutil -disable command not disabling modules'
slots bug 384459: certification path validation fails when authority key identifier extension contains key identifier bug 385946: can't import certificate into cert database in fips mode (certutil).
...ficate to nss bug 431381: add network solutions certificate authority root to nss bug 431621: add diginotar root ca root to nss bug 431772: add network solutions and diginotar root certs to nss bug 442912: fix nssckbi version number on 3.11 branch bug 443045: fix pk11_generatekeypair for ecc keys on the 3.11 branch bug 444850: nss misbehaves badly in the presence of a disabled pkcs#11
slot bug 462948: lint warnings for source files that include keythi.h documentation for a list of the primary nss documentation pages on mozilla.org, see nss documentation.
NSS_3.12.1_release_notes.html
pk11_getall
slotsforcert (see pk11pub.h) pk11_getall
slotsforcert returns all the
slots that a given certificate exists on, since it's possible for a cert to exist on more than one pkcs#11 token.
...on failure in libpkix at shutdown bug 440062: incorrect list element count in pkix_list_appenditem function bug 442618: eliminate dead function cert_certpackagetype bug 443755: extra semicolon in pkm_tlskeyandmacderive makes conditional code unconditional bug 443760: extra semicolon in seqdatabase makes static analysis tool suspicious bug 448323: certutil -k doesn't report the token and
slot names for found keys bug 448324: ocsp checker returns incorrect error code on request with invalid signing cert bug 449146: remove dead libsec function declarations bug 453227: installation of pem-encoded certificate without trailing newline fails documentation for a list of the primary nss documentation pages on mozilla.org, see nss documentation.
NSS 3.12.4 release notes
new functions in the nss shared library: pk11_isinternalkey
slot (see pk11pub.h) secmod_opennew
slot (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.
...bug 504408: pkix_pl_crldp_create will always fail if dp->distpointtype != generalname bug 504456: exploitable heap overflow in nss shell expression (filename globbing) parsing bug 505559: need function to identify the one and only default internal private key
slot.
NSS_3.12_release_notes.html
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 3409...
...bug 337088: coverity 405, pk11_paramtoalgid() in mozilla/security/nss/lib/pk11wrap/pk11mech.c bug 339907: oaep_xor_with_h1 allocates and leaks sha1cx bug 341122: coverity 633 sftk_destroy
slotdata uses
slot->
slotlock then checks it for null bug 351140: coverity 995, potential crash in ecgroup_fromnameandhex bug 362278: lib/util includes header files from other nss directories bug 228190: remove unnecessary nss_enable_ecc defines from manifest.mn bug 412906: remove sha.c and sha.h from lib/freebl bug 353543: valgrind uninitialized memory read in nsspkiobjectcollection_addinstances bug 3...
NSS Sample Code sample4
* in a real app, this function should obtain the password using secure means * such as prompting an operator, or retrieving it over a secure communication * channel */ char *passwdcb(pk11
slotinfo *info, prbool retry, void *arg); int main(int argc, char **argv) { secstatus rv; certcertificate *cert = null; seckeypublickey *pubkey = null; seckeyprivatekey *pvtkey = null; int modulus_len, i, outlen; char *buf1 = null; char *buf2 = null; /* initialize nss */ pk11_setpasswordfunc(passwdcb); rv = nss_init("."); ...
...nup; } fprintf(stderr, "result of decryption, outlen = %d\n", outlen); fprintf(stderr, "result of decryption, buf = \n%s\n", buf1); exit(0); cleanup: if (cert) cert_destroycertificate(cert); if (pubkey) seckey_destroypublickey(pubkey); if (pvtkey) seckey_destroyprivatekey(pvtkey); if (buf1) free(buf1); if (buf2) free(buf2); exit(1); } char *passwdcb(pk11
slotinfo *info, prbool retry, void *arg) { if (!retry) return pl_strdup("test"); else return null; } ...
nss tech note2
to enable this mode, set: nspr_log_modules=nss_mod_log:1 nspr_log_file=<logfile> the output format is: osthreadid[nsprthreadid]: c_xxx osthreadid[nsprthreadid]: rv = 0xyyyyyyyy for example, 1024[805ef10]: c_initialize 1024[805ef10]: rv = 0x0 1024[805ef10]: c_getinfo 1024[805ef10]: rv = 0x0 1024[805ef10]: c_get
slotlist 1024[805ef10]: rv = 0x0 2.
...osthreadid[nsprthreadid]: argn = 0xaaaaaaaa osthreadid[nsprthreadid]: rv = 0xyyyyyyyy for example, 1024[805ef10]: c_initialize 1024[805ef10]: pinitargs = 0x4010c938 1024[805ef10]: rv = 0x0 1024[805ef10]: c_getinfo 1024[805ef10]: pinfo = 0xbffff340 1024[805ef10]: rv = 0x0 1024[805ef10]: c_get
slotlist 1024[805ef10]: tokenpresent = 0x0 1024[805ef10]: p
slotlist = 0x0 1024[805ef10]: pulcount = 0xbffff33c 1024[805ef10]: *pulcount = 0x2 1024[805ef10]: rv = 0x0 note that when a pkcs #11 function takes a pointer argument for which it will set a value (c_get
slotlist above), this mode will display the value upon return.
FC_CloseAllSessions
syntax ck_rv fc_closeallsessions( ck_
slot_id
slotid ); parameters
slotid [in] the id of the token's
slot.
... description fc_closeallsessions closes all sessions between an application and the token in the
slot with the id
slotid.
FC_EncryptInit
return value ckr_ok
slot information was successfully copied.
... ckr_
slot_id_invalid the specified
slot number is out of the defined range of values.
FC_InitToken
syntax ck_rv fc_inittoken( ck_
slot_id
slotid, ck_char_ptr ppin, ck_ulong ulpinlen, ck_char_ptr plabel ); parameters fc_inittoken() has the following parameters:
slotid the id of the token's
slot ppin the password of the security officer (so) ulpinlen the length in bytes of the so password plabel points to the label of the token, which must be padded with spaces to 32 bytes and not be null-terminated description fc_inittoken() initializes a brand new token or re-initializes a token that was initialized before.
... ckr_
slot_id_invalid:
slot id is invalid.
FC_OpenSession
syntax ck_rv fc_opensession( ck_
slot_id
slotid, ck_flags flags, ck_void_ptr papplication, ck_notify notify, ck_session_handle_ptr phsession ); parameters fc_opensession has the following parameters:
slotid [in] the id of the token's
slot.
... description fc_opensession opens a session between an application and the token in the
slot with the id
slotid.
NSS reference
random number generation this api consists of the two routines used for pseudorandom number generation -- pk11_generaterandomon
slot and pk11_generaterandom -- and the two routines used for seeding pseudorandom number generation -- pk11_seedrandom and pk11_randomupdate.
... secmod_loadusermodule secmod_unloadusermodule secmod_closeuserdb secmod_openuserdb pk11_findcertfromnickname pk11_findkeybyanycert pk11_get
slotname pk11_gettokenname pk11_ishw pk11_ispresent pk11_isreadonly pk11_setpasswordfunc ssl functions based on "ssl functions" in the ssl reference and "ssl functions" and "deprecated ssl functions" in nss public functions.
OLD SSL Reference
types and structures certcertdbhandle certcertificate pk11
slotinfo secitem seckeyprivatekey secstatus managing secitem memory secitem_freeitem secitem_zfreeitem chapter 4 ssl functions this chapter describes the core ssl functions.
... pk11_findcertfromnickname pk11_findkeybyanycert pk11_get
slotname pk11_gettokenname pk11_ishw pk11_ispresent pk11_isreadonly pk11_setpasswordfunc chapter 8 nss and ssl error codes nss error codes are retrieved using the nspr function pr_geterror.
Utility functions
ex mxr 3.12 and later secmod_cancelwait mxr 3.9.3 and later secmod_candeleteinternalmodule mxr 3.5 and later secmod_createmodule mxr 3.4 and later secmod_deletemodule mxr 3.4 and later secmod_findmodule mxr 3.4 and later secmod_find
slot mxr 3.4 and later secmod_freemodulespeclist mxr 3.4 and later secmod_getdbmodulelist mxr 3.9 and later secmod_getdeadmodulelist mxr 3.9 and later secmod_getmodulespeclist mxr 3.4 and later secmod_hasremovable
slots mxr 3.9.3 and later ...
... secmod_ismodulepresent mxr 3.2 and later secmod_loadmodule mxr 3.4 and later secmod_loadusermodule mxr 3.4 and later secmod_lookup
slot mxr 3.2 and later secmod_pubcipherflagstointernal mxr 3.4 and later secmod_pubmechflagstointernal mxr 3.4 and later secmod_unloadusermodule mxr 3.4 and later secmod_updatemodule mxr 3.4 and later secmod_update
slotlist mxr 3.9.3 and later secmod_waitforanytokenevent mxr 3.9.3 and later secoid_addentry mxr 3.10 and later secoid_comparealgorithmid mxr ...
NSS_3.12.3_release_notes.html
41321: tolerate incorrect encoding of dsa signatures in ssl 3.0 handshakes bug 444404: libpkix reports unknown issuer for nearly all certificate errors bug 452391: certutil -k incorrectly reports ec private key as an orphan bug 453234: support for seed cipher suites to tls rfc4010 bug 453364: improve pk11_cipherop error reporting (was: pk11_createcontextbysymkey returns null bug 456406:
slot list leaks in symkeyutil bug 461085: rfe: export function cert_comparecerts bug 462293: crash on fork after softoken is dlclose'd on some unix platforms in nss 3.12 bug 463342: move some headers to freebl/softoken bug 463452: sql db creation does not set files protections to 0600 bug 463678: need to add rpath to 64-bit libraries on hp-ux bug 464088: option to build nss without dbm (ha...
... bug 464406: fix signtool regressions bug 465270: uninitialised value in devutil.c::create_object() bug 465273: dead assignment in devutil.c::nss
slotarray_clone() bug 465926: during import of pkcs #12 files bug 466180: ssl_configmpserversidcache with default parameters fails on {net bug 466194: cert_decodetruststring should take a const char * input trusts string.
GCIntegration - SpiderMonkey Redirect 1
it's better to store them in reserved
slots, since those will automatically be traced if the object is native.
...we will need to handle pointers to array
slots and string characters specially, since those may actually be pointers into the middle of gc things (inline
slots or inline chars).
JS_LeaveLocalRootScopeWithResult
otherwise, the value is stored in an internal per-jscontext
slot.
... this
slot is rooted, but the value will eventually be overwritten by some other operation, and it is very difficult to figure out exactly when this will happen—or more to the point, guarantee that it won't happen in the time it takes some specific chunk of code to run.
JS_NewGlobalObject
but this creates a problem for consumers that need to set
slots on the global to put it in a consistent state.
... this api provides a way for consumers to set
slots atomically (immediately after the global is created), before any debugger hooks are fired.
Examine and edit HTML - Firefox Developer Tools
if a shadow dom contains a "
slotted" element (an element with a
slot attribute after it has been inserted inside a <
slot> element — see adding flexibility with
slots for an explanation of how these are used), the "
slotted" element will be shown inside its corresponding <
slot> element, with a "reveal" link alongside it.
... clicking the "reveal" link will highlight the element with the
slot attribute as it exists outside the shadow dom this is very useful when you've got a <
slot> element and you can't find the source of its content.
Web APIs
lement htmlmenuelement htmlmenuitemelement htmlmetaelement htmlmeterelement htmlmodelement htmlolistelement htmlobjectelement htmloptgroupelement htmloptionelement htmloptionscollection htmlorforeignelement htmloutputelement htmlparagraphelement htmlparamelement htmlpictureelement htmlpreelement htmlprogresselement htmlquoteelement htmlscriptelement htmlselectelement htmlshadowelement html
slotelement htmlsourceelement htmlspanelement htmlstyleelement htmltablecaptionelement htmltablecellelement htmltablecolelement htmltableelement htmltablerowelement htmltablesectionelement htmltemplateelement htmltextareaelement htmltimeelement htmltitleelement htmltrackelement htmlulistelement htmlunknownelement htmlvideoelement hashchangeevent headers history hkdfparams hmacimportparams hmackeygen...
...ireference svgunittypes svguseelement svgvkernelement svgviewelement svgzoomandpan screen screenorientation scriptprocessornode scrolltooptions securitypolicyviolationevent selection sensor sensorerrorevent serviceworker serviceworkercontainer serviceworkerglobalscope serviceworkermessageevent serviceworkerregistration serviceworkerstate shadowroot sharedworker sharedworkerglobalscope
slottable sourcebuffer sourcebufferlist speechgrammar speechgrammarlist speechrecognition speechrecognitionalternative speechrecognitionerror speechrecognitionerrorevent speechrecognitionevent speechrecognitionresult speechrecognitionresultlist speechsynthesis speechsynthesiserrorevent speechsynthesisevent speechsynthesisutterance speechsynthesisvoice staticrange stereopa...
:host() - CSS: Cascading Style Sheets
to change preferences in firefox, visit about:config.ie no support noopera full support 41safari full support 10notes full support 10notes notes certain css selectors do not work (:host > .local-child) and styling
slotted content (::
slotted) is buggy.webview android full support 54chrome android full support 54firefox android full support 63 full support 63 no support 61 — 63disabled disabled from version 6...
...to change preferences in firefox, visit about:config.opera android full support 41safari ios full support 10notes full support 10notes notes certain css selectors do not work (:host > .local-child) and styling
slotted content (::
slotted) is buggy.samsung internet android full support 6.0legend full support full support no support no supportsee implementation notes.see implementation notes.user must explicitly enable this feature.user must explicitly enable this f...
HTML documentation index - HTML: Hypertext Markup Language
28
slot global attributes, html, reference the
slot global attribute assigns a
slot in a shadow dom shadow tree to an element: an element with a
slot attribute is assigned to the
slot created by the <
slot> element whose name attribute's value matches that
slot attribute's value.
... 191 <
slot> element, html, html web components, reference, web components, shadow dom,
slot the html <
slot> element—part of the web components technology suite—is a placeholder inside a web component that you can fill with your own markup, which lets you create separate dom trees and present them together.
Array() constructor - JavaScript
arraylength if the only argument passed to the array constructor is an integer between 0 and 232-1 (inclusive), this returns a new javascript array with its length property set to that number (note: this implies an array of arraylength empty
slots, not
slots with actual undefined values).
...an array with its length property set to that number and the array elements are empty
slots.
Array.prototype.fill() - JavaScript
if the first parameter is an object, each
slot in the array will reference that object.
... // [1, 4, 3] [1, 2, 3].fill(4, 1, 1) // [1, 2, 3] [1, 2, 3].fill(4, 3, 3) // [1, 2, 3] [1, 2, 3].fill(4, -3, -2) // [4, 2, 3] [1, 2, 3].fill(4, nan, nan) // [1, 2, 3] [1, 2, 3].fill(4, 3, 5) // [1, 2, 3] array(3).fill(4) // [4, 4, 4] [].fill.call({ length: 3 }, 4) // {0: 4, 1: 4, 2: 4, length: 3} // a single object, referenced by each
slot of the array: let arr = array(3).fill({}) // [{}, {}, {}] arr[0].hi = "hi" // [{ hi: "hi" }, { hi: "hi" }, { hi: "hi" }] specifications specification ecmascript (ecma-262)the definition of 'array.prototype.fill' in that specification.
Array.of() - JavaScript
the difference between array.of() and the array constructor is in the handling of integer arguments: array.of(7) creates an array with a single element, 7, whereas array(7) creates an empty array with a length property of 7 (note: this implies an array of 7 empty
slots, not
slots with actual undefined values).
... array.of(7); // [7] array.of(1, 2, 3); // [1, 2, 3] array(7); // array of 7 empty
slots array(1, 2, 3); // [1, 2, 3] syntax array.of(element0[, element1[, ...[, elementn]]]) parameters elementn elements used to create the array.
JavaScript crypto - Archive of obsolete content
_rc5_flag = 0x1<<7; pkcs11_mech_sha1_flag = 0x1<<8; pkcs11_mech_md5_flag = 0x1<<9; pkcs11_mech_md2_flag = 0x1<<10; pkcs11_mech_random_flag = 0x1<<27; //random number generator pkcs11_pub_readable_cert_flag = 0x1<<28; //stored certs can be read off the token w/o logging in pkcs11_disable_flag = 0x1<<30; //tell mozilla to disable this
slot by default cipher flags reserved important for cryptomechanismflags 0x1<<11, 0x1<<12, ...
Visual-js game engine - Game development
online demo examples at : https://jsfiddle.net/user/zlatnaspirala/fiddles/ demo
slot mashine basic demo at : https://jsfiddle.net/zlatnaspirala/7d0d8v6d/ help about new 2d part - implementation of matter.js based typescript .
JS_SealObject
deep jsbool if true, seal all objects directly or indirectly reachable from obj's
slots.
The libmime module
its name must be of the form "<class>initialize", and it should initialize the various method
slots in the class as appropriate.
Document.all - Web APIs
conversion to boolean document.all is the only falsy object accessible to javascript, because it has the [[ishtmldda]] internal
slot.
The HTML DOM API - Web APIs
element htmllegendelement htmllinkelement htmlmapelement htmlmediaelement htmlmenuelement htmlmetaelement htmlmeterelement htmlmodelement htmlolistelement htmlobjectelement htmloptgroupelement htmloptionelement htmloutputelement htmlparagraphelement htmlparamelement htmlpictureelement htmlpreelement htmlprogresselement htmlquoteelement htmlscriptelement htmlselectelement html
slotelement htmlsourceelement htmlspanelement htmlstyleelement htmltablecaptionelement htmltablecellelement htmltablecolelement htmltableelement htmltablerowelement htmltablesectionelement htmltemplateelement htmltextareaelement htmltimeelement htmltitleelement htmltrackelement htmlulistelement htmlunknownelement htmlvideoelement deprecated html element interfaces htmlmarqueeel...
WEBGL_draw_buffers - Web APIs
.framebuffer, ext.color_attachment0_webgl, gl.texture_2d, tx[0], 0); gl.framebuffertexture2d(gl.framebuffer, ext.color_attachment1_webgl, gl.texture_2d, tx[1], 0); gl.framebuffertexture2d(gl.framebuffer, ext.color_attachment2_webgl, gl.texture_2d, tx[2], 0); gl.framebuffertexture2d(gl.framebuffer, ext.color_attachment3_webgl, gl.texture_2d, tx[3], 0); mapping the color attachments to draw buffer
slots that the fragment shader will write to using gl_fragdata: ext.drawbufferswebgl([ ext.color_attachment0_webgl, // gl_fragdata[0] ext.color_attachment1_webgl, // gl_fragdata[1] ext.color_attachment2_webgl, // gl_fragdata[2] ext.color_attachment3_webgl // gl_fragdata[3] ]); shader code that writes to multiple textures: <script type="x-shader/x-fragment"> #extension gl_ext_draw_buffers :...
WebXR performance guide - Web APIs
they can be thought of as being similar to the registers in a microprocessor: a limited set of memory storage
slots for specific kinds of data or use cases.
Pseudo-elements - CSS: Cascading Style Sheets
index of standard pseudo-elements ::after (:after) ::backdrop ::before (:before) ::cue ::cue-region ::first-letter (:first-letter) ::first-line (:first-line) ::grammar-error ::marker ::part() ::placeholder ::selection ::
slotted() ::spelling-error browser lowest version support of internet explorer 8.0 :pseudo-element 9.0 :pseudo-element ::pseudo-element firefox (gecko) 1.0 (1.0) :pseudo-element 1.0 (1.5) :pseudo-element ::pseudo-element opera 4.0 :pseudo-element 7.0 :pseudo-element ::pseudo-element safari (w...
CSS reference - CSS: Cascading Style Sheets
blockscroll-padding-block-endscroll-padding-block-startscroll-padding-bottomscroll-padding-inlinescroll-padding-inline-endscroll-padding-inline-startscroll-padding-leftscroll-padding-rightscroll-padding-topscroll-snap-alignscroll-snap-stopscroll-snap-typescrollbar-colorscrollbar-width::selectionselector()sepia()<shape>shape-image-thresholdshape-marginshape-outsidesize (@page)skew()skewx()skewy()::
slottedspeak-as (@counter-style)src (@font-face)steps()<string>@stylesetstyleset()@stylisticstylistic()suffix (@counter-style)@supports@swashswash()symbols (@counter-style)symbols()system (@counter-style)ttab-sizetable-layout:targettarget-counter()target-counters()target-text()text-aligntext-align-lasttext-combine-uprighttext-decorationtext-decoration-colortext-decoration-linetext-decoration-skip-inkt...
Event reference
show mouseevent html5 a contextmenu event was fired on (or bubbled to) an element that has a contextmenu attribute
slotchange event dom the node contents of a html
slotelement (<
slot>) have changed.
<input type="time"> - HTML: Hypertext Markup Language
appearance chrome and opera in chrome/opera the time control is simple, with
slots to enter hours and minutes in 12 or 24-hour format depending on operating system locale, and up and down arrows to increment and decrement the currently selected component.
HTML elements reference - HTML: Hypertext Markup Language
element description <
slot> the html <
slot> element—part of the web components technology suite—is a placeholder inside a web component that you can fill with your own markup, which lets you create separate dom trees and present them together.
Global attributes - HTML: Hypertext Markup Language
slot assigns a
slot in a shadow dom shadow tree to an element: an element with a
slot attribute is assigned to the
slot created by the <
slot> element whose name attribute's value matches that
slot attribute's value.
Inline elements - HTML: Hypertext Markup Language
5, use content categories instead): <a> <abbr> <acronym> <audio> (if it has visible controls) <b> <bdi> <bdo> <big> <br> <button> <canvas> <cite> <code> <data> <datalist> <del> <dfn> <em> <embed> <i> <iframe> <img> <input> <ins> <kbd> <label> <map> <mark> <meter> <noscript> <object> <output> <picture> <progress> <q> <ruby> <s> <samp> <script> <select> <
slot> <small> <span> <strong> <sub> <sup> <svg> <template> <textarea> <time> <u> <tt> <var> <video> <wbr> see also block-level elements html element reference display content categories block and inline layout in normal flow ...
Array.prototype.flat() - JavaScript
tening nested arrays const arr1 = [1, 2, [3, 4]]; arr1.flat(); // [1, 2, 3, 4] const arr2 = [1, 2, [3, 4, [5, 6]]]; arr2.flat(); // [1, 2, 3, 4, [5, 6]] const arr3 = [1, 2, [3, 4, [5, 6]]]; arr3.flat(2); // [1, 2, 3, 4, 5, 6] const arr4 = [1, 2, [3, 4, [5, 6, [7, 8, [9, 10]]]]]; arr4.flat(infinity); // [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] flattening and array holes the flat method removes empty
slots in arrays: const arr5 = [1, 2, , 4, 5]; arr5.flat(); // [1, 2, 4, 5] specifications specification ecmascript (ecma-262)the definition of 'array.prototype.flat' in that specification.
Array.prototype.length - JavaScript
when you extend an array by changing its length property, the number of actual elements increases; for example, if you set length to 3 when it is currently 2, the array now contains 3 elements, which causes the third element to be a non-iterable empty
slot.
Array - JavaScript
as a result, '2' and '02' would refer to two different
slots on the years object, and the following example could be true: console.log(years['2'] != years['02']) relationship between length and numerical properties a javascript array's length property and numerical properties are connected.
Promise - JavaScript
similarly, .catch() is really just a .then() without a
slot for handlefulfilled.
in operator - JavaScript
let mycar = {make: 'honda', model: 'accord', year: 1998} mycar.make = undefined 'make' in mycar // returns true let trees = new array('redwood', 'bay', 'cedar', 'oak', 'maple') trees[3] = undefined 3 in trees // returns true the in operator will return false for empty array
slots.
var - JavaScript
the corresponding name is also added to a list on the internal [[varnames]]
slot on the global environment record (which forms part of the global lexical environment).