{"id":15056280,"url":"https://github.com/erlang/epmd","last_synced_at":"2025-10-19T23:32:08.259Z","repository":{"id":43491102,"uuid":"54518153","full_name":"erlang/epmd","owner":"erlang","description":"Erlang Port Mapper Daemon in Erlang","archived":false,"fork":false,"pushed_at":"2017-07-26T22:03:33.000Z","size":42,"stargazers_count":46,"open_issues_count":3,"forks_count":10,"subscribers_count":12,"default_branch":"master","last_synced_at":"2025-01-30T08:51:14.876Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Erlang","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/erlang.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-03-23T00:23:56.000Z","updated_at":"2024-07-12T19:53:50.000Z","dependencies_parsed_at":"2022-07-30T22:18:01.631Z","dependency_job_id":null,"html_url":"https://github.com/erlang/epmd","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/erlang%2Fepmd","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/erlang%2Fepmd/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/erlang%2Fepmd/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/erlang%2Fepmd/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/erlang","download_url":"https://codeload.github.com/erlang/epmd/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":237228716,"owners_count":19275745,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-09-24T21:49:43.871Z","updated_at":"2025-10-19T23:32:02.985Z","avatar_url":"https://github.com/erlang.png","language":"Erlang","funding_links":[],"categories":[],"sub_categories":[],"readme":"Erlang Port Mapper Daemon\n=========================\n[![Build Status](https://travis-ci.org/erlang/epmd.svg?branch=master)](https://travis-ci.org/erlang/epmd)\n\nAn Erlang implementation of Erlang/OTPs port mapper daemon.\n\nThe Erlang code was originally written by Peer Stritzinger (@peerst) which was\na direct port of Erlang/OTPs C-implementation of EPMD.\n\n* This code is not blessed for production use just yet.\n\nThis EPMD has two levels of interfaces. The top level being an escript, `epmd` that emulates\nthe behavior of Erlang/OTP's `epmd`. The escript utilizes the `epmd` application interface.\n\n### EPMD Application\n\nUsage:\n\n    1\u003e application:start(epmd).\n\n    =INFO REPORT==== 2-Jun-2016::17:04:38 ===\n    EPMD Service started\n    ok\n\n#### Environment variables\n\nThe application respects the following erlang environment variables within the epmd scope:\n\n* `address :: [string()]` - If set, EPMD will listen only on the specified address(es) and the loopback address.\n  The default behavior is to listen on all available IP addresses.\n* `port :: non_neg_integer()` - Identifies which port EPMD will listen to.\n   Uses OS environment variable `$ERL_EPMD_PORT` if not set or defaults to 4369 if neither is set.\n* `relaxed_command_check :: boolean()` - Allows for the epmd to be taken down or forced node unregister by outside influence,\n   i.e. `epmd -kill` and `epmd -stop`\n* `delay_write :: non_neg_integer()` - Simulates a busy server. Delays messages before replying.\n\nThe application respects the following optional OS environment variables:\n\n* `$ERL_EPMD_ADDRESS` - Expects a comma-separated list of IP addresses. Same behavior as `address` above.\n* `$ERL_EPMD_PORT` - Expects an integer. Same behavior as `port` above.\n* `$ERL_EPMD_RELAXED_COMMAND_CHECK` - Treated as `true` if set otherwise `false`. Same behavior as `relaxed_command_check`.\n\n_Note: `$ERL_EPMD_ADDRESS` and `address` is not yet implemented._\n\n### EPMD Escript\n\n    usage: epmd [-d|-debug] [DbgExtra...] [-address List]\n                [-port No] [-daemon] [-relaxed_command_check]\n           epmd [-d|-debug] [-port No] [-names|-kill|-stop name]\n\n    See the Erlang epmd manual page for info about the usage.\n\n    Regular options\n        -address List\n            Let epmd listen only on the comma-separated list of IP\n            addresses (and on the loopback interface).\n        -port No\n            Let epmd listen to another port than default 4369\n        -d\n        -debug\n            Enable debugging. This will give a log to\n            the standard error stream. It will shorten\n            the number of saved used node names to 5.\n\n            If you give more than one debug flag you may\n            get more debugging information.\n        -daemon\n            Start epmd detached (as a daemon)\n        -relaxed_command_check\n            Allow this instance of epmd to be killed with\n            epmd -kill even if there are registered nodes.\n            Also allows forced unregister (epmd -stop).\n\n    DbgExtra options\n        -delay_write Seconds\n            Also a simulation of a busy server. Inserts\n            a delay before a reply is sent.\n\n    Interactive options\n        -names\n            List names registered with the currently running epmd\n        -kill\n            Kill the currently running epmd\n            (only allowed if -names show empty database or\n            -relaxed_command_check was given when epmd was started).\n        -stop Name\n            Forcibly unregisters a name with epmd\n            (only allowed if -relaxed_command_check was given when\n            epmd was started).\n\n\n_Note: `-address`, `-debug` and `-daemon` is not yet implemented._\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ferlang%2Fepmd","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ferlang%2Fepmd","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ferlang%2Fepmd/lists"}