Browse Source

Changes in binaryEncDec.h
Changes in builtInDatatypes.h

FlorianPalm 11 years ago
parent
commit
fd29a40183

+ 46 - 8
OPCUAServer/.cproject

@@ -61,6 +61,7 @@
 		<buildTargets>
 			<target name="all" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>all</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -68,6 +69,7 @@
 			</target>
 			<target name="am--refresh" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>am--refresh</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -75,6 +77,7 @@
 			</target>
 			<target name="check" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>check</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -82,6 +85,7 @@
 			</target>
 			<target name="clean" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>clean</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -89,6 +93,7 @@
 			</target>
 			<target name="ctags" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>ctags</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -96,6 +101,7 @@
 			</target>
 			<target name="ctags-recursive" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>ctags-recursive</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -103,6 +109,7 @@
 			</target>
 			<target name="dist" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>dist</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -110,6 +117,7 @@
 			</target>
 			<target name="dist-all" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>dist-all</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -117,6 +125,7 @@
 			</target>
 			<target name="dist-bzip2" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>dist-bzip2</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -124,6 +133,7 @@
 			</target>
 			<target name="dist-gzip" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>dist-gzip</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -131,6 +141,7 @@
 			</target>
 			<target name="dist-lzip" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>dist-lzip</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -138,6 +149,7 @@
 			</target>
 			<target name="dist-lzma" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>dist-lzma</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -145,6 +157,7 @@
 			</target>
 			<target name="dist-shar" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>dist-shar</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -152,6 +165,7 @@
 			</target>
 			<target name="dist-tarZ" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>dist-tarZ</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -159,6 +173,7 @@
 			</target>
 			<target name="dist-xz" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>dist-xz</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -166,6 +181,7 @@
 			</target>
 			<target name="dist-zip" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>dist-zip</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -173,6 +189,7 @@
 			</target>
 			<target name="distcheck" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>distcheck</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -180,6 +197,7 @@
 			</target>
 			<target name="distclean" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>distclean</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -187,6 +205,7 @@
 			</target>
 			<target name="distclean-tags" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>distclean-tags</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -194,6 +213,7 @@
 			</target>
 			<target name="distcleancheck" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>distcleancheck</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -201,6 +221,7 @@
 			</target>
 			<target name="distdir" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>distdir</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -208,6 +229,7 @@
 			</target>
 			<target name="distuninstallcheck" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>distuninstallcheck</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -215,6 +237,7 @@
 			</target>
 			<target name="dvi" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>dvi</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -222,6 +245,7 @@
 			</target>
 			<target name="html" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>html</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -229,6 +253,7 @@
 			</target>
 			<target name="info" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>info</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -236,6 +261,7 @@
 			</target>
 			<target name="install" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>install</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -243,6 +269,7 @@
 			</target>
 			<target name="install-data" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>install-data</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -250,6 +277,7 @@
 			</target>
 			<target name="install-dvi" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>install-dvi</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -257,6 +285,7 @@
 			</target>
 			<target name="install-exec" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>install-exec</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -264,6 +293,7 @@
 			</target>
 			<target name="install-html" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>install-html</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -271,6 +301,7 @@
 			</target>
 			<target name="install-info" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>install-info</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -278,6 +309,7 @@
 			</target>
 			<target name="install-man" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>install-man</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -285,6 +317,7 @@
 			</target>
 			<target name="install-pdf" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>install-pdf</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -292,6 +325,7 @@
 			</target>
 			<target name="install-ps" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>install-ps</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -299,6 +333,7 @@
 			</target>
 			<target name="install-strip" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>install-strip</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -306,6 +341,7 @@
 			</target>
 			<target name="installcheck" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>installcheck</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -313,6 +349,7 @@
 			</target>
 			<target name="installdirs" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>installdirs</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -320,6 +357,7 @@
 			</target>
 			<target name="maintainer-clean" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>maintainer-clean</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -327,6 +365,7 @@
 			</target>
 			<target name="Makefile" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>Makefile</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -334,6 +373,7 @@
 			</target>
 			<target name="mostlyclean" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>mostlyclean</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -341,6 +381,7 @@
 			</target>
 			<target name="pdf" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>pdf</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -348,6 +389,7 @@
 			</target>
 			<target name="ps" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>ps</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -355,6 +397,7 @@
 			</target>
 			<target name="tags" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>tags</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -362,6 +405,7 @@
 			</target>
 			<target name="tags-recursive" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>tags-recursive</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
@@ -369,21 +413,15 @@
 			</target>
 			<target name="uninstall" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>uninstall</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>
 				<runAllBuilders>false</runAllBuilders>
 			</target>
-			<target name="opcUAServer" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
-				<buildCommand>make</buildCommand>
-				<buildArguments/>
-				<buildTarget>opcUAServer</buildTarget>
-				<stopOnError>true</stopOnError>
-				<useDefaultCommand>true</useDefaultCommand>
-				<runAllBuilders>true</runAllBuilders>
-			</target>
 			<target name="Server" path="src" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
+				<buildArguments/>
 				<buildTarget>Server</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>

+ 10 - 10
OPCUAServer/Makefile

@@ -105,11 +105,11 @@ distuninstallcheck_listfiles = find . -type f -print
 am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
   | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
 distcleancheck_listfiles = find . -type f -print
-ACLOCAL = ${SHELL} /home/opcua/workspace/OPCUAServer/missing --run aclocal-1.11
+ACLOCAL = ${SHELL} /home/opcua/git/OPCUAStack/OPCUAServer/missing --run aclocal-1.11
 AMTAR = $${TAR-tar}
-AUTOCONF = ${SHELL} /home/opcua/workspace/OPCUAServer/missing --run autoconf
-AUTOHEADER = ${SHELL} /home/opcua/workspace/OPCUAServer/missing --run autoheader
-AUTOMAKE = ${SHELL} /home/opcua/workspace/OPCUAServer/missing --run automake-1.11
+AUTOCONF = ${SHELL} /home/opcua/git/OPCUAStack/OPCUAServer/missing --run autoconf
+AUTOHEADER = ${SHELL} /home/opcua/git/OPCUAStack/OPCUAServer/missing --run autoheader
+AUTOMAKE = ${SHELL} /home/opcua/git/OPCUAStack/OPCUAServer/missing --run automake-1.11
 AWK = mawk
 CC = gcc
 CCDEPMODE = depmode=gcc3
@@ -131,7 +131,7 @@ LDFLAGS =
 LIBOBJS = 
 LIBS = 
 LTLIBOBJS = 
-MAKEINFO = ${SHELL} /home/opcua/workspace/OPCUAServer/missing --run makeinfo
+MAKEINFO = ${SHELL} /home/opcua/git/OPCUAStack/OPCUAServer/missing --run makeinfo
 MKDIR_P = /bin/mkdir -p
 OBJEXT = o
 PACKAGE = opcuaserver
@@ -146,10 +146,10 @@ SET_MAKE =
 SHELL = /bin/bash
 STRIP = 
 VERSION = 1.0
-abs_builddir = /home/opcua/workspace/OPCUAServer
-abs_srcdir = /home/opcua/workspace/OPCUAServer
-abs_top_builddir = /home/opcua/workspace/OPCUAServer
-abs_top_srcdir = /home/opcua/workspace/OPCUAServer
+abs_builddir = /home/opcua/git/OPCUAStack/OPCUAServer
+abs_srcdir = /home/opcua/git/OPCUAStack/OPCUAServer
+abs_top_builddir = /home/opcua/git/OPCUAStack/OPCUAServer
+abs_top_srcdir = /home/opcua/git/OPCUAStack/OPCUAServer
 ac_ct_CC = gcc
 am__include = include
 am__leading_dot = .
@@ -176,7 +176,7 @@ host_vendor = pc
 htmldir = ${docdir}
 includedir = ${prefix}/include
 infodir = ${datarootdir}/info
-install_sh = ${SHELL} /home/opcua/workspace/OPCUAServer/install-sh
+install_sh = ${SHELL} /home/opcua/git/OPCUAStack/OPCUAServer/install-sh
 libdir = ${exec_prefix}/lib
 libexecdir = ${exec_prefix}/libexec
 localedir = ${datarootdir}/locale

+ 19 - 19
OPCUAServer/autom4te.cache/requests

@@ -64,8 +64,8 @@
                         'AM_SET_LEADING_DOT' => 1,
                         'AM_SET_DEPDIR' => 1,
                         '_AM_DEPENDENCIES' => 1,
-                        'm4_include' => 1,
                         'AM_PROG_INSTALL_SH' => 1,
+                        'm4_include' => 1,
                         '_AC_AM_CONFIG_HEADER_HOOK' => 1,
                         'AU_DEFUN' => 1,
                         'AM_MAKE_INCLUDE' => 1
