< Back To XBINDER Support

XBinder v2.3.x Change Log

Version 2.3.7 was released on

The following changes were made in patch release 2.3.7:

  • Fix possible security issues in the memory allocator for C and C++ (ASN-8544)(CVE-2016-5080).

Version 2.3.6 released on January 18, 2016

The following changes were made between patch release 2.3.5 and 2.3.6:

  • Fixed C/C++ WSDL stub and client generation in the case where the WSDL bindings and the WSDL operations are defined in separate WSDL modules. (XBI-2007).
  • Fixed missing generation of C/C++ isNilSet functions in the case where a nillable element is part of an extension (XBI-2007).
  • Fixed issue related to 32 vs 64 bit integers when compiling for 64 bits. This addresses a compiler error on the use of rtxCppCheckBitBounds (XBI-2007).
  • Fixed some issues related to the -namespace argument that caused C/C++ compilation errors. In some cases, either the namespace prefix wasn't added or it was added too many times (XBI-2007).
  • Fixed generation of the third argument to rtXmlpGetNextElemID, which was sometimes passed a larger value than it ought to have been. This could have led to reading beyond the end of the element table array (XBI-2007).
  • Fixed generation of the WSDL/SOAP Operation control class so that when the operation has a fault and declares an mpFault field, the class has a getFault() accessor method (XBI-2007).
  • Fixed WSDL/SOAP client stub generation for the case where the soapAction is empty. The generated code should assign "" and not "(null)" (XBI-2007).

Version 2.3.5 released on July 20, 2015

The following changes were made between patch release 2.3.4 and 2.3.5:

  • Add some missing C++ namespace qualifiers in generated code when using -cppNs with <cppNamespace> entries in the config file (XBI-1988).
  • We fixed a bug in C/C++ code generation in which the generated code was uncompilable. This occurred when an element had a named, simple type and a fixed value (XBI-1950).

Version 2.3.4 released on April 9, 2015

The following changes were made between patch release 2.3.3 and 2.3.4:

  • Added -cppext command-line option to allow extension of generated C++ source files to be specified (XBI-1929).
  • Fixed SOAP server generation to respond to requests using an HTTP response message (XBI-1914).
  • Fixed a crash that would occur when attribute references could not be resolved due to a missing definition (XBI-1916).

Version 2.3.3 released on December 16, 2014

The following changes were made between patch release 2.3.2 and 2.3.3:

  • Fixed a bug in C/C++ code generation where the generated code was not allocating memory for an element to be decoded. This happened in cases where an optional sequence group (minOccurs=0, maxOccurs=1) contained a single, non-repeating element (maxOccurs=1) (XBI-1868).
  • Fixed a bug in C/C++ code generation for XSD enumerated types where gcc would report a "field has incomplete type" error. The error appeared on a field of a union type, where the field was an incomplete enum type. Under this condition, a pointer-to-enum type is now generated. (XBI-1848)
  • Fixed a bug in C/C++ code generation where an initialization function would assign a default value to an attribute using an undefined identifier. This could happen in certain cases where the attribute's type is an XSD union. (XBI-1848)

Version 2.3.2 released on May 12, 2014

The following changes were made between patch release 2.3.1 and 2.3.2:

  • Added run-time libraries built with Visual Studio 2013 (XBI-1840).
  • Fixed a bug in C/C++ numeric formatting. Certain values (such as .01) would be formatted with an exponent when decimal form was desired (XBI-1819).
  • Fixed a problem where the run-time binaries in the lib folder of Windows distributions were debug binaries instead of non-debug binaries (XBI-1813).
  • Changed generation of SOAP functions to not be done as if -lax had been specified. The original behavior can be restored with -compat 231 (or smaller) (XBI-1805).
  • Fixed an issue with generating circular C/C++ header includes. This led to some type names being unknown (XBI-1808).
  • Enable Java/C# code generation for schemas embedded in WSDL. Also, do not report an error for <xs:annotation> elements appearing as children of <wsdl:types> (XBI-1812).
  • Added the rtxSoapSetReadTimeout run-time function to allow timeouts to be set for SOAP read operations. (XBI-1795)
  • Fixed some cases where C++ namespaces were missing in generated code (XBI-1734).

Version 2.3.1 released on December 3, 2013

The following changes were made between patch release 2.3.0 and 2.3.1:

  • Changed the parseDecimal() method of the XBSimpleType class in the C# run-time so it parses text decimal specifications using the invariant culture option (XBI-1722).
  • Removed the unnecessary dependency on the -w32 qualifier having been specified in order for Visual Studio projects to be generated with the -genvcproj qualifier (XBI-1698).
  • Changed the processing of the -genvcproj qualifier so if no Visual Studio version is specified, a Visual Studio 2008 project file is generated by default. As of XBinder v2.3.0, XBinder's default libraries for Windows (i.e., those in the c and cpp hierarchies) are built with Visual Studio 2008 (XBI-1701).
  • Added the missing ability to generate Visual Studio 2012 projects with the -genvcproj qualifier. XBinder v2.3.0 added Visual Studio 2012 libraries to its run-time, but the -genvcproj qualifier did not provide the ability to generate Visual Studio 2012 projects (XBI-1702).
  • Fixed a problem in which the -project qualifier was ignored during the processing of the -genvcproj qualifier (XBI-1719).
  • Changed the processing of the -genvcproj qualifier so folder names for .lib files in the generated project file do not include "_vs2008" if Visual Studio 2008 is the chosen tool. As of XBinder v2.3.0, XBinder's default libraries for Windows (i.e., those in the c and cpp hierarchies) are built with Visual Studio 2008 (XBI-1720).
  • Fixed a bug whereby an error "Derived type could not be decoded due to missing type info" would be falsely reported. This would occur for C++ when a empty content type was extended (XBI-1724).
  • Fixed handling of configuration files. Specified settings would sometimes not take effect on included XSD files. Note that in configuration files, <schemaBindings> with schemaLocation should only be used to specify a sourceFile; all other configuration should use namespace instead of schemaLocation (XBI-1725).
  • Fixed generation of forward declarations when using C++ namespaces. Besides generating garbage for the C++ namespace declaration, we were generating a nested namespace declaration that wasn't necessary. (XBI-1739)
  • Fixed C++ SAX handler generation for a repeating element whose name is the same as the element's type's name. This defect caused a C++ compiler error because we generated an unqualified name for the class that would resolve to the field name for the element rather than resolving to the desired class. (XBI-1739)
  • Added a new configuration feature for C++ namespaces. In the config file, under a <schemaBindings> element, you can now have a <cppNamespace> element whose string value specifies the C++ namespace to use for that schemaBindings entry. The -cppNs option must be used for this to work (XBI-1734).
  • Fixed code generation to eliminate two GCC warnings: 1) warning: type qualifiers ignored on function return type 2) warning: base class �class OSXSDComplexType� should be explicitly initialized in the copy constructor (XBI-1780).
  • Fixed reader generation to not double-up on name prefixes when the -namespace option is being used.
  • Add a new -enumchoice option to generate and use an enum type as the selector type for choice groups and in some other similar cases (e.g. unions and element substitution).

Version 2.3.0 released on April 15, 2013

  • Initial release. New features are described in the release notes.