Age | Commit message (Collapse) | Author |
|
The ERL-82 issue requests a way to calculate a CMAC in Erlang. The
AES128 CMAC is standartized in RFC 4493 and used e.g. for message
authentication in the LoRaWAN networks.
The CMAC is implemented by OpenSSL since v1.0.1, but as @IngelaAndin
stated in response to the ERL-82, the current crypto implementation
does not include functions that call those OpenSSL cryptolib functions.
This commit introduces a new function `crypto:cmac` that calls
the corresponding OpenSSL functions and calculates the CMAC.
Only the cmac_nif is implemented. The incremental functions (init,
update, final) are not provided because the current OpenSSL does
not allow custom memory allocators like `enif_alloc_resource`.
The Erlang user guide states that at least OpenSSL 0.9.8 is required,
so I added few #ifdefs so the code is compatible with all versions.
However, the OpenSSL pages say that the pre-1.0.1 versions (0.9.8 and
1.0.0) are no longer maintained. Even the 1.0.1 will be retired by
Dec 2016. Hence I believe that adding a 1.0.1-only function like CMAC
should be OK.
|
|
|
|
Conflicts:
OTP_VERSION
erts/doc/src/notes.xml
erts/vsn.mk
lib/common_test/doc/src/notes.xml
lib/common_test/vsn.mk
lib/ssl/doc/src/notes.xml
lib/ssl/src/ssl.appup.src
lib/ssl/vsn.mk
lib/stdlib/test/ets_SUITE.erl
otp_versions.table
|
|
|
|
* raimo/ssl/version-selection/maint-18/OTP-13753:
Improve version selection
|
|
* peppe/ct_telnet_duplicated_lines/OTP-13730:
Fix error with duplicated printouts by ct_telnet:expect/3
|
|
OTP-13730
|
|
|
|
'imrivera/kernel/fix-code_server-crash/ERL-194/PR-1128/OTP-13765' into maint
* imrivera/kernel/fix-code_server-crash/ERL-194/PR-1128/OTP-13765:
Fix code_server crash when adding some code paths ERL-194
|
|
Use the list of versions that the server allows and among those choose
the highest version that is not higher than the client's version.
Note that this chosen version might be lower than the client's version,
but is used to improve interoperability.
Patch suggested by Dimitry Borisov refering to RFC 5246 appendix E.1.
|
|
|
|
'raimo/stdlib/gen_statem-types-and-templates/ERL-172_ERL-187/OTP-13746' into maint
* raimo/stdlib/gen_statem-types-and-templates/ERL-172_ERL-187/OTP-13746:
Fix type and template errors from bugs.erlang.org: ERL-172 and ERL-187
|
|
|
|
Conflicts:
OTP_VERSION
|
|
|
|
|
|
|
|
maint-19
* egil/compiler/fix-literal-binary-match/ERL-190/OTP-13738:
Update primary bootstrap
Revert "beam_dead: Improve optimization of literal binary matching"
compiler: Test literal binary matching
|
|
* sverker/update_counter-deadlock/ERL-188/OTP-13731:
erts: Add test ets_SUITE:update_counter_table_growth
erts: Fix deadlock in ets:update_counter/4
erts: Optimize db_finalize_dbterm_hash
|
|
|
|
This reverts commit 105c5b0071056dc062797e58772e098d2a3a4627.
|
|
The following regression was introduced in 19.0:
foo(bar, <<"x">>) -> 1;
foo(_, <<"x">>) -> 2;
foo(_, <<"y">>) -> 3;
foo(_, _) -> fail.
The call foo(bar,<<"y">>) would errorneous return 'fail' instead of 3.
A testcase in match_SUITE has been added to verify this.
|
|
For applications that are not included in a 'rel' spec in the reltool
config, dependencies in the .app file are not followed. This is now
corrected.
|
|
For applications that are included in a 'rel' spec in the reltool
config, some dependency chains are not followed. E.g.
* Application x has y as included application, and y in turn has z as
included application. Then z is not included.
* Application x has y in its 'applications' tag in the .app file, and
y in turn has z as included application. Then z is not included.
This is now corrected - all app-file dependencies are recusively
followed for all applications that are included in a 'rel' spec in the
reltool config.
|
|
For applications that are explicitly included in the reltool config,
but that are not included in a 'rel' spec, dependencies in the .app
file are not followed (only xref dependencies are taken care of).
|
|
* siri/cuddle-maint:
[sasl test] Skip tests on slow host
[sasl test] Catch erlang:port_close/1
[ct test] Extent node startup timeouts in netconfc_remote_SUITE
[ct test] Monitor netconf server during transaction
[sasl test] Extend wait time when starting nodes
[ct test] Skip system time related tests on TimeWarpingOS
|
|
* siri/cuddle-master:
Make crashdump_viewer_SUITE independent of OTP version
|
|
|
|
|
|
|
|
* ingela/odbc/ctify:
odbc: Convert doc clauses form test_server to ct
odbc: Replace test_server with ct eqvivalents
odbc: Remove legacy config macros
odbc: Remove legacy suite clauses from test suites
|
|
|
|
In TLS-1.2 the selection of the servers algorithms and the the
possible selection of algorithms for the client certificate verify
message have different requirements.
|
|
Tests in ECC_SUITE did not always use the certs implied by the
name. Variable naming also confused the intent.
ssl_certificate_verify_SUITE did not clean up properly and tests could
fail due to cache problems.
|
|
release_handler_SUITE:otp_9395_update_many_mods and
otp_9395_rm_many_mods often fail on test host 'nain' due to a very
slow sys call. These tests are now skipped on this host.
|
|
After starting a node with open_port({spawn_executable,...},...), the
resulting port is closed both automatically and by the calling
rh_test_lib:cmd/3. To avoid 'badarg' in the case when the automatic is
faster, the call to erlang:port_close/1 is now catched.
|
|
|
|
Netconf client tests fail every now and then with
'table_trans_timeout' with no obvious reason. A monitor of the maint
netconf server process is now added - in case this process crashes
during the transaction.
|
|
* maint:
wx: Prepare for using Erlang types and specs
syntax_tools: Improve types
syntax_tools: Improve seealso:s referring to types
erl_docgen: Allow 'seealso' in 'name'
erl_docgen: Generate type links in callback module creating erlref
erl_docgen: Correct callback module for creating erlref
erl_docgen: Improve callback module for creating erlref
edoc: Correct types
|
|
Create correct links to datatypes outside of the wx application.
The added time for generating the doc/specs/specs_* files is unwelcome
(they are currently not used).
|
|
|
|
Extract specs och types from source files, which ensures that
seealso:s referring to, for example, erl_parse:abstract_form(), are
assigned working links.
|
|
|
|
Create links to types, but generate no links to local types.
|
|
Show map fields correctly.
|
|
Create `Module:Type()' instead of `Type() (see module Module)'.
|
|
|
|
* maint:
syntax_tools: Make erl_tidy work on input file with tilde
|
|
See also http://bugs.erlang.org/browse/ERL-151.
|
|
* maint:
dialyzer: Suppress warns on generated case stmts
|