@@ -83,55 +83,55 @@
                         'configure.ac'
                       ],
                       {
-                        'AM_PROG_F77_C_O' => 1,
                         '_LT_AC_TAGCONFIG' => 1,
-                        'AC_INIT' => 1,
+                        'AM_PROG_F77_C_O' => 1,
                         'm4_pattern_forbid' => 1,
-                        'AC_CANONICAL_TARGET' => 1,
+                        'AC_INIT' => 1,
                         '_AM_COND_IF' => 1,
-                        'AC_CONFIG_LIBOBJ_DIR' => 1,
+                        'AC_CANONICAL_TARGET' => 1,
                         'AC_SUBST' => 1,
-                        'AC_CANONICAL_HOST' => 1,
+                        'AC_CONFIG_LIBOBJ_DIR' => 1,
                         'AC_FC_SRCEXT' => 1,
+                        'AC_CANONICAL_HOST' => 1,
                         'AC_PROG_LIBTOOL' => 1,
                         'AM_INIT_AUTOMAKE' => 1,
-                        'AC_CONFIG_SUBDIRS' => 1,
                         'AM_PATH_GUILE' => 1,
+                        'AC_CONFIG_SUBDIRS' => 1,
                         'AM_AUTOMAKE_VERSION' => 1,
                         'LT_CONFIG_LTDL_DIR' => 1,
-                        'AC_CONFIG_LINKS' => 1,
                         'AC_REQUIRE_AUX_FILE' => 1,
-                        'LT_SUPPORTED_TAG' => 1,
+                        'AC_CONFIG_LINKS' => 1,
                         'm4_sinclude' => 1,
+                        'LT_SUPPORTED_TAG' => 1,
                         'AM_MAINTAINER_MODE' => 1,
                         'AM_NLS' => 1,
                         'AM_GNU_GETTEXT_INTL_SUBDIR' => 1,
-                        '_m4_warn' => 1,
                         'AM_MAKEFILE_INCLUDE' => 1,
+                        '_m4_warn' => 1,
                         'AM_PROG_CXX_C_O' => 1,
-                        '_AM_MAKEFILE_INCLUDE' => 1,
                         '_AM_COND_ENDIF' => 1,
+                        '_AM_MAKEFILE_INCLUDE' => 1,
                         'AM_ENABLE_MULTILIB' => 1,
                         'AM_SILENT_RULES' => 1,
                         'AM_PROG_MOC' => 1,
                         'AC_CONFIG_FILES' => 1,
-                        'include' => 1,
                         'LT_INIT' => 1,
-                        'AM_GNU_GETTEXT' => 1,
+                        'include' => 1,
                         'AM_PROG_AR' => 1,
+                        'AM_GNU_GETTEXT' => 1,
                         'AC_LIBSOURCE' => 1,
-                        'AC_CANONICAL_BUILD' => 1,
                         'AM_PROG_FC_C_O' => 1,
+                        'AC_CANONICAL_BUILD' => 1,
                         'AC_FC_FREEFORM' => 1,
                         'AH_OUTPUT' => 1,
-                        'AC_CONFIG_AUX_DIR' => 1,
                         '_AM_SUBST_NOTMAKE' => 1,
-                        'm4_pattern_allow' => 1,
-                        'AM_PROG_CC_C_O' => 1,
+                        'AC_CONFIG_AUX_DIR' => 1,
                         'sinclude' => 1,
-                        'AM_CONDITIONAL' => 1,
-                        'AC_CANONICAL_SYSTEM' => 1,
+                        'AM_PROG_CC_C_O' => 1,
+                        'm4_pattern_allow' => 1,
                         'AM_XGETTEXT_OPTION' => 1,
+                        'AC_CANONICAL_SYSTEM' => 1,
+                        'AM_CONDITIONAL' => 1,
                         'AC_CONFIG_HEADERS' => 1,
                         'AC_DEFINE_TRACE_LITERAL' => 1,
                         'AM_POT_TOOLS' => 1,

+ 145 - 15
OPCUAServer/config.log

@@ -4,7 +4,7 @@ running configure, to aid debugging if configure makes a mistake.
 It was created by OPCUAServer configure 1.0, which was
 generated by GNU Autoconf 2.68.  Invocation command line was
 
-  $ /home/opcua/workspace/OPCUAServer/configure 
+  $ /home/opcua/git/OPCUAStack/OPCUAServer/configure 
 
 ## --------- ##
 ## Platform. ##
@@ -185,14 +185,14 @@ am_cv_CC_dependencies_compiler_type=gcc3
 ## Output variables. ##
 ## ----------------- ##
 
-ACLOCAL='${SHELL} /home/opcua/workspace/OPCUAServer/missing --run aclocal-1.11'
+ACLOCAL='${SHELL} /home/opcua/git/OPCUAStack/OPCUAServer/missing --run aclocal-1.11'
 AMDEPBACKSLASH='\'
 AMDEP_FALSE='#'
 AMDEP_TRUE=''
 AMTAR='$${TAR-tar}'
-AUTOCONF='${SHELL} /home/opcua/workspace/OPCUAServer/missing --run autoconf'
-AUTOHEADER='${SHELL} /home/opcua/workspace/OPCUAServer/missing --run autoheader'
-AUTOMAKE='${SHELL} /home/opcua/workspace/OPCUAServer/missing --run automake-1.11'
+AUTOCONF='${SHELL} /home/opcua/git/OPCUAStack/OPCUAServer/missing --run autoconf'
+AUTOHEADER='${SHELL} /home/opcua/git/OPCUAStack/OPCUAServer/missing --run autoheader'
+AUTOMAKE='${SHELL} /home/opcua/git/OPCUAStack/OPCUAServer/missing --run automake-1.11'
 AWK='mawk'
 CC='gcc'
 CCDEPMODE='depmode=gcc3'
@@ -213,7 +213,7 @@ LDFLAGS=''
 LIBOBJS=''
 LIBS=''
 LTLIBOBJS=''
-MAKEINFO='${SHELL} /home/opcua/workspace/OPCUAServer/missing --run makeinfo'
+MAKEINFO='${SHELL} /home/opcua/git/OPCUAStack/OPCUAServer/missing --run makeinfo'
 MKDIR_P='/bin/mkdir -p'
 OBJEXT='o'
 PACKAGE='opcuaserver'
@@ -259,7 +259,7 @@ host_vendor='pc'
 htmldir='${docdir}'
 includedir='${prefix}/include'
 infodir='${datarootdir}/info'
-install_sh='${SHELL} /home/opcua/workspace/OPCUAServer/install-sh'
+install_sh='${SHELL} /home/opcua/git/OPCUAStack/OPCUAServer/install-sh'
 libdir='${exec_prefix}/lib'
 libexecdir='${exec_prefix}/libexec'
 localedir='${datarootdir}/locale'
@@ -307,11 +307,12 @@ generated by GNU Autoconf 2.68.  Invocation command line was
   CONFIG_HEADERS  = 
   CONFIG_LINKS    = 
   CONFIG_COMMANDS = 
-  $ ./config.status Makefile
+  $ ./config.status src/Makefile depfiles
 
 on opcua-VirtualBox
 
-config.status:793: creating Makefile
+config.status:793: creating src/Makefile
+config.status:965: executing depfiles commands
 
 ## ---------------------- ##
 ## Running config.status. ##
@@ -342,11 +343,12 @@ generated by GNU Autoconf 2.68.  Invocation command line was
   CONFIG_HEADERS  = 
   CONFIG_LINKS    = 
   CONFIG_COMMANDS = 
-  $ ./config.status Makefile
+  $ ./config.status src/Makefile depfiles
 
 on opcua-VirtualBox
 
-config.status:793: creating Makefile
+config.status:793: creating src/Makefile
+config.status:965: executing depfiles commands
 
 ## ---------------------- ##
 ## Running config.status. ##
@@ -394,11 +396,12 @@ generated by GNU Autoconf 2.68.  Invocation command line was
   CONFIG_HEADERS  = 
   CONFIG_LINKS    = 
   CONFIG_COMMANDS = 
-  $ ./config.status Makefile
+  $ ./config.status src/Makefile depfiles
 
 on opcua-VirtualBox
 
-config.status:793: creating Makefile
+config.status:793: creating src/Makefile
+config.status:965: executing depfiles commands
 
 ## ---------------------- ##
 ## Running config.status. ##
@@ -429,11 +432,138 @@ generated by GNU Autoconf 2.68.  Invocation command line was
   CONFIG_HEADERS  = 
   CONFIG_LINKS    = 
   CONFIG_COMMANDS = 
-  $ ./config.status Makefile
+  $ ./config.status src/Makefile depfiles
 
 on opcua-VirtualBox
 
-config.status:793: creating Makefile
+config.status:793: creating src/Makefile
+config.status:965: executing depfiles commands
+
+## ---------------------- ##
+## Running config.status. ##
+## ---------------------- ##
+
+This file was extended by OPCUAServer config.status 1.0, which was
+generated by GNU Autoconf 2.68.  Invocation command line was
+
+  CONFIG_FILES    = 
+  CONFIG_HEADERS  = 
+  CONFIG_LINKS    = 
+  CONFIG_COMMANDS = 
+  $ ./config.status src/Makefile depfiles
+
+on opcua-VirtualBox
+
+config.status:793: creating src/Makefile
+config.status:965: executing depfiles commands
+
+## ---------------------- ##
+## Running config.status. ##
+## ---------------------- ##
+
+This file was extended by OPCUAServer config.status 1.0, which was
+generated by GNU Autoconf 2.68.  Invocation command line was
+
+  CONFIG_FILES    = 
+  CONFIG_HEADERS  = 
+  CONFIG_LINKS    = 
+  CONFIG_COMMANDS = 
+  $ ./config.status src/Makefile depfiles
+
+on opcua-VirtualBox
+
+config.status:793: creating src/Makefile
+config.status:965: executing depfiles commands
+
+## ---------------------- ##
+## Running config.status. ##
+## ---------------------- ##
+
+This file was extended by OPCUAServer config.status 1.0, which was
+generated by GNU Autoconf 2.68.  Invocation command line was
+
+  CONFIG_FILES    = 
+  CONFIG_HEADERS  = 
+  CONFIG_LINKS    = 
+  CONFIG_COMMANDS = 
+  $ ./config.status src/Makefile depfiles
+
+on opcua-VirtualBox
+
+config.status:793: creating src/Makefile
+config.status:965: executing depfiles commands
+
+## ---------------------- ##
+## Running config.status. ##
+## ---------------------- ##
+
+This file was extended by OPCUAServer config.status 1.0, which was
+generated by GNU Autoconf 2.68.  Invocation command line was
+
+  CONFIG_FILES    = 
+  CONFIG_HEADERS  = 
+  CONFIG_LINKS    = 
+  CONFIG_COMMANDS = 
+  $ ./config.status src/Makefile depfiles
+
+on opcua-VirtualBox
+
+config.status:793: creating src/Makefile
+config.status:965: executing depfiles commands
+
+## ---------------------- ##
+## Running config.status. ##
+## ---------------------- ##
+
+This file was extended by OPCUAServer config.status 1.0, which was
+generated by GNU Autoconf 2.68.  Invocation command line was
+
+  CONFIG_FILES    = 
+  CONFIG_HEADERS  = 
+  CONFIG_LINKS    = 
+  CONFIG_COMMANDS = 
+  $ ./config.status src/Makefile depfiles
+
+on opcua-VirtualBox
+
+config.status:793: creating src/Makefile
+config.status:965: executing depfiles commands
+
+## ---------------------- ##
+## Running config.status. ##
+## ---------------------- ##
+
+This file was extended by OPCUAServer config.status 1.0, which was
+generated by GNU Autoconf 2.68.  Invocation command line was
+
+  CONFIG_FILES    = 
+  CONFIG_HEADERS  = 
+  CONFIG_LINKS    = 
+  CONFIG_COMMANDS = 
+  $ ./config.status src/Makefile depfiles
+
+on opcua-VirtualBox
+
+config.status:793: creating src/Makefile
+config.status:965: executing depfiles commands
+
+## ---------------------- ##
+## Running config.status. ##
+## ---------------------- ##
+
+This file was extended by OPCUAServer config.status 1.0, which was
+generated by GNU Autoconf 2.68.  Invocation command line was
+
+  CONFIG_FILES    = 
+  CONFIG_HEADERS  = 
+  CONFIG_LINKS    = 
+  CONFIG_COMMANDS = 
+  $ ./config.status src/Makefile depfiles
+
+on opcua-VirtualBox
+
+config.status:793: creating src/Makefile
+config.status:965: executing depfiles commands
 
 ## ---------------------- ##
 ## Running config.status. ##

+ 9 - 9
OPCUAServer/config.status

@@ -436,14 +436,14 @@ Report bugs to the package provider."
 ac_cs_config=""
 ac_cs_version="\
 OPCUAServer config.status 1.0
-configured by /home/opcua/workspace/OPCUAServer/configure, generated by GNU Autoconf 2.68,
+configured by /home/opcua/git/OPCUAStack/OPCUAServer/configure, generated by GNU Autoconf 2.68,
   with options \"$ac_cs_config\"
 
 Copyright (C) 2010 Free Software Foundation, Inc.
 This config.status script is free software; the Free Software Foundation
 gives unlimited permission to copy, distribute and modify it."
 
-ac_pwd='/home/opcua/workspace/OPCUAServer'
+ac_pwd='/home/opcua/git/OPCUAStack/OPCUAServer'
 srcdir='.'
 INSTALL='/usr/bin/install -c'
 MKDIR_P='/bin/mkdir -p'
@@ -514,7 +514,7 @@ if $ac_cs_silent; then
 fi
 
 if $ac_cs_recheck; then
-  set X '/bin/bash' '/home/opcua/workspace/OPCUAServer/configure'  $ac_configure_extra_args --no-create --no-recursion
+  set X '/bin/bash' '/home/opcua/git/OPCUAStack/OPCUAServer/configure'  $ac_configure_extra_args --no-create --no-recursion
   shift
   $as_echo "running CONFIG_SHELL=/bin/bash $*" >&6
   CONFIG_SHELL='/bin/bash'
@@ -639,12 +639,12 @@ S["mkdir_p"]="/bin/mkdir -p"
 S["MKDIR_P"]="/bin/mkdir -p"
 S["INSTALL_STRIP_PROGRAM"]="$(install_sh) -c -s"
 S["STRIP"]=""
-S["install_sh"]="${SHELL} /home/opcua/workspace/OPCUAServer/install-sh"
-S["MAKEINFO"]="${SHELL} /home/opcua/workspace/OPCUAServer/missing --run makeinfo"
-S["AUTOHEADER"]="${SHELL} /home/opcua/workspace/OPCUAServer/missing --run autoheader"
-S["AUTOMAKE"]="${SHELL} /home/opcua/workspace/OPCUAServer/missing --run automake-1.11"
-S["AUTOCONF"]="${SHELL} /home/opcua/workspace/OPCUAServer/missing --run autoconf"
-S["ACLOCAL"]="${SHELL} /home/opcua/workspace/OPCUAServer/missing --run aclocal-1.11"
+S["install_sh"]="${SHELL} /home/opcua/git/OPCUAStack/OPCUAServer/install-sh"
+S["MAKEINFO"]="${SHELL} /home/opcua/git/OPCUAStack/OPCUAServer/missing --run makeinfo"
+S["AUTOHEADER"]="${SHELL} /home/opcua/git/OPCUAStack/OPCUAServer/missing --run autoheader"
+S["AUTOMAKE"]="${SHELL} /home/opcua/git/OPCUAStack/OPCUAServer/missing --run automake-1.11"
+S["AUTOCONF"]="${SHELL} /home/opcua/git/OPCUAStack/OPCUAServer/missing --run autoconf"
+S["ACLOCAL"]="${SHELL} /home/opcua/git/OPCUAStack/OPCUAServer/missing --run aclocal-1.11"
 S["VERSION"]="1.0"
 S["PACKAGE"]="opcuaserver"
 S["CYGPATH_W"]="echo"

+ 0 - 1
OPCUAServer/ltmain.sh

@@ -1 +0,0 @@
-/usr/share/libtool/config/ltmain.sh

File diff suppressed because it is too large
+ 9661 - 0
OPCUAServer/ltmain.sh


+ 4 - 4
OPCUAServer/src/.deps/opcuaServer.Po

@@ -25,8 +25,8 @@ opcuaServer.o: opcuaServer.c /usr/include/stdio.h /usr/include/features.h \
  /usr/include/i386-linux-gnu/bits/select2.h \
  /usr/include/i386-linux-gnu/sys/sysmacros.h \
  /usr/include/i386-linux-gnu/bits/pthreadtypes.h /usr/include/alloca.h \
- /usr/include/i386-linux-gnu/bits/stdlib.h opcua_BinaryEncDec.h \
- opcua_BuiltInDatatypes.h \
+ /usr/include/i386-linux-gnu/bits/stdlib.h opcua_binaryEncDec.h \
+ opcua_builtInDatatypes.h \
  /usr/lib/gcc/i686-linux-gnu/4.6/include/stdint.h /usr/include/stdint.h \
  /usr/include/i386-linux-gnu/bits/wchar.h /usr/include/string.h \
  /usr/include/xlocale.h /usr/include/i386-linux-gnu/bits/string.h \
@@ -103,9 +103,9 @@ opcuaServer.o: opcuaServer.c /usr/include/stdio.h /usr/include/features.h \
 
 /usr/include/i386-linux-gnu/bits/stdlib.h:
 
-opcua_BinaryEncDec.h:
+opcua_binaryEncDec.h:
 
-opcua_BuiltInDatatypes.h:
+opcua_builtInDatatypes.h:
 
 /usr/lib/gcc/i686-linux-gnu/4.6/include/stdint.h:
 

+ 34 - 21
OPCUAServer/src/Makefile

@@ -35,7 +35,7 @@ POST_UNINSTALL = :
 build_triplet = i686-pc-linux-gnu
 host_triplet = i686-pc-linux-gnu
 target_triplet = i686-pc-linux-gnu
-bin_PROGRAMS = a.out$(EXEEXT)
+bin_PROGRAMS = $(top_builddir)/bin/stackTest.out$(EXEEXT)
 subdir = src
 DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
@@ -47,9 +47,12 @@ CONFIG_CLEAN_FILES =
 CONFIG_CLEAN_VPATH_FILES =
 am__installdirs = "$(DESTDIR)$(bindir)"
 PROGRAMS = $(bin_PROGRAMS)
-am_a_out_OBJECTS = opcuaServer.$(OBJEXT) opcua_BinaryEncDec.$(OBJEXT)
-a_out_OBJECTS = $(am_a_out_OBJECTS)
-a_out_LDADD = $(LDADD)
+am___top_builddir__bin_stackTest_out_OBJECTS = opcuaServer.$(OBJEXT) \
+	opcua_builtInDatatypes.$(OBJEXT) opcua_binaryEncDec.$(OBJEXT)
+__top_builddir__bin_stackTest_out_OBJECTS =  \
+	$(am___top_builddir__bin_stackTest_out_OBJECTS)
+__top_builddir__bin_stackTest_out_LDADD = $(LDADD)
+am__dirstamp = $(am__leading_dot)dirstamp
 DEFAULT_INCLUDES = -I.
 depcomp = $(SHELL) $(top_srcdir)/depcomp
 am__depfiles_maybe = depfiles
@@ -58,16 +61,16 @@ COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
 	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
 CCLD = $(CC)
 LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
-SOURCES = $(a_out_SOURCES)
-DIST_SOURCES = $(a_out_SOURCES)
+SOURCES = $(__top_builddir__bin_stackTest_out_SOURCES)
+DIST_SOURCES = $(__top_builddir__bin_stackTest_out_SOURCES)
 ETAGS = etags
 CTAGS = ctags
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-ACLOCAL = ${SHELL} /home/opcua/workspace/OPCUAServer/missing --run aclocal-1.11
+ACLOCAL = ${SHELL} /home/opcua/git/OPCUAStack/OPCUAServer/missing --run aclocal-1.11
 AMTAR = $${TAR-tar}
-AUTOCONF = ${SHELL} /home/opcua/workspace/OPCUAServer/missing --run autoconf
-AUTOHEADER = ${SHELL} /home/opcua/workspace/OPCUAServer/missing --run autoheader
-AUTOMAKE = ${SHELL} /home/opcua/workspace/OPCUAServer/missing --run automake-1.11
+AUTOCONF = ${SHELL} /home/opcua/git/OPCUAStack/OPCUAServer/missing --run autoconf
+AUTOHEADER = ${SHELL} /home/opcua/git/OPCUAStack/OPCUAServer/missing --run autoheader
+AUTOMAKE = ${SHELL} /home/opcua/git/OPCUAStack/OPCUAServer/missing --run automake-1.11
 AWK = mawk
 CC = gcc
 CCDEPMODE = depmode=gcc3
@@ -89,7 +92,7 @@ LDFLAGS =
 LIBOBJS = 
 LIBS = 
 LTLIBOBJS = 
-MAKEINFO = ${SHELL} /home/opcua/workspace/OPCUAServer/missing --run makeinfo
+MAKEINFO = ${SHELL} /home/opcua/git/OPCUAStack/OPCUAServer/missing --run makeinfo
 MKDIR_P = /bin/mkdir -p
 OBJEXT = o
 PACKAGE = opcuaserver
@@ -104,10 +107,10 @@ SET_MAKE =
 SHELL = /bin/bash
 STRIP = 
 VERSION = 1.0
-abs_builddir = /home/opcua/workspace/OPCUAServer/src
-abs_srcdir = /home/opcua/workspace/OPCUAServer/src
-abs_top_builddir = /home/opcua/workspace/OPCUAServer
-abs_top_srcdir = /home/opcua/workspace/OPCUAServer
+abs_builddir = /home/opcua/git/OPCUAStack/OPCUAServer/src
+abs_srcdir = /home/opcua/git/OPCUAStack/OPCUAServer/src
+abs_top_builddir = /home/opcua/git/OPCUAStack/OPCUAServer
+abs_top_srcdir = /home/opcua/git/OPCUAStack/OPCUAServer
 ac_ct_CC = gcc
 am__include = include
 am__leading_dot = .
@@ -134,7 +137,7 @@ host_vendor = pc
 htmldir = ${docdir}
 includedir = ${prefix}/include
 infodir = ${datarootdir}/info
-install_sh = ${SHELL} /home/opcua/workspace/OPCUAServer/install-sh
+install_sh = ${SHELL} /home/opcua/git/OPCUAStack/OPCUAServer/install-sh
 libdir = ${exec_prefix}/lib
 libexecdir = ${exec_prefix}/libexec
 localedir = ${datarootdir}/locale
@@ -158,7 +161,12 @@ target_vendor = pc
 top_build_prefix = ../
 top_builddir = ..
 top_srcdir = ..
-a_out_SOURCES = opcuaServer.c opcua_BinaryEncDec.c opcua_BinaryEncDec.h
+__top_builddir__bin_stackTest_out_SOURCES = opcuaServer.c\
+											opcua_builtInDatatypes.c\
+											opcua_binaryEncDec.c\
+											opcua_builtInDatatypes.h\
+											opcua_binaryEncDec.h
+
 all: all-am
 
 .SUFFIXES:
@@ -230,9 +238,12 @@ uninstall-binPROGRAMS:
 
 clean-binPROGRAMS:
 	-test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS)
