diff -U3 -r xml-security-c-1.7.3.old/xsec/dsig/DSIGAlgorithmHandlerDefault.cpp xml-security-c-1.7.3/xsec/dsig/DSIGAlgorithmHandlerDefault.cpp
--- xml-security-c-1.7.3.old/xsec/dsig/DSIGAlgorithmHandlerDefault.cpp	2013-06-18 01:27:28.000000000 +0300
+++ xml-security-c-1.7.3/xsec/dsig/DSIGAlgorithmHandlerDefault.cpp	2016-09-07 13:15:37.000000000 +0300
@@ -679,7 +679,8 @@
 
 bool DSIGAlgorithmHandlerDefault::appendHashTxfm(
 		TXFMChain * inputBytes,
-		const XMLCh * URI) {
+		const XMLCh * URI,
+		const XMLCh * ReferenceURI) {
 
 	hashMethod hm;
 
diff -U3 -r xml-security-c-1.7.3.old/xsec/dsig/DSIGAlgorithmHandlerDefault.hpp xml-security-c-1.7.3/xsec/dsig/DSIGAlgorithmHandlerDefault.hpp
--- xml-security-c-1.7.3.old/xsec/dsig/DSIGAlgorithmHandlerDefault.hpp	2012-07-23 19:56:11.000000000 +0300
+++ xml-security-c-1.7.3/xsec/dsig/DSIGAlgorithmHandlerDefault.hpp	2016-09-07 13:07:08.000000000 +0300
@@ -76,7 +76,8 @@
 
 	virtual bool appendHashTxfm(
 		TXFMChain * inputBytes,
-		const XMLCh * URI
+		const XMLCh * URI,
+		const XMLCh * ReferenceURI
 	);
 
 	// Unsupported Encryption Operations
diff -U3 -r xml-security-c-1.7.3.old/xsec/dsig/DSIGReference.cpp xml-security-c-1.7.3/xsec/dsig/DSIGReference.cpp
--- xml-security-c-1.7.3.old/xsec/dsig/DSIGReference.cpp	2013-06-26 04:01:27.000000000 +0300
+++ xml-security-c-1.7.3/xsec/dsig/DSIGReference.cpp	2016-09-07 13:01:36.000000000 +0300
@@ -1325,7 +1325,7 @@
 
 	}
 
-	if (!handler->appendHashTxfm(chain, mp_algorithmURI)) {
+	if (!handler->appendHashTxfm(chain, mp_algorithmURI, mp_URI)) {
 
 		throw XSECException(XSECException::SigVfyError,
 			"Unexpected error in handler whilst appending Hash transform");
diff -U3 -r xml-security-c-1.7.3.old/xsec/framework/XSECAlgorithmHandler.hpp xml-security-c-1.7.3/xsec/framework/XSECAlgorithmHandler.hpp
--- xml-security-c-1.7.3.old/xsec/framework/XSECAlgorithmHandler.hpp	2012-07-23 19:56:11.000000000 +0300
+++ xml-security-c-1.7.3/xsec/framework/XSECAlgorithmHandler.hpp	2016-09-07 13:07:23.000000000 +0300
@@ -285,7 +285,8 @@
 
 	virtual bool appendHashTxfm(
 		TXFMChain * inputBytes,
-		const XMLCh * URI
+		const XMLCh * URI,
+		const XMLCh * ReferenceURI
 	) = 0;
 
 	//@}
diff -U3 -r xml-security-c-1.7.3.old/xsec/xenc/impl/XENCAlgorithmHandlerDefault.cpp xml-security-c-1.7.3/xsec/xenc/impl/XENCAlgorithmHandlerDefault.cpp
--- xml-security-c-1.7.3.old/xsec/xenc/impl/XENCAlgorithmHandlerDefault.cpp	2013-05-25 02:56:10.000000000 +0300
+++ xml-security-c-1.7.3/xsec/xenc/impl/XENCAlgorithmHandlerDefault.cpp	2016-09-07 13:06:29.000000000 +0300
@@ -1222,7 +1222,8 @@
 
 bool XENCAlgorithmHandlerDefault::appendHashTxfm(
 		TXFMChain * inputBytes,
-		const XMLCh * URI) {
+		const XMLCh * URI,
+		const XMLCh * ReferenceURI) {
 
 	throw XSECException(XSECException::AlgorithmMapperError, 
 			"XENCAlgorithmHandlerDefault - Hash operations not supported");
diff -U3 -r xml-security-c-1.7.3.old/xsec/xenc/impl/XENCAlgorithmHandlerDefault.hpp xml-security-c-1.7.3/xsec/xenc/impl/XENCAlgorithmHandlerDefault.hpp
--- xml-security-c-1.7.3.old/xsec/xenc/impl/XENCAlgorithmHandlerDefault.hpp	2012-07-23 19:56:11.000000000 +0300
+++ xml-security-c-1.7.3/xsec/xenc/impl/XENCAlgorithmHandlerDefault.hpp	2016-09-07 13:06:39.000000000 +0300
@@ -105,7 +105,8 @@
 
 	virtual bool appendHashTxfm(
 		TXFMChain * inputBytes,
-		const XMLCh * URI
+		const XMLCh * URI,
+		const XMLCh * ReferenceURI
 	);
 
 
