1 /* GIO - GLib Input, Output and Streaming Library 2 * 3 * Copyright (C) 2006-2007 Red Hat, Inc. 4 * 5 * This library is free software; you can redistribute it and/or 6 * modify it under the terms of the GNU Lesser General Public 7 * License as published by the Free Software Foundation; either 8 * version 2 of the License, or (at your option) any later version. 9 * 10 * This library is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 * Lesser General Public License for more details. 14 * 15 * You should have received a copy of the GNU Lesser General 16 * Public License along with this library; if not, write to the 17 * Free Software Foundation, Inc., 59 Temple Place, Suite 330, 18 * Boston, MA 02111-1307, USA. 19 * 20 * Author: Alexander Larsson <alexl@redhat.com> 21 */ 22 23 #if !defined (__GIO_GIO_H_INSIDE__) && !defined (GIO_COMPILATION) 24 #error "Only <gio/gio.h> can be included directly." 25 #endif 26 27 #ifndef __G_MOUNT_OPERATION_H__ 28 #define __G_MOUNT_OPERATION_H__ 29 30 #include <gio/giotypes.h> 31 32 G_BEGIN_DECLS 33 34 #define G_TYPE_MOUNT_OPERATION (g_mount_operation_get_type ()) 35 #define G_MOUNT_OPERATION(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), G_TYPE_MOUNT_OPERATION, GMountOperation)) 36 #define G_MOUNT_OPERATION_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), G_TYPE_MOUNT_OPERATION, GMountOperationClass)) 37 #define G_IS_MOUNT_OPERATION(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), G_TYPE_MOUNT_OPERATION)) 38 #define G_IS_MOUNT_OPERATION_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), G_TYPE_MOUNT_OPERATION)) 39 #define G_MOUNT_OPERATION_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), G_TYPE_MOUNT_OPERATION, GMountOperationClass)) 40 41 /** 42 * GMountOperation: 43 * 44 * Class for providing authentication methods for mounting operations, 45 * such as mounting a file locally, or authenticating with a server. 46 **/ 47 typedef struct _GMountOperationClass GMountOperationClass; 48 typedef struct _GMountOperationPrivate GMountOperationPrivate; 49 50 struct _GMountOperation 51 { 52 GObject parent_instance; 53 54 GMountOperationPrivate *priv; 55 }; 56 57 struct _GMountOperationClass 58 { 59 GObjectClass parent_class; 60 61 /* signals: */ 62 63 void (* ask_password) (GMountOperation *op, 64 const char *message, 65 const char *default_user, 66 const char *default_domain, 67 GAskPasswordFlags flags); 68 69 void (* ask_question) (GMountOperation *op, 70 const char *message, 71 const char *choices[]); 72 73 void (* reply) (GMountOperation *op, 74 GMountOperationResult result); 75 76 void (* aborted) (GMountOperation *op); 77 78 /*< private >*/ 79 /* Padding for future expansion */ 80 void (*_g_reserved1) (void); 81 void (*_g_reserved2) (void); 82 void (*_g_reserved3) (void); 83 void (*_g_reserved4) (void); 84 void (*_g_reserved5) (void); 85 void (*_g_reserved6) (void); 86 void (*_g_reserved7) (void); 87 void (*_g_reserved8) (void); 88 void (*_g_reserved9) (void); 89 void (*_g_reserved10) (void); 90 void (*_g_reserved11) (void); 91 }; 92 93 GType g_mount_operation_get_type (void) G_GNUC_CONST; 94 GMountOperation * g_mount_operation_new (void); 95 96 const char * g_mount_operation_get_username (GMountOperation *op); 97 void g_mount_operation_set_username (GMountOperation *op, 98 const char *username); 99 const char * g_mount_operation_get_password (GMountOperation *op); 100 void g_mount_operation_set_password (GMountOperation *op, 101 const char *password); 102 gboolean g_mount_operation_get_anonymous (GMountOperation *op); 103 void g_mount_operation_set_anonymous (GMountOperation *op, 104 gboolean anonymous); 105 const char * g_mount_operation_get_domain (GMountOperation *op); 106 void g_mount_operation_set_domain (GMountOperation *op, 107 const char *domain); 108 GPasswordSave g_mount_operation_get_password_save (GMountOperation *op); 109 void g_mount_operation_set_password_save (GMountOperation *op, 110 GPasswordSave save); 111 int g_mount_operation_get_choice (GMountOperation *op); 112 void g_mount_operation_set_choice (GMountOperation *op, 113 int choice); 114 void g_mount_operation_reply (GMountOperation *op, 115 GMountOperationResult result); 116 117 G_END_DECLS 118 119 #endif /* __G_MOUNT_OPERATION_H__ */ 120