[snmp/agent] Improved mib-storage ets module error handling

Also fixed some of the debug printouts.
[snmp/agent] Some restructuring and some new test cases of mib-server suite
[common_test] Unregister connection if killed

The symptom of this bug was that a (named) telnet connection which was
open and hanging during a timetrap timeout could no longer be opened
again in subsequent test cases.

Since the connection was hanging, ct_telnet:close/1 which was called
during end_per_testcase would fail (timeout) and cause common_test to
brutally kill the connection. The bug was that the connection was not
unregistered at this point. When trying to open the connection again
in the next testcase, common_test attempted to reuse the same
connection since it had not been unregistered. This failed since the
connection in fact was dead.
snmp: Remove use of deprecated crypto functions
crypto, public_key & ssl: Make more functions accept integer keys
ssl: Remove unused `srp_parameters` type spec

As the file 'lib/ssl/src/ssl_srp_primes.hrl' only contains a
specification of a `srp_parameters` type that isn't exported and also
isn't referenced anywhere (neither in the code nor in the
documentation), the type specification (and hence the file as well) can
be removed.
crypto: Allow integer as srp_private arguments according to docs
Merge branch 'siri/ct_telnet/no-more-after-timetrap/OTP-10648' into maint

* siri/ct_telnet/no-more-after-timetrap/OTP-10648:
  [common_test] Unregister connection if killed
Merge branch 'maint'
Merge branch 'raimo/race-in-prim_inet-close/OTP-10497' into maint

* raimo/race-in-prim_inet-close/OTP-10497:
  Do not unlink before closing port
Merge branch 'maint'

Conflicts:
	erts/preloaded/ebin/prim_inet.beam
crypto: Ctify tests and test new API

Also fix bugs found by new tests
Fix watchdog function_clause

Commit 0b7c87dc caused diameter_watchdog:restart/2 to start returning
'stop', so that a watchdog process for a listening transport that
allowed multiple connections to the same peer would die one watchdog
timeout after losing a connection. The new return value was supposed to
be passed up to transition/2, but was instead passed to set_watchdog/1,
resulting in a function_clause error. The resulting crash was harmless
but unseemly.

Not detected by dialyzer.

Thanks to Aleksander Nycz.
add support for hipe on Raspberry Pi (armv6l)

To enable hipe on a Raspberry Pi, configure has to detect the ARM processor
correctly. On a Pi, uname detects the CPU as armv6l. Other CPU variants are
already detected with ARCH=arm, so does now the armv6l of the Raspberry Pi.
ssl: Do not advertise EC ciphers if crypto support is insufficient
Merge branch 'ia/ssl/public_key/crypto/elliptic_curve/OTP-11009' into maint

* ia/ssl/public_key/crypto/elliptic_curve/OTP-11009: (21 commits)
  ssl: Do not advertise EC ciphers if crypto support is insufficient
  crypto: Ctify tests and test new API
  crypto: Allow integer as srp_private arguments according to docs
  ssl: Remove unused `srp_parameters` type spec
  crypto, public_key & ssl: Make more functions accept integer keys
  snmp: Remove use of deprecated crypto functions
  crypto,ssh, netconf, inets: binary_to_integer -> bytes_to_integer
  netconf: Remove use of deprecated crypto functions
  crypto: Documentation fixes from review
  crypto: Change argument order of crypto:next_iv/3
  crypto,public_key,ssl: Change return value of crypto:generate_key(ecdh,..)
  ssl, public_key, crypto: crypto:algorithms/0 -> crypto:supports/0
  ssl, public_key & inets: Remove use of deprecated crypto functions from test code
  ssl: Remove use of deprecated crypto functions
  public_key: Remove use of deprecated crypto functions
  dialyzer: Remove use of deprecated crypto functions
  ssh & crypto: Remove use of deprecated crypto functions from ssh
  Update primary bootstrap
  common_test: Replace use of deprecated crypto functions
  beam_lib, compile: Replace use of deprecated crypto functions
  ...
Fix renaming of bs_put_string instructions

The clause was formerly commented-out because at this point in the code,
no bs_put_string instruction has been generated yet when compiling from
Erlang.

If an Erlang module is compiled to BEAM assembly and the result contains
a bs_put_string instruction, the output can't be compiled to binary
anymore and the compiler crashes with the following error:

$ erlc prs.S
Function: compress/1
prs.S:none: internal error in beam_block;
crash reason: {{case_clause,
                   {'EXIT',
                       {function_clause,
                           [{beam_utils,live_opt,
                                [[{bs_put_string,1,{string,[0]}},
                                  {bs_init,
                                      {f,0},
                                      {bs_append,0,8,{field_flags,[]}},
                                      0,
                                      [{integer,8},{x,0}],
                                      {x,1}},
                                  {label,2}],
                                 2,
                                 {1,{1,1,nil,nil}},
                                 [{block,
                                      [{'%live',2},
                                       {set,[{x,0}],[{x,1}],move},
                                       {'%live',1}]},
                                  return]],
                                [{file,"beam_utils.erl"},{line,639}]},
                            {beam_utils,live_opt,1,
                                [{file,"beam_utils.erl"},{line,205}]},
                            {beam_block,function,2,
                                [{file,"beam_block.erl"},{line,38}]},
                            {lists,mapfoldl,3,
                                [{file,"lists.erl"},{line,1329}]},
                            {beam_block,module,2,
                                [{file,"beam_block.erl"},{line,29}]},
                            {compile,'-select_passes/2-anonymous-2-',2,
                                [{file,"compile.erl"},{line,476}]},
                            {compile,'-internal_comp/4-anonymous-1-',2,
                                [{file,"compile.erl"},{line,276}]},
                            {compile,fold_comp,3,
                                [{file,"compile.erl"},{line,294}]}]}}},
               [{compile,'-select_passes/2-anonymous-2-',2,
                    [{file,"compile.erl"},{line,476}]},
                {compile,'-internal_comp/4-anonymous-1-',2,
                    [{file,"compile.erl"},{line,276}]},
                {compile,fold_comp,3,[{file,"compile.erl"},{line,294}]},
                {compile,internal_comp,4,[{file,"compile.erl"},{line,278}]},
                {compile,'-do_compile/2-anonymous-0-',2,
                    [{file,"compile.erl"},{line,152}]}]}
Merge remote-tracking branch 'upstream/maint'

Conflicts:
	bootstrap/lib/stdlib/ebin/beam_lib.beam
	lib/public_key/test/erl_make_certs.erl
Merge branch 'avi/fix-os-cmd-win/OTP-11104' into maint

* avi/fix-os-cmd-win/OTP-11104:
  Add testcase to exported
  Added primary bootstrap for os.beam
  kernel: redefined deep_list_command test
  Remove unnecessary whitespaces in os.erl and os_SUITE.erl
  Fix deep list argument error under Windows in os:cmd/1
Updated primary bootstrap