-a.out$(EXEEXT): $(a_out_OBJECTS) $(a_out_DEPENDENCIES) $(EXTRA_a_out_DEPENDENCIES) 
-	@rm -f a.out$(EXEEXT)
-	$(LINK) $(a_out_OBJECTS) $(a_out_LDADD) $(LIBS)
+$(top_builddir)/bin/$(am__dirstamp):
+	@$(MKDIR_P) $(top_builddir)/bin
+	@: > $(top_builddir)/bin/$(am__dirstamp)
+$(top_builddir)/bin/stackTest.out$(EXEEXT): $(__top_builddir__bin_stackTest_out_OBJECTS) $(__top_builddir__bin_stackTest_out_DEPENDENCIES) $(EXTRA___top_builddir__bin_stackTest_out_DEPENDENCIES) $(top_builddir)/bin/$(am__dirstamp)
+	@rm -f $(top_builddir)/bin/stackTest.out$(EXEEXT)
+	$(LINK) $(__top_builddir__bin_stackTest_out_OBJECTS) $(__top_builddir__bin_stackTest_out_LDADD) $(LIBS)
 
 mostlyclean-compile:
 	-rm -f *.$(OBJEXT)
@@ -241,7 +252,8 @@ distclean-compile:
 	-rm -f *.tab.c
 
 include ./$(DEPDIR)/opcuaServer.Po
