This commit is contained in:
parent
5c07cff83f
commit
b3a41abe91
13
.cproject
13
.cproject
|
@ -131,9 +131,18 @@
|
|||
<useDefaultCommand>true</useDefaultCommand>
|
||||
<runAllBuilders>true</runAllBuilders>
|
||||
</target>
|
||||
<target name="cliever" path="APIG" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||
<target name="dirs" path="APIG" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||
<buildCommand>make</buildCommand>
|
||||
<buildTarget>cliever</buildTarget>
|
||||
<buildArguments/>
|
||||
<buildTarget>dirs</buildTarget>
|
||||
<stopOnError>true</stopOnError>
|
||||
<useDefaultCommand>true</useDefaultCommand>
|
||||
<runAllBuilders>true</runAllBuilders>
|
||||
</target>
|
||||
<target name="ausreg_cd" path="APIG" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
||||
<buildCommand>make</buildCommand>
|
||||
<buildArguments/>
|
||||
<buildTarget>ausreg_cd</buildTarget>
|
||||
<stopOnError>true</stopOnError>
|
||||
<useDefaultCommand>true</useDefaultCommand>
|
||||
<runAllBuilders>true</runAllBuilders>
|
||||
|
|
|
@ -0,0 +1,127 @@
|
|||
##################################################
|
||||
# Makefile for building lib and main test routine#
|
||||
##################################################
|
||||
LOCATION=authoring
|
||||
|
||||
SYSTEM = $(shell uname -s)
|
||||
|
||||
CXX = g++
|
||||
CC = gcc
|
||||
|
||||
#PRODORDEV += -O2
|
||||
PRODORDEV += -ggdb3
|
||||
|
||||
CXXFLAGS = $(PRODORDEV) -Wall -Wpointer-arith -Wcast-qual -D_REENTRANT -fPIC
|
||||
CPPFLAGS = -fPIC -D_GNU_SOURCE
|
||||
CXXFLAGS += -D_GNU_SOURCE -O0
|
||||
|
||||
ifeq ($(LOCATION),authoring)
|
||||
XALAN_LIB_DIR = /usr/lib/x86_64-linux-gnu/
|
||||
endif
|
||||
ifeq ($(LOCATION),production)
|
||||
XALAN_LIB_DIR = /usr/lib/
|
||||
endif
|
||||
XALAN_LIB = xalan-c
|
||||
XALAN_INC_DIR = /usr/include/xalanc
|
||||
XERCES_LIB_DIR = /usr/lib/
|
||||
XERCES_LIB = xerces-c
|
||||
XERCES_INC_DIR = /usr/include/xercesc/
|
||||
|
||||
include xml-deps.mk
|
||||
|
||||
##### Set this to the location of the library to be produced
|
||||
|
||||
BUILD_LIB_DIR = lib
|
||||
BUILD_OBJ_DIR = build
|
||||
|
||||
###### Include Paths
|
||||
|
||||
INCLUDE_DIR = -I . -I $(XERCES_INC_DIR) -I $(XALAN_INC_DIR)
|
||||
|
||||
build_obj_dir = $(BUILD_OBJ_DIR)
|
||||
|
||||
src_dirs_cpp = se se/secDNS common session xml
|
||||
src_dirs_c = config
|
||||
srcs_all = $(foreach dir,$(src_dirs_cpp),$(wildcard $(dir)/*.cpp))
|
||||
srcs_all += $(foreach dir,$(src_dirs_c),$(wildcard $(dir)/*.c))
|
||||
|
||||
srcs = $(filter-out %Test.cpp,$(srcs_all))
|
||||
objs = $(foreach file,$(srcs),$(build_obj_dir)/$(basename $(notdir $(file))).o)
|
||||
test_srcs = $(filter %Test.cpp,$(srcs_all))
|
||||
test_objs = $(foreach file,$(test_srcs),$(build_obj_dir)/$(basename $(notdir $(file))).o)
|
||||
test_execs = $(subst .o,,$(test_objs))
|
||||
|
||||
calc_deps = \
|
||||
$(CC) -MT '$(build_obj_dir)/$(basename $(notdir $@)).o $@' -MF $@ -MM $(CPPFLAGS) $(INCLUDE_DIR) $<
|
||||
|
||||
all: dirs $(objs) $(BUILD_LIB_DIR)/libAusRegEPPTK.so
|
||||
|
||||
%.d: %.c
|
||||
$(calc_deps)
|
||||
%.d: %.cpp
|
||||
$(calc_deps)
|
||||
include $(foreach name,$(srcs_all),$(basename $(name)).d)
|
||||
|
||||
vpath %.cpp ./ \
|
||||
./se\
|
||||
./se/secDNS\
|
||||
./xml\
|
||||
./common\
|
||||
./session\
|
||||
|
||||
vpath %.c ./config
|
||||
|
||||
vpath %.o ../build
|
||||
|
||||
####### Implicit rules
|
||||
|
||||
.SUFFIXES: .cpp .c
|
||||
|
||||
$(BUILD_OBJ_DIR)/%.o: %.cpp
|
||||
$(CXX) $(CXXFLAGS) -c -o $@ $(INCLUDE_DIR) $<
|
||||
|
||||
$(BUILD_OBJ_DIR)/%.o: %.c
|
||||
$(CC) $(CPPFLAGS) -c -o $@ $(INCLUDE_DIR) $<
|
||||
|
||||
|
||||
LDFLAGS_TESTS = -L$(BUILD_LIB_DIR) -lAusRegEPPTK \
|
||||
-L$(XALAN_LIB_DIR) -lxalan-c -lxalanMsg -licuuc -licudata \
|
||||
-L$(XERCES_LIB_DIR) -lxerces-c \
|
||||
-lssl \
|
||||
-lrt
|
||||
|
||||
$(BUILD_OBJ_DIR)/%: $(BUILD_OBJ_DIR)/%.o
|
||||
$(CXX) $(LDFLAGS_TESTS) -o $@ $<
|
||||
|
||||
.PHONY: doc clean dclean
|
||||
####### Build rules
|
||||
|
||||
#libAusreg_EPP_toolkit.a: $(OBJECTS)
|
||||
# $(LIB_ARCHIVER) $(LIB_FLAGS) $(BUILD_LIB_DIR)/$@ $^
|
||||
|
||||
|
||||
.PHONY: tests
|
||||
tests: all $(test_execs)
|
||||
|
||||
|
||||
.PHONY: dirs
|
||||
dirs:
|
||||
-mkdir -p $(BUILD_LIB_DIR)
|
||||
-mkdir -p $(BUILD_OBJ_DIR)
|
||||
|
||||
libAusRegEPPTK.so:
|
||||
$(BUILD_LIB_DIR)/libAusRegEPPTK.so: $(objs)
|
||||
$(CXX) $(LDFLAGS) $(PRODORDEV) -shared $^ -o $@
|
||||
|
||||
doc:
|
||||
doxygen etc/Doxyfile
|
||||
|
||||
clean:
|
||||
$(RM) $(objs) $(BUILD_LIB_DIR)/libAusRegEPPTK.so *~
|
||||
$(RM) -r $(BUILD_OBJ_DIR)
|
||||
$(RM) -r $(BUILD_LIB_DIR)
|
||||
|
||||
dclean:
|
||||
$(MAKE) clean
|
||||
$(RM) */*.d
|
||||
|
|
@ -0,0 +1,146 @@
|
|||
A. Software Requirements
|
||||
------------------------
|
||||
|
||||
1. GNU Make 3.80 or later
|
||||
2. GCC 3.4.6 (for gcc and g++)
|
||||
3. Xerces C++ 2.7.0
|
||||
4. Xalan C++ 1.0
|
||||
5. OpenSSL 0.9.7a or later
|
||||
6. Doxygen 1.3.9.1 (required to produce API documentation)
|
||||
|
||||
Notes
|
||||
The software library may build with an earlier GCC release, but has only been
|
||||
verified on GCC 3.4.6. It was developed on 64-bit Redhat Enterprise Linux ES
|
||||
4 using 64-bit supporting libraries (Xerces, Xalan, OpenSSL).
|
||||
|
||||
|
||||
B. Build Instructions
|
||||
---------------------
|
||||
|
||||
1. Set the values of the following environment variables:
|
||||
XALAN_LIB_DIR
|
||||
XALAN_LIB
|
||||
XALAN_INC_DIR
|
||||
XERCES_LIB_DIR
|
||||
XERCES_LIB
|
||||
XERCES_INC_DIR
|
||||
Examples:
|
||||
$ XALAN_LIB_DIR=/usr/local/xalan-c/lib
|
||||
$ XALAN_LIB=xalan-c
|
||||
$ XALAN_INC_DIR=/usr/local/xalan-c/include
|
||||
$ XERCES_LIB_DIR=/usr/lib
|
||||
$ XERCES_LIB=xerces-c
|
||||
$ XERCES_INC_DIR=/usr/include/xercesc
|
||||
$ export XALAN_LIB_DIR XALAN_LIB XALAN_INC_DIR XERCES_LIB_DIR XERCES_LIB XERCES_INC_DIR
|
||||
|
||||
2. Verify version of tools.
|
||||
$ make --version$ make --version
|
||||
GNU Make 3.80
|
||||
Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
This is free software; see the source for copying conditions.
|
||||
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
|
||||
PARTICULAR PURPOSE.
|
||||
|
||||
$ gcc --version
|
||||
gcc (GCC) 3.4.6 20060404 (Red Hat 3.4.6-8)
|
||||
Copyright (C) 2006 Free Software Foundation, Inc.
|
||||
This is free software; see the source for copying conditions. There is NO
|
||||
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
|
||||
$ openssl version
|
||||
OpenSSL 0.9.7a Feb 19 2003
|
||||
|
||||
$ doxygen --version
|
||||
1.3.9.1
|
||||
|
||||
2. Unpack the toolkit source (one of the following):
|
||||
> tar xf cpptk2_release.tar
|
||||
> tar zxf cpptk2_release.tar.gz
|
||||
> tar jxf cpptk2_release.tar.bz2
|
||||
|
||||
3. Build the C++ Toolkit shared library:
|
||||
> make
|
||||
|
||||
4. The previous command will leave object files in the bin directory and, most
|
||||
importantly, the shared object file (libAusreg_EPP_toolkit.so) in the lib
|
||||
directory.
|
||||
|
||||
|
||||
C. Usage Information and Advice
|
||||
-------------------------------
|
||||
|
||||
1. When using the toolkit, the LD_LIBRARY_PATH should contain the lib
|
||||
directory, or else the libAusreg_EPP_toolkit.so file shold be placed in a
|
||||
system library directory, or the linker should otherwise be made aware of the
|
||||
location of the libAusreg_EPP_toolkit.so file (such as by using ldconfig).
|
||||
Also, the linker will need to find the Xalan and Xerces libraries (by similar
|
||||
means).
|
||||
|
||||
2. A configuration file (see toolkit2.conf for a sample file) must be available
|
||||
to the toolkit at startup. It is recommended that this file be named
|
||||
absolutely. This file directs the library to the location of other resources
|
||||
required for correct operation. The user should ensure that each resource
|
||||
named in the configuration file resolves to an available file on the system
|
||||
(such as .xsd files). The sample configuration file is in the 'etc' directory.
|
||||
|
||||
4. XML schema definition files are in the 'resources' directory. They may be
|
||||
copied to another location as appropriate to the client's environment, but such
|
||||
a location must be defined as described in step C.2.
|
||||
|
||||
|
||||
D. Running Bundled Tests
|
||||
------------------------
|
||||
|
||||
There are a set of unit tests provided with the source release of the C++
|
||||
toolkit. Follow the steps below to run these tests. In the examples, phrases
|
||||
delimited by < and > should be replaced by suitable values, such as:
|
||||
ORG=<organisation-name>
|
||||
to be replaced with:
|
||||
ORG="AusRegistry Pty Ltd"
|
||||
|
||||
1. Ensure the system requirements are met.
|
||||
|
||||
2. Obtain the latest C++ toolkit source release.
|
||||
|
||||
3. Obtain a valid username/password combination from the Registry server.
|
||||
|
||||
4. Generate a private key and corresponding public certificate signing request,
|
||||
as documented in the Registrar Help Centre (www.ausregistry.net.au). Define
|
||||
the location of the private key and the certificate file returned by Registry
|
||||
support staff in the toolkit configuration file. You will also receive a
|
||||
CAfile from the Registry operator. The location of this must be specified by
|
||||
the ssl.ca.location configuration parameter. The other parameters are
|
||||
ssl.cert.location, ssl.privatekey.location and ssl.privatekey.pass for the
|
||||
location of the public certificate and private key files and the passphrase of
|
||||
the private key, respectively.
|
||||
|
||||
5. Copy or modify the site.properties file from the 'etc' directory of the
|
||||
Toolkit source release, and modify the parameters to suit your requirements.
|
||||
The username and password are as obtained in (3) above. Registry support
|
||||
should provide the location (hostname and port) of a suitable EPP server for
|
||||
testing.
|
||||
Note: the environment variable EPP_SITE_PROPERTIES defines the location of the
|
||||
modified site.properties file and should be stated as an absolute filename.
|
||||
|
||||
Example:
|
||||
export EPP_SITE_PROPERTIES=/home/eppclient/etc/site-test.properties
|
||||
|
||||
6. Run the supplied tests (will build the Toolkit library if not already built).
|
||||
$ make tests
|
||||
|
||||
9. Verify the results of the test run. If the test run is successful, then
|
||||
there will be no output, otherwise each failed test will be reported to the
|
||||
screen. Failure details are available in the target/test_reports directory.
|
||||
Log messages are written by default to a file name 'log' in the working
|
||||
directory. Only the messages from the last test class are available after the
|
||||
test run completes.
|
||||
|
||||
If the tests passed, congratulations! You have successfully configured the
|
||||
dependencies of the toolkit. The next step is to consult the user manual,
|
||||
which is available from the Registry Portal. Keep track of the resources
|
||||
created during this procedure, especially the private key and public
|
||||
certificate, as these will be required by the toolkit when integrated into your
|
||||
application.
|
||||
|
||||
|
||||
--- End of README.txt ---
|
|
@ -0,0 +1,20 @@
|
|||
AusRegistry's EPP Client Library for the C++ Programming Language.
|
||||
|
||||
Changes in version 1.3.2
|
||||
* Change API on TLSSocket. writeInt(int i) now throws SSLException.
|
||||
* Blocked SIGPIPE signal as work around fix for OpenSSL bug in version (openssl-0.9.8e-22.el5).
|
||||
* Fixed exception handling mismatches in TLSSession class.
|
||||
|
||||
Changes in version 1.3.1
|
||||
* Corrected sample hostname value in toolkit2.conf.
|
||||
|
||||
Changes in version 1.3
|
||||
* Added classes to support DNSSEC through SecDNS-1.1 schema
|
||||
|
||||
Changes in version 1.2
|
||||
* Added classes to support Key Value extensions (DomainInfoKVResponseExtension, DomainKVCommandExtension, KVExtension)
|
||||
* Added classes to support generic Domain Registrant Transfer command (DomainRegistrantTransfer)
|
||||
|
||||
Changes in version 1.1
|
||||
* Added classes to support Domain Expiry Synchronisation (DomainUpdateSyncCommandExtension)
|
||||
* Fixed memory leaks
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue