aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2011-05-18Add true streaming AES (CTR) encryption and streaming HMAC operationsTravis Jensen
The current crypto module implementations require all of the data being encrypted or authenticated to be in memory at one time. When trying to encrypt or authenticate a large file (on order of GBs), this is problematic. The implementation of AES CTR uses the same underlying implementation as aes_ctr_[en|de]crypt, but hands the state back to the client after every operation. The HMAC implementation differs from the previous implementations of sha_mac and md5_mac. The old implementations did not utilize the OpenSSL HMAC implementation. In order to ensure that I didn't implement something incorrectly, I chose to use the OpenSSL HMAC implementation directly, since it handles streaming as well. This has the added side benefit of allowing other hash functions to be used as desired (for instances, I added support for ripemd160 hashing). While I haven't done this, it seems like the existing md5_mac and sha_mac functions could either be depricated or redefined in terms of the new hmac_ functions. Update AES CTR and HMAC streaming with code review input Ensure that memcpy operations in hmac operations are being size checked properly. Rename aes_ctr_XXX_with_state to aes_ctr_stream_XXX. Remove redundant hmac_init_[sha|md5|ripemd160] functions. Fix documentation for hmac_final_n. Fix possible error using negative value as a marker on an unsigned int Now, use a separate marker and add a unit test to test specifically for a case where HashLen is larger than the underlying resultant hash. Revert "Fix possible error using negative value as a marker on an unsigned int" This reverts commit 59cb177aa96444c0fd3ace6d01f7b8a70dd69cc9. Resolve buffer overflow posibility on an unsigned int. Change handling the marker for HashLen to use the fact that a second parameter that has to be the the HashLen was passed. Also, ensure that HashLen parameter is positive.
2011-05-10Merge branch 'siri/stdlib/list-to-set-for-dynamic-temporary-procs/OTP-9242' ↵Siri Hansen
into dev * siri/stdlib/list-to-set-for-dynamic-temporary-procs/OTP-9242: Change list to set in supervisor for saving pids of dynamic temprary children
2011-05-10Merge branch 'siri/sasl/log_mf_h-env-missing/OTP-9185' into devSiri Hansen
* siri/sasl/log_mf_h-env-missing/OTP-9185: Fail sasl startup if some, but not all, environment variables related to log_mf_h are given
2011-05-10Merge branch 'lars/docbuilder/fop-10-crash/OTP-9143' into devLars Thorsen
* lars/docbuilder/fop-10-crash/OTP-9143: Changed copyright year. Removed an overflow warning. Fix fop 1.0 crash when building pdf
2011-05-10Changed copyright year.Lars Thorsen
2011-05-10Removed an overflow warning.Lars Thorsen
2011-05-10Fix fop 1.0 crash when building pdfLars Thorsen
2011-05-10Merge branch 'lars/xmerl/test-suites/OTP-9228' into devLars Thorsen
* lars/xmerl/test-suites/OTP-9228: Fix separator error in tokenlists. Added the xmerl test suites. Using the same testdata for testing xmerl_scan and xmerl_sax_parser. Add test suite for xmerl xmerl: Add doc/examples directory
2011-05-10Fix separator error in tokenlists.Lars Thorsen
2011-05-10Added the xmerl test suites.Lars Thorsen
2011-05-10Using the same testdata for testing xmerl_scan and xmerl_sax_parser.Lars Thorsen
2011-05-10Add test suite for xmerlBjörn Gustavsson
2011-05-10xmerl: Add doc/examples directoryBjörn Gustavsson
Needed by the test suite.
2011-05-09Merge branch 'egil/file-write/OTP-9276' into devBjörn-Egil Dahlberg
* egil/file-write/OTP-9276: Update prim_file.beam Remove unnecessary copy in prim_file:drv_command/3
2011-05-09Merge branch 'sa/dialyzer-tests' into devHenrik Nord
* sa/dialyzer-tests: (22 commits) Update dialyzer.spec Add race/ets_insert_public Add opaque/ewgi,ewgi2 Add opaque/schuett_bug Add small/param_types_crash Add small/file_open_encoding Add small/false_false Add small/ets_update_counter Add small/bin_compr Add small/tuple_set_crash Add small/refine_failing Add small/not_bogus_warning Add small/none_scc_inf_loop Add small/guards Add small/guard_warnings Add small/confusing_record_warning Add small/blame_contract_range Update small/recursive_types2 source Update opaque/zoltan_kis* sources Update options1/compiler results ... OTP-9278
2011-05-09Merge branch 'ks/list_to_bitstring' into devHenrik Nord
* ks/list_to_bitstring: Fix handling of <<_:N,_:_*M>> type expressions Fix the argument of erlang:list_to_bitstring/1 Move function to its proper place Remove unneeded function 'sequence/2' OTP-9277
2011-05-09Add ticet number for tm/xmerl_attr_charref_fixHenrik Nord
OTP-9274
2011-05-09Merge branch 'tm/xmerl_attr_charref_fix' into devHenrik Nord
* tm/xmerl_attr_charref_fix: Prevent xmerl from over-normalizing character references in attributes
2011-05-09Merge branch 'lukas/common_test/timeout_location_fix/OTP-9265' into devLukas Larsson
* lukas/common_test/timeout_location_fix/OTP-9265: Fix ct_framework to not crash when error_notification location is undefined.
2011-05-06Update prim_file.beamBjörn-Egil Dahlberg
2011-05-06Remove unnecessary copy in prim_file:drv_command/3Björn-Egil Dahlberg
2011-05-06Merge branch 'jf/run_erl-disable-flow-control' into devHenrik Nord
* jf/run_erl-disable-flow-control: Teach run_erl RUN_ERL_DISABLE_FLOWCNTRL for disabling flow control OTP-9270
2011-05-06Merge branch 'kj/eunit-race-cond' into devHenrik Nord
* kj/eunit-race-cond: Don't let eunit_surefire report back to eunit when stopping Wait until all eunit listeners terminate OTP-9269
2011-05-06Merge branch 'lukas/common_test/ct_hook_bugs/OTP-9264' into devLukas Larsson
* lukas/common_test/ct_hook_bugs/OTP-9264: Fix bug which would make cth's to not be removed when out of scope when adding a cth in suite/0 and crashing in pre_init_per_suite.
2011-05-06Merge branch 'ta/inet_drv-cleanup' into devHenrik Nord
* ta/inet_drv-cleanup: inet_drv: remove unused tcp request id inet_drv: remove gratuitous assignment OTP-9263
2011-05-06Merge branch 'ms/beam-fix-format-specifiers-in-erl_exit-msg' into devHenrik Nord
* ms/beam-fix-format-specifiers-in-erl_exit-msg: Fix format specifiers in erl_exit messages OTP-9262
2011-05-05Merge branch 'maint-r14' into devSverker Eriksson
Conflicts: erts/vsn.mk
2011-05-05Merge branch 'ia/ssl/more-socket-options-dialyzer-issues' into devIngela Anderton Andin
* ia/ssl/more-socket-options-dialyzer-issues: Spec corrections
2011-05-05Spec correctionsIngela Anderton Andin
2011-05-04Update dialyzer.specStavros Aronis
2011-05-04Add race/ets_insert_publicStavros Aronis
2011-05-04Add opaque/ewgi,ewgi2Stavros Aronis
2011-05-04Add opaque/schuett_bugStavros Aronis
2011-05-04Add small/param_types_crashStavros Aronis
2011-05-04Add small/file_open_encodingStavros Aronis
2011-05-04Add small/false_falseStavros Aronis
2011-05-04Add small/ets_update_counterStavros Aronis
2011-05-04Add small/bin_comprStavros Aronis
2011-05-04Add small/tuple_set_crashStavros Aronis
2011-05-04Add small/refine_failingStavros Aronis
2011-05-04Add small/not_bogus_warningStavros Aronis
2011-05-04Add small/none_scc_inf_loopStavros Aronis
2011-05-04Add small/guardsStavros Aronis
2011-05-04Add small/guard_warningsStavros Aronis
2011-05-04Add small/confusing_record_warningStavros Aronis
2011-05-04Add small/blame_contract_rangeStavros Aronis
2011-05-04Update small/recursive_types2 sourceStavros Aronis
2011-05-04Update opaque/zoltan_kis* sourcesStavros Aronis
2011-05-04Update options1/compiler resultsStavros Aronis
2011-05-04Rename suite data directoriesStavros Aronis