-include ./$(DEPDIR)/opcua_BinaryEncDec.Po
+include ./$(DEPDIR)/opcua_binaryEncDec.Po
+include ./$(DEPDIR)/opcua_builtInDatatypes.Po
 
 .c.o:
 	$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -372,6 +384,7 @@ clean-generic:
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
 	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+	-test -z "$(top_builddir)/bin/$(am__dirstamp)" || rm -f $(top_builddir)/bin/$(am__dirstamp)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"

+ 7 - 2
OPCUAServer/src/Makefile.am

@@ -1,3 +1,8 @@
-bin_PROGRAMS= a.out
-a_out_SOURCES= opcuaServer.c opcua_BinaryEncDec.c opcua_BinaryEncDec.h
+bin_PROGRAMS= $(top_builddir)/bin/stackTest.out
 
+
+__top_builddir__bin_stackTest_out_SOURCES=	opcuaServer.c\
+											opcua_builtInDatatypes.c\
+											opcua_binaryEncDec.c\
+											opcua_builtInDatatypes.h\
+											opcua_binaryEncDec.h

+ 24 - 11
OPCUAServer/src/Makefile.in

@@ -35,7 +35,7 @@ POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
 target_triplet = @target@
-bin_PROGRAMS = a.out$(EXEEXT)
+bin_PROGRAMS = $(top_builddir)/bin/stackTest.out$(EXEEXT)
 subdir = src
 DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
@@ -47,9 +47,12 @@ CONFIG_CLEAN_FILES =
 CONFIG_CLEAN_VPATH_FILES =
 am__installdirs = "$(DESTDIR)$(bindir)"
 PROGRAMS = $(bin_PROGRAMS)
-am_a_out_OBJECTS = opcuaServer.$(OBJEXT) opcua_BinaryEncDec.$(OBJEXT)
-a_out_OBJECTS = $(am_a_out_OBJECTS)
-a_out_LDADD = $(LDADD)
+am___top_builddir__bin_stackTest_out_OBJECTS = opcuaServer.$(OBJEXT) \
+	opcua_builtInDatatypes.$(OBJEXT) opcua_binaryEncDec.$(OBJEXT)
+__top_builddir__bin_stackTest_out_OBJECTS =  \
+	$(am___top_builddir__bin_stackTest_out_OBJECTS)
+__top_builddir__bin_stackTest_out_LDADD = $(LDADD)
+am__dirstamp = $(am__leading_dot)dirstamp
 DEFAULT_INCLUDES = -I.@am__isrc@
 depcomp = $(SHELL) $(top_srcdir)/depcomp
 am__depfiles_maybe = depfiles
@@ -58,8 +61,8 @@ COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
 	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
 CCLD = $(CC)
 LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
-SOURCES = $(a_out_SOURCES)
-DIST_SOURCES = $(a_out_SOURCES)
+SOURCES = $(__top_builddir__bin_stackTest_out_SOURCES)
+DIST_SOURCES = $(__top_builddir__bin_stackTest_out_SOURCES)
 ETAGS = etags
 CTAGS = ctags
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -158,7 +161,12 @@ target_vendor = @target_vendor@
 top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
-a_out_SOURCES = opcuaServer.c opcua_BinaryEncDec.c opcua_BinaryEncDec.h
+__top_builddir__bin_stackTest_out_SOURCES = opcuaServer.c\
+											opcua_builtInDatatypes.c\
+											opcua_binaryEncDec.c\
+											opcua_builtInDatatypes.h\
+											opcua_binaryEncDec.h
+
 all: all-am
 
 .SUFFIXES:
@@ -230,9 +238,12 @@ uninstall-binPROGRAMS:
 
 clean-binPROGRAMS:
 	-test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS)
-a.out$(EXEEXT): $(a_out_OBJECTS) $(a_out_DEPENDENCIES) $(EXTRA_a_out_DEPENDENCIES) 
-	@rm -f a.out$(EXEEXT)
-	$(LINK) $(a_out_OBJECTS) $(a_out_LDADD) $(LIBS)
+$(top_builddir)/bin/$(am__dirstamp):
+	@$(MKDIR_P) $(top_builddir)/bin
+	@: > $(top_builddir)/bin/$(am__dirstamp)
+$(top_builddir)/bin/stackTest.out$(EXEEXT): $(__top_builddir__bin_stackTest_out_OBJECTS) $(__top_builddir__bin_stackTest_out_DEPENDENCIES) $(EXTRA___top_builddir__bin_stackTest_out_DEPENDENCIES) $(top_builddir)/bin/$(am__dirstamp)
+	@rm -f $(top_builddir)/bin/stackTest.out$(EXEEXT)
+	$(LINK) $(__top_builddir__bin_stackTest_out_OBJECTS) $(__top_builddir__bin_stackTest_out_LDADD) $(LIBS)
 
 mostlyclean-compile:
 	-rm -f *.$(OBJEXT)
@@ -241,7 +252,8 @@ distclean-compile:
 	-rm -f *.tab.c
 
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/opcuaServer.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/opcua_BinaryEncDec.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/opcua_binaryEncDec.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/opcua_builtInDatatypes.Po@am__quote@
 
 .c.o:
 @am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -372,6 +384,7 @@ clean-generic:
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
 	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+	-test -z "$(top_builddir)/bin/$(am__dirstamp)" || rm -f $(top_builddir)/bin/$(am__dirstamp)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"

BIN
OPCUAServer/src/a.out


+ 4 - 2
OPCUAServer/src/opcuaServer.c

@@ -10,8 +10,9 @@
 
 #include <stdio.h>
 #include <stdlib.h>
-#include "opcua_BinaryEncDec.h"
-#include "opcua_BuiltInDatatypes.h"
+
+#include "opcua_binaryEncDec.h"
+#include "opcua_builtInDatatypes.h"
 
 
 int main(void)
@@ -24,3 +25,4 @@ int main(void)
 
 	return EXIT_SUCCESS;
 }
+

BIN
OPCUAServer/src/opcuaServer.o


+ 0 - 13
OPCUAServer/src/opcua_BinaryEncDec.c

@@ -1,13 +0,0 @@
-/*
- * opcua_BinaryEncDec.c
- *
- *  Created on: Dec 18, 2013
- *      Author: opcua
- */
-
-#include "opcua_BinaryEncDec.h"
-
-
-
-
-

+ 0 - 32
OPCUAServer/src/opcua_BinaryEncDec.h

@@ -1,32 +0,0 @@
-/*
- * opcua_BinaryEncDec.h
- *
- *  Created on: Dec 18, 2013
- *      Author: opcua
- */
-
-#ifndef OPCUA_BINARYENCDEC_H_
-#define OPCUA_BINARYENCDEC_H_
-
-
-
-enum BED_ApplicationType {SERVER_0, CLIENT_1, CLIENTANDSERVER_2, DISCOVERYSERVER_3};
-
-
-struct BED_ApplicationDescription
-{
-	char *applicationUri;
-	char *productUri;
-	enum BED_ApplicationType applicationType;
-	char *gatewayServerUri;
-};
-
-
-struct BED_EndpointDescription
-{
-	char *endpointUrl;
-	char *securityPolicyUri;
-	struct BED_ApplicationDescription *server;
-};
-
-#endif /* OPCUA_BINARYENCDEC_H_ */

+ 0 - 11
OPCUAServer/src/opcua_BuiltInDatatypes.c

@@ -1,11 +0,0 @@
-/*
- * opcua_BuiltInDatatypes.c
- *
- *  Created on: Dec 19, 2013
- *      Author: opcua
- */
-
-
-#include "opcua_BuiltInDatatypes.h"
-
-

+ 0 - 49
OPCUAServer/src/opcua_BuiltInDatatypes.h

@@ -1,49 +0,0 @@
-/*
- * OPCUA_builtInDatatypes.h
- *
- *  Created on: Dec 19, 2013
- *      Author: opcua
- */
-#include <stdint.h>
-#include <string.h>
-#ifndef OPCUA_BUILTINDATATYPES_H_
-#define OPCUA_BUILTINDATATYPES_H_
-
-
-
-#endif /* OPCUA_BUILTINDATATYPES_H_ */
-
-typedef _Bool Boolean;
-
-typedef int8_t SByte;
-
-typedef uint8_t Byte;
-
-typedef int16_t Int16;
-
-typedef uint16_t UInt16;
-
-typedef int32_t Int32;
-
-typedef uint32_t UInt32;
-
-typedef int64_t Int64;
-
-typedef uint64_t UInt64;
-
-typedef float Float;
-
-typedef double Double;
-
-
-struct UA_StringType
-{
-	int Length;
-	char *Data;
-};
-
-typedef struct UA_StringType UA_String;
-
-
-
-

+ 2 - 2
OPCUAServer/src/opcua_binaryEncDec.c

@@ -1,11 +1,11 @@
 /*
- * opcua_BinaryEncDec.c
+ * opcua_binaryEncDec.c
  *
  *  Created on: Dec 18, 2013
  *      Author: opcua
  */
 
-#include "opcua_BinaryEncDec.h"
+#include "opcua_binaryEncDec.h"
 
 
 

+ 945 - 10
OPCUAServer/src/opcua_binaryEncDec.h

@@ -5,28 +5,963 @@
  *      Author: opcua
  */
 
-#ifndef OPCUA_BINARYENCDEC_H_
-#define OPCUA_BINARYENCDEC_H_
-
+#ifndef OPCUA_BINARYENCDEC_NEU_H_
+#define OPCUA_BINARYENCDEC_NEU_H_
 
+#include "opcua_builtInDatatypes.h"
 
 enum BED_ApplicationType {SERVER_0, CLIENT_1, CLIENTANDSERVER_2, DISCOVERYSERVER_3};
 
 
