28#include <rtl/ustring.hxx>
33#include <com/sun/star/xml/crypto/XUriBinding.hpp>
38static css::uno::Reference< css::xml::crypto::XUriBinding >
m_xUriBinding ;
44 css::uno::Reference< css::io::XInputStream > xInputStream ;
56 ::rtl::Uri::encode( OUString::createFromAscii( uri ),
57 rtl_UriCharClassUric, rtl_UriEncodeKeepEscapes, RTL_TEXTENCODING_UTF8);
59 if (!xInputStream.is())
64 OUString::createFromAscii(uri));
68 "xmlStreamMath: uri is '" << uri <<
"', returning " << xInputStream.is());
69 if (xInputStream.is())
77 css::uno::Reference< css::io::XInputStream > xInputStream ;
86 ::rtl::Uri::encode( OUString::createFromAscii( uri ),
87 rtl_UriCharClassUric, rtl_UriEncodeKeepEscapes, RTL_TEXTENCODING_UTF8);
89 if (!xInputStream.is())
94 OUString::createFromAscii(uri));
97 if( xInputStream.is() ) {
98 css::io::XInputStream* pInputStream ;
99 pInputStream = xInputStream.get() ;
100 pInputStream->acquire() ;
102 "xmlStreamOpen: uri is '" << uri <<
"', returning context " << pInputStream);
103 return static_cast<void*
>(pInputStream) ;
113 css::uno::Reference< css::io::XInputStream > xInputStream ;
114 css::uno::Sequence< sal_Int8 > outSeqs( len ) ;
119 if( context !=
nullptr ) {
120 xInputStream =
static_cast<css::io::XInputStream*
>(context);
121 if( !xInputStream.is() )
124 numbers = xInputStream->readBytes( outSeqs, len ) ;
125 const sal_Int8* readBytes = outSeqs.getArray() ;
126 for(
int i = 0 ;
i < numbers ;
i ++ )
127 *( buffer +
i ) = *( readBytes +
i ) ;
131 SAL_INFO(
"xmlsecurity.xmlsec",
"xmlStreamRead: context is " << context <<
", buffer is now '"
132 << OString(buffer, numbers) <<
"'");
140 if( context !=
nullptr ) {
141 css::io::XInputStream* pInputStream ;
142 pInputStream =
static_cast<css::io::XInputStream*
>(context);
143 pInputStream->release() ;
144 SAL_INFO(
"xmlsecurity.xmlsec",
"xmlStreamRead: closed context " << context);
163 xmlSecIOCleanupCallbacks() ;
170 if (xmlSecCheckVersionExt(1, 2, 26, xmlSecCheckVersionABICompatible))
174 int cbs = xmlSecIORegisterDefaultCallbacks() ;
180 cbs = xmlSecIORegisterCallbacks(
192 int cbs = xmlSecIORegisterCallbacks(
203 cbs = xmlSecIORegisterDefaultCallbacks() ;
216 css::uno::Reference< css::xml::crypto::XUriBinding >
const & aUriBinding
void clearErrorRecorder()
#define SAL_INFO(area, stream)
int xmlRegisterStreamInputCallbacks(css::uno::Reference< css::xml::crypto::XUriBinding > const &aUriBinding)
int xmlUnregisterStreamInputCallbacks()
int xmlEnableStreamInputCallbacks()
static css::uno::Reference< css::xml::crypto::XUriBinding > m_xUriBinding
void xmlDisableStreamInputCallbacks()
static int xmlStreamRead(void *context, char *buffer, int len)
static bool g_bInputCallbacksEnabled
static int xmlStreamClose(void *context)
static void * xmlStreamOpen(const char *uri)
static bool g_bInputCallbacksRegistered
static int xmlStreamMatch(const char *uri)