Skip to content

Commit 874204f

Browse files
committed
name epmdless is already occupied by another overly complicated -epmd_module alternative, change name to nopmd
1 parent 969bfe6 commit 874204f

7 files changed

+69
-57
lines changed

Diff for: README.md

+34-22
Original file line numberDiff line numberDiff line change
@@ -1,55 +1,67 @@
1-
# Epmdless
1+
# nopmd (No Port Mapper Daemon)
22

3-
If you run distributed services such like pubsubs or message brokers between datacenters with EPMD, all your nodenames and ports are exposed over the internet, and you've probably got more ports open in your firewalls than actual services running behind them. Yuck.
3+
If you run distributed services such like pubsubs or message brokers between regions with EPMD, all your nodenames and ports are exposed over the internet, and you've probably got more ports open in your firewalls than actual services running behind them. Yuck.
44

5-
Don't you wish you could just decide on a port, append it to the nodename and ditch EPMD altogether?
5+
Don't you wish you could just decide on a port, append it to the nodename and call it a day?
66

77
## Elixir
88

99
# mix.exs
10-
{:epmdless, "> 0.0.0"}
10+
{:nopmd, "> 0.0.0"}
1111

12-
# flags (put in --erl "..." when running with iex)
13-
-pa _build/(dev|prod)/lib/epmdless/ebin \
14-
-proto_dist epmdless_(inet|inet6)_(tcp|tls)_dist \
12+
# nodename example (--sname not supported, obviously)
13+
--name [email protected]:8080
14+
15+
# ipv6 nodename example
16+
--name mynode@::1:8080
17+
18+
# erl flags (put in --erl "..." when running with iex)
19+
-pa _build/(dev|prod)/lib/nopmd/ebin \
20+
-proto_dist nopmd_(inet|inet6)_(tcp|tls)_dist \
1521
-no_epmd
1622

1723
## Erlang (Hex)
1824

1925
# rebar.config
20-
{deps, [epmdless]}.
26+
{deps, [nopmd]}.
2127
{plugins, [rebar3_hex]}.
2228

29+
# nodename example (-sname not supported, obviously)
30+
-name [email protected]:8080
31+
32+
# ipv6 nodename example
33+
-name mynode@::1:8080
34+
2335
# flags
24-
-pa _build/default/lib/epmdless/ebin
25-
-proto_dist epmdless_(inet|inet6)_(tcp|tls)_dist
36+
-pa _build/default/lib/nopmd/ebin
37+
-proto_dist nopmd_(inet|inet6)_(tcp|tls)_dist
2638
-no_epmd
2739

2840
## Build & Test Locally
2941

3042
$ rebar3 compile
3143
$ epmd -kill
3244

33-
$ erl --name mynode@0.0.0.0:8080 \
34-
-pa _build/default/lib/epmdless/ebin \
35-
-proto_dist epmdless_inet_tcp \
45+
$ erl -name mynode@127.0.0.1:8080 \
46+
-pa _build/default/lib/nopmd/ebin \
47+
-proto_dist nopmd_inet_tcp \
3648
-no_epmd
3749

38-
$ erl --name mynode@::1:8080 \
39-
-pa _build/default/lib/epmdless/ebin \
40-
-proto_dist epmdless_inet6_tcp \
50+
$ erl -name mynode@::1:8080 \
51+
-pa _build/default/lib/nopmd/ebin \
52+
-proto_dist nopmd_inet6_tcp \
4153
-no_epmd
4254

43-
$ erl --name mynode@0.0.0.0:8080 \
44-
-pa _build/default/lib/epmdless/ebin \
45-
-proto_dist epmdless_inet_tls \
55+
$ erl -name mynode@127.0.0.1:8080 \
56+
-pa _build/default/lib/nopmd/ebin \
57+
-proto_dist nopmd_inet_tls \
4658
-ssl_dist_opt server_certfile cert.pem \
4759
-ssl_dist_opt server_secure_renegotiate true client_secure_renegotiate true \
4860
-no_epmd
4961

50-
$ erl --name mynode@::1:8080 \
51-
-pa _build/default/lib/epmdless/ebin \
52-
-proto_dist epmdless_inet6_tls \
62+
$ erl -name mynode@::1:8080 \
63+
-pa _build/default/lib/nopmd/ebin \
64+
-proto_dist nopmd_inet6_tls \
5365
-ssl_dist_opt server_certfile cert.pem \
5466
-ssl_dist_opt server_secure_renegotiate true client_secure_renegotiate true \
5567
-no_epmd

Diff for: src/epmdless.app.src

-10
This file was deleted.

Diff for: src/nopmd.app.src

