The schannel Reference Manual

This is the schannel Reference Manual, generated automatically by Declt version 4.0 beta 2 "William Riker" on Mon Feb 26 17:50:29 2024 GMT+0.

Table of Contents


1 Introduction


2 Systems

The main system appears first, followed by any subsystem dependency.


2.1 schannel

CFFI wrapper to SChannel

Author

Frank James <>

License

MIT

Dependencies
  • cffi (system).
  • trivial-gray-streams (system).
Source

schannel.asd.

Child Components

3 Files

Files are sorted by type and then listed depth-first from the systems components trees.


3.1 Lisp


3.1.1 schannel/schannel.asd

Source

schannel.asd.

Parent Component

schannel (system).

ASDF Systems

schannel.


3.1.2 schannel/package.lisp

Source

schannel.asd.

Parent Component

schannel (system).

Packages

schannel.


3.1.3 schannel/constants.lisp

Dependency

package.lisp (file).

Source

schannel.asd.

Parent Component

schannel (system).

Internals

3.1.4 schannel/errors.lisp

Dependency

constants.lisp (file).

Source

schannel.asd.

Parent Component

schannel (system).

Internals

3.1.5 schannel/ffi.lisp

Dependency

errors.lisp (file).

Source

schannel.asd.

Parent Component

schannel (system).

Internals

3.1.6 schannel/certificates.lisp

Dependency

ffi.lisp (file).

Source

schannel.asd.

Parent Component

schannel (system).

Public Interface

enum-system-certificates (function).

Internals

3.1.7 schannel/classes.lisp

Dependency

certificates.lisp (file).

Source

schannel.asd.

Parent Component

schannel (system).

Internals

3.1.8 schannel/streams.lisp

Dependency

classes.lisp (file).

Source

schannel.asd.

Parent Component

schannel (system).

Public Interface
Internals

4 Packages

Packages are listed by definition order.


4.1 schannel

Source

package.lisp.

Use List
  • cffi.
  • common-lisp.
Public Interface
Internals

5 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


5.1 Public Interface


5.1.1 Ordinary functions

Function: enum-system-certificates (&optional store)

Enumerate all system certificates in the specified store. Defaults to store MY

Package

schannel.

Source

certificates.lisp.

Function: make-client-stream (base-stream hostname &key ignore-certificates-p client-certificate)

Make a client stream from the base stream.
BASE-STREAM ::= underlying networking stream.
HOSTNAME ::= target host that we are connecting to.
IGNORE-CERTIFICATES-P ::= if true, then the server certificate is not validated.
CLIENT-CERTIFICATE ::= if non-nil is a string naming a certificate that can be found in the certificate store.

Package

schannel.

Source

streams.lisp.

Function: make-server-stream (base-stream &key certificate require-client-certificate)

Make a server stream from the base stream.
BASE-STREAM ::= underlying networking stream.
CERTIFICATE ::= server certificate to use. Either a string, naming a certificate in the certificate store or nil in which case a temporary self-signed certificate is generated.
REQUIRE-CLIENT-CERTIFICATE ::= if true then clients are required to provide certificates.

Package

schannel.

Source

streams.lisp.


5.1.2 Standalone methods

Method: close ((stream schannel-stream) &key abort)
Source

streams.lisp.

Method: print-object ((cs client-stream) stream)
Source

streams.lisp.

Method: stream-element-type ((stream schannel-stream))
Source

streams.lisp.

Method: stream-listen ((stream schannel-stream))
Package

sb-gray.

Source

streams.lisp.

Method: stream-read-byte ((stream schannel-stream))
Package

sb-gray.

Source

streams.lisp.

Method: stream-read-sequence ((stream schannel-stream) seq start end &key)
Package

trivial-gray-streams.

Source

streams.lisp.

Method: stream-write-byte ((stream schannel-stream) integer)
Package

sb-gray.

Source

streams.lisp.

Method: stream-write-sequence ((stream schannel-stream) seq start end &key)
Package

trivial-gray-streams.

Source

streams.lisp.


5.1.3 Classes

Class: client-stream
Package

schannel.

Source

streams.lisp.

Direct superclasses

schannel-stream.

Direct methods

print-object.

Class: server-stream
Package

schannel.

Source

streams.lisp.

Direct superclasses

schannel-stream.


5.2 Internals


5.2.1 Constants

Constant: +asc-req-allocate-memory+
Package

schannel.

Source

constants.lisp.

Constant: +asc-req-allow-context-replay+
Package

schannel.

Source

constants.lisp.

Constant: +asc-req-allow-missing-bindings+
Package

schannel.

Source

constants.lisp.

Constant: +asc-req-allow-non-user-logons+
Package

schannel.

Source

constants.lisp.

Constant: +asc-req-allow-null-session+
Package

schannel.

Source

constants.lisp.

Constant: +asc-req-call-level+
Package

schannel.

Source

constants.lisp.

Constant: +asc-req-confidentiality+
Package

schannel.

Source

constants.lisp.

Constant: +asc-req-connection+
Package

schannel.

Source

constants.lisp.

Constant: +asc-req-datagram+
Package

schannel.

Source

constants.lisp.

Constant: +asc-req-delegate+
Package

schannel.

Source

constants.lisp.

Constant: +asc-req-extended-error+
Package

schannel.

Source

constants.lisp.

Constant: +asc-req-fragment-supplied+
Package

schannel.

Source

constants.lisp.

Constant: +asc-req-fragment-to-fit+
Package

schannel.

Source

constants.lisp.

Constant: +asc-req-identify+
Package

schannel.

Source

constants.lisp.

Constant: +asc-req-integrity+
Package

schannel.

Source

constants.lisp.

Constant: +asc-req-licensing+
Package

schannel.

Source

constants.lisp.

Constant: +asc-req-mutual-auth+
Package

schannel.

Source

constants.lisp.

Constant: +asc-req-no-token+
Package

schannel.

Source

constants.lisp.

Constant: +asc-req-proxy-bindings+
Package

schannel.

Source

constants.lisp.

Constant: +asc-req-replay-detect+
Package

schannel.

Source

constants.lisp.

Constant: +asc-req-sequence-detect+
Package

schannel.

Source

constants.lisp.

Constant: +asc-req-session-ticket+
Package

schannel.

Source

constants.lisp.

Constant: +asc-req-stream+
Package

schannel.

Source

constants.lisp.

Constant: +asc-req-use-dce-style+
Package

schannel.

Source

constants.lisp.

Constant: +asc-req-use-session-key+
Package

schannel.

Source

constants.lisp.

Constant: +cert-find-any+
Package

schannel.

Source

ffi.lisp.

Constant: +cert-find-subject-name+
Package

schannel.

Source

ffi.lisp.

Constant: +cert-find-subject-str+
Package

schannel.

Source

ffi.lisp.

Constant: +cert-store-backup-restore-flag+
Package

schannel.

Source

constants.lisp.

Constant: +cert-store-create-new-flag+
Package

schannel.

Source

constants.lisp.

Constant: +cert-store-defer-close-until-last-free-flag+
Package

schannel.

Source

constants.lisp.

Constant: +cert-store-delete-flag+
Package

schannel.

Source

constants.lisp.

Constant: +cert-store-enum-archived-flag+
Package

schannel.

Source

constants.lisp.

Constant: +cert-store-manifold-flag+
Package

schannel.

Source

constants.lisp.

Constant: +cert-store-maximum-allowed-flag+
Package

schannel.

Source

constants.lisp.

Constant: +cert-store-no-crypt-release-flag+
Package

schannel.

Source

constants.lisp.

Constant: +cert-store-open-existing-flag+
Package

schannel.

Source

constants.lisp.

Constant: +cert-store-prov-collection+
Package

schannel.

Source

constants.lisp.

Constant: +cert-store-prov-file+
Package

schannel.

Source

constants.lisp.

Constant: +cert-store-prov-filename-a+
Package

schannel.

Source

constants.lisp.

Constant: +cert-store-prov-filename-w+
Package

schannel.

Source

constants.lisp.

Constant: +cert-store-prov-memory+
Package

schannel.

Source

constants.lisp.

Constant: +cert-store-prov-msg+
Package

schannel.

Source

constants.lisp.

Constant: +cert-store-prov-physical-w+
Package

schannel.

Source

constants.lisp.

Constant: +cert-store-prov-pkcs7+
Package

schannel.

Source

constants.lisp.

Constant: +cert-store-prov-reg+
Package

schannel.

Source

constants.lisp.

Constant: +cert-store-prov-serialized+
Package

schannel.

Source

constants.lisp.

Constant: +cert-store-prov-system-a+
Package

schannel.

Source

constants.lisp.

Constant: +cert-store-prov-system-registry-a+
Package

schannel.

Source

constants.lisp.

Constant: +cert-store-prov-system-registry-w+
Package

schannel.

Source

constants.lisp.

Constant: +cert-store-prov-system-w+
Package

schannel.

Source

constants.lisp.

Constant: +cert-store-readonly-flag+
Package

schannel.

Source

constants.lisp.

Constant: +cert-store-set-localized-name-flag+
Package

schannel.

Source

constants.lisp.

Constant: +cert-store-share-context-flag+
Package

schannel.

Source

constants.lisp.

Constant: +cert-store-share-store-flag+
Package

schannel.

Source

constants.lisp.

