summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/crypto/test/crypto_SUITE.erl41
-rw-r--r--lib/parsetools/doc/src/leex.xml4
-rw-r--r--lib/parsetools/doc/src/notes.xml2
-rw-r--r--lib/parsetools/include/leexinc.hrl2
-rw-r--r--lib/parsetools/src/leex.erl6
-rw-r--r--lib/parsetools/src/yecc.erl10
-rw-r--r--lib/parsetools/test/yecc_SUITE.erl2
-rw-r--r--lib/reltool/doc/src/notes.xml6
-rw-r--r--lib/reltool/doc/src/reltool.xml4
-rw-r--r--lib/reltool/doc/src/reltool_usage.xml2
-rw-r--r--lib/reltool/src/reltool_server.erl2
-rw-r--r--lib/reltool/src/reltool_target.erl2
-rw-r--r--lib/reltool/test/reltool_server_SUITE.erl2
-rw-r--r--lib/sasl/src/release_handler.erl2
-rw-r--r--lib/sasl/src/release_handler_1.erl4
-rw-r--r--lib/sasl/src/systools.erl8
-rw-r--r--lib/sasl/src/systools_make.erl14
-rw-r--r--lib/sasl/test/installer.erl4
-rw-r--r--lib/sasl/test/release_handler_SUITE.erl6
-rw-r--r--lib/sasl/test/rh_test_lib.erl2
-rw-r--r--lib/sasl/test/systools_SUITE.erl2
-rw-r--r--lib/ssl/src/inet_tls_dist.erl7
22 files changed, 88 insertions, 46 deletions
diff --git a/lib/crypto/test/crypto_SUITE.erl b/lib/crypto/test/crypto_SUITE.erl
index c74331f076..58614d9b0a 100644
--- a/lib/crypto/test/crypto_SUITE.erl
+++ b/lib/crypto/test/crypto_SUITE.erl
@@ -114,6 +114,7 @@
use_all_eddh_generate_compute/1,
pbkdf2_hmac/0,
pbkdf2_hmac/1,
+ privkey_to_pubkey/1,
%% Others:
aes_128_cbc/1,
@@ -349,10 +350,13 @@ groups() ->
{rsa, [], [sign_verify,
public_encrypt,
private_encrypt,
- generate
+ generate,
+ privkey_to_pubkey
]},
{dss, [], [sign_verify
%% Does not work yet: ,public_encrypt, private_encrypt
+ %% dsa seem to always have been given bad result. Must fix:
+ %% ,privkey_to_pubkey
]},
{ecdsa, [], [sign_verify, use_all_ec_sign_verify
%% Does not work yet: ,public_encrypt, private_encrypt
@@ -1060,6 +1064,23 @@ private_encrypt(Config) when is_list(Config) ->
lists:foreach(fun do_private_encrypt/1, Params).
%%--------------------------------------------------------------------
+privkey_to_pubkey(Config) ->
+ Params = proplists:get_value(privkey_to_pubkey, Config),
+ lists:foreach(fun do_privkey_to_pubkey/1, Params).
+
+do_privkey_to_pubkey({Type, Priv, Pub}) ->
+ ct:log("~p:~p~nType = ~p,~nPriv = ~p,~n Pub = ~p", [?MODULE,?LINE,Type,Priv,Pub]),
+ case crypto:privkey_to_pubkey(Type, Priv) of
+ Pub ->
+ ok;
+ Priv ->
+ ct:fail("Returned private key", []);
+ Other ->
+ ct:log("~p:~p Other = ~p", [?MODULE,?LINE,Other]),
+ ct:fail("bad", [])
+ end.
+
+%%--------------------------------------------------------------------
generate_compute() ->
[{doc, " Test crypto:genarate_key and crypto:compute_key"}].
generate_compute(Config) when is_list(Config) ->
@@ -1999,9 +2020,11 @@ group_config(rsa, Config) ->
[{rsa_padding,rsa_pkcs1_oaep_padding}, {rsa_mgf1_md,sha}, {rsa_oaep_label, <<"Hej hopp">>}],
[{rsa_padding,rsa_pkcs1_oaep_padding}, {rsa_mgf1_md,sha}, {rsa_oaep_md,sha}, {rsa_oaep_label, <<"Hej hopp">>}]
],
- [{sign_verify, rsa_sign_verify_tests(Config, Msg, Public, Private, PublicS, PrivateS, SignVerify_OptsToTry)},
+ RsaSignVerify = rsa_sign_verify_tests(Config, Msg, Public, Private, PublicS, PrivateS, SignVerify_OptsToTry),
+ [{sign_verify, RsaSignVerify},
{pub_priv_encrypt, gen_rsa_pub_priv_tests(PublicS, PrivateS, MsgPubEnc, PrivEnc_OptsToTry)},
{pub_pub_encrypt, gen_rsa_pub_priv_tests(PublicS, PrivateS, MsgPubEnc, PubEnc_OptsToTry)},
+ {privkey_to_pubkey, get_priv_pub_from_sign_verify(RsaSignVerify)},
{generate, [{rsa, 1024, 3}, {rsa, 2048, 17}, {rsa, 3072, 65537}]}
| Config];
group_config(dss = Type, Config) ->
@@ -2023,7 +2046,10 @@ group_config(dss = Type, Config) ->
lists:member(Hash, SupportedHashs)],
MsgPubEnc = <<"7896345786348 Asldi">>,
PubPrivEnc = [{dss, Public, Private, MsgPubEnc, []}],
- [{sign_verify, SignVerify}, {pub_priv_encrypt, PubPrivEnc} | Config];
+ [{sign_verify, SignVerify},
+ {pub_priv_encrypt, PubPrivEnc},
+ {privkey_to_pubkey, get_priv_pub_from_sign_verify(SignVerify)}
+ | Config];
group_config(ecdsa = Type, Config) ->
{Private, Public} = ec_key_named(),
Msg = ec_msg(),
@@ -4409,3 +4435,12 @@ pbkdf2_hmac(Config) when is_list(Config) ->
error:{notsup, _, "Unsupported CRYPTO_PKCS5_PBKDF2_HMAC"} ->
{skip, "No CRYPTO_PKCS5_PBKDF2_HMAC"}
end.
+
+
+get_priv_pub_from_sign_verify(L) ->
+ lists:foldl(fun get_priv_pub/2, [], L).
+
+get_priv_pub({Type, undefined=_Hash, Private, Public, _Msg, _Signature}, Acc) -> [{Type,Private,Public} | Acc];
+get_priv_pub({Type, _Hash, Public, Private, _Msg}, Acc) -> [{Type,Private,Public} | Acc];
+get_priv_pub({Type, _Hash, Public, Private, _Msg, _Options}, Acc) -> [{Type,Private,Public} | Acc];
+get_priv_pub(_, Acc) -> Acc.
diff --git a/lib/parsetools/doc/src/leex.xml b/lib/parsetools/doc/src/leex.xml
index 153374e16a..aef1544743 100644
--- a/lib/parsetools/doc/src/leex.xml
+++ b/lib/parsetools/doc/src/leex.xml
@@ -222,13 +222,13 @@ io:request(InFile, {get_until,unicode,Prompt,Module,token,[Line]})
<c>[]</c>.</p>
<p>This functions differs from <c>token</c> in that it will
- continue to scan tokens upto and including an
+ continue to scan tokens up to and including an
<c>{end_token,Token}</c> has been scanned (see next
section). It will then return all the tokens. This is
typically used for scanning grammars like Erlang where there
is an explicit end token, <c>'.'</c>. If no end token is
found then the whole file will be scanned and returned. If
- an error occurs then all tokens upto and including the next
+ an error occurs then all tokens up to and including the next
end token will be skipped.</p>
<p>It is not designed to be called directly by an application
diff --git a/lib/parsetools/doc/src/notes.xml b/lib/parsetools/doc/src/notes.xml
index 32a95f51a8..d90ff5acf2 100644
--- a/lib/parsetools/doc/src/notes.xml
+++ b/lib/parsetools/doc/src/notes.xml
@@ -456,7 +456,7 @@
<section><title>Improvements and New Features</title>
<list>
<item>
- <p> The formating of Yecc's error messages has been
+ <p> The formatting of Yecc's error messages has been
improved. (Thanks to Joe Armstrong.) </p>
<p>
Own Id: OTP-8919</p>
diff --git a/lib/parsetools/include/leexinc.hrl b/lib/parsetools/include/leexinc.hrl
index 2a74c252ff..8dfc42f479 100644
--- a/lib/parsetools/include/leexinc.hrl
+++ b/lib/parsetools/include/leexinc.hrl
@@ -32,7 +32,7 @@ string(Ics0, L0, Tcs, Ts) ->
case yystate(yystate(), Ics0, L0, 0, reject, 0) of
{A,Alen,Ics1,L1} -> % Accepting end state
string_cont(Ics1, L1, yyaction(A, Alen, Tcs, L0), Ts);
- {A,Alen,Ics1,L1,_S1} -> % Accepting transistion state
+ {A,Alen,Ics1,L1,_S1} -> % Accepting transition state
string_cont(Ics1, L1, yyaction(A, Alen, Tcs, L0), Ts);
{reject,_Alen,Tlen,_Ics1,L1,_S1} -> % After a non-accepting state
{error,{L0,?MODULE,{illegal,yypre(Tcs, Tlen+1)}},L1};
diff --git a/lib/parsetools/src/leex.erl b/lib/parsetools/src/leex.erl
index 37f3fb7114..15803b3b82 100644
--- a/lib/parsetools/src/leex.erl
+++ b/lib/parsetools/src/leex.erl
@@ -575,7 +575,7 @@ collect_action(Ifile, Chars, L0, Cont0) ->
%% parse_rule(RegExpString, RegExpLine, ActionTokens, Macros, Counter, State) ->
%% {ok,{RE,Action},ActionData,State}.
-%% Parse one regexp after performing macro substition.
+%% Parse one regexp after performing macro substitution.
parse_rule(S, Line, [{dot,_}], Ms, N, St) ->
case parse_rule_regexp(S, Ms, St) of
@@ -1126,7 +1126,7 @@ comp_crs([], Last) -> [{Last,maxchar}].
%% build_dfa(NFA, NfaFirstState) -> {DFA,DfaFirstState}.
%% Build a DFA from an NFA using "subset construction". The major
%% difference from the book is that we keep the marked and unmarked
-%% DFA states in seperate lists. New DFA states are added to the
+%% DFA states in separate lists. New DFA states are added to the
%% unmarked list and states are marked by moving them to the marked
%% list. We assume that the NFA accepting state numbers are in
%% ascending order for the rules and use ordsets to keep this order.
@@ -1264,7 +1264,7 @@ accept([], _) -> noaccept.
%% minimise_dfa(DFA, DfaFirst) -> {DFA,DfaFirst}.
%% Minimise the DFA by removing equivalent states. We consider a
%% state if both the transitions and the their accept state is the
-%% same. First repeatedly run throught the DFA state list removing
+%% same. First repeatedly run through the DFA state list removing
%% equivalent states and updating remaining transitions with
%% remaining equivalent state numbers. When no more reductions are
%% possible then pack the remaining state numbers to get consecutive
diff --git a/lib/parsetools/src/yecc.erl b/lib/parsetools/src/yecc.erl
index 00b1a935b9..5b2a9efe4d 100644
--- a/lib/parsetools/src/yecc.erl
+++ b/lib/parsetools/src/yecc.erl
@@ -117,7 +117,7 @@
%% when debugging).
%% Non-terminals are also given integer codes, starting with -1. The
-%% absolut value of the code is used for indexing a tuple of lists of
+%% absolute value of the code is used for indexing a tuple of lists of
%% rules.
-define(SYMBOLS_AS_CODES, true).
@@ -1317,7 +1317,7 @@ compute_state(Seed, Tables) ->
Closure = keysort(1, erase()),
state_items(Closure, [], [], Tables#tabs.rp_rhs).
-%% Collects a uniqe id for the state (all rule pointers).
+%% Collects a unique id for the state (all rule pointers).
state_items([{RP, LA} | L], Is, Id, RpRhs) ->
I = #item{rule_pointer = RP, look_ahead = LA, rhs = element(RP, RpRhs)},
state_items(L, [I | Is], [RP | Id], RpRhs);
@@ -1911,13 +1911,13 @@ report_conflict(Conflict, St, ActionName, How) ->
if
St#yecc.verbose ->
io:fwrite(<<"~s\n">>, [format_conflict(Conflict)]),
- Formated = format_symbol(ActionName),
+ Formatted = format_symbol(ActionName),
case How of
prec ->
- io:fwrite(<<"Resolved in favor of ~ts.\n\n">>, [Formated]);
+ io:fwrite(<<"Resolved in favor of ~ts.\n\n">>, [Formatted]);
default ->
io:fwrite(<<"Conflict resolved in favor of ~ts.\n\n">>,
- [Formated])
+ [Formatted])
end;
true ->
ok
diff --git a/lib/parsetools/test/yecc_SUITE.erl b/lib/parsetools/test/yecc_SUITE.erl
index e61423d064..b594d231ca 100644
--- a/lib/parsetools/test/yecc_SUITE.erl
+++ b/lib/parsetools/test/yecc_SUITE.erl
@@ -1851,7 +1851,7 @@ otp_7969(Config) when is_list(Config) ->
ok.
otp_8919(doc) ->
- "OTP-8919. Improve formating of Yecc error messages.";
+ "OTP-8919. Improve formatting of Yecc error messages.";
otp_8919(suite) -> [];
otp_8919(Config) when is_list(Config) ->
A1 = erl_anno:new(1),
diff --git a/lib/reltool/doc/src/notes.xml b/lib/reltool/doc/src/notes.xml
index d469c8d9a9..40ea90d83d 100644
--- a/lib/reltool/doc/src/notes.xml
+++ b/lib/reltool/doc/src/notes.xml
@@ -404,7 +404,7 @@
reltool config does not contain all applications that are
listed as <c>{applications,Applications}</c> in a
<c>.app</c> file, then these applications are
- autmatically added when creating the <c>.rel</c> file.
+ automatically added when creating the <c>.rel</c> file.
For 'included_applications', the behaviour was not the
same. I.e. if a <c>rel</c> spec in the reltool config did
not contain all applications that are listed as
@@ -508,7 +508,7 @@
<item> Status bar now indicates that reltool is working
(Processing libraries...) for all configuration changes,
and when generating target system. </item> <item> Title
- of dependecies column in app and mod window is changed
+ of dependencies column in app and mod window is changed
from "Modules used by others" to "Modules using this".
</item> </list>
<p>
@@ -668,7 +668,7 @@
<p>
Allow the same module name in multiple applications
visible to reltool, as long as all but one of the
- applications/modules are explicitely excluded. (Thanks to
+ applications/modules are explicitly excluded. (Thanks to
Andrew Gopienko and Jay Nelson)</p>
<p>
Own Id: OTP-9229</p>
diff --git a/lib/reltool/doc/src/reltool.xml b/lib/reltool/doc/src/reltool.xml
index 136ec2ed69..a6520a2805 100644
--- a/lib/reltool/doc/src/reltool.xml
+++ b/lib/reltool/doc/src/reltool.xml
@@ -386,7 +386,7 @@
will be chosen.</p>
<p>Note that in order for reltool to sort application versions
and thereby be able to select the latest, it is required that
- the version id for the application consits of integers and
+ the version id for the application consists of integers and
dots only, for example <c>1</c>, <c>2.0</c> or
<c>3.17.1</c>.</p>
</item>
@@ -402,7 +402,7 @@
will be chosen.</p>
<p>Note that in order for reltool to sort application versions
and thereby be able to select the latest, it is required that
- the version id for the application consits of integers and
+ the version id for the application consists of integers and
dots only, for example <c>1</c>, <c>2.0</c> or
<c>3.17.1</c>.</p>
</item>
diff --git a/lib/reltool/doc/src/reltool_usage.xml b/lib/reltool/doc/src/reltool_usage.xml
index 743d5fa366..f84ffb05f2 100644
--- a/lib/reltool/doc/src/reltool_usage.xml
+++ b/lib/reltool/doc/src/reltool_usage.xml
@@ -261,7 +261,7 @@
<p>Note that in order for reltool to sort application versions and
thereby be able to select the latest, it is required that the
- version id for the application consits of integers and dots only,
+ version id for the application consists of integers and dots only,
for example <c>1</c>, <c>2.0</c> or <c>3.17.1</c>.</p>
<p>By default the <c>Application inclusion policy</c> on system
diff --git a/lib/reltool/src/reltool_server.erl b/lib/reltool/src/reltool_server.erl
index 43e9d50b18..de7d73bf37 100644
--- a/lib/reltool/src/reltool_server.erl
+++ b/lib/reltool/src/reltool_server.erl
@@ -1012,7 +1012,7 @@ mod_recap_dependencies(S, A, [#mod{name = ModName}=M1 | Mods], Acc, IsIncl) ->
ets:insert(S#state.mod_tab, M3),
mod_recap_dependencies(S, A, Mods, [M3 | Acc], IsIncl2);
[_] when A#app.is_included==false; M1#mod.incl_cond==exclude ->
- %% App is explicitely excluded so it is ok that the module
+ %% App is explicitly excluded so it is ok that the module
%% record does not exist for this module in this
%% application.
mod_recap_dependencies(S, A, Mods, [M1 | Acc], IsIncl);
diff --git a/lib/reltool/src/reltool_target.erl b/lib/reltool/src/reltool_target.erl
index 773e752ad4..1a0f868be8 100644
--- a/lib/reltool/src/reltool_target.erl
+++ b/lib/reltool/src/reltool_target.erl
@@ -677,7 +677,7 @@ del_apps([], Apps) ->
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Create the load path used in the generated script.
%% If PathFlag is true a script intended to be used as a complete
-%% system (e.g. in an embbeded system), i.e. all applications are
+%% system (e.g. in an embedded system), i.e. all applications are
%% located under $ROOT/lib.
%% Otherwise all paths are set according to dir per application.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/lib/reltool/test/reltool_server_SUITE.erl b/lib/reltool/test/reltool_server_SUITE.erl
index c775aa1225..11ae6d6da2 100644
--- a/lib/reltool/test/reltool_server_SUITE.erl
+++ b/lib/reltool/test/reltool_server_SUITE.erl
@@ -2722,7 +2722,7 @@ os_cmd(Cmd) when is_list(Cmd) ->
[]->
{99, []};
Return->
- %% Find the position of the status code wich is last in the string
+ %% Find the position of the status code which is last in the string
%% prepended with #
case string:split(Return, "$#", trailing) of
[_] -> %% This happens only if the sh command pipe is somehow interrupted
diff --git a/lib/sasl/src/release_handler.erl b/lib/sasl/src/release_handler.erl
index 3313f08ff0..7635b1ef78 100644
--- a/lib/sasl/src/release_handler.erl
+++ b/lib/sasl/src/release_handler.erl
@@ -2310,7 +2310,7 @@ safe_write_file_m(File, Data, FileOpts, Masters) ->
%%
%% A different situation is when the same application version is used
%% in old and new release, but the path has changed. This is not
-%% handled here - instead it must be explicitely indicated by the
+%% handled here - instead it must be explicitly indicated by the
%% 'update_paths' option to release_handler:install_release/2 if the
%% code path shall be updated then.
%% -----------------------------------------------------------------
diff --git a/lib/sasl/src/release_handler_1.erl b/lib/sasl/src/release_handler_1.erl
index cc46fa5133..3a5883dfb9 100644
--- a/lib/sasl/src/release_handler_1.erl
+++ b/lib/sasl/src/release_handler_1.erl
@@ -248,7 +248,7 @@ syntax_check_script([]) ->
%% {load_object_code, [Mod1, Mod2]},
%% % delete old version
%% {remove, {Mod1, brutal_purge}}, {remove, {Mod2, brutal_purge}},
-%% % now, some procs migth be running prev current (now old) version
+%% % now, some procs might be running prev current (now old) version
%% % kill them, and load new version
%% {load, {Mod1, brutal_purge}}, {load, {Mod2, brutal_purge}}
%% % now, there is one version of the code (new, current)
@@ -279,7 +279,7 @@ syntax_check_script([]) ->
%% If a process doesn't repsond - never mind. It will be killed
%% later on (if a purge is performed).
%% Hmm, we must do something smart here... we should probably kill it,
-%% but we cant, because its supervisor will restart it directly! Maybe
+%% but we can't, because its supervisor will restart it directly! Maybe
%% we should keep a list of those, call supervisor:terminate_child()
%% when all others are suspended, and call sup:restart_child() when the
%% others are resumed.
diff --git a/lib/sasl/src/systools.erl b/lib/sasl/src/systools.erl
index a97db3a20e..889cf924a3 100644
--- a/lib/sasl/src/systools.erl
+++ b/lib/sasl/src/systools.erl
@@ -43,7 +43,7 @@
%%-----------------------------------------------------------------
%% Options is a list of {path, Path} | silent | local where path sets
-%% the search path, silent supresses error message printing on console,
+%% the search path, silent suppresses error message printing on console,
%% local generates a script with references to the directories there
%% the applications are found.
%%-----------------------------------------------------------------
@@ -57,7 +57,7 @@ make_script(RelName, Opt) ->
%%-----------------------------------------------------------------
%% Options is a list of {path, Path} | silent |
%% {dirs, [src,include,examples,..]} | {erts, ErtsDir} where path
-%% sets the search path, silent supresses error message printing on console,
+%% sets the search path, silent suppresses error message printing on console,
%% dirs includes the specified directories (per application) in the
%% release package and erts specifies that the erts-Vsn/bin directory
%% should be included in the release package and there it can be found.
@@ -116,8 +116,8 @@ script2boot(File, Output0, _Opt) ->
%%-----------------------------------------------------------------
%% Options is a list of {path, Path} | silent | noexec where path sets
-%% search path, silent supresses error message printing on console,
-%% noexec supresses writing the output "relup" file
+%% search path, silent suppresses error message printing on console,
+%% noexec suppresses writing the output "relup" file
%%-----------------------------------------------------------------
make_relup(ReleaseName, UpNameList, DownNameList) ->
systools_relup:mk_relup(ReleaseName, UpNameList, DownNameList, []).
diff --git a/lib/sasl/src/systools_make.erl b/lib/sasl/src/systools_make.erl
index 0cac1099d3..fd2a14954a 100644
--- a/lib/sasl/src/systools_make.erl
+++ b/lib/sasl/src/systools_make.erl
@@ -56,7 +56,7 @@
%% Create a boot script from a release file.
%% Options is a list of {path, Path} | silent | local
%% | warnings_as_errors
-%% where path sets the search path, silent supresses error message
+%% where path sets the search path, silent suppresses error message
%% printing on console, local generates a script with references
%% to the directories there the applications are found,
%% and warnings_as_errors treats warnings as errors.
@@ -195,7 +195,7 @@ do_make_hybrid_boot(TmpVsn, OldBoot, NewBoot, Args) ->
{script,{_RelName1,_RelVsn1},OldScript} = binary_to_term(OldBoot),
{script,{NewRelName,_RelVsn2},NewScript} = binary_to_term(NewBoot),
- %% Everyting upto kernel_load_completed must come from the new script
+ %% Everything up to kernel_load_completed must come from the new script
Fun1 = fun({progress,kernel_load_completed}) -> false;
(_) -> true
end,
@@ -345,7 +345,7 @@ add_apply_upgrade(Script,Args) ->
%% Create a release package from a release file.
%% Options is a list of {path, Path} | silent |
%% {dirs, [src,include,examples,..]} | {erts, ErtsDir} where path
-%% sets the search path, silent supresses error message printing,
+%% sets the search path, silent suppresses error message printing,
%% dirs includes the specified directories (per application) in the
%% release package and erts specifies that the erts-Vsn/bin directory
%% should be included in the release package and there it can be found.
@@ -674,7 +674,7 @@ parse_application({application, Name, Dict}, File, Vsn, Incls)
parse_application(Other, _, _, _) ->
{error, {badly_formatted_application, Other}}.
-%% Test if all included applications specifed in the .rel file
+%% Test if all included applications specified in the .rel file
%% exists in the {included_applications,Incs} specified in the
%% .app file.
override_include(Name, Incs, Incls) ->
@@ -1370,7 +1370,7 @@ find_all(CheckingApp, [Name|T], L, Visited, Found, NotFound) ->
case find_app(Name, L) of
{value, App} ->
{_A,R} = App,
- %% It is OK to have a dependecy like
+ %% It is OK to have a dependency like
%% X includes Y, Y uses X.
case lists:member(CheckingApp, R#application.includes) of
true ->
@@ -1410,7 +1410,7 @@ del_apps([], L) ->
%%______________________________________________________________________
%% Create the load path used in the generated script.
%% If PathFlag is true a script intended to be used as a complete
-%% system (e.g. in an embbeded system), i.e. all applications are
+%% system (e.g. in an embedded system), i.e. all applications are
%% located under $ROOT/lib.
%% Otherwise all paths are set according to dir per application.
@@ -1779,7 +1779,7 @@ add_system_files(Tar, RelName, Release, Path1) ->
%% (well, actually the boot file was looked for in the same
%% directory as RelName, which is not necessarily the same as cwd)
%% --
- %% but also in the path specfied as an option to systools:make_tar
+ %% but also in the path specified as an option to systools:make_tar
%% (but make sure to search the RelName directory and cwd first)
Path = case filename:dirname(RelName) of
"." ->
diff --git a/lib/sasl/test/installer.erl b/lib/sasl/test/installer.erl
index 5ad31c508e..05b0156574 100644
--- a/lib/sasl/test/installer.erl
+++ b/lib/sasl/test/installer.erl
@@ -381,7 +381,7 @@ install_14(TestNode) ->
%%%-----------------------------------------------------------------
-%%% Ths test checks that an upgrade which both upgrades to a new
+%%% The test checks that an upgrade which both upgrades to a new
%%% emulator version, and had a restart_emulator option to
%%% systools:make_relup will be restarted twice on upgrade.
%%% (On downgrade it will happen only once.)
@@ -411,7 +411,7 @@ upgrade_restart_2(TestNode) ->
{"SASL-test","P2B"} ->
upgrade_restart_2a(TestNode);
{"SASL-test","__new_emulator__P1G"} ->
- %% catched the node too early - give it another try
+ %% caught the node too early - give it another try
{wait,whereis(init)}
end.
diff --git a/lib/sasl/test/release_handler_SUITE.erl b/lib/sasl/test/release_handler_SUITE.erl
index 78626bbc91..f0433fd522 100644
--- a/lib/sasl/test/release_handler_SUITE.erl
+++ b/lib/sasl/test/release_handler_SUITE.erl
@@ -654,7 +654,7 @@ upgrade_restart(Conf) when is_list(Conf) ->
ok ->
ok;
{wait,TestNodeInit2a} ->
- %% We catched the node too early - it was supposed to
+ %% We caught the node too early - it was supposed to
%% restart twice, so let's wait for one more restart.
wait_nodes_up([{TestNode,TestNodeInit2a}],"upgrade_restart_2a",[]),
ok = rpc_inst(TestNode, upgrade_restart_2a, [])
@@ -2505,7 +2505,7 @@ copy_tree(Conf, Src, NewName, DestDir) ->
TempTarName = filename:join(PrivDir, "temp_tar_file.tar"),
%% Not compressing tar file here since that would increase test
%% suite time by almost 100%, and the tar file is deleted
- %% imediately anyway.
+ %% immediately anyway.
{ok,Tar} = erl_tar:open(TempTarName, [write]),
ok = erl_tar:add(Tar, Src, NewName, []),
ok = erl_tar:close(Tar),
@@ -2925,7 +2925,7 @@ permanent_p1h(Node) ->
ok = rpc_inst(Node, permanent_p1h, []).
%% For each node in ToNodes, create a target installation which is
-%% indentical to the target installation for FromNode.
+%% identical to the target installation for FromNode.
copy_installed(Conf,FromNode,ToNodes) ->
PrivDir = priv_dir(Conf),
DataDir = ?config(data_dir,Conf),
diff --git a/lib/sasl/test/rh_test_lib.erl b/lib/sasl/test/rh_test_lib.erl
index 7fffb310fc..dba45bece6 100644
--- a/lib/sasl/test/rh_test_lib.erl
+++ b/lib/sasl/test/rh_test_lib.erl
@@ -20,7 +20,7 @@ cmd(Cmd,Args,Env) ->
case open_port({spawn_executable, Cmd}, [{args,Args},{env,Env}]) of
Port when is_port(Port) ->
unlink(Port),
- catch erlang:port_close(Port), % migth already be closed, so catching
+ catch erlang:port_close(Port), % might already be closed, so catching
ok;
Error ->
Error
diff --git a/lib/sasl/test/systools_SUITE.erl b/lib/sasl/test/systools_SUITE.erl
index cd7a157d59..801660ddac 100644
--- a/lib/sasl/test/systools_SUITE.erl
+++ b/lib/sasl/test/systools_SUITE.erl
@@ -1398,7 +1398,7 @@ src_tests_tar(Config) when is_list(Config) ->
%% make_tar: Check that make_tar handles generation and placement of
%% tar files for variables outside the main tar file.
-%% Test the {var_tar, include | ownfile | omit} optio.
+%% Test the {var_tar, include | ownfile | omit} option.
var_tar(Config) when is_list(Config) ->
{ok, OldDir} = file:get_cwd(),
PSAVE = code:get_path(), % Save path
diff --git a/lib/ssl/src/inet_tls_dist.erl b/lib/ssl/src/inet_tls_dist.erl
index dce055e2e0..01759207bb 100644
--- a/lib/ssl/src/inet_tls_dist.erl
+++ b/lib/ssl/src/inet_tls_dist.erl
@@ -444,8 +444,10 @@ gen_accept_connection(
do_accept(
_Driver, AcceptPid, DistCtrl, MyNode, Allowed, SetupTime, Kernel) ->
+ MRef = erlang:monitor(process, AcceptPid),
receive
{AcceptPid, controller} ->
+ erlang:demonitor(MRef, [flush]),
{ok, SslSocket} = tls_sender:dist_tls_socket(DistCtrl),
Timer = dist_util:start_timer(SetupTime),
NewAllowed = allowed_nodes(SslSocket, Allowed),
@@ -463,6 +465,11 @@ do_accept(
{AcceptPid, exit} ->
%% this can happen when connection was initiated, but dropped
%% between TLS handshake completion and dist handshake start
+ ?shutdown2(MyNode, connection_setup_failed);
+ {'DOWN', MRef, _, _, _Reason} ->
+ %% this may happen when connection was initiated, but dropped
+ %% due to crash propagated from other hanshake process which
+ %% failed on inet_tcp:accept (see GH-5332)
?shutdown2(MyNode, connection_setup_failed)
end.