diff options
Diffstat (limited to 'monitor/proxy/gvfsproxyvolumemonitordaemon.c')
-rw-r--r-- | monitor/proxy/gvfsproxyvolumemonitordaemon.c | 66 |
1 files changed, 53 insertions, 13 deletions
diff --git a/monitor/proxy/gvfsproxyvolumemonitordaemon.c b/monitor/proxy/gvfsproxyvolumemonitordaemon.c index 05750036..7a3d01bc 100644 --- a/monitor/proxy/gvfsproxyvolumemonitordaemon.c +++ b/monitor/proxy/gvfsproxyvolumemonitordaemon.c @@ -1079,17 +1079,20 @@ handle_mount_unmount (GVfsRemoteVolumeMonitor *object, /* ---------------------------------------------------------------------------------------------------- */ static gboolean -handle_mount_op_reply (GVfsRemoteVolumeMonitor *object, - GDBusMethodInvocation *invocation, - const gchar *arg_mount_op_id, - gint arg_result, - const gchar *arg_user_name, - const gchar *arg_domain, - const gchar *arg_encoded_password, - gint arg_password_save, - gint arg_choice, - gboolean arg_anonymous, - gpointer user_data) +handle_mount_op_reply2 (GVfsRemoteVolumeMonitor *object, + GDBusMethodInvocation *invocation, + const gchar *arg_mount_op_id, + gint arg_result, + const gchar *arg_user_name, + const gchar *arg_domain, + const gchar *arg_encoded_password, + gint arg_password_save, + gint arg_choice, + gboolean arg_anonymous, + gboolean arg_hidden_volume, + gboolean arg_system_volume, + guint arg_pim, + gpointer user_data) { char *decoded_password; gsize decoded_password_len; @@ -1097,7 +1100,7 @@ handle_mount_op_reply (GVfsRemoteVolumeMonitor *object, GMountOperation *mount_operation; const gchar *sender; - print_debug ("in handle_mount_op_reply"); + print_debug ("in handle_mount_op_reply2"); decoded_password = NULL; sender = g_dbus_method_invocation_get_sender (invocation); @@ -1137,16 +1140,52 @@ handle_mount_op_reply (GVfsRemoteVolumeMonitor *object, g_mount_operation_set_password_save (mount_operation, arg_password_save); g_mount_operation_set_choice (mount_operation, arg_choice); g_mount_operation_set_anonymous (mount_operation, arg_anonymous); + g_mount_operation_set_is_tcrypt_hidden_volume (mount_operation, arg_hidden_volume); + g_mount_operation_set_is_tcrypt_system_volume (mount_operation, arg_system_volume); + g_mount_operation_set_pim (mount_operation, arg_pim); g_mount_operation_reply (mount_operation, arg_result); - gvfs_remote_volume_monitor_complete_mount_op_reply (object, invocation); + /* gvfs_remote_volume_monitor_complete_mount_op_reply2 should be + * identical to gvfs_remote_volume_monitor_complete_mount_op_reply, + * so it should be ok that we call this from handle_mount_op_reply too. + */ + gvfs_remote_volume_monitor_complete_mount_op_reply2 (object, invocation); out: g_free (decoded_password); return TRUE; } +static gboolean +handle_mount_op_reply (GVfsRemoteVolumeMonitor *object, + GDBusMethodInvocation *invocation, + const gchar *arg_mount_op_id, + gint arg_result, + const gchar *arg_user_name, + const gchar *arg_domain, + const gchar *arg_encoded_password, + gint arg_password_save, + gint arg_choice, + gboolean arg_anonymous, + gpointer user_data) +{ + return handle_mount_op_reply2 (object, + invocation, + arg_mount_op_id, + arg_result, + arg_user_name, + arg_domain, + arg_encoded_password, + arg_password_save, + arg_choice, + arg_anonymous, + FALSE, + FALSE, + 0, + user_data); +} + /* ---------------------------------------------------------------------------------------------------- */ static void @@ -1926,6 +1965,7 @@ bus_acquired_handler_cb (GDBusConnection *conn, g_signal_connect (monitor_daemon, "handle-drive-start", G_CALLBACK (handle_drive_start), NULL); g_signal_connect (monitor_daemon, "handle-drive-stop", G_CALLBACK (handle_drive_stop), NULL); g_signal_connect (monitor_daemon, "handle-mount-op-reply", G_CALLBACK (handle_mount_op_reply), NULL); + g_signal_connect (monitor_daemon, "handle-mount-op-reply2", G_CALLBACK (handle_mount_op_reply2), NULL); g_signal_connect (monitor_daemon, "handle-mount-unmount", G_CALLBACK (handle_mount_unmount), NULL); g_signal_connect (monitor_daemon, "handle-volume-mount", G_CALLBACK (handle_volume_mount), NULL); } |