+/**
+* ApplicationDescription
+* Part: 4
+* Chapter: 7.1
+* Page: 103
+*/
 struct BED_ApplicationDescription
 {
-	char *applicationUri;
-	char *productUri;
+	UA_String applicationUri;
+	UA_String productUri;
+	UA_LocalizedText applicationName;
 	enum BED_ApplicationType applicationType;
-	char *gatewayServerUri;
+	UA_String gatewayServerUri;
+	UA_String discoveryProfileUri;
+	UA_String discoverUrls[];
+};
+
+
+/**
+* ApplicationInstanceCertificate
+* Part: 4
+* Chapter: 7.2
+* Page: 104
+*/
+struct BED_ApplicationInstanceCertificate
+{
+	UA_String version;
+	UA_ByteString serialNumber;
+	UA_String signatureAlgorithm;
+	UA_ByteString signature;
+//ToDo	struct issuer				//????????????? S. 108 table 104
+	UA_DateTime validFrom;
+	UA_DateTime valdiTo;
+//ToDo	struct subject;				//????????????? S. 108 table 104
+	UA_String applicationUri;
+	UA_String *hostnames;
+	UA_ByteString pubicKey;
+	UA_String keyUsage[];
+
 };
 
 
+/**
+* BrowseResult
+* Part: 4
+* Chapter: 7.3
+* Page: 104
+*/
+struct BED_BrowseResult
+{
+	struct UA_StatusCode statusCode;
+	struct BED_ContinuationPoint continuationPoint;
+	struct BED_ReferenceDescription references[];
+};
+
+
+/**
+* ContentFilter 						//ToDo
+* Part: 4
+* Chapter: 7.4.1
+* Page: 104
+*/
+struct BED_ContentFilter
+{
+//ToDo	struct BED_ContentFilterElement elements[];		//ToDo
+//ToDo	enum BED_FilterOperand filterOperator;			//ToDo table 110
+//ToDo	struct BED_ExtensibleParamterFilterOperand filterOperands[]; //ToDo 7.4.4
+};
+
+
+/**
+* Counter
+* Part: 4
+* Chapter: 7.5
+* Page: 113
+*/
+typedef UInt32 BED_Counter;
+
+
+/**
+* ContinuationPoint 				//ToDo
+* Part: 4
+* Chapter: 7.6
+* Page: 114
+*/
+struct BED_ContinuationPoint
+{
+};
+
+/**
+* DataValue
+* Part: 4
+* Chapter: 7.7.1
+* Page: 114
+*/
+struct BED_DataValue
+{
+	UA_Variant value;	// BaseDataType are mapped to a UA_Variant -> part: 6 chapter: 5.1.5 page: 14
+	struct UA_StatusCode statusCode;
+	UA_DateTime sourceTimestamp;
+//ToDo	UInt					//toBeDiscussed: Resolution of PicoSeconds
+	UA_DateTime serverTimestamp;
+//ToDo	UInt					//toBeDiscussed: Resolution of PicoSeconds
+};
+
+
+/**
+* DiagnosticInfo
+* Part: 4
+* Chapter: 7.9
+* Page: 116
+*/
+struct BED_DiagnosticInfo
+{
+//ToDo	struct ???? identifier;				//ToDo: what kind of strcuture?
+	Int32 namespaceUri;
+	Int32 symbolicId;
+	Int32 locale;
+	Int32 localizesText;
+	struct UA_String additionalInfo;
+	struct UA_StatusCode innerStatusCode;
+	struct BED_DiagnosticInfo innerDiagnosticInfo;
+};
+
+
+/**
+* EndpointDescription
+* Part: 4
+* Chapter: 7.9
+* Page: 116
+*/
 struct BED_EndpointDescription
 {
-	char *endpointUrl;
-	char *securityPolicyUri;
-	struct BED_ApplicationDescription *server;
+	struct UA_String endpointUrl;
+	struct BED_ApplicationDescription server;
+	struct BED_ApplicationInstanceCertificate serverCertificate;
+	enum BED_MessageSecurityMode securityMode;
+	struct UA_String securityPolicyUri;
+	struct BED_UserTokenPolicy useridentyTokens[];
+	struct UA_String transportProfileUri;
+	Byte securtiyLevel;
+};
+
+/**
+* ExpandedNodeId
+* Part: 4
+* Chapter: 7.10
+* Page: 117
+*/
+struct BED_ExpandedNodeId
+{
+	BED_Index serverIndex;
+	struct UA_String namespaceUri;
+	BED_Index namespaveIndex;
+//ToDo	enum BED_IdentifierType identiferType;		//ToDo: Is the enumeration correct?
+//ToDo	UA_NodeIdentifier identifier;		//ToDo -> Part 3: Address Space Model
+};
+
+
+/**
+* ExtensibleParameter
+* Part: 4
+* Chapter: 7.11
+* Page: 117
+*/
+struct BED_ExtensibleParameter
+{
+	struct UA_NodeId parameterTypeId;
+//ToDo	-- parameterData;			//toBeDiscussed
+};
+
+
+/**
+* Index
+* Part: 4
+* Chapter: 7.12
+* Page: 118
+*/
+typedef UInt32 BED_Index;
+
+
+/**
+* IntegerId
+* Part: 4
+* Chapter: 7.13
+* Page: 118
+*/
+typedef UInt32 BED_IntegerId;
+
+
+/**
+* MessageSecurityMode
+* Part: 4
+* Chapter: 7.14
+* Page: 118
+*/
+enum BED_MessageSecurityMode
+{
+	INVALID_0 = 0,
+	SIGN_1 = 1,
+	SIGNANDENCRYPT_2 = 2
+};
+
+
+/**
+* MonitoringParameters
+* Part: 4
+* Chapter: 7.15
+* Page: 118
+*/
+struct BED_MonitoringParameters
+{
+	BED_IntegerId clientHandle;
+//ToDo	Duration???? samplingInterval;						//ToDo
+//ToDo	struct BED_ExtensibleParameterMonitoringFilter filter			//ToDo
+	BED_Counter queueSize;
+	Boolean discardOldest;
+};
+
+//->ExtensibleParameter ->Part:4 Chapter:7.11 Page:117
+struct BED_ExtensibleParameterMonitoringFilter		//ToDo: Ist die Umsetzung des ExtensibleParameter korrekt?
+{
+	enum BED_MonitoringFilter parameterTypeId;
+	struct BED_DataChangeFilter dataChangeFilter;
+	struct BED_EventFilter eventFilter;
+	struct BED_AggregateFilter aggregateFilter;
+};
+
+/**
+* MonitoringFilter parameterTypeIds
+* Part: 4
+* Chapter: 7.16.1
+* Page: 119
+*/
+enum BED_MonitoringFilter
+{
+	DATA_CHANGE_FILTER = 1,
+	EVENT_FILTER = 2,
+	AGGREGATE_FILTER = 3
+};
+
+
+/**
+* DataChangeFilter
+* Part: 4
+* Chapter: 7.16.2
+* Page: 119
+*/
+struct BED_DataChangeFilter
+{
+//ToDo	enum BED_MonitoringFilter trigger = BED_MonitoringFilter.DATA_CHANGE_FILTER;
+	UInt32 deadbandType;
+	Double deadbandValue;
+};
+
+
+/**
+* EventFilter
+* Part: 4
+* Chapter: 7.16.3
+* Page: 120
+*/
+struct BED_EventFilter
+{
+//ToDo	SimpleAttributeOperantd selectClauses[]; 		//ToDo
+//ToDo	ContenFilter whereClause;				//ToDo
+};
+
+struct BED_EventFilterResult
+{
+	struct UA_StatusCode selectClauseResults[3];
+	struct UA_DiagnosticInfo selectClauseDiagnosticInfos[3];
+	struct BED_ContentFilterResult whereClauseResult;
+};
+
+
+/**
+* AggregateFilter
+* Part: 4
+* Chapter: 7.16.4
+* Page: 122
+*/
+struct BED_AggregateFilter
+{
+	UA_DateTime startTime;
+	struct UA_NodeId aggregateType;
+	UA_Duration processingInterval;
+//ToDo	AggregateConfiguration aggregateConfiguration;		//ToDo
+	Boolean useServerCapabilitiesDafaults;
+	Boolean treatUncertainAsBad;
+	Byte percentDataBad;
+	Byte percentDataGood;
+	Boolean steppedSlopedExtrapolation;
+};
+
+struct BED_AggregateFilterResult
+{
+	UA_DateTime revisedStartTime;
+	UA_Duration revisedProcessingInterval;
+};
+
+
+/**
+* MonitoringMode
+* Part: 4
+* Chapter: 7.17
+* Page: 123
+*/
+enum BED_MonitoringModeValues
+{
+	DISABLED_0 = 0,	//The item being monitored is not sampled or evaluated, and Notifications are not generated or queued. Notification reporting is disabled.
+	SAMPLING_1 = 1,	//The item being monitored is sampled and evaluated, and Notifications are generated and queued. Notification reporting is disabled.
+	REPORTING_2 = 2	//The item being monitored is sampled and evaluated, and Notifications are generated and queued. Notification reporting is enabled.
+};
+
+
+/**
+* NodeAttributes parameters
+* Part: 4
+* Chapter: 7.18.1
+* Page: 124
+*/
+enum BED_NodeAttributesParamterTypeIds
+{
+	ObjectAttributes,	//Defines the Attributes for the Object NodeClass.
+	VariableAttributes,	//Defines the Attributes for the Variable NodeClass.
+	MethodAttributes,	//Defines the Attributes for the Method NodeClass.
+	ObjectTypeAttributes,	//Defines the Attributes for the ObjectType NodeClass.
+	VariableTypeAttributes,	//Defines the Attributes for the VariableType NodeClass.
+	ReferenceTypeAttributes,//Defines the Attributes for the ReferenceType NodeClass.
+	DataTypeAttributes,	//Defines the Attributes for the DataType NodeClass.
+	ViewAttributes		//Defines the Attributes for the View NodeClass.
+};
+
+enum BED_NodeAttributesBitMask
+{
+	AccessLevel = 1, 	//Bit: 0 Indicates if the AccessLevel Attribute is set.
+	ArrayDimensions = 2,	//Bit: 1 Indicates if the ArrayDimensions Attribute is set.
+	//Reserved = 4, 	//Bit: 2 Reserved to be consistent with WriteMask defined in IEC 62541-3.
+	ContainsNoLoops = 8,	//Bit: 3 Indicates if the ContainsNoLoops Attribute is set.
+	DataType = 16,		//Bit: 4 Indicates if the DataType Attribute is set.
+	Description = 32,	//Bit: 5 Indicates if the Description Attribute is set.
+	DisplayName = 64,	//Bit: 6 Indicates if the DisplayName Attribute is set.
+	EventNotifier = 128,	//Bit: 7 Indicates if the EventNotifier Attribute is set.
+	Executable = 256,	//Bit: 8 Indicates if the Executable Attribute is set.
+	Historizing = 512,	//Bit: 9 Indicates if the Historizing Attribute is set.
+	InverseName = 1024,	//Bit:10 Indicates if the InverseName Attribute is set.
+	IsAbstract = 2048,	//Bit:11 Indicates if the IsAbstract Attribute is set.
+	MinimumSamplingInterval = 4096, //Bit:12 Indicates if the MinimumSamplingInterval Attribute is set.
+	//Reserved = 8192,	//Bit:13 Reserved to be consistent with WriteMask defined in IEC 62541-3.
+	//Reserved = 16384,	//Bit:14 Reserved to be consistent with WriteMask defined in IEC 62541-3.
+	Symmetric = 32768,	//Bit:15 Indicates if the Symmetric Attribute is set.
+	UserAccessLevel = 65536,//Bit:16 Indicates if the UserAccessLevel Attribute is set.
+	UserExecutable = 131072,//Bit:17 Indicates if the UserExecutable Attribute is set.
+	UserWriteMask = 262144, //Bit:18 Indicates if the UserWriteMask Attribute is set.
+	ValueRank = 524288,	//Bit:19 Indicates if the ValueRank Attribute is set.
+	WriteMask = 1048576,	//Bit:20 Indicates if the WriteMask Attribute is set.
+	Value = 2097152		//Bit:21 Indicates if the Value Attribute is set.
+	//Reserved		//Bit:22:32 Reserved for future use. Shall always be zero.
+};
+
+
+/**
+* ObjectAttributes parameters
+* Part: 4
+* Chapter: 7.18.2
+* Page: 125
+*/
+struct BED_ObjectAttributes
+{
+	UInt32 specifiedAttribute;	//BitMask corresponding to BED_NodeAttributesBitMask
+	struct UA_LocalizedText displayName;
+	struct UA_LocalizedText description;
+	Byte eventNotifier;
+	UInt32 writeMask;
+	UInt32 userWriteMask;
+};
+
+
+/**
+* VariableAttributes parameters
+* Part: 4
+* Chapter: 7.18.3
+* Page: 125
+*/
+struct BED_VariableAttributes
+{
+	UInt32 specifiedAttributes; 	//BitMask corresponding to BED_NodeAttributesBitMask
+	struct UA_LocalizedText displayName;
+	struct UA_LocalizedText description;
+//ToDo	DefinedByTheDataTypeAttribte??? value				//ToDo
+	struct UA_NodeId dataType;
+	Int32 valueRank;
+	UInt32 arrayDimensions[];
+	Byte accessLevel;
+	Byte userAccesLevel;
+//ToDo	Duration???? minimumSamplingInterval;			//ToDo
+	Boolean historizing;
+	UInt32 writeMask;
+	UInt32 userWriteMask;
+};
+
+
+/**
+* MethodAttributes parameters
+* Part: 4
+* Chapter: 7.18.4
+* Page: 125
+*/
+struct BED_MethodAttributes
+{
+	UInt32 specifiedAttributes;	//BitMask corresponding to BED_NodeAttributesBitMask
+	struct UA_LocalizedText displayName;
+	struct UA_LocalizedText description;
+	Boolean executable;
+	Boolean userExecutable;
+	UInt32 writeMask;
+	UInt32 userWriteMask;
 };
 
