Common Lisp Package: CLERIC-EPMD

Functions for querying the EPMD (Erlang Port Mapper Daemon).

README:

FUNCTION

Public

LOOKUP-NODE (NODE-NAME &OPTIONAL (HOST localhost))

Query the EPMD about a node. Returns a REMOTE-NODE object that represents the node.

Undocumented

PUBLISH

PUBLISHED-P

UNPUBLISH

Private

Undocumented

CONNECT-TO-EPMD (&OPTIONAL (HOST localhost))

READ-ALIVE2-RESPONSE (STREAM)

READ-NAMES-RESPONSE (STREAM)

READ-PORT-PLEASE2-RESPONSE (STREAM HOST)

WRITE-ALIVE2-REQUEST (STREAM NODE-NAME PORT &OPTIONAL (EXTRA #()))

WRITE-NAMES-REQUEST (STREAM)

WRITE-PORT-PLEASE2-REQUEST (STREAM NODE-NAME)

MACRO

Private

WITH-EPMD-CONNECTION-STREAM ((STREAM-VAR &OPTIONAL (HOST localhost)) &BODY BODY)

Create a local scope where STREAM-VAR is a socket stream connected to the EPMD.

VARIABLE

Private

*EPMD-SOCKET*

The EPMD socket. NIL if not registered in EPMD.

CONDITION

Public

ALREADY-REGISTERED

This error is signaled when trying to register on the EPMD when already registered.

HOST-UNKNOWN-ERROR

This error is signaled if the hostname for EPMD is unresolvable.

RESPONSE-ERROR

This error is signaled when the EPMD sends an error response.

UNREACHABLE-ERROR

This error is signaled when the EPMD is unreachable.

CONSTANT

Private

+EPMD-PORT+

The default TCP port the EPMD listens on.

Undocumented

+ALIVE2-REQ+

+ALIVE2-RESP+

+NAMES-REQ+

+NODE-TYPE-ERLANG+

+NODE-TYPE-HIDDEN+

+PORT-PLEASE2-REQ+

+PORT2-RESP+

+PROTOCOL-TCPIP4+