TAP3
git-svn-id: https://asn1c.svn.sourceforge.net/svnroot/asn1c/trunk@798 59561ff5-6e30-0410-9f3c-9617f08c8826
diff --git a/examples/sample.source.TAP3/Makefile b/examples/sample.source.TAP3/Makefile
new file mode 100644
index 0000000..b6a6c9a
--- /dev/null
+++ b/examples/sample.source.TAP3/Makefile
@@ -0,0 +1,708 @@
+ASN_MODULE_SOURCES= \
+ DataInterChange.c \
+ TransferBatch.c \
+ Notification.c \
+ CallEventDetailList.c \
+ CallEventDetail.c \
+ BatchControlInfo.c \
+ AccountingInfo.c \
+ NetworkInfo.c \
+ MessageDescriptionInfoList.c \
+ MobileOriginatedCall.c \
+ MobileTerminatedCall.c \
+ SupplServiceEvent.c \
+ ServiceCentreUsage.c \
+ GprsCall.c \
+ ContentTransaction.c \
+ LocationService.c \
+ AuditControlInfo.c \
+ AccessPointNameNI.c \
+ AccessPointNameOI.c \
+ ActualDeliveryTimeStamp.c \
+ AddressStringDigits.c \
+ AdvisedCharge.c \
+ AdvisedChargeCurrency.c \
+ AdvisedChargeInformation.c \
+ AgeOfLocation.c \
+ BasicService.c \
+ BasicServiceCode.c \
+ BasicServiceCodeList.c \
+ BasicServiceUsed.c \
+ BasicServiceUsedList.c \
+ BearerServiceCode.c \
+ CalledNumber.c \
+ CalledPlace.c \
+ CalledRegion.c \
+ CallEventDetailsCount.c \
+ CallEventStartTimeStamp.c \
+ CallingNumber.c \
+ CallOriginator.c \
+ CallReference.c \
+ CallTypeGroup.c \
+ CallTypeLevel1.c \
+ CallTypeLevel2.c \
+ CallTypeLevel3.c \
+ CamelDestinationNumber.c \
+ CamelInvocationFee.c \
+ CamelServiceKey.c \
+ CamelServiceLevel.c \
+ CamelServiceUsed.c \
+ CauseForTerm.c \
+ CellId.c \
+ Charge.c \
+ ChargeableSubscriber.c \
+ ChargeableUnits.c \
+ ChargeDetail.c \
+ ChargeDetailList.c \
+ ChargeDetailTimeStamp.c \
+ ChargedItem.c \
+ ChargedPartyEquipment.c \
+ ChargedPartyHomeIdentification.c \
+ ChargedPartyHomeIdList.c \
+ ChargedPartyIdentification.c \
+ ChargedPartyIdentifier.c \
+ ChargedPartyIdList.c \
+ ChargedPartyIdType.c \
+ ChargedPartyInformation.c \
+ ChargedPartyLocation.c \
+ ChargedPartyLocationList.c \
+ ChargedPartyStatus.c \
+ ChargedUnits.c \
+ ChargeInformation.c \
+ ChargeInformationList.c \
+ ChargeRefundIndicator.c \
+ ChargeType.c \
+ ChargingId.c \
+ ChargingPoint.c \
+ ChargingTimeStamp.c \
+ ClirIndicator.c \
+ Commission.c \
+ CompletionTimeStamp.c \
+ ContentChargingPoint.c \
+ ContentProvider.c \
+ ContentProviderIdentifier.c \
+ ContentProviderIdList.c \
+ ContentProviderIdType.c \
+ ContentProviderName.c \
+ ContentServiceUsed.c \
+ ContentServiceUsedList.c \
+ ContentTransactionBasicInfo.c \
+ ContentTransactionCode.c \
+ ContentTransactionType.c \
+ CseInformation.c \
+ CurrencyConversion.c \
+ CurrencyConversionList.c \
+ CustomerIdentifier.c \
+ CustomerIdType.c \
+ DataVolume.c \
+ DataVolumeIncoming.c \
+ DataVolumeOutgoing.c \
+ DateTime.c \
+ DateTimeLong.c \
+ DefaultCallHandlingIndicator.c \
+ DepositTimeStamp.c \
+ Destination.c \
+ DestinationNetwork.c \
+ DialledDigits.c \
+ Discount.c \
+ DiscountableAmount.c \
+ DiscountApplied.c \
+ DiscountCode.c \
+ DiscountInformation.c \
+ Discounting.c \
+ DiscountingList.c \
+ DiscountRate.c \
+ DiscountValue.c \
+ DistanceChargeBandCode.c \
+ EarliestCallTimeStamp.c \
+ EquipmentId.c \
+ EquipmentIdType.c \
+ Esn.c \
+ ExchangeRate.c \
+ ExchangeRateCode.c \
+ FileAvailableTimeStamp.c \
+ FileCreationTimeStamp.c \
+ FileSequenceNumber.c \
+ FileTypeIndicator.c \
+ FixedDiscountValue.c \
+ Fnur.c \
+ GeographicalLocation.c \
+ GprsBasicCallInformation.c \
+ GprsChargeableSubscriber.c \
+ GprsDestination.c \
+ GprsLocationInformation.c \
+ GprsNetworkLocation.c \
+ GprsServiceUsed.c \
+ GsmChargeableSubscriber.c \
+ GuaranteedBitRate.c \
+ HomeBid.c \
+ HomeIdentifier.c \
+ HomeIdType.c \
+ HomeLocationDescription.c \
+ HomeLocationInformation.c \
+ HorizontalAccuracyDelivered.c \
+ HorizontalAccuracyRequested.c \
+ HSCSDIndicator.c \
+ Imei.c \
+ ImeiOrEsn.c \
+ Imsi.c \
+ IMSSignallingContext.c \
+ InternetServiceProvider.c \
+ InternetServiceProviderIdList.c \
+ IspIdentifier.c \
+ IspIdType.c \
+ ISPList.c \
+ NetworkIdType.c \
+ NetworkIdentifier.c \
+ Network.c \
+ NetworkList.c \
+ LatestCallTimeStamp.c \
+ LCSQosDelivered.c \
+ LCSQosRequested.c \
+ LCSRequestTimestamp.c \
+ LCSSPIdentification.c \
+ LCSSPIdentificationList.c \
+ LCSSPInformation.c \
+ LCSTransactionStatus.c \
+ LocalCurrency.c \
+ LocalTimeStamp.c \
+ LocationArea.c \
+ LocationDescription.c \
+ LocationIdentifier.c \
+ LocationIdType.c \
+ LocationInformation.c \
+ LocationServiceUsage.c \
+ MaximumBitRate.c \
+ Mdn.c \
+ MessageDescription.c \
+ MessageDescriptionCode.c \
+ MessageDescriptionInformation.c \
+ MessageStatus.c \
+ MessageType.c \
+ Min.c \
+ MinChargeableSubscriber.c \
+ MoBasicCallInformation.c \
+ Msisdn.c \
+ MtBasicCallInformation.c \
+ NetworkAccessIdentifier.c \
+ NetworkId.c \
+ NetworkInitPDPContext.c \
+ NetworkLocation.c \
+ NonChargedNumber.c \
+ NumberOfDecimalPlaces.c \
+ ObjectType.c \
+ OperatorSpecInfoList.c \
+ OperatorSpecInformation.c \
+ OrderPlacedTimeStamp.c \
+ OriginatingNetwork.c \
+ PacketDataProtocolAddress.c \
+ PaidIndicator.c \
+ PartialTypeIndicator.c \
+ PaymentMethod.c \
+ PdpAddress.c \
+ PDPContextStartTimestamp.c \
+ PlmnId.c \
+ PositioningMethod.c \
+ PriorityCode.c \
+ RapFileSequenceNumber.c \
+ RecEntityCode.c \
+ RecEntityCodeList.c \
+ RecEntityId.c \
+ RecEntityInfoList.c \
+ RecEntityInformation.c \
+ RecEntityType.c \
+ Recipient.c \
+ ReleaseVersionNumber.c \
+ RequestedDeliveryTimeStamp.c \
+ ResponseTime.c \
+ ResponseTimeCategory.c \
+ ScuBasicInformation.c \
+ ScuChargeType.c \
+ ScuTimeStamps.c \
+ ScuChargeableSubscriber.c \
+ Sender.c \
+ ServingBid.c \
+ ServingLocationDescription.c \
+ ServingNetwork.c \
+ ServingPartiesInformation.c \
+ SimChargeableSubscriber.c \
+ SimToolkitIndicator.c \
+ SMSDestinationNumber.c \
+ SMSOriginator.c \
+ SpecificationVersionNumber.c \
+ SsParameters.c \
+ SupplServiceActionCode.c \
+ SupplServiceCode.c \
+ SupplServiceUsed.c \
+ TapCurrency.c \
+ TapDecimalPlaces.c \
+ TaxableAmount.c \
+ Taxation.c \
+ TaxationList.c \
+ TaxCode.c \
+ TaxInformation.c \
+ TaxInformationList.c \
+ TaxRate.c \
+ TaxType.c \
+ TaxValue.c \
+ TeleServiceCode.c \
+ ThirdPartyInformation.c \
+ ThirdPartyNumber.c \
+ ThreeGcamelDestination.c \
+ TotalAdvisedCharge.c \
+ TotalAdvisedChargeRefund.c \
+ TotalAdvisedChargeValue.c \
+ TotalAdvisedChargeValueList.c \
+ TotalCallEventDuration.c \
+ TotalCharge.c \
+ TotalChargeRefund.c \
+ TotalCommission.c \
+ TotalCommissionRefund.c \
+ TotalDataVolume.c \
+ TotalDiscountRefund.c \
+ TotalDiscountValue.c \
+ TotalTaxRefund.c \
+ TotalTaxValue.c \
+ TotalTransactionDuration.c \
+ TrackedCustomerEquipment.c \
+ TrackedCustomerHomeId.c \
+ TrackedCustomerHomeIdList.c \
+ TrackedCustomerIdentification.c \
+ TrackedCustomerIdList.c \
+ TrackedCustomerInformation.c \
+ TrackedCustomerLocation.c \
+ TrackedCustomerLocList.c \
+ TrackingCustomerEquipment.c \
+ TrackingCustomerHomeId.c \
+ TrackingCustomerHomeIdList.c \
+ TrackingCustomerIdentification.c \
+ TrackingCustomerIdList.c \
+ TrackingCustomerInformation.c \
+ TrackingCustomerLocation.c \
+ TrackingCustomerLocList.c \
+ TrackingFrequency.c \
+ TrackingPeriod.c \
+ TransactionAuthCode.c \
+ TransactionDescriptionSupp.c \
+ TransactionDetailDescription.c \
+ TransactionIdentifier.c \
+ TransactionShortDescription.c \
+ TransactionStatus.c \
+ TransferCutOffTimeStamp.c \
+ TransparencyIndicator.c \
+ UserProtocolIndicator.c \
+ UtcTimeOffset.c \
+ UtcTimeOffsetCode.c \
+ UtcTimeOffsetInfo.c \
+ UtcTimeOffsetInfoList.c \
+ VerticalAccuracyDelivered.c \
+ VerticalAccuracyRequested.c \
+ AbsoluteAmount.c \
+ Bid.c \
+ Code.c \
+ AsciiString.c \
+ BCDString.c \
+ Currency.c \
+ HexString.c \
+ NumberString.c \
+ PercentageRate.c
+
+ASN_MODULE_HEADERS= \
+ DataInterChange.h \
+ TransferBatch.h \
+ Notification.h \
+ CallEventDetailList.h \
+ CallEventDetail.h \
+ BatchControlInfo.h \
+ AccountingInfo.h \
+ NetworkInfo.h \
+ MessageDescriptionInfoList.h \
+ MobileOriginatedCall.h \
+ MobileTerminatedCall.h \
+ SupplServiceEvent.h \
+ ServiceCentreUsage.h \
+ GprsCall.h \
+ ContentTransaction.h \
+ LocationService.h \
+ AuditControlInfo.h \
+ AccessPointNameNI.h \
+ AccessPointNameOI.h \
+ ActualDeliveryTimeStamp.h \
+ AddressStringDigits.h \
+ AdvisedCharge.h \
+ AdvisedChargeCurrency.h \
+ AdvisedChargeInformation.h \
+ AgeOfLocation.h \
+ BasicService.h \
+ BasicServiceCode.h \
+ BasicServiceCodeList.h \
+ BasicServiceUsed.h \
+ BasicServiceUsedList.h \
+ BearerServiceCode.h \
+ CalledNumber.h \
+ CalledPlace.h \
+ CalledRegion.h \
+ CallEventDetailsCount.h \
+ CallEventStartTimeStamp.h \
+ CallingNumber.h \
+ CallOriginator.h \
+ CallReference.h \
+ CallTypeGroup.h \
+ CallTypeLevel1.h \
+ CallTypeLevel2.h \
+ CallTypeLevel3.h \
+ CamelDestinationNumber.h \
+ CamelInvocationFee.h \
+ CamelServiceKey.h \
+ CamelServiceLevel.h \
+ CamelServiceUsed.h \
+ CauseForTerm.h \
+ CellId.h \
+ Charge.h \
+ ChargeableSubscriber.h \
+ ChargeableUnits.h \
+ ChargeDetail.h \
+ ChargeDetailList.h \
+ ChargeDetailTimeStamp.h \
+ ChargedItem.h \
+ ChargedPartyEquipment.h \
+ ChargedPartyHomeIdentification.h \
+ ChargedPartyHomeIdList.h \
+ ChargedPartyIdentification.h \
+ ChargedPartyIdentifier.h \
+ ChargedPartyIdList.h \
+ ChargedPartyIdType.h \
+ ChargedPartyInformation.h \
+ ChargedPartyLocation.h \
+ ChargedPartyLocationList.h \
+ ChargedPartyStatus.h \
+ ChargedUnits.h \
+ ChargeInformation.h \
+ ChargeInformationList.h \
+ ChargeRefundIndicator.h \
+ ChargeType.h \
+ ChargingId.h \
+ ChargingPoint.h \
+ ChargingTimeStamp.h \
+ ClirIndicator.h \
+ Commission.h \
+ CompletionTimeStamp.h \
+ ContentChargingPoint.h \
+ ContentProvider.h \
+ ContentProviderIdentifier.h \
+ ContentProviderIdList.h \
+ ContentProviderIdType.h \
+ ContentProviderName.h \
+ ContentServiceUsed.h \
+ ContentServiceUsedList.h \
+ ContentTransactionBasicInfo.h \
+ ContentTransactionCode.h \
+ ContentTransactionType.h \
+ CseInformation.h \
+ CurrencyConversion.h \
+ CurrencyConversionList.h \
+ CustomerIdentifier.h \
+ CustomerIdType.h \
+ DataVolume.h \
+ DataVolumeIncoming.h \
+ DataVolumeOutgoing.h \
+ DateTime.h \
+ DateTimeLong.h \
+ DefaultCallHandlingIndicator.h \
+ DepositTimeStamp.h \
+ Destination.h \
+ DestinationNetwork.h \
+ DialledDigits.h \
+ Discount.h \
+ DiscountableAmount.h \
+ DiscountApplied.h \
+ DiscountCode.h \
+ DiscountInformation.h \
+ Discounting.h \
+ DiscountingList.h \
+ DiscountRate.h \
+ DiscountValue.h \
+ DistanceChargeBandCode.h \
+ EarliestCallTimeStamp.h \
+ EquipmentId.h \
+ EquipmentIdType.h \
+ Esn.h \
+ ExchangeRate.h \
+ ExchangeRateCode.h \
+ FileAvailableTimeStamp.h \
+ FileCreationTimeStamp.h \
+ FileSequenceNumber.h \
+ FileTypeIndicator.h \
+ FixedDiscountValue.h \
+ Fnur.h \
+ GeographicalLocation.h \
+ GprsBasicCallInformation.h \
+ GprsChargeableSubscriber.h \
+ GprsDestination.h \
+ GprsLocationInformation.h \
+ GprsNetworkLocation.h \
+ GprsServiceUsed.h \
+ GsmChargeableSubscriber.h \
+ GuaranteedBitRate.h \
+ HomeBid.h \
+ HomeIdentifier.h \
+ HomeIdType.h \
+ HomeLocationDescription.h \
+ HomeLocationInformation.h \
+ HorizontalAccuracyDelivered.h \
+ HorizontalAccuracyRequested.h \
+ HSCSDIndicator.h \
+ Imei.h \
+ ImeiOrEsn.h \
+ Imsi.h \
+ IMSSignallingContext.h \
+ InternetServiceProvider.h \
+ InternetServiceProviderIdList.h \
+ IspIdentifier.h \
+ IspIdType.h \
+ ISPList.h \
+ NetworkIdType.h \
+ NetworkIdentifier.h \
+ Network.h \
+ NetworkList.h \
+ LatestCallTimeStamp.h \
+ LCSQosDelivered.h \
+ LCSQosRequested.h \
+ LCSRequestTimestamp.h \
+ LCSSPIdentification.h \
+ LCSSPIdentificationList.h \
+ LCSSPInformation.h \
+ LCSTransactionStatus.h \
+ LocalCurrency.h \
+ LocalTimeStamp.h \
+ LocationArea.h \
+ LocationDescription.h \
+ LocationIdentifier.h \
+ LocationIdType.h \
+ LocationInformation.h \
+ LocationServiceUsage.h \
+ MaximumBitRate.h \
+ Mdn.h \
+ MessageDescription.h \
+ MessageDescriptionCode.h \
+ MessageDescriptionInformation.h \
+ MessageStatus.h \
+ MessageType.h \
+ Min.h \
+ MinChargeableSubscriber.h \
+ MoBasicCallInformation.h \
+ Msisdn.h \
+ MtBasicCallInformation.h \
+ NetworkAccessIdentifier.h \
+ NetworkId.h \
+ NetworkInitPDPContext.h \
+ NetworkLocation.h \
+ NonChargedNumber.h \
+ NumberOfDecimalPlaces.h \
+ ObjectType.h \
+ OperatorSpecInfoList.h \
+ OperatorSpecInformation.h \
+ OrderPlacedTimeStamp.h \
+ OriginatingNetwork.h \
+ PacketDataProtocolAddress.h \
+ PaidIndicator.h \
+ PartialTypeIndicator.h \
+ PaymentMethod.h \
+ PdpAddress.h \
+ PDPContextStartTimestamp.h \
+ PlmnId.h \
+ PositioningMethod.h \
+ PriorityCode.h \
+ RapFileSequenceNumber.h \
+ RecEntityCode.h \
+ RecEntityCodeList.h \
+ RecEntityId.h \
+ RecEntityInfoList.h \
+ RecEntityInformation.h \
+ RecEntityType.h \
+ Recipient.h \
+ ReleaseVersionNumber.h \
+ RequestedDeliveryTimeStamp.h \
+ ResponseTime.h \
+ ResponseTimeCategory.h \
+ ScuBasicInformation.h \
+ ScuChargeType.h \
+ ScuTimeStamps.h \
+ ScuChargeableSubscriber.h \
+ Sender.h \
+ ServingBid.h \
+ ServingLocationDescription.h \
+ ServingNetwork.h \
+ ServingPartiesInformation.h \
+ SimChargeableSubscriber.h \
+ SimToolkitIndicator.h \
+ SMSDestinationNumber.h \
+ SMSOriginator.h \
+ SpecificationVersionNumber.h \
+ SsParameters.h \
+ SupplServiceActionCode.h \
+ SupplServiceCode.h \
+ SupplServiceUsed.h \
+ TapCurrency.h \
+ TapDecimalPlaces.h \
+ TaxableAmount.h \
+ Taxation.h \
+ TaxationList.h \
+ TaxCode.h \
+ TaxInformation.h \
+ TaxInformationList.h \
+ TaxRate.h \
+ TaxType.h \
+ TaxValue.h \
+ TeleServiceCode.h \
+ ThirdPartyInformation.h \
+ ThirdPartyNumber.h \
+ ThreeGcamelDestination.h \
+ TotalAdvisedCharge.h \
+ TotalAdvisedChargeRefund.h \
+ TotalAdvisedChargeValue.h \
+ TotalAdvisedChargeValueList.h \
+ TotalCallEventDuration.h \
+ TotalCharge.h \
+ TotalChargeRefund.h \
+ TotalCommission.h \
+ TotalCommissionRefund.h \
+ TotalDataVolume.h \
+ TotalDiscountRefund.h \
+ TotalDiscountValue.h \
+ TotalTaxRefund.h \
+ TotalTaxValue.h \
+ TotalTransactionDuration.h \
+ TrackedCustomerEquipment.h \
+ TrackedCustomerHomeId.h \
+ TrackedCustomerHomeIdList.h \
+ TrackedCustomerIdentification.h \
+ TrackedCustomerIdList.h \
+ TrackedCustomerInformation.h \
+ TrackedCustomerLocation.h \
+ TrackedCustomerLocList.h \
+ TrackingCustomerEquipment.h \
+ TrackingCustomerHomeId.h \
+ TrackingCustomerHomeIdList.h \
+ TrackingCustomerIdentification.h \
+ TrackingCustomerIdList.h \
+ TrackingCustomerInformation.h \
+ TrackingCustomerLocation.h \
+ TrackingCustomerLocList.h \
+ TrackingFrequency.h \
+ TrackingPeriod.h \
+ TransactionAuthCode.h \
+ TransactionDescriptionSupp.h \
+ TransactionDetailDescription.h \
+ TransactionIdentifier.h \
+ TransactionShortDescription.h \
+ TransactionStatus.h \
+ TransferCutOffTimeStamp.h \
+ TransparencyIndicator.h \
+ UserProtocolIndicator.h \
+ UtcTimeOffset.h \
+ UtcTimeOffsetCode.h \
+ UtcTimeOffsetInfo.h \
+ UtcTimeOffsetInfoList.h \
+ VerticalAccuracyDelivered.h \
+ VerticalAccuracyRequested.h \
+ AbsoluteAmount.h \
+ Bid.h \
+ Code.h \
+ AsciiString.h \
+ BCDString.h \
+ Currency.h \
+ HexString.h \
+ NumberString.h \
+ PercentageRate.h
+
+ASN_MODULE_HEADERS+=INTEGER.h
+ASN_MODULE_SOURCES+=INTEGER.c
+ASN_MODULE_HEADERS+=asn_SEQUENCE_OF.h
+ASN_MODULE_SOURCES+=asn_SEQUENCE_OF.c
+ASN_MODULE_HEADERS+=asn_SET_OF.h
+ASN_MODULE_SOURCES+=asn_SET_OF.c
+ASN_MODULE_HEADERS+=constr_CHOICE.h
+ASN_MODULE_SOURCES+=constr_CHOICE.c
+ASN_MODULE_HEADERS+=constr_SEQUENCE.h
+ASN_MODULE_SOURCES+=constr_SEQUENCE.c
+ASN_MODULE_HEADERS+=constr_SEQUENCE_OF.h
+ASN_MODULE_SOURCES+=constr_SEQUENCE_OF.c
+ASN_MODULE_HEADERS+=constr_SET_OF.h
+ASN_MODULE_SOURCES+=constr_SET_OF.c
+ASN_MODULE_HEADERS+=asn_application.h
+ASN_MODULE_HEADERS+=asn_system.h
+ASN_MODULE_HEADERS+=asn_codecs.h
+ASN_MODULE_HEADERS+=asn_internal.h
+ASN_MODULE_HEADERS+=OCTET_STRING.h
+ASN_MODULE_SOURCES+=OCTET_STRING.c
+ASN_MODULE_HEADERS+=BIT_STRING.h
+ASN_MODULE_SOURCES+=BIT_STRING.c
+ASN_MODULE_SOURCES+=asn_codecs_prim.c
+ASN_MODULE_HEADERS+=asn_codecs_prim.h
+ASN_MODULE_HEADERS+=ber_tlv_length.h
+ASN_MODULE_SOURCES+=ber_tlv_length.c
+ASN_MODULE_HEADERS+=ber_tlv_tag.h
+ASN_MODULE_SOURCES+=ber_tlv_tag.c
+ASN_MODULE_HEADERS+=ber_decoder.h
+ASN_MODULE_SOURCES+=ber_decoder.c
+ASN_MODULE_HEADERS+=der_encoder.h
+ASN_MODULE_SOURCES+=der_encoder.c
+ASN_MODULE_HEADERS+=constr_TYPE.h
+ASN_MODULE_SOURCES+=constr_TYPE.c
+ASN_MODULE_HEADERS+=constraints.h
+ASN_MODULE_SOURCES+=constraints.c
+ASN_MODULE_HEADERS+=xer_support.h
+ASN_MODULE_SOURCES+=xer_support.c
+ASN_MODULE_HEADERS+=xer_decoder.h
+ASN_MODULE_SOURCES+=xer_decoder.c
+ASN_MODULE_HEADERS+=xer_encoder.h
+ASN_MODULE_SOURCES+=xer_encoder.c
+
+
+lib_LTLIBRARIES=libsomething.la
+libsomething_la_SOURCES=$(ASN_MODULE_SOURCES) $(ASN_MODULE_HEADERS)
+
+# This file may be used as an input for make(3)
+# Remove the lines below to convert it into a pure .am file
+TARGET = tap3dump
+CFLAGS += -I. -DHAVE_CONFIG_H
+OBJS=${ASN_MODULE_SOURCES:.c=.o} $(TARGET).o
+
+all: $(TARGET)
+
+$(TARGET): ${OBJS}
+ $(CC) $(CFLAGS) -o $(TARGET) ${OBJS} $(LDFLAGS) $(LIBS)
+
+.SUFFIXES:
+.SUFFIXES: .c .o
+
+.c.o:
+ $(CC) $(CFLAGS) -o $@ -c $<
+
+clean:
+ rm -f $(TARGET)
+ rm -f $(OBJS)
+
+regen: regenerate-from-asn1-source
+
+regenerate-from-asn1-source:
+ ../../asn1c/asn1c -S ../../skeletons ../tap3.asn1
+
+
+../tap3.asn1:
+ @echo The ../tap3.asn1 file is not yet present.
+ @echo Please read the README file on how to obtain this file.
+ @exit 42
+
+DataInterChange.c: ../tap3.asn1 regenerate.Makefile
+ ./regenerate.Makefile
+ @touch DataInterChange.c
+ make
+
+$(TARGET).o: ../../skeletons/asn-decoder-template.c
+ $(CC) $(CFLAGS) -o $(TARGET).o -c $<
+
+distclean: clean
+ rm -f $(ASN_MODULE_SOURCES) $(ASN_MODULE_HEADERS)
+ rm -f Makefile.am.sample
diff --git a/examples/sample.source.TAP3/README b/examples/sample.source.TAP3/README
new file mode 100644
index 0000000..4df5994
--- /dev/null
+++ b/examples/sample.source.TAP3/README
@@ -0,0 +1,55 @@
+
+GENERAL INFORMATION
+===================
+
+The GSM TAP3 (Transferred Account Procedure, Version 3) decoder.
+Invoking `make` will compile the ASN.1 specifications from the
+../tap3.asn1 file.
+
+THERE IS NO tap3.asn1 FILE THERE YET!
+
+OBTAINING THE TAP3 SPECIFICATION
+================================
+
+To obtain the TAP3 ASN.1 specification, you should go to
+ http://www.gsmworld.com/using/billing/tap3_legal.html
+and agree with their licensing terms by clicking the "I ACCEPT" button.
+
+A .ZIP file with several Microsoft Word .DOC files will download shortly.
+
+You should extract the TAP-0311 ASN.1 module from one of these .DOC files
+and save it as the ../tap3.asn1 file. The ../tap3.asn1 file should start with
+the following line
+ "TAP-0311 DEFINITIONS IMPLICIT TAGS ::="
+and end with the "END" token.
+Be careful not to copy any non-ASN.1 preambles from that .DOC file.
+
+After obtaining the tap3.asn1, type `make` in the directory containing
+this README file.
+
+tap3dump USAGE
+==============
+
+The tap3dump utility may be used to dump the contents of the BER-encoded
+TAP3 data record file:
+
+ ./tap3dump -x tapfile.der # Print as XML (BASIC-XER)
+
+If necessary, a straightforward modification of the
+ ../../skeletons/asn-decoder-template.c
+will allow you to build a converter from the XML (XER) TAP3 format
+back into binary (BER).
+
+The full list of recognized command line options may be obtained with
+
+ > ./tap3dump -h
+ Usage: ./tap3dump [options] <data.ber> ...
+ Where options are:
+ -b <size> Set the i/o buffer size (default is 8192)
+ -c Check ASN.1 constraints after decoding
+ -d Enable debugging (-dd is even better)
+ -n <num> Process files <num> times
+ -s <size> Set the stack usage limit
+ -p Print out the decoded contents
+ -x Print out as XML
+
diff --git a/examples/sample.source.TAP3/config.h b/examples/sample.source.TAP3/config.h
new file mode 100644
index 0000000..30728e1
--- /dev/null
+++ b/examples/sample.source.TAP3/config.h
@@ -0,0 +1,12 @@
+
+extern int opt_debug;
+
+#define ASN_DEBUG(fmt, args...) do { \
+ if(opt_debug < 2) break; \
+ fprintf(stderr, fmt, ##args); \
+ fprintf(stderr, " (%s:%d)\n", \
+ __FILE__, __LINE__); \
+ } while(0)
+
+/* Which type is the PDU; for ../../skeletons/asn-decoder-template.c */
+#define asn_DEF asn_DEF_DataInterChange