aboutsummaryrefslogtreecommitdiffstats
path: root/lib
AgeCommit message (Collapse)Author
2013-09-02Introduce pre- and post-test i/o logPeter Andersson
2013-09-02Merge branch 'lukas/export-ei-ic-headers-libs/OTP-11284' into maintLukas Larsson
* lukas/export-ei-ic-headers-libs/OTP-11284: ei ic: install headers and libs into usr
2013-09-02Merge remote branch 'origin/peppe/common_test/test_server_h_problem' into maintPeter Andersson
* origin/peppe/common_test/test_server_h_problem: Remove the obsolete test_server_h error handler Tag sasl and error reports with suite, group, and function in log Conflicts: lib/common_test/src/cth_log_redirect.erl OTP-11263
2013-09-02Merge remote branch 'origin/peppe/common_test/cth_log_error' into maintPeter Andersson
* origin/peppe/common_test/cth_log_error: Fix error in builtin hook calling non-existing function OTP-11238
2013-09-02Merge branch 'ia/public_key/PKCS-7-addition/OTP-10874' into maintIngela Anderton Andin
* ia/public_key/PKCS-7-addition/OTP-10874: public_key: Add support for "Simple Certificate Enrollment Protocol" to PKCS-7
2013-09-02ssl: Skip second length indicator in EC extensionsIngela Anderton Andin
We have no need to care about the value of this length indicator so we do not need to match it or verify it, it is unnecessary work.
2013-09-02ssl: Handle signature_algorithm field in digitally_signed properlyIngela Anderton Andin
with proper defaults Added ssl_ECC_SUITE
2013-08-30Fix location of true binary under Mac OSXSimon Cornish
2013-08-30PER, UPER: Optimize encoding using an intermediate formatBjörn Gustavsson
There are some minor incompatibilities for BIT STRING: {bit,Position} is now only only supported for a named BIT STRING type. Values longer than the maximum size for the BIT STRING type would be truncated silently - they now cause an exception.
2013-08-30Refactor decoding of components of SEQUENCE OF / SET OFBjörn Gustavsson
As a preparation for rewriting handling of table constraints, we must make sure that code for decoding a SEQUENCE OF / SET OF can be be contained in a single clause of a function; thus, we must not output the helper function for decoding of each component directly following the code that follows it. Use asn1ct_func:call_gen/3 to delay outputting the helper function.
2013-08-30PER,UPER: Get rid of unused 'telltype' argument in decoding functionsBjörn Gustavsson
2013-08-30Optimize the generated encode/2 functionBjörn Gustavsson
Use 'try' instead of 'catch', and don't match anything that cannot actually be returned from the generated encoding code.
2013-08-30UPER: Optimize complete/1Björn Gustavsson
2013-08-30Clean up checking of objectsBjörn Gustavsson
2013-08-30Improve tests of deep table constraintsBjörn Gustavsson
2013-08-30BER: Handle multiple optional SEQUENCE fields with table constraintsBjörn Gustavsson
2013-08-30Test OPTIONAL and DEFAULT for open typesBjörn Gustavsson
2013-08-30PER/UPER: Fix encoding of an object set with multiple inlined constructsBjörn Gustavsson
Also extend the test suite with more tests of inlined constructs in object sets.
2013-08-30Remove broken support for multiple UNIQUEBjörn Gustavsson
According to the ASN.1 standard, having multiple UNIQUE in class is allowed. For example: C ::= CLASS { &id1 INTEGER UNIQUE, &id2 INTEGER UNIQUE } In practice, no one uses multiple UNIQUE. The ASN.1 compiler will crash if a class with multiple UNIQUE is used, but the backends have half-hearted support for multiple UNIQUE in that they generate helper functions similar to: getenc_OBJECT_SET(id1, 42) -> fun enc_XXX/3; ... Since we have no plans to implement support for multiple UNIQUE (no one seems to have missed it), simplify the helper functions like this: getenc_OBJECT_SET(42) -> fun enc_XXX/3; ...
2013-08-30Extend the test for parameterized information objectsBjörn Gustavsson
2013-08-30asn1_SUITE: Remove off-topic (and slow) smp/1 test caseBjörn Gustavsson
The smp1/1 test case seems test how well the SMP emulator can parallelize tasks, not any functionality in the asn1 application that is not tested in other tests.
2013-08-30SeqOf: Add more tricky SEQUENCE OF testsBjörn Gustavsson
2013-08-30Clean up handling of extension addition groupsBjörn Gustavsson
Break out the code to a separate function to make it more readable. Also avoid hard-coding the name of the value to use as "Val1" as it may not be true in the future. Instead of using a list comprenhension like this: case [X || X <- [element(5, Val),element(6, Val)], X =/= asn1_NOVALUE] of [] -> ...; _ -> ... end use an orelse chain: case element(5, Val) =/= asn1_NOVALUE orelse element(5, Val) =/= asn1_NOVALUE of false -> ...; true -> ... end
2013-08-30Refactor encoding of REALBjörn Gustavsson
To facilitate optimizing PER encoding using an intermediate format, we must change asn1rtt_real_common:encode_real/1 so that it only returns the encoded binary.
2013-08-30Teach asn1ct_func to dynamically generate run-time functionsBjörn Gustavsson
2013-08-29Allow public_key:pem_entry_decode/2) to handle AES-128-CBC ciphered keysSimon Cornish
Private keys generated by modern versions of ssh-keygen are ciphered with AES-128-CBC instead of DES-EDE3-CBC. Since DES-EDE3-CBC ciphered keys are handled, and the underlying support for AES-128-CBC is already present, it seems a bug of omission that AES-128-CBC ciphered keys are not.
2013-08-29Corrections so that the documentation confirms to the DTDKenneth Lundin
2013-08-29public_key: Add support for "Simple Certificate Enrollment Protocol" to PKCS-7Ingela Anderton Andin
2013-08-29ei ic: install headers and libs into usrLukas Larsson
2013-08-29Merge branch 'dgud/wx/update-doxygen/OTP-11279' into maintDan Gudmundsson
* dgud/wx/update-doxygen/OTP-11279: wx: Add toolbar testcase wx: Add character event test/example wx: Add wxPanel:setFocusIgnoringChildren/1 wx: Add wxClipboardTextEvent wx: Fix bug in wxStatusBar:getFieldRect/2 wx: Fix api generator
2013-08-29mnesia: Checkpoint fixDan Gudmundsson
Avoid hanging waiting for other processes on other node to commit.
2013-08-29mnesia: Improve checkpoint activationDan Gudmundsson
Fixed a race where some parts of a transaction could be added to the checkpoint. There are probably more races here but this improves the current testcases.
2013-08-29mnesia: Improve checkpoint testsDan Gudmundsson
2013-08-29mnesia: Cleanup and remove obsolete codeDan Gudmundsson
We don't support communicating with such old nodes anyway.
2013-08-28Remove the obsolete test_server_h error handlerPeter Andersson
2013-08-28Tag sasl and error reports with suite, group, and function in logPeter Andersson
2013-08-28ssl: Make the ssl manager name for erlang distribution over SSL/TLSIngela Anderton Andin
relative to the module name of the ssl_manager. This can be beneficial when making tools that rename modules for internal processing in the tool.
2013-08-28Merge branch 'tab/tramp_emacs_erl/OTP-11270' into maintFredrik Gustafsson
* tab/tramp_emacs_erl/OTP-11270: tools: In Emacs it is possible to remotely edit a file, by opening for example /ssh:somehost.com:/path/to/file.erl. In Emacs, the feature that makes this possible, is called TRAMP. When compiling such a file, by typing C-c C-k, an inferior Erlang shell is opened on the remote host, but the compilation expression that was evaluated in the remote Erlang shell was:
2013-08-28Merge branch 'fredrik/ssl/log_alert_doc/OTP-11271' into maintFredrik Gustafsson
* fredrik/ssl/log_alert_doc/OTP-11271: ssl: documentation regarding log_alert
2013-08-28Fix a Yecc bugHans Bolinder
A bug causing Yecc to generate badly formed parsers when encountering very simple recursive rules has been fixed. Thanks to Eric Pailleau for reporting the bug.
2013-08-28asn1ct_constructed_per: Simplify gen_enc_line() and friendsBjörn Gustavsson
The first clause of gen_enc_line() allows us to pass in [] as the value for Element; if we modify the only caller that passes [] to pass an actual expression we can remove the first clause. Furthermore, since the Pos argument was only used by the first clause, we can remove the Pos argument. We can also remove the first clause in gen_enc_component_optional(), since the code in its body is exactly the same as in the following clause.
2013-08-28Remove code for handling an object/object set reference in SEQUENCEBjörn Gustavsson
An field in a class that references an object or object set is not allowed to be referenced directly from within a SEQUENCE.
2013-08-27Fix variable usage tracking in some record errorsAnthony Ramine
When reporting a field redefinition in a record, erl_lint can forget about some old unused variables. f() -> X = 1, #r{a=foo,a=bar,a=qux}.
2013-08-27Fix unsafe variable tracking in try expressionsAnthony Ramine
Variables used in the body of a try expression were marked as unsafe *and* used, which makes no sense as an unsafe variable can't be used. Function vtsubtract/2 is used to forget usage of such unsafe variables. Reported-by: Paul Davis
2013-08-27Fix variable usage tracking in erl_lintAnthony Ramine
When analyzing complex expressions (i.e. comprehensions, cases, tries, ifs and receives), erl_lint does not forget about old unused variables when returning the updated variable table. This causes a bug where old unused variables are not recorded as such: t(X, Y) -> #r{a=[ K || K <- Y ],b=[ K || K <- Y ]}. As erl_lint uses vtmerge_pat/2 to merge the results of the analysis of the two list comprehensions, X is marked as used and the warning is not emitted. The function vtmerge_pat/2 is used instead of the similar vtmerge/2 which does not mark multiple occurrences of a variable as usage to handle cases like the following one: t(X, Y) -> #r{a=A=X,b=A=Y}. Other simpler expressions like conses, tuples and external fun references do not correctly follow this behaviour, e.g. A is not marked as used in the following code: t(X, Y) -> {A=X,A=Y}. This commit fixes both issues and makes erl_lint not return old unused variables in updated tables and makes all compound expressions use vtmerge_pat/2. Reported-by: Anders Ramsell
2013-08-27ssl: documentation regarding log_alertFredrik Gustafsson
2013-08-27Fix error in builtin hook calling non-existing functionPeter Andersson
OTP-11238
2013-08-27wx: Add toolbar testcaseDan Gudmundsson
2013-08-27wx: Add character event test/exampleDan Gudmundsson
2013-08-27tools:Fredrik Gustafsson
In Emacs it is possible to remotely edit a file, by opening for example /ssh:somehost.com:/path/to/file.erl. In Emacs, the feature that makes this possible, is called TRAMP. When compiling such a file, by typing C-c C-k, an inferior Erlang shell is opened on the remote host, but the compilation expression that was evaluated in the remote Erlang shell was: c("/ssh:somehost.com:/path/to/file", [...]). which resulted in a "no such file or directory" error. This commit changes the compilation expression into: c("/path/to/file", [...]). for files opened remotely via TRAMP. The file name is adjusted similarly when compiling .yrl and .xrl files. In a buffer opened remotely, the Elisp function buffer-file-name returns the full path with TRAMP syntax. In this example it would be "/ssh:somehost.com:/path/to/file.erl". A new function, erlang-local-buffer-file-name, has been introduced, which peels off the TRAMP syntax on remotely opened files, while for locally opened files, it just calls buffer-file-name.