11 #ifdef HAVE_SYS_STAT_H 16 #ifndef INVALID_FILE_ATTRIBUTES 17 #define INVALID_FILE_ATTRIBUTES ((DWORD)-1) 26 # define stat(x,y) _stat(x,y) 64 "xsltNewSecurityPrefs : malloc failed\n");
181 ctxt->
sec = (
void *) sec;
248 struct stat stat_buffer;
286 "File write for %s refused\n",
path);
305 "Directory creation for %s refused\n",
346 "xsltCheckWrite: out of memory for %s\n", URL);
355 if ((
uri->path)&&(
uri->path[0]==
'/')&&
356 (
uri->path[1]!=
'\0')&&(
uri->path[2]==
':'))
377 ret =
check(sec, ctxt, (
const char *)URL);
380 "File write for %s refused\n", URL);
411 "xsltCheckRead: URL parsing failed for %s\n",
426 "Local file read for %s refused\n", URL);
437 ret =
check(sec, ctxt, (
const char *)URL);
440 "Network file read for %s refused\n", URL);
int xsltSetSecurityPrefs(xsltSecurityPrefsPtr sec, xsltSecurityOption option, xsltSecurityCheck func)
int xsltSecurityForbid(xsltSecurityPrefsPtr sec ATTRIBUTE_UNUSED, xsltTransformContextPtr ctxt ATTRIBUTE_UNUSED, const char *value ATTRIBUTE_UNUSED)
static int xsltCheckFilename(const char *path)
XMLPUBFUN char *XMLCALL xmlParserGetDirectory(const char *filename)
xsltSecurityPrefsPtr xsltNewSecurityPrefs(void)
int xsltCheckRead(xsltSecurityPrefsPtr sec, xsltTransformContextPtr ctxt, const xmlChar *URL)
XMLPUBFUN xmlURIPtr XMLCALL xmlParseURI(const char *str)
xsltSecurityCheck readFile
xsltSecurityPrefs * xsltSecurityPrefsPtr
DWORD WINAPI GetFileAttributesA(LPCSTR lpFileName)
XMLPUBFUN xmlURIPtr XMLCALL xmlCreateURI(void)
static xsltSecurityPrefsPtr xsltDefaultSecurityPrefs
void xsltFreeSecurityPrefs(xsltSecurityPrefsPtr sec)
xsltSecurityCheck xsltGetSecurityPrefs(xsltSecurityPrefsPtr sec, xsltSecurityOption option)
#define FILE_ATTRIBUTE_DIRECTORY
static int xsltCheckWritePath(xsltSecurityPrefsPtr sec, xsltTransformContextPtr ctxt, const char *path)
XMLPUBVAR xmlFreeFunc xmlFree
#define INVALID_FILE_ATTRIBUTES
void check(CONTEXT *pContext)
int(* xsltSecurityCheck)(xsltSecurityPrefsPtr sec, xsltTransformContextPtr ctxt, const char *value)
void xsltSetDefaultSecurityPrefs(xsltSecurityPrefsPtr sec)
xsltSecurityCheck createDir
int xsltSecurityAllow(xsltSecurityPrefsPtr sec ATTRIBUTE_UNUSED, xsltTransformContextPtr ctxt ATTRIBUTE_UNUSED, const char *value ATTRIBUTE_UNUSED)
xsltSecurityCheck readNet
_CRTIMP int __cdecl stat(const char *_Filename, struct stat *_Stat)
XMLPUBFUN void XMLCALL xmlFreeURI(xmlURIPtr uri)
XMLPUBVAR xmlMallocFunc xmlMalloc
int xsltCheckWrite(xsltSecurityPrefsPtr sec, xsltTransformContextPtr ctxt, const xmlChar *URL)
xsltSecurityCheck createFile
xsltSecurityCheck writeNet
xsltSecurityPrefsPtr xsltGetDefaultSecurityPrefs(void)
XMLPUBFUN int XMLCALL xmlStrEqual(const xmlChar *str1, const xmlChar *str2)
void xsltTransformError(xsltTransformContextPtr ctxt, xsltStylesheetPtr style, xmlNodePtr node, const char *msg,...)
void xsltInitGlobals(void)
XMLPUBFUN xmlChar *XMLCALL xmlStrdup(const xmlChar *cur)
int xsltSetCtxtSecurityPrefs(xsltSecurityPrefsPtr sec, xsltTransformContextPtr ctxt)