-#endif /* OPCUA_BINARYENCDEC_H_ */
+
+/**
+* ObjectTypeAttributes parameters
+* Part: 4
+* Chapter: 7.18.5
+* Page: 125
+*/
+struct BED_ObjectTypeAttributes
+{
+	UInt32 specifiedAttributes; 	//BitMask corresponding to BED_NodeAttributesBitMask
+	struct UA_LocalizedText displayName;
+	struct UA_LocalizedText description;
+	Boolean isAbstract;
+	UInt32 wirteMask;
+	UInt32 userWriteMask;
+};
+
+
+/**
+* VariableTypeAttributes parameters
+* Part: 4
+* Chapter: 7.18.6
+* Page: 126
+*/
+struct BED_VariableTypeAttributes
+{
+	UInt32 specifiedAttributes; 	//BitMask corresponding to BED_NodeAttributesBitMask
+	struct UA_LocalizedText displayName;
+	struct UA_LocalizedText description;
+//ToDo	DefinedByTheDataTypeAttribte??? value			//ToDo
+	struct UA_NodeId dataType;
+	Int32 valueRank;
+	UInt32 arrayDimesions[];
+	Boolean isAbstract;
+	UInt32 writeMask;
+	UInt32 userWriteMask;
+};
+
+
+/**
+* ReferenceTypeAttributes parameters
+* Part: 4
+* Chapter: 7.18.7
+* Page: 126
+*/
+struct BED_ReferenceTypeAttributes
+{
+	UInt32 specifiedAttributes; 	//BitMask corresponding to BED_NodeAttributesBitMask
+	struct UA_LocalizedText displayName;
+	struct UA_LocalizedText description;
+	Boolean isAbstract;
+	Boolean symmetric;
+	struct UA_LocalizedText inverseName;
+	UInt32 writeMask;
+	UInt32 userWriteMask;
+};
+
+
+
+/**
+* DataTypeAttributes parameters
+* Part: 4
+* Chapter: 7.18.8
+* Page: 126
+*/
+struct BED_DataTypeAttributes
+{
+	UInt32 specifiedAttributes; 	//BitMask corresponding to BED_NodeAttributesBitMask
+	struct UA_LocalizedText displayName;
+	struct UA_LocalizedText description;
+	Boolean isAbstract;
+	UInt32 writeMask;
+	UInt32 userWriteMask;
+};
+
+
+
+/**
+* ViewAttributes parameters
+* Part: 4
+* Chapter: 7.18.9
+* Page: 127
+*/
+struct BED_ViewAttributes
+{
+	UInt32 specifiedAttributes; 	//BitMask corresponding to BED_NodeAttributesBitMask
+	struct UA_LocalizedText displayName;
+	struct UA_LocalizedText description;
+	Boolean containsNoLoops;
+	Byte eventNotifier;
+	UInt32 writeMask;
+	UInt32 userWriteMask;
+};
+
+
+/**
+* NotificationData parameters
+* Part: 4
+* Chapter: 7.19
+* Page: 127
+*/
+enum BED_NotificationDataParameterTypeIds
+{
+	DATA_CHANGE = 1,
+	EVENT = 2,
+	STATUS_CHANGE = 3
+};
+
+
+/**
+* DataChangeNotification parameter
+* Part: 4
+* Chapter: 7.19.2
+* Page: 127
+*/
+struct BED_DataChangeNotification
+{
+//ToDo	struct BED_MonitoredItemNotification monitoredItems[];		//ToDo
+	BED_IntegerId clientHandle;
+	struct UA_DataValue value;
+	UA_DiagnosticInfo diagnositcInfos[];
+};
+
+
+/**
+* EventNotificationList parameter
+* Part: 4
+* Chapter: 7.19.3
+* Page: 128
+*/
+struct BED_EventNotificationList
+{
+//ToDo	struct EventFieldList events[];			//ToDo
+	BED_IntegerId clientHandle;
+	UA_Variant eventFields[];	// BaseDataType are mapped to a UA_Variant -> part: 6 chapter: 5.1.5 page: 14
+};
+
+
+/**
+* StatusChangeNotification parameter
+* Part: 4
+* Chapter: 7.19.4
+* Page: 128
+*/
+struct BED_StatusChangeNotification
+{
+	struct UA_StatusCode status;
+	struct UA_DiagnosticInfo diagnosticInfo;
+};
+
+
+/**
+* NotificationMessage
+* Part: 4
+* Chapter: 7.20
+* Page: 129
+*/
+struct BED_NotificationMessage
+{
+	BED_Counter sequenceNumber;
+	struct UA_DateTime publishTime;
+	struct ExtensibleParameterNotificationData notificationData[];
+};
+
+//->ExtensibleParameter ->Part:4 Chapter:7.11 Page:117
+struct ExtensibleParameterNotificationData 		//ToDo: Ist die Umsetzung des ExtensibleParameter korrekt?
+{
+	enum BED_NotificationDataParameterTypeIds parameterTypeId;
+	struct BED_DataChangeNotification dataChange;
+	struct BED_EventNotificationList event;
+	struct BED_StatusChangeNotification statusChange;
+};
+
+
+/**
+* NumericRange
+* Part: 4
+* Chapter: 7.21
+* Page: 129
+*/
+typedef UA_String NumericRange;
+
+
+/**
+* QueryDataSet
+* Part: 4
+* Chapter: 7.22
+* Page: 130
+*/
+struct BED_QueryDataSet
+{
+	struct UA_ExpandedNodeId nodeId;
+	struct UA_ExpandedNodeId typeDefinitionNode;
+	struct UA_Variant values[];	// BaseDataType are mapped to a UA_Variant -> part: 6 chapter: 5.1.5 page: 14
+};
+
+
+/**
+* ReadValueId
+* Part: 4
+* Chapter: 7.23
+* Page: 130
+*/
+struct BED_QueryDataSet
+{
+	struct UA_NodeId nodeId;
+	BED_IntegerId attributeId;
+	struct BED_NumericRange indexRange;
+	struct UA_QualifiedName dataEncoding;
+};
+
+
+/**
+* ReferenceDescription
+* Part: 4
+* Chapter: 7.24
+* Page: 131
+*/
+struct BED_ReferenceDescription
+{
+	struct UA_NodeId referenceTypeId;
+	Boolean isForward;
+	struct UA_ExpandedNodeId nodeId;
+	struct UA_QualifiedName browseName;
+	struct UA_LocalizedText displayName;
+//ToDo	struct BED_NodeClass nodeClass;			//ToDo
+	struct UA_ExpandedNodeId typeDefinition;
+};
+
+
+/**
+* RelativePath
+* Part: 4
+* Chapter: 7.25
+* Page: 131
+*/
+struct BED_RelativePath
+{
+//ToDo	struct BED_RelativePathElement elements[];		//ToDo
+	struct UA_NodeId referenceTypeId;
+	Boolean isInverse;
+	Boolean includeSubtypes;
+	struct UA_QualifiedName targetName;
+};
+
+
+/**
+* RequestHeader
+* Part: 4
+* Chapter: 7.26
+* Page: 132
+*/
+struct BED_RequestHeader
+{
+//ToDo	struct BED_SessionAuthenticationToken authenticationToken;		//ToDo
+	UA_DateTime timestamp;
+	BED_IntegerId requestHandle;
+	UInt32 returnDiagnostics;
+	struct UA_String auditEntryId;
+	UInt32 timeoutHint;
+//ToDo	struct BED_ExtensibleParameterAdditionalHeader additionalHeader;		//ToDo
+};
+
+
+enum BED_RequestReturnDiagnositcs
+{
+	SERVICE_LEVEL_SYMBOLIC_ID = 1,				//Hex 0x01
+	SERVICE_LEVEL_LOCALIZED_TEXT= 2,			//Hex 0x02
+	SERVICE_LEVEL_ADDITIONAL_INFO = 4,			//Hex 0x04
+	SERVICE_LEVEL_INNER_STATUS_CODE = 8,		//Hex 0x08
+	SERVICE_LEVEL_INNER_DIAGNOSTICS = 16,		//Hex 0x10
+	OPERATION_LEVEL_SYMBOLIC_ID = 32,			//Hex 0x20
+	OPERATION_LEVEL_LOCALIZED_TEXT= 64,			//Hex 0x40
+	OPERATION_LEVEL_ADDITIONAL_INFO = 128,		//Hex 0x80
+	OPERATION_LEVEL_INNER_STATUS_CODE = 256,	//Hex 0x100
+	OPERATION_LEVEL_INNER_DIAGNOSTICS = 512		//Hex 0x200
+};
+
+
+/**
+* ResponseHeader
+* Part: 4
+* Chapter: 7.27
+* Page: 133
+*/
+struct BED_ResponseHeader
+{
+	UA_DateTime timestamp;
+	BED_IntegerId requestHandle;
+	struct UA_StatusCode serviceResult;
+	struct UA_DiagnosticInfo serviceDiagnostics;
+	struct UA_String stringTable[];
+//ToDo	struct BED_ExtensibleParameterAdditionalHeader additionalHeader;		//ToDo
+};
+
+
+/**
+* ServiceFault
+* Part: 4
+* Chapter: 7.28
+* Page: 133
+*/
+struct BED_ServiceFault
+{
+	struct BED_ResponseHeader responseHeader;
+};
+
+
+//ToDo: Own DataType with typeDef?
+/**
+* SessionAuthenticationToken
+* Part: 4
+* Chapter: 7.29
+* Page: 133
+*/
+
+
+
+/**
+* SignatureData
+* Part: 4
+* Chapter: 7.30
+* Page: 135
+*/
+struct BED_SignatureData
+{
+	struct UA_ByteString signature;
+	struct UA_String agorithm;
+};
+
+
+/**
+* SignedSoftwareCertificate
+* Part: 4
+* Chapter: 7.31
+* Page: 135
+*/
+struct BED_SignedSoftwareCertificate
+{
+	struct UA_String version;
+	struct UA_ByteString serialNumber;
+	struct UA_String signatureAlgorithm;
+	struct UA_ByteString signature;
+//ToDo	struct issuer 					//ToDo: ??? struct?
+	UA_DateTime validFrom;
+	UA_DateTime validTo;
+//ToDo	struct subject;					//ToDo: ??? struct?
+//ToDo	struct subjectAltName[];			//ToDo: ??? struct?
+	struct UA_ByteString publicKey;
+	struct UA_String keyUsage[];
+	struct UA_ByteString softwareCertificate;
+};
+
+
+/**
+* SoftwareCertificate
+* Part: 4
+* Chapter: 7.32
+* Page: 135
+*/
+struct BED_SoftwareCertificate
+{
+	struct UA_String productName;
+	struct UA_String productUri;
+	struct UA_String vendorName;
+	struct UA_ByteString vendorProductCertificate;
+	struct UA_String softwareVersion;
+	struct UA_String buildNumber;
+	UA_DateTime buildDate;
+	struct UA_String issuedBy;
+	UA_DateTime issueDate;
+	struct UA_ByteString vendorProductCertificate;
+	struct BED_SupportedProfiles supportedProfiles;
+};
+
+struct BED_SupportedProfiles
+{
+	struct UA_String oranizationUri;
+	struct UA_String profileId;
+	struct UA_String complianceTool;
+	UA_DateTime complianceDate;
+	enum BED_ComplianceLevel complianceLevel;
+	struct UA_String unsupportedUnitIds[];
+};
+
+enum BED_ComplianceLevel
+{
+	UNTESTED_0 = 0,		//the profiled capability has not been tested successfully.
+	PARTIAL_1 = 1,		//the profiled capability has been partially tested and has
+				//passed critical tests, as defined by the certifying authority.
+	SELFTESTED_2 = 2,	//the profiled capability has been successfully tested using a
+				//self-test system authorized by the certifying authority.
+	CERTIFIED_3 = 3		//the profiled capability has been successfully tested by a
+				//testing organisation authorized by the certifying authority.
+};
+
+
+/**
+* StatusCode					//ToDo: Do we need them? How do we implement them (enum)?
+* Part: 4
+* Chapter: 7.33
+* Page: 136
+*/
+
+
+/**
+* TimestampsToReturn
+* Part: 4
+* Chapter: 7.34
+* Page: 140
+*/
+enum BED_TimestampsToReturn
+{
+	SOURCE_0 = 1,	//Return the source timestamp.
+			//If used in HistoryRead the source timestamp is used to determine which historical data values are returned.
+	SERVER_1 = 1,	//Return the Server timestamp.
+			//If used in HistoryRead the Server timestamp is used to determine which historical data values are returned.
+	BOTH_2 = 2,	//Return both the source and Server timestamps.
+			//If used in HistoryRead the source timestamp is used to determine which historical data values are returned.
+	NEITHER_3 = 3	//Return neither timestamp.
+			//This is the default value for MonitoredItems if a Variable value is not being accessed.
+			//For HistoryRead this is not a valid setting.
+};
+
+
+/**
+* UserIdentityToken Encrypted Token Format
+* Part: 4
+* Chapter: 7.35.1
+* Page: 140
+*/
+struct BED_UserIdentityTokenEncryptedTokenFormat
+{
+	Byte length[4];
+	Byte tokenData[];
+	Byte serverNonce[];
+};
+
+
+/**
+* AnonymousIdentityToken
+* Part: 4
+* Chapter: 7.35.2
+* Page: 141
+*/
+struct BED_AnonymousIdentityToken
+{
+	struct UA_String policyId;
+};
+
+
+/**
+* UserNameIdentityToken
+* Part: 4
+* Chapter: 7.35.3
+* Page: 141
+*/
+struct BED_UserNameIdentityToken
+{
+	struct UA_String policyId;
+	struct UA_String userName;
+	struct UA_ByteString password;
+	struct UA_String encryptionAlogrithm;
+};
+
+
+/**
+* X509IdentityTokens
+* Part: 4
+* Chapter: 7.35.4
+* Page: 141
+*/
+struct BED_X509IdentityTokens
+{
+	struct UA_String policyId;
+	struct UA_ByteString certificateData;
+};
+
+
+/**
+* IssuedIdentityToken
+* Part: 4
+* Chapter: 7.35.5
+* Page: 142
+*/
+struct BED_IssuedIdentityToken
+{
+	struct UA_String policyId;
+	struct UA_ByteString tokenData;
+	struct UA_String encryptionAlgorithm;
+};
+
+
+/**
+* UserTokenPolicy
+* Part: 4
+* Chapter: 7.36
+* Page: 142
+*/
+struct BED_UserTokenPolicy
+{
+	struct UA_String policyId;
+	enum BED_UserIdentityTokenType tokenType;
+	struct UA_String issuedTokenType;
+	struct UA_String issuerEndpointUrl;
+	struct UA_String securityPolicyUri;
+};
+
+enum BED_UserIdentityTokenType
+{
+	ANONYMOUS_0 = 0,
+	USERNAME_1 = 1,
+	CERTIFICATE_2 = 2,
+	ISSUEDTOKEN_3 = 3
+};
+
+
+/**
+* ViewDescription
+* Part: 4
+* Chapter: 7.37
+* Page: 143
+*/
+struct BED_ViewDescription
+{
+	struct UA_NodeId viewId;
+	UA_DateTime timestamp;
+	UInt32 viewVersion;
+};
+
+
+#endif /* OPCUA_BINARYENCDEC_NEU_H_ */