Constant: +cert-store-unsafe-physical-flag+
Package

schannel.

Source

constants.lisp.

Constant: +cert-store-update-keyid-flag+
Package

schannel.

Source

constants.lisp.

Constant: +complete-and-continue+
Package

schannel.

Source

constants.lisp.

Constant: +complete-needed+
Package

schannel.

Source

constants.lisp.

Constant: +context-expired+
Package

schannel.

Source

constants.lisp.

Constant: +continue-needed+
Package

schannel.

Source

constants.lisp.

Constant: +cred-inbound+
Package

schannel.

Source

constants.lisp.

Constant: +cred-outbound+
Package

schannel.

Source

constants.lisp.

Constant: +default-asc-req-flags+
Package

schannel.

Source

ffi.lisp.

Constant: +default-isc-req-flags+
Package

schannel.

Source

ffi.lisp.

Constant: +incomplete-message+
Package

schannel.

Source

constants.lisp.

Constant: +invalid-token+
Package

schannel.

Source

constants.lisp.

Constant: +isc-req-allocate-memory+
Package

schannel.

Source

constants.lisp.

Constant: +isc-req-call-level+
Package

schannel.

Source

constants.lisp.

Constant: +isc-req-confidentiality+
Package

schannel.

Source

constants.lisp.

Constant: +isc-req-confidentiality-only+
Package

schannel.

Source

constants.lisp.

Constant: +isc-req-connection+
Package

schannel.

Source

constants.lisp.

Constant: +isc-req-datagram+
Package

schannel.

Source

constants.lisp.

Constant: +isc-req-delegate+
Package

schannel.

Source

constants.lisp.

Constant: +isc-req-extended-error+
Package

schannel.

Source

constants.lisp.

Constant: +isc-req-forward-credentials+
Package

schannel.

Source

constants.lisp.

Constant: +isc-req-fragment-supplied+
Package

schannel.

Source

constants.lisp.

Constant: +isc-req-fragment-to-fit+
Package

schannel.

Source

constants.lisp.

Constant: +isc-req-identify+
Package

schannel.

Source

constants.lisp.

Constant: +isc-req-integrity+
Package

schannel.

Source

constants.lisp.

Constant: +isc-req-manual-cred-validation+
Package

schannel.

Source

constants.lisp.

Constant: +isc-req-mutual-auth+
Package

schannel.

Source

constants.lisp.

Constant: +isc-req-no-integrity+
Package

schannel.

Source

constants.lisp.

Constant: +isc-req-null-session+
Package

schannel.

Source

constants.lisp.

Constant: +isc-req-prompt-for-creds+
Package

schannel.

Source

constants.lisp.

Constant: +isc-req-replay-detect+
Package

schannel.

Source

constants.lisp.

Constant: +isc-req-reserved1+
Package

schannel.

Source

constants.lisp.

Constant: +isc-req-sequence-detect+
Package

schannel.

Source

constants.lisp.

Constant: +isc-req-stream+
Package

schannel.

Source

constants.lisp.

Constant: +isc-req-unverified-target-name+
Package

schannel.

Source

constants.lisp.

Constant: +isc-req-use-dce-style+
Package

schannel.

Source

constants.lisp.

Constant: +isc-req-use-http-style+
Package

schannel.

Source

constants.lisp.

Constant: +isc-req-use-session-key+
Package

schannel.

Source

constants.lisp.

Constant: +isc-req-use-supplied-creds+
Package

schannel.

Source

constants.lisp.

Constant: +pkcs-7-asn-encoding+
Package

schannel.

Source

constants.lisp.

Constant: +renegotiate+
Package

schannel.

Source

constants.lisp.

Constant: +sch-cred-auto-cred-validation+
Package

schannel.

Source

constants.lisp.

Constant: +sch-cred-cache-only-url-retrieval+
Package

schannel.

Source

constants.lisp.

Constant: +sch-cred-cache-only-url-retrieval-on-create+
Package

schannel.

Source

constants.lisp.

Constant: +sch-cred-disable-reconnects+
Package

schannel.

Source

constants.lisp.

Constant: +sch-cred-ignore-no-revocation-check+
Package

schannel.

Source

constants.lisp.

Constant: +sch-cred-ignore-revocation-offline+
Package

schannel.

Source

constants.lisp.

Constant: +sch-cred-manual-cred-validation+
Package

schannel.

Source

constants.lisp.

Constant: +sch-cred-memory-store-cert+
Package

schannel.

Source

constants.lisp.

Constant: +sch-cred-no-default-creds+
Package

schannel.

Source

constants.lisp.

Constant: +sch-cred-no-servername-check+
Package

schannel.

Source

constants.lisp.

Constant: +sch-cred-no-system-mapper+
Package

schannel.

Source

constants.lisp.

Constant: +sch-cred-restricted-roots+
Package

schannel.

Source

constants.lisp.

Constant: +sch-cred-revocation-check-cache-only+
Package

schannel.

Source

constants.lisp.

Constant: +sch-cred-revocation-check-chain+
Package

schannel.

Source

constants.lisp.

Constant: +sch-cred-revocation-check-chain-exclude-root+
Package

schannel.

Source

constants.lisp.

Constant: +sch-cred-revocation-check-end-cert+
Package

schannel.

Source

constants.lisp.

Constant: +sch-cred-sni-credential+
Package

schannel.

Source

constants.lisp.

Constant: +sch-cred-sni-enable-ocsp+
Package

schannel.

Source

constants.lisp.

Constant: +sch-cred-use-default-creds+
Package

schannel.

Source

constants.lisp.

Constant: +sch-send-aux-record+
Package

schannel.

Source

constants.lisp.

Constant: +sch-send-root-cert+
Package

schannel.

Source

constants.lisp.

Constant: +sch-use-strong-crypto+
Package

schannel.

Source

constants.lisp.

Constant: +schannel-cred-version+
Package

schannel.

Source

constants.lisp.

Constant: +schannel-shutdown+
Package

schannel.

Source

constants.lisp.

Constant: +secbuffer-alert+
Package

schannel.

Source

constants.lisp.

Constant: +secbuffer-data+
Package

schannel.

Source

constants.lisp.

Constant: +secbuffer-empty+
Package

schannel.

Source

constants.lisp.

Constant: +secbuffer-extra+
Package

schannel.

Source

constants.lisp.

Constant: +secbuffer-mechlist+
Package

schannel.

Source

constants.lisp.

Constant: +secbuffer-missing+
Package

schannel.

Source

constants.lisp.

Constant: +secbuffer-readonly+
Package

schannel.

Source

constants.lisp.

Constant: +secbuffer-readonly-with-checksum+
Package

schannel.

Source

constants.lisp.

Constant: +secbuffer-stream-header+
Package

schannel.

Source

constants.lisp.

Constant: +secbuffer-stream-trailer+
Package

schannel.

Source

constants.lisp.

Constant: +secbuffer-token+
Package

schannel.

Source

constants.lisp.

Constant: +tls1-1-client+
Package

schannel.

Source

constants.lisp.

Constant: +tls1-1-server+
Package

schannel.

Source

constants.lisp.

Constant: +tls1-2-client+
Package

schannel.

Source

constants.lisp.

Constant: +tls1-2-server+
Package

schannel.

Source

constants.lisp.

Constant: +tls1-client+
Package

schannel.

Source

constants.lisp.

Constant: +tls1-server+
Package

schannel.

Source

constants.lisp.

Constant: +x509-asn-encoding+
Package

schannel.

Source

constants.lisp.


5.2.2 Special variables

Special Variable: *alert-types*
Package

schannel.

Source

constants.lisp.

Special Variable: *unisp-name*
Package

schannel.

Source

constants.lisp.


5.2.3 Macros

Macro: with-client-context ((var hostname &key ignore-certificates-p client-certificate) &body body)
Package

schannel.

Source

classes.lisp.

Macro: with-server-context ((var &key hcert) &body body)
Package

schannel.

Source

classes.lisp.


5.2.4 Ordinary functions

Function: %accept-security-context (hcred pcxt input fcontextreq targetdatarep newcontext output contextattr timestamp)
Package

schannel.

Source

ffi.lisp.

Function: %acquire-credentials-handle (principal package fcreduse logonid authdata keyfn keyfnarg cred expiry)
Package

schannel.

Source

ffi.lisp.

Function: %apply-control-token (pcxt input)
Package

schannel.

Source

ffi.lisp.

Function: %cert-add-certificate-context-to-store (hstore hcert flags phcert)
Package

schannel.

Source

ffi.lisp.

Function: %cert-add-serialized-element-to-store (hstore buf count disposition flags cxttypeflags cxttype cxt)
Package

schannel.

Source

ffi.lisp.

Function: %cert-close-store (hstore flags)
Package

schannel.

Source

ffi.lisp.

Function: %cert-create-certificate-context (encoding-type encoded count)
Package

schannel.

Source

ffi.lisp.

Function: %cert-create-self-signed-certificate (cryptprov issuer-blob flags keyprovinfo sigalg starttime endtime extensions)
Package

schannel.

Source

ffi.lisp.

Function: %cert-enum-certificates-in-store (hstore prev)
Package

schannel.

Source

ffi.lisp.

Function: %cert-find-certificate-in-store (hstore encoding flags type para prev)
Package

schannel.

Source

