
GENERAL INFORMATION
===================

The OMA ULP (UserPlane Location Protocol) decoder.
Invoking `make` will compile the ASN.1 specifications from the
../ulp.asn1 file.

THERE IS NO ulp.asn1 FILE THERE YET!

OBTAINING THE ULP SPECIFICATION
===============================

Due to unclear stanza of Open Mobile Alliance regarding the extraction of
ASN.1 modules from their documents, and also due to some OMA membership
concerns, asn1c can not include the ULP ASN.1 module in its distribution.

To obtain the ULP ASN.1 specification, you should go to
	http://www.openmobilealliance.org/UseAgreement.html
and agree with their licensing terms by clicking the "I ACCEPT" button.

Then, go to http://member.openmobilealliance.org/ftp/Public_documents/LOC/Permanent_documents/
and download the necessary specification file. For example, one of these:
    Version 1.0 specifications (Candidate versions):
	OMA-TS-ULP-V1_0-20070122-C.zip	(V1.0, 2007 January 22)
	OMA-TS-ULP-V1_0-20070613-C.zip	(V1.0, 2007 June 13)
    Version 2.0 specification (Draft version):
	OMA-TS-ULP-V2_0-20070625-D.zip	(V2.0, 2007 April 25)

A .ZIP file with several Microsoft Word .DOC files will download shortly.

You should extract the ASN.1 module from the section 8 of these .DOC files
and save it as the ../ulp.asn1 file. The ../ulp.asn1 file should start with
the following line
	"ULP 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.

ulp-dump USAGE
==============

The ulp-dump utility may be used to dump the contents of the PER-encoded
ULP message record file:

	./ulp-dump ulpfile.per	# Print as XML (BASIC-XER)

The full list of recognized command line options may be obtained with

	> ./ulp-dump -h

