Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/bin/start.boot and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/bin/start.boot differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/bin/start_clean.boot and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/bin/start_clean.boot differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/beam_a.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/beam_a.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/beam_asm.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/beam_asm.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/beam_block.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/beam_block.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/beam_bool.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/beam_bool.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/beam_bsm.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/beam_bsm.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/beam_clean.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/beam_clean.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/beam_dead.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/beam_dead.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/beam_dict.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/beam_dict.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/beam_disasm.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/beam_disasm.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/beam_except.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/beam_except.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/beam_flatten.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/beam_flatten.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/beam_jump.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/beam_jump.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/beam_listing.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/beam_listing.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/beam_opcodes.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/beam_opcodes.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/beam_peep.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/beam_peep.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/beam_receive.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/beam_receive.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/beam_split.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/beam_split.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/beam_trim.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/beam_trim.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/beam_type.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/beam_type.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/beam_utils.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/beam_utils.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/beam_validator.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/beam_validator.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/beam_z.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/beam_z.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/cerl.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/cerl.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/cerl_clauses.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/cerl_clauses.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/cerl_inline.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/cerl_inline.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/cerl_trees.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/cerl_trees.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/compile.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/compile.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/core_lib.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/core_lib.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/core_lint.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/core_lint.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/core_parse.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/core_parse.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/core_pp.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/core_pp.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/core_scan.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/core_scan.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/erl_bifs.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/erl_bifs.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/rec_env.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/rec_env.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/sys_core_dsetel.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/sys_core_dsetel.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/sys_core_fold.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/sys_core_fold.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/sys_core_inline.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/sys_core_inline.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/sys_pre_attributes.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/sys_pre_attributes.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/sys_pre_expand.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/sys_pre_expand.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/v3_codegen.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/v3_codegen.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/v3_core.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/v3_core.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/v3_kernel.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/v3_kernel.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/v3_kernel_pp.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/v3_kernel_pp.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/compiler/ebin/v3_life.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/compiler/ebin/v3_life.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/application.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/application.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/application_controller.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/application_controller.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/application_master.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/application_master.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/application_starter.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/application_starter.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/auth.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/auth.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/code.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/code.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/code_server.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/code_server.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/disk_log_1.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/disk_log_1.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/disk_log.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/disk_log.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/disk_log_server.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/disk_log_server.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/disk_log_sup.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/disk_log_sup.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/dist_ac.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/dist_ac.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/dist_util.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/dist_util.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/erl_boot_server.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/erl_boot_server.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/erl_ddll.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/erl_ddll.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/erl_distribution.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/erl_distribution.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/erl_epmd.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/erl_epmd.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/erl_reply.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/erl_reply.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/error_handler.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/error_handler.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/error_logger.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/error_logger.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/erts_debug.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/erts_debug.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/file.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/file.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/file_io_server.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/file_io_server.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/file_server.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/file_server.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/gen_sctp.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/gen_sctp.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/gen_tcp.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/gen_tcp.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/gen_udp.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/gen_udp.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/global.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/global.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/global_group.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/global_group.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/global_search.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/global_search.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/group.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/group.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/heart.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/heart.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/hipe_unified_loader.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/hipe_unified_loader.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/inet6_sctp.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/inet6_sctp.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/inet6_tcp.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/inet6_tcp.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/inet6_tcp_dist.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/inet6_tcp_dist.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/inet6_udp.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/inet6_udp.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/inet.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/inet.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/inet_config.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/inet_config.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/inet_db.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/inet_db.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/inet_dns.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/inet_dns.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/inet_gethost_native.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/inet_gethost_native.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/inet_hosts.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/inet_hosts.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/inet_parse.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/inet_parse.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/inet_res.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/inet_res.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/inet_sctp.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/inet_sctp.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/inet_tcp.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/inet_tcp.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/inet_tcp_dist.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/inet_tcp_dist.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/inet_udp.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/inet_udp.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/kernel.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/kernel.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/kernel_config.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/kernel_config.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/net_adm.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/net_adm.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/net.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/net.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/net_kernel.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/net_kernel.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/os.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/os.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/pg2.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/pg2.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/ram_file.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/ram_file.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/rpc.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/rpc.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/seq_trace.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/seq_trace.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/standard_error.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/standard_error.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/user.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/user.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/user_drv.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/user_drv.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/user_sup.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/user_sup.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/kernel/ebin/wrap_log_reader.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/kernel/ebin/wrap_log_reader.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/array.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/array.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/base64.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/base64.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/beam_lib.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/beam_lib.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/binary.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/binary.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/calendar.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/calendar.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/c.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/c.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/dets.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/dets.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/dets_server.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/dets_server.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/dets_sup.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/dets_sup.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/dets_utils.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/dets_utils.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/dets_v8.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/dets_v8.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/dets_v9.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/dets_v9.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/dict.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/dict.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/digraph.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/digraph.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/digraph_utils.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/digraph_utils.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/edlin.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/edlin.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/edlin_expand.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/edlin_expand.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/epp.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/epp.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/erl_bits.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/erl_bits.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/erl_compile.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/erl_compile.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/erl_eval.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/erl_eval.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/erl_expand_records.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/erl_expand_records.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/erl_internal.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/erl_internal.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/erl_lint.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/erl_lint.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/erl_parse.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/erl_parse.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/erl_posix_msg.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/erl_posix_msg.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/erl_pp.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/erl_pp.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/erl_scan.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/erl_scan.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/erl_tar.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/erl_tar.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/error_logger_file_h.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/error_logger_file_h.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/error_logger_tty_h.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/error_logger_tty_h.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/escript.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/escript.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/ets.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/ets.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/eval_bits.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/eval_bits.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/filelib.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/filelib.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/filename.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/filename.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/file_sorter.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/file_sorter.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/gb_sets.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/gb_sets.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/gb_trees.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/gb_trees.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/gen.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/gen.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/gen_event.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/gen_event.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/gen_fsm.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/gen_fsm.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/gen_server.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/gen_server.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/io.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/io.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/io_lib.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/io_lib.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/io_lib_format.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/io_lib_format.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/io_lib_fread.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/io_lib_fread.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/io_lib_pretty.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/io_lib_pretty.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/lib.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/lib.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/lists.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/lists.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/log_mf_h.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/log_mf_h.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/maps.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/maps.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/math.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/math.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/ms_transform.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/ms_transform.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/orddict.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/orddict.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/ordsets.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/ordsets.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/otp_internal.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/otp_internal.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/pg.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/pg.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/pool.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/pool.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/proc_lib.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/proc_lib.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/proplists.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/proplists.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/qlc.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/qlc.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/qlc_pt.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/qlc_pt.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/queue.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/queue.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/random.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/random.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/re.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/re.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/sets.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/sets.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/shell.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/shell.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/shell_default.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/shell_default.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/slave.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/slave.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/sofs.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/sofs.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/string.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/string.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/supervisor.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/supervisor.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/supervisor_bridge.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/supervisor_bridge.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/sys.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/sys.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/timer.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/timer.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/unicode.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/unicode.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/win32reg.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/win32reg.beam differ
Binary files /tmp/Fg99fc8HRD/erlang-17.1-dfsg/bootstrap/lib/stdlib/ebin/zip.beam and /tmp/KrsQwnXPzV/erlang-17.3-dfsg/bootstrap/lib/stdlib/ebin/zip.beam differ
diff -Nru erlang-17.1-dfsg/configure erlang-17.3-dfsg/configure
--- erlang-17.1-dfsg/configure 2014-06-23 19:10:57.000000000 +0000
+++ erlang-17.3-dfsg/configure 2014-09-16 19:10:57.000000000 +0000
@@ -1024,6 +1024,8 @@
--enable-darwin-64bit build 64bit binaries on darwin
--enable-m64-build build 64bit binaries using the -m64 flag to (g)cc
--enable-m32-build build 32bit binaries using the -m32 flag to (g)cc
+ --enable-sanitizers[=comma-separated list of sanitizers]
+ Default=address,undefined
--enable-silent-rules less verbose build output (undo: "make V=1")
--disable-silent-rules verbose build output (undo: "make V=0")
@@ -3661,6 +3663,13 @@
export LDFLAGS
fi
+
+# Check whether --enable-sanitizers or --disable-sanitizers was given.
+if test "${enable_sanitizers+set}" = set; then
+ enableval="$enable_sanitizers"
+
+fi;
+
# Check whether --enable-silent-rules or --disable-silent-rules was given.
if test "${enable_silent_rules+set}" = set; then
enableval="$enable_silent_rules"
diff -Nru erlang-17.1-dfsg/configure.in erlang-17.3-dfsg/configure.in
--- erlang-17.1-dfsg/configure.in 2014-06-23 19:10:57.000000000 +0000
+++ erlang-17.3-dfsg/configure.in 2014-09-16 19:10:57.000000000 +0000
@@ -366,6 +366,12 @@
export LDFLAGS
fi
+m4_define(DEFAULT_SANITIZERS, [address,undefined])
+AC_ARG_ENABLE(sanitizers,
+ AS_HELP_STRING(
+ [--enable-sanitizers@<:@=comma-separated list of sanitizers@:>@],
+ [Default=DEFAULT_SANITIZERS]))
+
AC_ARG_ENABLE([silent-rules], [dnl
AS_HELP_STRING(
[--enable-silent-rules],
diff -Nru erlang-17.1-dfsg/debian/changelog erlang-17.3-dfsg/debian/changelog
--- erlang-17.1-dfsg/debian/changelog 2014-08-12 13:51:46.000000000 +0000
+++ erlang-17.3-dfsg/debian/changelog 2014-12-05 13:24:10.000000000 +0000
@@ -1,3 +1,69 @@
+erlang (1:17.3-dfsg-3ubuntu1) vivid; urgency=low
+
+ * Merge from Debian unstable. Remaining changes:
+ - d/patches/fix-pointer-conversion.patch: Remove implicit integer to
+ pointer conversion.
+ - d/control: Drop libwxgtk3.0-dev build dependency. Wx isn't in main,
+ and not supposed to.
+ - d/control: Drop erlang-wx binary and associated dependencies from
+ other erlang-* packages.
+ - d/rules: Add "+debug_info" to ERL_COMPILE_FLAGS for debug builds.
+ - d/p/bytecode-compat.patch: Specify source/target = 1.5 when compiling
+ Java source code.
+ - d/rules: Use "-DEPMD6" in CPPFLAGS and ensure this is passed to
+ relevant bits of the build process, enabling IPv6 support.
+ - d/control: Build erlang-base-hipe on ppc64 and ppc64el.
+
+ -- James Page
Note that the environment parameters can be set on the command line, + for instance,
+-Protocol that will be supported by started clients and + servers. If this option is not set it will default to all +@@ -58,6 +58,9 @@ + Note that this option may be overridden by the version option + to ssl:connect/[2,3] and ssl:listen/2. +
++For Debian GNU/Linux distribution the sslv3 protocol was ++ disabled due to its security issues. ++
+The TCP/IP
The daemon is started automatically by the
If the -daemon argument is not given, the +
If the -daemon argument is not given,
Let this instance of epmd listen to another TCP port than
default 4369. This can also be set using the
-
With relaxed command checking, the
The
The
With relaxed command checking enabled, you can forcibly unregister live nodes.
These options are purely for debugging and testing epmd clients, they should not be used in normal operation.
+These options are purely for debugging and testing epmd clients. They should not be used in normal operation.
To simulate a busy server you can insert a delay between epmd - gets notified about that a new connection is requested and - when the connections gets accepted.
+To simulate a busy server you can insert a delay between when epmd + gets notified that a new connection is requested and + when the connection gets accepted.
These options make
These options make
Contacts the
Kill the currently running
Killing the running
This command can only be used when contacting
If set prior to start, the
The queries accepted from remote nodes are:
@@ -307,3 +307,4 @@ + diff -Nru erlang-17.1-dfsg/erts/doc/src/erlang.xml erlang-17.3-dfsg/erts/doc/src/erlang.xml --- erlang-17.1-dfsg/erts/doc/src/erlang.xml 2014-06-23 19:10:57.000000000 +0000 +++ erlang-17.3-dfsg/erts/doc/src/erlang.xml 2014-09-16 19:10:57.000000000 +0000 @@ -4968,7 +4968,7 @@Note that the run-time is the sum of the run-time for all threads in the Erlang run-time system and may therefore be greater - than the wall-clock time.
+ than the wall-clock time. The time is returned in milliseconds.> statistics(runtime). {1690,1620} diff -Nru erlang-17.1-dfsg/erts/doc/src/erl_driver.xml erlang-17.3-dfsg/erts/doc/src/erl_driver.xml --- erlang-17.1-dfsg/erts/doc/src/erl_driver.xml 2014-06-23 19:10:57.000000000 +0000 +++ erlang-17.3-dfsg/erts/doc/src/erl_driver.xml 2014-09-16 19:10:57.000000000 +0000 @@ -546,6 +546,7 @@ int scheduler_threads; int nif_major_version; int nif_minor_version; + int dirty_scheduler_support; } ErlDrvSysInfo; @@ -610,6 +611,10 @@nif_minor_version - The value of
+ERL_NIF_MINOR_VERSION when the runtime system was compiled.+ dirty_scheduler_support - A value
!= 0 if the runtime system has support for dirty scheduler threads; + otherwise0 . +
A NIF that cannot execute in a millisecond or less is called a "dirty NIF" since
- it performs work that the Erlang runtime cannot handle cleanly. Applications
- that make use of such functions must indicate to the runtime that the functions are
+ If the functionality of a long-running NIF can be split so that its work can be
+ achieved through a series of shorter NIF calls, the application can either make that series
+ of NIF calls from the Erlang level, or it can call a NIF that first performs a chunk of the
+ work, then invokes the A NIF that cannot be split and cannot execute in a millisecond or less is called a "dirty NIF"
+ because it performs work that the Erlang runtime cannot handle cleanly.
+ Note that the dirty NIF functionality described here is experimental and that you have to
+ enable support for dirty schedulers when building OTP in order to try the functionality out.
+ Applications that make use of such functions must indicate to the runtime that the functions are
dirty so they can be handled specially. To schedule a dirty NIF for execution, the
- application calls All dirty NIFs must ultimately invoke the Dirty NIF support is available only when the emulator is configured with dirty
schedulers enabled. This feature is currently disabled by default. To determine whether
the dirty NIF API is available, native code can check to see if the C preprocessor macro
Describes a NIF by its name, arity and implementation.
@@ -508,7 +512,17 @@
will thus denote the Nth argument to the NIF. Note that the
A convenience function that a dirty NIF can use as a finalizer that simply
- return its
This function is available only when the emulator is configured with dirty
- schedulers enabled. This feature is currently disabled by default. To determine whether
- the dirty NIF API is available, native code can check to see if the C preprocessor macro
-
Same as
Check at runtime for the presence of dirty scheduler threads. If the emulator is
- built with threading support, dirty scheduler threads are available and
-
If dirty scheduler threads are not available in the emulator, calls to
-
This function is available only when the emulator is configured with dirty
- schedulers enabled. This feature is currently disabled by default. To determine whether
- the dirty NIF API is available, native code can check to see if the C preprocessor macro
-
Initialize the structure pointed to by
Check to see if the current NIF is executing on a dirty scheduler thread. If the
emulator is built with threading support, calling
This function is available only when the emulator is configured with dirty
schedulers enabled. This feature is currently disabled by default. To determine whether
the dirty NIF API is available, native code can check to see if the C preprocessor macro
@@ -1245,46 +1231,29 @@
Same as
Schedule dirty NIF
Be aware that
Schedule NIF
The
The
The
The calling NIF must use the return value of
Be aware that
A dirty NIF may not invoke the
This function is available only when the emulator is configured with dirty schedulers
- enabled. This feature is currently disabled by default. To determine whether the dirty NIF API
- is available, native code can check to see if the C preprocessor macro
-
When a dirty NIF finishes executing, it must schedule a finalizer function to return
- its result to the original NIF caller. The dirty NIF passes
Without exception, all dirty NIFs must invoke
This function is available only when the emulator is configured with dirty
- schedulers enabled. This feature is currently disabled by default. To determine whether
- the dirty NIF API is available, native code can check to see if the C preprocessor macro
-
This function works like
+
If
Sets the number of dirty I/O scheduler threads to create when threading
+ support has been enabled. The valid range is 0-1024. By default, the number
+ of dirty I/O scheduler threads created is 10, same as the default number of
+ threads in the
This option is ignored if the emulator doesn't have threading support + enabled. Currently, this option is experimental and is supported only + if the emulator was configured and built with support for dirty schedulers + enabled (it's disabled by default). +
+Scheduling specific flags.
@@ -1173,7 +1186,7 @@ utilization.
Set scheduler wake cleanup threshold. Default is
This document describes the changes made to the ERTS application.
++ General documentation updates.
++ Own Id: OTP-12052
+A bug in the VM code implementing sending of signals
+ to ports could cause the receiving port queue to remain
+ in a busy state forever. When this state had been
+ reached, processes sending command signals to the port
+ either got suspended forever, or, if the
In order for this bug to be triggered on a port, one
+ had to at least once utilize the
Thanks Vasily Demidenok for reporting the issue, and + Sergey Kudryashov for providing a testcase.
++ Own Id: OTP-12082 Aux Id: OTP-10336
++ Fix size overflow bug at memory allocation. A memory + allocation call, with an insane size close to the entire + address space, could return successfully as if it had + allocated just a few bytes. (Thanks to Don A. Bailey for + reporting)
++ Own Id: OTP-12091
++ Fix various issues where negating a signed integer would + trigger undefined behaviour. This fixes issues in the + enif_make_int64 interface and some edge cases inside the + erlang runtime system.
++ Own Id: OTP-12097
+
+ The documentation erroneously listed the
+ Own Id: OTP-12102 Aux Id: OTP-10994
+
+ Profiling messages could be delivered out of order when
+ profiling on
+ Own Id: OTP-12105 Aux Id: OTP-10336
+
+ Various logging fixes, including: Add run queue index to
+ the process dump in crash dumps.
Add thread index to
+ enomem slogan when crashing.
Remove error logger
+ message for sending messages to old instances of the same
+ node.
+ Own Id: OTP-12115
++ Fix compiler warnings reported by LLVM
++ Own Id: OTP-12138
+
+ Correct conversion of
+ Own Id: OTP-12140
+
+ Fix bug in
+ Own Id: OTP-12141
++ Real_path method used while prim loading archive files + was not taking into account the fact that windows + directory symlinks can be across different drives.
++ Own Id: OTP-12155
++ Add log2 histogram to lcnt for lock wait time
++ Own Id: OTP-12059
+
+ Introduced
+ The
+ The
+ See the
+ Thanks to Steve Vinoski.
++ *** POTENTIAL INCOMPATIBILITY ***
++ Own Id: OTP-12128
++ OTP-11850 fixed filelib:wildcard/1 to work with broken + symlinks. This correction, however, introduced problems + since symlinks were no longer followed for functions like + filelib:ensure_dir/1, filelib:is_dir/1, + filelib:file_size/1, etc. This is now corrected.
++ Own Id: OTP-12054 Aux Id: seq12660
++ Fixed ETHR_FORCE_INLINE which caused the build to break + on some platforms without adequate thread support + (VxWorks).
++ Own Id: OTP-12010
+Own Id: OTP-11829
+
+ When using gen_tcp:connect and the
+ Own Id: OTP-12061
When many types (or an other ASN.1 entity) only differs in some +
When many types (or another ASN.1 entity) only differs in some minor cases, but the structure of the types are similar, only one general type can be defined and the differences may be supplied through parameters.
diff -Nru erlang-17.1-dfsg/lib/asn1/doc/src/notes.xml erlang-17.3-dfsg/lib/asn1/doc/src/notes.xml --- erlang-17.1-dfsg/lib/asn1/doc/src/notes.xml 2014-06-23 19:10:57.000000000 +0000 +++ erlang-17.3-dfsg/lib/asn1/doc/src/notes.xml 2014-09-16 19:10:57.000000000 +0000 @@ -31,6 +31,30 @@This document describes the changes made to the asn1 application.
++ Several problems where the ASN.1 compiler would crash + when attempting to compile correct specifications have + been corrected.
++ Own Id: OTP-12125
++ Robustness when decoding incorrect BER messages has been + improved.
++ Own Id: OTP-12145
++ Ticket OTP-11971 introduced a runtime dependency towards + test_server-3.7.1, since the interface between + test_server and common_test was changed. Erroneously, the + common_test.app file was not updated according to this. + This has now been corrected.
++ Own Id: OTP-12037
++ Warning: this is experimental and may disappear or change + without previous warning.
+
+ Experimental support for running Quickcheck and PropEr
+ tests from common_test suites is added to common_test.
+ See the reference manual for the new module
+
+ Experimental property tests are added under
+
+ See the code in the
+ (Thanks to Tuncer Ayaz for a patch adding Triq)
++ Own Id: OTP-12119
+This module is a first step towards running Property Based testing in the +%%% Common Test framework. A property testing tool like QuickCheck or PropEr is +%%% assumed to be installed.
+%%% +%%%The idea is to have a common_test testsuite calling a property testing
+%%% tool with special property test suites as defined by that tool. In this manual
+%%% we assume the usual Erlang Application directory structure. The tests are
+%%% collected in the application's
A typical ct test suite using
+%%% This is experimental code which may be changed or removed +%%% anytime without any warning. +%%%
+%%%The function investigates if support is available for either Quickcheck, PropEr,
+%%% or Triq.
+%%% The options
The function is intended to be called in the init_per_suite in the test suite.
+%%%The property tests are assumed to be in the subdirectory
The function is intended to be called in the test cases in the test suite.
+%%% @end + +quickcheck(Property, Config) -> + Tool = proplists:get_value(property_test_tool,Config), + F = function_name(quickcheck, Tool), + mk_ct_return( Tool:F(Property), Tool ). + + +%%%================================================================ +%%% +%%% Local functions +%%% + +%%% Make return values back to the calling Common Test suite +mk_ct_return(true, _Tool) -> + true; +mk_ct_return(Other, Tool) -> + try lists:last(hd(Tool:counterexample())) + of + {set,{var,_},{call,M,F,Args}} -> + {fail, io_lib:format("~p:~p/~p returned bad result",[M,F,length(Args)])} + catch + _:_ -> + {fail, Other} + end. + +%%% Check if a property testing tool is found +which_module_exists([Module|Modules]) -> + case module_exists(Module) of + true -> {ok,Module}; + false -> which_module_exists(Modules) + end; +which_module_exists(_) -> + not_found. + +module_exists(Module) -> + is_list(catch Module:module_info()). + +%%% The path to the property tests +property_tests_path(Dir, Config) -> + DataDir = proplists:get_value(data_dir, Config), + filename:join(lists:droplast(filename:split(DataDir))++[Dir]). + +%%% Extend the code path with Dir if it not already present +add_code_pathz(Dir) -> + case lists:member(Dir, code:get_path()) of + true -> ok; + false -> code:add_pathz(Dir) + end. + +compile_tests(Path, ToolModule) -> + MacroDefs = macro_def(ToolModule), + {ok,Cwd} = file:get_cwd(), + ok = file:set_cwd(Path), + {ok,FileNames} = file:list_dir("."), + BeamFiles = [F || F<-FileNames, + filename:extension(F) == ".beam"], + [file:delete(F) || F<-BeamFiles], + ct:pal("Compiling in ~p:~n Deleted ~p~n MacroDefs=~p",[Path,BeamFiles,MacroDefs]), + Result = make:all([load|MacroDefs]), + file:set_cwd(Cwd), + Result. + + +macro_def(eqc) -> [{d, 'EQC'}]; +macro_def(proper) -> [{d, 'PROPER'}]; +macro_def(triq) -> [{d, 'TRIQ'}]. + +function_name(quickcheck, triq) -> check; +function_name(F, _) -> F. + diff -Nru erlang-17.1-dfsg/lib/common_test/src/Makefile erlang-17.3-dfsg/lib/common_test/src/Makefile --- erlang-17.1-dfsg/lib/common_test/src/Makefile 2014-06-23 19:10:57.000000000 +0000 +++ erlang-17.3-dfsg/lib/common_test/src/Makefile 2014-09-16 19:10:57.000000000 +0000 @@ -74,7 +74,8 @@ ct_netconfc \ ct_conn_log_h \ cth_conn_log \ - ct_groups + ct_groups \ + ct_property_test TARGET_MODULES= $(MODULES:%=$(EBIN)/%) BEAM_FILES= $(MODULES:%=$(EBIN)/%.$(EMULATOR)) diff -Nru erlang-17.1-dfsg/lib/common_test/test/ct_snmp_SUITE_data/snmp.cfg erlang-17.3-dfsg/lib/common_test/test/ct_snmp_SUITE_data/snmp.cfg --- erlang-17.1-dfsg/lib/common_test/test/ct_snmp_SUITE_data/snmp.cfg 2014-06-23 19:10:57.000000000 +0000 +++ erlang-17.3-dfsg/lib/common_test/test/ct_snmp_SUITE_data/snmp.cfg 2014-09-16 19:10:57.000000000 +0000 @@ -22,23 +22,23 @@ {agent_target_param_def,{data_dir_file,"target_params.conf"}}, {agent_vacm,{data_dir_file,"vacm.conf"}}]}. {snmp_app1,[{manager, [{config, [{verbosity, silence}]}, - {server,[{verbosity,silence}]}, - {net_if,[{verbosity,silence}]}, + {server,[{verbosity,log}]}, + {net_if,[{verbosity,log}]}, {versions,[v2]} ]}, {agent, [{config, [{verbosity, silence}]}, - {net_if,[{verbosity,silence}]}, + {net_if,[{verbosity,log}]}, {mib_server,[{verbosity,silence}]}, {local_db,[{verbosity,silence}]}, - {agent_verbosity,silence} + {agent_verbosity,log} ]}]}. {snmp_app2,[{manager, [{config, [{verbosity, silence}]}, - {server,[{verbosity,silence}]}, - {net_if,[{verbosity,silence}]} + {server,[{verbosity,log}]}, + {net_if,[{verbosity,log}]} ]}, {agent, [{config, [{verbosity, silence}]}, - {net_if,[{verbosity,silence}]}, + {net_if,[{verbosity,log}]}, {mib_server,[{verbosity,silence}]}, {local_db,[{verbosity,silence}]}, - {agent_verbosity,silence} + {agent_verbosity,log} ]}]}. diff -Nru erlang-17.1-dfsg/lib/common_test/test/ct_snmp_SUITE_data/snmp_SUITE_data/target_addr.conf erlang-17.3-dfsg/lib/common_test/test/ct_snmp_SUITE_data/snmp_SUITE_data/target_addr.conf --- erlang-17.1-dfsg/lib/common_test/test/ct_snmp_SUITE_data/snmp_SUITE_data/target_addr.conf 2014-06-23 19:10:57.000000000 +0000 +++ erlang-17.3-dfsg/lib/common_test/test/ct_snmp_SUITE_data/snmp_SUITE_data/target_addr.conf 2014-09-16 19:10:57.000000000 +0000 @@ -1,2 +1,2 @@ -{"target1", snmpUDPDomain, [147,214,122,73], 5000, 1500, 3, "std_trap", "target_v3", "", [], 2048}. -{"target2", snmpUDPDomain, [147,214,122,73], 5000, 1500, 3, "std_inform", "target_v3", "", [], 2048}. +{"target1", snmpUDPDomain, {[147,214,122,73], 5000}, 1500, 3, "std_trap", "target_v3", "", [], 2048}. +{"target2", snmpUDPDomain, {[147,214,122,73], 5000}, 1500, 3, "std_inform", "target_v3", "", [], 2048}. diff -Nru erlang-17.1-dfsg/lib/common_test/test/ct_snmp_SUITE_data/snmp_SUITE.erl erlang-17.3-dfsg/lib/common_test/test/ct_snmp_SUITE_data/snmp_SUITE.erl --- erlang-17.1-dfsg/lib/common_test/test/ct_snmp_SUITE_data/snmp_SUITE.erl 2014-06-23 19:10:57.000000000 +0000 +++ erlang-17.3-dfsg/lib/common_test/test/ct_snmp_SUITE_data/snmp_SUITE.erl 2014-09-16 19:10:57.000000000 +0000 @@ -1,7 +1,7 @@ %%-------------------------------------------------------------------- %% %CopyrightBegin% %% -%% Copyright Ericsson AB 2012. All Rights Reserved. +%% Copyright Ericsson AB 2012-2014. All Rights Reserved. %% %% The contents of this file are subject to the Erlang Public License, %% Version 1.1, (the "License"); you may not use this file except in @@ -288,6 +288,9 @@ %% Check that usm.conf is overwritten {ok,MyUsm} = snmpa_conf:read_usm_config(DataDir), {ok,UsedUsm} = snmpa_conf:read_usm_config(ConfDir), + ct:pal( + "MyUsm = ~p~nUsedUsm = ~p", + [MyUsm, UsedUsm]), true = (MyUsm == UsedUsm), %% Check that the usm user is actually configured... @@ -304,6 +307,9 @@ %% Check that standard.conf is overwritten {ok,MyStandard} = snmpa_conf:read_standard_config(DataDir), {ok,UsedStandard} = snmpa_conf:read_standard_config(ConfDir), + ct:pal( + "MyStandard = ~p~nUsedStandard = ~p", + [MyStandard, UsedStandard]), true = (MyStandard == UsedStandard), %% Check that the values from standard.conf is actually configured... @@ -319,6 +325,9 @@ %% Check that context.conf is overwritten {ok,MyContext} = snmpa_conf:read_context_config(DataDir), {ok,UsedContext} = snmpa_conf:read_context_config(ConfDir), + ct:pal( + "MyContext = ~p~nUsedContext = ~p", + [MyContext, UsedContext]), true = (MyContext == UsedContext), ok. @@ -330,6 +339,9 @@ %% Check that community.conf is overwritten {ok,MyCommunity} = snmpa_conf:read_community_config(DataDir), {ok,UsedCommunity} = snmpa_conf:read_community_config(ConfDir), + ct:pal( + "MyCommunity = ~p~nUsedCommunity = ~p", + [MyCommunity, UsedCommunity]), true = (MyCommunity == UsedCommunity), ok. @@ -341,6 +353,9 @@ %% Check that notify.conf is overwritten {ok,MyNotify} = snmpa_conf:read_notify_config(DataDir), {ok,UsedNotify} = snmpa_conf:read_notify_config(ConfDir), + ct:pal( + "MyNotify = ~p~nUsedNotify = ~p", + [MyNotify, UsedNotify]), true = (MyNotify == UsedNotify), ok. @@ -352,6 +367,9 @@ %% Check that target_addr.conf is overwritten {ok,MyTargetAddr} = snmpa_conf:read_target_addr_config(DataDir), {ok,UsedTargetAddr} = snmpa_conf:read_target_addr_config(ConfDir), + ct:pal( + "MyTargetAddr = ~p~nUsedTargetAddr = ~p", + [MyTargetAddr, UsedTargetAddr]), true = (MyTargetAddr == UsedTargetAddr), ok. @@ -363,6 +381,9 @@ %% Check that target_params.conf is overwritten {ok,MyTargetParams} = snmpa_conf:read_target_params_config(DataDir), {ok,UsedTargetParams} = snmpa_conf:read_target_params_config(ConfDir), + ct:pal( + "MyTargetParams = ~p~nUsedTargetParams = ~p", + [MyTargetParams, UsedTargetParams]), true = (MyTargetParams == UsedTargetParams), ok. @@ -374,6 +395,9 @@ %% Check that vacm.conf is overwritten {ok,MyVacm} = snmpa_conf:read_vacm_config(DataDir), {ok,UsedVacm} = snmpa_conf:read_vacm_config(ConfDir), + ct:pal( + "MyVacm = ~p~nUsedVacm = ~p", + [MyVacm, UsedVacm]), true = (MyVacm == UsedVacm), ok. diff -Nru erlang-17.1-dfsg/lib/common_test/vsn.mk erlang-17.3-dfsg/lib/common_test/vsn.mk --- erlang-17.1-dfsg/lib/common_test/vsn.mk 2014-06-23 19:10:57.000000000 +0000 +++ erlang-17.3-dfsg/lib/common_test/vsn.mk 2014-09-16 19:10:57.000000000 +0000 @@ -1 +1 @@ -COMMON_TEST_VSN = 1.8.1 +COMMON_TEST_VSN = 1.8.2 diff -Nru erlang-17.1-dfsg/lib/compiler/doc/src/notes.xml erlang-17.3-dfsg/lib/compiler/doc/src/notes.xml --- erlang-17.1-dfsg/lib/compiler/doc/src/notes.xml 2014-06-23 19:10:57.000000000 +0000 +++ erlang-17.3-dfsg/lib/compiler/doc/src/notes.xml 2014-09-16 19:10:57.000000000 +0000 @@ -31,6 +31,22 @@This document describes the changes made to the Compiler application.
++ Corrected a bug with incorrect code generation when + inlining was turned on.
++ Own Id: OTP-12132
+This document describes the changes made to the Crypto application.
+
+ Make
+ Own Id: OTP-12146 Aux Id: seq12700
+This document describes the changes made to the Dialyzer application.
+ A bug concerning
+ Own Id: OTP-12018
+ When given the
+ Own Id: OTP-12111
+Dialyzer now fetch the compile options from beam + files, and use them when creating core from the abstract + code. Previously the options were ignored.
++ Own Id: OTP-12150
++ Don't leave extra bit in decoded AVP data.
++ An extra bit could be communicated in the data field of a + diameter_avp record in the case of length errors. Of no + consequence for code using the record encoding of + Diameter messages, but code examining diameter_avp + records would see this bit.
++ Dictionary files must be recompiled for the fix to have + effect.
++ Own Id: OTP-12074
++ Fix counting of outgoing requests and answers setting the + E-bit.
++ OTP-11721 broke these counters for all outgoing requests + except DWR, and caused answers setting the E-bit to be + counted as unknown messages.
++ Own Id: OTP-12080
++ Fix Failed-AVP decode.
++ The best-effort decode only worked for AVPs in the common + dictionary, not for those in the dictionary of the + application identified in the Diameter Header of the + answer message in question.
++ Failed-AVP in an answer decoded with the RFC 3588 common + dictionary (diameter_gen_base_rfc3588) was regarded as an + error. The RFC 6733 dictionary was unaffected.
++ Dictionary files must be recompiled for the fix to have + effect.
++ Own Id: OTP-12094
++ Dictionary files must be recompiled for the fix to have + effect.
+Own Id: OTP-11946
+ Dictionary files must be recompiled for the fix to have + effect.
+Own Id: OTP-11936 Aux Id: OTP-11007
This document describes the changes made to the EDoc application.
++ Fix spec to doc generation from erl_docgen and edoc for + maps
++ Own Id: OTP-12058
+The default encoding for Erlang source files is now + UTF-8. As a temporary measure to ease the transition from + the old default of Latin-1, if EDoc encounters byte + sequences that are not valid UTF-8 sequences, EDoc will + re-try in Latin-1 mode. This workaround will be removed + in a future release.
++ Own Id: OTP-12008
+This document describes the changes made to the erl_docgen application.
-+ Fix spec to doc generation from erl_docgen and edoc for + maps
++ Own Id: OTP-12058
+This document describes the changes made to the Erl_interface application.
++ Implement --enable-sanitizers[=sanitizers]. Similar to + debugging with Valgrind, it's very useful to enable + -fsanitize= switches to catch bugs at runtime.
++ Own Id: OTP-12153
+This document describes the changes made to the EUnit application.
++ Minor refactoring.
++ Own Id: OTP-12051
+This document describes the changes made to HiPE.
+The pretty-printing of bitstrings has been corrected. +
++ Own Id: OTP-12015
+ A bug concerning
+ Own Id: OTP-12018
++ Fix compiler warnings reported by LLVM
++ Own Id: OTP-12138
+Defaults to
Shall the headers provided by the user be made lower case or be regarded as case sensitive.
diff -Nru erlang-17.1-dfsg/lib/inets/doc/src/httpd.xml erlang-17.3-dfsg/lib/inets/doc/src/httpd.xml --- erlang-17.1-dfsg/lib/inets/doc/src/httpd.xml 2014-06-23 19:10:57.000000000 +0000 +++ erlang-17.3-dfsg/lib/inets/doc/src/httpd.xml 2014-09-16 19:10:57.000000000 +0000 @@ -139,7 +139,7 @@Defines the servers home directory where log files etc can +
Defines the server's home directory where log files etc can be stored. Relative paths specified in other properties refer to this directory.
Fetches information about the HTTP server. When called with only the pid all properties are fetched, when called with a list of specific properties they are fetched. - Available properties are the same as the servers start options. + Available properties are the same as the server's start options.
Pid is the pid returned from inets:start/[2,3]. @@ -930,7 +930,7 @@
Fetches information about the HTTP server. When called with only the Address and Port all properties are fetched, when called with a list of specific properties they are fetched. - Available properties are the same as the servers start + Available properties are the same as the server's start options.
@@ -956,7 +956,7 @@ server. Incoming requests will be answered with a temporary down message during the time the it takes to reload. -Available properties are the same as the servers
+ Available properties are the same as the server's
start options, although the properties bind_address and
port can not be changed.
+ Fix some spelling mistakes in documentation
+ Own Id: OTP-12152
+ httpd: Seperate timeout for TLS/SSL handshake from
+ keepalive timeout
+ Own Id: OTP-12013
+ Warning: this is experimental and may disappear or change
+ without previous warning.
+ Experimental support for running Quickcheck and PropEr
+ tests from common_test suites is added to common_test.
+ See the reference manual for the new module
+
+ Experimental property tests are added under
+
+ See the code in the
+ (Thanks to Tuncer Ayaz for a patch adding Triq)
+ Own Id: OTP-12119 This document describes the changes made to the Jinterface application.
+ Array now show meaningful values in exceptions.
+ Own Id: OTP-12049
+ Documentation improvements.
+ Own Id: OTP-12050
+ Include the cause when raising a new IOException, which
+ should make the reason for the exception clearer.
+ Own Id: OTP-12075
+ Arrays (here: md5 and freeVars) must not be compared with
+ equals, which is broken (compares identity).
+ Own Id: OTP-12121
+
+
+
+
diff -Nru erlang-17.1-dfsg/lib/inets/src/http_client/httpc_handler.erl erlang-17.3-dfsg/lib/inets/src/http_client/httpc_handler.erl
--- erlang-17.1-dfsg/lib/inets/src/http_client/httpc_handler.erl 2014-06-23 19:10:57.000000000 +0000
+++ erlang-17.3-dfsg/lib/inets/src/http_client/httpc_handler.erl 2014-09-16 19:10:57.000000000 +0000
@@ -1793,7 +1793,7 @@
host_header(#http_request_h{host = Host}, _) ->
Host;
-%% Handles header_as_is
+%% Handles headers_as_is
host_header(_, URI) ->
{ok, {_, _, Host, _, _, _}} = http_uri:parse(URI),
Host.
diff -Nru erlang-17.1-dfsg/lib/inets/src/http_server/httpd_request_handler.erl erlang-17.3-dfsg/lib/inets/src/http_server/httpd_request_handler.erl
--- erlang-17.1-dfsg/lib/inets/src/http_server/httpd_request_handler.erl 2014-06-23 19:10:57.000000000 +0000
+++ erlang-17.3-dfsg/lib/inets/src/http_server/httpd_request_handler.erl 2014-09-16 19:10:57.000000000 +0000
@@ -35,6 +35,7 @@
-include("http_internal.hrl").
-include("httpd_internal.hrl").
+-define(HANDSHAKE_TIMEOUT, 5000).
-record(state, {mod, %% #mod{}
manager, %% pid()
status, %% accept | busy | blocked
@@ -96,15 +97,13 @@
{SocketType, Socket} = await_socket_ownership_transfer(AcceptTimeout),
- TimeOut = httpd_util:lookup(ConfigDB, keep_alive_timeout, 150000),
- Then = erlang:now(),
+ KeepAliveTimeOut = httpd_util:lookup(ConfigDB, keep_alive_timeout, 150000),
- case http_transport:negotiate(SocketType, Socket, TimeOut) of
+ case http_transport:negotiate(SocketType, Socket, ?HANDSHAKE_TIMEOUT) of
{error, _Error} ->
exit(shutdown); %% Can be 'normal'.
ok ->
- NewTimeout = TimeOut - timer:now_diff(now(),Then) div 1000,
- continue_init(Manager, ConfigDB, SocketType, Socket, NewTimeout)
+ continue_init(Manager, ConfigDB, SocketType, Socket, KeepAliveTimeOut)
end.
continue_init(Manager, ConfigDB, SocketType, Socket, TimeOut) ->
diff -Nru erlang-17.1-dfsg/lib/inets/src/inets_app/inets.appup.src erlang-17.3-dfsg/lib/inets/src/inets_app/inets.appup.src
--- erlang-17.1-dfsg/lib/inets/src/inets_app/inets.appup.src 2014-06-23 19:10:57.000000000 +0000
+++ erlang-17.3-dfsg/lib/inets/src/inets_app/inets.appup.src 2014-09-16 19:10:57.000000000 +0000
@@ -17,6 +17,10 @@
%% %CopyrightEnd%
{"%VSN%",
[
+ {"5.10.2",
+ [
+ {load_module, httpd_request_handler, soft_purge, soft_purge,
+ []}]},
{"5.10.1",
[{load_module, httpc_handler, soft_purge, soft_purge, []},
{load_module, httpd, soft_purge, soft_purge, []},
@@ -34,6 +38,10 @@
{<<"5\\..*">>,[{restart_application, inets}]}
],
[
+ {"5.10.2",
+ [
+ {load_module, httpd_request_handler, soft_purge, soft_purge,
+ []}]},
{"5.10.1",
[{load_module, httpc_handler, soft_purge, soft_purge, []},
{load_module, httpd, soft_purge, soft_purge, []},
diff -Nru erlang-17.1-dfsg/lib/inets/test/ftp_property_test_SUITE.erl erlang-17.3-dfsg/lib/inets/test/ftp_property_test_SUITE.erl
--- erlang-17.1-dfsg/lib/inets/test/ftp_property_test_SUITE.erl 1970-01-01 00:00:00.000000000 +0000
+++ erlang-17.3-dfsg/lib/inets/test/ftp_property_test_SUITE.erl 2014-09-16 19:10:57.000000000 +0000
@@ -0,0 +1,52 @@
+%%
+%% %CopyrightBegin%
+%%
+%% Copyright Ericsson AB 2004-2014. All Rights Reserved.
+%%
+%% The contents of this file are subject to the Erlang Public License,
+%% Version 1.1, (the "License"); you may not use this file except in
+%% compliance with the License. You should have received a copy of the
+%% Erlang Public License along with this software. If not, it can be
+%% retrieved online at http://www.erlang.org/.
+%%
+%% Software distributed under the License is distributed on an "AS IS"
+%% basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
+%% the License for the specific language governing rights and limitations
+%% under the License.
+%%
+%% %CopyrightEnd%
+%%
+%%
+
+%%% Run like this:
+%%% ct:run_test([{suite,"ftp_property_test_SUITE"}, {logdir,"/ldisk/OTP/LOG"}]).
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%% %%%
+%%% WARNING %%%
+%%% %%%
+%%% This is experimental code which may be changed or removed %%%
+%%% anytime without any warning. %%%
+%%% %%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+-module(ftp_property_test_SUITE).
+
+-compile(export_all).
+
+-include_lib("common_test/include/ct.hrl").
+
+all() -> [prop_ftp_case].
+
+
+init_per_suite(Config) ->
+ inets:start(),
+ ct_property_test:init_per_suite(Config).
+
+
+%%%---- test case
+prop_ftp_case(Config) ->
+ ct_property_test:quickcheck(
+ ftp_simple_client_server:prop_ftp(Config),
+ Config
+ ).
diff -Nru erlang-17.1-dfsg/lib/inets/test/httpd_basic_SUITE.erl erlang-17.3-dfsg/lib/inets/test/httpd_basic_SUITE.erl
--- erlang-17.1-dfsg/lib/inets/test/httpd_basic_SUITE.erl 2014-06-23 19:10:57.000000000 +0000
+++ erlang-17.3-dfsg/lib/inets/test/httpd_basic_SUITE.erl 2014-09-16 19:10:57.000000000 +0000
@@ -129,7 +129,7 @@
%% Note: This function is free to add any key/value pairs to the Config
%% variable, but should NOT alter/remove any existing entries.
%%--------------------------------------------------------------------
-init_per_testcase(Case, Config) ->
+init_per_testcase(_Case, Config) ->
Config.
diff -Nru erlang-17.1-dfsg/lib/inets/test/httpd_SUITE.erl erlang-17.3-dfsg/lib/inets/test/httpd_SUITE.erl
--- erlang-17.1-dfsg/lib/inets/test/httpd_SUITE.erl 2014-06-23 19:10:57.000000000 +0000
+++ erlang-17.3-dfsg/lib/inets/test/httpd_SUITE.erl 2014-09-16 19:10:57.000000000 +0000
@@ -39,6 +39,7 @@
-define(FAIL_EXPIRE_TIME,1).
%% Seconds before successful auths timeout.
-define(AUTH_TIMEOUT,5).
+-define(URL_START, "http://").
%%--------------------------------------------------------------------
%% Common Test interface functions -----------------------------------
@@ -63,7 +64,9 @@
{group, http_htaccess},
{group, https_htaccess},
{group, http_security},
- {group, https_security}
+ {group, https_security},
+ {group, http_reload},
+ {group, https_reload}
].
groups() ->
@@ -84,7 +87,18 @@
{https_htaccess, [], [{group, htaccess}]},
{http_security, [], [{group, security}]},
{https_security, [], [{group, security}]},
+ {http_reload, [], [{group, reload}]},
+ {https_reload, [], [{group, reload}]},
{limit, [], [max_clients_1_1, max_clients_1_0, max_clients_0_9]},
+ {reload, [], [non_disturbing_reconfiger_dies,
+ disturbing_reconfiger_dies,
+ non_disturbing_1_1,
+ non_disturbing_1_0,
+ non_disturbing_0_9,
+ disturbing_1_1,
+ disturbing_1_0,
+ disturbing_0_9
+ ]},
{basic_auth, [], [basic_auth_1_1, basic_auth_1_0, basic_auth_0_9]},
{auth_api, [], [auth_api_1_1, auth_api_1_0, auth_api_0_9
]},
@@ -134,8 +148,24 @@
inets_test_lib:del_dirs(ServerRoot),
DocRoot = filename:join(ServerRoot, "htdocs"),
setup_server_dirs(ServerRoot, DocRoot, DataDir),
+ {ok, Hostname0} = inet:gethostname(),
+ Inet =
+ case (catch ct:get_config(ipv6_hosts)) of
+ undefined ->
+ inet;
+ Hosts when is_list(Hosts) ->
+ case lists:member(list_to_atom(Hostname0), Hosts) of
+ true ->
+ inet6;
+ false ->
+ inet
+ end;
+ _ ->
+ inet
+ end,
[{server_root, ServerRoot},
{doc_root, DocRoot},
+ {ipfamily, Inet},
{node, node()},
{host, inets_test_lib:hostname()},
{address, getaddr()} | Config].
@@ -150,7 +180,8 @@
Group == https_auth_api;
Group == https_auth_api_dets;
Group == https_auth_api_mnesia;
- Group == https_security
+ Group == https_security;
+ Group == https_reload
->
init_ssl(Group, Config0);
init_per_group(Group, Config0) when Group == http_basic;
@@ -159,7 +190,8 @@
Group == http_auth_api;
Group == http_auth_api_dets;
Group == http_auth_api_mnesia;
- Group == http_security
+ Group == http_security;
+ Group == http_reload
->
ok = start_apps(Group),
init_httpd(Group, [{type, ip_comm} | Config0]);
@@ -202,17 +234,19 @@
Group == http_auth_api_dets;
Group == http_auth_api_mnesia;
Group == http_htaccess;
- Group == http_security
+ Group == http_security;
+ Group == http_reload
->
inets:stop();
end_per_group(Group, _Config) when Group == https_basic;
Group == https_limit;
Group == https_basic_auth;
Group == https_auth_api;
- Group == http_auth_api_dets;
- Group == http_auth_api_mnesia;
+ Group == https_auth_api_dets;
+ Group == https_auth_api_mnesia;
Group == https_htaccess;
- Group == http_security
+ Group == https_security;
+ Group == https_reload
->
ssl:stop(),
inets:stop();
@@ -506,7 +540,7 @@
true ->
Version = ?config(http_version, Config),
Host = ?config(host, Config),
- URI = http_request("GET /", Version, Host),
+ URI = http_request("GET / ", Version, Host),
httpd_test_lib:verify_request(?config(type, Config), Host,
?config(port, Config), [inet6],
?config(code, Config),
@@ -1088,12 +1122,114 @@
[{statuscode, 401}]),
true = unblock_user(Node, "two", Port, OpenDir).
+
+%%-------------------------------------------------------------------------
+non_disturbing_reconfiger_dies(Config) when is_list(Config) ->
+ do_reconfiger_dies([{http_version, "HTTP/1.1"} | Config], non_disturbing).
+disturbing_reconfiger_dies(Config) when is_list(Config) ->
+ do_reconfiger_dies([{http_version, "HTTP/1.1"} | Config], disturbing).
+
+do_reconfiger_dies(Config, DisturbingType) ->
+ Server = ?config(server_pid, Config),
+ Version = ?config(http_version, Config),
+ Host = ?config(host, Config),
+ Port = ?config(port, Config),
+ Type = ?config(type, Config),
+
+ HttpdConfig = httpd:info(Server),
+ BlockRequest = http_request("GET /eval?httpd_example:delay(2000) ", Version, Host),
+ {ok, Socket} = inets_test_lib:connect_bin(Type, Host, Port, transport_opts(Type, Config)),
+ inets_test_lib:send(Type, Socket, BlockRequest),
+ ct:sleep(100), %% Avoid possible timing issues
+ Pid = spawn(fun() -> httpd:reload_config([{server_name, "httpd_kill_" ++ Version},
+ {port, Port}|
+ proplists:delete(server_name, HttpdConfig)], DisturbingType)
+ end),
+ monitor(process, Pid),
+ exit(Pid, kill),
+ receive
+ {'DOWN', _, _, _, _} ->
+ ok
+ end,
+ inets_test_lib:close(Type, Socket),
+ [{server_name, "httpd_test"}] = httpd:info(Server, [server_name]).
+%%-------------------------------------------------------------------------
+disturbing_1_1(Config) when is_list(Config) ->
+ disturbing([{http_version, "HTTP/1.1"} | Config]).
+
+disturbing_1_0(Config) when is_list(Config) ->
+ disturbing([{http_version, "HTTP/1.0"} | Config]).
+
+disturbing_0_9(Config) when is_list(Config) ->
+ disturbing([{http_version, "HTTP/0.9"} | Config]).
+
+disturbing(Config) when is_list(Config)->
+ Server = ?config(server_pid, Config),
+ Version = ?config(http_version, Config),
+ Host = ?config(host, Config),
+ Port = ?config(port, Config),
+ Type = ?config(type, Config),
+ HttpdConfig = httpd:info(Server),
+ BlockRequest = http_request("GET /eval?httpd_example:delay(2000) ", Version, Host),
+ {ok, Socket} = inets_test_lib:connect_bin(Type, Host, Port, transport_opts(Type, Config)),
+ inets_test_lib:send(Type, Socket, BlockRequest),
+ ct:sleep(100), %% Avoid possible timing issues
+ ok = httpd:reload_config([{server_name, "httpd_disturbing_" ++ Version}, {port, Port}|
+ proplists:delete(server_name, HttpdConfig)], disturbing),
+ Close = list_to_atom((typestr(Type)) ++ "_closed"),
+ receive
+ {Close, Socket} ->
+ ok;
+ Msg ->
+ ct:fail({{expected, {Close, Socket}}, {got, Msg}})
+ end,
+ inets_test_lib:close(Type, Socket),
+ [{server_name, "httpd_disturbing_" ++ Version}] = httpd:info(Server, [server_name]).
+%%-------------------------------------------------------------------------
+non_disturbing_1_1(Config) when is_list(Config) ->
+ non_disturbing([{http_version, "HTTP/1.1"} | Config]).
+
+non_disturbing_1_0(Config) when is_list(Config) ->
+ non_disturbing([{http_version, "HTTP/1.0"} | Config]).
+
+non_disturbing_0_9(Config) when is_list(Config) ->
+ non_disturbing([{http_version, "HTTP/0.9"} | Config]).
+
+non_disturbing(Config) when is_list(Config)->
+ Server = ?config(server_pid, Config),
+ Version = ?config(http_version, Config),
+ Host = ?config(host, Config),
+ Port = ?config(port, Config),
+ Type = ?config(type, Config),
+
+ HttpdConfig = httpd:info(Server),
+ BlockRequest = http_request("GET /eval?httpd_example:delay(2000) ", Version, Host),
+ {ok, Socket} = inets_test_lib:connect_bin(Type, Host, Port, transport_opts(Type, Config)),
+ inets_test_lib:send(Type, Socket, BlockRequest),
+ ct:sleep(100), %% Avoid possible timing issues
+ ok = httpd:reload_config([{server_name, "httpd_non_disturbing_" ++ Version}, {port, Port}|
+ proplists:delete(server_name, HttpdConfig)], non_disturbing),
+ Transport = type(Type),
+ receive
+ {Transport, Socket, Msg} ->
+ ct:pal("Received message ~p~n", [Msg]),
+ ok
+ after 2000 ->
+ ct:fail(timeout)
+ end,
+ inets_test_lib:close(Type, Socket),
+ [{server_name, "httpd_non_disturbing_" ++ Version}] = httpd:info(Server, [server_name]).
%%--------------------------------------------------------------------
%% Internal functions -----------------------------------
%%--------------------------------------------------------------------
+url(http, End, Config) ->
+ Port = ?config(port, Config),
+ {ok,Host} = inet:gethostname(),
+ ?URL_START ++ Host ++ ":" ++ integer_to_list(Port) ++ End.
+
do_max_clients(Config) ->
Version = ?config(http_version, Config),
Host = ?config(host, Config),
@@ -1171,7 +1307,9 @@
Group == https_auth_api_dets;
Group == https_auth_api_mnesia;
Group == http_htaccess;
- Group == http_security ->
+ Group == http_security;
+ Group == http_reload
+ ->
inets_test_lib:start_apps([inets, asn1, crypto, public_key, ssl]);
start_apps(Group) when Group == http_basic;
Group == http_limit;
@@ -1180,7 +1318,8 @@
Group == http_auth_api_dets;
Group == http_auth_api_mnesia;
Group == https_htaccess;
- Group == https_security ->
+ Group == https_security;
+ Group == https_reload->
inets_test_lib:start_apps([inets]).
server_start(_, HttpdConfig) ->
@@ -1224,6 +1363,10 @@
basic_conf() ++ server_config(http, Config);
server_config(https_basic, Config) ->
basic_conf() ++ server_config(https, Config);
+server_config(http_reload, Config) ->
+ [{keep_alive_timeout, 2}] ++ server_config(http, Config);
+server_config(https_reload, Config) ->
+ [{keep_alive_timeout, 2}] ++ server_config(https, Config);
server_config(http_limit, Config) ->
[{max_clients, 1}] ++ server_config(http, Config);
server_config(https_limit, Config) ->
@@ -1270,7 +1413,7 @@
{server_root, ServerRoot},
{document_root, ?config(doc_root, Config)},
{bind_address, any},
- {ipfamily, inet},
+ {ipfamily, ?config(ipfamily, Config)},
{max_header_size, 256},
{max_header_action, close},
{directory_index, ["index.html", "welcome.html"]},
@@ -1539,9 +1682,10 @@
transport_opts(ssl, Config) ->
PrivDir = ?config(priv_dir, Config),
- [{cacertfile, filename:join(PrivDir, "public_key_cacert.pem")}];
-transport_opts(_, _) ->
- [].
+ [?config(ipfamily, Config),
+ {cacertfile, filename:join(PrivDir, "public_key_cacert.pem")}];
+transport_opts(_, Config) ->
+ [?config(ipfamily, Config)].
%%% mod_range
@@ -1792,3 +1936,12 @@
global:send(mod_security_test, Msg)
end.
+type(ip_comm) ->
+ tcp;
+type(_) ->
+ ssl.
+
+typestr(ip_comm) ->
+ "tcp";
+typestr(_) ->
+ "ssl".
diff -Nru erlang-17.1-dfsg/lib/inets/test/httpd_test_lib.erl erlang-17.3-dfsg/lib/inets/test/httpd_test_lib.erl
--- erlang-17.1-dfsg/lib/inets/test/httpd_test_lib.erl 2014-06-23 19:10:57.000000000 +0000
+++ erlang-17.3-dfsg/lib/inets/test/httpd_test_lib.erl 2014-09-16 19:10:57.000000000 +0000
@@ -91,16 +91,7 @@
when (is_integer(TimeOut) orelse (TimeOut =:= infinity)) ->
verify_request(SocketType, Host, Port, [], Node, RequestStr, Options, TimeOut).
-verify_request(SocketType, Host, Port, TranspOpts0, Node, RequestStr, Options, TimeOut) ->
- %% For now, until we modernize the httpd tests
- TranspOpts =
- case lists:member(inet6, TranspOpts0) of
- true ->
- TranspOpts0;
- false ->
- [inet | TranspOpts0]
- end,
-
+verify_request(SocketType, Host, Port, TranspOpts, Node, RequestStr, Options, TimeOut) ->
try inets_test_lib:connect_bin(SocketType, Host, Port, TranspOpts) of
{ok, Socket} ->
ok = inets_test_lib:send(SocketType, Socket, RequestStr),
diff -Nru erlang-17.1-dfsg/lib/inets/test/old_httpd_SUITE.erl erlang-17.3-dfsg/lib/inets/test/old_httpd_SUITE.erl
--- erlang-17.1-dfsg/lib/inets/test/old_httpd_SUITE.erl 2014-06-23 19:10:57.000000000 +0000
+++ erlang-17.3-dfsg/lib/inets/test/old_httpd_SUITE.erl 2014-09-16 19:10:57.000000000 +0000
@@ -186,20 +186,23 @@
%% Only used through load_config
%% but we still need these tests
%% should be cleaned up and moved to new test suite
- ip_restart_no_block,
- ip_restart_disturbing_block,
- ip_restart_non_disturbing_block,
- ip_block_disturbing_idle,
- ip_block_non_disturbing_idle,
- ip_block_503,
- ip_block_disturbing_active,
- ip_block_non_disturbing_active,
- ip_block_disturbing_active_timeout_not_released,
- ip_block_disturbing_active_timeout_released,
- ip_block_non_disturbing_active_timeout_not_released,
- ip_block_non_disturbing_active_timeout_released,
- ip_block_disturbing_blocker_dies,
- ip_block_non_disturbing_blocker_dies
+ %%ip_restart_no_block,
+ %%ip_restart_disturbing_block,
+ %%ip_restart_non_disturbing_block,
+ %% Tested in inets_SUITE
+ %%ip_block_disturbing_idle,
+ %%ip_block_non_disturbing_idle,
+ ip_block_503
+ %% Tested in new httpd_SUITE
+ %%ip_block_disturbing_active,
+ %%ip_block_non_disturbing_active,
+ %%ip_block_disturbing_blocker_dies,
+ %%ip_block_non_disturbing_blocker_dies
+ %% No longer relevant
+ %%ip_block_disturbing_active_timeout_not_released,
+ %%ip_block_disturbing_active_timeout_released,
+ %%ip_block_non_disturbing_active_timeout_not_released,
+ %%ip_block_non_disturbing_active_timeout_released,
]},
{ssl, [], [{group, essl}]},
{essl, [],
diff -Nru erlang-17.1-dfsg/lib/inets/test/property_test/ftp_simple_client_server_data/vsftpd.conf erlang-17.3-dfsg/lib/inets/test/property_test/ftp_simple_client_server_data/vsftpd.conf
--- erlang-17.1-dfsg/lib/inets/test/property_test/ftp_simple_client_server_data/vsftpd.conf 1970-01-01 00:00:00.000000000 +0000
+++ erlang-17.3-dfsg/lib/inets/test/property_test/ftp_simple_client_server_data/vsftpd.conf 2014-09-16 19:10:57.000000000 +0000
@@ -0,0 +1,26 @@
+
+###
+### Some parameters are given in the vsftpd start command.
+###
+### Typical command-line paramters are such that has a file path
+### component like cert files.
+###
+
+
+listen=YES
+listen_port=9999
+run_as_launching_user=YES
+ssl_enable=NO
+#allow_anon_ssl=YES
+
+background=YES
+
+write_enable=YES
+anonymous_enable=YES
+anon_upload_enable=YES
+anon_mkdir_write_enable=YES
+anon_other_write_enable=YES
+anon_world_readable_only=NO
+
+### Shouldn't be necessary....
+require_ssl_reuse=NO
diff -Nru erlang-17.1-dfsg/lib/inets/test/property_test/ftp_simple_client_server.erl erlang-17.3-dfsg/lib/inets/test/property_test/ftp_simple_client_server.erl
--- erlang-17.1-dfsg/lib/inets/test/property_test/ftp_simple_client_server.erl 1970-01-01 00:00:00.000000000 +0000
+++ erlang-17.3-dfsg/lib/inets/test/property_test/ftp_simple_client_server.erl 2014-09-16 19:10:57.000000000 +0000
@@ -0,0 +1,306 @@
+%%
+%% %CopyrightBegin%
+%%
+%% Copyright Ericsson AB 2004-2014. All Rights Reserved.
+%%
+%% The contents of this file are subject to the Erlang Public License,
+%% Version 1.1, (the "License"); you may not use this file except in
+%% compliance with the License. You should have received a copy of the
+%% Erlang Public License along with this software. If not, it can be
+%% retrieved online at http://www.erlang.org/.
+%%
+%% Software distributed under the License is distributed on an "AS IS"
+%% basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
+%% the License for the specific language governing rights and limitations
+%% under the License.
+%%
+%% %CopyrightEnd%
+%%
+%%
+
+-module(ftp_simple_client_server).
+
+-compile(export_all).
+
+-ifndef(EQC).
+-ifndef(PROPER).
+-define(EQC,true).
+%%-define(PROPER,true).
+-endif.
+-endif.
+
+
+-ifdef(EQC).
+
+-include_lib("eqc/include/eqc.hrl").
+-include_lib("eqc/include/eqc_statem.hrl").
+-define(MOD_eqc, eqc).
+-define(MOD_eqc_gen, eqc_gen).
+-define(MOD_eqc_statem, eqc_statem).
+
+-else.
+-ifdef(PROPER).
+
+-include_lib("proper/include/proper.hrl").
+-define(MOD_eqc, proper).
+-define(MOD_eqc_gen, proper_gen).
+-define(MOD_eqc_statem, proper_statem).
+
+-endif.
+-endif.
+
+-record(state, {
+ initialized = false,
+ priv_dir,
+ data_dir,
+ servers = [], % [ {IP,Port,Userid,Pwd} ]
+ clients = [], % [ client_ref() ]
+ store = [] % [ {Name,Contents} ]
+ }).
+
+-define(fmt(F,A), io:format(F,A)).
+%%-define(fmt(F,A), ok).
+
+-define(v(K,L), proplists:get_value(K,L)).
+
+%%%================================================================
+%%%
+%%% Properties
+%%%
+
+%% This function is for normal eqc calls:
+prop_ftp() ->
+ {ok,PWD} = file:get_cwd(),
+ prop_ftp(filename:join([PWD,?MODULE_STRING++"_data"]),
+ filename:join([PWD,?MODULE_STRING,"_files"])).
+
+%% This function is for calls from common_test test cases:
+prop_ftp(Config) ->
+ prop_ftp(filename:join([?v(property_dir,Config), ?MODULE_STRING++"_data"]),
+ ?v(priv_dir,Config) ).
+
+
+prop_ftp(DataDir, PrivDir) ->
+ S0 = #state{data_dir = DataDir,
+ priv_dir = PrivDir},
+ ?FORALL(Cmds, more_commands(10,commands(?MODULE,S0)),
+ aggregate(command_names(Cmds),
+ begin {_H,S,Result} = run_commands(?MODULE,Cmds),
+ % io:format('**** Result=~p~n',[Result]),
+ % io:format('**** S=~p~n',[S]),
+ % io:format('**** _H=~p~n',[_H]),
+ % io:format('**** Cmds=~p~n',[Cmds]),
+ [cmnd_stop_server(X) || X <- S#state.servers],
+ [inets:stop(ftpc,X) || {ok,X} <- S#state.clients],
+ Result==ok
+ end)
+ ).
+
+%%%================================================================
+%%%
+%%% State model
+%%%
+
+%% @doc Returns the state in which each test case starts. (Unless a different
+%% initial state is supplied explicitly to, e.g. commands/2.)
+-spec initial_state() ->?MOD_eqc_statem:symbolic_state().
+initial_state() ->
+ ?fmt("Initial_state()~n",[]),
+ #state{}.
+
+%% @doc Command generator, S is the current state
+-spec command(S :: ?MOD_eqc_statem:symbolic_state()) -> ?MOD_eqc_gen:gen(eqc_statem:call()).
+
+command(#state{initialized=false,
+ priv_dir=PrivDir}) ->
+ {call,?MODULE,cmnd_init,[PrivDir]};
+
+command(#state{servers=[],
+ priv_dir=PrivDir,
+ data_dir=DataDir}) ->
+ {call,?MODULE,cmnd_start_server,[PrivDir,DataDir]};
+
+command(#state{servers=Ss=[_|_],
+ clients=[]}) ->
+ {call,?MODULE,cmnd_start_client,[oneof(Ss)]};
+
+command(#state{servers=Ss=[_|_],
+ clients=Cs=[_|_],
+ store=Store=[_|_]
+ }) ->
+ frequency([
+ { 5, {call,?MODULE,cmnd_start_client,[oneof(Ss)]}},
+ { 5, {call,?MODULE,cmnd_stop_client,[oneof(Cs)]}},
+ {10, {call,?MODULE,cmnd_put,[oneof(Cs),file_path(),file_contents()]}},
+ {20, {call,?MODULE,cmnd_get,[oneof(Cs),oneof(Store)]}},
+ {10, {call,?MODULE,cmnd_delete,[oneof(Cs),oneof(Store)]}}
+ ]);
+
+command(#state{servers=Ss=[_|_],
+ clients=Cs=[_|_],
+ store=[]
+ }) ->
+ frequency([
+ {5, {call,?MODULE,cmnd_start_client,[oneof(Ss)]}},
+ {5, {call,?MODULE,cmnd_stop_client,[oneof(Cs)]}},
+ {10, {call,?MODULE,cmnd_put,[oneof(Cs),file_path(),file_contents()]}}
+ ]).
+
+%% @doc Precondition, checked before command is added to the command sequence.
+-spec precondition(S :: ?MOD_eqc_statem:symbolic_state(), C :: ?MOD_eqc_statem:call()) -> boolean().
+
+precondition(#state{clients=Cs}, {call, _, cmnd_put, [C,_,_]}) -> lists:member(C,Cs);
+
+precondition(#state{clients=Cs, store=Store},
+ {call, _, cmnd_get, [C,X]}) -> lists:member(C,Cs) andalso lists:member(X,Store);
+
+precondition(#state{clients=Cs, store=Store},
+ {call, _, cmnd_delete, [C,X]}) -> lists:member(C,Cs) andalso lists:member(X,Store);
+
+precondition(#state{servers=Ss}, {call, _, cmnd_start_client, _}) -> Ss =/= [];
+
+precondition(#state{clients=Cs}, {call, _, cmnd_stop_client, [C]}) -> lists:member(C,Cs);
+
+precondition(#state{initialized=IsInit}, {call, _, cmnd_init, _}) -> IsInit==false;
+
+precondition(_S, {call, _, _, _}) -> true.
+
+
+%% @doc Postcondition, checked after command has been evaluated
+%% Note: S is the state before next_state(S,_,C)
+-spec postcondition(S :: ?MOD_eqc_statem:dynamic_state(), C :: ?MOD_eqc_statem:call(),
+ Res :: term()) -> boolean().
+
+postcondition(_S, {call, _, cmnd_get, [_,{_Name,Expected}]}, {ok,Value}) ->
+ Value == Expected;
+
+postcondition(S, {call, _, cmnd_delete, [_,{Name,_Expected}]}, ok) ->
+ ?fmt("file:read_file(..) = ~p~n",[file:read_file(filename:join(S#state.priv_dir,Name))]),
+ {error,enoent} == file:read_file(filename:join(S#state.priv_dir,Name));
+
+postcondition(S, {call, _, cmnd_put, [_,Name,Value]}, ok) ->
+ {ok,Bin} = file:read_file(filename:join(S#state.priv_dir,Name)),
+ Bin == unicode:characters_to_binary(Value);
+
+postcondition(_S, {call, _, cmnd_stop_client, _}, ok) -> true;
+
+postcondition(_S, {call, _, cmnd_start_client, _}, {ok,_}) -> true;
+
+postcondition(_S, {call, _, cmnd_init, _}, ok) -> true;
+
+postcondition(_S, {call, _, cmnd_start_server, _}, {ok,_}) -> true.
+
+
+%% @doc Next state transformation, S is the current state. Returns next state.
+-spec next_state(S :: ?MOD_eqc_statem:symbolic_state(),
+ V :: ?MOD_eqc_statem:var(),
+ C :: ?MOD_eqc_statem:call()) -> ?MOD_eqc_statem:symbolic_state().
+
+next_state(S, _V, {call, _, cmnd_put, [_,Name,Val]}) ->
+ S#state{store = [{Name,Val} | lists:keydelete(Name,1,S#state.store)]};
+
+next_state(S, _V, {call, _, cmnd_delete, [_,{Name,_Val}]}) ->
+ S#state{store = lists:keydelete(Name,1,S#state.store)};
+
+next_state(S, V, {call, _, cmnd_start_client, _}) ->
+ S#state{clients = [V | S#state.clients]};
+
+next_state(S, V, {call, _, cmnd_start_server, _}) ->
+ S#state{servers = [V | S#state.servers]};
+
+next_state(S, _V, {call, _, cmnd_stop_client, [C]}) ->
+ S#state{clients = S#state.clients -- [C]};
+
+next_state(S, _V, {call, _, cmnd_init, _}) ->
+ S#state{initialized=true};
+
+next_state(S, _V, {call, _, _, _}) ->
+ S.
+
+%%%================================================================
+%%%
+%%% Data model
+%%%
+
+file_path() -> non_empty(list(alphanum_char())).
+%%file_path() -> non_empty( list(oneof([alphanum_char(), utf8_char()])) ).
+
+%%file_contents() -> list(alphanum_char()).
+file_contents() -> list(oneof([alphanum_char(), utf8_char()])).
+
+alphanum_char() -> oneof(lists:seq($a,$z) ++ lists:seq($A,$Z) ++ lists:seq($0,$9)).
+
+utf8_char() -> oneof("åäöÅÄÖ話è¯ã‚«ã‚¿ã‚«ãƒŠã²ã‚‰ãŒãª").
+
+%%%================================================================
+%%%
+%%% Commands doing something with the System Under Test
+%%%
+
+cmnd_init(PrivDir) ->
+ ?fmt('Call cmnd_init(~p)~n',[PrivDir]),
+ os:cmd("killall vsftpd"),
+ clear_files(PrivDir),
+ ok.
+
+cmnd_start_server(PrivDir, DataDir) ->
+ ?fmt('Call cmnd_start_server(~p, ~p)~n',[PrivDir,DataDir]),
+ Cmnd = ["vsftpd ", filename:join(DataDir,"vsftpd.conf"),
+ " -oftpd_banner=erlang_otp_testing"
+ " -oanon_root=",PrivDir
+ ],
+ ?fmt("Cmnd=~s~n",[Cmnd]),
+ case os:cmd(Cmnd) of
+ [] ->
+ {ok,{"localhost",9999,"ftp","usr@example.com"}};
+ Other ->
+ {error,Other}
+ end.
+
+cmnd_stop_server({ok,{_Host,Port,_Usr,_Pwd}}) ->
+ os:cmd("kill `netstat -tpln | grep "++integer_to_list(Port)++" | awk '{print $7}' | awk -F/ '{print $1}'`").
+
+cmnd_start_client({ok,{Host,Port,Usr,Pwd}}) ->
+ ?fmt('Call cmnd_start_client(~p)...',[{Host,Port,Usr,Pwd}]),
+ case inets:start(ftpc, [{host,Host},{port,Port}]) of
+ {ok,Client} ->
+ ?fmt("~p...",[{ok,Client}]),
+ case ftp:user(Client, Usr, Pwd) of
+ ok ->
+ ?fmt("OK!~n",[]),
+ {ok,Client};
+ Other ->
+ ?fmt("Other1=~p~n",[Other]),
+ inets:stop(ftpc,Client), Other
+ end;
+ Other ->
+ ?fmt("Other2=~p~n",[Other]),
+ Other
+ end.
+
+cmnd_stop_client({ok,Client}) ->
+ ?fmt('Call cmnd_stop_client(~p)~n',[Client]),
+ inets:stop(ftpc, Client). %% -> ok | Other
+
+cmnd_delete({ok,Client}, {Name,_ExpectedValue}) ->
+ ?fmt('Call cmnd_delete(~p, ~p)~n',[Client,Name]),
+ R=ftp:delete(Client, Name),
+ ?fmt("R=~p~n",[R]),
+ R.
+
+cmnd_put({ok,Client}, Name, Value) ->
+ ?fmt('Call cmnd_put(~p, ~p, ~p)...',[Client, Name, Value]),
+ R = ftp:send_bin(Client, unicode:characters_to_binary(Value), Name), % ok | {error,Error}
+ ?fmt('~p~n',[R]),
+ R.
+
+cmnd_get({ok,Client}, {Name,_ExpectedValue}) ->
+ ?fmt('Call cmnd_get(~p, ~p)~n',[Client,Name]),
+ case ftp:recv_bin(Client, Name) of
+ {ok,Bin} -> {ok, unicode:characters_to_list(Bin)};
+ Other -> Other
+ end.
+
+
+clear_files(Dir) ->
+ os:cmd(["rm -fr ",filename:join(Dir,"*")]).
diff -Nru erlang-17.1-dfsg/lib/inets/test/property_test/README erlang-17.3-dfsg/lib/inets/test/property_test/README
--- erlang-17.1-dfsg/lib/inets/test/property_test/README 1970-01-01 00:00:00.000000000 +0000
+++ erlang-17.3-dfsg/lib/inets/test/property_test/README 2014-09-16 19:10:57.000000000 +0000
@@ -0,0 +1,12 @@
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%% %%%
+%%% WARNING %%%
+%%% %%%
+%%% This is experimental code which may be changed or removed %%%
+%%% anytime without any warning. %%%
+%%% %%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+The test in this directory are written assuming that the user has a QuickCheck license. They are to be run manually. Some may be possible to be run with other tools, e.g. PropEr.
+
diff -Nru erlang-17.1-dfsg/lib/inets/vsn.mk erlang-17.3-dfsg/lib/inets/vsn.mk
--- erlang-17.1-dfsg/lib/inets/vsn.mk 2014-06-23 19:10:57.000000000 +0000
+++ erlang-17.3-dfsg/lib/inets/vsn.mk 2014-09-16 19:10:57.000000000 +0000
@@ -18,6 +18,6 @@
# %CopyrightEnd%
APPLICATION = inets
-INETS_VSN = 5.10.2
+INETS_VSN = 5.10.3
PRE_VSN =
APP_VSN = "$(APPLICATION)-$(INETS_VSN)$(PRE_VSN)"
diff -Nru erlang-17.1-dfsg/lib/jinterface/doc/src/notes.xml erlang-17.3-dfsg/lib/jinterface/doc/src/notes.xml
--- erlang-17.1-dfsg/lib/jinterface/doc/src/notes.xml 2014-06-23 19:10:57.000000000 +0000
+++ erlang-17.3-dfsg/lib/jinterface/doc/src/notes.xml 2014-09-16 19:10:57.000000000 +0000
@@ -30,6 +30,41 @@
+
+
* When retrieving messages from a mailbox that has received an exit signal, an
* {@link OtpErlangExit OtpErlangExit} exception will be raised. Note that the
* exception is queued in the mailbox along with other messages, and will not be
@@ -420,7 +421,6 @@
/**
* Equivalent to exit(new OtpErlangAtom(reason))
.
- *
- * The header information that is available is as follows:
*
* Message are sent using the Erlang external format (see separate
diff -Nru erlang-17.1-dfsg/lib/jinterface/java_src/com/ericsson/otp/erlang/OtpOutputStream.java erlang-17.3-dfsg/lib/jinterface/java_src/com/ericsson/otp/erlang/OtpOutputStream.java
--- erlang-17.1-dfsg/lib/jinterface/java_src/com/ericsson/otp/erlang/OtpOutputStream.java 2014-06-23 19:10:57.000000000 +0000
+++ erlang-17.3-dfsg/lib/jinterface/java_src/com/ericsson/otp/erlang/OtpOutputStream.java 2014-09-16 19:10:57.000000000 +0000
@@ -202,7 +202,7 @@
/**
* Write an array of bytes to the stream.
*
- * @param buf
+ * @param bytes
* the array of bytes to write.
*
*/
@@ -637,7 +637,7 @@
* Write a positive short to the stream. The short is interpreted as a two's
* complement unsigned short even if it is negative.
*
- * @param s
+ * @param us
* the short to use.
*/
public void write_ushort(final short us) {
diff -Nru erlang-17.1-dfsg/lib/jinterface/test/jinterface_SUITE_data/FunEquals.java erlang-17.3-dfsg/lib/jinterface/test/jinterface_SUITE_data/FunEquals.java
--- erlang-17.1-dfsg/lib/jinterface/test/jinterface_SUITE_data/FunEquals.java 1970-01-01 00:00:00.000000000 +0000
+++ erlang-17.3-dfsg/lib/jinterface/test/jinterface_SUITE_data/FunEquals.java 2014-09-16 19:10:57.000000000 +0000
@@ -0,0 +1,71 @@
+/*
+ * %CopyrightBegin%
+ *
+ * Copyright Ericsson AB 2004-2010. All Rights Reserved.
+ *
+ * The contents of this file are subject to the Erlang Public License,
+ * Version 1.1, (the "License"); you may not use this file except in
+ * compliance with the License. You should have received a copy of the
+ * Erlang Public License along with this software. If not, it can be
+ * retrieved online at http://www.erlang.org/.
+ *
+ * Software distributed under the License is distributed on an "AS IS"
+ * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
+ * the License for the specific language governing rights and limitations
+ * under the License.
+ *
+ * %CopyrightEnd%
+ */
+
+import java.util.Arrays;
+
+import com.ericsson.otp.erlang.*;
+
+public class FunEquals {
+
+ /*
+ Implements test case jinterface_SUITE:fun_equals/1
+
+ Test the function OtpErlangFun.equals()
+ */
+
+ public static void main(String argv[]) {
+
+ OtpErlangPid pid = new OtpErlangPid("here", 4, 5, 0);
+ String module = "mod";
+ int arity = 2;
+ byte[] md5 = new byte[]{3,5,7};
+ int index = 2;
+ long old_index = 1;
+ long uniq= 2;
+ OtpErlangObject[] freeVars = new OtpErlangObject[]{
+ new OtpErlangAtom("hej"), new OtpErlangLong(9)
+ };
+
+ OtpErlangFun f1 = new OtpErlangFun(pid, module, arity, md5,
+ index, old_index, uniq, freeVars);
+ OtpErlangFun f2 = new OtpErlangFun(pid, module, arity, copyArray(md5),
+ index, old_index, uniq, copyArray(freeVars));
+
+ if(!f1.equals(f2))
+ fail(1);
+
+ }
+
+ private static void fail(int reason) {
+ System.exit(reason);
+ }
+
+ private static byte[] copyArray(byte[] source) {
+ byte[] result = new byte[source.length];
+ System.arraycopy(source, 0, result, 0, source.length);
+ return result;
+ }
+
+ private static OtpErlangObject[] copyArray(OtpErlangObject[] source) {
+ OtpErlangObject[] result = new OtpErlangObject[source.length];
+ System.arraycopy(source, 0, result, 0, source.length);
+ return result;
+ }
+
+}
diff -Nru erlang-17.1-dfsg/lib/jinterface/test/jinterface_SUITE_data/Makefile.src erlang-17.3-dfsg/lib/jinterface/test/jinterface_SUITE_data/Makefile.src
--- erlang-17.1-dfsg/lib/jinterface/test/jinterface_SUITE_data/Makefile.src 2014-06-23 19:10:57.000000000 +0000
+++ erlang-17.3-dfsg/lib/jinterface/test/jinterface_SUITE_data/Makefile.src 2014-09-16 19:10:57.000000000 +0000
@@ -47,7 +47,8 @@
MboxSendReceive.java \
MboxLinkUnlink.java \
NodeStatusHandler.java \
- Maps.java
+ Maps.java \
+ FunEquals.java
CLASS_FILES = $(JAVA_FILES:.java=.class)
diff -Nru erlang-17.1-dfsg/lib/jinterface/test/jinterface_SUITE.erl erlang-17.3-dfsg/lib/jinterface/test/jinterface_SUITE.erl
--- erlang-17.1-dfsg/lib/jinterface/test/jinterface_SUITE.erl 2014-06-23 19:10:57.000000000 +0000
+++ erlang-17.3-dfsg/lib/jinterface/test/jinterface_SUITE.erl 2014-09-16 19:10:57.000000000 +0000
@@ -38,7 +38,8 @@
java_exit_with_reason_any_term/1,
status_handler_localStatus/1, status_handler_remoteStatus/1,
status_handler_connAttempt/1,
- maps/1
+ maps/1,
+ fun_equals/1
]).
-include_lib("common_test/include/ct.hrl").
@@ -106,7 +107,8 @@
register_and_whereis, % RegisterAndWhereis.java
get_names, % GetNames.java
boolean_atom, % BooleanAtom.java
- maps % Maps.java
+ maps, % Maps.java
+ fun_equals % FunEquals.java
].
ping() ->
@@ -691,6 +693,18 @@
[]).
%%%-----------------------------------------------------------------
+fun_equals(doc) ->
+ ["FunEquals.java: "
+ "Test OtpErlangFun.equals()"];
+fun_equals(suite) ->
+ [];
+fun_equals(Config) when is_list(Config) ->
+ ok = jitu:java(?config(java, Config),
+ ?config(data_dir, Config),
+ "FunEquals",
+ []).
+
+%%%-----------------------------------------------------------------
%%% INTERNAL FUNCTIONS
%%%-----------------------------------------------------------------
send_receive(TestCaseTag,Fun,Config) ->
diff -Nru erlang-17.1-dfsg/lib/jinterface/vsn.mk erlang-17.3-dfsg/lib/jinterface/vsn.mk
--- erlang-17.1-dfsg/lib/jinterface/vsn.mk 2014-06-23 19:10:57.000000000 +0000
+++ erlang-17.3-dfsg/lib/jinterface/vsn.mk 2014-09-16 19:10:57.000000000 +0000
@@ -1 +1 @@
-JINTERFACE_VSN = 1.5.9
+JINTERFACE_VSN = 1.5.10
diff -Nru erlang-17.1-dfsg/lib/kernel/doc/src/gen_tcp.xml erlang-17.3-dfsg/lib/kernel/doc/src/gen_tcp.xml
--- erlang-17.1-dfsg/lib/kernel/doc/src/gen_tcp.xml 2014-06-23 19:10:57.000000000 +0000
+++ erlang-17.3-dfsg/lib/kernel/doc/src/gen_tcp.xml 2014-09-16 19:10:57.000000000 +0000
@@ -112,7 +112,12 @@
If a socket has somehow been connected without using
If a socket has somehow been opened without using
This document describes the changes made to the Kernel application.
++ Accept inet:ip_address() in net_adm:names/1
++ Own Id: OTP-12154
++ OTP-11850 fixed filelib:wildcard/1 to work with broken + symlinks. This correction, however, introduced problems + since symlinks were no longer followed for functions like + filelib:ensure_dir/1, filelib:is_dir/1, + filelib:file_size/1, etc. This is now corrected.
++ Own Id: OTP-12054 Aux Id: seq12660
+
+ When using gen_tcp:connect and the
+ Own Id: OTP-12061
++ Implement --enable-sanitizers[=sanitizers]. Similar to + debugging with Valgrind, it's very useful to enable + -fsanitize= switches to catch bugs at runtime.
++ Own Id: OTP-12153
+
+ Various logging fixes, including: Add run queue index to
+ the process dump in crash dumps.
Add thread index to
+ enomem slogan when crashing.
Remove error logger
+ message for sending messages to old instances of the same
+ node.
+ Own Id: OTP-12115
++ Fixed a race which could make create_table fail if a node + was going down during the transaction.
++ Own Id: OTP-12124 Aux Id: seq12694
+This document describes the changes made to the Observer application.
++ Fixed statusbar on Windows
++ Own Id: OTP-12162
+As the Erlang ODBC application relies on third party products - and communicates with a database that probably runs on an other + and communicates with a database that probably runs on another computer in the network there are plenty of things that might go wrong. To fully understand the things that might happen it facilitate to know the design of the Erlang ODBC application, diff -Nru erlang-17.1-dfsg/lib/odbc/doc/src/notes.xml erlang-17.3-dfsg/lib/odbc/doc/src/notes.xml --- erlang-17.1-dfsg/lib/odbc/doc/src/notes.xml 2014-06-23 19:10:57.000000000 +0000 +++ erlang-17.3-dfsg/lib/odbc/doc/src/notes.xml 2014-09-16 19:10:57.000000000 +0000 @@ -31,7 +31,30 @@
This document describes the changes made to the odbc application.
-+ Fix compiler warnings reported by LLVM
++ Own Id: OTP-12138
++ Implement --enable-sanitizers[=sanitizers]. Similar to + debugging with Valgrind, it's very useful to enable + -fsanitize= switches to catch bugs at runtime.
++ Own Id: OTP-12153
+The notation of this scheme is similar to the more well known URL
= "corbaloc:"["/"]
- = [","]*
- = |
- = |
- = ":"
- = rir
- =
- = ":"
- =
- = | ":"
- = ":"
- = "iiop"
- = [":"]
- = DNS-style Host Name | ip_address
- = ".""@" | empty_string
- = number
- = number
- = number
- = for example NameService
+ = "corbaloc:"["/"]
+ = [","]*
+ = |
+ = |
+ = ":"
+ = rir
+ =
+ = ":"
+ =
+ = | ":"
+ = ":"
+ = "iiop"
+ = [":"]
+ = | | "[""]"
+ = ".""@" | empty_string
+ = number
+ = number
+ = number
+ = string
+ = string
+ = string
+ = for example NameService
]]>
The
This function returns the object reference for the object id asked
for.
The remote modifier string has the following format:
-
The configuration context is used to override the global
SSL client side
This function returns a list of allowed object id's. The remote modifier
- string has the following format:
This function returns a list of allowed object id's.
+ The remote modifier string has the following format:
+
The configuration context is used to override the global
SSL client side
This function takes a
To lookup the NameService reference, simply use
-
We can also resolve an object from the NameService by using
-
To lookup the NameService reference with an IPv6 address, simply use
+
For more information about
The configuration context is used to override the global
diff -Nru erlang-17.1-dfsg/lib/orber/doc/src/notes.xml erlang-17.3-dfsg/lib/orber/doc/src/notes.xml
--- erlang-17.1-dfsg/lib/orber/doc/src/notes.xml 2014-06-23 19:10:57.000000000 +0000
+++ erlang-17.3-dfsg/lib/orber/doc/src/notes.xml 2014-09-16 19:10:57.000000000 +0000
@@ -33,7 +33,46 @@
- The following functions have been corrected so they
+ work properly with IPv6 addresses.
+ Own Id: OTP-12016 A couple of macros were malformed, missing commas:
+ PROFILEBODY_1_1_TYPEDEF and PROFILEBODY_1_2_TYPEDEF.
+ Thanks to Vlad Dumitrescu.
+ Own Id: OTP-12062 It is now possible to add listen interfaces for IPv6
+ when orber is default configured for IPv4 and the other
+ way around. For more information, consult the User's
+ Guide and the orber module Reference Manual.
+ Own Id: OTP-12007 If it is not possible to add a listener based on the supplied interface
and port, the error message is one of the ones described in
- The arguments are printed on seperate lines to make it possible to know
+ The arguments are printed on separate lines to make it possible to know
what has to be quoted with ". Each line is one quotable unit.
So taking the arguments above you can supply them to pm_create or
just execute directly on the command line. For example:
Also note that since we are running erl to figure out the arguments on a
- seperate machine the paths have to be updated. In the example above
+ separate machine the paths have to be updated. In the example above
+
+
+
+
+
+
diff -Nru erlang-17.1-dfsg/lib/orber/doc/src/orber.xml erlang-17.3-dfsg/lib/orber/doc/src/orber.xml
--- erlang-17.1-dfsg/lib/orber/doc/src/orber.xml 2014-06-23 19:10:57.000000000 +0000
+++ erlang-17.3-dfsg/lib/orber/doc/src/orber.xml 2014-09-16 19:10:57.000000000 +0000
@@ -356,8 +356,8 @@
Specifies whether the
The parameter is ignored on platforms that are known to not be + posix compatible (Windows and SunOS).
+See
This document describes the changes made to the OS_Mon application.
++ Adds a new application parameter 'disksup_posix_only', to + make diskup use only options defined in the POSIX + standard.
++ Own Id: OTP-12053
+This chapter briefly describes erlang records derived from ASN1
specifications used to handle
+ Added missing encoding support for PBES2, and also + completed support for PBES1 that was incomplete.
++ Own Id: OTP-11915
+This chapter briefly describes Erlang records derived from ASN1 - specifications used to handle public and private keys. The intent - is to describe the data types and not to specify the meaning of - each component for this we refer you to the relevant standards and RFCs.
+ specifications used to handle public and private keys. + The intent is to describe the data types + and not to specify the semantics of each component. For information on the + semantics, please see the relevant standards and RFCs.Use the following include directive to get access to the - records and constant macros used in the following sections.
+ records and constant macros described in the following sections. -include_lib("public_key/include/public_key.hrl").
+ Common non-standard Erlang
+ data types used to described the record fields in the
+ below sections are defined in
#'RSAPublicKey'{
@@ -76,7 +86,8 @@
@@ -96,4 +107,47 @@
}.
+#'ECPrivateKey'{
+ version, % integer()
+ privateKey, % octet_string()
+ parameters, % der_encoded() - {'EcpkParameters', #'ECParameters'{}} |
+ {'EcpkParameters', {namedCurve, oid()}} |
+ {'EcpkParameters', 'NULL'} % Inherited by CA
+ publicKey % bitstring()
+ }.
+
+#'ECParameters'{
+ version, % integer()
+ fieldID, % #'FieldID'{}
+ curve, % #'Curve'{}
+ base, % octet_string()
+ order, % integer()
+ cofactor % integer()
+ }.
+
+#'Curve'{
+ a, % octet_string()
+ b, % octet_string()
+ seed % bitstring() - optional
+
+ }.
+
+#'FieldID'{
+ fieldType, % oid()
+ parameters % Depending on fieldType
+ }.
+
+#'ECPoint'{
+ point % octet_string() - the public key
+ }.
+
+
+ Data Types
-oid() - a tuple of integers as generated by the ASN1 compiler.
oid() - Object Identifier, a tuple of integers as generated by the ASN1 compiler.
boolean() = true | false
cipher_info() = {"RC2-CBC | "DES-CBC" | "DES-EDE3-CBC",
- crypto:rand_bytes(8)} | 'PBES2-params'}
public_key() = rsa_public_key() | dsa_public_key() | ec_public_key()
private_key() = rsa_private_key() | dsa_private_key() | ec_private_key()
rsa_padding() = 'rsa_pkcs1_padding' | 'rsa_pkcs1_oaep_padding' |
'rsa_no_padding'
digest_type() - Union of below digest types
rsa_digest_type() = 'md5' | 'sha' | 'sha224' | 'sha256' | 'sha384' |
'sha512'
fun(OtpCert :: #'OTPCertificate'{},
- Event :: {bad_cert, Reason :: atom()} |
+ Event :: {bad_cert, Reason :: atom() | {revoked, atom()}} |
{extension, #'Extension'{}},
InitialUserState :: term()) ->
{valid, UserState :: term()} |
@@ -491,6 +495,35 @@
on.
+
+ Possible reasons for a bad certificate are:
+
+ cert_expired
+ - The certificate is no longer valid as its expiration date has passed.
+
+ invalid_issuer
+ - The certificate issuer name does not match the name of the issuer certificate in the chain.
+
+ invalid_signature
+ - The certificate was not signed by its issuer certificate in the chain.
+
+ name_not_permitted
+ - Invalid Subject Alternative Name extension.
+
+ missing_basic_constraint
+ - Certificate, required to have the basic constraints extension, does not have
+ a basic constraints extension.
+
+ invalid_key_usage
+ - Certificate key is used in an invalid way according to the key usage extension.
+
+ {revoked, crl_reason()}
+ - Certificate has been revoked.
+
+ atom()
+ - Application specific error reason that should be checked by the verify_fun
+
+
Performs CRL validation. It is intended to be called from
- the verify fun of
Available options are:
diff -Nru erlang-17.1-dfsg/lib/public_key/src/pubkey_pbe.erl erlang-17.3-dfsg/lib/public_key/src/pubkey_pbe.erl --- erlang-17.1-dfsg/lib/public_key/src/pubkey_pbe.erl 2014-06-23 19:10:57.000000000 +0000 +++ erlang-17.3-dfsg/lib/public_key/src/pubkey_pbe.erl 2014-09-16 19:10:57.000000000 +0000 @@ -1,7 +1,7 @@ %% %% %CopyrightBegin% %% -%% Copyright Ericsson AB 2011-2013. All Rights Reserved. +%% Copyright Ericsson AB 2011-2014. All Rights Reserved. %% %% The contents of this file are subject to the Erlang Public License, %% Version 1.1, (the "License"); you may not use this file except in @@ -22,7 +22,7 @@ -include("public_key.hrl"). --export([encode/4, decode/4, decrypt_parameters/1]). +-export([encode/4, decode/4, decrypt_parameters/1, encrypt_parameters/1]). -export([pbdkdf1/4, pbdkdf2/7]). -define(DEFAULT_SHA_MAC_KEYLEN, 20). @@ -40,16 +40,16 @@ %%-------------------------------------------------------------------- encode(Data, Password, "DES-CBC" = Cipher, KeyDevParams) -> {Key, IV} = password_to_key_and_iv(Password, Cipher, KeyDevParams), - crypto:block_encrypt(des_cbc, Key, IV, Data); + crypto:block_encrypt(des_cbc, Key, IV, pbe_pad(Data, KeyDevParams)); encode(Data, Password, "DES-EDE3-CBC" = Cipher, KeyDevParams) -> {Key, IV} = password_to_key_and_iv(Password, Cipher, KeyDevParams), <Clears all alarms with id
Sends the
When receiving this event, the default simple handler
+ clears the latest received alarm with id
Sets an alarm with id
Sends the
When receiving this event, the default simple handler
+ stores the alarm. The
This document describes the changes made to the SASL application.
+
+ The documentation erroneously specified that
+
+ Own Id: OTP-12025
++ The SNMP manager has been enhanced with dual stack + IPv4+IPv6, as the agent just was. The documentation is + also now updated for both the agent and the manager.
++ Own Id: OTP-12108 Aux Id: OTP-12020
++ SNMP has been improved to handle IPv6. The agent can + handle dual stack IPv4 + IPv6, but not yet the manager. + The documentation also still lags behind... If you do + such advanced stuff like writing a custom net_if module, + the interface for it has changed, but other than that + SNMP is backwards compatible.
++ *** POTENTIAL INCOMPATIBILITY ***
++ Own Id: OTP-12020 Aux Id: OTP-11518
+
+ For
Create an entry for the agent target_addr config file,
See
The following example shows a
The following example shows an
{intAgentUDPPort, 4000}. -{intAgentIpAddress,[141,213,11,24]}. +{intAgentTransports, + [{transportDomainUdpIpv4, {141,213,11,24}}, + {transportDomainUdpIpv6, {0,0,0,0,0,0,0,1}}]}. {snmpEngineID, "mbj's engine"}. {snmpEngineMaxPacketSize, 484}.+
The value of
When the
The legacy and intermediate variables
The value of
Each entry is a term:
-
or
-
or
-
or
+
If
The old tuple formats with
Note that if
It is also possible to write your own Net if process. The default
Net if process is implemented in the module
This section describes how to write a Net if process.
@@ -70,6 +71,12 @@The section Messages describes mandatory messages, which Net if must send and be able to receive.
+In this section an
See the
Processes an incoming packet. Performs authentication and - decryption as necessary. The return values should be passed the + decryption as necessary. The return values should be passed to the agent.
+
Note that the use of the LocalEngineID argument is only intended @@ -166,6 +179,32 @@ (see SNMP-FRAMEWORK-MIB).
Transforms addresses from internal MIB format to one
+ more useful to
See also
The first level is at the UDP entry / exit point, i.e. - immediately after the receipt of the message, before any message +
The first level is at the transport entry / exit point, i.e. + immediately after the receipt of the message before any message processing is done (accept_recv) and - immediately before sending the message, after all message + immediately before sending the message after all message processing is done (accept_send).
Legacy network interface filter modules used arguments on the form
+
See also the
Called at the reception of a message (before any processing @@ -107,11 +115,11 @@
Called before the sending of a message (after all processing @@ -122,11 +130,11 @@
For the message to be discarded all together, the function must return false.
Note that it is possible for this function to filter out targets
- (but not add its own) by returning an updated
+ (but not to add its own) by returning an updated
The semantics of them and their exact signatures are explained below.
+Legacy notification delivery information receiver modules
+ used a target argument on the form
+
+ See the
When
When a
The legacy and intermediate variables
The following example shows a
-{address, [141,213,11,24]}. -{port, 5000}. +{transports, [{transportDomainUdpIpv4, {{141,213,11,24}, 5000}}, + {transportDomainUdpIpv6, {{0,0,0,0,0,0,0,1}, 5000}}]}. {engine_id, "mgrEngine"}. {max_message_size, 484}.@@ -146,7 +177,7 @@
Each entry is a tuple:
-Legacy configurations using tuples without
The snmp application provides two different modules,
It is also possible to write your own Net if process, - this section describes how to write a Net if processdo that.
+It is also possible to write your own Net if process and + this section describes how to do that.
The section Messages describes mandatory messages, which Net if must send to the manager server process.
+In this section a
Net if must send the following message when it receives an SNMP PDU from the network that is aimed for the MasterAgent:
-Server ! {snmp_pdu, Pdu, Addr, Port} +Server ! {snmp_pdu, Pdu, Domain, Addr}
-Server ! {snmp_trap, Trap, Addr, Port} +Server ! {snmp_trap, Trap, Domain, Addr}
-Server ! {snmp_inform, Ref, Pdu, PduMS, Addr, Port} +Server ! {snmp_inform, Ref, Pdu, PduMS, Domain, Addr}
-Server ! {snmp_report, Data, Addr, Port} +Server ! {snmp_report, Data, Domain, Addr}
Legacy API function
A network interface filter can e.g. be used during testing or for load regulation.
+Legacy network interface filter modules used arguments on the form
+
See also the
Called at the reception of a message (before any processing @@ -107,11 +115,11 @@
Called before the sending of a message (after all processing @@ -123,11 +131,11 @@
The semantics of them and their exact signatures are explained below.
+Legacy API function
The semantics of them and their exact signatures are explained below.
Some of the function has no defined return value (
If the manager is not configured to use any particular
+ transport domain, the behaviour
See also the
The type of
Note that if no
Note that if no
Note that if no
The configuration files are described in the SNMP User's Manual.
+Legacy API functions
+ See the
+ When starting an ssh-daemon giving the option + {parallel_login, true}, the timeout for authentication + negotiation ({negotiation_timeout, integer()}) was never + removed.
++ This caused the session to always be terminated after the + timeout if parallel_login was set.
++ Own Id: OTP-12057 Aux Id: seq12663
++ Warning: this is experimental and may disappear or change + without previous warning.
+
+ Experimental support for running Quickcheck and PropEr
+ tests from common_test suites is added to common_test.
+ See the reference manual for the new module
+
+ Experimental property tests are added under
+
+ See the code in the
+ (Thanks to Tuncer Ayaz for a patch adding Triq)
++ Own Id: OTP-12119
++ When starting an ssh-daemon giving the option + {parallel_login, true}, the timeout for authentication + negotiation ({negotiation_timeout, integer()}) was never + removed.
++ This caused the session to always be terminated after the + timeout if parallel_login was set.
++ Own Id: OTP-12057 Aux Id: seq12663
+This document describes the changes made to the SSL application.
-+ Corrected handling of ECC certificates, there where + several small issues with the handling of such + certificates in the ssl and public_key application. Now + ECC signed ECC certificates shall work and not only RSA + signed ECC certificates.
++ Own Id: OTP-12026
++ Check that the certificate chain ends with a trusted ROOT + CA e.i. a self-signed certificate, but provide an option + partial_chain to enable the application to define an + intermediat CA as trusted.
++ Own Id: OTP-12149
++ Add decode functions for SNI (Server Name Indication)
++ Own Id: OTP-12048
+The verification fun should be defined as:
-fun(OtpCert :: #'OTPCertificate'{}, Event :: {bad_cert, Reason :: atom()} |
+fun(OtpCert :: #'OTPCertificate'{}, Event :: {bad_cert, Reason :: atom() | {revoked, atom()}} |
{extension, #'Extension'{}}, InitialUserState :: term()) ->
{valid, UserState :: term()} | {valid_peer, UserState :: term()} |
{fail, Reason :: term()} | {unknown, UserState :: term()}.
@@ -252,7 +252,7 @@
always returns {valid, UserState}, the TLS/SSL handshake will
not be terminated with respect to verification failures and
the connection will be established. If called with an
- extension unknown to the user application the return value
+ extension unknown to the user application, the return value
{unknown, UserState} should be used.
The default verify_fun option in verify_peer mode:
@@ -283,9 +283,29 @@
end, []}
-Possible path validation errors:
+Possible path validation errors are given on the form {bad_cert, Reason} where Reason is:
-{bad_cert, cert_expired}, {bad_cert, invalid_issuer}, {bad_cert, invalid_signature}, {bad_cert, unknown_ca},{bad_cert, selfsigned_peer}, {bad_cert, name_not_permitted}, {bad_cert, missing_basic_constraint}, {bad_cert, invalid_key_usage}
+
+ Returns a new map
Example:
+
+> Map = #{42 => value_three,1337 => "value two","a" => 1},
+ Ks = ["a",42,"other key"],
+ maps:without(Ks,Map).
+#{42 => value_three,"a" => 1}
+ This document describes the changes made to the STDLIB application.
++ The type spec of the FormFunc argument to + sys:handle_debug/4 was erroneously pointing to dbg_fun(). + This is now corrected and the new type is format_fun().
++ Own Id: OTP-11800
++ Behaviors such as gen_fsm and gen_server should always + invoke format_status/2 before printing the state to the + logs.
++ Own Id: OTP-11967
+ The documentation of
+ Own Id: OTP-12024
++ Printing a term with io_lib:format and control sequence + w, precision P and field width F, where F< P would + fail in one of the two following ways:
++ 1) If P < printed length of the term, an infinite loop + would be entered, consuming all available memory.
++ 2) If P >= printed length of the term, an exception + would be raised.
++ These two problems are now corrected.
++ Own Id: OTP-12041
+
+ The documentation of
+ Own Id: OTP-12055
++ Expand shell functions in map expressions.
++ Own Id: OTP-12063
++ Add maps:with/2
++ Own Id: OTP-12137
++ OTP-11850 fixed filelib:wildcard/1 to work with broken + symlinks. This correction, however, introduced problems + since symlinks were no longer followed for functions like + filelib:ensure_dir/1, filelib:is_dir/1, + filelib:file_size/1, etc. This is now corrected.
++ Own Id: OTP-12054 Aux Id: seq12660
+This document describes the changes made to the Syntax_Tools application.
+The default encoding for Erlang source files is now + UTF-8. As a temporary measure to ease the transition from + the old default of Latin-1, if EDoc encounters byte + sequences that are not valid UTF-8 sequences, EDoc will + re-try in Latin-1 mode. This workaround will be removed + in a future release.
++ Own Id: OTP-12008
+This document describes the changes made to the Tools application.
++ Add log2 histogram to lcnt for lock wait time
++ Own Id: OTP-12059
+This document describes the changes made to the wxErlang application.
++ Implement --enable-sanitizers[=sanitizers]. Similar to + debugging with Valgrind, it's very useful to enable + -fsanitize= switches to catch bugs at runtime.
++ Own Id: OTP-12153
+The maximum number of simultaneously oper Erlang ports is +
The maximum number of simultaneously open Erlang ports is
often by default 16384. This limit can be configured at startup,
for more information see the
The same thing happens if you insert a binary into an ets
- table or send it to a port using
Matching a binary will also cause it to shrink and the next append operation will copy the binary data:
diff -Nru erlang-17.1-dfsg/system/doc/reference_manual/processes.xml erlang-17.3-dfsg/system/doc/reference_manual/processes.xml --- erlang-17.1-dfsg/system/doc/reference_manual/processes.xml 2014-06-23 19:10:57.000000000 +0000 +++ erlang-17.3-dfsg/system/doc/reference_manual/processes.xml 2014-09-16 19:10:57.000000000 +0000 @@ -114,8 +114,8 @@Two processes can be linked to each other. A link
between two processes
Links are bidirectional and there can only be one link between
two processes. Repeated calls to
A link can be removed by calling the BIF
No