ffi.lisp.

Function: %cert-free-certificate-context (hcert)
Package

schannel.

Source

ffi.lisp.

Function: %cert-name-to-string (encoding blob strtype str size)
Package

schannel.

Source

ffi.lisp.

Function: %cert-open-store (storeprov encoding hprov flags para)
Package

schannel.

Source

ffi.lisp.

Function: %cert-open-system-store (prov prot)
Package

schannel.

Source

ffi.lisp.

Function: %cert-serialize-certificate (hcert flags buf count)
Package

schannel.

Source

ffi.lisp.

Function: %cert-str-to-name (enctype str strtype reserved encoded count errorstr)
Package

schannel.

Source

ffi.lisp.

Function: %complete-auth-token (pcxt pbuf)
Package

schannel.

Source

ffi.lisp.

Function: %decrypt-message (pcxt buffer seqno pqop)
Package

schannel.

Source

ffi.lisp.

Function: %delete-security-context (pcxt)
Package

schannel.

Source

ffi.lisp.

Function: %encrypt-message (pcxt fqop buffer seqno)
Package

schannel.

Source

ffi.lisp.

Function: %format-message (flags source msg-id lang-id buffer size args)
Package

schannel.

Source

errors.lisp.

Function: %free-context-buffer (buffer)
Package

schannel.

Source

ffi.lisp.

Function: %free-credentials-handle (hcred)
Package

schannel.

Source

ffi.lisp.

Function: %initialize-security-context (hcred pcxt targetname fcontextreq reserved1 targetdatarep input reserved2 newcontext output contextattr expiry)
Package

schannel.

Source

ffi.lisp.

Function: %pfx-export-cert-store (hstore blob password para flags)
Package

schannel.

Source

ffi.lisp.

Function: %pfx-import-cert-store (blob password flags)
Package

schannel.

Source

ffi.lisp.

Function: %query-context-attributes (pcxt attr buffer)
Package

schannel.

Source

ffi.lisp.

Function: %query-security-context-token (pcxt tok)
Package

schannel.

Source

ffi.lisp.

Function: accept-security-context-continue (hcred hcxt token cxtattr token-start token-end)
Package

schannel.

Source

ffi.lisp.

Function: accept-security-context-init (hcred token token-start token-end &key require-client-certificate)
Package

schannel.

Source

ffi.lisp.

Function: accept-server-context (cxt token &optional start end)
Package

schannel.

Source

classes.lisp.

Function: acquire-credentials-handle (&key serverp ignore-certificates-p hcert)
Package

schannel.

Source

ffi.lisp.

Function: add-certificate-to-store (hstore hcert)
Package

schannel.

Source

ffi.lisp.

Function: apply-shutdown-token (hcxt)
Package

schannel.

Source

ffi.lisp.

Function: cert-add-serialized-element-to-store (hstore buf &key start end)
Package

schannel.

Source

ffi.lisp.

Function: cert-close-store (hstore)
Package

schannel.

Source

ffi.lisp.

Function: cert-name-to-string (pblob)
Package

schannel.

Source

ffi.lisp.

Function: cert-open-file-store (filename)
Package

schannel.

Source

ffi.lisp.

Function: cert-open-memory-store ()
Package

schannel.

Source

ffi.lisp.

Function: cert-open-system-store (&optional subsystem)
Package

schannel.

Source

ffi.lisp.

Function: cert-serialize-certificate (hcert)
Package

schannel.

Source

ffi.lisp.

Function: cert-string-to-name (string)
Package

schannel.

Source

ffi.lisp.

Reader: certificate-info-encoded (instance)
Writer: (setf certificate-info-encoded) (instance)
Package

schannel.

Source

ffi.lisp.

Target Slot

encoded.

Reader: certificate-info-encoding-type (instance)
Writer: (setf certificate-info-encoding-type) (instance)
Package

schannel.

Source

ffi.lisp.

Target Slot

encoding-type.

Reader: certificate-info-name (instance)
Writer: (setf certificate-info-name) (instance)
Package

schannel.

Source

ffi.lisp.

Target Slot

name.

Function: certificate-info-p (object)
Package

schannel.

Source

ffi.lisp.

Function: certificate-string (&rest component-names)

common-name locality-name organization-name organization-unit-name email country-name state-or-province street-address title given-name initials surname domain-component

Package

schannel.

Source

ffi.lisp.

Function: complete-auth-token (phcxt psecbufdesc)
Package

schannel.

Source

ffi.lisp.

Function: copy-certificate-info (instance)
Package

schannel.

Source

ffi.lisp.

Function: copyin (ptr arr &optional start end)
Package

schannel.

Source

ffi.lisp.

Function: copyout (ptr count)
Package

schannel.

Source

ffi.lisp.

Function: create-certificate-context (data &key start end)
Package

schannel.

Source

ffi.lisp.

Function: create-self-signed-certificate (&key certificate-name-components)
Package

schannel.

Source

ffi.lisp.

Function: decrypt-message (cxt seq &key start end)
Package

schannel.

Source

classes.lisp.

Function: decrypt-message-1 (hcxt buf &key start end)

Decrypt message. Sets buf contents to decrypted plaintext.
Returns values bend extra-start incomplete-p
bend is buffer end index and extra-start is starting index of first extra byte.

Package

schannel.

Source

ffi.lisp.

Function: delete-security-context (cxt)
Package

schannel.

Source

ffi.lisp.

Function: encrypt-message (cxt seq &key start end)
Package

schannel.

Source

classes.lisp.

Function: encrypt-message-1 (hcxt buf &key start end)

Returns end index

Package

schannel.

Source

ffi.lisp.

Function: enum-certificates-in-store (hstore)
Package

schannel.

Source

ffi.lisp.

Function: export-certificate (hcert password)

Get exported certificate

Package

schannel.

Source

certificates.lisp.

Function: export-system-certificate (certificate-path password)

Get exported system certificate

Package

schannel.

Source

certificates.lisp.

Function: find-certificate-in-store (hstore &key subject-name)
Package

schannel.

Source

ffi.lisp.

Function: find-system-certificate (certificate-path)

Find a certificate in a path. Path format is [store/]subject-name. store is CA|MY|ROOT|SPC

Package

schannel.

Source

certificates.lisp.

Function: format-message (code)

Use FormatMessage to convert the error code into a system-defined string.

Package

schannel.

Source

errors.lisp.

Function: free-certificate-context (hcert)
Package

schannel.

Source

ffi.lisp.

Function: free-context-buffer (ptr)
Package

schannel.

Source

ffi.lisp.

Function: free-credentials-handle (hcred)
Package

schannel.

Source

ffi.lisp.

Function: get-encoded-certificate (hcert)

Get the encoded blob portion of the certificate context.

Package

schannel.

Source

certificates.lisp.

Function: init-client-stream (cxt base-stream)
Package

schannel.

Source

streams.lisp.

Function: init-sec-buffer (ptr count buf type)
Package

schannel.

Source

ffi.lisp.

Function: init-sec-buffer-desc (ptr buffers count)
Package

schannel.

Source

ffi.lisp.

Function: initialize-client-context (cxt &optional token start end)

Initialize a client context.
CXT ::= instance of client-context TOKEN ::= token buffer
START, END ::= token buffer region bounds Returns values token incomplete-p

Package

schannel.

Source

classes.lisp.

Function: initialize-security-context-continue (hcred hostname hcxt token cxtattr token-start token-end)
Package

schannel.

Source

ffi.lisp.

Function: initialize-security-context-init (hcred hostname)

Called on first to initialize security context. Returns values hcontext token

Package

schannel.

Source

ffi.lisp.

Function: make-certificate-info (&key name encoding-type encoded)
Package

schannel.

Source

ffi.lisp.

Function: make-client-context (hostname &key ignore-certificates-p client-certificate)
Package

schannel.

Source

classes.lisp.

Function: make-server-context (&key certificate require-client-certificate)

Make a server context.
HCERT ::= certificate handle, string or null. If string, names a certificate that can be acquired using FIND-SYSTEM-CERTIFICATE. If null, a temporary self signed certificate will be created. REQUIRE-CLIENT-CERTIFICATE ::= if true then the client MUST provide a certificate when negotiating connection.

Package

schannel.

Source

classes.lisp.

Function: memset (ptr count &optional val)
Package

schannel.

Source

ffi.lisp.

Function: pfx-export-cert-store (hstore password)
Package

schannel.

Source

ffi.lisp.

Function: pfx-import-cert-store (data password &key start end)
Package

schannel.

Source

ffi.lisp.

Function: query-remote-certificate (hcxt)
Package

schannel.

Source

ffi.lisp.

Function: query-security-context-token (cxt)
Package

schannel.

Source

ffi.lisp.

Function: query-stream-sizes (hcxt)
Package

schannel.

Source

ffi.lisp.

Function: read-next-msg (stream)

Read from the base stream until we have at least enough bytes to decrypt a message. Updates offets to point to end of plaintext and remaining undecrypted bytes from next message.

Package

schannel.

Source

streams.lisp.

Function: recv-server-context-token (cxt stream buf)
Package

schannel.

Source

streams.lisp.

Function: win-error (code)
Package

schannel.

Source

errors.lisp.


5.2.5 Generic functions

Generic Reader: client-context-hostname (object)
Package

schannel.

