1/* 2 * Copyright (C) 2012 Igalia S.L. 3 * 4 * This library is free software; you can redistribute it and/or 5 * modify it under the terms of the GNU Lesser General Public 6 * License as published by the Free Software Foundation; either 7 * version 2,1 of the License, or (at your option) any later version. 8 * 9 * This library is distributed in the hope that it will be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 * Library General Public License for more details. 13 * 14 * You should have received a copy of the GNU Library General Public License 15 * along with this library; see the file COPYING.LIB. If not, write to 16 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 17 * Boston, MA 02110-1301, USA. 18 */ 19 20#if !defined(__WEBKIT2_H_INSIDE__) && !defined(WEBKIT2_COMPILATION) 21#error "Only <webkit2/webkit2.h> can be included directly." 22#endif 23 24#ifndef WebKitSecurityManager_h 25#define WebKitSecurityManager_h 26 27#include <glib-object.h> 28#include <webkit2/WebKitDefines.h> 29 30G_BEGIN_DECLS 31 32#define WEBKIT_TYPE_SECURITY_MANAGER (webkit_security_manager_get_type()) 33#define WEBKIT_SECURITY_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), WEBKIT_TYPE_SECURITY_MANAGER, WebKitSecurityManager)) 34#define WEBKIT_IS_SECURITY_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), WEBKIT_TYPE_SECURITY_MANAGER)) 35#define WEBKIT_SECURITY_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), WEBKIT_TYPE_SECURITY_MANAGER, WebKitSecurityManagerClass)) 36#define WEBKIT_IS_SECURITY_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), WEBKIT_TYPE_SECURITY_MANAGER)) 37#define WEBKIT_SECURITY_MANAGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), WEBKIT_TYPE_SECURITY_MANAGER, WebKitSecurityManagerClass)) 38 39typedef struct _WebKitSecurityManager WebKitSecurityManager; 40typedef struct _WebKitSecurityManagerClass WebKitSecurityManagerClass; 41typedef struct _WebKitSecurityManagerPrivate WebKitSecurityManagerPrivate; 42 43struct _WebKitSecurityManager { 44 GObject parent; 45 46 WebKitSecurityManagerPrivate *priv; 47}; 48 49struct _WebKitSecurityManagerClass { 50 GObjectClass parent_class; 51 52 void (*_webkit_reserved0) (void); 53 void (*_webkit_reserved1) (void); 54 void (*_webkit_reserved2) (void); 55 void (*_webkit_reserved3) (void); 56}; 57 58WEBKIT_API GType 59webkit_security_manager_get_type (void); 60 61WEBKIT_API void 62webkit_security_manager_register_uri_scheme_as_local (WebKitSecurityManager *security_manager, 63 const gchar *scheme); 64 65WEBKIT_API gboolean 66webkit_security_manager_uri_scheme_is_local (WebKitSecurityManager *security_manager, 67 const gchar *scheme); 68 69WEBKIT_API void 70webkit_security_manager_register_uri_scheme_as_no_access (WebKitSecurityManager *security_manager, 71 const gchar *scheme); 72 73WEBKIT_API gboolean 74webkit_security_manager_uri_scheme_is_no_access (WebKitSecurityManager *security_manager, 75 const gchar *scheme); 76 77WEBKIT_API void 78webkit_security_manager_register_uri_scheme_as_display_isolated (WebKitSecurityManager *security_manager, 79 const gchar *scheme); 80 81WEBKIT_API gboolean 82webkit_security_manager_uri_scheme_is_display_isolated (WebKitSecurityManager *security_manager, 83 const gchar *scheme); 84 85WEBKIT_API void 86webkit_security_manager_register_uri_scheme_as_secure (WebKitSecurityManager *security_manager, 87 const gchar *scheme); 88 89WEBKIT_API gboolean 90webkit_security_manager_uri_scheme_is_secure (WebKitSecurityManager *security_manager, 91 const gchar *scheme); 92 93WEBKIT_API void 94webkit_security_manager_register_uri_scheme_as_cors_enabled (WebKitSecurityManager *security_manager, 95 const gchar *scheme); 96 97WEBKIT_API gboolean 98webkit_security_manager_uri_scheme_is_cors_enabled (WebKitSecurityManager *security_manager, 99 const gchar *scheme); 100 101WEBKIT_API void 102webkit_security_manager_register_uri_scheme_as_empty_document (WebKitSecurityManager *security_manager, 103 const gchar *scheme); 104 105WEBKIT_API gboolean 106webkit_security_manager_uri_scheme_is_empty_document (WebKitSecurityManager *security_manager, 107 const gchar *scheme); 108 109G_END_DECLS 110 111#endif 112