1 /*
2   Copyright (C) 2009 GraphicsMagick Group
3 
4   This program is covered by multiple licenses, which are described in
5   Copyright.txt. You should have received a copy of Copyright.txt with this
6   package; otherwise see http://www.graphicsmagick.org/www/Copyright.html.
7 
8   GraphicsMagick Access Confirmation Methods.
9 */
10 #ifndef _MAGICK_CONFIRM_ACCESS_H
11 #define _MAGICK_CONFIRM_ACCESS_H
12 
13 #if defined(__cplusplus) || defined(c_plusplus)
14 extern "C" {
15 #endif
16 
17   typedef enum
18     {
19       UndefinedConfirmAccessMode,
20       FileExecuteConfirmAccessMode, /* Path is to be opened for execution */
21       FileReadConfirmAccessMode,    /* Path is to be opened for read */
22       FileWriteConfirmAccessMode,   /* Path is to be opened for write */
23       URLGetFTPConfirmAccessMode,   /* ftp:// URL get */
24       URLGetFileConfirmAccessMode,  /* file:// URL get */
25       URLGetHTTPConfirmAccessMode   /* http:// URL get */
26     } ConfirmAccessMode;
27 
28   typedef MagickPassFail
29   (*ConfirmAccessHandler)(const ConfirmAccessMode mode,
30                           const char *path,
31                           ExceptionInfo *exception);
32 
33   extern MagickExport MagickPassFail
34   MagickConfirmAccess(const ConfirmAccessMode mode,
35                       const char *path,
36                       ExceptionInfo *exception);
37 
38   extern MagickExport ConfirmAccessHandler
39   MagickSetConfirmAccessHandler(ConfirmAccessHandler handler);
40 
41 #if defined(__cplusplus) || defined(c_plusplus)
42 }
43 #endif
44 
45 #endif /* _MAGICK_CONFIRM_ACCESS_H */
46 
47 /*
48  * Local Variables:
49  * mode: c
50  * c-basic-offset: 2
51  * fill-column: 78
52  * End:
53  */
54