Methods
Reader Method: client-context-hostname ((client-context client-context))

automatically generated reader method

Source

classes.lisp.

Target Slot

hostname.

Generic Function: free-schannel-context (cxt)
Package

schannel.

Source

classes.lisp.

Methods
Method: free-schannel-context ((cxt schannel-context))
Generic Reader: rbuf-ct-end (object)
Package

schannel.

Methods
Reader Method: rbuf-ct-end ((schannel-stream schannel-stream))

automatically generated reader method

Source

streams.lisp.

Target Slot

rbuf-ct-end.

Generic Writer: (setf rbuf-ct-end) (object)
Package

schannel.

Methods
Writer Method: (setf rbuf-ct-end) ((schannel-stream schannel-stream))

automatically generated writer method

Source

streams.lisp.

Target Slot

rbuf-ct-end.

Generic Reader: rbuf-ct-start (object)
Package

schannel.

Methods
Reader Method: rbuf-ct-start ((schannel-stream schannel-stream))

automatically generated reader method

Source

streams.lisp.

Target Slot

rbuf-ct-start.

Generic Writer: (setf rbuf-ct-start) (object)
Package

schannel.

Methods
Writer Method: (setf rbuf-ct-start) ((schannel-stream schannel-stream))

automatically generated writer method

Source

streams.lisp.

Target Slot

rbuf-ct-start.

Generic Reader: rbuf-pt-end (object)
Package

schannel.

Methods
Reader Method: rbuf-pt-end ((schannel-stream schannel-stream))

automatically generated reader method

Source

streams.lisp.

Target Slot

rbuf-pt-end.

Generic Writer: (setf rbuf-pt-end) (object)
Package

schannel.

Methods
Writer Method: (setf rbuf-pt-end) ((schannel-stream schannel-stream))

automatically generated writer method

Source

streams.lisp.

Target Slot

rbuf-pt-end.

Generic Reader: rbuf-pt-start (object)
Package

schannel.

Methods
Reader Method: rbuf-pt-start ((schannel-stream schannel-stream))

automatically generated reader method

Source

streams.lisp.

Target Slot

rbuf-pt-start.

Generic Writer: (setf rbuf-pt-start) (object)
Package

schannel.

Methods
Writer Method: (setf rbuf-pt-start) ((schannel-stream schannel-stream))

automatically generated writer method

Source

streams.lisp.

Target Slot

rbuf-pt-start.

Generic Reader: sbuf-ct-end (object)
Package

schannel.

Methods
Reader Method: sbuf-ct-end ((schannel-stream schannel-stream))

automatically generated reader method

Source

streams.lisp.

Target Slot

sbuf-ct-end.

Generic Writer: (setf sbuf-ct-end) (object)
Package

schannel.

Methods
Writer Method: (setf sbuf-ct-end) ((schannel-stream schannel-stream))

automatically generated writer method

Source

streams.lisp.

Target Slot

sbuf-ct-end.

Generic Reader: schannel-attrs (object)
Package

schannel.

Methods
Reader Method: schannel-attrs ((schannel-context schannel-context))

automatically generated reader method

Source

classes.lisp.

Target Slot

attrs.

Generic Writer: (setf schannel-attrs) (object)
Package

schannel.

Methods
Writer Method: (setf schannel-attrs) ((schannel-context schannel-context))

automatically generated writer method

Source

classes.lisp.

Target Slot

attrs.

Generic Reader: schannel-hcred (object)
Package

schannel.

Methods
Reader Method: schannel-hcred ((schannel-context schannel-context))

automatically generated reader method

Source

classes.lisp.

Target Slot

hcred.

Generic Writer: (setf schannel-hcred) (object)
Package

schannel.

Methods
Writer Method: (setf schannel-hcred) ((schannel-context schannel-context))

automatically generated writer method

Source

classes.lisp.

Target Slot

hcred.

Generic Reader: schannel-hcxt (object)
Package

schannel.

Methods
Reader Method: schannel-hcxt ((schannel-context schannel-context))

automatically generated reader method

Source

classes.lisp.

Target Slot

hcxt.

Generic Writer: (setf schannel-hcxt) (object)
Package

schannel.

Methods
Writer Method: (setf schannel-hcxt) ((schannel-context schannel-context))

automatically generated writer method

Source

classes.lisp.

Target Slot

hcxt.

Generic Reader: schannel-state (object)
Package

schannel.

Methods
Reader Method: schannel-state ((schannel-context schannel-context))

automatically generated reader method

Source

classes.lisp.

Target Slot

state.

Generic Writer: (setf schannel-state) (object)
Package

schannel.

Methods
Writer Method: (setf schannel-state) ((schannel-context schannel-context))

automatically generated writer method

Source

classes.lisp.

Target Slot

state.

Generic Reader: server-context-require-client-certificate (object)
Package

schannel.

Methods
Reader Method: server-context-require-client-certificate ((server-context server-context))

automatically generated reader method

Source

classes.lisp.

Target Slot

require-client-certificate.

Generic Reader: stream-base-stream (object)
Package

schannel.

Methods
Reader Method: stream-base-stream ((schannel-stream schannel-stream))

automatically generated reader method

Source

streams.lisp.

Target Slot

base-stream.

Generic Writer: (setf stream-base-stream) (object)
Package

schannel.

Methods
Writer Method: (setf stream-base-stream) ((schannel-stream schannel-stream))

automatically generated writer method

Source

streams.lisp.

Target Slot

base-stream.

Generic Reader: stream-cxt (object)
Package

schannel.

Methods
Reader Method: stream-cxt ((schannel-stream schannel-stream))

automatically generated reader method

Source

streams.lisp.

Target Slot

cxt.

Generic Writer: (setf stream-cxt) (object)
Package

schannel.

Methods
Writer Method: (setf stream-cxt) ((schannel-stream schannel-stream))

automatically generated writer method

Source

streams.lisp.

Target Slot

cxt.

Generic Reader: stream-rbuf (object)
Package

schannel.

Methods
Reader Method: stream-rbuf ((schannel-stream schannel-stream))

automatically generated reader method

Source

streams.lisp.

Target Slot

rbuf.

Generic Writer: (setf stream-rbuf) (object)
Package

schannel.

Methods
Writer Method: (setf stream-rbuf) ((schannel-stream schannel-stream))

automatically generated writer method

Source

streams.lisp.

Target Slot

rbuf.

Generic Reader: stream-sbuf (object)
Package

schannel.

Methods
Reader Method: stream-sbuf ((schannel-stream schannel-stream))

automatically generated reader method

Source

streams.lisp.

Target Slot

sbuf.

Generic Writer: (setf stream-sbuf) (object)
Package

schannel.

Methods
Writer Method: (setf stream-sbuf) ((schannel-stream schannel-stream))

automatically generated writer method

Source

streams.lisp.

Target Slot

sbuf.

Generic Reader: win-error-code (condition)
Package

schannel.

Methods
Reader Method: win-error-code ((condition win-error))
Source

errors.lisp.

Target Slot

code.


5.2.6 Conditions

Condition: schannel-context-expired
Package

schannel.

Source

errors.lisp.

Direct superclasses

win-error.

Condition: schannel-incomplete-message
Package

schannel.

Source

errors.lisp.

Direct superclasses

win-error.

Condition: schannel-renegotiate
Package

schannel.

Source

errors.lisp.

Direct superclasses

win-error.

Condition: win-error
Package

schannel.

Source

errors.lisp.

Direct superclasses

error.

Direct subclasses
Direct methods

win-error-code.

Direct slots
Slot: code
Initform

(quote 0)

Initargs

:code

Readers

win-error-code.

Writers

This slot is read-only.


5.2.7 Structures

Structure: certificate-info
Package

schannel.

Source

ffi.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: name
Readers

certificate-info-name.

Writers

(setf certificate-info-name).

Slot: encoding-type
Readers

certificate-info-encoding-type.

Writers

(setf certificate-info-encoding-type).

Slot: encoded
Readers

certificate-info-encoded.

Writers

(setf certificate-info-encoded).


5.2.8 Classes

Class: alg-id-tclass
Package

schannel.

Source

ffi.lisp.

Direct superclasses
  • foreign-struct-type.
  • translatable-foreign-type.
Class: cert-context-tclass
Package

schannel.

Source

ffi.lisp.

Direct superclasses
  • foreign-struct-type.
  • translatable-foreign-type.
Class: cert-info-tclass
Package

schannel.

Source

ffi.lisp.

Direct superclasses
  • foreign-struct-type.
  • translatable-foreign-type.
Class: cert-name-blob-tclass
Package

schannel.

Source

ffi.lisp.

Direct superclasses
  • foreign-struct-type.
  • translatable-foreign-type.
Class: client-context
Package

schannel.

Source

classes.lisp.

Direct superclasses

schannel-context.

Direct methods

client-context-hostname.

Direct slots
Slot: hostname
Initargs

:hostname

Readers

client-context-hostname.

Writers

This slot is read-only.

Class: crypt-bit-blob-tclass
Package

schannel.

Source

ffi.lisp.

Direct superclasses
  • foreign-struct-type.
  • translatable-foreign-type.
Class: crypt-blob-tclass
Package

schannel.

Source

ffi.lisp.

Direct superclasses
  • foreign-struct-type.
  • translatable-foreign-type.
Class: crypt-key-info-tclass
Package