+ 1 - 1
OPCUAServer/src/opcua_builtInDatatypes.c

@@ -6,6 +6,6 @@
  */
 
 
-#include "opcua_BuiltInDatatypes.h"
+#include "opcua_builtInDatatypes.h"
 
 

+ 313 - 4
OPCUAServer/src/opcua_builtInDatatypes.h

@@ -6,12 +6,44 @@
  */
 #include <stdint.h>
 #include <string.h>
-#ifndef OPCUA_BUILTINDATATYPES_H_
-#define OPCUA_BUILTINDATATYPES_H_
+#ifndef OPCUA_BUILTINDATATYPES_NEU_H_
+#define OPCUA_BUILTINDATATYPES_NEU_H_
 
+/**
+* Enumerations:
+*	All Enumerations should be encoded as Int32 values
+*
+*
+*/
 
-
-#endif /* OPCUA_BUILTINDATATYPES_H_ */
+enum BID_BuiltInDataTypes
+{
+	BOOLEAN = 1,
+	SBYTE = 2,
+	BYTE = 3,
+	INT16 = 4,
+	UINT16 = 5,
+	INT32 = 6,
+	UINT32 = 7,
+	INT64 = 8,
+	UINT64 = 9,
+	FLOAT = 10,
+	DOUBLE = 11,
+	STRING = 12,
+	DATE_TIME = 13,
+	GUID = 14,
+	BYTE_STRING = 15,
+	XML_ELEMENT = 16,
+	NODE_ID = 17,
+	EXPANDED_NODE_ID = 18,
+	STATUS_CODE = 19,
+	QUALIFIED_NAME = 20,
+	LOCALIZED_TEXT = 21,
+	EXTENSION_OBJECT = 22,
+	DATA_VALUE = 23,
+	VARIAN = 24,
+	DIAGNOSTIC_INFO = 25
+};
 
 typedef _Bool Boolean;
 
@@ -44,6 +76,283 @@ struct UA_StringType
 
 typedef struct UA_StringType UA_String;
 