+10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{application, nopmd,
2+
[{description, "Simple Erlang distribution without EPMD (supports TLS and IPV6)"},
3+
{vsn, "0.1.0"},
4+
{registered, []},
5+
{applications, [kernel, stdlib]},
6+
{env,[]},
7+
{modules, []},
8+
{licenses, ["Apache 2.0"]},
9+
{links, [{"GitHub", "https://github.com/suazithustra/nopmd"}]}
10+
]}.

Diff for: src/epmdless_inet6_tcp_dist.erl renamed to src/nopmd_inet6_tcp_dist.erl

+10-10
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
%%
1818
%% %CopyrightEnd%
1919
%%
20-
-module(epmdless_inet6_tcp_dist).
20+
-module(nopmd_inet6_tcp_dist).
2121

2222
%% Handles the connection setup phase with other Erlang nodes.
2323

@@ -32,46 +32,46 @@
3232
%% ------------------------------------------------------------
3333

3434
select(Node) ->
35-
epmdless_inet_tcp_dist:gen_select(inet6_tcp, Node).
35+
nopmd_inet_tcp_dist:gen_select(inet6_tcp, Node).
3636

3737
%% ------------------------------------------------------------
3838
%% Get address family
3939
%% address() => #net_address{}
4040
%% ------------------------------------------------------------
4141

4242
address() ->
43-
epmdless_inet_tcp_dist:gen_address(inet6_tcp).
43+
nopmd_inet_tcp_dist:gen_address(inet6_tcp).
4444

4545
%% ------------------------------------------------------------
4646
%% Create the listen socket, i.e. the port that this erlang
4747
%% node is accessible through.
4848
%% ------------------------------------------------------------
4949

5050
listen(Name, Host) ->
51-
epmdless_inet_tcp_dist:gen_listen(inet6_tcp, Name, Host).
51+
nopmd_inet_tcp_dist:gen_listen(inet6_tcp, Name, Host).
5252

5353
%% ------------------------------------------------------------
5454
%% Accepts new connection attempts from other Erlang nodes.
5555
%% ------------------------------------------------------------
5656

5757
accept(Listen) ->
58-
epmdless_inet_tcp_dist:gen_accept(inet6_tcp, Listen).
58+
nopmd_inet_tcp_dist:gen_accept(inet6_tcp, Listen).
5959

6060
%% ------------------------------------------------------------
6161
%% Accepts a new connection attempt from another Erlang node.
6262
%% Performs the handshake with the other side.
6363
%% ------------------------------------------------------------
6464

6565
accept_connection(AcceptPid, Socket, MyNode, Allowed, SetupTime) ->
66-
epmdless_inet_tcp_dist:gen_accept_connection(inet6_tcp, AcceptPid, Socket, MyNode, Allowed, SetupTime).
66+
nopmd_inet_tcp_dist:gen_accept_connection(inet6_tcp, AcceptPid, Socket, MyNode, Allowed, SetupTime).
6767

6868
%% ------------------------------------------------------------
6969
%% Setup a new connection to another Erlang node.
7070
%% Performs the handshake with the other side.
7171
%% ------------------------------------------------------------
7272

7373
setup(Node, Type, MyNode, LongOrShortNames,SetupTime) ->
74-
epmdless_inet_tcp_dist:gen_setup(inet6_tcp, Node, Type, MyNode, LongOrShortNames, SetupTime).
74+
nopmd_inet_tcp_dist:gen_setup(inet6_tcp, Node, Type, MyNode, LongOrShortNames, SetupTime).
7575

7676
%%
7777
%% Close a socket.
@@ -80,10 +80,10 @@ close(Socket) ->
8080
inet6_tcp:close(Socket).
8181

8282
is_node_name(Node) when is_atom(Node) ->
83-
epmdless_inet_tcp_dist:is_node_name(Node).
83+
nopmd_inet_tcp_dist:is_node_name(Node).
8484

8585
setopts(S, Opts) ->
86-
epmdless_inet_tcp_dist:setopts(S, Opts).
86+
nopmd_inet_tcp_dist:setopts(S, Opts).
8787

8888
getopts(S, Opts) ->
89-
epmdless_inet_tcp_dist:getopts(S, Opts).
89+
nopmd_inet_tcp_dist:getopts(S, Opts).

Diff for: src/epmdless_inet6_tls_dist.erl renamed to src/nopmd_inet6_tls_dist.erl

+9-9
Original file line numberDiff line numberDiff line change
@@ -19,32 +19,32 @@
1919
%%
2020

2121
%%
22-
-module(epmdless_inet6_tls_dist).
22+
-module(nopmd_inet6_tls_dist).
2323

2424
-export([childspecs/0]).
2525
-export([listen/2, accept/1, accept_connection/5,
2626
setup/5, close/1, select/1, address/0]).
2727

2828
childspecs() ->
29-
epmdless_inet_tls_dist:childspecs().
29+
nopmd_inet_tls_dist:childspecs().
3030

3131
select(Node) ->
32-
epmdless_inet_tls_dist:gen_select(inet6_tcp, Node).
32+
nopmd_inet_tls_dist:gen_select(inet6_tcp, Node).
3333

3434
address() ->
35-
epmdless_inet_tls_dist:gen_address(inet6_tcp).
35+
nopmd_inet_tls_dist:gen_address(inet6_tcp).
3636

3737
listen(Name, Host) ->
38-
epmdless_inet_tls_dist:gen_listen(inet6_tcp, Name, Host).
38+
nopmd_inet_tls_dist:gen_listen(inet6_tcp, Name, Host).
3939

4040
accept(Listen) ->
41-
epmdless_inet_tls_dist:gen_accept(inet6_tcp, Listen).
41+
nopmd_inet_tls_dist:gen_accept(inet6_tcp, Listen).
4242

4343
accept_connection(AcceptPid, Socket, MyNode, Allowed, SetupTime) ->
44-
epmdless_inet_tls_dist:gen_accept_connection(inet6_tcp, AcceptPid, Socket, MyNode, Allowed, SetupTime).
44+
nopmd_inet_tls_dist:gen_accept_connection(inet6_tcp, AcceptPid, Socket, MyNode, Allowed, SetupTime).
4545

4646
setup(Node, Type, MyNode, LongOrShortNames,SetupTime) ->
47-
epmdless_inet_tls_dist:gen_setup(inet6_tcp, Node, Type, MyNode, LongOrShortNames,SetupTime).
47+
nopmd_inet_tls_dist:gen_setup(inet6_tcp, Node, Type, MyNode, LongOrShortNames,SetupTime).
4848

4949
close(Socket) ->
50-
epmdless_inet_tls_dist:gen_close(inet6_tcp, Socket).
50+
nopmd_inet_tls_dist:gen_close(inet6_tcp, Socket).

Diff for: src/epmdless_inet_tcp_dist.erl renamed to src/nopmd_inet_tcp_dist.erl

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
%%
1818
%% %CopyrightEnd%
1919
%%
20-
-module(epmdless_inet_tcp_dist).
20+
-module(nopmd_inet_tcp_dist).
2121

2222
%% Handles the connection setup phase with other Erlang nodes.
2323

Diff for: src/epmdless_inet_tls_dist.erl renamed to src/nopmd_inet_tls_dist.erl

+5-5
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
%%
2020

2121
%%
22-
-module(epmdless_inet_tls_dist).
22+
-module(nopmd_inet_tls_dist).
2323

2424
-export([childspecs/0]).
2525
-export([listen/2, accept/1, accept_connection/5,
@@ -56,20 +56,20 @@ select(Node) ->
5656
gen_select(inet_tcp, Node).
5757

5858
gen_select(Driver, Node) ->
59-
epmdless_inet_tcp_dist:gen_select(Driver, Node).
59+
nopmd_inet_tcp_dist:gen_select(Driver, Node).
6060

6161
%% ------------------------------------------------------------
6262
%% Get the address family that this distribution uses
6363
%% ------------------------------------------------------------
6464
address() ->
6565
gen_address(inet_tcp).
6666
gen_address(Driver) ->
67-
epmdless_inet_tcp_dist:gen_address(Driver).
67+
nopmd_inet_tcp_dist:gen_address(Driver).
6868

6969
%% -------------------------------------------------------------------------
7070

7171
is_node_name(Node) ->
72-
epmdless_inet_tcp_dist:is_node_name(Node).
72+
nopmd_inet_tcp_dist:is_node_name(Node).
7373

7474
%% -------------------------------------------------------------------------
7575

@@ -200,7 +200,7 @@ listen(Name, Host) ->
200200
gen_listen(inet_tcp, Name, Host).
201201

202202
gen_listen(Driver, Name, Host) ->
203-
case epmdless_inet_tcp_dist:gen_listen(Driver, Name, Host) of
203+
case nopmd_inet_tcp_dist:gen_listen(Driver, Name, Host) of
204204
{ok, {Socket, Address, Creation}} ->
205205
inet:setopts(Socket, [{packet, 4}, {nodelay, true}]),
206206
{ok, {Socket, Address#net_address{protocol=tls}, Creation}};

0 commit comments

Comments
 (0)