schannel.

Source

ffi.lisp.

Direct superclasses
  • foreign-struct-type.
  • translatable-foreign-type.
Class: schannel-context
Package

schannel.

Source

classes.lisp.

Direct subclasses
Direct methods
Direct slots
Slot: hcred
Initargs

:hcred

Readers

schannel-hcred.

Writers

(setf schannel-hcred).

Slot: hcxt
Readers

schannel-hcxt.

Writers

(setf schannel-hcxt).

Slot: attrs
Initform

0

Readers

schannel-attrs.

Writers

(setf schannel-attrs).

Slot: state
Initform

:init

Readers

schannel-state.

Writers

(setf schannel-state).

Class: schannel-cred-tclass
Package

schannel.

Source

ffi.lisp.

Direct superclasses
  • foreign-struct-type.
  • translatable-foreign-type.
Class: schannel-stream
Package

schannel.

Source

streams.lisp.

Direct superclasses
  • fundamental-binary-input-stream.
  • fundamental-binary-output-stream.
  • trivial-gray-stream-mixin.
Direct subclasses
Direct methods
Direct slots
Slot: cxt
Initargs

:cxt

Readers

stream-cxt.

Writers

(setf stream-cxt).

Slot: base-stream
Initargs

:stream

Readers

stream-base-stream.

Writers

(setf stream-base-stream).

Slot: rbuf
Initform

(make-array (* 32 1024) :element-type (quote (unsigned-byte 8)))

Readers

stream-rbuf.

Writers

(setf stream-rbuf).

Slot: rbuf-pt-start
Initform

0

Readers

rbuf-pt-start.

Writers

(setf rbuf-pt-start).

Slot: rbuf-pt-end
Initform

0

Readers

rbuf-pt-end.

Writers

(setf rbuf-pt-end).

Slot: rbuf-ct-start
Initform

0

Readers

rbuf-ct-start.

Writers

(setf rbuf-ct-start).

Slot: rbuf-ct-end
Initform

0

Readers

rbuf-ct-end.

Writers

(setf rbuf-ct-end).

Slot: sbuf
Initform

(make-array (* 32 1024) :element-type (quote (unsigned-byte 8)))

Readers

stream-sbuf.

Writers

(setf stream-sbuf).

Slot: sbuf-ct-end
Initform

0

Readers

sbuf-ct-end.

Writers

(setf sbuf-ct-end).

Class: sec-buffer-desc-tclass
Package

schannel.

Source

ffi.lisp.

Direct superclasses
  • foreign-struct-type.
  • translatable-foreign-type.
Class: sec-buffer-tclass
Package

schannel.

Source

ffi.lisp.

Direct superclasses
  • foreign-struct-type.
  • translatable-foreign-type.
Class: sec-handle-tclass
Package

schannel.

Source

ffi.lisp.

Direct superclasses
  • foreign-struct-type.
  • translatable-foreign-type.
Class: server-context
Package

schannel.

Source

classes.lisp.

Direct superclasses

schannel-context.

Direct methods

server-context-require-client-certificate.

Direct slots
Slot: require-client-certificate
Initargs

:require-client-certificate

Readers

server-context-require-client-certificate.

Writers