+/**
+* DateTime
+*/
+typedef Int64 UA_DateTime; //100 nanosecond resolution
+			      //start Date: 1601-01-01 12:00 AM
+
+
+/**
+* GuidType
+*/
+struct UA_GuidType
+{
+	UInt32 Data1[4];
+	UInt16 Data2[2];
+	UInt16 Data3[2];
+	Byte Data4[8];
+};
+
+typedef struct UA_GuidType UA_Guid;
+
+
+/**
+* ByteString
+*/
+struct UA_ByteStringType
+{
+	int32_t Length;
+	uint8_t *Data;
+};
+
+typedef struct UA_ByteStringType UA_ByteString;
+
+
+/**
+ * Überlegung ob man es direkt als ByteString speichert oder als String
+ */
+struct UA_XmlElementType
+{
+	UA_String Data;
+};
+
+typedef struct UA_XmlElementType UA_XmlElement;
+
+
+struct UA_XmlElementEncodedType
+{
+	UInt32 Length;
+	Byte StartTag[3];
+	Byte *Message;
+	UInt32 EndTag[4];
+};
+
+typedef struct UA_XmlElementEncodedType UA_XmlElementEncoded;
+
+
+/**
+ * NodeIds
+ */
+enum BID_IdentifierType
+{
+	NUMERIC,
+	STRING,
+	GUID,
+	OPAQUE
+};
+
+enum BID_NodeIdEncodingValuesType
+{
+	TWO_BYTE = 0, 			//Hex 0x00
+	FOUR_BYTE = 1, 			//Hex 0x01
+	NUMERIC = 2, 			//Hex 0x02
+	STRING = 3, 			//Hex 0x03
+	GUID = 4, 			//Hex 0x04
+	BYTESTRING = 5, 		//Hex 0x05
+	NAMESPACE_URI_FLAG = 128, 	//Hex 0x80
+	SERVERINDEX_FLAG = 64 		//Hex 0x40
+};
+
+/**
+* NodeIdComponents
+*/
+struct UA_NodeIdComponentsType
+{
+	UInt16 Namespace;
+	Int32 IdentifierType; //enum BID_IdentifierType
+	Byte *Value;
+};
+
+typedef struct UA_NodeIdComponentsType UA_NodeIdComponents;
+
+/**
+* StandartNodeIdBinaryEncoding
+*/
+struct UA_StandartNodeIdType
+{
+	Int32 EncodingByte; //enum BID_NodeIdEncodingValuesType
+	UInt16 Namespace;
+	Byte *Identifier;
+};
+
+typedef struct UA_StandardNodeIdType UA_StandardNodeId;
+
+/**
+* TwoByteNoteIdBinaryEncoding
+*/
+struct UA_TwoByteNoteIdType
+{
+	Int32 EncodingByte = (Int32) BID_NodeIdEncodingValuesType.TWO_BYTE; //enum BID_NodeIdEncodingValuesType.TWO_BYTE
+	UInt16 Identifier;
+};
+
+typedef struct UA_TwoByteNoteIdType UA_TwoByteNoteId;
+
+/**
+* ExpandedNodeIdBinaryEncoding
+*/
+struct UA_ExpandedNodeIdType
+{
+	UA_NodeIdComponents NodeId;
+	UA_String NamepaceUri;
+	UInt32 ServerIndex;
+};
+
+typedef struct UA_ExpandedNodeIdType UA_ExpandedNodeId;
+
+/**
+* StatusCodeBinaryEncoding
+*/
+typedef UInt32 UA_StatusCode;
+
+
+/**
+* DiagrnoticInfoBinaryEncoding
+*/
+struct UA_DiagnosticInfoType
+{
+	Byte EncodingMask;
+	Int32 SymbolicId;
+	Int32 NamespaceUri;
+	Int32 LocalizedText;
+	Int32 Locale;
+	UA_String AdditionalInfo;
+	UA_StatusCode InnerStatusCode;
+	UA_DiagnosticInfo InnderDiagnosticInfo;
+};
+
+typedef struct UA_DiagnosticInfoType UA_DiagnosticInfo;
+
+enum BID_DiagnosticInfoEncodingMaskType
+{
+	SYMBOLIC_ID = 1, 		//Hex 0x01
+	NAMESPACE = 2, 			//Hex 0x02
+	LOCALIZED_TEXT = 4, 		//Hex 0x04
+	LOCATE = 8, 			//Hex 0x08
+	ADDITIONAL_INFO = 16, 		//Hex 0x10
+	INNER_STATUS_CODE = 32, 	//Hex 0x20
+	INNER_DIAGNOSTIC_INFO = 64 	//Hex 0x40
+};
+
+/**
+* QualifiedNameBinaryEncoding
+*/
+struct UA_QualifiedNameType
+{
+	UInt16 NamespaceIndex;
+	UA_String Name;
+};
+
+typedef struct UA_QualifiedNameType UA_QualifiedName;
+
+/**
+* LocalizedTextBinaryEncoding
+*/
+struct UA_LocalizedTextType
+{
+	Byte EncodingMask;
+	UA_String Locale;
+	UA_String Test;
+};
+
+typedef struct UA_LocalizedTextType UA_LocalizedText;
 
+enum BID_LocalizedTextEncodingMaskType
+{
+	SYMBOLIC_ID = 1, 		//Hex 0x01
+	NAMESPACE = 2 			//Hex 0x02
+};
+
+/**
+* ExtensionObjectBinaryEncoding
+*/
+struct UA_ExtensionObjectType
+{
+	UA_NodeIdComponents TypeId;
+	Byte Encoding;
+	Int32 Length;
+	Byte *Body;
+};
+
+typedef struct UA_ExtensionObjectType UA_ExtensionObject;
+
+enum BID_ExtensionObjectEncodingMaskType
+{
+	NO_BODY_IS_ENCODED = 0,		//Hex 0x00
+	BODY_IS_BYTE_STRING = 1,	//Hex 0x01
+	BODY_IS_XML_ELEMENT = 2		//Hex 0x02
+};
+
+
+/**
+* VariantBinaryEncoding
+*/
+struct UA_VariantType
+{
+	Byte EncodingMask;
+	Int32 ArrayLength;
+	Byte *Value;
+	Int32 ArrayDimensions[];
+};
+
+typedef struct UA_VariantType UA_Variant;
+
+enum BID_VariantTypeEncodingMaskType
+{
+	//Bytes 0:5	HEX 0x00 - 0x20
+	BOOLEAN = 1,
+	SBYTE = 2,
+	BYTE = 3,
+	INT16 = 4,
+	UINT16 = 5,
+	INT32 = 6,
+	UINT32 = 7,
+	INT64 = 8,
+	UINT64 = 9,
+	FLOAT = 10,
+	DOUBLE = 11,
+	STRING = 12,
+	DATE_TIME = 13,
+	GUID = 14,
+	BYTE_STRING = 15,
+	XML_ELEMENT = 16,
+	NODE_ID = 17,
+	EXPANDED_NODE_ID = 18,
+	STATUS_CODE = 19,
+	QUALIFIED_NAME = 20,
+	LOCALIZED_TEXT = 21,
+	EXTENSION_OBJECT = 22,
+	DATA_VALUE = 23,
+	VARIANT = 24,
+	DIAGNOSTIC_INFO = 25,
+	//Byte 6
+	ARRAY_DIMENSIONS_ENCODED = 64,	//HEX 0x40
+	//Byte 7
+	ARRAY_VALUE_ENCODED = 128	//HEX 0x80
+};
+
+
+/**
+* DataValueBinaryEncoding
+*/
+struct UA_DataValueType
+{
+	Byte EncodingMask;
+	UA_Variant Value;
+	UA_StatusCode Status;
+	UA_DateTime SourceTimestamp;
+	Int16 SourcePicoseconds;
+	UA_DateTime ServerTimestamp;
+	Int16 ServerPicoseconds;
+};
 
+/**
+* Duration
+* Part: 3
+* Chapter: 8.13
+* Page: 74
+*/
+typedef double UA_Duration;
 
+#endif /* OPCUA_BUILTINDATATYPES_NEU_H_ */

+ 32 - 1
OPCUAServer/src/opcua_transportLayer.c

@@ -5,12 +5,43 @@
  *      Author: opcua
  */
 #include "opcua_transportLayer.h"
+void TL_getHELMessage_test()
+{
+	char data[] = {0x48,0x45,0x4c,0x46,0x56,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x01,0x20,0x20,0x20,0x01,0x20,0x20,0x20,0x20,0x01,0x88,0x13,0x20,0x20,0x36,0x20,0x20,0x20,0x6f,0x70,0x63,0x2e,0x74,0x63,0x70,0x3a,0x2f,0x2f,0x43,0x61,0x6e,0x6f,0x70,0x75,0x73,0x2e,0x70,0x6c,0x74,0x2e,0x72,0x77,0x74,0x68,0x2d,0x61,0x61,0x63,0x68,0x65,0x6e,0x2e,0x64,0x65,0x3a,0x31,0x36,0x36,0x36,0x34,0x2f,0x34,0x43,0x45,0x55,0x41,0x53,0x65,0x72,0x76,0x65,0x72};
+	struct TL_messageBodyHEL HELmessage;
+	struct TL_header header;
+	header.MessageSize = 86;
 
 
+}
+/*
+ * gets the TL_messageBody
+ */
+void TL_getHELMessage(char *message, struct TL_messageBodyHEL *HELmessage, struct TL_header *messageHeader)
+{
+	UInt32 pos = HEADER_LENGTH;
+	HELmessage->ProtocolVersion	= convertToUInt32(message[pos]);
+	pos = pos + sizeof(UInt32);
+	HELmessage->ReceiveBufferSize = convertToUInt32(message[pos]);
+	pos = pos +  sizeof(UInt32);
+	HELmessage->SendBufferSize = convertToUInt32(message[pos]);
+	pos = pos +  sizeof(UInt32);
+	HELmessage->MaxMessageSize = convertToUInt32(message[pos]);
+	pos = pos +  sizeof(UInt32);
+	HELmessage->MaxChunkCount = convertToUInt32(message[pos]);
+	pos = pos +  sizeof(UInt32);
 
-void doSomething()
+	HELmessage->EndpointUrl.Data = message[pos];
+	HELmessage->EndpointUrl.Length = messageHeader->MessageSize - pos;
+}
+/*
+ * repond to client request
+ */
+void TL_buildACKMessage(char *message, struct TL_messageBodyHEL *ACKmessage, struct TL_header *messageHeader)
 {
 
 }
 
 
+
+

+ 9 - 7
OPCUAServer/src/opcua_transportLayer.h

@@ -7,7 +7,7 @@
 
 #ifndef OPCUA_TRANSPORTLAYER_H_
 #define OPCUA_TRANSPORTLAYER_H_
-
+#include "opcua_byteArrayConverter.h"
 struct TL_message
 {
 	struct TL_header Header;
@@ -21,6 +21,8 @@ struct TL_header
 	UInt32 MessageSize;
 };
 
+const UInt32 HEADER_LENGTH = 8;
+
 struct TL_messageBodyHEL
 {
 	UInt32 ProtocolVersion;
@@ -43,12 +45,12 @@ struct TL_messageBodyACK
 
 struct TL_messageBodyERR
 {
-	UInt32 ProtocolVersion;
-	UInt32 ReceiveBufferSize;
-	UInt32 SendBufferSize;
-	UInt32 MaxMessageSize;
-	UInt32 MaxChunkCount;
-	UA_String EndpointUrl;
+	UInt32 Error;
+	UA_String Reason;
+
 };
+//functions
+void TL_getHELMessage_test();
+void TL_getHELMessage(char *message, struct TL_messageBodyHEL *HELmessage, struct TL_header *messageHeader);
 
 #endif /* OPCUA_TRANSPORTLAYER_H_ */