aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/.gitignore464
-rw-r--r--lib/asn1/doc/src/Makefile4
-rw-r--r--lib/asn1/doc/src/note.gifbin1539 -> 0 bytes
-rw-r--r--lib/asn1/doc/src/notes_history.xml1782
-rw-r--r--lib/asn1/doc/src/part_notes.xml39
-rw-r--r--lib/asn1/doc/src/warning.gifbin1498 -> 0 bytes
-rw-r--r--lib/compiler/src/beam_asm.erl2
-rw-r--r--lib/crypto/test/blowfish_SUITE.erl10
-rw-r--r--lib/debugger/doc/src/Makefile2
-rw-r--r--lib/debugger/doc/src/part_notes.xml40
-rw-r--r--lib/debugger/doc/src/warning.gifbin1498 -> 0 bytes
-rw-r--r--lib/erl_interface/doc/src/ei_connect.xml21
-rw-r--r--lib/erl_interface/include/ei.h6
-rw-r--r--lib/erl_interface/src/connect/ei_connect.c18
-rw-r--r--lib/observer/src/crashdump_viewer.erl3
-rw-r--r--lib/observer/src/crashdump_viewer.hrl1
-rw-r--r--lib/observer/src/crashdump_viewer_html.erl2
-rw-r--r--lib/public_key/doc/src/cert_records.xml34
-rw-r--r--lib/ssl/doc/src/create_certs.xml14
-rw-r--r--lib/ssl/doc/src/new_ssl.xml23
-rw-r--r--lib/ssl/doc/src/pkix_certs.xml213
-rw-r--r--lib/ssl/doc/src/remember.xml83
-rw-r--r--lib/ssl/doc/src/ssl.xml35
-rw-r--r--lib/wx/api_gen/wxapi.conf4
-rw-r--r--lib/wx/c_src/gen/wxe_funcs.cpp12
-rw-r--r--lib/wx/doc/src/Makefile10
-rw-r--r--lib/wx/doc/src/ref_man.xml.src (renamed from lib/wx/doc/src/ref_man.src.xml)0
-rw-r--r--lib/wx/src/gen/wxFileDialog.erl13
28 files changed, 577 insertions, 2258 deletions
diff --git a/lib/.gitignore b/lib/.gitignore
new file mode 100644
index 0000000000..bdc850f3b7
--- /dev/null
+++ b/lib/.gitignore
@@ -0,0 +1,464 @@
+# megaco
+
+/megaco/src/binary/megaco_ber_bin_drv_media_gateway_control_prev3a.erl
+/megaco/src/binary/megaco_ber_bin_drv_media_gateway_control_prev3a.hrl
+/megaco/src/binary/megaco_ber_bin_drv_media_gateway_control_prev3b.erl
+/megaco/src/binary/megaco_ber_bin_drv_media_gateway_control_prev3b.hrl
+/megaco/src/binary/megaco_ber_bin_drv_media_gateway_control_prev3c.erl
+/megaco/src/binary/megaco_ber_bin_drv_media_gateway_control_prev3c.hrl
+/megaco/src/binary/megaco_ber_bin_drv_media_gateway_control_v1.erl
+/megaco/src/binary/megaco_ber_bin_drv_media_gateway_control_v1.hrl
+/megaco/src/binary/megaco_ber_bin_drv_media_gateway_control_v2.erl
+/megaco/src/binary/megaco_ber_bin_drv_media_gateway_control_v2.hrl
+/megaco/src/binary/megaco_ber_bin_drv_media_gateway_control_v3.erl
+/megaco/src/binary/megaco_ber_bin_drv_media_gateway_control_v3.hrl
+/megaco/src/binary/megaco_ber_bin_media_gateway_control_prev3a.erl
+/megaco/src/binary/megaco_ber_bin_media_gateway_control_prev3a.hrl
+/megaco/src/binary/megaco_ber_bin_media_gateway_control_prev3b.erl
+/megaco/src/binary/megaco_ber_bin_media_gateway_control_prev3b.hrl
+/megaco/src/binary/megaco_ber_bin_media_gateway_control_prev3c.erl
+/megaco/src/binary/megaco_ber_bin_media_gateway_control_prev3c.hrl
+/megaco/src/binary/megaco_ber_bin_media_gateway_control_v1.erl
+/megaco/src/binary/megaco_ber_bin_media_gateway_control_v1.hrl
+/megaco/src/binary/megaco_ber_bin_media_gateway_control_v2.erl
+/megaco/src/binary/megaco_ber_bin_media_gateway_control_v2.hrl
+/megaco/src/binary/megaco_ber_bin_media_gateway_control_v3.erl
+/megaco/src/binary/megaco_ber_bin_media_gateway_control_v3.hrl
+/megaco/src/binary/megaco_ber_media_gateway_control_prev3a.erl
+/megaco/src/binary/megaco_ber_media_gateway_control_prev3a.hrl
+/megaco/src/binary/megaco_ber_media_gateway_control_prev3b.erl
+/megaco/src/binary/megaco_ber_media_gateway_control_prev3b.hrl
+/megaco/src/binary/megaco_ber_media_gateway_control_prev3c.erl
+/megaco/src/binary/megaco_ber_media_gateway_control_prev3c.hrl
+/megaco/src/binary/megaco_ber_media_gateway_control_v1.erl
+/megaco/src/binary/megaco_ber_media_gateway_control_v1.hrl
+/megaco/src/binary/megaco_ber_media_gateway_control_v2.erl
+/megaco/src/binary/megaco_ber_media_gateway_control_v2.hrl
+/megaco/src/binary/megaco_ber_media_gateway_control_v3.erl
+/megaco/src/binary/megaco_ber_media_gateway_control_v3.hrl
+/megaco/src/binary/megaco_per_bin_drv_media_gateway_control_prev3a.erl
+/megaco/src/binary/megaco_per_bin_drv_media_gateway_control_prev3a.hrl
+/megaco/src/binary/megaco_per_bin_drv_media_gateway_control_prev3b.erl
+/megaco/src/binary/megaco_per_bin_drv_media_gateway_control_prev3b.hrl
+/megaco/src/binary/megaco_per_bin_drv_media_gateway_control_prev3c.erl
+/megaco/src/binary/megaco_per_bin_drv_media_gateway_control_prev3c.hrl
+/megaco/src/binary/megaco_per_bin_drv_media_gateway_control_v1.erl
+/megaco/src/binary/megaco_per_bin_drv_media_gateway_control_v1.hrl
+/megaco/src/binary/megaco_per_bin_drv_media_gateway_control_v2.erl
+/megaco/src/binary/megaco_per_bin_drv_media_gateway_control_v2.hrl
+/megaco/src/binary/megaco_per_bin_drv_media_gateway_control_v3.erl
+/megaco/src/binary/megaco_per_bin_drv_media_gateway_control_v3.hrl
+/megaco/src/binary/megaco_per_bin_media_gateway_control_prev3a.erl
+/megaco/src/binary/megaco_per_bin_media_gateway_control_prev3a.hrl
+/megaco/src/binary/megaco_per_bin_media_gateway_control_prev3b.erl
+/megaco/src/binary/megaco_per_bin_media_gateway_control_prev3b.hrl
+/megaco/src/binary/megaco_per_bin_media_gateway_control_prev3c.erl
+/megaco/src/binary/megaco_per_bin_media_gateway_control_prev3c.hrl
+/megaco/src/binary/megaco_per_bin_media_gateway_control_v1.erl
+/megaco/src/binary/megaco_per_bin_media_gateway_control_v1.hrl
+/megaco/src/binary/megaco_per_bin_media_gateway_control_v2.erl
+/megaco/src/binary/megaco_per_bin_media_gateway_control_v2.hrl
+/megaco/src/binary/megaco_per_bin_media_gateway_control_v3.erl
+/megaco/src/binary/megaco_per_bin_media_gateway_control_v3.hrl
+/megaco/src/binary/megaco_per_media_gateway_control_prev3a.erl
+/megaco/src/binary/megaco_per_media_gateway_control_prev3a.hrl
+/megaco/src/binary/megaco_per_media_gateway_control_prev3b.erl
+/megaco/src/binary/megaco_per_media_gateway_control_prev3b.hrl
+/megaco/src/binary/megaco_per_media_gateway_control_prev3c.erl
+/megaco/src/binary/megaco_per_media_gateway_control_prev3c.hrl
+/megaco/src/binary/megaco_per_media_gateway_control_v1.erl
+/megaco/src/binary/megaco_per_media_gateway_control_v1.hrl
+/megaco/src/binary/megaco_per_media_gateway_control_v2.erl
+/megaco/src/binary/megaco_per_media_gateway_control_v2.hrl
+/megaco/src/binary/megaco_per_media_gateway_control_v3.erl
+/megaco/src/binary/megaco_per_media_gateway_control_v3.hrl
+/megaco/src/binary/prebuild.skip
+/megaco/src/flex/megaco_flex_scanner_drv.c
+/megaco/src/flex/megaco_flex_scanner_drv.flex
+/megaco/src/flex/megaco_flex_scanner_drv_mt.c
+/megaco/src/flex/megaco_flex_scanner_drv_mt.flex
+/megaco/src/text/megaco_text_mini_parser.erl
+/megaco/src/text/megaco_text_parser_prev3a.erl
+/megaco/src/text/megaco_text_parser_prev3b.erl
+/megaco/src/text/megaco_text_parser_prev3c.erl
+/megaco/src/text/megaco_text_parser_v1.erl
+/megaco/src/text/megaco_text_parser_v2.erl
+/megaco/src/text/megaco_text_parser_v3.erl
+
+# orber & cos* applications
+
+/cosEvent/include/CosEventChannelAdmin.hrl
+/cosEvent/include/CosEventChannelAdmin_ConsumerAdmin.hrl
+/cosEvent/include/CosEventChannelAdmin_EventChannel.hrl
+/cosEvent/include/CosEventChannelAdmin_ProxyPullConsumer.hrl
+/cosEvent/include/CosEventChannelAdmin_ProxyPullSupplier.hrl
+/cosEvent/include/CosEventChannelAdmin_ProxyPushConsumer.hrl
+/cosEvent/include/CosEventChannelAdmin_ProxyPushSupplier.hrl
+/cosEvent/include/CosEventChannelAdmin_SupplierAdmin.hrl
+/cosEvent/include/CosEventComm.hrl
+/cosEvent/include/CosEventComm_PullConsumer.hrl
+/cosEvent/include/CosEventComm_PullSupplier.hrl
+/cosEvent/include/CosEventComm_PushConsumer.hrl
+/cosEvent/include/CosEventComm_PushSupplier.hrl
+/cosEvent/include/oe_CosEventChannelAdmin.hrl
+/cosEvent/include/oe_CosEventComm.hrl
+/cosEvent/src/CosEventChannelAdmin_AlreadyConnected.erl
+/cosEvent/src/CosEventChannelAdmin_ConsumerAdmin.erl
+/cosEvent/src/CosEventChannelAdmin_EventChannel.erl
+/cosEvent/src/CosEventChannelAdmin_ProxyPullConsumer.erl
+/cosEvent/src/CosEventChannelAdmin_ProxyPullSupplier.erl
+/cosEvent/src/CosEventChannelAdmin_ProxyPushConsumer.erl
+/cosEvent/src/CosEventChannelAdmin_ProxyPushSupplier.erl
+/cosEvent/src/CosEventChannelAdmin_SupplierAdmin.erl
+/cosEvent/src/CosEventChannelAdmin_TypeError.erl
+/cosEvent/src/CosEventComm_Disconnected.erl
+/cosEvent/src/CosEventComm_PullConsumer.erl
+/cosEvent/src/CosEventComm_PullSupplier.erl
+/cosEvent/src/CosEventComm_PushConsumer.erl
+/cosEvent/src/CosEventComm_PushSupplier.erl
+/cosEvent/src/oe_CosEventChannelAdmin.erl
+/cosEvent/src/oe_CosEventComm.erl
+/cosEvent/src/oe_CosEventComm_CAdmin.erl
+/cosEvent/src/oe_CosEventComm_CAdmin.hrl
+/cosEvent/src/oe_CosEventComm_Channel.erl
+/cosEvent/src/oe_CosEventComm_Channel.hrl
+/cosEvent/src/oe_CosEventComm_Event.erl
+/cosEvent/src/oe_CosEventComm_Event.hrl
+/cosEvent/src/oe_CosEventComm_PullerS.erl
+/cosEvent/src/oe_CosEventComm_PullerS.hrl
+/cosEvent/src/oe_CosEventComm_PusherS.erl
+/cosEvent/src/oe_CosEventComm_PusherS.hrl
+/cosEvent/src/oe_cosEventApp.erl
+/cosEvent/src/oe_cosEventApp.hrl
+/cosEventDomain/include/CosEventDomainAdmin.hrl
+/cosEventDomain/include/CosEventDomainAdmin_EventDomain.hrl
+/cosEventDomain/include/CosEventDomainAdmin_EventDomainFactory.hrl
+/cosEventDomain/include/oe_CosEventDomainAdmin.hrl
+/cosEventDomain/src/CosEventDomainAdmin.erl
+/cosEventDomain/src/CosEventDomainAdmin_AlreadyExists.erl
+/cosEventDomain/src/CosEventDomainAdmin_Connection.erl
+/cosEventDomain/src/CosEventDomainAdmin_ConnectionIDSeq.erl
+/cosEventDomain/src/CosEventDomainAdmin_ConnectionNotFound.erl
+/cosEventDomain/src/CosEventDomainAdmin_CycleCreationForbidden.erl
+/cosEventDomain/src/CosEventDomainAdmin_CycleSeq.erl
+/cosEventDomain/src/CosEventDomainAdmin_DiamondCreationForbidden.erl
+/cosEventDomain/src/CosEventDomainAdmin_DiamondSeq.erl
+/cosEventDomain/src/CosEventDomainAdmin_DomainIDSeq.erl
+/cosEventDomain/src/CosEventDomainAdmin_DomainNotFound.erl
+/cosEventDomain/src/CosEventDomainAdmin_EventDomain.erl
+/cosEventDomain/src/CosEventDomainAdmin_EventDomainFactory.erl
+/cosEventDomain/src/CosEventDomainAdmin_MemberIDSeq.erl
+/cosEventDomain/src/CosEventDomainAdmin_RouteSeq.erl
+/cosEventDomain/src/oe_CosEventDomainAdmin.erl
+/cosFileTransfer/include/CosFileTransfer.hrl
+/cosFileTransfer/include/CosFileTransfer_Directory.hrl
+/cosFileTransfer/include/CosFileTransfer_File.hrl
+/cosFileTransfer/include/CosFileTransfer_FileIterator.hrl
+/cosFileTransfer/include/CosFileTransfer_FileTransferSession.hrl
+/cosFileTransfer/include/CosFileTransfer_VirtualFileSystem.hrl
+/cosFileTransfer/include/oe_CosFileTransfer.hrl
+/cosFileTransfer/src/CosFileTransfer.erl
+/cosFileTransfer/src/CosFileTransfer_AccessLevel.erl
+/cosFileTransfer/src/CosFileTransfer_CommandNotImplementedException.erl
+/cosFileTransfer/src/CosFileTransfer_Directory.erl
+/cosFileTransfer/src/CosFileTransfer_File.erl
+/cosFileTransfer/src/CosFileTransfer_FileIterator.erl
+/cosFileTransfer/src/CosFileTransfer_FileList.erl
+/cosFileTransfer/src/CosFileTransfer_FileNameList.erl
+/cosFileTransfer/src/CosFileTransfer_FileNotFoundException.erl
+/cosFileTransfer/src/CosFileTransfer_FileTransferSession.erl
+/cosFileTransfer/src/CosFileTransfer_FileWrapper.erl
+/cosFileTransfer/src/CosFileTransfer_IllegalOperationException.erl
+/cosFileTransfer/src/CosFileTransfer_ProtocolAddressList.erl
+/cosFileTransfer/src/CosFileTransfer_ProtocolSupport.erl
+/cosFileTransfer/src/CosFileTransfer_RequestFailureException.erl
+/cosFileTransfer/src/CosFileTransfer_SessionException.erl
+/cosFileTransfer/src/CosFileTransfer_SupportedProtocolAddresses.erl
+/cosFileTransfer/src/CosFileTransfer_TransferException.erl
+/cosFileTransfer/src/CosFileTransfer_VirtualFileSystem.erl
+/cosFileTransfer/src/CosFileTransfer_VirtualFileSystem_ContentList.erl
+/cosFileTransfer/src/oe_CosFileTransfer.erl
+/cosNotification/include/CosNotification.hrl
+/cosNotification/include/CosNotification_AdminPropertiesAdmin.hrl
+/cosNotification/include/CosNotification_QoSAdmin.hrl
+/cosNotification/include/CosNotifyChannelAdmin.hrl
+/cosNotification/include/CosNotifyChannelAdmin_ConsumerAdmin.hrl
+/cosNotification/include/CosNotifyChannelAdmin_EventChannel.hrl
+/cosNotification/include/CosNotifyChannelAdmin_EventChannelFactory.hrl
+/cosNotification/include/CosNotifyChannelAdmin_ProxyConsumer.hrl
+/cosNotification/include/CosNotifyChannelAdmin_ProxyPullConsumer.hrl
+/cosNotification/include/CosNotifyChannelAdmin_ProxyPullSupplier.hrl
+/cosNotification/include/CosNotifyChannelAdmin_ProxyPushConsumer.hrl
+/cosNotification/include/CosNotifyChannelAdmin_ProxyPushSupplier.hrl
+/cosNotification/include/CosNotifyChannelAdmin_ProxySupplier.hrl
+/cosNotification/include/CosNotifyChannelAdmin_SequenceProxyPullConsumer.hrl
+/cosNotification/include/CosNotifyChannelAdmin_SequenceProxyPullSupplier.hrl
+/cosNotification/include/CosNotifyChannelAdmin_SequenceProxyPushConsumer.hrl
+/cosNotification/include/CosNotifyChannelAdmin_SequenceProxyPushSupplier.hrl
+/cosNotification/include/CosNotifyChannelAdmin_StructuredProxyPullConsumer.hrl
+/cosNotification/include/CosNotifyChannelAdmin_StructuredProxyPullSupplier.hrl
+/cosNotification/include/CosNotifyChannelAdmin_StructuredProxyPushConsumer.hrl
+/cosNotification/include/CosNotifyChannelAdmin_StructuredProxyPushSupplier.hrl
+/cosNotification/include/CosNotifyChannelAdmin_SupplierAdmin.hrl
+/cosNotification/include/CosNotifyComm.hrl
+/cosNotification/include/CosNotifyComm_NotifyPublish.hrl
+/cosNotification/include/CosNotifyComm_NotifySubscribe.hrl
+/cosNotification/include/CosNotifyComm_PullConsumer.hrl
+/cosNotification/include/CosNotifyComm_PullSupplier.hrl
+/cosNotification/include/CosNotifyComm_PushConsumer.hrl
+/cosNotification/include/CosNotifyComm_PushSupplier.hrl
+/cosNotification/include/CosNotifyComm_SequencePullConsumer.hrl
+/cosNotification/include/CosNotifyComm_SequencePullSupplier.hrl
+/cosNotification/include/CosNotifyComm_SequencePushConsumer.hrl
+/cosNotification/include/CosNotifyComm_SequencePushSupplier.hrl
+/cosNotification/include/CosNotifyComm_StructuredPullConsumer.hrl
+/cosNotification/include/CosNotifyComm_StructuredPullSupplier.hrl
+/cosNotification/include/CosNotifyComm_StructuredPushConsumer.hrl
+/cosNotification/include/CosNotifyComm_StructuredPushSupplier.hrl
+/cosNotification/include/CosNotifyFilter.hrl
+/cosNotification/include/CosNotifyFilter_Filter.hrl
+/cosNotification/include/CosNotifyFilter_FilterAdmin.hrl
+/cosNotification/include/CosNotifyFilter_FilterFactory.hrl
+/cosNotification/include/CosNotifyFilter_MappingFilter.hrl
+/cosNotification/include/oe_CosNotification.hrl
+/cosNotification/include/oe_CosNotifyChannelAdmin.hrl
+/cosNotification/include/oe_CosNotifyComm.hrl
+/cosNotification/include/oe_CosNotifyFilter.hrl
+/cosNotification/src/CosNotification.erl
+/cosNotification/src/CosNotification_AdminPropertiesAdmin.erl
+/cosNotification/src/CosNotification_EventBatch.erl
+/cosNotification/src/CosNotification_EventHeader.erl
+/cosNotification/src/CosNotification_EventType.erl
+/cosNotification/src/CosNotification_EventTypeSeq.erl
+/cosNotification/src/CosNotification_FixedEventHeader.erl
+/cosNotification/src/CosNotification_NamedPropertyRange.erl
+/cosNotification/src/CosNotification_NamedPropertyRangeSeq.erl
+/cosNotification/src/CosNotification_Property.erl
+/cosNotification/src/CosNotification_PropertyError.erl
+/cosNotification/src/CosNotification_PropertyErrorSeq.erl
+/cosNotification/src/CosNotification_PropertyRange.erl
+/cosNotification/src/CosNotification_PropertySeq.erl
+/cosNotification/src/CosNotification_QoSAdmin.erl
+/cosNotification/src/CosNotification_StructuredEvent.erl
+/cosNotification/src/CosNotification_UnsupportedAdmin.erl
+/cosNotification/src/CosNotification_UnsupportedQoS.erl
+/cosNotification/src/CosNotifyChannelAdmin_AdminIDSeq.erl
+/cosNotification/src/CosNotifyChannelAdmin_AdminLimit.erl
+/cosNotification/src/CosNotifyChannelAdmin_AdminLimitExceeded.erl
+/cosNotification/src/CosNotifyChannelAdmin_AdminNotFound.erl
+/cosNotification/src/CosNotifyChannelAdmin_ChannelIDSeq.erl
+/cosNotification/src/CosNotifyChannelAdmin_ChannelNotFound.erl
+/cosNotification/src/CosNotifyChannelAdmin_ConnectionAlreadyActive.erl
+/cosNotification/src/CosNotifyChannelAdmin_ConnectionAlreadyInactive.erl
+/cosNotification/src/CosNotifyChannelAdmin_ConsumerAdmin.erl
+/cosNotification/src/CosNotifyChannelAdmin_EventChannel.erl
+/cosNotification/src/CosNotifyChannelAdmin_EventChannelFactory.erl
+/cosNotification/src/CosNotifyChannelAdmin_NotConnected.erl
+/cosNotification/src/CosNotifyChannelAdmin_ProxyConsumer.erl
+/cosNotification/src/CosNotifyChannelAdmin_ProxyIDSeq.erl
+/cosNotification/src/CosNotifyChannelAdmin_ProxyNotFound.erl
+/cosNotification/src/CosNotifyChannelAdmin_ProxyPullConsumer.erl
+/cosNotification/src/CosNotifyChannelAdmin_ProxyPullSupplier.erl
+/cosNotification/src/CosNotifyChannelAdmin_ProxyPushConsumer.erl
+/cosNotification/src/CosNotifyChannelAdmin_ProxyPushSupplier.erl
+/cosNotification/src/CosNotifyChannelAdmin_ProxySupplier.erl
+/cosNotification/src/CosNotifyChannelAdmin_SequenceProxyPullConsumer.erl
+/cosNotification/src/CosNotifyChannelAdmin_SequenceProxyPullSupplier.erl
+/cosNotification/src/CosNotifyChannelAdmin_SequenceProxyPushConsumer.erl
+/cosNotification/src/CosNotifyChannelAdmin_SequenceProxyPushSupplier.erl
+/cosNotification/src/CosNotifyChannelAdmin_StructuredProxyPullConsumer.erl
+/cosNotification/src/CosNotifyChannelAdmin_StructuredProxyPullSupplier.erl
+/cosNotification/src/CosNotifyChannelAdmin_StructuredProxyPushConsumer.erl
+/cosNotification/src/CosNotifyChannelAdmin_StructuredProxyPushSupplier.erl
+/cosNotification/src/CosNotifyChannelAdmin_SupplierAdmin.erl
+/cosNotification/src/CosNotifyComm_InvalidEventType.erl
+/cosNotification/src/CosNotifyComm_NotifyPublish.erl
+/cosNotification/src/CosNotifyComm_NotifySubscribe.erl
+/cosNotification/src/CosNotifyComm_PullConsumer.erl
+/cosNotification/src/CosNotifyComm_PullSupplier.erl
+/cosNotification/src/CosNotifyComm_PushConsumer.erl
+/cosNotification/src/CosNotifyComm_PushSupplier.erl
+/cosNotification/src/CosNotifyComm_SequencePullConsumer.erl
+/cosNotification/src/CosNotifyComm_SequencePullSupplier.erl
+/cosNotification/src/CosNotifyComm_SequencePushConsumer.erl
+/cosNotification/src/CosNotifyComm_SequencePushSupplier.erl
+/cosNotification/src/CosNotifyComm_StructuredPullConsumer.erl
+/cosNotification/src/CosNotifyComm_StructuredPullSupplier.erl
+/cosNotification/src/CosNotifyComm_StructuredPushConsumer.erl
+/cosNotification/src/CosNotifyComm_StructuredPushSupplier.erl
+/cosNotification/src/CosNotifyFilter_CallbackIDSeq.erl
+/cosNotification/src/CosNotifyFilter_CallbackNotFound.erl
+/cosNotification/src/CosNotifyFilter_ConstraintExp.erl
+/cosNotification/src/CosNotifyFilter_ConstraintExpSeq.erl
+/cosNotification/src/CosNotifyFilter_ConstraintIDSeq.erl
+/cosNotification/src/CosNotifyFilter_ConstraintInfo.erl
+/cosNotification/src/CosNotifyFilter_ConstraintInfoSeq.erl
+/cosNotification/src/CosNotifyFilter_ConstraintNotFound.erl
+/cosNotification/src/CosNotifyFilter_DuplicateConstraintID.erl
+/cosNotification/src/CosNotifyFilter_Filter.erl
+/cosNotification/src/CosNotifyFilter_FilterAdmin.erl
+/cosNotification/src/CosNotifyFilter_FilterFactory.erl
+/cosNotification/src/CosNotifyFilter_FilterIDSeq.erl
+/cosNotification/src/CosNotifyFilter_FilterNotFound.erl
+/cosNotification/src/CosNotifyFilter_InvalidConstraint.erl
+/cosNotification/src/CosNotifyFilter_InvalidGrammar.erl
+/cosNotification/src/CosNotifyFilter_InvalidValue.erl
+/cosNotification/src/CosNotifyFilter_MappingConstraintInfo.erl
+/cosNotification/src/CosNotifyFilter_MappingConstraintInfoSeq.erl
+/cosNotification/src/CosNotifyFilter_MappingConstraintPair.erl
+/cosNotification/src/CosNotifyFilter_MappingConstraintPairSeq.erl
+/cosNotification/src/CosNotifyFilter_MappingFilter.erl
+/cosNotification/src/CosNotifyFilter_UnsupportedFilterableData.erl
+/cosNotification/src/cosNotification_Grammar.erl
+/cosNotification/src/oe_CosNotification.erl
+/cosNotification/src/oe_CosNotificationComm.hrl
+/cosNotification/src/oe_CosNotificationComm_Event.erl
+/cosNotification/src/oe_CosNotificationComm_Event.hrl
+/cosNotification/src/oe_CosNotifyChannelAdmin.erl
+/cosNotification/src/oe_CosNotifyComm.erl
+/cosNotification/src/oe_CosNotifyFilter.erl
+/cosNotification/src/oe_cosNotificationAppComm.erl
+/cosNotification/src/oe_cosNotificationAppComm.hrl
+/cosProperty/include/CosPropertyService.hrl
+/cosProperty/include/CosPropertyService_PropertiesIterator.hrl
+/cosProperty/include/CosPropertyService_PropertyNamesIterator.hrl
+/cosProperty/include/CosPropertyService_PropertySet.hrl
+/cosProperty/include/CosPropertyService_PropertySetDef.hrl
+/cosProperty/include/CosPropertyService_PropertySetDefFactory.hrl
+/cosProperty/include/CosPropertyService_PropertySetFactory.hrl
+/cosProperty/include/oe_CosProperty.hrl
+/cosProperty/src/CosPropertyService_ConflictingProperty.erl
+/cosProperty/src/CosPropertyService_ConstraintNotSupported.erl
+/cosProperty/src/CosPropertyService_FixedProperty.erl
+/cosProperty/src/CosPropertyService_InvalidPropertyName.erl
+/cosProperty/src/CosPropertyService_MultipleExceptions.erl
+/cosProperty/src/CosPropertyService_Properties.erl
+/cosProperty/src/CosPropertyService_PropertiesIterator.erl
+/cosProperty/src/CosPropertyService_Property.erl
+/cosProperty/src/CosPropertyService_PropertyDef.erl
+/cosProperty/src/CosPropertyService_PropertyDefs.erl
+/cosProperty/src/CosPropertyService_PropertyException.erl
+/cosProperty/src/CosPropertyService_PropertyExceptions.erl
+/cosProperty/src/CosPropertyService_PropertyMode.erl
+/cosProperty/src/CosPropertyService_PropertyModes.erl
+/cosProperty/src/CosPropertyService_PropertyNames.erl
+/cosProperty/src/CosPropertyService_PropertyNamesIterator.erl
+/cosProperty/src/CosPropertyService_PropertyNotFound.erl
+/cosProperty/src/CosPropertyService_PropertySet.erl
+/cosProperty/src/CosPropertyService_PropertySetDef.erl
+/cosProperty/src/CosPropertyService_PropertySetDefFactory.erl
+/cosProperty/src/CosPropertyService_PropertySetFactory.erl
+/cosProperty/src/CosPropertyService_PropertyTypes.erl
+/cosProperty/src/CosPropertyService_ReadOnlyProperty.erl
+/cosProperty/src/CosPropertyService_UnsupportedMode.erl
+/cosProperty/src/CosPropertyService_UnsupportedProperty.erl
+/cosProperty/src/CosPropertyService_UnsupportedTypeCode.erl
+/cosProperty/src/oe_CosProperty.erl
+/cosTime/include/CosTime.hrl
+/cosTime/include/CosTime_TIO.hrl
+/cosTime/include/CosTime_TimeService.hrl
+/cosTime/include/CosTime_UTO.hrl
+/cosTime/include/CosTimerEvent.hrl
+/cosTime/include/CosTimerEvent_TimerEventHandler.hrl
+/cosTime/include/CosTimerEvent_TimerEventService.hrl
+/cosTime/include/TimeBase.hrl
+/cosTime/include/oe_CosTime.hrl
+/cosTime/include/oe_CosTimerEvent.hrl
+/cosTime/include/oe_TimeBase.hrl
+/cosTime/src/CosTime_TIO.erl
+/cosTime/src/CosTime_TimeService.erl
+/cosTime/src/CosTime_TimeUnavailable.erl
+/cosTime/src/CosTime_UTO.erl
+/cosTime/src/CosTimerEvent_TimerEventHandler.erl
+/cosTime/src/CosTimerEvent_TimerEventService.erl
+/cosTime/src/CosTimerEvent_TimerEventT.erl
+/cosTime/src/TimeBase_IntervalT.erl
+/cosTime/src/TimeBase_UtcT.erl
+/cosTime/src/oe_CosTime.erl
+/cosTime/src/oe_CosTimerEvent.erl
+/cosTime/src/oe_TimeBase.erl
+/cosTransactions/include/CosTransactions.hrl
+/cosTransactions/include/CosTransactions_Control.hrl
+/cosTransactions/include/CosTransactions_Coordinator.hrl
+/cosTransactions/include/CosTransactions_RecoveryCoordinator.hrl
+/cosTransactions/include/CosTransactions_Resource.hrl
+/cosTransactions/include/CosTransactions_SubtransactionAwareResource.hrl
+/cosTransactions/include/CosTransactions_Terminator.hrl
+/cosTransactions/include/CosTransactions_TransactionFactory.hrl
+/cosTransactions/include/ETraP.hrl
+/cosTransactions/include/ETraP_Server.hrl
+/cosTransactions/include/oe_CosTransactions.hrl
+/cosTransactions/src/CosTransactions_Control.erl
+/cosTransactions/src/CosTransactions_Coordinator.erl
+/cosTransactions/src/CosTransactions_HeuristicCommit.erl
+/cosTransactions/src/CosTransactions_HeuristicHazard.erl
+/cosTransactions/src/CosTransactions_HeuristicMixed.erl
+/cosTransactions/src/CosTransactions_HeuristicRollback.erl
+/cosTransactions/src/CosTransactions_Inactive.erl
+/cosTransactions/src/CosTransactions_InvalidControl.erl
+/cosTransactions/src/CosTransactions_NoTransaction.erl
+/cosTransactions/src/CosTransactions_NotPrepared.erl
+/cosTransactions/src/CosTransactions_NotSubtransaction.erl
+/cosTransactions/src/CosTransactions_PropagationContext.erl
+/cosTransactions/src/CosTransactions_RecoveryCoordinator.erl
+/cosTransactions/src/CosTransactions_Resource.erl
+/cosTransactions/src/CosTransactions_SubtransactionAwareResource.erl
+/cosTransactions/src/CosTransactions_SubtransactionsUnavailable.erl
+/cosTransactions/src/CosTransactions_SynchronizationUnavailable.erl
+/cosTransactions/src/CosTransactions_Terminator.erl
+/cosTransactions/src/CosTransactions_TransIdentity.erl
+/cosTransactions/src/CosTransactions_TransactionFactory.erl
+/cosTransactions/src/CosTransactions_Unavailable.erl
+/cosTransactions/src/CosTransactions_WrongTransaction.erl
+/cosTransactions/src/CosTransactions_otid_t.erl
+/cosTransactions/src/ETraP_Server.erl
+/cosTransactions/src/oe_CosTransactions.erl
+/orber/COSS/CosNaming/CosNaming.hrl
+/orber/COSS/CosNaming/CosNaming_Binding.erl
+/orber/COSS/CosNaming/CosNaming_BindingIterator.erl
+/orber/COSS/CosNaming/CosNaming_BindingIterator.hrl
+/orber/COSS/CosNaming/CosNaming_BindingList.erl
+/orber/COSS/CosNaming/CosNaming_Name.erl
+/orber/COSS/CosNaming/CosNaming_NameComponent.erl
+/orber/COSS/CosNaming/CosNaming_NamingContext.erl
+/orber/COSS/CosNaming/CosNaming_NamingContext.hrl
+/orber/COSS/CosNaming/CosNaming_NamingContextExt.erl
+/orber/COSS/CosNaming/CosNaming_NamingContextExt.hrl
+/orber/COSS/CosNaming/CosNaming_NamingContextExt_AlreadyBound.erl
+/orber/COSS/CosNaming/CosNaming_NamingContextExt_CannotProceed.erl
+/orber/COSS/CosNaming/CosNaming_NamingContextExt_InvalidAddress.erl
+/orber/COSS/CosNaming/CosNaming_NamingContextExt_InvalidName.erl
+/orber/COSS/CosNaming/CosNaming_NamingContextExt_NotEmpty.erl
+/orber/COSS/CosNaming/CosNaming_NamingContextExt_NotFound.erl
+/orber/COSS/CosNaming/CosNaming_NamingContext_AlreadyBound.erl
+/orber/COSS/CosNaming/CosNaming_NamingContext_CannotProceed.erl
+/orber/COSS/CosNaming/CosNaming_NamingContext_InvalidName.erl
+/orber/COSS/CosNaming/CosNaming_NamingContext_NotEmpty.erl
+/orber/COSS/CosNaming/CosNaming_NamingContext_NotFound.erl
+/orber/COSS/CosNaming/oe_cos_naming.erl
+/orber/COSS/CosNaming/oe_cos_naming.hrl
+/orber/COSS/CosNaming/oe_cos_naming_ext.erl
+/orber/COSS/CosNaming/oe_cos_naming_ext.hrl
+/orber/examples/Stack/StackModule.hrl
+/orber/examples/Stack/StackModule_EmptyStack.erl
+/orber/examples/Stack/StackModule_Stack.erl
+/orber/examples/Stack/StackModule_Stack.hrl
+/orber/examples/Stack/StackModule_StackFactory.erl
+/orber/examples/Stack/StackModule_StackFactory.hrl
+/orber/examples/Stack/oe_stack.erl
+/orber/examples/Stack/oe_stack.hrl
+/orber/src/CORBA.hrl
+/orber/src/OrberApp.hrl
+/orber/src/OrberApp_IFR.erl
+/orber/src/OrberApp_IFR.hrl
+/orber/src/erlang.hrl
+/orber/src/erlang_binary.erl
+/orber/src/erlang_pid.erl
+/orber/src/erlang_port.erl
+/orber/src/erlang_ref.erl
+/orber/src/oe_CORBA.erl
+/orber/src/oe_CORBA.hrl
+/orber/src/oe_OrberIFR.erl
+/orber/src/oe_OrberIFR.hrl
+/orber/src/oe_erlang.erl
+/orber/src/oe_erlang.hrl
diff --git a/lib/asn1/doc/src/Makefile b/lib/asn1/doc/src/Makefile
index be8755f0ff..d29225f6c9 100644
--- a/lib/asn1/doc/src/Makefile
+++ b/lib/asn1/doc/src/Makefile
@@ -51,9 +51,7 @@ XML_REF3_FILES = asn1ct.xml \
GEN_XML = \
asn1_spec.xml
-XML_PART_FILES = \
- part.xml \
- part_notes.xml
+XML_PART_FILES = part.xml
XML_HTML_FILE = \
notes_history.xml
diff --git a/lib/asn1/doc/src/note.gif b/lib/asn1/doc/src/note.gif
deleted file mode 100644
index 6fffe30419..0000000000
--- a/lib/asn1/doc/src/note.gif
+++ /dev/null
Binary files differ
diff --git a/lib/asn1/doc/src/notes_history.xml b/lib/asn1/doc/src/notes_history.xml
deleted file mode 100644
index e6c423e79e..0000000000
--- a/lib/asn1/doc/src/notes_history.xml
+++ /dev/null
@@ -1,1782 +0,0 @@
-<?xml version="1.0" encoding="latin1" ?>
-<!DOCTYPE chapter SYSTEM "chapter.dtd">
-
-<chapter>
- <header>
- <copyright>
- <year>2006</year><year>2009</year>
- <holder>Ericsson AB. All Rights Reserved.</holder>
- </copyright>
- <legalnotice>
- 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.
-
- </legalnotice>
-
- <title>ASN1 Release Notes</title>
- <prepared>Bertil Karlsson</prepared>
- <responsible></responsible>
- <docno></docno>
- <approved></approved>
- <checked></checked>
- <date>06-04-24</date>
- <rev></rev>
- <file>notes_history.sgml</file>
- </header>
- <p>This document describes the changes made to the asn1 system
- from version to version. The intention of this document is to
- list all incompatibilities as well as all enhancements and
- bug-fixes for every release of the asn1 application. Each release of asn1
- thus constitutes one section in this document. The title of each
- section is the version number of asn1.</p>
-
-
- <section>
- <title>Asn1 1.4.4.14</title>
-
- <section>
- <title>Improvements and New Features</title>
- <list type="bulleted">
- <item>
- <p>Data in info/0 in generated code is moved to attribute
- asn1_info, thus vsn value remains the same if compiler
- options for asn1-spec differs but the generated code is
- the same.</p>
- <p>Own Id: OTP-6462</p>
- </item>
- <item>
- <p>Dialyzer warnings on asn1 are removed, i.e. dead code
- removed.</p>
- <p>Own Id: OTP-6506</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.4.4.13</title>
-
- <section>
- <title>Improvements and New Features</title>
- <list type="bulleted">
- <item>
- <p>Now it is possible to use 'asn1config' and 'inline'
- options together. It is also possible to use 'inline' on
- a single file like:
- <c>asn1ct:compile("MyASN1spec.asn",[inline])</c>.</p>
- <p>Own Id: OTP-6405</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.4.4.12</title>
-
- <section>
- <title>Improvements and New Features</title>
- <list type="bulleted">
- <item>
- <p>As a complement to the option "{inline,OutputFile}" it is
- now possible to use the option "inline". Then asn1 creates
- an output file with the name of the source .set file.</p>
- <p>Own Id: OTP-6314</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.4.4.11</title>
-
- <section>
- <title>Fixed Bugs and Malfunctions</title>
- <list type="bulleted">
- <item>
- <p>When compiling an asn1 source that reference a type in
- another source the compiler uses the asn1db file of the
- other source to resolve the reference. It also tests
- whether the other source has been updated since the
- asn1db file was generated. This last test was to brutal
- in that it exits compilation when no source was found,
- even though a asn1db file existed. Changed behavior from
- a brutal exit to a warning.</p>
- <p>Own Id: OTP-6143</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.4.4.10</title>
-
- <section>
- <title>Fixed Bugs and Malfunctions</title>
- <list type="bulleted">
- <item>
- <p>asn1 encoding failed on BIT STRING with constraint
- <c>(SIZE (32..MAX))</c>.</p>
- <p>Own Id: OTP-5932</p>
- </item>
- <item>
- <p>Race condition removed in server for variable names for
- generated code.</p>
- <p>Own Id: OTP-6111</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.4.4.9</title>
-
- <section>
- <title>Fixed Bugs and Malfunctions</title>
- <list type="bulleted">
- <item>
- <p>Now exists a default function clause for table lookup of
- a table constraint. This causes a nice error instead of a
- crash. Did also remove some obsolete funs ({Mod,Fun}) in
- generated code.</p>
- <p>Own Id: OTP-5783</p>
- </item>
- <item>
- <p>ASN1-compiler failed to derive a value out of an external
- reference in some certain cases, when compiling specs so
- that the spec with the reference was compiled before the
- spec with the defined value.</p>
- <p>Own Id: OTP-5812 Aux Id: seq10133 </p>
- </item>
- <item>
- <p>The documentation of how records of embedded types are
- named is extended and made clearer by examples and rules.
- The section "Naming of Records in .hrl Files" in the
- User's Guide is added.</p>
- <p>Own Id: OTP-5831 Aux Id: seq10133 </p>
- </item>
- <item>
- <p>The compiler failed to give right name to record/function
- of a parameterized type that was referenced through
- another instance of a parameterized type in another
- module. The fault occurred when modules were compiled in a
- certain order. Now the compiler resolves the name
- correctly.</p>
- <p>Own Id: OTP-5832 Aux Id: seq10133 </p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.4.4.8</title>
-
- <section>
- <title>Fixed Bugs and Malfunctions</title>
- <list type="bulleted">
- <item>
- <p>The dynamic sort of SET OF values now correctly handles
- values encoded in the "ber_bin, der, optimize" mode, the
- value of a SET OF is a list of binaries.</p>
- <p>Own Id: OTP-5687</p>
- </item>
- <item>
- <p>Bad code was generated for an INTEGER with value-range. If
- the value that was encoded had a lower bound with
- negative value it caused a crash. This bug is now
- removed.</p>
- <p>Own Id: OTP-5688 Aux Id: seq10049 </p>
- </item>
- <item>
- <p>Compiler now handles wrong include paths by returning an
- error if a referenced module is not available.</p>
- <p>Own Id: OTP-5689</p>
- </item>
- <item>
- <p>The bug causing a runtime error when encoding a type
- defined by: <c>BIT STRING {a(1),b(2)}</c> with the value
- [] in <c>per_bin</c> mode is now removed.</p>
- <p>Own Id: OTP-5710 Aux Id: seq10066 </p>
- </item>
- </list>
- </section>
-
- <section>
- <title>Improvements and New Features</title>
- <list type="bulleted">
- <item>
- <p>Better handling of filename paths</p>
- <p>Own Id: OTP-5701</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.4.4.7</title>
-
- <section>
- <title>Fixed Bugs and Malfunctions</title>
- <list type="bulleted">
- <item>
- <p>Effective constraint for <c>per</c> now corrected. For
- instance <c>INTEGER (0|15..269)</c> didn't work properly.</p>
- <p>Own Id: OTP-5477 Aux Id: OTP-5511 </p>
- </item>
- <item>
- <p>Adjusted compiler so that functions in generated code
- only are exported once.</p>
- <p>Own Id: OTP-5509</p>
- </item>
- <item>
- <p>Fixed the compiler failure when handling a value range
- constraint with an extension mark that had the Lower
- bound and/or Upper bound values as an external reference
- to a defined value.</p>
- <p>Own Id: OTP-5511 Aux Id: OTP-5466 </p>
- </item>
- <item>
- <p>Removed sorting of elements for SEQUENCE OF. It shall
- only be done in SET OF.</p>
- <p>Own Id: OTP-5602</p>
- </item>
- <item>
- <p>Corrected code that generated code causing badarith
- warning.</p>
- <p>Own Id: OTP-5616</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.4.4.6</title>
-
- <section>
- <title>Known Bugs and Problems</title>
- <list type="bulleted">
- <item>
- <p>Compiler now correctly crashes when compiling bad values.
- Failed for instance on INTEGER value that was a reference
- to a defined value. Also solved problem with a union
- constraint on an INTEGER.</p>
- <p>Own Id: OTP-5457</p>
- </item>
- <item>
- <p>Additional coverage of object set syntax.</p>
- <p>Own Id: OTP-5466</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.4.4.5</title>
-
- <section>
- <title>Fixed Bugs and Malfunctions</title>
- <list type="bulleted">
- <item>
- <p>A bug due to representation of open_type values is now
- fixed. It could cause problem if one used the EXTERNAL
- type.</p>
- <p>Own Id: OTP-5302</p>
- </item>
- <item>
- <p>Due to an internal error the same code could have been
- generated more than one time. This happened for the
- exclusive decode functionality.</p>
- <p>Own Id: OTP-5378</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.4.4.4</title>
-
- <section>
- <title>Fixed Bugs and Malfunctions</title>
- <list type="bulleted">
- <item>
- <p>Empty objects caused problems. There was trouble when an
- object set referenced imported objects that in turn
- referenced imported types. Lacked support of
- SelectionType in object. All these have been attended.</p>
- <p>Own Id: OTP-5240</p>
- </item>
- </list>
- </section>
-
- <section>
- <title>Improvements and New Features</title>
- <list type="bulleted">
- <item>
- <p>Now it is possible to inline asn1 run-time functionality
- in the module generated by the asn1 compiler. Thus, it
- will be only one module doing all encoding/decoding.</p>
- <p>Own Id: OTP-5243</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.4.4.3</title>
-
- <section>
- <title>Fixed errors and malfunctions</title>
- <list type="bulleted">
- <item>
- <p>A class that was referenced in two steps caused a
- compiler failure. It is now corrected.</p>
- <p>Own Id: OTP-5103</p>
- </item>
- </list>
- </section>
-
- <section>
- <title>Improvements and new features</title>
- <list type="bulleted">
- <item>
- <p>Optionally make it possible to get the un-decoded rest along with
- the return value. Compile with option <em>undec_rest</em>.</p>
- <p>Own Id: OTP-5104</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.4.4.2</title>
-
- <section>
- <title>Fixed errors and malfunctions</title>
- <list type="bulleted">
- <item>
- <p>An error due to unchecked referenced imported type resulted
- in missing tag in some table constraint cases. This error is
- now corrected. Error occurred during decode in
- <c>ber_bin optimized</c> version.</p>
- <p>Own Id: OTP-5022</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.4.4.1</title>
-
- <section>
- <title>Fixed errors and malfunctions</title>
- <list type="bulleted">
- <item>
- <p>When a referenced value in another module in turn referenced a
- defined value the compilation crashed. This is due to the new
- routines for compilation, that external references are resolved
- during compilation, and not by the order in which modules are
- compiled. This error is now corrected.</p>
- <p>Own Id: OTP-4970</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.4.4</title>
-
- <section>
- <title>Fixed errors and malfunctions</title>
- <list type="bulleted">
- <item>
- <p>Functionality for parameterized class is added. Parsing failures on
- WithSyntax spec is corrected.</p>
- <p>Own Id: OTP-4893</p>
- </item>
- <item>
- <p>The failure due to Parameterized Type when parameter is an object
- set is corrected.</p>
- <p>Own Id: OTP-4894</p>
- <p>Aux Id: OTP-4893</p>
- </item>
- <item>
- <p>Object Identifier values with two components and the first was a
- value reference failed due to parsing conflicts. Now it is
- corrected.</p>
- <p>Own Id: OTP-4895</p>
- </item>
- <item>
- <p>The erroneous comparison of file name and asn1 module name could
- cause compilation failure. The situation for this failure is rare,
- it requires that other processes modifies the compiled file during
- the compilation procedure. It is now fixed.</p>
- <p>Own Id: OTP-4944</p>
- <p>Aux Id: seq8429</p>
- </item>
- <item>
- <p>Selective decode was ignored when exclusive decode spec in asn1
- configfile was missing. Selective decode failed when the selected
- type was the top type. These bugs are now removed.</p>
- <p>Own Id: OTP-4953</p>
- <p>Aux Id: seq8436</p>
- </item>
- <item>
- <p>The test interface asn1ct:test/1,2,3 and asn1ct:value/2 failed for
- open type and EXTERNAL. The bug is now removed.</p>
- <p>Own Id: OTP-4955</p>
- <p>Aux Id: seq8438)</p>
- </item>
- <item>
- <p>Two equal functions were generated for two components referencing
- the same type when they were picked by the action "parts". The bug
- is now fixed.</p>
- <p>Own Id: OTP-4957</p>
- <p>Aux Id: seq8434</p>
- </item>
- </list>
- </section>
-
- <section>
- <title>Improvements and new features</title>
- <list type="bulleted">
- <item>
- <p>INTEGER with named number list and ENUMERATED can now be sub
- constrained with names from the names list.</p>
- <p>Own Id: OTP-4917</p>
- </item>
- <item>
- <p>Now there is support for SelectionType (X 680 section 29)</p>
- <p>Own Id: OTP-4918</p>
- </item>
- <item>
- <p>The compiler now resolves circular dependencies. When asn1 specs
- IMPORTS from each other so that there are circular dependencies.</p>
- <p>Own Id: OTP-4919</p>
- </item>
- <item>
- <p>Now is the asn1 type UTF8String supported. For user instructions
- see documentation.</p>
- <p>Own Id: OTP-4965</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.4.3.1</title>
-
- <section>
- <title>Fixed Bugs and Malfunctions</title>
- <list type="bulleted">
- <item>
- <p>The <c>{internal_error,...,{ unrecognized_type,...}}</c>
- error occurring for a SET type when compiling with options
- <c>[ber_bin,optimize,der]</c> is now corrected.</p>
- <p>Own Id: OTP-4866</p>
- </item>
- <item>
- <p>False encode of BIT STRING in PER (per_bin,optimize) is fixed. The error occurred when there was a type like BIT STRING (SIZE(C)) and C &gt; 16.</p>
- <p>Own Id: OTP-4869</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.4.3</title>
-
- <section>
- <title>Fixed errors and malfunctions</title>
- <list type="bulleted">
- <item>
- <p>Functionality to handle parameterized object sets have been added.</p>
- <p>Own Id: OTP-4832</p>
- </item>
- <item>
- <p>Bug causing duplicated function definitions using exclusive decode is removed.</p>
- <p>Own Id: OTP-4833)</p>
- </item>
- <item>
- <p>The race condition when loading asn1 driver is solved.</p>
- <p>Own Id: OTP-4835</p>
- </item>
- </list>
- </section>
-
- <section>
- <title>Improvements and new features</title>
- <list type="bulleted">
- <item>
- <p>A specialized decode, <em>selective decode</em> is now available. It decodes a chosen internal sub-type of a constructed type.</p>
- <p>Own Id: OTP-4856)</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.4.2.2</title>
-
- <section>
- <title>Fixed errors and malfunctions</title>
- <list type="bulleted">
- <item>
- <p>Release of Asn1 1.4.2.1 on R7B, The functionality is the same, but
- the layer between the driver and the asn1 erlang code is different.</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.4.2.1</title>
-
- <section>
- <title>Fixed errors and malfunctions</title>
- <list type="bulleted">
- <item>
- <p>ObjectDescriptor does now work as part of a sequence, set or choice.</p>
- <p>Own Id: OTP-4773</p>
- </item>
- <item>
- <p>When a SEQUENCE that have extension mark was decoded inside a
- SEQUENCE OF it could cause decode error due to a failure in
- restbytes2. It is now corrected.</p>
- <p>Own Id: OTP-4791)</p>
- </item>
- <item>
- <p>Now the bug is fixed that caused the compiler crash on an untagged
- optional open type.</p>
- <p>Own Id: OTP-4792</p>
- </item>
- <item>
- <p>The earlier exit caused by bad in-data is now fixed so it will
- return an {error,Reason} tuple.</p>
- return an {error,Reason} tuple.</p>
- <p>Own Id: OTP-4797</p>
- </item>
- <item>
- <p>Open type encoded with indefinite length is now correct decoded.</p>
- <p>Own Id: OTP-4798</p>
- </item>
- <item>
- <p>Now is absent optional open types handled correctly.</p>
- <p>Own Id: OTP-4799</p>
- </item>
- <item>
- <p>Now is the necessary functions available for sorting in run-time of
- SET and SET OF components.</p>
- <p>Own Id: OTP-4809</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.4.2</title>
-
- <section>
- <title>Fixed errors and malfunctions</title>
- <list type="bulleted">
- <item>
- <p>When a component in a SEQUENCE is a CHOICE (or reference to a CHOICE)
- and the SEQUENCE's component and one of the alternatives in the CHOICE
- have identical names, an error may occur if one doesn't use the
- 'optimized' versions of the compiler. In the older versions (<c>ber, ber_bin, per, per_bin</c>) one could optionally apply a value of a
- component as <c>{ComponentName,Value}</c>, and the generated code
- chooses the second element of the tuple. However, a value of a CHOICE
- must be applied as a tuple: <c>{AlternativeName,Value}</c>. Thus,
- in the rare case described above and if the value to the SEQUENCE's
- component is not in a tuple notation the
- <c>{AlternativeName,Value}</c> will be peeled off in the SEQUENCE
- and the value fed to the CHOICE will only be the <c>Value</c>
- part of <c>{AlternativeName,Value}</c>, and the encoder crashes.
- The best way to avoid this is to use the optimized version of the
- compiler where the unnecessary tuple notation
- <c>{ComponentName,Value}</c> no longer is allowed. Since it isn't
- possible to solve this bug in the compiler.</p>
- <p>Own Id: OTP-4693</p>
- </item>
- </list>
- </section>
-
- <section>
- <title>Improvements and new features</title>
- <list type="bulleted">
- <item>
- <p>Exclusive decode is enabled by a compiler option and a configuration
- file. It makes it possible to leave parts of an ASN.1 encoded message
- un-decoded.</p>
- <p>Own Id: OTP-4744</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.4.1.1</title>
-
- <section>
- <title>Fixed errors and malfunctions</title>
- <list type="bulleted">
- <item>
- <p>The documentation about how extensibility is handled is now corrected.</p>
- <p>Own Id: OTP-4663</p>
- </item>
- <item>
- <p>Function in object now calls the exported function</p>
- <p>Own Id: OTP-4665</p>
- </item>
- <item>
- <p>Now is tags for ObjectClassFieldType analyzed correctly.</p>
- <p>Own Id: OTP-4666</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.4.1</title>
-
- <section>
- <title>Fixed errors and malfunctions</title>
- <list type="bulleted">
- <item>
- <p>Now is the Default value for an ENUMERATED returned as the name from
- the NamedList when decoding.</p>
- <p>Own Id: OTP-4633</p>
- </item>
- <item>
- <p>It was an internal failure when permitted alphabet constraint existed
- together with for instance a size constraint. E.g. when a
- referenced type is constrained by a size constraint and the defined
- type in turn is constrained by a permitted alphabet constraint.</p>
- <p>Own Id: OTP-4559</p>
- </item>
- <item>
- <p>Record is generated in hrl file for a CHOICE with extension mark
- that has an internal SEQUENCE/SET definition.</p>
- <p>Own Id: OTP-4560</p>
- </item>
- <item>
- <p>Now is the length of a SEQUENCE/SET OF correctly encoded/decoded (PER).</p>
- <p>Own Id: OTP-4590</p>
- </item>
- <item>
- <p>The problem with unordered decoded terms when a component is a
- ObjectClassFieldType has been solved.</p>
- <p>Own Id: OTP-4591</p>
- </item>
- </list>
- </section>
-
- <section>
- <title>Improvements and new features</title>
- <list type="bulleted">
- <item>
- <p>More complex definitions with TableConstraints where the SimpleTable
- and ComponentRelation are on different levels is now fully
- supported.</p>
- <p>Own Id: OTP-4631</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.4</title>
-
- <section>
- <title>Fixed errors and malfunctions</title>
- </section>
-
- <section>
- <title>Improvements and new features</title>
- <list type="bulleted">
- <item>
- <p>Each generated .erl file have now a function info/0 that returns
- information about the used compiler version and options.</p>
- <p>Own Id: OTP-4373</p>
- </item>
- <item>
- <p>When compiling an ASN.1 module the compiler generates an Erlang module
- that is compiled by the Erlang compiler. Earlier it was not possible to
- add options to the final step, the Erlang compilation. By adding any
- option that is not recognized as a specific ASN.1 option it will be
- passed to the final step like: <c>erlc +debug_info Mymodule.asn</c> or
- <c>asn1ct:compile('Mymodule',[debug_info])</c>.</p>
- <p>Own Id: OTP-4491</p>
- </item>
- <item>
- <p>Earlier one couldn't multi file compile modules that had different
- tagdefault, which now is possible. Equal Type/Value names in different
- modules are resolved by renaming (concatenate type name and module
- name): If two types with the same name T exist in module A and module B
- they will get the new names TA and TB.</p>
- <p>(Own Id: OTP-4492)</p>
- <p>Aux Id: OTP-3983</p>
- </item>
- <item>
- <p>BER: Encode/decode of data have been significantly improved. By use of
- the compiler options <c>ber_bin</c> and <c>optimize</c>,
- optimized code will be generated and the optimized run-time module will
- be used.</p>
- <p>Own Id: OTP-4493</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.3.3.1</title>
-
- <section>
- <title>Fixed errors and malfunctions</title>
- <list type="bulleted">
- <item>
- <p>Proper length encoding and padding implemented for a <c>BIT STRING</c> with
- NamedNumberList and size constraint as value range. This functionality
- didn't work in the rare occasion when the NamedNumberList is shorter
- than the lower bound of the constraint.As in this example:
- <c>TestS ::= BIT STRING {a (0),b (1)} (SIZE (3..8))</c></p>
- <p>(Own Id: OTP-4353)</p>
- </item>
- <item>
- <p>Bug in compiler, when an <c>OBJECT IDENTIFIER</c> value consisting of
- two identifiers (Defined values or Name form identifiers) was falsely
- interpreted causing a compiling error is now corrected.</p>
- <p>(Own Id: OTP-4354)</p>
- </item>
- <item>
- <p>Internal error in check phase that caused crash on
- <c>ObjectClassFieldType</c> in ber_bin is corrected.</p>
- <p>(Own Id: OTP-4390)</p>
- </item>
- <item>
- <p>Tags for open types are handled according to <c>x.680 30.6c</c>, i.e.
- open types shall not be tagged <c>IMPLICIT.</c></p>
- <p>(Own Id: OTP-4395)</p>
- <p>(Aux Id: OTP-4390)</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.3.3</title>
-
- <section>
- <title>Fixed errors and malfunctions</title>
- <list type="bulleted">
- <item>
- <p>Now gives the compiler an appropriate error report when exported
- undefined types are detected.</p>
- <p>(Own Id: OTP-4129)</p>
- </item>
- <item>
- <p>The type <c>ObjectDescriptor</c> is now supported, previously the
- implementation of encode/decode for this rarely used type was
- incomplete.</p>
- <p>(Own Id: OTP-4161)</p>
- <p>(Aux Id: seq7165)</p>
- </item>
- <item>
- <p>In case of per and compact_bit_string the rightmost byte were erroneous
- truncated when the rightmost bits of that byte were zeros. This is now
- corrected.</p>
- <p>(Own Id: OTP-4200)</p>
- </item>
- <item>
- <p>Bad match of return-value from decode_length in skipvalue/3 has now been
- fixed.</p>
- <p>(Own Id: OTP-4232)</p>
- </item>
- <item>
- <p>Now is decode of ENUMERATED handled correctly, when tagged EXPLICIT.</p>
- <p>(Own Id: OTP-4234)</p>
- </item>
- <item>
- <p>The compiler now parses and handles the ValueFromObject construct.</p>
- <p>(Own Id: OTP-4242)</p>
- </item>
- <item>
- <p>Now does the compiler handle the case when the object set in simple
- table and componentrelation constraints is of a CLASS without a UNIQUE
- field. In this case is the octets, which is assumed to be encoded,
- encoded as an open type.</p>
- <p>(Own Id: OTP-4248)</p>
- <p>(Aux Id: OTP-4242)</p>
- </item>
- <item>
- <p>Compiler handles objects in AdditionalElementSetSpec in ObjectSetSpec,
- i.e. the objects that are referred to after the ellipses in an object set.</p>
- <p>(Own Id: OTP-4275)</p>
- </item>
- <item>
- <p>Now are values with a component of type CHOICE encoded with indefinite
- length correctly decoded.</p>
- <p>(Own Id: OTP-4358)</p>
- </item>
- </list>
- </section>
-
- <section>
- <title>Improvements and new features</title>
- <list type="bulleted">
- <item>
- <p>The language constructs (from the old 1988 standard) <c>ANY</c>
- and <c>ANY DEFINED BY</c> are now implemented.</p>
- <p>(Own Id: OTP-2741)</p>
- <p>(Aux Id: seq 1188)</p>
- </item>
- <item>
- <p>Now it is checked in run-time if a <c>OBJECT IDENTIFIER</c> value is invalid</p>
- <p>(Own Id: OTP-4235)</p>
- </item>
- <item>
- <p>The ASN.1 types EXTERNAL,EMBEDDED PDV and CHARACTER STRING now have full support in the compiler.</p>
- <p>(Own Id: OTP-4247)</p>
- </item>
- <item>
- <p>A driver in C does the final job (complete) of the PER encoding when
- files are compiled with <c>per_bin</c> and <c>optimize</c> flags.
- It gives significant faster encoding for PER.</p>
- <p>(Own Id: OTP-4355)</p>
- </item>
- <item>
- <p>Encode and decode of PER encoding has been made faster by moving
- analysis done in run-time to compile-time. These optimizations are
- available by compiling ASN.1 files with options <c>per_bin</c> and
- <c>optimize</c>.</p>
- <p>(Own Id: OTP-4381)</p>
- <p>(Aux Id: OTP-4355)</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.3.2</title>
-
- <section>
- <title>Fixed errors and malfunctions</title>
- <list type="bulleted">
- <item>
- <p>Now does the compiler check values (including referenced values), and
- formats the value so it is suitable to use as input to encoding
- functions.</p>
- <p>(Own Id: OTP-3277)</p>
- <p>(Aux Id: OTP-4103)</p>
- </item>
- <item>
- <p>Unnecessary external function calls in generated code are now generated
- as internal function calls.</p>
- <p>(Own Id: OTP-4073)</p>
- </item>
- </list>
- </section>
-
- <section>
- <title>Improvements and new features</title>
- <list type="bulleted">
- <item>
- <p>Now is Information Objects supported in BER encoding.</p>
- <p>(Own Id: OTP-3980)</p>
- <p>(Aux Id: OTP-3979 OTP-3978)</p>
- <p></p>
- </item>
- <item>
- <p>PER: A new option <c>per_bin</c> is now supported. When used the
- generated encode/decode functions use binaries and the bit syntax to
- get better performance than the old <c>per</c> variant which used
- lists. All values input to encode and returned from decode are
- compatible between <c>per</c> and <c>per_bin</c> except for
- open types which are represented as binaries with per_bin and octet
- lists with per. We recommend that you use per_bin instead of per from
- now on, the use of binaries will be the default in coming versions and
- all improvements and optimizations for PER will be concentrated to that
- solution.</p>
- <p>(Own Id: OTP-4094)</p>
- <p></p>
- </item>
- <item>
- <p>Support for DER implemented. Used by flag +der when compiling. Include
- the full BER encoding plus: sorting of SET components, sorting of
- encoded elements in SET OF, full check of default values in SET and
- SEQUENCE. See new documentation on DER in user_guide sections 1.3.1;
- 1.4.11; 1.4.12; 1.4.14; 1.4.16 and 1.10, in the reference manual for
- asn1ct.</p>
- <p>(Own Id: OTP-4103)</p>
- <p></p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.3.1</title>
-
- <section>
- <title>Fixed errors and malfunctions</title>
- <list type="bulleted">
- <item>
- <p>Do not generate record in .hrl file for SET types</p>
- <p>Own Id: OTP-4025</p>
- </item>
- <item>
- <p>Fixed internal error when using BIT STRINGs with Named Number List in combination with <c>compact_bit_string</c> and <c>ber_bin</c> options.</p>
- <p>Own Id: OTP-4026</p>
- <p>Aux Id: OTP-3982</p>
- </item>
- <item>
- <p>The atom 'com' can now be used in ENUMERATED as an EnumerationItem.</p>
- <p>Own Id: OTP-4037</p>
- <p>Aux Id: Seq 7036</p>
- </item>
- <item>
- <p>ber: Now it is possible (again) to encode data format "{Type,Value}" in a SEQUENCE OF RequestParameter, when RequestParameter is of type ENUMERATED. The {Type,Value}
- notation is not recommended for use, it is redundant and exist only for very ancient backwards compatibility reasons. The "feature" might be removed in forthcoming versions.</p>
- <p>Own Id: OTP-4057</p>
- <p>Aux Id: Seq 7066</p>
- </item>
- <item>
- <p>A bug in the parser, that caused failure on COMPONENTS OF is now removed.</p>
- <p>Own Id: OTP-4058</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.3</title>
-
- <section>
- <title>Known problems</title>
- <list type="bulleted">
- <item>
- <p>The compiler will now check that a value referenced by name
- does exist.</p>
- <p>Own Id: OTP-3277</p>
- </item>
- <item>
- <p>BER:Decode of a type T ::= SEQUENCE OF C fails if C is encoded with indefinite length.
- This is know corrected.</p>
- <p>Own Id: OTP-3811</p>
- <p>Aux Id: seq5040</p>
- </item>
- </list>
- </section>
-
- <section>
- <title>Fixed errors and malfunctions</title>
- <list type="bulleted">
- <item>
- <p>The new parser handles imports when one import ends with FROM, a modulename and a reference to a objectidentifier followed by imports from other modules.</p>
- <p>Own Id: OTP-3463</p>
- </item>
- <item>
- <p>The compiler did not check that a name mentioned as EXPORTED
- actually is defined within the module.
- This is now corrected.</p>
- <p>Own Id: OTP-3659</p>
- </item>
- <item>
- <p>Removed bug caused by use of nested indefinite length</p>
- <p>Own Id: OTP-3994</p>
- </item>
- </list>
- </section>
-
- <section>
- <title>Improvements and new features</title>
- <list type="bulleted">
- <item>
- <p>Now supporting most common use of parameterization according to X.683</p>
- <p>(Own Id: OTP-3978)</p>
- </item>
- <item>
- <p>PER: Now supporting most common use of Information Objects according to X.681. A new parser has been implemented. The error messages due to syntax errors are slightly different than previous. TableConstraint part of X.682 now also supported.</p>
- <p>Own Id: OTP-3979</p>
- </item>
- <item>
- <p>New compiler option added: <c>ber_bin</c>. The compiler generates code with new bit syntax. Run time functions uses bit syntax when feasible. Higher encoding/decoding performance in most cases. Se also comments for Asn1 1.2.9.3.</p>
- <p>Own Id: OTP-3981</p>
- </item>
- <item>
- <p>A more compact format of BIT STRING in Erlang is now available by use of the compiler option <c>compact_bit_string</c>. It is much faster when large BIT STRINGs are used.</p>
- <p>Own Id: OTP-3982</p>
- </item>
- <item>
- <p>Now possible to merge many ASN.1 input files to one Erlang file by use of a configuration file that lists the ASN.1 files.</p>
- <p>Own Id: OTP-3983</p>
- </item>
- <item>
- <p>New documentation in <em>User's Guide</em> in section:</p>
- <p>3.1: New compile-time functions and options are described.</p>
- <p>4.6: New compact format of BIT STRING is described.</p>
- <p>4.8: Additional comments on character strings.</p>
- <p>7: New section describing ASN.1 Information Objects.</p>
- <p>8: New section describing Parameterization.</p>
- <p><em>Reference Manual/asn1ct</em> New compile options are described.</p>
- <p>Own Id: OTP-3984</p>
- <p>Aux Id: OTP-3978, OTP-3979, OTP-3981, OTP-3982, OTP-3983</p>
- </item>
- <item>
- <p>Added the functionality to invoke ASN1Mod:encode (and decode).</p>
- <p>Own Id: OTP-3985</p>
- </item>
- <item>
- <p>Performance improvements by removing not necessary use of apply when calling asn1rt:encode. Also other general improvements.</p>
- <p>Own Id: OTP-3988</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.2.9.6</title>
-
- <section>
- <title>Known problems</title>
- <list type="bulleted">
- <item>
- <p>The compiler does not check that an exported name actually exists in the ASN.1 module.</p>
- <p>Own Id: OTP-3659</p>
- </item>
- <item>
- <p>The compiler does not check that a value referenced by name does exist.</p>
- <p>Own Id: OTP-3277</p>
- </item>
- <item>
- <p>BER: The compiler does not take the extensions into account when checking if
- the tags are unique in a SEQUENCE or SET.</p>
- <p>Own Id: OTP-3304</p>
- </item>
- </list>
- </section>
-
- <section>
- <title>Fixed errors and malfunctions</title>
- <list type="bulleted">
- <item>
- <p>PER: Trailing zeroes in a BIT STRING declared without named bits
- should not be removed in the encodings.</p>
- <p>Own Id: OTP-3830</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.2.9.5</title>
-
- <section>
- <title>Known problems</title>
- <p>Same as for 1.2.9.3.</p>
- </section>
-
- <section>
- <title>Fixed errors and malfunctions</title>
- <list type="bulleted">
- <item>
- <p>PER: Constraints are not propagated when types are
- referring to each other. Example:</p>
- <code type="none">
-
- TBCD-STRING ::= OCTET STRING
-
- LAI ::= TBCD-STRING (SIZE(3)) </code>
- <p>The size constraint is not passed on during encode,decode
- resulting in wrong encoding for PER , it is
- coded with a length determinant which should not be there
- when the length is fixed. For BER this does not matter because the constraints does
- not affect the encodings.</p>
- <p>Own Id: OTP-3713</p>
- </item>
- <item>
- <p>The generated code gets wrong if there are several ENUMERATED fields in a SEQUENCE or SET, this is now corrected.</p>
- <p>Own Id: OTP-3796</p>
- </item>
- <item>
- <p>BER:Decode of a type T ::= SEQUENCE OF C fails if C is encoded with indefinite length.
- This is know corrected.</p>
- <p>Own Id: OTP-3811</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.2.9.3</title>
-
- <section>
- <title>Known problems</title>
- <list type="bulleted">
- <item>
- <p>The compiler does not check that an exported name actually exists in the ASN.1 module.</p>
- <p>Own Id: OTP-3659</p>
- </item>
- <item>
- <p>The compiler does not check that a value referenced by name does exist.</p>
- <p>Own Id: OTP-3277</p>
- </item>
- <item>
- <p>BER: The compiler does not take the extensions into account when checking if
- the tags are unique in a SEQUENCE or SET.</p>
- <p>Own Id: OTP-3304</p>
- </item>
- </list>
- </section>
-
- <section>
- <title>Fixed errors and malfunctions</title>
- <list type="bulleted">
- <item>
- <p>This version supports soft upgrade from versions 1.2.6 1.2.7.</p>
- </item>
- <item>
- <p>In an ENUMERATED type like this:</p>
- <code type="none">
-\011\011T ::= ENUMERATED { blue, green} </code>
- <p>The symbols was encoded/decoded with the wrong values, i.e in
- reverse order. This is now corrected.</p>
- <p>Own Id: OTP-3700</p>
- </item>
- <item>
- <p>PER: OCTET STRING with Size constrained to a single value i.e fixed size
- was treated wrong during encode and decode. This is now corrected.</p>
- <p>Own Id: OTP-3701</p>
- </item>
- </list>
- </section>
-
- <section>
- <title>Improvements and new features</title>
- <list type="bulleted">
- <item>
- <p>There is now a new compiler option <c>ber_bin</c> available that can be used to
- generate encode/decode functions for BER that uses the new "bit-syntax" to
- make the functions more efficient. The <c>ber_bin</c> option is used
- as an alternative to the <c>ber</c> and <c>per</c> options.</p>
- <p>The encode function then produces a
- possibly nested list of binaries and integer lists. The decode function does
- in this case require a single binary as input instead of a list.
- The modules generated with this option require that you have an R7A or later
- system, otherwise they will not compile and the runtime module asn1rt_ber_bin
- can not be executed.</p>
- <p>The ber_bin option is not officially supported in this version (will be
- in a later version) but is provided for those who want to try it.
- It should be significantly faster at decode and is slightly faster at encode.
- Exactly how performance differs between this binary approach and the
- list approach depends highly on the type of input.
- Another thing worth noting is that both approaches still have a lot of
- solutions in common which can be improved a lot to gain even better
- performance.</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.2.9.2</title>
-
- <section>
- <title>Fixed errors and malfunctions</title>
- <list type="bulleted">
- <item>
- <p>BER: Encode/decode of extension components did not work properly. This is now corrected.</p>
- <p>Own Id: OTP-3395</p>
- <p>Aux Id: </p>
- <p>PER:The encode/decode of NULL as an open type has been corrected. An open type must always have a length of at least 1 byte even if the contained
- value (e.g NULL) encodes to nothing.</p>
- <p>Own Id: OTP-3496</p>
- <p>Aux Id: </p>
- </item>
- <item>
- <p>BER:In the current implementation extension components of a SEQUENCE are required
- to be present when they are specified as mandatory. This is an error, all extension
- components are "optional" even if they are not specified to have the OPTIONAL or
- DEFAULT property. This is now corrected.</p>
- <p>Own Id: OTP-3278</p>
- </item>
- </list>
- </section>
-
- <section>
- <title>Improvements and new features</title>
- <list type="bulleted">
- <item>
- <p>The ASN.1 language feature <c>COMPONENTS OF</c> is now implemented.</p>
- <p>Own Id: OTP-2515</p>
- </item>
- <item>
- <p>The encoding and decoding of ENUMERATED and
- INTEGER with NamedNumbers is made more efficient and thus
- faster in runtime.</p>
- <p>Own Id: OTP-3464</p>
- <p>Aux Id:</p>
- </item>
- <item>
- <p>Added support for encode/decode of open type which is
- constrained to a specific type. Previously the value of
- an open type had to be a list of octets, but now the Erlang
- representation of the specific type used in the constraint
- is used both as input to encode and as output from decode.</p>
- <p>Own Id: OTP-3569</p>
- <p>Aux Id: </p>
- </item>
- <item>
- <p>PER: GeneralString, GraphicalString etc. i.e all strings
- that are not so called "known-multiplier character
- string types" are now supported by the runtime
- encode/decode functions.</p>
- <p>Own Id: OTP-3573</p>
- <p>Aux Id:</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.2.6</title>
-
- <section>
- <title>Known problems</title>
- <list type="bulleted">
- <item>
- <p>The ASN.1 language feature <c>COMPONENTS OF</c> is not implemented.</p>
- <p>Own Id: OTP-2515</p>
- </item>
- <item>
- <p>The compiler does not check that a value referenced by name does exist.</p>
- <p>Own Id: OTP-3277</p>
- </item>
- <item>
- <p>BER:In the current implementation extension components of a SEQUENCE are required
- to be present when they are specified as mandatory. This is an error, all extension
- components are "optional" even if they are not specified to have the OPTIONAL or
- DEFAULT property.</p>
- <p>Own Id: OTP-3278</p>
- </item>
- <item>
- <p>BER: The compiler does not take the extensions into account when checking if
- the tags are unique in a SEQUENCE or SET.</p>
- <p>Own Id: OTP-3304</p>
- </item>
- </list>
- </section>
-
- <section>
- <title>Fixed errors and malfunctions</title>
- <list type="bulleted">
- <item>
- <p>This version supports soft upgrade from versions 1.1.1, 1.1.5 and 1.1.6.
- Two new runtime modules <c>asn1rt_ber_v1</c> and
- <c>asn1rt_per_v1</c> are delivered together with the old ones. This makes
- it possible to continue running applications with modules generated with the
- previous version of the asn1 compiler while modules generated by this version
- will use the new runtime modules. Note that it is only advice-able to continue
- running old generates if they are working perfectly and have no need
- for the corrections made in this version of the asn1 application.</p>
- </item>
- <item>
- <p>BER: SEQUENCEs encoded with indefinite length was not correctly decoded.
- This in now corrected.</p>
- <p>Own Id: OTP-3352</p>
- <p>Aux Id: Seq 4100</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.2.4</title>
-
- <section>
- <title>Fixed errors and malfunctions</title>
- <list type="bulleted">
- <item>
- <p>The compiler now detects multiple definitions of values and types and reports this as
- an error. Previously this was detected when the generated Erlang module was compiled.</p>
- <p>Own Id: OTP-3105</p>
- </item>
- <item>
- <p>BER: An error regarding encoding of <c>ENUMERATED</c> present in asn1-1.1.1
- is corrected. The new version 1.1.2 of asn1 containing this correction is
- delivered as a "patch".</p>
- <p>Own Id: OTP-3169</p>
- </item>
- <item>
- <p>BER: Decoding of <c>SEQUENCE OF</c> and <c>SET OF</c> with indefinite length is corrected.
- The correction was first delivered in version 1.1.2.</p>
- <p>Own Id: OTP-3170</p>
- </item>
- <item>
- <p>BER: Encoding and decoding of <c>ENUMERATED</c>
- with extensionmark
- "..." did not work (crashed with a runtime error). This
- has now been corrected. If an unknown enumerated value is
- decoded (for an extensible enumerated type)
- it is returned as <c>{asn1_enum,Value}</c> where
- <c>Value</c> is an integer. Enumerated values in this format
- are also accepted by the encoder.
- ASN.1 modules containing
- <c>ENUMERATED</c> with extensionmark should be
- recompiled with the corrected
- version of the compiler. The BER runtime functions are also
- corrected.
- Note that this correction has already been delivered as a
- bugfix for R4B (OTP-2951).</p>
- <p>Own Id: OTP-3202</p>
- <p>Aux Id: Seq3745</p>
- </item>
- <item>
- <p>BER: The primitive/constructed bit in the tag byte of an encoding
- is not correct when it comes to user defined tags.
- For example in </p>
- <code type="none">
- T ::= [2] SEQUENCE { a BOOLEAN} </code>
- <p>the tag 2 does not get the constructed bit set which it should.
- This is now corrected.</p>
- <p>Own Id: OTP-3241</p>
- </item>
- <item>
- <p>The decoder can now detect if there are unexpected bytes
- remaining when all components of a sequence are decoded.
- The decoder will then return <c>{error,{asn1{unexpected,Bytes}}}</c></p>
- <p>Own Id: OTP-3270</p>
- </item>
- <item>
- <p>Values of type <c>OBJECT IDENTIFIER</c> was sometimes returned as an Erlang list
- (ASN.1 constants) and sometimes as a tuple (from the decode functions). This is now
- changed so that <c>OBJECT IDENTIFIER</c> values always are represented as an Erlang
- tuple.</p>
- <p>Own Id: OTP-3280</p>
- </item>
- <item>
- <p>PER:The encode/decode functions could not handle integers with
- a range greater than 16#7ffffff. This limit is now removed.</p>
- <p>Own Id: OTP-3287</p>
- </item>
- <item>
- <p>PER: The encoding/decoding of the length for a SET OF/SEQUENCE OF
- was wrong if there was a size constraint. This is now corrected.</p>
- <p>Own Id: OTP-3291</p>
- </item>
- <item>
- <p>PER: Encoding of a constrained INTEGER (range &gt; 16 k) was wrong for
- the value 0. This is now corrected.</p>
- <p>Own Id: OTP-3306</p>
- </item>
- </list>
- </section>
-
- <section>
- <title>Improvements and new features</title>
- <list type="bulleted">
- <item>
- <p>The ASN.1 module name and the filename where the ASN.1
- specification resides must match each other (has always been the
- case). This is now checked by the compiler. The check requires that
- the names match in a case or case insensitive way depending on the
- characteristics for the current system.</p>
- <p>Own Id: OTP-1843</p>
- </item>
- <item>
- <p>PER: Encode/decode of an extension value (i.e not within the root set) for
- <c>ENUMERATED</c> did not work properly. This is now corrected.
- If an unknown enumerated value is
- decoded (for an extensible enumerated type)
- it is returned as <c>{asn1_enum,Value}</c> where
- <c>Value</c> is an integer. Enumerated values in this format
- are also accepted by the encoder (if the value is &gt;= the number of known
- extension values).</p>
- <p>Own Id: OTP-2930</p>
- </item>
- <item>
- <p>Unnecessary printouts from the compiler are removed.
- The compiler version and the compiler options are now
- printed to stdout.</p>
- <p>Own Id: OTP-3276</p>
- </item>
- <item>
- <p>In order to better suite the use of ASN.1 in embedded systems only
- the modules needed in runtime are now listed in the <c>.app</c> file.</p>
- <p>Own Id: OTP-3279</p>
- </item>
- <item>
- <p>The compiler now supports extensionmarker in constraint specifications.
- Example:</p>
- <code type="none">
-INTEGER (0..10, ...) </code>
- <p>In previous version this was reported as a syntax error.</p>
- <p>Own Id: OTP-3281</p>
- </item>
- <item>
- <p>A very limited part of ITU-T recommendation X.681
- Abstract Syntax Notation One (ASN.1): Information
- object specification is now implemented. Specifically \011
- TYPE IDENTIFIER is recognized by the compiler.</p>
- <p>Own Id: OTP-3325</p>
- </item>
- <item>
- <p>Parameterization of ASN.1 specifications (ITU-T X.683) is now
- supported to a limited extent.</p>
- <p>Own Id: OTP-3326</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.1.3.1</title>
-
- <section>
- <title>Fixed errors and malfunctions</title>
- <list type="bulleted">
- <item>
- <p>BER Encoding and decoding of <c>ENUMERATED</c>
- with extensionmark
- "..." did not work (crashed with a runtime error). This
- has now been corrected. If an unknown enumerated value is
- decoded (for an extensible enumerated type)
- it is returned as <c>{asn1_enum,Value}</c> where
- <c>Value</c> is an integer. Enumerated values in this format
- are also accepted by the encoder.
- ASN.1 modules containing
- <c>ENUMERATED</c> with extensionmark should be
- recompiled with the corrected
- version of the compiler. The BER runtime functions are also
- corrected.
- Note that this correction has already been delivered as a
- bug-fix for R4B (OTP-2951).</p>
- <p>Own Id: OTP-3202</p>
- <p>Aux Id: Seq3745</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.1.1</title>
-
- <section>
- <title>Known problems</title>
- <list type="bulleted">
- <item>
- <p>The syntactic construct <c>COMPONENTS OF</c> is not
- implemented.</p>
- <p>Own Id: OTP-2515</p>
- </item>
- <item>
- <p><c>ANY</c> and <c>ANY DEFINED BY</c> are currently not
- supported.</p>
- <p>Own Id: OTP-2741</p>
- <p>Aux Id: seq 1188</p>
- </item>
- <item>
- <p>Multiple definitions of the same Type or Value is not detected
- by the compiler. The error occurs when the generated Erlang
- module is compiled.</p>
- <p>Own Id: OTP-3105</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.1</title>
-
- <section>
- <title>Known problems</title>
- <list type="bulleted">
- <item>
- <p>The primitive/constructed bit in the tag byte of an encoding
- is not correct when it comes to user defined tags.
- For example in</p>
- <code type="none">
- T ::= [2] SEQUENCE { a BOOLEAN} </code>
- <p>the tag 2 does not get the constructed bit set which it should.
- This is now corrected.</p>
- <p>Own Id: OTP-3241</p>
- </item>
- </list>
- </section>
-
- <section>
- <title>Fixed errors and malfunctions</title>
- <list type="bulleted">
- <item>
- <p>The BER decoder failed to decode certain nested data types
- where <c>IMPLICIT</c> tags where involved.
- This is now corrected.</p>
- <p>Own Id: OTP-2719</p>
- <p>Aux Id: seq 1148</p>
- </item>
- <item>
- <p>The handling of types with extension marker "..." is corrected.
- Earlier each SEQUENCE and SET with an extension marker got an
- extra field named <c>asn1_EXT</c> in the generated record.
- This was a mistake and that field is now removed (concerns
- both BER and BER).</p>
- <p>Own Id: OTP-2724</p>
- <p>Aux Id: seq 1148, OTP-2719</p>
- </item>
- <item>
- <p>The decoder (both BER and PER) could not handle unnamed
- bits of a <c>BIT STRING</c> if the type had any
- named bits declared. This is now corrected and the unnamed
- bits are returned as <c>{bit,Pos}</c> where Pos is the bit
- position. The <c>{bit,Pos}</c> can be used as input to the
- encoder too.</p>
- <p>Own Id: OTP-2725</p>
- <p>Aux Id: seq 1148,OTP-2719,OTP-2724</p>
- </item>
- <item>
- <p>The functions <c>asn1rt:decode</c> and <c>asn1ct:decode</c>
- did not always return <c>{ok,Result}</c> or
- <c>{error,Reason}</c> as documented. This is now corrected.</p>
- <p>Own Id: OTP-2730</p>
- <p>Aux Id: seq 1158</p>
- </item>
- <item>
- <p>The compiler did not accept CHOICE types as components
- of a SEQUENCE or SET when
- the modules tag default was IMPLICIT.
- Example:</p>
- <code type="none">
-C ::= CHOICE { ......}
-A ::= SEQUENCE {
-a [1] C, -- This was not accepted
-..... </code>
- <p>This was an error
- caused by a misinterpretation of the ASN.1 standard. This
- is now corrected.</p>
- <p>Own Id: OTP-2731</p>
- <p>Aux Id: seq 1163</p>
- </item>
- <item>
- <p>When decoding a SEQUENCE A which contains an OPTIONAL component
- b which is a SEQUENCE with mandatory components, the decoder
- does not detect as an error that a mandatory component of b
- is missing. The same error could occur also in other cases
- with nested types and optional components of SEQUENCE or SET.
- This is now corrected.</p>
- <p>Own Id: OTP-2738</p>
- <p>Aux Id: seq 1183</p>
- </item>
- <item>
- <p>BER Encoding and decoding of <c>ENUMERATED</c>
- with extensionmark
- "..." did not work (crashed with a runtime error). This
- has now been corrected. If an unknown enumerated value is
- decoded (for an extensible enumerated type)
- it is returned as <c>{asn1_enum,Value}</c> where
- <c>Value</c> is an integer. Enumerated values in this format
- are also accepted by the encoder.
- ASN.1 modules containing
- <c>ENUMERATED</c> with extensionmark should be
- recompiled with the corrected
- version of the compiler. The BER runtime functions are also
- corrected.</p>
- <p>Own Id: OTP-2951</p>
- <p>Aux Id: Seq 1446 OTP-2929</p>
- </item>
- <item>
- <p>The compiler does now accept all valid value notations
- for the OBJECT IDENTIFIER type. The generated code for
- those values is also corrected.</p>
- <p>Own Id: OTP-3059</p>
- </item>
- </list>
- </section>
-
- <section>
- <title>Improvements and new features</title>
- <list type="bulleted">
- <item>
- <p>The code generated for BER is significantly enhanced resulting
- in less code and around 300% better performance in runtime
- for the encoding of complex ASN.1 values. The performance of
- decoding is unchanged.</p>
- <p>Own Id: OTP-2806</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>Asn1 1.0.3</title>
-
- <section>
- <title>Fixed errors and malfunctions</title>
- <list type="bulleted">
- <item>
- <p>The <c>asn1.app</c> file is corrected.</p>
- <p>Own Id: OTP-2640</p>
- </item>
- <item>
- <p>The encoding of integers in BER did not comply with the
- standard for all values. The values was not encoded
- in the minimum number of octets as required. This is
- now corrected in the runtime module <c>asn1rt_ber</c>.</p>
- <p>Own Id: OTP-2666</p>
- </item>
- </list>
- </section>
-
- <section>
- <title>Improvements and new features</title>
- <list type="bulleted">
- <item>
- <p>The compiler now generates explicit exports directives for
- all generated
- functions that should be exported (instead of -compile(export_all)).
- This eliminates the warnings from the Erlang compiler when
- compiling the
- generated file.</p>
- <p>Own Id: OTP-1845</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>R3B02 (Asn1 1.0.2)</title>
-
- <section>
- <title>Fixed errors and malfunctions</title>
- <list type="bulleted">
- <item>
- <p>The decoding of a BER encoded SEQUENCE with optional component
- of type SEQUENCE (also with optional components) could result
- in an error or wrong result if the tags are equal.</p>
- <p>Own Id: OTP-2226</p>
- </item>
- <item>
- <p>The encoding of (PER) SEQUENCE with extensionmark was wrong.
- This is now corrected.</p>
- <p>Own Id: OTP-2349</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>R3A (Asn1 0.9)</title>
-
- <section>
- <title>Fixed errors and malfunctions</title>
- <list type="bulleted">
- <item>
- <p>The asn1 compiler now detects the use of an implicit tag before <c>CHOICE</c> as an error (in accordance with the standard)</p>
- <p>Own Id: OTP-1844</p>
- </item>
- <item>
- <p>An OPTIONAL CHOICE embedded in SEQUENCE when BER coding
- caused an error when generating decode code. This is now
- corrected.</p>
- <p>Own Id: OTP-1857</p>
- <p>Aux Id: OTP-1848</p>
- </item>
- </list>
- </section>
- </section>
-
- <section>
- <title>1 ASN1 0.8.1</title>
- <p>This is the first release of the ASN1 application. This version is
- released for beta-testing. Some functionality will be added until the
- 1.0 version is released. See the release notes for the latest version
- for the exact details about new features. A list of missing features
- and restrictions can be found in the chapter below.</p>
-
- <section>
- <title>1.1 Missing features and other restrictions</title>
- <p></p>
- <list type="bulleted">
- <item>
- <p>The encoding rules BER and PER (aligned) is supported. <em>PER (unaligned) IS NOT SUPPORTED</em>.</p>
- </item>
- <item>
- <p>NOT SUPPORTED types <c>ANY</c> and <c>ANY DEFINED BY</c>
- (is not in the standard any more).</p>
- </item>
- <item>
- <p>NOT SUPPORTED types <c>EXTERNAL</c> and <c>EMBEDDED-PDV</c>. </p>
- </item>
- <item>
- <p>NOT SUPPORTED type <c>REAL</c> (planned to be implemented). </p>
- </item>
- <item>
- <p>The code generation support for value definitions in the ASN.1 notation is very limited
- (planned to be enhanced).</p>
- </item>
- <item>
- <p>The support for constraints is limited to:</p>
- </item>
- </list>
- <list type="bulleted">
- <item>
- <p>SizeConstraint SIZE(X)</p>
- </item>
- <item>
- <p>SingleValue (1)</p>
- </item>
- <item>
- <p>ValueRange (X..Y)</p>
- </item>
- <item>
- <p>PermittedAlpabet FROM (but not for BMPString and UniversalString when generating PER).</p>
- </item>
- <item>
- <p>Complex expressions in constraints is not supported (planned to be extended).</p>
- </item>
- <item>
- <p>The current version of the compiler has very limited error checking:</p>
- </item>
- <item>
- <p>Stops at first syntax error.</p>
- </item>
- <item>
- <p>Does not stop when a reference to an undefined type is found ,
- but prints an error message. Compilation of the generated
- Erlang module will then fail.</p>
- </item>
- <item>
- <p>A whole number of other semantical controls is currently
- missing. This means that the compiler will give little
- or bad help to detect what's wrong with an ASN.1
- specification, but will mostly work very well when the
- ASN.1 specification is correct.</p>
- </item>
- </list>
- <list type="bulleted">
- <item>
- <p>The maximum INTEGER supported in this version is a
- signed 64 bit integer. This limitation is probably quite
- reasonable. (Planned to be extended).</p>
- </item>
- <item>
- <p>Only AUTOMATIC TAGS supported for PER.</p>
- </item>
- <item>
- <p>Only EXPLICIT and IMPLICIT TAGS supported for BER.</p>
- </item>
- <item>
- <p>The compiler supports decoding of BER-data with indefinite
- length but it is not possible to produce data with indefinite
- length with the encoder.</p>
- </item>
- </list>
- </section>
- </section>
-</chapter>
-
diff --git a/lib/asn1/doc/src/part_notes.xml b/lib/asn1/doc/src/part_notes.xml
deleted file mode 100644
index b0a6887aa5..0000000000
--- a/lib/asn1/doc/src/part_notes.xml
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="latin1" ?>
-<!DOCTYPE part SYSTEM "part.dtd">
-
-<part xmlns:xi="http://www.w3.org/2001/XInclude">
- <header>
- <copyright>
- <year>2004</year><year>2009</year>
- <holder>Ericsson AB. All Rights Reserved.</holder>
- </copyright>
- <legalnotice>
- 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.
-
- </legalnotice>
-
- <title>Asn1 Release Notes</title>
- <prepared>Ingela Anderton Andin</prepared>
- <docno></docno>
- <date>>2004-09-07</date>
- <rev></rev>
- <file>part_notes.sgml</file>
- </header>
- <description>
- <p>The <em>Asn1</em> application
- contains modules with compile-time and run-time support for ASN.1.</p>
- <p>There are also release notes for
- <url href="notes_history.html">older versions</url>.</p>
- </description>
- <xi:include href="notes.xml"/>
-</part>
-
diff --git a/lib/asn1/doc/src/warning.gif b/lib/asn1/doc/src/warning.gif
deleted file mode 100644
index 96af52360e..0000000000
--- a/lib/asn1/doc/src/warning.gif
+++ /dev/null
Binary files differ
diff --git a/lib/compiler/src/beam_asm.erl b/lib/compiler/src/beam_asm.erl
index 90d25d87b2..497c4fa07b 100644
--- a/lib/compiler/src/beam_asm.erl
+++ b/lib/compiler/src/beam_asm.erl
@@ -150,7 +150,7 @@ build_file(Code, Attr, Dict, NumLabels, NumFuncs, Abst, SourceFile, Opts) ->
%% Create IFF chunk.
Chunks = case member(slim, Opts) of
- true -> [Essentials,AttrChunk,CompileChunk,AbstChunk];
+ true -> [Essentials,AttrChunk,AbstChunk];
false -> [Essentials,LocChunk,AttrChunk,CompileChunk,AbstChunk]
end,
build_form(<<"BEAM">>, Chunks).
diff --git a/lib/crypto/test/blowfish_SUITE.erl b/lib/crypto/test/blowfish_SUITE.erl
index 0a30ac33f3..d4cc167ea9 100644
--- a/lib/crypto/test/blowfish_SUITE.erl
+++ b/lib/crypto/test/blowfish_SUITE.erl
@@ -1,19 +1,19 @@
%%
%% %CopyrightBegin%
-%%
-%% Copyright Ericsson AB 2008-2009. All Rights Reserved.
-%%
+%%
+%% Copyright Ericsson AB 2009. 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%
%%
diff --git a/lib/debugger/doc/src/Makefile b/lib/debugger/doc/src/Makefile
index e6a1de2701..1c0bbaf9d2 100644
--- a/lib/debugger/doc/src/Makefile
+++ b/lib/debugger/doc/src/Makefile
@@ -39,7 +39,7 @@ RELSYSDIR = $(RELEASE_PATH)/lib/$(APPLICATION)-$(VSN)
XML_APPLICATION_FILES = ref_man.xml
XML_REF3_FILES = debugger.xml i.xml int.xml
-XML_PART_FILES = part.xml part_notes.xml
+XML_PART_FILES = part.xml
XML_CHAPTER_FILES = debugger_chapter.xml notes.xml
BOOK_FILES = book.xml
diff --git a/lib/debugger/doc/src/part_notes.xml b/lib/debugger/doc/src/part_notes.xml
deleted file mode 100644
index 60299bbb11..0000000000
--- a/lib/debugger/doc/src/part_notes.xml
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="latin1" ?>
-<!DOCTYPE part SYSTEM "part.dtd">
-
-<part xmlns:xi="http://www.w3.org/2001/XInclude">
- <header>
- <copyright>
- <year>2004</year><year>2009</year>
- <holder>Ericsson AB. All Rights Reserved.</holder>
- </copyright>
- <legalnotice>
- 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.
-
- </legalnotice>
-
- <title>Debugger Release Notes</title>
- <prepared></prepared>
- <docno></docno>
- <date>2004-09-07</date>
- <rev>1.0</rev>
- <file>part_notes.sgml</file>
- </header>
- <description>
- <p><em>Debugger</em> is a graphical tool which can be used for
- debugging and testing of Erlang programs. For example, breakpoints
- can be set, code can be single stepped and variable values can be
- displayed and changed.</p>
- </description>
- <xi:include href="notes.xml">
-</part>
-
-
diff --git a/lib/debugger/doc/src/warning.gif b/lib/debugger/doc/src/warning.gif
deleted file mode 100644
index 96af52360e..0000000000
--- a/lib/debugger/doc/src/warning.gif
+++ /dev/null
Binary files differ
diff --git a/lib/erl_interface/doc/src/ei_connect.xml b/lib/erl_interface/doc/src/ei_connect.xml
index 08e7b122c6..abf705f9e2 100644
--- a/lib/erl_interface/doc/src/ei_connect.xml
+++ b/lib/erl_interface/doc/src/ei_connect.xml
@@ -619,6 +619,16 @@ typedef struct {
<p>These are convenience functions for some common name lookup functions.</p>
</desc>
</func>
+ <func>
+ <name><ret>int</ret><nametext>ei_get_tracelevel(void)</nametext></name>
+ <name><ret>void</ret><nametext>ei_set_tracelevel(int level)</nametext></name>
+ <fsummary>Get and set functions for tracing.</fsummary>
+ <desc>
+ <p>These functions are used to set tracing on the distribution. The levels are different verbosity levels. A higher level means more information.
+ See also Debug Information and <c><![CDATA[EI_TRACELEVEL]]></c> below. </p>
+ <p> <c><![CDATA[ei_set_tracelevel]]></c> and <c><![CDATA[ei_get_tracelevel]]></c> are not thread safe. </p>
+ </desc>
+ </func>
</funcs>
<section>
@@ -634,6 +644,17 @@ typedef struct {
<item>the environment variable <c><![CDATA[ERL_EPMD_PORT]]></c>
is set correctly.</item>
</list>
+ <p>The connection attempt can be traced by setting a tracelevel by either using
+ <c><![CDATA[ei_set_tracelevel]]></c> or by setting the environment variable <c><![CDATA[EI_TRACELEVEL]]></c>.
+ The different tracelevels has the following messages:</p>
+ <list>
+ <item>1: Verbose error messages</item>
+ <item>2: Above messages and verbose warning messages </item>
+ <item>3: Above messages and progress reports for connection handling</item>
+ <item>4: Above messages and progress reports for communication</item>
+ <item>5: Above messages and progress reports for data conversion</item>
+ </list>
</section>
+
</cref>
diff --git a/lib/erl_interface/include/ei.h b/lib/erl_interface/include/ei.h
index 01272244e1..d1a697615a 100644
--- a/lib/erl_interface/include/ei.h
+++ b/lib/erl_interface/include/ei.h
@@ -339,7 +339,13 @@ const char *ei_thisalivename(const ei_cnode* ec);
erlang_pid *ei_self(ei_cnode* ec);
+/*
+ * settings
+ */
+
void ei_set_compat_rel(unsigned rel);
+void ei_set_tracelevel(int);
+int ei_get_tracelevel(void);
/*
* We have erl_gethost*() so we include ei versions as well.
diff --git a/lib/erl_interface/src/connect/ei_connect.c b/lib/erl_interface/src/connect/ei_connect.c
index 9ac5a93c5a..d2d0a7e7c1 100644
--- a/lib/erl_interface/src/connect/ei_connect.c
+++ b/lib/erl_interface/src/connect/ei_connect.c
@@ -249,8 +249,22 @@ ei_cnode *ei_fd_to_cnode(int fd)
return &sockinfo->cnode;
}
+
+/***************************************************************************
+ * Get/Set tracelevel
+ ***************************************************************************/
+
+void ei_set_tracelevel(int level) {
+ ei_tracelevel = level;
+}
+
+int ei_get_tracelevel(void) {
+ return ei_tracelevel;
+}
+
+
/***************************************************************************
- * XXXX
+ * Distversion
***************************************************************************/
int ei_distversion(int fd)
@@ -1282,8 +1296,6 @@ error:
return -1;
}
-/* FIXME fix the signed/unsigned mess..... */
-
static int send_name_or_challenge(int fd, char *nodename,
int f_chall,
unsigned challenge,
diff --git a/lib/observer/src/crashdump_viewer.erl b/lib/observer/src/crashdump_viewer.erl
index b323d86ea4..978541e470 100644
--- a/lib/observer/src/crashdump_viewer.erl
+++ b/lib/observer/src/crashdump_viewer.erl
@@ -1272,6 +1272,9 @@ get_general_info(Fd,GenInfo) ->
get_general_info(Fd,GenInfo#general_info{system_vsn=val(Fd)});
"Compiled" ->
get_general_info(Fd,GenInfo#general_info{compile_time=val(Fd)});
+ "Taints" ->
+ Val = case val(Fd) of "-1" -> "(none)"; Line -> Line end,
+ get_general_info(Fd,GenInfo#general_info{taints=Val});
"Atoms" ->
get_general_info(Fd,GenInfo#general_info{num_atoms=val(Fd)});
"=" ++ _next_tag ->
diff --git a/lib/observer/src/crashdump_viewer.hrl b/lib/observer/src/crashdump_viewer.hrl
index 386d3bb423..6ce727cd3e 100644
--- a/lib/observer/src/crashdump_viewer.hrl
+++ b/lib/observer/src/crashdump_viewer.hrl
@@ -26,6 +26,7 @@
slogan,
system_vsn,
compile_time,
+ taints,
node_name,
num_atoms,
num_procs,
diff --git a/lib/observer/src/crashdump_viewer_html.erl b/lib/observer/src/crashdump_viewer_html.erl
index 5fa829ed37..5e7bbf62a0 100644
--- a/lib/observer/src/crashdump_viewer_html.erl
+++ b/lib/observer/src/crashdump_viewer_html.erl
@@ -215,6 +215,8 @@ general_info_body(Heading,GenInfo) ->
td(GenInfo#general_info.system_vsn)]),
tr([th("ALIGN=left BGCOLOR=\"#8899AA\"","Compiled"),
td(GenInfo#general_info.compile_time)]),
+ tr([th("ALIGN=left BGCOLOR=\"#8899AA\"","Taints"),
+ td(GenInfo#general_info.taints)]),
case GenInfo#general_info.mem_tot of
"" -> "";
MemTot ->
diff --git a/lib/public_key/doc/src/cert_records.xml b/lib/public_key/doc/src/cert_records.xml
index 8fb4ea5fd0..8cfe57f670 100644
--- a/lib/public_key/doc/src/cert_records.xml
+++ b/lib/public_key/doc/src/cert_records.xml
@@ -41,10 +41,18 @@
</p>
<p>Use the following include directive to get access to the
- records and constant macros described in the following sections.</p>
+ records and constant macros (OIDs) described in the following sections.</p>
<code> -include_lib("public_key/include/public_key.hrl"). </code>
+ <p>The used specification is available in <c>OTP-PKIX.asn1</c>,
+ which is an amelioration of
+ the <c>PKIX1Explicit88.asn1</c>, <c>PKIX1Implicit88.asn1</c>
+ and <c>PKIX1Algorithms88.asn1</c> modules.
+ You find all these modules in the <c>asn1</c> subdirectory
+ of the application <c>public_key</c>.
+ </p>
+
<section>
<title>Common Data Types</title>
@@ -148,8 +156,7 @@ oid names see table below. Ex: ?'id-dsa-with-sha1'</p>
}.
</code>
-<p><c>id_attributes() = ?oid_name_as_erlang_atom</c>
-for available oid names see table below. Ex: ?'id-at-name'</p>
+<p><c>id_attributes() </c></p>
<table>
<row>
<cell align="left" valign="middle">OID name</cell>
@@ -231,8 +238,7 @@ for available oid names see table below. Ex: ?'id-at-name'</p>
}.
</code>
-<p><c> id_public_key_algorithm() = ?oid_name_as_erlang_atom</c> for available
-oid names see table below. Ex: ?'id-dsa'</p>
+<p><c> id_public_key_algorithm() </c></p>
<table>
<row>
<cell align="left" valign="middle">OID name</cell>
@@ -264,14 +270,11 @@ oid names see table below. Ex: ?'id-dsa'</p>
}.
</code>
-<p><c>id_extensions() = ?oid_name_as_erlang_atom</c> for
-available oid names see tables. Ex: ?'id-ce-authorityKeyIdentifier'<seealso
-marker="#StdCertExt">Standard Certificate Extensions</seealso>,
- <seealso
- marker="#PrivIntExt">Private Internet Extensions</seealso>, <seealso
- marker="#CRLCertExt">CRL Extensions</seealso> and
- <seealso
- marker="#CRLEntryExt">CRL Entry Extensions</seealso>.
+<p><c>id_extensions()</c>
+ <seealso marker="#StdCertExt">Standard Certificate Extensions</seealso>,
+ <seealso marker="#PrivIntExt">Private Internet Extensions</seealso>,
+ <seealso marker="#CRLCertExt">CRL Extensions</seealso> and
+ <seealso marker="#CRLEntryExt">CRL Entry Extensions</seealso>.
</p>
</section>
@@ -368,9 +371,8 @@ marker="#StdCertExt">Standard Certificate Extensions</seealso>,
decipherOnly
</c></p>
- <p><c> id_key_purpose() = ?oid_name_as_erlang_atom</c> for available
-oid names see table below. Ex: ?'id-kp-serverAuth'</p>
-
+ <p><c> id_key_purpose()</c></p>
+
<table>
<row>
<cell align="left" valign="middle">OID name</cell>
diff --git a/lib/ssl/doc/src/create_certs.xml b/lib/ssl/doc/src/create_certs.xml
index 15958ee457..79cc8a0537 100644
--- a/lib/ssl/doc/src/create_certs.xml
+++ b/lib/ssl/doc/src/create_certs.xml
@@ -98,12 +98,12 @@
<title>Creating the Erlang root CA</title>
<p>The Erlang root CA is created with the command</p>
<code type="none">
-\011openssl req -new -x509 -config /some/path/req.cnf \\
-\011 -keyout /some/path/key.pem -out /some/path/cert.pem </code>
+ openssl req -new -x509 -config /some/path/req.cnf \\
+ -keyout /some/path/key.pem -out /some/path/cert.pem </code>
<p>where the option <c>-new</c> indicates that we want to create
a new certificate request and the option <c>-x509</c> implies
that a self-signed certificate is created.
- </p>
+ </p>
</section>
<section>
@@ -111,12 +111,12 @@
<p>The OTP CA is created by first creating a certificate request
with the command</p>
<code type="none">
-\011openssl req -new -config /some/path/req.cnf \\
-\011 -keyout /some/path/key.pem -out /some/path/req.pem </code>
+ openssl req -new -config /some/path/req.cnf \\
+ -keyout /some/path/key.pem -out /some/path/req.pem </code>
<p>and the ask the Erlang CA to sign it:</p>
<code type="none">
-\011openssl ca -batch -notext -config /some/path/req.cnf \\
-\011 -extensions ca_cert -in /some/path/req.pem -out /some/path/cert.pem </code>
+ openssl ca -batch -notext -config /some/path/req.cnf \\
+ -extensions ca_cert -in /some/path/req.pem -out /some/path/cert.pem </code>
<p>where the option <c>-extensions</c> refers to a section in the
configuration file saying that it should create a CA certificate,
and not a plain user certificate.
diff --git a/lib/ssl/doc/src/new_ssl.xml b/lib/ssl/doc/src/new_ssl.xml
index f50f714fe6..a11919eb51 100644
--- a/lib/ssl/doc/src/new_ssl.xml
+++ b/lib/ssl/doc/src/new_ssl.xml
@@ -437,30 +437,17 @@ end
</func>
<func>
- <name>peercert(Socket) -> </name>
- <name>peercert(Socket, Opts) -> {ok, Cert} | {error, Reason}</name>
+ <name>peercert(Socket) -> {ok, Cert} | {error, Reason}</name>
<fsummary>Return the peer certificate.</fsummary>
<type>
<v>Socket = sslsocket()</v>
- <v>Opts = [] | [otp] | [plain] </v>
- <v>Cert = term()</v>
+ <v>Cert = binary()</v>
<v>Subject = term()</v>
</type>
<desc>
- <p><c>peercert(Cert)</c> is equivalent to <c>peercert(Cert, [])</c>.
- </p>
- <p>The form of the returned certificate depends on the
- options.
- </p>
- <p>If the options list is empty the certificate is returned as
- a DER encoded binary.
- </p>
- <p>The option <c>otp</c> or <c>plain</c> implies that the
- certificate will be returned as a parsed ASN.1 structure in the
- form of an Erlang term. For detail see the public_key application.
- Currently only plain is officially supported see the public_key users
- guide.
- </p>
+ <p>The peer certificate is returned as a DER encoded binary.
+ The certificate can be decoded with <c>public_key:pkix_decode_cert/2</c>.
+ </p>
</desc>
</func>
<func>
diff --git a/lib/ssl/doc/src/pkix_certs.xml b/lib/ssl/doc/src/pkix_certs.xml
index 47818c1b7d..1de807cadc 100644
--- a/lib/ssl/doc/src/pkix_certs.xml
+++ b/lib/ssl/doc/src/pkix_certs.xml
@@ -34,219 +34,24 @@
<p>Certificates were originally defined by ITU (CCITT) and the latest
definitions are described in <cite id="X.509"></cite>, but those definitions
are (as always) not working.
- </p>
+ </p>
<p>Working certificate definitions for the Internet Community are found
- in the the PKIX RFCs <cite id="rfc3279"></cite>and <cite id="rfc3280"></cite>.
+ in the the PKIX RFCs <cite id="rfc3279"></cite> and <cite id="rfc3280"></cite>.
The parsing of certificates in the Erlang/OTP SSL application is
based on those RFCS.
- </p>
+ </p>
<p>Certificates are defined in terms of ASN.1 (<cite id="X.680"></cite>).
For an introduction to ASN.1 see <url href="http://asn1.elibel.tm.fr/">ASN.1 Information Site</url>.
- </p>
+ </p>
</section>
<section>
<title>PKIX Certificates</title>
- <p>Here we base the PKIX certificate definitions in RFCs <cite id="rfc3279"></cite>and <cite id="rfc3280"></cite>. We however present the
- definitions according to <c>SSL-PKIX.asn1</c> module,
- which is an amelioration of the <c>PKIX1Explicit88.asn1</c>,
- <c>PKIX1Implicit88.asn1</c>, and <c>PKIX1Algorithms88.asn1</c>
- modules. You find all these modules in the <c>pkix</c> subdirectory
- of SSL.
- </p>
- <p>The Erlang terms that are returned by the functions
- <c>ssl:peercert/1/2</c>, <c>ssl_pkix:decode_cert/1/2</c>, and
- <c>ssl_pkix:decode_cert_file/1/2</c> when the option <c>ssl</c>
- is used in those functions, correspond the ASN.1 structures
- described in the sequel.
- </p>
-
- <section>
- <title>Certificate and TBSCertificate</title>
- <code type="none">
-Certificate ::= SEQUENCE {
- tbsCertificate TBSCertificate,
- signatureAlgorithm SignatureAlgorithm,
- signature BIT STRING }
-
-TBSCertificate ::= SEQUENCE {
- version [0] Version DEFAULT v1,
- serialNumber CertificateSerialNumber,
- signature SignatureAlgorithm,
- issuer Name,
- validity Validity,
- subject Name,
- subjectPublicKeyInfo SubjectPublicKeyInfo,
- issuerUniqueID [1] IMPLICIT UniqueIdentifier OPTIONAL,
- -- If present, version MUST be v2 or v3
- subjectUniqueID [2] IMPLICIT UniqueIdentifier OPTIONAL,
- -- If present, version MUST be v2 or v3
- extensions [3] Extensions OPTIONAL
- -- If present, version MUST be v3 -- }
-
-Version ::= INTEGER { v1(0), v2(1), v3(2) }
-
-CertificateSerialNumber ::= INTEGER
-
-Validity ::= SEQUENCE {
- notBefore Time,
- notAfter Time }
-
-Time ::= CHOICE {
- utcTime UTCTime,
- generalTime GeneralizedTime }
- </code>
- <p>The meaning of the fields <c>version</c>, <c>serialNumber</c>,
- and <c>validity</c> are quite obvious given the type definitions
- above, so we do not go further into their details.
- </p>
- <p>The <c>signatureAlgorithm</c> field of <c>Certificate</c> and
- the <c>signature</c> field of <c>TBSCertificate</c> contain
- the name and parameters of the algorithm used for signing the
- certificate. The values of these two fields must be equal.
- </p>
- <p>The <c>signature</c> field of <c>Certificate</c> contains the
- value of the signature that the issuer computed by using the
- prescribed algorithm.
- </p>
- <p>The <c><![CDATA[issuer<c> and <c>subject]]></c> fields can contain many
- different types av data, and is therefore considered in a
- separate section. The same holds for the <c>extensions</c>
- field.
- The <c>issuerUniqueID</c> and the <c>subjectUniqueID</c> fields
- are not considered further.</p>
- </section>
-
- <section>
- <title>TBSCertificate issuer and subject</title>
- <p></p>
- <code type="none"><![CDATA[
-Name ::= CHOICE { -- only one possibility for now --
- rdnSequence RDNSequence }
-
-RDNSequence ::= SEQUENCE OF RelativeDistinguishedName
-
-DistinguishedName ::= RDNSequence
-
-RelativeDistinguishedName ::=
- SET SIZE (1 .. MAX) OF AttributeTypeAndValue
-
-AttributeTypeAndValue ::= SEQUENCE {
- type ATTRIBUTE-TYPE-AND-VALUE-CLASS.&id
-\011\011({SupportedAttributeTypeAndValues}),
- value ATTRIBUTE-TYPE-AND-VALUE-CLASS.&Type
-\011\011({SupportedAttributeTypeAndValues}{@type}) }
-
-SupportedAttributeTypeAndValues ATTRIBUTE-TYPE-AND-VALUE-CLASS ::=
-\011{ name | surname | givenName | initials | generationQualifier |
-\011 commonName | localityName | stateOrProvinceName | organizationName |
-\011 organizationalUnitName | title | dnQualifier | countryName |
-\011 serialNumber | pseudonym | domainComponent | emailAddress } ]]></code>
- </section>
-
- <section>
- <title>TBSCertificate extensions</title>
- <p>The <c>extensions</c> field of a <c>TBScertificate</c> is a
- sequence of type <c>Extension</c>, defined as follows,</p>
- <code type="none">
-Extension ::= SEQUENCE {
- extnID OBJECT IDENTIFIER,
- critical BOOLEAN DEFAULT FALSE,
- extnValue ANY } </code>
- <p>Each extension has a unique object identifier. An extension
- with a <c>critical</c> value set to <c>TRUE</c><em>must</em>
- be recognised by the reader of a certificate, or else the
- certificate must be rejected.
- </p>
- <p>Extensions are divided into two groups: standard extensions
- and internet certificate extensions. All extensions listed in
- the table that follows are standard extensions, except for
- <c>authorityInfoAccess</c> and <c>subjectInfoAccess</c>, which
- are internet extensions.
- </p>
- <p>Depending on the object identifier the <c>extnValue</c> is
- parsed into an appropriate welldefined structure.
- </p>
- <p>The following table shows the purpose of each extension, but
- does not specify the structure. To see the structure consult
- the <c>PKIX1Implicit88.asn1</c> module.
- </p>
- <table>
- <row>
- <cell align="left" valign="middle">authorityKeyIdentifier</cell>
- <cell align="left" valign="middle">Used by to identify a certificate signed that has multiple signing keys. </cell>
- </row>
- <row>
- <cell align="left" valign="middle">subjectKeyIdentifier</cell>
- <cell align="left" valign="middle">Used to identify certificates that contain a public key. Must appear i CA certificates.</cell>
- </row>
- <row>
- <cell align="left" valign="middle">keyUsage </cell>
- <cell align="left" valign="middle">Defines the purpose of the certificate. Can be one or several of<c>digitalSignature</c>, <c>nonRepudiation</c>,<c>keyEncipherment</c>, <c>dataEncipherment</c>,<c>keyAgreement</c>, <c>keyCertSign</c>, <c>cRLSign</c>,<c>encipherOnly</c>, <c>decipherOnly</c>.</cell>
- </row>
- <row>
- <cell align="left" valign="middle">privateKeyUsagePeriod </cell>
- <cell align="left" valign="middle">Allows certificate issuer to provide a private key usage period to be short than the certificate usage period.</cell>
- </row>
- <row>
- <cell align="left" valign="middle">certificatePolicies</cell>
- <cell align="left" valign="middle">Contains one or more policy information terms indicating the policies under which the certificate has been issued.</cell>
- </row>
- <row>
- <cell align="left" valign="middle">policyMappings</cell>
- <cell align="left" valign="middle">Used i CA certificates. </cell>
- </row>
- <row>
- <cell align="left" valign="middle">subjectAltName</cell>
- <cell align="left" valign="middle">Allows additional identities to be bound the the subject. </cell>
- </row>
- <row>
- <cell align="left" valign="middle">issuerAltName</cell>
- <cell align="left" valign="middle">Allows additional identities to be bound the the issuer.</cell>
- </row>
- <row>
- <cell align="left" valign="middle">subjectDirectoryAttributes</cell>
- <cell align="left" valign="middle">Conveys identity attributes of the subject.</cell>
- </row>
- <row>
- <cell align="left" valign="middle">basicConstraints</cell>
- <cell align="left" valign="middle">Tells if the certificate holder is a CA or not.</cell>
- </row>
- <row>
- <cell align="left" valign="middle">nameConstraints</cell>
- <cell align="left" valign="middle">Used in CA certificates.</cell>
- </row>
- <row>
- <cell align="left" valign="middle">policyConstraints</cell>
- <cell align="left" valign="middle">Used in CA certificates.</cell>
- </row>
- <row>
- <cell align="left" valign="middle">extKeyUsage</cell>
- <cell align="left" valign="middle">Indicates for which purposed the public key may be used. </cell>
- </row>
- <row>
- <cell align="left" valign="middle">cRLDistributionPoints</cell>
- <cell align="left" valign="middle">Indicates how CRL (Certificate Revokation List) information is obtained.</cell>
- </row>
- <row>
- <cell align="left" valign="middle">inhibitAnyPolicy</cell>
- <cell align="left" valign="middle">Used i CA certificates.</cell>
- </row>
- <row>
- <cell align="left" valign="middle">freshestCRL</cell>
- <cell align="left" valign="middle">For CRLs.</cell>
- </row>
- <row>
- <cell align="left" valign="middle">authorityInfoAccess</cell>
- <cell align="left" valign="middle">How to access CA information of the issuer of the certificate.</cell>
- </row>
- <row>
- <cell align="left" valign="middle">subjectInfoAccess</cell>
- <cell align="left" valign="middle">How to access CA information of the subject of the certificate.</cell>
- </row>
- <tcaption>PKIX Extensions</tcaption>
- </table>
- </section>
+ <p>Certificate handling is now handled by the <c>public_key</c> application.</p>
+ <p>
+ DER encoded certificates returned by <c>ssl:peercert/1</c> can for example
+ be decoded by the <c>public_key:pkix_decode_cert/2</c> function.
+ </p>
</section>
</chapter>
diff --git a/lib/ssl/doc/src/remember.xml b/lib/ssl/doc/src/remember.xml
deleted file mode 100644
index 799627a33c..0000000000
--- a/lib/ssl/doc/src/remember.xml
+++ /dev/null
@@ -1,83 +0,0 @@
-<?xml version="1.0" encoding="latin1" ?>
-<!DOCTYPE chapter SYSTEM "chapter.dtd">
-
-<chapter>
- <header>
- <copyright>
- <year>2003</year><year>2009</year>
- <holder>Ericsson AB. All Rights Reserved.</holder>
- </copyright>
- <legalnotice>
- 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.
-
- </legalnotice>
-
- <title>PKIX Certificates</title>
- <prepared>UAB/F/P Peter H&ouml;gfeldt</prepared>
- <docno></docno>
- <date>2003-06-09</date>
- <rev>A</rev>
- <file>pkix_certs.sgml</file>
- </header>
-
- <section>
- <title>Introduction to Certificates</title>
- <p><em>Outline:</em></p>
- <list type="bulleted">
- <item>SSL/TLS protocol - server must have certificate - -what
- the the server sends to the client - client may verify the
- server - server may ask client for certificate - what the
- client sends to the server - server may then verify the client
- - verification - certificate chains - root certificates -
- public keys - key agreement - purpose of certificate - main
- contents of certificate - contents have increased as time went
- by - common file formats for certificates.
- </item>
- <item>private keys - password protection - key generation - file
- formats.
- </item>
- <item>ssl_pkix and alternate decodings.
- </item>
- <item>Attribute Certificates (not used by SSL).
- </item>
- <item>Certificate requests - certificate authorities - signing of
- certificates - certificate revocation lists.
- </item>
- <item>standards: ASN.1, X.509, X.520, PKIX, PKCS, PEM.
- </item>
- <item>incompatibilities between standards (X.509-1997 vs old) - the
- ASN.1 problem of ANY, BIT STRING and OCTET STRING - the module
- ssl_pkix.
- </item>
- <item>test suites: NIST
- </item>
- <item>Warnings: *creation* of trusted certificate (OpenSSL).
- </item>
- <item>Erlang SSL and certificates
- </item>
- <item>The need for seeding the random generator. See also John
- S. Denker: High-Entropy Symbol Generator
- (http://www.monmouth.com/~jsd).
- </item>
- <item>links to standards and documents. Books (Rescorla).
- </item>
- <item>ASN.1 crash course.
- </item>
- <item>Nagel algorithm.
- </item>
- </list>
- <p>For an introduction to ASN.1 see <url href="http://asn1.elibel.tm.fr/">ASN.1 Information Site</url>.
- </p>
- </section>
-</chapter>
-
-
diff --git a/lib/ssl/doc/src/ssl.xml b/lib/ssl/doc/src/ssl.xml
index 9b780b14ce..217eb791d0 100644
--- a/lib/ssl/doc/src/ssl.xml
+++ b/lib/ssl/doc/src/ssl.xml
@@ -347,39 +347,17 @@
</desc>
</func>
<func>
- <name>peercert(Socket) -> </name>
- <name>peercert(Socket, Opts) -> {ok, Cert} | {ok, Subject} | {error, Reason}</name>
+ <name>peercert(Socket) -> {ok, Cert} | {error, Reason}</name>
<fsummary>Return the peer certificate.</fsummary>
<type>
<v>Socket = sslsocket()</v>
- <v>Opts = [pkix | ssl | subject]()</v>
- <v>Cert = term()()</v>
+ <v>Cert = binary()()</v>
<v>Subject = term()()</v>
</type>
<desc>
- <p><c>peercert(Cert)</c> is equivalent to <c>peercert(Cert, [])</c>.
- </p>
- <p>The form of the returned certificate depends on the
- options.
- </p>
- <p>If the options list is empty the certificate is returned as
- a DER encoded binary.
- </p>
- <p>The options <c>pkix</c> and <c>ssl</c> implies that the
- certificate is returned as a parsed ASN.1 structure in the
- form of an Erlang term.
- </p>
- <p>The <c>ssl</c> option gives a more elaborate return
- structure, with more explicit information. In particular
- object identifiers are replaced by atoms.
- </p>
- <p>The options <c>pkix</c>, and <c>ssl</c> are mutually
- exclusive.
- </p>
- <p>The option <c>subject</c> implies that only the subject's
- distinguished name part of the peer certificate is returned.
- It can only be used together with the option <c>pkix</c> or
- the option <c>ssl</c>.</p>
+ <p>Returns the DER encoded peer certificate, the certificate can be decoded with
+ <c>public_key:pkix_decode_cert/2</c>.
+ </p>
</desc>
</func>
<func>
@@ -719,8 +697,7 @@
<section>
<title>SEE ALSO</title>
- <p>gen_tcp(3), inet(3)
- </p>
+ <p>gen_tcp(3), inet(3) public_key(3) </p>
</section>
</erlref>
diff --git a/lib/wx/api_gen/wxapi.conf b/lib/wx/api_gen/wxapi.conf
index df154f0125..4a646650ea 100644
--- a/lib/wx/api_gen/wxapi.conf
+++ b/lib/wx/api_gen/wxapi.conf
@@ -985,7 +985,9 @@
{class, wxFileDialog, wxDialog, [{skip, [{wxFileDialog,0}]}],
['wxFileDialog','~wxFileDialog','GetDirectory','GetFilename',
{'GetFilenames',[{"files", out}]},
- 'GetFilterIndex','GetMessage','GetPath','GetPaths','GetWildcard',
+ 'GetFilterIndex','GetMessage','GetPath',
+ {'GetPaths', [{"paths", out}]},
+ 'GetWildcard',
'SetDirectory','SetFilename','SetFilterIndex','SetMessage','SetPath',
'SetWildcard']}.
diff --git a/lib/wx/c_src/gen/wxe_funcs.cpp b/lib/wx/c_src/gen/wxe_funcs.cpp
index cb662fc91b..ccbacce9b9 100644
--- a/lib/wx/c_src/gen/wxe_funcs.cpp
+++ b/lib/wx/c_src/gen/wxe_funcs.cpp
@@ -20582,19 +20582,11 @@ case wxFileDialog_GetPath: { // wxFileDialog::GetPath
break;
}
case wxFileDialog_GetPaths: { // wxFileDialog::GetPaths
- wxFileDialog *This = (wxFileDialog *) getPtr(bp,memenv); bp += 4;
- int * pathsLen = (int *) bp; bp += 4;
wxArrayString paths;
- int pathsASz = 0, * pathsTemp;
- for(int i=0; i < *pathsLen; i++) {
- pathsTemp = (int *) bp; bp += 4;
- paths.Add(wxString(bp, wxConvUTF8));
- bp += *pathsTemp;
- pathsASz += *pathsTemp+4;
- }
- bp += (8-((0+ pathsASz) & 7 )) & 7;
+ wxFileDialog *This = (wxFileDialog *) getPtr(bp,memenv); bp += 4;
if(!This) throw wxe_badarg(0);
This->GetPaths(paths);
+ rt.add(paths);
break;
}
case wxFileDialog_GetWildcard: { // wxFileDialog::GetWildcard
diff --git a/lib/wx/doc/src/Makefile b/lib/wx/doc/src/Makefile
index d18daa753a..fd9f7441a3 100644
--- a/lib/wx/doc/src/Makefile
+++ b/lib/wx/doc/src/Makefile
@@ -31,12 +31,6 @@ GenMods = $(shell ls ../../src/gen | grep 'wx[A-Z].*\.erl') \
glu.erl \
gl.erl
-# GenMods = \
-# wx_misc.erl \
-# glu.erl \
-# gl.erl
-
-
ModsNoExt = $(ErlMods:%.erl=%) $(GenMods:%.erl=%)
ifneq ($(INSIDE_ERLSRC),true)
@@ -126,9 +120,9 @@ gifs: $(GIF_FILES:%=$(HTMLDIR)/%)
xml: $(XML_REF3_FILES) $(XML_CHAPTER_FILES)
-ref_man.xml: ref_man.src.xml
+ref_man.xml: ref_man.xml.src
@echo Preparing ref_man.xml
- @cat ref_man.src.xml > ref_man.xml
+ @cat ref_man.xml.src > ref_man.xml
@for d in $(ModsNoExt); do \
echo " <xi:include href=\"$$d.xml\"/>" >> ref_man.xml ; \
done
diff --git a/lib/wx/doc/src/ref_man.src.xml b/lib/wx/doc/src/ref_man.xml.src
index 77fd16b050..77fd16b050 100644
--- a/lib/wx/doc/src/ref_man.src.xml
+++ b/lib/wx/doc/src/ref_man.xml.src
diff --git a/lib/wx/src/gen/wxFileDialog.erl b/lib/wx/src/gen/wxFileDialog.erl
index 22b39aa150..efe1ff57f3 100644
--- a/lib/wx/src/gen/wxFileDialog.erl
+++ b/lib/wx/src/gen/wxFileDialog.erl
@@ -31,7 +31,7 @@
-module(wxFileDialog).
-include("wxe.hrl").
-export([destroy/1,getDirectory/1,getFilename/1,getFilenames/1,getFilterIndex/1,
- getMessage/1,getPath/1,getPaths/2,getWildcard/1,new/1,new/2,setDirectory/2,
+ getMessage/1,getPath/1,getPaths/1,getWildcard/1,new/1,new/2,setDirectory/2,
setFilename/2,setFilterIndex/2,setMessage/2,setPath/2,setWildcard/2]).
%% inherited exports
@@ -152,15 +152,12 @@ getPath(#wx_ref{type=ThisT,ref=ThisRef}) ->
wxe_util:call(?wxFileDialog_GetPath,
<<ThisRef:32/?UI>>).
-%% @spec (This::wxFileDialog(), Paths::[[string()]]) -> ok
+%% @spec (This::wxFileDialog()) -> [[string()]]
%% @doc See <a href="http://www.wxwidgets.org/manuals/stable/wx_wxfiledialog.html#wxfiledialoggetpaths">external documentation</a>.
-getPaths(#wx_ref{type=ThisT,ref=ThisRef},Paths)
- when is_list(Paths) ->
+getPaths(#wx_ref{type=ThisT,ref=ThisRef}) ->
?CLASS(ThisT,wxFileDialog),
- Paths_UCA = [unicode:characters_to_binary([PathsTemp,0]) ||
- PathsTemp <- Paths],
- wxe_util:cast(?wxFileDialog_GetPaths,
- <<ThisRef:32/?UI,(length(Paths_UCA)):32/?UI, (<< <<(byte_size(UC_Str)):32/?UI, UC_Str/binary>>|| UC_Str <- Paths_UCA>>)/binary, 0:(((8- ((0 + lists:sum([byte_size(S)+4||S<-Paths_UCA])) band 16#7)) band 16#7))/unit:8>>).
+ wxe_util:call(?wxFileDialog_GetPaths,
+ <<ThisRef:32/?UI>>).
%% @spec (This::wxFileDialog()) -> string()
%% @doc See <a href="http://www.wxwidgets.org/manuals/stable/wx_wxfiledialog.html#wxfiledialoggetwildcard">external documentation</a>.