This slot is read-only.


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   %   (  
A   C   D   E   F   G   I   M   P   Q   R   S   W  
Index Entry  Section

%
%accept-security-context: Private ordinary functions
%acquire-credentials-handle: Private ordinary functions
%apply-control-token: Private ordinary functions
%cert-add-certificate-context-to-store: Private ordinary functions
%cert-add-serialized-element-to-store: Private ordinary functions
%cert-close-store: Private ordinary functions
%cert-create-certificate-context: Private ordinary functions
%cert-create-self-signed-certificate: Private ordinary functions
%cert-enum-certificates-in-store: Private ordinary functions
%cert-find-certificate-in-store: Private ordinary functions
%cert-free-certificate-context: Private ordinary functions
%cert-name-to-string: Private ordinary functions
%cert-open-store: Private ordinary functions
%cert-open-system-store: Private ordinary functions
%cert-serialize-certificate: Private ordinary functions
%cert-str-to-name: Private ordinary functions
%complete-auth-token: Private ordinary functions
%decrypt-message: Private ordinary functions
%delete-security-context: Private ordinary functions
%encrypt-message: Private ordinary functions
%format-message: Private ordinary functions
%free-context-buffer: Private ordinary functions
%free-credentials-handle: Private ordinary functions
%initialize-security-context: Private ordinary functions
%pfx-export-cert-store: Private ordinary functions
%pfx-import-cert-store: Private ordinary functions
%query-context-attributes: Private ordinary functions
%query-security-context-token: Private ordinary functions

(
(setf certificate-info-encoded): Private ordinary functions
(setf certificate-info-encoding-type): Private ordinary functions
(setf certificate-info-name): Private ordinary functions
(setf rbuf-ct-end): Private generic functions
(setf rbuf-ct-end): Private generic functions
(setf rbuf-ct-start): Private generic functions
(setf rbuf-ct-start): Private generic functions
(setf rbuf-pt-end): Private generic functions
(setf rbuf-pt-end): Private generic functions
(setf rbuf-pt-start): Private generic functions
(setf rbuf-pt-start): Private generic functions
(setf sbuf-ct-end): Private generic functions
(setf sbuf-ct-end): Private generic functions
(setf schannel-attrs): Private generic functions
(setf schannel-attrs): Private generic functions
(setf schannel-hcred): Private generic functions
(setf schannel-hcred): Private generic functions
(setf schannel-hcxt): Private generic functions
(setf schannel-hcxt): Private generic functions
(setf schannel-state): Private generic functions
(setf schannel-state): Private generic functions
(setf stream-base-stream): Private generic functions
(setf stream-base-stream): Private generic functions
(setf stream-cxt): Private generic functions
(setf stream-cxt): Private generic functions
(setf stream-rbuf): Private generic functions
(setf stream-rbuf): Private generic functions
(setf stream-sbuf): Private generic functions
(setf stream-sbuf): Private generic functions

A
accept-security-context-continue: Private ordinary functions
accept-security-context-init: Private ordinary functions
accept-server-context: Private ordinary functions
acquire-credentials-handle: Private ordinary functions
add-certificate-to-store: Private ordinary functions
apply-shutdown-token: Private ordinary functions

C
cert-add-serialized-element-to-store: Private ordinary functions
cert-close-store: Private ordinary functions
cert-name-to-string: Private ordinary functions
cert-open-file-store: Private ordinary functions
cert-open-memory-store: Private ordinary functions
cert-open-system-store: Private ordinary functions
cert-serialize-certificate: Private ordinary functions
cert-string-to-name: Private ordinary functions
certificate-info-encoded: Private ordinary functions
certificate-info-encoding-type: Private ordinary functions
certificate-info-name: Private ordinary functions
certificate-info-p: Private ordinary functions
certificate-string: Private ordinary functions
client-context-hostname: Private generic functions
client-context-hostname: Private generic functions
close: Public standalone methods
complete-auth-token: Private ordinary functions
copy-certificate-info: Private ordinary functions
copyin: Private ordinary functions
copyout: Private ordinary functions
create-certificate-context: Private ordinary functions
create-self-signed-certificate: Private ordinary functions

D
decrypt-message: Private ordinary functions
decrypt-message-1: Private ordinary functions
delete-security-context: Private ordinary functions

E
encrypt-message: Private ordinary functions
encrypt-message-1: Private ordinary functions
enum-certificates-in-store: Private ordinary functions
enum-system-certificates: Public ordinary functions
export-certificate: Private ordinary functions
export-system-certificate: Private ordinary functions

F
find-certificate-in-store: Private ordinary functions
find-system-certificate: Private ordinary functions
format-message: Private ordinary functions
free-certificate-context: Private ordinary functions
free-context-buffer: Private ordinary functions
free-credentials-handle: Private ordinary functions
free-schannel-context: Private generic functions
free-schannel-context: Private generic functions
Function, %accept-security-context: Private ordinary functions
Function, %acquire-credentials-handle: Private ordinary functions
Function, %apply-control-token: Private ordinary functions
Function, %cert-add-certificate-context-to-store: Private ordinary functions
Function, %cert-add-serialized-element-to-store: Private ordinary functions
Function, %cert-close-store: Private ordinary functions
Function, %cert-create-certificate-context: Private ordinary functions
Function, %cert-create-self-signed-certificate: Private ordinary functions
Function, %cert-enum-certificates-in-store: Private ordinary functions
Function, %cert-find-certificate-in-store: Private ordinary functions
Function, %cert-free-certificate-context: Private ordinary functions
Function, %cert-name-to-string: Private ordinary functions
Function, %cert-open-store: Private ordinary functions
Function, %cert-open-system-store: Private ordinary functions
Function, %cert-serialize-certificate: Private ordinary functions
Function, %cert-str-to-name: Private ordinary functions
Function, %complete-auth-token: Private ordinary functions
Function, %decrypt-message: Private ordinary functions
Function, %delete-security-context: Private ordinary functions
Function, %encrypt-message: Private ordinary functions
Function, %format-message: Private ordinary functions
Function, %free-context-buffer: Private ordinary functions
Function, %free-credentials-handle: Private ordinary functions
Function, %initialize-security-context: Private ordinary functions
Function, %pfx-export-cert-store: Private ordinary functions
Function, %pfx-import-cert-store: Private ordinary functions
Function, %query-context-attributes: Private ordinary functions
Function, %query-security-context-token: Private ordinary functions
Function, (setf certificate-info-encoded): Private ordinary functions
Function, (setf certificate-info-encoding-type): Private ordinary functions
Function, (setf certificate-info-name): Private ordinary functions
Function, accept-security-context-continue: Private ordinary functions
Function, accept-security-context-init: Private ordinary functions
Function, accept-server-context: Private ordinary functions
Function, acquire-credentials-handle: Private ordinary functions
Function, add-certificate-to-store: Private ordinary functions
Function, apply-shutdown-token: Private ordinary functions
Function, cert-add-serialized-element-to-store: Private ordinary functions
Function, cert-close-store: Private ordinary functions
Function, cert-name-to-string: Private ordinary functions
Function, cert-open-file-store: Private ordinary functions
Function, cert-open-memory-store: Private ordinary functions
Function, cert-open-system-store: Private ordinary functions
Function, cert-serialize-certificate: Private ordinary functions
Function, cert-string-to-name: Private ordinary functions
Function, certificate-info-encoded: Private ordinary functions
Function, certificate-info-encoding-type: Private ordinary functions
Function, certificate-info-name: Private ordinary functions
Function, certificate-info-p: Private ordinary functions
Function, certificate-string: Private ordinary functions
Function, complete-auth-token: Private ordinary functions
Function, copy-certificate-info: Private ordinary functions
Function, copyin: Private ordinary functions
Function, copyout: Private ordinary functions
Function, create-certificate-context: Private ordinary functions
Function, create-self-signed-certificate: Private ordinary functions
Function, decrypt-message: Private ordinary functions
Function, decrypt-message-1: Private ordinary functions
Function, delete-security-context: Private ordinary functions
Function, encrypt-message: Private ordinary functions
Function, encrypt-message-1: Private ordinary functions
Function, enum-certificates-in-store: Private ordinary functions
Function, enum-system-certificates: Public ordinary functions
Function, export-certificate: Private ordinary functions
Function, export-system-certificate: Private ordinary functions
Function, find-certificate-in-store: Private ordinary functions
Function, find-system-certificate: Private ordinary functions
Function, format-message: Private ordinary functions
Function, free-certificate-context: Private ordinary functions
Function, free-context-buffer: Private ordinary functions
Function, free-credentials-handle: Private ordinary functions
Function, get-encoded-certificate: Private ordinary functions
Function, init-client-stream: Private ordinary functions
Function, init-sec-buffer: Private ordinary functions
Function, init-sec-buffer-desc: Private ordinary functions
Function, initialize-client-context: Private ordinary functions
Function, initialize-security-context-continue: Private ordinary functions
Function, initialize-security-context-init: Private ordinary functions
Function, make-certificate-info: Private ordinary functions
Function, make-client-context: Private ordinary functions
Function, make-client-stream: Public ordinary functions
Function, make-server-context: Private ordinary functions
Function, make-server-stream: Public ordinary functions
Function, memset: Private ordinary functions
Function, pfx-export-cert-store: Private ordinary functions
Function, pfx-import-cert-store: Private ordinary functions
Function, query-remote-certificate: Private ordinary functions
Function, query-security-context-token: Private ordinary functions
Function, query-stream-sizes: Private ordinary functions
Function, read-next-msg: Private ordinary functions
Function, recv-server-context-token: Private ordinary functions
Function, win-error: Private ordinary functions

G
Generic Function, (setf rbuf-ct-end): Private generic functions
Generic Function, (setf rbuf-ct-start): Private generic functions
Generic Function, (setf rbuf-pt-end): Private generic functions
Generic Function, (setf rbuf-pt-start): Private generic functions
Generic Function, (setf sbuf-ct-end): Private generic functions
Generic Function, (setf schannel-attrs): Private generic functions
Generic Function, (setf schannel-hcred): Private generic functions
Generic Function, (setf schannel-hcxt): Private generic functions
Generic Function, (setf schannel-state): Private generic functions
Generic Function, (setf stream-base-stream): Private generic functions
Generic Function, (setf stream-cxt): Private generic functions
Generic Function, (setf stream-rbuf): Private generic functions
Generic Function, (setf stream-sbuf): Private generic functions
Generic Function, client-context-hostname: Private generic functions
Generic Function, free-schannel-context: Private generic functions
Generic Function, rbuf-ct-end: Private generic functions
Generic Function, rbuf-ct-start: Private generic functions
Generic Function, rbuf-pt-end: Private generic functions
Generic Function, rbuf-pt-start: Private generic functions
Generic Function, sbuf-ct-end: Private generic functions
Generic Function, schannel-attrs: Private generic functions
Generic Function, schannel-hcred: Private generic functions
Generic Function, schannel-hcxt: Private generic functions
Generic Function, schannel-state: Private generic functions
Generic Function, server-context-require-client-certificate: Private generic functions
Generic Function, stream-base-stream: Private generic functions
Generic Function, stream-cxt: Private generic functions
Generic Function, stream-rbuf: Private generic functions
Generic Function, stream-sbuf: Private generic functions
Generic Function, win-error-code: Private generic functions
get-encoded-certificate: Private ordinary functions

I
init-client-stream: Private ordinary functions
init-sec-buffer: Private ordinary functions
init-sec-buffer-desc: Private ordinary functions
initialize-client-context: Private ordinary functions
initialize-security-context-continue: Private ordinary functions
initialize-security-context-init: Private ordinary functions

M
Macro, with-client-context: Private macros
Macro, with-server-context: Private macros
make-certificate-info: Private ordinary functions
make-client-context: Private ordinary functions
make-client-stream: Public ordinary functions
make-server-context: Private ordinary functions
make-server-stream: Public ordinary functions
memset: Private ordinary functions
Method, (setf rbuf-ct-end): Private generic functions
Method, (setf rbuf-ct-start): Private generic functions
Method, (setf rbuf-pt-end): Private generic functions
Method, (setf rbuf-pt-start): Private generic functions
Method, (setf sbuf-ct-end): Private generic functions
Method, (setf schannel-attrs): Private generic functions
Method, (setf schannel-hcred): Private generic functions
Method, (setf schannel-hcxt): Private generic functions
Method, (setf schannel-state): Private generic functions
Method, (setf stream-base-stream): Private generic functions
Method, (setf stream-cxt): Private generic functions
Method, (setf stream-rbuf): Private generic functions
Method, (setf stream-sbuf): Private generic functions
Method, client-context-hostname: Private generic functions
Method, close: Public standalone methods
Method, free-schannel-context: Private generic functions
Method, print-object: Public standalone methods
Method, rbuf-ct-end: Private generic functions
Method, rbuf-ct-start: Private generic functions
Method, rbuf-pt-end: Private generic functions
Method, rbuf-pt-start: Private generic functions
Method, sbuf-ct-end: Private generic functions
Method, schannel-attrs: Private generic functions
Method, schannel-hcred: Private generic functions
Method, schannel-hcxt: Private generic functions
Method, schannel-state: Private generic functions
Method, server-context-require-client-certificate: Private generic functions
Method, stream-base-stream: Private generic functions
Method, stream-cxt: Private generic functions
Method, stream-element-type: Public standalone methods
Method, stream-listen: Public standalone methods
Method, stream-rbuf: Private generic functions
Method, stream-read-byte: Public standalone methods
Method, stream-read-sequence: Public standalone methods
Method, stream-sbuf: Private generic functions
Method, stream-write-byte: Public standalone methods
Method, stream-write-sequence: Public standalone methods
Method, win-error-code: Private generic functions

P
pfx-export-cert-store: Private ordinary functions
pfx-import-cert-store: Private ordinary functions
print-object: Public standalone methods

Q
query-remote-certificate: Private ordinary functions
query-security-context-token: Private ordinary functions
query-stream-sizes: Private ordinary functions

R
rbuf-ct-end: Private generic functions
rbuf-ct-end: Private generic functions
rbuf-ct-start: Private generic functions
rbuf-ct-start: Private generic functions
rbuf-pt-end: Private generic functions
rbuf-pt-end: Private generic functions
rbuf-pt-start: Private generic functions
rbuf-pt-start: Private generic functions
read-next-msg: Private ordinary functions
recv-server-context-token: Private ordinary functions

S
sbuf-ct-end: Private generic functions
sbuf-ct-end: Private generic functions
schannel-attrs: Private generic functions
schannel-attrs: Private generic functions
schannel-hcred: Private generic functions
schannel-hcred: Private generic functions
schannel-hcxt: Private generic functions
schannel-hcxt: Private generic functions
schannel-state: Private generic functions
schannel-state: Private generic functions
server-context-require-client-certificate: Private generic functions
server-context-require-client-certificate: Private generic functions
stream-base-stream: Private generic functions
stream-base-stream: Private generic functions
stream-cxt: Private generic functions
stream-cxt: Private generic functions
stream-element-type: Public standalone methods
stream-listen: Public standalone methods
stream-rbuf: Private generic functions
stream-rbuf: Private generic functions
stream-read-byte: Public standalone methods
stream-read-sequence: Public standalone methods
stream-sbuf: Private generic functions
stream-sbuf: Private generic functions
stream-write-byte: Public standalone methods
stream-write-sequence: Public standalone methods

W
win-error: Private ordinary functions
win-error-code: Private generic functions
win-error-code: Private generic functions
with-client-context: Private macros
with-server-context: Private macros


A.3 Variables

Jump to:   *   +  
A   B   C   E   H   N   R   S  
Index Entry  Section

*
*alert-types*: Private special variables
*unisp-name*: Private special variables

+
+asc-req-allocate-memory+: Private constants
+asc-req-allow-context-replay+: Private constants
+asc-req-allow-missing-bindings+: Private constants
+asc-req-allow-non-user-logons+: Private constants
+asc-req-allow-null-session+: Private constants
+asc-req-call-level+: Private constants
+asc-req-confidentiality+: Private constants
+asc-req-connection+: Private constants
+asc-req-datagram+: Private constants
+asc-req-delegate+: Private constants
+asc-req-extended-error+: Private constants
+asc-req-fragment-supplied+: Private constants
+asc-req-fragment-to-fit+: Private constants
+asc-req-identify+: Private constants
+asc-req-integrity+: Private constants
+asc-req-licensing+: Private constants
+asc-req-mutual-auth+: Private constants
+asc-req-no-token+: Private constants
+asc-req-proxy-bindings+: Private constants
+asc-req-replay-detect+: Private constants
+asc-req-sequence-detect+: Private constants
+asc-req-session-ticket+: Private constants
+asc-req-stream+: Private constants
+asc-req-use-dce-style+: Private constants
+asc-req-use-session-key+: Private constants
+cert-find-any+: Private constants
+cert-find-subject-name+: Private constants
+cert-find-subject-str+: Private constants
+cert-store-backup-restore-flag+: Private constants
+cert-store-create-new-flag+: Private constants
+cert-store-defer-close-until-last-free-flag+: Private constants
+cert-store-delete-flag+: Private constants
+cert-store-enum-archived-flag+: Private constants
+cert-store-manifold-flag+: Private constants
+cert-store-maximum-allowed-flag+: Private constants
+cert-store-no-crypt-release-flag+: Private constants
+cert-store-open-existing-flag+: Private constants
+cert-store-prov-collection+: Private constants
+cert-store-prov-file+: Private constants
+cert-store-prov-filename-a+: Private constants
+cert-store-prov-filename-w+: Private constants
+cert-store-prov-memory+: Private constants
+cert-store-prov-msg+: Private constants
+cert-store-prov-physical-w+: Private constants
+cert-store-prov-pkcs7+: Private constants
+cert-store-prov-reg+: Private constants
+cert-store-prov-serialized+: Private constants
+cert-store-prov-system-a+: Private constants
+cert-store-prov-system-registry-a+: Private constants
+cert-store-prov-system-registry-w+: Private constants
+cert-store-prov-system-w+: Private constants
+cert-store-readonly-flag+: Private constants
+cert-store-set-localized-name-flag+: Private constants
+cert-store-share-context-flag+: Private constants
+cert-store-share-store-flag+: Private constants
+cert-store-unsafe-physical-flag+: Private constants
+cert-store-update-keyid-flag+: Private constants
+complete-and-continue+: Private constants
+complete-needed+: Private constants
+context-expired+: Private constants
+continue-needed+: Private constants
+cred-inbound+: Private constants
+cred-outbound+: Private constants
+default-asc-req-flags+: Private constants
+default-isc-req-flags+: Private constants
+incomplete-message+: Private constants
+invalid-token+: Private constants
+isc-req-allocate-memory+: Private constants
+isc-req-call-level+: Private constants
+isc-req-confidentiality+: Private constants
+isc-req-confidentiality-only+: Private constants
+isc-req-connection+: Private constants
+isc-req-datagram+: Private constants
+isc-req-delegate+: Private constants
+isc-req-extended-error+: Private constants
+isc-req-forward-credentials+: Private constants
+isc-req-fragment-supplied+: Private constants
+isc-req-fragment-to-fit+: Private constants
+isc-req-identify+: Private constants
+isc-req-integrity+: Private constants
+isc-req-manual-cred-validation+: Private constants
+isc-req-mutual-auth+: Private constants
+isc-req-no-integrity+: Private constants
+isc-req-null-session+: Private constants
+isc-req-prompt-for-creds+: Private constants
+isc-req-replay-detect+: Private constants
+isc-req-reserved1+: Private constants
+isc-req-sequence-detect+: Private constants
+isc-req-stream+: Private constants
+isc-req-unverified-target-name+: Private constants
+isc-req-use-dce-style+: Private constants
+isc-req-use-http-style+: Private constants
+isc-req-use-session-key+: Private constants
+isc-req-use-supplied-creds+: Private constants
+pkcs-7-asn-encoding+: Private constants
+renegotiate+: Private constants
+sch-cred-auto-cred-validation+: Private constants
+sch-cred-cache-only-url-retrieval+: Private constants
+sch-cred-cache-only-url-retrieval-on-create+: Private constants
+sch-cred-disable-reconnects+: Private constants
+sch-cred-ignore-no-revocation-check+: Private constants
+sch-cred-ignore-revocation-offline+: Private constants
+sch-cred-manual-cred-validation+: Private constants
+sch-cred-memory-store-cert+: Private constants
+sch-cred-no-default-creds+: Private constants
+sch-cred-no-servername-check+: Private constants
+sch-cred-no-system-mapper+: Private constants
+sch-cred-restricted-roots+: Private constants
+sch-cred-revocation-check-cache-only+: Private constants
+sch-cred-revocation-check-chain+: Private constants
+sch-cred-revocation-check-chain-exclude-root+: Private constants
+sch-cred-revocation-check-end-cert+: Private constants
+sch-cred-sni-credential+: Private constants
+sch-cred-sni-enable-ocsp+: Private constants
+sch-cred-use-default-creds+: Private constants
+sch-send-aux-record+: Private constants
+sch-send-root-cert+: Private constants
+sch-use-strong-crypto+: Private constants
+schannel-cred-version+: Private constants
+schannel-shutdown+: Private constants
+secbuffer-alert+: Private constants
+secbuffer-data+: Private constants
+secbuffer-empty+: Private constants
+secbuffer-extra+: Private constants
+secbuffer-mechlist+: Private constants
+secbuffer-missing+: Private constants
+secbuffer-readonly+: Private constants
+secbuffer-readonly-with-checksum+: Private constants
+secbuffer-stream-header+: Private constants
+secbuffer-stream-trailer+: Private constants
+secbuffer-token+: Private constants
+tls1-1-client+: Private constants
+tls1-1-server+: Private constants
+tls1-2-client+: Private constants
+tls1-2-server+: Private constants
+tls1-client+: Private constants
+tls1-server+: Private constants
+x509-asn-encoding+: Private constants

A
attrs: Private classes

B
base-stream: Private classes

C
code: Private conditions
Constant, +asc-req-allocate-memory+: Private constants
Constant, +asc-req-allow-context-replay+: Private constants
Constant, +asc-req-allow-missing-bindings+: Private constants
Constant, +asc-req-allow-non-user-logons+: Private constants
Constant, +asc-req-allow-null-session+: Private constants
Constant, +asc-req-call-level+: Private constants
Constant, +asc-req-confidentiality+: Private constants
Constant, +asc-req-connection+: Private constants
Constant, +asc-req-datagram+: Private constants
Constant, +asc-req-delegate+: Private constants
Constant, +asc-req-extended-error+: Private constants
Constant, +asc-req-fragment-supplied+: Private constants
Constant, +asc-req-fragment-to-fit+: Private constants
Constant, +asc-req-identify+: Private constants
Constant, +asc-req-integrity+: Private constants
Constant, +asc-req-licensing+: Private constants
Constant, +asc-req-mutual-auth+: Private constants
Constant, +asc-req-no-token+: Private constants
Constant, +asc-req-proxy-bindings+: Private constants
Constant, +asc-req-replay-detect+: Private constants
Constant, +asc-req-sequence-detect+: Private constants
Constant, +asc-req-session-ticket+: Private constants
Constant, +asc-req-stream+: Private constants
Constant, +asc-req-use-dce-style+: Private constants
Constant, +asc-req-use-session-key+: Private constants
Constant, +cert-find-any+: Private constants
Constant, +cert-find-subject-name+: Private constants
Constant, +cert-find-subject-str+: Private constants
Constant, +cert-store-backup-restore-flag+: Private constants
Constant, +cert-store-create-new-flag+: Private constants
Constant, +cert-store-defer-close-until-last-free-flag+: Private constants
Constant, +cert-store-delete-flag+: Private constants
Constant, +cert-store-enum-archived-flag+: Private constants
Constant, +cert-store-manifold-flag+: Private constants
Constant, +cert-store-maximum-allowed-flag+: Private constants
Constant, +cert-store-no-crypt-release-flag+: Private constants
Constant, +cert-store-open-existing-flag+: Private constants
Constant, +cert-store-prov-collection+: Private constants
Constant, +cert-store-prov-file+: Private constants
Constant, +cert-store-prov-filename-a+: Private constants
Constant, +cert-store-prov-filename-w+: Private constants
Constant, +cert-store-prov-memory+: Private constants
Constant, +cert-store-prov-msg+: Private constants
Constant, +cert-store-prov-physical-w+: Private constants
Constant, +cert-store-prov-pkcs7+: Private constants
Constant, +cert-store-prov-reg+: Private constants
Constant, +cert-store-prov-serialized+: Private constants
Constant, +cert-store-prov-system-a+: Private constants
Constant, +cert-store-prov-system-registry-a+: Private constants
Constant, +cert-store-prov-system-registry-w+: Private constants
Constant, +cert-store-prov-system-w+: Private constants
Constant, +cert-store-readonly-flag+: Private constants
Constant, +cert-store-set-localized-name-flag+: Private constants
Constant, +cert-store-share-context-flag+: Private constants
Constant, +cert-store-share-store-flag+: Private constants
Constant, +cert-store-unsafe-physical-flag+: Private constants
Constant, +cert-store-update-keyid-flag+: Private constants
Constant, +complete-and-continue+: Private constants
Constant, +complete-needed+: Private constants
Constant, +context-expired+: Private constants
Constant, +continue-needed+: Private constants
Constant, +cred-inbound+: Private constants
Constant, +cred-outbound+: Private constants
Constant, +default-asc-req-flags+: Private constants
Constant, +default-isc-req-flags+: Private constants
Constant, +incomplete-message+: Private constants
Constant, +invalid-token+: Private constants
Constant, +isc-req-allocate-memory+: Private constants
Constant, +isc-req-call-level+: Private constants
Constant, +isc-req-confidentiality+: Private constants
Constant, +isc-req-confidentiality-only+: Private constants
Constant, +isc-req-connection+: Private constants
Constant, +isc-req-datagram+: Private constants
Constant, +isc-req-delegate+: Private constants
Constant, +isc-req-extended-error+: Private constants
Constant, +isc-req-forward-credentials+: Private constants
Constant, +isc-req-fragment-supplied+: Private constants
Constant, +isc-req-fragment-to-fit+: Private constants
Constant, +isc-req-identify+: Private constants
Constant, +isc-req-integrity+: Private constants
Constant, +isc-req-manual-cred-validation+: Private constants
Constant, +isc-req-mutual-auth+: Private constants
Constant, +isc-req-no-integrity+: Private constants
Constant, +isc-req-null-session+: Private constants
Constant, +isc-req-prompt-for-creds+: Private constants
Constant, +isc-req-replay-detect+: Private constants
Constant, +isc-req-reserved1+: Private constants
Constant, +isc-req-sequence-detect+: Private constants
Constant, +isc-req-stream+: Private constants
Constant, +isc-req-unverified-target-name+: Private constants
Constant, +isc-req-use-dce-style+: Private constants
Constant, +isc-req-use-http-style+: Private constants
Constant, +isc-req-use-session-key+: Private constants
Constant, +isc-req-use-supplied-creds+: Private constants
Constant, +pkcs-7-asn-encoding+: Private constants
Constant, +renegotiate+: Private constants
Constant, +sch-cred-auto-cred-validation+: Private constants
Constant, +sch-cred-cache-only-url-retrieval+: Private constants
Constant, +sch-cred-cache-only-url-retrieval-on-create+: Private constants
Constant, +sch-cred-disable-reconnects+: Private constants
Constant, +sch-cred-ignore-no-revocation-check+: Private constants
Constant, +sch-cred-ignore-revocation-offline+: Private constants
Constant, +sch-cred-manual-cred-validation+: Private constants
Constant, +sch-cred-memory-store-cert+: Private constants
Constant, +sch-cred-no-default-creds+: Private constants
Constant, +sch-cred-no-servername-check+: Private constants
Constant, +sch-cred-no-system-mapper+: Private constants
Constant, +sch-cred-restricted-roots+: Private constants
Constant, +sch-cred-revocation-check-cache-only+: Private constants
Constant, +sch-cred-revocation-check-chain+: Private constants
Constant, +sch-cred-revocation-check-chain-exclude-root+: Private constants
Constant, +sch-cred-revocation-check-end-cert+: Private constants
Constant, +sch-cred-sni-credential+: Private constants
Constant, +sch-cred-sni-enable-ocsp+: Private constants
Constant, +sch-cred-use-default-creds+: Private constants
Constant, +sch-send-aux-record+: Private constants
Constant, +sch-send-root-cert+: Private constants
Constant, +sch-use-strong-crypto+: Private constants
Constant, +schannel-cred-version+: Private constants
Constant, +schannel-shutdown+: Private constants
Constant, +secbuffer-alert+: Private constants
Constant, +secbuffer-data+: Private constants
Constant, +secbuffer-empty+: Private constants
Constant, +secbuffer-extra+: Private constants
Constant, +secbuffer-mechlist+: Private constants
Constant, +secbuffer-missing+: Private constants
Constant, +secbuffer-readonly+: Private constants
Constant, +secbuffer-readonly-with-checksum+: Private constants
Constant, +secbuffer-stream-header+: Private constants
Constant, +secbuffer-stream-trailer+: Private constants
Constant, +secbuffer-token+: Private constants
Constant, +tls1-1-client+: Private constants
Constant, +tls1-1-server+: Private constants
Constant, +tls1-2-client+: Private constants
Constant, +tls1-2-server+: Private constants
Constant, +tls1-client+: Private constants
Constant, +tls1-server+: Private constants
Constant, +x509-asn-encoding+: Private constants
cxt: Private classes

E
encoded: Private structures
encoding-type: Private structures

H
hcred: Private classes
hcxt: Private classes
hostname: Private classes

N
name: Private structures

R
rbuf: Private classes
rbuf-ct-end: Private classes
rbuf-ct-start: Private classes
rbuf-pt-end: Private classes
rbuf-pt-start: Private classes
require-client-certificate: Private classes

S
sbuf: Private classes
sbuf-ct-end: Private classes
Slot, attrs: Private classes
Slot, base-stream: Private classes
Slot, code: Private conditions
Slot, cxt: Private classes
Slot, encoded: Private structures
Slot, encoding-type: Private structures
Slot, hcred: Private classes
Slot, hcxt: Private classes
Slot, hostname: Private classes
Slot, name: Private structures
Slot, rbuf: Private classes
Slot, rbuf-ct-end: Private classes
Slot, rbuf-ct-start: Private classes
Slot, rbuf-pt-end: Private classes
Slot, rbuf-pt-start: Private classes
Slot, require-client-certificate: Private classes
Slot, sbuf: Private classes
Slot, sbuf-ct-end: Private classes
Slot, state: Private classes
Special Variable, *alert-types*: Private special variables
Special Variable, *unisp-name*: Private special variables
state: Private classes


A.4 Data types

Jump to:   A   C   E   F   P   S   W  
Index Entry  Section

A
alg-id-tclass: Private classes

C
cert-context-tclass: Private classes
cert-info-tclass: Private classes
cert-name-blob-tclass: Private classes
certificate-info: Private structures
certificates.lisp: The schannel/certificates․lisp file
Class, alg-id-tclass: Private classes
Class, cert-context-tclass: Private classes
Class, cert-info-tclass: Private classes
Class, cert-name-blob-tclass: Private classes
Class, client-context: Private classes
Class, client-stream: Public classes
Class, crypt-bit-blob-tclass: Private classes
Class, crypt-blob-tclass: Private classes
Class, crypt-key-info-tclass: Private classes
Class, schannel-context: Private classes
Class, schannel-cred-tclass: Private classes
Class, schannel-stream: Private classes
Class, sec-buffer-desc-tclass: Private classes
Class, sec-buffer-tclass: Private classes
Class, sec-handle-tclass: Private classes
Class, server-context: Private classes
Class, server-stream: Public classes
classes.lisp: The schannel/classes․lisp file
client-context: Private classes
client-stream: Public classes
Condition, schannel-context-expired: Private conditions
Condition, schannel-incomplete-message: Private conditions
Condition, schannel-renegotiate: Private conditions
Condition, win-error: Private conditions
constants.lisp: The schannel/constants․lisp file
crypt-bit-blob-tclass: Private classes
crypt-blob-tclass: Private classes
crypt-key-info-tclass: Private classes

E
errors.lisp: The schannel/errors․lisp file

F
ffi.lisp: The schannel/ffi․lisp file
File, certificates.lisp: The schannel/certificates․lisp file
File, classes.lisp: The schannel/classes․lisp file
File, constants.lisp: The schannel/constants․lisp file
File, errors.lisp: The schannel/errors․lisp file
File, ffi.lisp: The schannel/ffi․lisp file
File, package.lisp: The schannel/package․lisp file
File, schannel.asd: The schannel/schannel․asd file
File, streams.lisp: The schannel/streams․lisp file

P
Package, schannel: The schannel package
package.lisp: The schannel/package․lisp file

S
schannel: The schannel system
schannel: The schannel package
schannel-context: Private classes
schannel-context-expired: Private conditions
schannel-cred-tclass: Private classes
schannel-incomplete-message: Private conditions
schannel-renegotiate: Private conditions
schannel-stream: Private classes
schannel.asd: The schannel/schannel․asd file
sec-buffer-desc-tclass: Private classes
sec-buffer-tclass: Private classes
sec-handle-tclass: Private classes
server-context: Private classes
server-stream: Public classes
streams.lisp: The schannel/streams․lisp file
Structure, certificate-info: Private structures
System, schannel: The schannel system

W
win-error: Private conditions