run vala
[moonshot-ui.git] / src / moonshot-server.c
index eb024b7..43f3835 100644 (file)
@@ -1,10 +1,9 @@
-/* moonshot-server.c generated by valac 0.10.4, the Vala compiler
+/* moonshot-server.c generated by valac 0.16.1, the Vala compiler
  * generated from moonshot-server.vala, do not modify */
 
 
 #include <glib.h>
 #include <glib-object.h>
-#include <gtk/gtk.h>
 #include <gio/gio.h>
 #include <stdlib.h>
 #include <string.h>
@@ -21,17 +20,19 @@ typedef struct _MoonshotServer MoonshotServer;
 typedef struct _MoonshotServerClass MoonshotServerClass;
 typedef struct _MoonshotServerPrivate MoonshotServerPrivate;
 
-#define TYPE_IDENTITY_MANAGER_VIEW (identity_manager_view_get_type ())
-#define IDENTITY_MANAGER_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerView))
-#define IDENTITY_MANAGER_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerViewClass))
-#define IS_IDENTITY_MANAGER_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_MANAGER_VIEW))
-#define IS_IDENTITY_MANAGER_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_MANAGER_VIEW))
-#define IDENTITY_MANAGER_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerViewClass))
+#define TYPE_IDENTITY_MANAGER_APP (identity_manager_app_get_type ())
+#define IDENTITY_MANAGER_APP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_MANAGER_APP, IdentityManagerApp))
+#define IDENTITY_MANAGER_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_MANAGER_APP, IdentityManagerAppClass))
+#define IS_IDENTITY_MANAGER_APP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_MANAGER_APP))
+#define IS_IDENTITY_MANAGER_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_MANAGER_APP))
+#define IDENTITY_MANAGER_APP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_MANAGER_APP, IdentityManagerAppClass))
 
-typedef struct _IdentityManagerView IdentityManagerView;
-typedef struct _IdentityManagerViewClass IdentityManagerViewClass;
-#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
+typedef struct _IdentityManagerApp IdentityManagerApp;
+typedef struct _IdentityManagerAppClass IdentityManagerAppClass;
+#define _identity_manager_app_unref0(var) ((var == NULL) ? NULL : (var = (identity_manager_app_unref (var), NULL)))
 #define _g_free0(var) (var = (g_free (var), NULL))
+#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
+typedef struct _Block2Data Block2Data;
 
 #define TYPE_IDENTITY_REQUEST (identity_request_get_type ())
 #define IDENTITY_REQUEST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_REQUEST, IdentityRequest))
@@ -63,9 +64,8 @@ typedef struct _IdCardClass IdCardClass;
 
 typedef struct _TrustAnchor TrustAnchor;
 typedef struct _TrustAnchorClass TrustAnchorClass;
-typedef struct _Block3Data Block3Data;
 typedef struct _MoonshotServerGetIdentityData MoonshotServerGetIdentityData;
-typedef struct _Block4Data Block4Data;
+typedef struct _Block3Data Block3Data;
 typedef struct _MoonshotServerGetDefaultIdentityData MoonshotServerGetDefaultIdentityData;
 
 #define TYPE_RULE (rule_get_type ())
@@ -92,7 +92,13 @@ struct _MoonshotServerClass {
 };
 
 struct _MoonshotServerPrivate {
-       IdentityManagerView* main_window;
+       IdentityManagerApp* parent_app;
+};
+
+struct _Block2Data {
+       int _ref_count_;
+       MoonshotServer * self;
+       gpointer _async_data_;
 };
 
 typedef void (*ReturnIdentityCallback) (IdentityRequest* request, void* user_data);
@@ -102,60 +108,99 @@ struct _IdentityRequest {
        IdCard* id_card;
        gboolean complete;
        gboolean select_default;
-       char* nai;
-       char* password;
-       char* service;
+       gchar* nai;
+       gchar* password;
+       gchar* service;
+       GSList* candidates;
 };
 
 struct _IdentityRequestClass {
        GObjectClass parent_class;
 };
 
-struct _Block3Data {
-       int _ref_count_;
-       MoonshotServer * self;
-       gpointer _async_data_;
-};
-
 struct _MoonshotServerGetIdentityData {
        int _state_;
+       GObject* _source_object_;
        GAsyncResult* _res_;
        GSimpleAsyncResult* _async_result;
        MoonshotServer* self;
-       char* nai;
-       char* password;
-       char* service;
-       char* nai_out;
-       char* password_out;
-       char* server_certificate_hash;
-       char* ca_certificate;
-       char* subject_name_constraint;
-       char* subject_alt_name_constraint;
+       gchar* nai;
+       gchar* password;
+       gchar* service;
+       gchar* nai_out;
+       gchar* password_out;
+       gchar* server_certificate_hash;
+       gchar* ca_certificate;
+       gchar* subject_name_constraint;
+       gchar* subject_alt_name_constraint;
        gboolean result;
+       Block2Data* _data2_;
+       IdentityManagerApp* _tmp0_;
+       const gchar* _tmp1_;
+       const gchar* _tmp2_;
+       const gchar* _tmp3_;
+       IdentityRequest* _tmp4_;
        IdentityRequest* request;
-       char* _tmp0_;
-       char* _tmp1_;
-       char* _tmp2_;
-       char* _tmp3_;
-       char* _tmp4_;
-       char* _tmp5_;
+       IdentityRequest* _tmp5_;
+       IdentityRequest* _tmp6_;
+       gchar* _tmp7_;
+       gchar* _tmp8_;
+       gchar* _tmp9_;
+       gchar* _tmp10_;
+       gchar* _tmp11_;
+       gchar* _tmp12_;
+       IdentityRequest* _tmp13_;
+       IdCard* _tmp14_;
+       IdCard* _tmp15_;
        IdCard* id_card;
-       char* _tmp6_;
-       char* _tmp7_;
-       char* _tmp8_;
-       char* _tmp9_;
-       char* _tmp10_;
-       char* _tmp11_;
-       char* _tmp12_;
-       char* _tmp13_;
-       char* _tmp14_;
-       char* _tmp15_;
-       char* _tmp16_;
-       char* _tmp17_;
-       Block3Data* _data3_;
+       IdCard* _tmp16_;
+       IdCard* _tmp17_;
+       const gchar* _tmp18_;
+       const gchar* _tmp19_;
+       gchar* _tmp20_;
+       IdCard* _tmp21_;
+       const gchar* _tmp22_;
+       const gchar* _tmp23_;
+       gchar* _tmp24_;
+       IdCard* _tmp25_;
+       TrustAnchor* _tmp26_;
+       TrustAnchor* _tmp27_;
+       const gchar* _tmp28_;
+       const gchar* _tmp29_;
+       gchar* _tmp30_;
+       IdCard* _tmp31_;
+       TrustAnchor* _tmp32_;
+       TrustAnchor* _tmp33_;
+       const gchar* _tmp34_;
+       const gchar* _tmp35_;
+       gchar* _tmp36_;
+       IdCard* _tmp37_;
+       TrustAnchor* _tmp38_;
+       TrustAnchor* _tmp39_;
+       const gchar* _tmp40_;
+       const gchar* _tmp41_;
+       gchar* _tmp42_;
+       IdCard* _tmp43_;
+       TrustAnchor* _tmp44_;
+       TrustAnchor* _tmp45_;
+       const gchar* _tmp46_;
+       const gchar* _tmp47_;
+       gchar* _tmp48_;
+       const gchar* _tmp49_;
+       gchar* _tmp50_;
+       const gchar* _tmp51_;
+       gchar* _tmp52_;
+       const gchar* _tmp53_;
+       gchar* _tmp54_;
+       const gchar* _tmp55_;
+       gchar* _tmp56_;
+       const gchar* _tmp57_;
+       gchar* _tmp58_;
+       const gchar* _tmp59_;
+       gchar* _tmp60_;
 };
 
-struct _Block4Data {
+struct _Block3Data {
        int _ref_count_;
        MoonshotServer * self;
        gpointer _async_data_;
@@ -163,103 +208,152 @@ struct _Block4Data {
 
 struct _MoonshotServerGetDefaultIdentityData {
        int _state_;
+       GObject* _source_object_;
        GAsyncResult* _res_;
        GSimpleAsyncResult* _async_result;
        MoonshotServer* self;
-       char* nai_out;
-       char* password_out;
-       char* server_certificate_hash;
-       char* ca_certificate;
-       char* subject_name_constraint;
-       char* subject_alt_name_constraint;
+       gchar* nai_out;
+       gchar* password_out;
+       gchar* server_certificate_hash;
+       gchar* ca_certificate;
+       gchar* subject_name_constraint;
+       gchar* subject_alt_name_constraint;
        gboolean result;
+       Block3Data* _data3_;
+       IdentityManagerApp* _tmp0_;
+       IdentityRequest* _tmp1_;
        IdentityRequest* request;
-       char* _tmp0_;
-       char* _tmp1_;
-       char* _tmp2_;
-       char* _tmp3_;
-       char* _tmp4_;
-       char* _tmp5_;
-       char* _tmp6_;
-       char* _tmp7_;
-       char* _tmp8_;
-       char* _tmp9_;
-       char* _tmp10_;
-       char* _tmp11_;
-       char* _tmp12_;
-       char* _tmp13_;
-       char* _tmp14_;
-       char* _tmp15_;
-       char* _tmp16_;
-       char* _tmp17_;
-       Block4Data* _data4_;
+       IdentityRequest* _tmp2_;
+       IdentityRequest* _tmp3_;
+       gchar* _tmp4_;
+       gchar* _tmp5_;
+       gchar* _tmp6_;
+       gchar* _tmp7_;
+       gchar* _tmp8_;
+       gchar* _tmp9_;
+       IdentityRequest* _tmp10_;
+       IdCard* _tmp11_;
+       IdentityRequest* _tmp12_;
+       IdCard* _tmp13_;
+       const gchar* _tmp14_;
+       const gchar* _tmp15_;
+       gchar* _tmp16_;
+       IdentityRequest* _tmp17_;
+       IdCard* _tmp18_;
+       const gchar* _tmp19_;
+       const gchar* _tmp20_;
+       gchar* _tmp21_;
+       IdentityRequest* _tmp22_;
+       IdCard* _tmp23_;
+       TrustAnchor* _tmp24_;
+       TrustAnchor* _tmp25_;
+       const gchar* _tmp26_;
+       const gchar* _tmp27_;
+       gchar* _tmp28_;
+       IdentityRequest* _tmp29_;
+       IdCard* _tmp30_;
+       TrustAnchor* _tmp31_;
+       TrustAnchor* _tmp32_;
+       const gchar* _tmp33_;
+       const gchar* _tmp34_;
+       gchar* _tmp35_;
+       IdentityRequest* _tmp36_;
+       IdCard* _tmp37_;
+       TrustAnchor* _tmp38_;
+       TrustAnchor* _tmp39_;
+       const gchar* _tmp40_;
+       const gchar* _tmp41_;
+       gchar* _tmp42_;
+       IdentityRequest* _tmp43_;
+       IdCard* _tmp44_;
+       TrustAnchor* _tmp45_;
+       TrustAnchor* _tmp46_;
+       const gchar* _tmp47_;
+       const gchar* _tmp48_;
+       gchar* _tmp49_;
+       const gchar* _tmp50_;
+       gchar* _tmp51_;
+       const gchar* _tmp52_;
+       gchar* _tmp53_;
+       const gchar* _tmp54_;
+       gchar* _tmp55_;
+       const gchar* _tmp56_;
+       gchar* _tmp57_;
+       const gchar* _tmp58_;
+       gchar* _tmp59_;
+       const gchar* _tmp60_;
+       gchar* _tmp61_;
 };
 
 struct _Rule {
-       char* pattern;
-       char* always_confirm;
+       gchar* pattern;
+       gchar* always_confirm;
 };
 
 
+static gpointer moonshot_server_parent_class = NULL;
 extern IdCard** web_provisioning_cards;
 extern gint web_provisioning_cards_length1;
-static gpointer moonshot_server_parent_class = NULL;
 
 GType moonshot_server_get_type (void) G_GNUC_CONST;
 guint moonshot_server_register_object (void* object, GDBusConnection* connection, const gchar* path, GError** error);
-GType identity_manager_view_get_type (void) G_GNUC_CONST;
+gpointer identity_manager_app_ref (gpointer instance);
+void identity_manager_app_unref (gpointer instance);
+GParamSpec* param_spec_identity_manager_app (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
+void value_set_identity_manager_app (GValue* value, gpointer v_object);
+void value_take_identity_manager_app (GValue* value, gpointer v_object);
+gpointer value_get_identity_manager_app (const GValue* value);
+GType identity_manager_app_get_type (void) G_GNUC_CONST;
 #define MOONSHOT_SERVER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_MOONSHOT_SERVER, MoonshotServerPrivate))
 enum  {
        MOONSHOT_SERVER_DUMMY_PROPERTY
 };
-MoonshotServer* moonshot_server_new (GtkWindow* window);
-MoonshotServer* moonshot_server_construct (GType object_type, GtkWindow* window);
+MoonshotServer* moonshot_server_new (IdentityManagerApp* app);
+MoonshotServer* moonshot_server_construct (GType object_type, IdentityManagerApp* app);
 static void moonshot_server_get_identity_data_free (gpointer _data);
-static void moonshot_server_get_identity_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_);
-void moonshot_server_get_identity (MoonshotServer* self, const char* nai, const char* password, const char* service, GAsyncReadyCallback _callback_, gpointer _user_data_);
-gboolean moonshot_server_get_identity_finish (MoonshotServer* self, GAsyncResult* _res_, char** nai_out, char** password_out, char** server_certificate_hash, char** ca_certificate, char** subject_name_constraint, char** subject_alt_name_constraint);
-static gboolean moonshot_server_get_identity_co (MoonshotServerGetIdentityData* data);
-IdentityRequest* identity_request_new (IdentityManagerView* main_window, const char* nai, const char* password, const char* service);
-IdentityRequest* identity_request_construct (GType object_type, IdentityManagerView* main_window, const char* nai, const char* password, const char* service);
+void moonshot_server_get_identity (MoonshotServer* self, const gchar* nai, const gchar* password, const gchar* service, GAsyncReadyCallback _callback_, gpointer _user_data_);
+gboolean moonshot_server_get_identity_finish (MoonshotServer* self, GAsyncResult* _res_, gchar** nai_out, gchar** password_out, gchar** server_certificate_hash, gchar** ca_certificate, gchar** subject_name_constraint, gchar** subject_alt_name_constraint);
+static gboolean moonshot_server_get_identity_co (MoonshotServerGetIdentityData* _data_);
+static Block2Data* block2_data_ref (Block2Data* _data2_);
+static void block2_data_unref (void * _userdata_);
+IdentityRequest* identity_request_new (IdentityManagerApp* app, const gchar* nai, const gchar* password, const gchar* service);
+IdentityRequest* identity_request_construct (GType object_type, IdentityManagerApp* app, const gchar* nai, const gchar* password, const gchar* service);
 GType identity_request_get_type (void) G_GNUC_CONST;
 void identity_request_set_callback (IdentityRequest* self, ReturnIdentityCallback cb, void* cb_target, GDestroyNotify cb_target_destroy_notify);
-static void _lambda4_ (IdentityRequest* IdentityRequest, Block3Data* _data3_);
-static void __lambda4__return_identity_callback (IdentityRequest* request, gpointer self);
+static void __lambda5_ (Block2Data* _data2_, IdentityRequest* IdentityRequest);
+static void ___lambda5__return_identity_callback (IdentityRequest* request, gpointer self);
 gboolean identity_request_execute (IdentityRequest* self);
 GType id_card_get_type (void) G_GNUC_CONST;
-const char* id_card_get_nai (IdCard* self);
-const char* id_card_get_password (IdCard* self);
+const gchar* id_card_get_nai (IdCard* self);
+const gchar* id_card_get_password (IdCard* self);
 GType trust_anchor_get_type (void) G_GNUC_CONST;
 TrustAnchor* id_card_get_trust_anchor (IdCard* self);
-const char* trust_anchor_get_server_cert (TrustAnchor* self);
-const char* trust_anchor_get_ca_cert (TrustAnchor* self);
-const char* trust_anchor_get_subject (TrustAnchor* self);
-const char* trust_anchor_get_subject_alt (TrustAnchor* self);
-static Block3Data* block3_data_ref (Block3Data* _data3_);
-static void block3_data_unref (Block3Data* _data3_);
+const gchar* trust_anchor_get_server_cert (TrustAnchor* self);
+const gchar* trust_anchor_get_ca_cert (TrustAnchor* self);
+const gchar* trust_anchor_get_subject (TrustAnchor* self);
+const gchar* trust_anchor_get_subject_alt (TrustAnchor* self);
 static void moonshot_server_get_default_identity_data_free (gpointer _data);
-static void moonshot_server_get_default_identity_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_);
 void moonshot_server_get_default_identity (MoonshotServer* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
-gboolean moonshot_server_get_default_identity_finish (MoonshotServer* self, GAsyncResult* _res_, char** nai_out, char** password_out, char** server_certificate_hash, char** ca_certificate, char** subject_name_constraint, char** subject_alt_name_constraint);
-static gboolean moonshot_server_get_default_identity_co (MoonshotServerGetDefaultIdentityData* data);
-IdentityRequest* identity_request_new_default (IdentityManagerView* main_window);
-IdentityRequest* identity_request_construct_default (GType object_type, IdentityManagerView* main_window);
-static void _lambda5_ (IdentityRequest* IdentityRequest, Block4Data* _data4_);
-static void __lambda5__return_identity_callback (IdentityRequest* request, gpointer self);
-static Block4Data* block4_data_ref (Block4Data* _data4_);
-static void block4_data_unref (Block4Data* _data4_);
-gboolean moonshot_server_install_id_card (MoonshotServer* self, const char* display_name, const char* user_name, const char* password, const char* realm, char** rules_patterns, int rules_patterns_length1, char** rules_always_confirm, int rules_always_confirm_length1, char** services, int services_length1, const char* ca_cert, const char* subject, const char* subject_alt, const char* server_cert);
+gboolean moonshot_server_get_default_identity_finish (MoonshotServer* self, GAsyncResult* _res_, gchar** nai_out, gchar** password_out, gchar** server_certificate_hash, gchar** ca_certificate, gchar** subject_name_constraint, gchar** subject_alt_name_constraint);
+static gboolean moonshot_server_get_default_identity_co (MoonshotServerGetDefaultIdentityData* _data_);
+static Block3Data* block3_data_ref (Block3Data* _data3_);
+static void block3_data_unref (void * _userdata_);
+IdentityRequest* identity_request_new_default (IdentityManagerApp* app);
+IdentityRequest* identity_request_construct_default (GType object_type, IdentityManagerApp* app);
+static void __lambda6_ (Block3Data* _data3_, IdentityRequest* IdentityRequest);
+static void ___lambda6__return_identity_callback (IdentityRequest* request, gpointer self);
+gboolean moonshot_server_install_id_card (MoonshotServer* self, const gchar* display_name, const gchar* user_name, const gchar* password, const gchar* realm, gchar** rules_patterns, int rules_patterns_length1, gchar** rules_always_confirm, int rules_always_confirm_length1, gchar** services, int services_length1, const gchar* ca_cert, const gchar* subject, const gchar* subject_alt, const gchar* server_cert);
 IdCard* id_card_new (void);
 IdCard* id_card_construct (GType object_type);
-void id_card_set_display_name (IdCard* self, const char* value);
-void id_card_set_username (IdCard* self, const char* value);
-void id_card_set_password (IdCard* self, const char* value);
-void id_card_set_issuer (IdCard* self, const char* value);
-void id_card_set_services (IdCard* self, char** value, int value_length1);
-void trust_anchor_set_ca_cert (TrustAnchor* self, const char* value);
-void trust_anchor_set_subject (TrustAnchor* self, const char* value);
-void trust_anchor_set_subject_alt (TrustAnchor* self, const char* value);
-void trust_anchor_set_server_cert (TrustAnchor* self, const char* value);
+void id_card_set_display_name (IdCard* self, const gchar* value);
+void id_card_set_username (IdCard* self, const gchar* value);
+void id_card_set_password (IdCard* self, const gchar* value);
+void id_card_set_issuer (IdCard* self, const gchar* value);
+void id_card_set_services (IdCard* self, gchar** value, int value_length1);
+void trust_anchor_set_ca_cert (TrustAnchor* self, const gchar* value);
+void trust_anchor_set_subject (TrustAnchor* self, const gchar* value);
+void trust_anchor_set_subject_alt (TrustAnchor* self, const gchar* value);
+void trust_anchor_set_server_cert (TrustAnchor* self, const gchar* value);
 GType rule_get_type (void) G_GNUC_CONST;
 Rule* rule_dup (const Rule* self);
 void rule_free (Rule* self);
@@ -268,10 +362,10 @@ void rule_destroy (Rule* self);
 void id_card_set_rules (IdCard* self, Rule* value, int value_length1);
 static void _vala_Rule_array_free (Rule* array, gint array_length);
 Rule* id_card_get_rules (IdCard* self, int* result_length1);
-gboolean identity_manager_view_add_identity (IdentityManagerView* self, IdCard* id_card);
-gint moonshot_server_install_from_file (MoonshotServer* self, const char* file_name);
-WebProvisioningParser* web_provisioning_parser_new (const char* path);
-WebProvisioningParser* web_provisioning_parser_construct (GType object_type, const char* path);
+gboolean identity_manager_app_add_identity (IdentityManagerApp* self, IdCard* id);
+gint moonshot_server_install_from_file (MoonshotServer* self, const gchar* file_name);
+WebProvisioningParser* web_provisioning_parser_new (const gchar* path);
+WebProvisioningParser* web_provisioning_parser_construct (GType object_type, const gchar* path);
 gpointer web_provisioning_parser_ref (gpointer instance);
 void web_provisioning_parser_unref (gpointer instance);
 GParamSpec* web_provisioning_param_spec_parser (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
@@ -280,18 +374,18 @@ void web_provisioning_value_take_parser (GValue* value, gpointer v_object);
 gpointer web_provisioning_value_get_parser (const GValue* value);
 GType web_provisioning_parser_get_type (void) G_GNUC_CONST;
 void web_provisioning_parser_parse (WebProvisioningParser* self);
-const char* id_card_get_display_name (IdCard* self);
-const char* id_card_get_username (IdCard* self);
-const char* id_card_get_issuer (IdCard* self);
-char** id_card_get_services (IdCard* self, int* result_length1);
+const gchar* id_card_get_display_name (IdCard* self);
+const gchar* id_card_get_username (IdCard* self);
+const gchar* id_card_get_issuer (IdCard* self);
+gchar** id_card_get_services (IdCard* self, int* result_length1);
 static void moonshot_server_finalize (GObject* obj);
-static void moonshot_server_dbus_interface_method_call (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* method_name, GVariant* parameters, GDBusMethodInvocation* invocation, gpointer user_data);
 static void _dbus_moonshot_server_get_identity (MoonshotServer* self, GVariant* parameters, GDBusMethodInvocation* invocation);
-static void _dbus_moonshot_server_get_identity_ready (GObject * source_object, GAsyncResult * _res_, gpointer _user_data_);
+static void _dbus_moonshot_server_get_identity_ready (GObject * source_object, GAsyncResult * _res_, gpointer _user_data_);
 static void _dbus_moonshot_server_get_default_identity (MoonshotServer* self, GVariant* parameters, GDBusMethodInvocation* invocation);
-static void _dbus_moonshot_server_get_default_identity_ready (GObject * source_object, GAsyncResult * _res_, gpointer _user_data_);
+static void _dbus_moonshot_server_get_default_identity_ready (GObject * source_object, GAsyncResult * _res_, gpointer _user_data_);
 static void _dbus_moonshot_server_install_id_card (MoonshotServer* self, GVariant* parameters, GDBusMethodInvocation* invocation);
 static void _dbus_moonshot_server_install_from_file (MoonshotServer* self, GVariant* parameters, GDBusMethodInvocation* invocation);
+static void moonshot_server_dbus_interface_method_call (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* method_name, GVariant* parameters, GDBusMethodInvocation* invocation, gpointer user_data);
 static GVariant* moonshot_server_dbus_interface_get_property (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* property_name, GError** error, gpointer user_data);
 static gboolean moonshot_server_dbus_interface_set_property (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* property_name, GVariant* value, GError** error, gpointer user_data);
 static void _moonshot_server_unregister_object (gpointer user_data);
@@ -347,698 +441,1805 @@ static const GDBusPropertyInfo * const _moonshot_server_dbus_property_info[] = {
 static const GDBusInterfaceInfo _moonshot_server_dbus_interface_info = {-1, "org.janet.Moonshot", (GDBusMethodInfo **) (&_moonshot_server_dbus_method_info), (GDBusSignalInfo **) (&_moonshot_server_dbus_signal_info), (GDBusPropertyInfo **) (&_moonshot_server_dbus_property_info)};
 static const GDBusInterfaceVTable _moonshot_server_dbus_interface_vtable = {moonshot_server_dbus_interface_method_call, moonshot_server_dbus_interface_get_property, moonshot_server_dbus_interface_set_property};
 
-
-static gpointer _g_object_ref0 (gpointer self) {
-       return self ? g_object_ref (self) : NULL;
+static gpointer _identity_manager_app_ref0 (gpointer self) {
+#line 10 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       return self ? identity_manager_app_ref (self) : NULL;
+#line 448 "moonshot-server.c"
 }
 
 
-#line 8 "moonshot-server.vala"
-MoonshotServer* moonshot_server_construct (GType object_type, GtkWindow* window) {
-#line 359 "moonshot-server.c"
+MoonshotServer* moonshot_server_construct (GType object_type, IdentityManagerApp* app) {
        MoonshotServer * self = NULL;
-       IdentityManagerView* _tmp0_;
-#line 8 "moonshot-server.vala"
-       g_return_val_if_fail (window != NULL, NULL);
-#line 8 "moonshot-server.vala"
+       IdentityManagerApp* _tmp0_;
+       IdentityManagerApp* _tmp1_;
+#line 8 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       g_return_val_if_fail (app != NULL, NULL);
+#line 8 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        self = (MoonshotServer*) g_object_new (object_type, NULL);
-#line 10 "moonshot-server.vala"
-       self->priv->main_window = (_tmp0_ = _g_object_ref0 (IDENTITY_MANAGER_VIEW (window)), _g_object_unref0 (self->priv->main_window), _tmp0_);
-#line 368 "moonshot-server.c"
+#line 10 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp0_ = app;
+#line 10 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp1_ = _identity_manager_app_ref0 (_tmp0_);
+#line 10 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _identity_manager_app_unref0 (self->priv->parent_app);
+#line 10 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       self->priv->parent_app = _tmp1_;
+#line 8 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        return self;
+#line 470 "moonshot-server.c"
 }
 
 
-#line 8 "moonshot-server.vala"
-MoonshotServer* moonshot_server_new (GtkWindow* window) {
-#line 8 "moonshot-server.vala"
-       return moonshot_server_construct (TYPE_MOONSHOT_SERVER, window);
-#line 377 "moonshot-server.c"
+MoonshotServer* moonshot_server_new (IdentityManagerApp* app) {
+#line 8 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       return moonshot_server_construct (TYPE_MOONSHOT_SERVER, app);
+#line 477 "moonshot-server.c"
 }
 
 
 static void moonshot_server_get_identity_data_free (gpointer _data) {
-       MoonshotServerGetIdentityData* data;
-       data = _data;
-       _g_free0 (data->nai);
-       _g_free0 (data->password);
-       _g_free0 (data->service);
-       g_object_unref (data->self);
-       g_slice_free (MoonshotServerGetIdentityData, data);
+       MoonshotServerGetIdentityData* _data_;
+       _data_ = _data;
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _g_free0 (_data_->nai);
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _g_free0 (_data_->password);
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _g_free0 (_data_->service);
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _g_object_unref0 (_data_->self);
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       g_slice_free (MoonshotServerGetIdentityData, _data_);
+#line 494 "moonshot-server.c"
+}
+
+
+static gpointer _g_object_ref0 (gpointer self) {
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       return self ? g_object_ref (self) : NULL;
+#line 501 "moonshot-server.c"
 }
 
 
-void moonshot_server_get_identity (MoonshotServer* self, const char* nai, const char* password, const char* service, GAsyncReadyCallback _callback_, gpointer _user_data_) {
+void moonshot_server_get_identity (MoonshotServer* self, const gchar* nai, const gchar* password, const gchar* service, GAsyncReadyCallback _callback_, gpointer _user_data_) {
        MoonshotServerGetIdentityData* _data_;
+       MoonshotServer* _tmp0_;
+       const gchar* _tmp1_;
+       gchar* _tmp2_;
+       const gchar* _tmp3_;
+       gchar* _tmp4_;
+       const gchar* _tmp5_;
+       gchar* _tmp6_;
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        _data_ = g_slice_new0 (MoonshotServerGetIdentityData);
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        _data_->_async_result = g_simple_async_result_new (G_OBJECT (self), _callback_, _user_data_, moonshot_server_get_identity);
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        g_simple_async_result_set_op_res_gpointer (_data_->_async_result, _data_, moonshot_server_get_identity_data_free);
-       _data_->self = g_object_ref (self);
-       _data_->nai = g_strdup (nai);
-       _data_->password = g_strdup (password);
-       _data_->service = g_strdup (service);
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp0_ = _g_object_ref0 (self);
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->self = _tmp0_;
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp1_ = nai;
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp2_ = g_strdup (_tmp1_);
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->nai = _tmp2_;
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp3_ = password;
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp4_ = g_strdup (_tmp3_);
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->password = _tmp4_;
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp5_ = service;
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp6_ = g_strdup (_tmp5_);
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->service = _tmp6_;
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        moonshot_server_get_identity_co (_data_);
+#line 544 "moonshot-server.c"
 }
 
 
-gboolean moonshot_server_get_identity_finish (MoonshotServer* self, GAsyncResult* _res_, char** nai_out, char** password_out, char** server_certificate_hash, char** ca_certificate, char** subject_name_constraint, char** subject_alt_name_constraint) {
+gboolean moonshot_server_get_identity_finish (MoonshotServer* self, GAsyncResult* _res_, gchar** nai_out, gchar** password_out, gchar** server_certificate_hash, gchar** ca_certificate, gchar** subject_name_constraint, gchar** subject_alt_name_constraint) {
        gboolean result;
        MoonshotServerGetIdentityData* _data_;
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        _data_ = g_simple_async_result_get_op_res_gpointer (G_SIMPLE_ASYNC_RESULT (_res_));
-       *nai_out = _data_->nai_out;
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       if (nai_out) {
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               *nai_out = _data_->nai_out;
+#line 557 "moonshot-server.c"
+       } else {
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _g_free0 (_data_->nai_out);
+#line 561 "moonshot-server.c"
+       }
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        _data_->nai_out = NULL;
-       *password_out = _data_->password_out;
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       if (password_out) {
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               *password_out = _data_->password_out;
+#line 569 "moonshot-server.c"
+       } else {
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _g_free0 (_data_->password_out);
+#line 573 "moonshot-server.c"
+       }
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        _data_->password_out = NULL;
-       *server_certificate_hash = _data_->server_certificate_hash;
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       if (server_certificate_hash) {
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               *server_certificate_hash = _data_->server_certificate_hash;
+#line 581 "moonshot-server.c"
+       } else {
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _g_free0 (_data_->server_certificate_hash);
+#line 585 "moonshot-server.c"
+       }
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        _data_->server_certificate_hash = NULL;
-       *ca_certificate = _data_->ca_certificate;
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       if (ca_certificate) {
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               *ca_certificate = _data_->ca_certificate;
+#line 593 "moonshot-server.c"
+       } else {
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _g_free0 (_data_->ca_certificate);
+#line 597 "moonshot-server.c"
+       }
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        _data_->ca_certificate = NULL;
-       *subject_name_constraint = _data_->subject_name_constraint;
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       if (subject_name_constraint) {
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               *subject_name_constraint = _data_->subject_name_constraint;
+#line 605 "moonshot-server.c"
+       } else {
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _g_free0 (_data_->subject_name_constraint);
+#line 609 "moonshot-server.c"
+       }
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        _data_->subject_name_constraint = NULL;
-       *subject_alt_name_constraint = _data_->subject_alt_name_constraint;
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       if (subject_alt_name_constraint) {
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               *subject_alt_name_constraint = _data_->subject_alt_name_constraint;
+#line 617 "moonshot-server.c"
+       } else {
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _g_free0 (_data_->subject_alt_name_constraint);
+#line 621 "moonshot-server.c"
+       }
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        _data_->subject_alt_name_constraint = NULL;
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        result = _data_->result;
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        return result;
+#line 629 "moonshot-server.c"
 }
 
 
-static void moonshot_server_get_identity_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_) {
-       MoonshotServerGetIdentityData* data;
-       data = _user_data_;
-       data->_res_ = _res_;
-       moonshot_server_get_identity_co (data);
-}
-
-
-#line 27 "moonshot-server.vala"
-static void _lambda4_ (IdentityRequest* IdentityRequest, Block3Data* _data3_) {
-#line 436 "moonshot-server.c"
-       MoonshotServer * self;
-       self = _data3_->self;
-#line 27 "moonshot-server.vala"
-       g_return_if_fail (IdentityRequest != NULL);
-#line 27 "moonshot-server.vala"
-       moonshot_server_get_identity_co (_data3_->_async_data_);
-#line 443 "moonshot-server.c"
+static Block2Data* block2_data_ref (Block2Data* _data2_) {
+#line 13 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       g_atomic_int_inc (&_data2_->_ref_count_);
+#line 13 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       return _data2_;
+#line 638 "moonshot-server.c"
 }
 
 
-#line 27 "moonshot-server.vala"
-static void __lambda4__return_identity_callback (IdentityRequest* request, gpointer self) {
-#line 449 "moonshot-server.c"
-       _lambda4_ (request, self);
+static void block2_data_unref (void * _userdata_) {
+       Block2Data* _data2_;
+       _data2_ = (Block2Data*) _userdata_;
+#line 13 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       if (g_atomic_int_dec_and_test (&_data2_->_ref_count_)) {
+#line 647 "moonshot-server.c"
+               MoonshotServer * self;
+#line 13 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               self = _data2_->self;
+#line 13 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _g_object_unref0 (self);
+#line 13 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               g_slice_free (Block2Data, _data2_);
+#line 655 "moonshot-server.c"
+       }
 }
 
 
-static Block3Data* block3_data_ref (Block3Data* _data3_) {
-       g_atomic_int_inc (&_data3_->_ref_count_);
-       return _data3_;
+static void __lambda5_ (Block2Data* _data2_, IdentityRequest* IdentityRequest) {
+       MoonshotServer * self;
+#line 27 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       self = _data2_->self;
+#line 27 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       g_return_if_fail (IdentityRequest != NULL);
+#line 27 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       moonshot_server_get_identity_co (_data2_->_async_data_);
+#line 668 "moonshot-server.c"
 }
 
 
-static void block3_data_unref (Block3Data* _data3_) {
-       if (g_atomic_int_dec_and_test (&_data3_->_ref_count_)) {
-               _g_object_unref0 (_data3_->self);
-               g_slice_free (Block3Data, _data3_);
-       }
+static void ___lambda5__return_identity_callback (IdentityRequest* request, gpointer self) {
+#line 27 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       __lambda5_ (self, request);
+#line 675 "moonshot-server.c"
 }
 
 
-static gboolean moonshot_server_get_identity_co (MoonshotServerGetIdentityData* data) {
-       switch (data->_state_) {
+static gboolean moonshot_server_get_identity_co (MoonshotServerGetIdentityData* _data_) {
+#line 13 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       switch (_data_->_state_) {
+#line 13 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
                case 0:
+#line 684 "moonshot-server.c"
                goto _state_0;
-               default:
-               g_assert_not_reached ();
+#line 13 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
                case 1:
+#line 688 "moonshot-server.c"
                goto _state_1;
+               default:
+#line 13 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               g_assert_not_reached ();
+#line 693 "moonshot-server.c"
        }
        _state_0:
-       data->_data3_ = g_slice_new0 (Block3Data);
-       data->_data3_->_ref_count_ = 1;
-       data->_data3_->self = g_object_ref (data->self);
-       data->_data3_->_async_data_ = data;
-       data->request = identity_request_new (data->self->priv->main_window, data->nai, data->password, data->service);
-#line 27 "moonshot-server.vala"
-       identity_request_set_callback (data->request, __lambda4__return_identity_callback, block3_data_ref (data->_data3_), block3_data_unref);
-#line 28 "moonshot-server.vala"
-       identity_request_execute (data->request);
-#line 487 "moonshot-server.c"
-       data->_state_ = 1;
+#line 13 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_data2_ = g_slice_new0 (Block2Data);
+#line 13 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_data2_->_ref_count_ = 1;
+#line 13 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_data2_->self = g_object_ref (_data_->self);
+#line 13 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_data2_->_async_data_ = _data_;
+#line 23 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_tmp0_ = _data_->self->priv->parent_app;
+#line 23 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_tmp1_ = _data_->nai;
+#line 23 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_tmp2_ = _data_->password;
+#line 23 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_tmp3_ = _data_->service;
+#line 23 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_tmp4_ = identity_request_new (_data_->_tmp0_, _data_->_tmp1_, _data_->_tmp2_, _data_->_tmp3_);
+#line 23 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->request = _data_->_tmp4_;
+#line 27 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_tmp5_ = _data_->request;
+#line 27 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       identity_request_set_callback (_data_->_tmp5_, ___lambda5__return_identity_callback, block2_data_ref (_data_->_data2_), block2_data_unref);
+#line 28 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_tmp6_ = _data_->request;
+#line 28 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       identity_request_execute (_data_->_tmp6_);
+#line 29 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_state_ = 1;
+#line 29 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        return FALSE;
+#line 728 "moonshot-server.c"
        _state_1:
        ;
-#line 31 "moonshot-server.vala"
-       data->nai_out = (data->_tmp0_ = g_strdup (""), _g_free0 (data->nai_out), data->_tmp0_);
-#line 32 "moonshot-server.vala"
-       data->password_out = (data->_tmp1_ = g_strdup (""), _g_free0 (data->password_out), data->_tmp1_);
-#line 33 "moonshot-server.vala"
-       data->server_certificate_hash = (data->_tmp2_ = g_strdup (""), _g_free0 (data->server_certificate_hash), data->_tmp2_);
-#line 34 "moonshot-server.vala"
-       data->ca_certificate = (data->_tmp3_ = g_strdup (""), _g_free0 (data->ca_certificate), data->_tmp3_);
-#line 35 "moonshot-server.vala"
-       data->subject_name_constraint = (data->_tmp4_ = g_strdup (""), _g_free0 (data->subject_name_constraint), data->_tmp4_);
-#line 36 "moonshot-server.vala"
-       data->subject_alt_name_constraint = (data->_tmp5_ = g_strdup (""), _g_free0 (data->subject_alt_name_constraint), data->_tmp5_);
-#line 504 "moonshot-server.c"
-       data->id_card = _g_object_ref0 (data->request->id_card);
-#line 40 "moonshot-server.vala"
-       if (data->id_card != NULL) {
-#line 41 "moonshot-server.vala"
-               data->nai_out = (data->_tmp6_ = g_strdup (id_card_get_nai (data->id_card)), _g_free0 (data->nai_out), data->_tmp6_);
-#line 42 "moonshot-server.vala"
-               data->password_out = (data->_tmp7_ = g_strdup (id_card_get_password (data->id_card)), _g_free0 (data->password_out), data->_tmp7_);
-#line 44 "moonshot-server.vala"
-               data->server_certificate_hash = (data->_tmp8_ = g_strdup (trust_anchor_get_server_cert (id_card_get_trust_anchor (data->id_card))), _g_free0 (data->server_certificate_hash), data->_tmp8_);
-#line 45 "moonshot-server.vala"
-               data->ca_certificate = (data->_tmp9_ = g_strdup (trust_anchor_get_ca_cert (id_card_get_trust_anchor (data->id_card))), _g_free0 (data->ca_certificate), data->_tmp9_);
-#line 46 "moonshot-server.vala"
-               data->subject_name_constraint = (data->_tmp10_ = g_strdup (trust_anchor_get_subject (id_card_get_trust_anchor (data->id_card))), _g_free0 (data->subject_name_constraint), data->_tmp10_);
-#line 47 "moonshot-server.vala"
-               data->subject_alt_name_constraint = (data->_tmp11_ = g_strdup (trust_anchor_get_subject_alt (id_card_get_trust_anchor (data->id_card))), _g_free0 (data->subject_alt_name_constraint), data->_tmp11_);
-#line 49 "moonshot-server.vala"
-               if (data->nai_out == NULL) {
-#line 50 "moonshot-server.vala"
-                       data->nai_out = (data->_tmp12_ = g_strdup (""), _g_free0 (data->nai_out), data->_tmp12_);
-#line 524 "moonshot-server.c"
-               }
-#line 51 "moonshot-server.vala"
-               if (data->password_out == NULL) {
-#line 52 "moonshot-server.vala"
-                       data->password_out = (data->_tmp13_ = g_strdup (""), _g_free0 (data->password_out), data->_tmp13_);
-#line 530 "moonshot-server.c"
+#line 31 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_tmp7_ = g_strdup ("");
+#line 31 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _g_free0 (_data_->nai_out);
+#line 31 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->nai_out = _data_->_tmp7_;
+#line 32 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_tmp8_ = g_strdup ("");
+#line 32 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _g_free0 (_data_->password_out);
+#line 32 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->password_out = _data_->_tmp8_;
+#line 33 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_tmp9_ = g_strdup ("");
+#line 33 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _g_free0 (_data_->server_certificate_hash);
+#line 33 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->server_certificate_hash = _data_->_tmp9_;
+#line 34 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_tmp10_ = g_strdup ("");
+#line 34 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _g_free0 (_data_->ca_certificate);
+#line 34 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->ca_certificate = _data_->_tmp10_;
+#line 35 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_tmp11_ = g_strdup ("");
+#line 35 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _g_free0 (_data_->subject_name_constraint);
+#line 35 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->subject_name_constraint = _data_->_tmp11_;
+#line 36 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_tmp12_ = g_strdup ("");
+#line 36 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _g_free0 (_data_->subject_alt_name_constraint);
+#line 36 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->subject_alt_name_constraint = _data_->_tmp12_;
+#line 38 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_tmp13_ = _data_->request;
+#line 38 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_tmp14_ = _data_->_tmp13_->id_card;
+#line 38 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_tmp15_ = _g_object_ref0 (_data_->_tmp14_);
+#line 38 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->id_card = _data_->_tmp15_;
+#line 40 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_tmp16_ = _data_->id_card;
+#line 40 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       if (_data_->_tmp16_ != NULL) {
+#line 41 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp17_ = _data_->id_card;
+#line 41 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp18_ = id_card_get_nai (_data_->_tmp17_);
+#line 41 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp19_ = _data_->_tmp18_;
+#line 41 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp20_ = g_strdup (_data_->_tmp19_);
+#line 41 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _g_free0 (_data_->nai_out);
+#line 41 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->nai_out = _data_->_tmp20_;
+#line 42 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp21_ = _data_->id_card;
+#line 42 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp22_ = id_card_get_password (_data_->_tmp21_);
+#line 42 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp23_ = _data_->_tmp22_;
+#line 42 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp24_ = g_strdup (_data_->_tmp23_);
+#line 42 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _g_free0 (_data_->password_out);
+#line 42 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->password_out = _data_->_tmp24_;
+#line 44 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp25_ = _data_->id_card;
+#line 44 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp26_ = id_card_get_trust_anchor (_data_->_tmp25_);
+#line 44 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp27_ = _data_->_tmp26_;
+#line 44 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp28_ = trust_anchor_get_server_cert (_data_->_tmp27_);
+#line 44 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp29_ = _data_->_tmp28_;
+#line 44 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp30_ = g_strdup (_data_->_tmp29_);
+#line 44 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _g_free0 (_data_->server_certificate_hash);
+#line 44 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->server_certificate_hash = _data_->_tmp30_;
+#line 45 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp31_ = _data_->id_card;
+#line 45 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp32_ = id_card_get_trust_anchor (_data_->_tmp31_);
+#line 45 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp33_ = _data_->_tmp32_;
+#line 45 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp34_ = trust_anchor_get_ca_cert (_data_->_tmp33_);
+#line 45 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp35_ = _data_->_tmp34_;
+#line 45 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp36_ = g_strdup (_data_->_tmp35_);
+#line 45 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _g_free0 (_data_->ca_certificate);
+#line 45 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->ca_certificate = _data_->_tmp36_;
+#line 46 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp37_ = _data_->id_card;
+#line 46 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp38_ = id_card_get_trust_anchor (_data_->_tmp37_);
+#line 46 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp39_ = _data_->_tmp38_;
+#line 46 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp40_ = trust_anchor_get_subject (_data_->_tmp39_);
+#line 46 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp41_ = _data_->_tmp40_;
+#line 46 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp42_ = g_strdup (_data_->_tmp41_);
+#line 46 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _g_free0 (_data_->subject_name_constraint);
+#line 46 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->subject_name_constraint = _data_->_tmp42_;
+#line 47 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp43_ = _data_->id_card;
+#line 47 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp44_ = id_card_get_trust_anchor (_data_->_tmp43_);
+#line 47 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp45_ = _data_->_tmp44_;
+#line 47 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp46_ = trust_anchor_get_subject_alt (_data_->_tmp45_);
+#line 47 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp47_ = _data_->_tmp46_;
+#line 47 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp48_ = g_strdup (_data_->_tmp47_);
+#line 47 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _g_free0 (_data_->subject_alt_name_constraint);
+#line 47 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->subject_alt_name_constraint = _data_->_tmp48_;
+#line 49 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp49_ = _data_->nai_out;
+#line 49 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               if (_data_->_tmp49_ == NULL) {
+#line 50 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _data_->_tmp50_ = g_strdup ("");
+#line 50 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _g_free0 (_data_->nai_out);
+#line 50 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _data_->nai_out = _data_->_tmp50_;
+#line 877 "moonshot-server.c"
                }
-#line 53 "moonshot-server.vala"
-               if (data->server_certificate_hash == NULL) {
-#line 54 "moonshot-server.vala"
-                       data->server_certificate_hash = (data->_tmp14_ = g_strdup (""), _g_free0 (data->server_certificate_hash), data->_tmp14_);
-#line 536 "moonshot-server.c"
+#line 51 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp51_ = _data_->password_out;
+#line 51 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               if (_data_->_tmp51_ == NULL) {
+#line 52 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _data_->_tmp52_ = g_strdup ("");
+#line 52 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _g_free0 (_data_->password_out);
+#line 52 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _data_->password_out = _data_->_tmp52_;
+#line 889 "moonshot-server.c"
                }
-#line 55 "moonshot-server.vala"
-               if (data->ca_certificate == NULL) {
-#line 56 "moonshot-server.vala"
-                       data->ca_certificate = (data->_tmp15_ = g_strdup (""), _g_free0 (data->ca_certificate), data->_tmp15_);
-#line 542 "moonshot-server.c"
+#line 53 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp53_ = _data_->server_certificate_hash;
+#line 53 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               if (_data_->_tmp53_ == NULL) {
+#line 54 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _data_->_tmp54_ = g_strdup ("");
+#line 54 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _g_free0 (_data_->server_certificate_hash);
+#line 54 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _data_->server_certificate_hash = _data_->_tmp54_;
+#line 901 "moonshot-server.c"
                }
-#line 57 "moonshot-server.vala"
-               if (data->subject_name_constraint == NULL) {
-#line 58 "moonshot-server.vala"
-                       data->subject_name_constraint = (data->_tmp16_ = g_strdup (""), _g_free0 (data->subject_name_constraint), data->_tmp16_);
-#line 548 "moonshot-server.c"
+#line 55 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp55_ = _data_->ca_certificate;
+#line 55 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               if (_data_->_tmp55_ == NULL) {
+#line 56 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _data_->_tmp56_ = g_strdup ("");
+#line 56 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _g_free0 (_data_->ca_certificate);
+#line 56 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _data_->ca_certificate = _data_->_tmp56_;
+#line 913 "moonshot-server.c"
                }
-#line 59 "moonshot-server.vala"
-               if (data->subject_alt_name_constraint == NULL) {
-#line 60 "moonshot-server.vala"
-                       data->subject_alt_name_constraint = (data->_tmp17_ = g_strdup (""), _g_free0 (data->subject_alt_name_constraint), data->_tmp17_);
-#line 554 "moonshot-server.c"
+#line 57 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp57_ = _data_->subject_name_constraint;
+#line 57 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               if (_data_->_tmp57_ == NULL) {
+#line 58 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _data_->_tmp58_ = g_strdup ("");
+#line 58 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _g_free0 (_data_->subject_name_constraint);
+#line 58 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _data_->subject_name_constraint = _data_->_tmp58_;
+#line 925 "moonshot-server.c"
                }
-               data->result = TRUE;
-               _g_object_unref0 (data->id_card);
-               _g_object_unref0 (data->request);
-               block3_data_unref (data->_data3_);
-               {
-                       if (data->_state_ == 0) {
-                               g_simple_async_result_complete_in_idle (data->_async_result);
-                       } else {
-                               g_simple_async_result_complete (data->_async_result);
-                       }
-                       g_object_unref (data->_async_result);
-                       return FALSE;
+#line 59 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp59_ = _data_->subject_alt_name_constraint;
+#line 59 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               if (_data_->_tmp59_ == NULL) {
+#line 60 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _data_->_tmp60_ = g_strdup ("");
+#line 60 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _g_free0 (_data_->subject_alt_name_constraint);
+#line 60 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _data_->subject_alt_name_constraint = _data_->_tmp60_;
+#line 937 "moonshot-server.c"
                }
-       }
-       data->result = FALSE;
-       _g_object_unref0 (data->id_card);
-       _g_object_unref0 (data->request);
-       block3_data_unref (data->_data3_);
-       {
-               if (data->_state_ == 0) {
-                       g_simple_async_result_complete_in_idle (data->_async_result);
+#line 62 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->result = TRUE;
+#line 62 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _g_object_unref0 (_data_->id_card);
+#line 62 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _g_object_unref0 (_data_->request);
+#line 62 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               block2_data_unref (_data_->_data2_);
+#line 62 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_data2_ = NULL;
+#line 62 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               if (_data_->_state_ == 0) {
+#line 62 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       g_simple_async_result_complete_in_idle (_data_->_async_result);
+#line 953 "moonshot-server.c"
                } else {
-                       g_simple_async_result_complete (data->_async_result);
+#line 62 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       g_simple_async_result_complete (_data_->_async_result);
+#line 957 "moonshot-server.c"
                }
-               g_object_unref (data->_async_result);
+#line 62 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               g_object_unref (_data_->_async_result);
+#line 62 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
                return FALSE;
+#line 963 "moonshot-server.c"
        }
-       _g_object_unref0 (data->id_card);
-       _g_object_unref0 (data->request);
-       block3_data_unref (data->_data3_);
-       {
-               if (data->_state_ == 0) {
-                       g_simple_async_result_complete_in_idle (data->_async_result);
-               } else {
-                       g_simple_async_result_complete (data->_async_result);
-               }
-               g_object_unref (data->_async_result);
-               return FALSE;
+#line 65 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->result = FALSE;
+#line 65 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _g_object_unref0 (_data_->id_card);
+#line 65 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _g_object_unref0 (_data_->request);
+#line 65 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       block2_data_unref (_data_->_data2_);
+#line 65 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_data2_ = NULL;
+#line 65 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       if (_data_->_state_ == 0) {
+#line 65 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               g_simple_async_result_complete_in_idle (_data_->_async_result);
+#line 979 "moonshot-server.c"
+       } else {
+#line 65 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               g_simple_async_result_complete (_data_->_async_result);
+#line 983 "moonshot-server.c"
+       }
+#line 65 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       g_object_unref (_data_->_async_result);
+#line 65 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       return FALSE;
+#line 13 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _g_object_unref0 (_data_->id_card);
+#line 13 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _g_object_unref0 (_data_->request);
+#line 13 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       block2_data_unref (_data_->_data2_);
+#line 13 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_data2_ = NULL;
+#line 13 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       if (_data_->_state_ == 0) {
+#line 13 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               g_simple_async_result_complete_in_idle (_data_->_async_result);
+#line 1001 "moonshot-server.c"
+       } else {
+#line 13 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               g_simple_async_result_complete (_data_->_async_result);
+#line 1005 "moonshot-server.c"
        }
+#line 13 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       g_object_unref (_data_->_async_result);
+#line 13 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       return FALSE;
+#line 1011 "moonshot-server.c"
 }
 
 
 static void moonshot_server_get_default_identity_data_free (gpointer _data) {
-       MoonshotServerGetDefaultIdentityData* data;
-       data = _data;
-       g_object_unref (data->self);
-       g_slice_free (MoonshotServerGetDefaultIdentityData, data);
+       MoonshotServerGetDefaultIdentityData* _data_;
+       _data_ = _data;
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _g_object_unref0 (_data_->self);
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       g_slice_free (MoonshotServerGetDefaultIdentityData, _data_);
+#line 1022 "moonshot-server.c"
 }
 
 
 void moonshot_server_get_default_identity (MoonshotServer* self, GAsyncReadyCallback _callback_, gpointer _user_data_) {
        MoonshotServerGetDefaultIdentityData* _data_;
+       MoonshotServer* _tmp0_;
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        _data_ = g_slice_new0 (MoonshotServerGetDefaultIdentityData);
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        _data_->_async_result = g_simple_async_result_new (G_OBJECT (self), _callback_, _user_data_, moonshot_server_get_default_identity);
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        g_simple_async_result_set_op_res_gpointer (_data_->_async_result, _data_, moonshot_server_get_default_identity_data_free);
-       _data_->self = g_object_ref (self);
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp0_ = _g_object_ref0 (self);
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->self = _tmp0_;
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        moonshot_server_get_default_identity_co (_data_);
+#line 1041 "moonshot-server.c"
 }
 
 
-gboolean moonshot_server_get_default_identity_finish (MoonshotServer* self, GAsyncResult* _res_, char** nai_out, char** password_out, char** server_certificate_hash, char** ca_certificate, char** subject_name_constraint, char** subject_alt_name_constraint) {
+gboolean moonshot_server_get_default_identity_finish (MoonshotServer* self, GAsyncResult* _res_, gchar** nai_out, gchar** password_out, gchar** server_certificate_hash, gchar** ca_certificate, gchar** subject_name_constraint, gchar** subject_alt_name_constraint) {
        gboolean result;
        MoonshotServerGetDefaultIdentityData* _data_;
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        _data_ = g_simple_async_result_get_op_res_gpointer (G_SIMPLE_ASYNC_RESULT (_res_));
-       *nai_out = _data_->nai_out;
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       if (nai_out) {
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               *nai_out = _data_->nai_out;
+#line 1054 "moonshot-server.c"
+       } else {
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _g_free0 (_data_->nai_out);
+#line 1058 "moonshot-server.c"
+       }
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        _data_->nai_out = NULL;
-       *password_out = _data_->password_out;
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       if (password_out) {
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               *password_out = _data_->password_out;
+#line 1066 "moonshot-server.c"
+       } else {
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _g_free0 (_data_->password_out);
+#line 1070 "moonshot-server.c"
+       }
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        _data_->password_out = NULL;
-       *server_certificate_hash = _data_->server_certificate_hash;
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       if (server_certificate_hash) {
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               *server_certificate_hash = _data_->server_certificate_hash;
+#line 1078 "moonshot-server.c"
+       } else {
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _g_free0 (_data_->server_certificate_hash);
+#line 1082 "moonshot-server.c"
+       }
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        _data_->server_certificate_hash = NULL;
-       *ca_certificate = _data_->ca_certificate;
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       if (ca_certificate) {
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               *ca_certificate = _data_->ca_certificate;
+#line 1090 "moonshot-server.c"
+       } else {
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _g_free0 (_data_->ca_certificate);
+#line 1094 "moonshot-server.c"
+       }
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        _data_->ca_certificate = NULL;
-       *subject_name_constraint = _data_->subject_name_constraint;
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       if (subject_name_constraint) {
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               *subject_name_constraint = _data_->subject_name_constraint;
+#line 1102 "moonshot-server.c"
+       } else {
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _g_free0 (_data_->subject_name_constraint);
+#line 1106 "moonshot-server.c"
+       }
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        _data_->subject_name_constraint = NULL;
-       *subject_alt_name_constraint = _data_->subject_alt_name_constraint;
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       if (subject_alt_name_constraint) {
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               *subject_alt_name_constraint = _data_->subject_alt_name_constraint;
+#line 1114 "moonshot-server.c"
+       } else {
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _g_free0 (_data_->subject_alt_name_constraint);
+#line 1118 "moonshot-server.c"
+       }
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        _data_->subject_alt_name_constraint = NULL;
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        result = _data_->result;
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        return result;
+#line 1126 "moonshot-server.c"
 }
 
 
-static void moonshot_server_get_default_identity_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_) {
-       MoonshotServerGetDefaultIdentityData* data;
-       data = _user_data_;
-       data->_res_ = _res_;
-       moonshot_server_get_default_identity_co (data);
-}
-
-
-#line 76 "moonshot-server.vala"
-static void _lambda5_ (IdentityRequest* IdentityRequest, Block4Data* _data4_) {
-#line 647 "moonshot-server.c"
-       MoonshotServer * self;
-       self = _data4_->self;
-#line 76 "moonshot-server.vala"
-       g_return_if_fail (IdentityRequest != NULL);
-#line 76 "moonshot-server.vala"
-       moonshot_server_get_default_identity_co (_data4_->_async_data_);
-#line 654 "moonshot-server.c"
+static Block3Data* block3_data_ref (Block3Data* _data3_) {
+#line 68 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       g_atomic_int_inc (&_data3_->_ref_count_);
+#line 68 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       return _data3_;
+#line 1135 "moonshot-server.c"
 }
 
 
-#line 76 "moonshot-server.vala"
-static void __lambda5__return_identity_callback (IdentityRequest* request, gpointer self) {
-#line 660 "moonshot-server.c"
-       _lambda5_ (request, self);
+static void block3_data_unref (void * _userdata_) {
+       Block3Data* _data3_;
+       _data3_ = (Block3Data*) _userdata_;
+#line 68 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       if (g_atomic_int_dec_and_test (&_data3_->_ref_count_)) {
+#line 1144 "moonshot-server.c"
+               MoonshotServer * self;
+#line 68 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               self = _data3_->self;
+#line 68 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _g_object_unref0 (self);
+#line 68 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               g_slice_free (Block3Data, _data3_);
+#line 1152 "moonshot-server.c"
+       }
 }
 
 
-static Block4Data* block4_data_ref (Block4Data* _data4_) {
-       g_atomic_int_inc (&_data4_->_ref_count_);
-       return _data4_;
+static void __lambda6_ (Block3Data* _data3_, IdentityRequest* IdentityRequest) {
+       MoonshotServer * self;
+#line 76 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       self = _data3_->self;
+#line 76 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       g_return_if_fail (IdentityRequest != NULL);
+#line 76 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       moonshot_server_get_default_identity_co (_data3_->_async_data_);
+#line 1165 "moonshot-server.c"
 }
 
 
-static void block4_data_unref (Block4Data* _data4_) {
-       if (g_atomic_int_dec_and_test (&_data4_->_ref_count_)) {
-               _g_object_unref0 (_data4_->self);
-               g_slice_free (Block4Data, _data4_);
-       }
+static void ___lambda6__return_identity_callback (IdentityRequest* request, gpointer self) {
+#line 76 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       __lambda6_ (self, request);
+#line 1172 "moonshot-server.c"
 }
 
 
-static gboolean moonshot_server_get_default_identity_co (MoonshotServerGetDefaultIdentityData* data) {
-       switch (data->_state_) {
+static gboolean moonshot_server_get_default_identity_co (MoonshotServerGetDefaultIdentityData* _data_) {
+#line 68 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       switch (_data_->_state_) {
+#line 68 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
                case 0:
+#line 1181 "moonshot-server.c"
                goto _state_0;
+#line 68 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               case 1:
+#line 1185 "moonshot-server.c"
+               goto _state_1;
                default:
+#line 68 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
                g_assert_not_reached ();
-               case 2:
-               goto _state_2;
+#line 1190 "moonshot-server.c"
        }
        _state_0:
-       data->_data4_ = g_slice_new0 (Block4Data);
-       data->_data4_->_ref_count_ = 1;
-       data->_data4_->self = g_object_ref (data->self);
-       data->_data4_->_async_data_ = data;
-       data->request = identity_request_new_default (data->self->priv->main_window);
-#line 76 "moonshot-server.vala"
-       identity_request_set_callback (data->request, __lambda5__return_identity_callback, block4_data_ref (data->_data4_), block4_data_unref);
-#line 77 "moonshot-server.vala"
-       identity_request_execute (data->request);
-#line 698 "moonshot-server.c"
-       data->_state_ = 2;
+#line 68 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_data3_ = g_slice_new0 (Block3Data);
+#line 68 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_data3_->_ref_count_ = 1;
+#line 68 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_data3_->self = g_object_ref (_data_->self);
+#line 68 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_data3_->_async_data_ = _data_;
+#line 75 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_tmp0_ = _data_->self->priv->parent_app;
+#line 75 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_tmp1_ = identity_request_new_default (_data_->_tmp0_);
+#line 75 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->request = _data_->_tmp1_;
+#line 76 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_tmp2_ = _data_->request;
+#line 76 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       identity_request_set_callback (_data_->_tmp2_, ___lambda6__return_identity_callback, block3_data_ref (_data_->_data3_), block3_data_unref);
+#line 77 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_tmp3_ = _data_->request;
+#line 77 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       identity_request_execute (_data_->_tmp3_);
+#line 78 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_state_ = 1;
+#line 78 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        return FALSE;
-       _state_2:
+#line 1219 "moonshot-server.c"
+       _state_1:
        ;
-#line 80 "moonshot-server.vala"
-       data->nai_out = (data->_tmp0_ = g_strdup (""), _g_free0 (data->nai_out), data->_tmp0_);
-#line 81 "moonshot-server.vala"
-       data->password_out = (data->_tmp1_ = g_strdup (""), _g_free0 (data->password_out), data->_tmp1_);
-#line 82 "moonshot-server.vala"
-       data->server_certificate_hash = (data->_tmp2_ = g_strdup (""), _g_free0 (data->server_certificate_hash), data->_tmp2_);
-#line 83 "moonshot-server.vala"
-       data->ca_certificate = (data->_tmp3_ = g_strdup (""), _g_free0 (data->ca_certificate), data->_tmp3_);
-#line 84 "moonshot-server.vala"
-       data->subject_name_constraint = (data->_tmp4_ = g_strdup (""), _g_free0 (data->subject_name_constraint), data->_tmp4_);
-#line 85 "moonshot-server.vala"
-       data->subject_alt_name_constraint = (data->_tmp5_ = g_strdup (""), _g_free0 (data->subject_alt_name_constraint), data->_tmp5_);
-#line 87 "moonshot-server.vala"
-       if (data->request->id_card != NULL) {
-#line 89 "moonshot-server.vala"
-               data->nai_out = (data->_tmp6_ = g_strdup (id_card_get_nai (data->request->id_card)), _g_free0 (data->nai_out), data->_tmp6_);
-#line 90 "moonshot-server.vala"
-               data->password_out = (data->_tmp7_ = g_strdup (id_card_get_password (data->request->id_card)), _g_free0 (data->password_out), data->_tmp7_);
-#line 92 "moonshot-server.vala"
-               data->server_certificate_hash = (data->_tmp8_ = g_strdup (trust_anchor_get_server_cert (id_card_get_trust_anchor (data->request->id_card))), _g_free0 (data->server_certificate_hash), data->_tmp8_);
-#line 93 "moonshot-server.vala"
-               data->ca_certificate = (data->_tmp9_ = g_strdup (trust_anchor_get_ca_cert (id_card_get_trust_anchor (data->request->id_card))), _g_free0 (data->ca_certificate), data->_tmp9_);
-#line 94 "moonshot-server.vala"
-               data->subject_name_constraint = (data->_tmp10_ = g_strdup (trust_anchor_get_subject (id_card_get_trust_anchor (data->request->id_card))), _g_free0 (data->subject_name_constraint), data->_tmp10_);
-#line 95 "moonshot-server.vala"
-               data->subject_alt_name_constraint = (data->_tmp11_ = g_strdup (trust_anchor_get_subject_alt (id_card_get_trust_anchor (data->request->id_card))), _g_free0 (data->subject_alt_name_constraint), data->_tmp11_);
-#line 97 "moonshot-server.vala"
-               if (data->nai_out == NULL) {
-#line 98 "moonshot-server.vala"
-                       data->nai_out = (data->_tmp12_ = g_strdup (""), _g_free0 (data->nai_out), data->_tmp12_);
-#line 733 "moonshot-server.c"
+#line 80 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_tmp4_ = g_strdup ("");
+#line 80 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _g_free0 (_data_->nai_out);
+#line 80 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->nai_out = _data_->_tmp4_;
+#line 81 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_tmp5_ = g_strdup ("");
+#line 81 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _g_free0 (_data_->password_out);
+#line 81 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->password_out = _data_->_tmp5_;
+#line 82 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_tmp6_ = g_strdup ("");
+#line 82 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _g_free0 (_data_->server_certificate_hash);
+#line 82 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->server_certificate_hash = _data_->_tmp6_;
+#line 83 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_tmp7_ = g_strdup ("");
+#line 83 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _g_free0 (_data_->ca_certificate);
+#line 83 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->ca_certificate = _data_->_tmp7_;
+#line 84 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_tmp8_ = g_strdup ("");
+#line 84 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _g_free0 (_data_->subject_name_constraint);
+#line 84 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->subject_name_constraint = _data_->_tmp8_;
+#line 85 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_tmp9_ = g_strdup ("");
+#line 85 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _g_free0 (_data_->subject_alt_name_constraint);
+#line 85 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->subject_alt_name_constraint = _data_->_tmp9_;
+#line 87 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_tmp10_ = _data_->request;
+#line 87 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_tmp11_ = _data_->_tmp10_->id_card;
+#line 87 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       if (_data_->_tmp11_ != NULL) {
+#line 89 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp12_ = _data_->request;
+#line 89 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp13_ = _data_->_tmp12_->id_card;
+#line 89 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp14_ = id_card_get_nai (_data_->_tmp13_);
+#line 89 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp15_ = _data_->_tmp14_;
+#line 89 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp16_ = g_strdup (_data_->_tmp15_);
+#line 89 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _g_free0 (_data_->nai_out);
+#line 89 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->nai_out = _data_->_tmp16_;
+#line 90 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp17_ = _data_->request;
+#line 90 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp18_ = _data_->_tmp17_->id_card;
+#line 90 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp19_ = id_card_get_password (_data_->_tmp18_);
+#line 90 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp20_ = _data_->_tmp19_;
+#line 90 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp21_ = g_strdup (_data_->_tmp20_);
+#line 90 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _g_free0 (_data_->password_out);
+#line 90 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->password_out = _data_->_tmp21_;
+#line 92 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp22_ = _data_->request;
+#line 92 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp23_ = _data_->_tmp22_->id_card;
+#line 92 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp24_ = id_card_get_trust_anchor (_data_->_tmp23_);
+#line 92 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp25_ = _data_->_tmp24_;
+#line 92 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp26_ = trust_anchor_get_server_cert (_data_->_tmp25_);
+#line 92 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp27_ = _data_->_tmp26_;
+#line 92 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp28_ = g_strdup (_data_->_tmp27_);
+#line 92 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _g_free0 (_data_->server_certificate_hash);
+#line 92 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->server_certificate_hash = _data_->_tmp28_;
+#line 93 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp29_ = _data_->request;
+#line 93 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp30_ = _data_->_tmp29_->id_card;
+#line 93 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp31_ = id_card_get_trust_anchor (_data_->_tmp30_);
+#line 93 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp32_ = _data_->_tmp31_;
+#line 93 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp33_ = trust_anchor_get_ca_cert (_data_->_tmp32_);
+#line 93 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp34_ = _data_->_tmp33_;
+#line 93 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp35_ = g_strdup (_data_->_tmp34_);
+#line 93 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _g_free0 (_data_->ca_certificate);
+#line 93 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->ca_certificate = _data_->_tmp35_;
+#line 94 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp36_ = _data_->request;
+#line 94 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp37_ = _data_->_tmp36_->id_card;
+#line 94 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp38_ = id_card_get_trust_anchor (_data_->_tmp37_);
+#line 94 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp39_ = _data_->_tmp38_;
+#line 94 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp40_ = trust_anchor_get_subject (_data_->_tmp39_);
+#line 94 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp41_ = _data_->_tmp40_;
+#line 94 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp42_ = g_strdup (_data_->_tmp41_);
+#line 94 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _g_free0 (_data_->subject_name_constraint);
+#line 94 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->subject_name_constraint = _data_->_tmp42_;
+#line 95 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp43_ = _data_->request;
+#line 95 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp44_ = _data_->_tmp43_->id_card;
+#line 95 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp45_ = id_card_get_trust_anchor (_data_->_tmp44_);
+#line 95 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp46_ = _data_->_tmp45_;
+#line 95 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp47_ = trust_anchor_get_subject_alt (_data_->_tmp46_);
+#line 95 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp48_ = _data_->_tmp47_;
+#line 95 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp49_ = g_strdup (_data_->_tmp48_);
+#line 95 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _g_free0 (_data_->subject_alt_name_constraint);
+#line 95 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->subject_alt_name_constraint = _data_->_tmp49_;
+#line 97 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp50_ = _data_->nai_out;
+#line 97 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               if (_data_->_tmp50_ == NULL) {
+#line 98 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _data_->_tmp51_ = g_strdup ("");
+#line 98 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _g_free0 (_data_->nai_out);
+#line 98 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _data_->nai_out = _data_->_tmp51_;
+#line 1374 "moonshot-server.c"
                }
-#line 99 "moonshot-server.vala"
-               if (data->password_out == NULL) {
-#line 100 "moonshot-server.vala"
-                       data->password_out = (data->_tmp13_ = g_strdup (""), _g_free0 (data->password_out), data->_tmp13_);
-#line 739 "moonshot-server.c"
+#line 99 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp52_ = _data_->password_out;
+#line 99 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               if (_data_->_tmp52_ == NULL) {
+#line 100 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _data_->_tmp53_ = g_strdup ("");
+#line 100 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _g_free0 (_data_->password_out);
+#line 100 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _data_->password_out = _data_->_tmp53_;
+#line 1386 "moonshot-server.c"
                }
-#line 101 "moonshot-server.vala"
-               if (data->server_certificate_hash == NULL) {
-#line 102 "moonshot-server.vala"
-                       data->server_certificate_hash = (data->_tmp14_ = g_strdup (""), _g_free0 (data->server_certificate_hash), data->_tmp14_);
-#line 745 "moonshot-server.c"
+#line 101 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp54_ = _data_->server_certificate_hash;
+#line 101 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               if (_data_->_tmp54_ == NULL) {
+#line 102 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _data_->_tmp55_ = g_strdup ("");
+#line 102 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _g_free0 (_data_->server_certificate_hash);
+#line 102 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _data_->server_certificate_hash = _data_->_tmp55_;
+#line 1398 "moonshot-server.c"
                }
-#line 103 "moonshot-server.vala"
-               if (data->ca_certificate == NULL) {
-#line 104 "moonshot-server.vala"
-                       data->ca_certificate = (data->_tmp15_ = g_strdup (""), _g_free0 (data->ca_certificate), data->_tmp15_);
-#line 751 "moonshot-server.c"
+#line 103 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp56_ = _data_->ca_certificate;
+#line 103 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               if (_data_->_tmp56_ == NULL) {
+#line 104 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _data_->_tmp57_ = g_strdup ("");
+#line 104 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _g_free0 (_data_->ca_certificate);
+#line 104 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _data_->ca_certificate = _data_->_tmp57_;
+#line 1410 "moonshot-server.c"
                }
-#line 105 "moonshot-server.vala"
-               if (data->subject_name_constraint == NULL) {
-#line 106 "moonshot-server.vala"
-                       data->subject_name_constraint = (data->_tmp16_ = g_strdup (""), _g_free0 (data->subject_name_constraint), data->_tmp16_);
-#line 757 "moonshot-server.c"
+#line 105 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp58_ = _data_->subject_name_constraint;
+#line 105 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               if (_data_->_tmp58_ == NULL) {
+#line 106 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _data_->_tmp59_ = g_strdup ("");
+#line 106 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _g_free0 (_data_->subject_name_constraint);
+#line 106 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _data_->subject_name_constraint = _data_->_tmp59_;
+#line 1422 "moonshot-server.c"
                }
-#line 107 "moonshot-server.vala"
-               if (data->subject_alt_name_constraint == NULL) {
-#line 108 "moonshot-server.vala"
-                       data->subject_alt_name_constraint = (data->_tmp17_ = g_strdup (""), _g_free0 (data->subject_alt_name_constraint), data->_tmp17_);
-#line 763 "moonshot-server.c"
+#line 107 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_tmp60_ = _data_->subject_alt_name_constraint;
+#line 107 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               if (_data_->_tmp60_ == NULL) {
+#line 108 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _data_->_tmp61_ = g_strdup ("");
+#line 108 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _g_free0 (_data_->subject_alt_name_constraint);
+#line 108 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _data_->subject_alt_name_constraint = _data_->_tmp61_;
+#line 1434 "moonshot-server.c"
                }
-               data->result = TRUE;
-               _g_object_unref0 (data->request);
-               block4_data_unref (data->_data4_);
-               {
-                       if (data->_state_ == 0) {
-                               g_simple_async_result_complete_in_idle (data->_async_result);
-                       } else {
-                               g_simple_async_result_complete (data->_async_result);
-                       }
-                       g_object_unref (data->_async_result);
-                       return FALSE;
-               }
-       }
-       data->result = FALSE;
-       _g_object_unref0 (data->request);
-       block4_data_unref (data->_data4_);
-       {
-               if (data->_state_ == 0) {
-                       g_simple_async_result_complete_in_idle (data->_async_result);
+#line 110 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->result = TRUE;
+#line 110 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _g_object_unref0 (_data_->request);
+#line 110 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               block3_data_unref (_data_->_data3_);
+#line 110 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _data_->_data3_ = NULL;
+#line 110 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               if (_data_->_state_ == 0) {
+#line 110 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       g_simple_async_result_complete_in_idle (_data_->_async_result);
+#line 1448 "moonshot-server.c"
                } else {
-                       g_simple_async_result_complete (data->_async_result);
+#line 110 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       g_simple_async_result_complete (_data_->_async_result);
+#line 1452 "moonshot-server.c"
                }
-               g_object_unref (data->_async_result);
+#line 110 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               g_object_unref (_data_->_async_result);
+#line 110 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
                return FALSE;
+#line 1458 "moonshot-server.c"
        }
-       _g_object_unref0 (data->request);
-       block4_data_unref (data->_data4_);
-       {
-               if (data->_state_ == 0) {
-                       g_simple_async_result_complete_in_idle (data->_async_result);
-               } else {
-                       g_simple_async_result_complete (data->_async_result);
-               }
-               g_object_unref (data->_async_result);
-               return FALSE;
+#line 113 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->result = FALSE;
+#line 113 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _g_object_unref0 (_data_->request);
+#line 113 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       block3_data_unref (_data_->_data3_);
+#line 113 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_data3_ = NULL;
+#line 113 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       if (_data_->_state_ == 0) {
+#line 113 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               g_simple_async_result_complete_in_idle (_data_->_async_result);
+#line 1472 "moonshot-server.c"
+       } else {
+#line 113 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               g_simple_async_result_complete (_data_->_async_result);
+#line 1476 "moonshot-server.c"
        }
+#line 113 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       g_object_unref (_data_->_async_result);
+#line 113 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       return FALSE;
+#line 68 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _g_object_unref0 (_data_->request);
+#line 68 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       block3_data_unref (_data_->_data3_);
+#line 68 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _data_->_data3_ = NULL;
+#line 68 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       if (_data_->_state_ == 0) {
+#line 68 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               g_simple_async_result_complete_in_idle (_data_->_async_result);
+#line 1492 "moonshot-server.c"
+       } else {
+#line 68 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               g_simple_async_result_complete (_data_->_async_result);
+#line 1496 "moonshot-server.c"
+       }
+#line 68 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       g_object_unref (_data_->_async_result);
+#line 68 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       return FALSE;
+#line 1502 "moonshot-server.c"
 }
 
 
 static void _vala_Rule_array_free (Rule* array, gint array_length) {
+#line 142 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        if (array != NULL) {
+#line 1509 "moonshot-server.c"
                int i;
+#line 142 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
                for (i = 0; i < array_length; i = i + 1) {
+#line 142 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
                        rule_destroy (&array[i]);
+#line 1515 "moonshot-server.c"
                }
        }
+#line 142 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        g_free (array);
+#line 1520 "moonshot-server.c"
 }
 
 
-#line 116 "moonshot-server.vala"
-gboolean moonshot_server_install_id_card (MoonshotServer* self, const char* display_name, const char* user_name, const char* password, const char* realm, char** rules_patterns, int rules_patterns_length1, char** rules_always_confirm, int rules_always_confirm_length1, char** services, int services_length1, const char* ca_cert, const char* subject, const char* subject_alt, const char* server_cert) {
-#line 817 "moonshot-server.c"
+gboolean moonshot_server_install_id_card (MoonshotServer* self, const gchar* display_name, const gchar* user_name, const gchar* password, const gchar* realm, gchar** rules_patterns, int rules_patterns_length1, gchar** rules_always_confirm, int rules_always_confirm_length1, gchar** services, int services_length1, const gchar* ca_cert, const gchar* subject, const gchar* subject_alt, const gchar* server_cert) {
        gboolean result = FALSE;
+       IdCard* _tmp0_;
        IdCard* idcard;
-       char** _tmp0_;
-#line 116 "moonshot-server.vala"
+       IdCard* _tmp1_;
+       const gchar* _tmp2_;
+       IdCard* _tmp3_;
+       const gchar* _tmp4_;
+       IdCard* _tmp5_;
+       const gchar* _tmp6_;
+       IdCard* _tmp7_;
+       const gchar* _tmp8_;
+       IdCard* _tmp9_;
+       gchar** _tmp10_;
+       gint _tmp10__length1;
+       IdCard* _tmp11_;
+       TrustAnchor* _tmp12_;
+       TrustAnchor* _tmp13_;
+       const gchar* _tmp14_;
+       IdCard* _tmp15_;
+       TrustAnchor* _tmp16_;
+       TrustAnchor* _tmp17_;
+       const gchar* _tmp18_;
+       IdCard* _tmp19_;
+       TrustAnchor* _tmp20_;
+       TrustAnchor* _tmp21_;
+       const gchar* _tmp22_;
+       IdCard* _tmp23_;
+       TrustAnchor* _tmp24_;
+       TrustAnchor* _tmp25_;
+       const gchar* _tmp26_;
+       gchar** _tmp27_;
+       gint _tmp27__length1;
+       gchar** _tmp28_;
+       gint _tmp28__length1;
+       IdentityManagerApp* _tmp56_;
+       IdCard* _tmp57_;
+       gboolean _tmp58_ = FALSE;
+#line 116 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        g_return_val_if_fail (self != NULL, FALSE);
-#line 116 "moonshot-server.vala"
+#line 116 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        g_return_val_if_fail (display_name != NULL, FALSE);
-#line 116 "moonshot-server.vala"
+#line 116 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        g_return_val_if_fail (user_name != NULL, FALSE);
-#line 128 "moonshot-server.vala"
-       idcard = id_card_new ();
-#line 130 "moonshot-server.vala"
-       id_card_set_display_name (idcard, display_name);
-#line 131 "moonshot-server.vala"
-       id_card_set_username (idcard, user_name);
-#line 132 "moonshot-server.vala"
-       id_card_set_password (idcard, password);
-#line 133 "moonshot-server.vala"
-       id_card_set_issuer (idcard, realm);
-#line 134 "moonshot-server.vala"
-       _tmp0_ = services;
-#line 134 "moonshot-server.vala"
-       id_card_set_services (idcard, _tmp0_, services_length1);
-#line 135 "moonshot-server.vala"
-       trust_anchor_set_ca_cert (id_card_get_trust_anchor (idcard), ca_cert);
-#line 136 "moonshot-server.vala"
-       trust_anchor_set_subject (id_card_get_trust_anchor (idcard), subject);
-#line 137 "moonshot-server.vala"
-       trust_anchor_set_subject_alt (id_card_get_trust_anchor (idcard), subject_alt);
-#line 138 "moonshot-server.vala"
-       trust_anchor_set_server_cert (id_card_get_trust_anchor (idcard), server_cert);
-#line 140 "moonshot-server.vala"
-       if (rules_patterns_length1 == rules_always_confirm_length1) {
-#line 851 "moonshot-server.c"
-               Rule* _tmp1_;
-               gint _tmp1__length1;
-               Rule* _tmp2_;
-#line 142 "moonshot-server.vala"
-               _tmp2_ = (_tmp1_ = g_new0 (Rule, rules_patterns_length1), _tmp1__length1 = rules_patterns_length1, _tmp1_);
-#line 142 "moonshot-server.vala"
-               id_card_set_rules (idcard, _tmp2_, rules_patterns_length1);
-#line 859 "moonshot-server.c"
-               _tmp1_ = (_vala_Rule_array_free (_tmp1_, _tmp1__length1), NULL);
+#line 128 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp0_ = id_card_new ();
+#line 128 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       idcard = _tmp0_;
+#line 130 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp1_ = idcard;
+#line 130 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp2_ = display_name;
+#line 130 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       id_card_set_display_name (_tmp1_, _tmp2_);
+#line 131 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp3_ = idcard;
+#line 131 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp4_ = user_name;
+#line 131 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       id_card_set_username (_tmp3_, _tmp4_);
+#line 132 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp5_ = idcard;
+#line 132 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp6_ = password;
+#line 132 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       id_card_set_password (_tmp5_, _tmp6_);
+#line 133 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp7_ = idcard;
+#line 133 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp8_ = realm;
+#line 133 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       id_card_set_issuer (_tmp7_, _tmp8_);
+#line 134 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp9_ = idcard;
+#line 134 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp10_ = services;
+#line 134 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp10__length1 = services_length1;
+#line 134 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       id_card_set_services (_tmp9_, _tmp10_, _tmp10__length1);
+#line 135 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp11_ = idcard;
+#line 135 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp12_ = id_card_get_trust_anchor (_tmp11_);
+#line 135 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp13_ = _tmp12_;
+#line 135 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp14_ = ca_cert;
+#line 135 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       trust_anchor_set_ca_cert (_tmp13_, _tmp14_);
+#line 136 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp15_ = idcard;
+#line 136 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp16_ = id_card_get_trust_anchor (_tmp15_);
+#line 136 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp17_ = _tmp16_;
+#line 136 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp18_ = subject;
+#line 136 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       trust_anchor_set_subject (_tmp17_, _tmp18_);
+#line 137 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp19_ = idcard;
+#line 137 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp20_ = id_card_get_trust_anchor (_tmp19_);
+#line 137 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp21_ = _tmp20_;
+#line 137 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp22_ = subject_alt;
+#line 137 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       trust_anchor_set_subject_alt (_tmp21_, _tmp22_);
+#line 138 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp23_ = idcard;
+#line 138 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp24_ = id_card_get_trust_anchor (_tmp23_);
+#line 138 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp25_ = _tmp24_;
+#line 138 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp26_ = server_cert;
+#line 138 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       trust_anchor_set_server_cert (_tmp25_, _tmp26_);
+#line 140 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp27_ = rules_patterns;
+#line 140 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp27__length1 = rules_patterns_length1;
+#line 140 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp28_ = rules_always_confirm;
+#line 140 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp28__length1 = rules_always_confirm_length1;
+#line 140 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       if (_tmp27__length1 == _tmp28__length1) {
+#line 1654 "moonshot-server.c"
+               IdCard* _tmp29_;
+               gchar** _tmp30_;
+               gint _tmp30__length1;
+               Rule* _tmp31_ = NULL;
+               Rule* _tmp32_;
+               gint _tmp32__length1;
+#line 142 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _tmp29_ = idcard;
+#line 142 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _tmp30_ = rules_patterns;
+#line 142 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _tmp30__length1 = rules_patterns_length1;
+#line 142 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _tmp31_ = g_new0 (Rule, _tmp30__length1);
+#line 142 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _tmp32_ = _tmp31_;
+#line 142 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _tmp32__length1 = _tmp30__length1;
+#line 142 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               id_card_set_rules (_tmp29_, _tmp32_, _tmp30__length1);
+#line 142 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               _tmp32_ = (_vala_Rule_array_free (_tmp32_, _tmp32__length1), NULL);
+#line 1677 "moonshot-server.c"
                {
                        gint i;
-#line 144 "moonshot-server.vala"
+#line 144 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
                        i = 0;
-#line 865 "moonshot-server.c"
+#line 1682 "moonshot-server.c"
                        {
-                               gboolean _tmp3_;
-#line 144 "moonshot-server.vala"
-                               _tmp3_ = TRUE;
-#line 144 "moonshot-server.vala"
+                               gboolean _tmp33_;
+#line 144 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp33_ = TRUE;
+#line 144 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
                                while (TRUE) {
-#line 872 "moonshot-server.c"
-                                       gint _tmp4_;
-                                       gint _tmp5_;
-                                       char* *_tmp6_;
-                                       char* _tmp7_;
-                                       gint _tmp8_;
-                                       char* *_tmp9_;
-                                       char* _tmp10_;
-#line 144 "moonshot-server.vala"
-                                       if (!_tmp3_) {
-#line 144 "moonshot-server.vala"
-                                               i++;
-#line 884 "moonshot-server.c"
+#line 1689 "moonshot-server.c"
+                                       gboolean _tmp34_;
+                                       gint _tmp36_;
+                                       IdCard* _tmp37_;
+                                       Rule* _tmp38_;
+                                       gint _tmp38__length1;
+                                       Rule* _tmp39_;
+                                       gint _tmp39__length1;
+                                       IdCard* _tmp40_;
+                                       Rule* _tmp41_;
+                                       gint _tmp41__length1;
+                                       Rule* _tmp42_;
+                                       gint _tmp42__length1;
+                                       gint _tmp43_;
+                                       gchar** _tmp44_;
+                                       gint _tmp44__length1;
+                                       gint _tmp45_;
+                                       const gchar* _tmp46_;
+                                       gchar* _tmp47_;
+                                       IdCard* _tmp48_;
+                                       Rule* _tmp49_;
+                                       gint _tmp49__length1;
+                                       Rule* _tmp50_;
+                                       gint _tmp50__length1;
+                                       gint _tmp51_;
+                                       gchar** _tmp52_;
+                                       gint _tmp52__length1;
+                                       gint _tmp53_;
+                                       const gchar* _tmp54_;
+                                       gchar* _tmp55_;
+#line 144 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp34_ = _tmp33_;
+#line 144 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       if (!_tmp34_) {
+#line 1723 "moonshot-server.c"
+                                               gint _tmp35_;
+#line 144 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                               _tmp35_ = i;
+#line 144 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                               i = _tmp35_ + 1;
+#line 1729 "moonshot-server.c"
                                        }
-#line 144 "moonshot-server.vala"
-                                       _tmp3_ = FALSE;
-#line 144 "moonshot-server.vala"
-                                       if (!(i < _tmp4_)) {
-#line 144 "moonshot-server.vala"
+#line 144 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp33_ = FALSE;
+#line 144 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp36_ = i;
+#line 144 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp37_ = idcard;
+#line 144 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp38_ = id_card_get_rules (_tmp37_, &_tmp38__length1);
+#line 144 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp39_ = _tmp38_;
+#line 144 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp39__length1 = _tmp38__length1;
+#line 144 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       if (!(_tmp36_ < _tmp39__length1)) {
+#line 144 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
                                                break;
-#line 892 "moonshot-server.c"
+#line 1747 "moonshot-server.c"
                                        }
-#line 146 "moonshot-server.vala"
-                                       _tmp6_ = &id_card_get_rules (idcard, &_tmp5_)[i].pattern;
-#line 146 "moonshot-server.vala"
-                                       (*_tmp6_) = (_tmp7_ = g_strdup (rules_patterns[i]), _g_free0 ((*_tmp6_)), _tmp7_);
-#line 147 "moonshot-server.vala"
-                                       _tmp9_ = &id_card_get_rules (idcard, &_tmp8_)[i].always_confirm;
-#line 147 "moonshot-server.vala"
-                                       (*_tmp9_) = (_tmp10_ = g_strdup (rules_always_confirm[i]), _g_free0 ((*_tmp9_)), _tmp10_);
-#line 902 "moonshot-server.c"
+#line 146 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp40_ = idcard;
+#line 146 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp41_ = id_card_get_rules (_tmp40_, &_tmp41__length1);
+#line 146 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp42_ = _tmp41_;
+#line 146 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp42__length1 = _tmp41__length1;
+#line 146 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp43_ = i;
+#line 146 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp44_ = rules_patterns;
+#line 146 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp44__length1 = rules_patterns_length1;
+#line 146 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp45_ = i;
+#line 146 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp46_ = _tmp44_[_tmp45_];
+#line 146 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp47_ = g_strdup (_tmp46_);
+#line 146 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _g_free0 (_tmp42_[_tmp43_].pattern);
+#line 146 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp42_[_tmp43_].pattern = _tmp47_;
+#line 147 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp48_ = idcard;
+#line 147 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp49_ = id_card_get_rules (_tmp48_, &_tmp49__length1);
+#line 147 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp50_ = _tmp49_;
+#line 147 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp50__length1 = _tmp49__length1;
+#line 147 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp51_ = i;
+#line 147 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp52_ = rules_always_confirm;
+#line 147 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp52__length1 = rules_always_confirm_length1;
+#line 147 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp53_ = i;
+#line 147 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp54_ = _tmp52_[_tmp53_];
+#line 147 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp55_ = g_strdup (_tmp54_);
+#line 147 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _g_free0 (_tmp50_[_tmp51_].always_confirm);
+#line 147 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp50_[_tmp51_].always_confirm = _tmp55_;
+#line 1797 "moonshot-server.c"
                                }
                        }
                }
        }
-       result = identity_manager_view_add_identity (self->priv->main_window, idcard);
+#line 151 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp56_ = self->priv->parent_app;
+#line 151 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp57_ = idcard;
+#line 151 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp58_ = identity_manager_app_add_identity (_tmp56_, _tmp57_);
+#line 151 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       result = _tmp58_;
+#line 151 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        _g_object_unref0 (idcard);
-#line 151 "moonshot-server.vala"
+#line 151 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        return result;
-#line 911 "moonshot-server.c"
+#line 1814 "moonshot-server.c"
 }
 
 
-#line 155 "moonshot-server.vala"
-gint moonshot_server_install_from_file (MoonshotServer* self, const char* file_name) {
-#line 917 "moonshot-server.c"
+gint moonshot_server_install_from_file (MoonshotServer* self, const gchar* file_name) {
        gint result = 0;
+       const gchar* _tmp0_;
+       WebProvisioningParser* _tmp1_;
        WebProvisioningParser* webp;
+       WebProvisioningParser* _tmp2_;
        gboolean _result_;
        gint installed_cards;
-#line 155 "moonshot-server.vala"
+       IdCard** _tmp3_;
+       gint _tmp3__length1;
+#line 155 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        g_return_val_if_fail (self != NULL, 0);
-#line 155 "moonshot-server.vala"
+#line 155 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        g_return_val_if_fail (file_name != NULL, 0);
-#line 157 "moonshot-server.vala"
-       webp = web_provisioning_parser_new (file_name);
-#line 159 "moonshot-server.vala"
-       web_provisioning_parser_parse (webp);
-#line 160 "moonshot-server.vala"
+#line 157 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp0_ = file_name;
+#line 157 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp1_ = web_provisioning_parser_new (_tmp0_);
+#line 157 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       webp = _tmp1_;
+#line 159 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp2_ = webp;
+#line 159 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       web_provisioning_parser_parse (_tmp2_);
+#line 160 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        _result_ = FALSE;
-#line 161 "moonshot-server.vala"
+#line 161 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        installed_cards = 0;
-#line 934 "moonshot-server.c"
+#line 162 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp3_ = web_provisioning_cards;
+#line 162 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _tmp3__length1 = web_provisioning_cards_length1;
+#line 1850 "moonshot-server.c"
        {
-               IdCard** card_collection;
-               int card_collection_length1;
-               int card_it;
-#line 162 "moonshot-server.vala"
-               card_collection = web_provisioning_cards;
-#line 941 "moonshot-server.c"
-               card_collection_length1 = web_provisioning_cards_length1;
-               for (card_it = 0; card_it < web_provisioning_cards_length1; card_it = card_it + 1) {
-                       IdCard* card;
-                       card = _g_object_ref0 (card_collection[card_it]);
+               IdCard** card_collection = NULL;
+               gint card_collection_length1 = 0;
+               gint _card_collection_size_ = 0;
+               gint card_it = 0;
+#line 162 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               card_collection = _tmp3_;
+#line 162 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               card_collection_length1 = _tmp3__length1;
+#line 162 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+               for (card_it = 0; card_it < _tmp3__length1; card_it = card_it + 1) {
+#line 1862 "moonshot-server.c"
+                       IdCard* _tmp4_;
+                       IdCard* card = NULL;
+#line 162 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       _tmp4_ = _g_object_ref0 (card_collection[card_it]);
+#line 162 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                       card = _tmp4_;
+#line 1869 "moonshot-server.c"
                        {
+                               gchar** _tmp5_ = NULL;
+                               gchar** rules_patterns;
                                gint rules_patterns_length1;
                                gint _rules_patterns_size_;
-                               char** _tmp1_;
-                               char** _tmp0_ = NULL;
-                               char** rules_patterns;
+                               gchar** _tmp6_ = NULL;
+                               gchar** rules_always_confirm;
                                gint rules_always_confirm_length1;
                                gint _rules_always_confirm_size_;
-                               char** _tmp3_;
-                               char** _tmp2_ = NULL;
-                               char** rules_always_confirm;
-                               gint _tmp4_;
-                               gint _tmp13_;
-                               rules_patterns = (_tmp1_ = (_tmp0_ = g_new0 (char*, 0 + 1), _tmp0_), rules_patterns_length1 = 0, _rules_patterns_size_ = rules_patterns_length1, _tmp1_);
-                               rules_always_confirm = (_tmp3_ = (_tmp2_ = g_new0 (char*, 0 + 1), _tmp2_), rules_always_confirm_length1 = 0, _rules_always_confirm_size_ = rules_always_confirm_length1, _tmp3_);
-#line 167 "moonshot-server.vala"
-                               if (_tmp4_ > 0) {
-#line 963 "moonshot-server.c"
+                               IdCard* _tmp7_;
+                               Rule* _tmp8_;
+                               gint _tmp8__length1;
+                               Rule* _tmp9_;
+                               gint _tmp9__length1;
+                               IdCard* _tmp35_;
+                               const gchar* _tmp36_;
+                               const gchar* _tmp37_;
+                               IdCard* _tmp38_;
+                               const gchar* _tmp39_;
+                               const gchar* _tmp40_;
+                               IdCard* _tmp41_;
+                               const gchar* _tmp42_;
+                               const gchar* _tmp43_;
+                               IdCard* _tmp44_;
+                               const gchar* _tmp45_;
+                               const gchar* _tmp46_;
+                               gchar** _tmp47_;
+                               gint _tmp47__length1;
+                               gchar** _tmp48_;
+                               gint _tmp48__length1;
+                               IdCard* _tmp49_;
+                               gchar** _tmp50_;
+                               gint _tmp50__length1;
+                               gchar** _tmp51_;
+                               gint _tmp51__length1;
+                               IdCard* _tmp52_;
+                               TrustAnchor* _tmp53_;
+                               TrustAnchor* _tmp54_;
+                               const gchar* _tmp55_;
+                               const gchar* _tmp56_;
+                               IdCard* _tmp57_;
+                               TrustAnchor* _tmp58_;
+                               TrustAnchor* _tmp59_;
+                               const gchar* _tmp60_;
+                               const gchar* _tmp61_;
+                               IdCard* _tmp62_;
+                               TrustAnchor* _tmp63_;
+                               TrustAnchor* _tmp64_;
+                               const gchar* _tmp65_;
+                               const gchar* _tmp66_;
+                               IdCard* _tmp67_;
+                               TrustAnchor* _tmp68_;
+                               TrustAnchor* _tmp69_;
+                               const gchar* _tmp70_;
+                               const gchar* _tmp71_;
+                               gboolean _tmp72_ = FALSE;
+                               gboolean _tmp73_;
+#line 164 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp5_ = g_new0 (gchar*, 0 + 1);
+#line 164 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               rules_patterns = _tmp5_;
+#line 164 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               rules_patterns_length1 = 0;
+#line 164 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _rules_patterns_size_ = rules_patterns_length1;
+#line 165 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp6_ = g_new0 (gchar*, 0 + 1);
+#line 165 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               rules_always_confirm = _tmp6_;
+#line 165 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               rules_always_confirm_length1 = 0;
+#line 165 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _rules_always_confirm_size_ = rules_always_confirm_length1;
+#line 167 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp7_ = card;
+#line 167 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp8_ = id_card_get_rules (_tmp7_, &_tmp8__length1);
+#line 167 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp9_ = _tmp8_;
+#line 167 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp9__length1 = _tmp8__length1;
+#line 167 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               if (_tmp9__length1 > 0) {
+#line 1953 "moonshot-server.c"
                                        gint i;
-                                       gint _tmp5_;
-                                       char** _tmp6_;
-                                       gint _tmp7_;
-                                       char** _tmp8_;
-#line 169 "moonshot-server.vala"
+                                       IdCard* _tmp10_;
+                                       Rule* _tmp11_;
+                                       gint _tmp11__length1;
+                                       Rule* _tmp12_;
+                                       gint _tmp12__length1;
+                                       gchar** _tmp13_ = NULL;
+                                       IdCard* _tmp14_;
+                                       Rule* _tmp15_;
+                                       gint _tmp15__length1;
+                                       Rule* _tmp16_;
+                                       gint _tmp16__length1;
+                                       gchar** _tmp17_ = NULL;
+                                       IdCard* _tmp18_;
+                                       Rule* _tmp19_;
+                                       gint _tmp19__length1;
+                                       Rule* _tmp20_;
+                                       gint _tmp20__length1;
+#line 169 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
                                        i = 0;
-#line 170 "moonshot-server.vala"
-                                       rules_patterns = (_tmp6_ = g_new0 (char*, _tmp5_ + 1), rules_patterns = (_vala_array_free (rules_patterns, rules_patterns_length1, (GDestroyNotify) g_free), NULL), rules_patterns_length1 = _tmp5_, _rules_patterns_size_ = rules_patterns_length1, _tmp6_);
-#line 171 "moonshot-server.vala"
-                                       rules_always_confirm = (_tmp8_ = g_new0 (char*, _tmp7_ + 1), rules_always_confirm = (_vala_array_free (rules_always_confirm, rules_always_confirm_length1, (GDestroyNotify) g_free), NULL), rules_always_confirm_length1 = _tmp7_, _rules_always_confirm_size_ = rules_always_confirm_length1, _tmp8_);
-#line 975 "moonshot-server.c"
+#line 170 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp10_ = card;
+#line 170 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp11_ = id_card_get_rules (_tmp10_, &_tmp11__length1);
+#line 170 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp12_ = _tmp11_;
+#line 170 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp12__length1 = _tmp11__length1;
+#line 170 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp13_ = g_new0 (gchar*, _tmp12__length1 + 1);
+#line 170 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       rules_patterns = (_vala_array_free (rules_patterns, rules_patterns_length1, (GDestroyNotify) g_free), NULL);
+#line 170 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       rules_patterns = _tmp13_;
+#line 170 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       rules_patterns_length1 = _tmp12__length1;
+#line 170 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _rules_patterns_size_ = rules_patterns_length1;
+#line 171 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp14_ = card;
+#line 171 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp15_ = id_card_get_rules (_tmp14_, &_tmp15__length1);
+#line 171 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp16_ = _tmp15_;
+#line 171 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp16__length1 = _tmp15__length1;
+#line 171 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp17_ = g_new0 (gchar*, _tmp16__length1 + 1);
+#line 171 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       rules_always_confirm = (_vala_array_free (rules_always_confirm, rules_always_confirm_length1, (GDestroyNotify) g_free), NULL);
+#line 171 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       rules_always_confirm = _tmp17_;
+#line 171 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       rules_always_confirm_length1 = _tmp16__length1;
+#line 171 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _rules_always_confirm_size_ = rules_always_confirm_length1;
+#line 172 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp18_ = card;
+#line 172 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp19_ = id_card_get_rules (_tmp18_, &_tmp19__length1);
+#line 172 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp20_ = _tmp19_;
+#line 172 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp20__length1 = _tmp19__length1;
+#line 2018 "moonshot-server.c"
                                        {
-                                               gint _tmp9_;
-                                               Rule* r_collection;
-                                               int r_collection_length1;
-                                               int r_it;
-#line 172 "moonshot-server.vala"
-                                               r_collection = id_card_get_rules (card, &_tmp9_);
-#line 983 "moonshot-server.c"
-                                               r_collection_length1 = _tmp9_;
-                                               for (r_it = 0; r_it < _tmp9_; r_it = r_it + 1) {
-                                                       Rule _tmp12_ = {0};
-                                                       Rule r;
-                                                       r = (rule_copy (&r_collection[r_it], &_tmp12_), _tmp12_);
+                                               Rule* r_collection = NULL;
+                                               gint r_collection_length1 = 0;
+                                               gint _r_collection_size_ = 0;
+                                               gint r_it = 0;
+#line 172 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                               r_collection = _tmp20_;
+#line 172 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                               r_collection_length1 = _tmp20__length1;
+#line 172 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                               for (r_it = 0; r_it < _tmp20__length1; r_it = r_it + 1) {
+#line 2030 "moonshot-server.c"
+                                                       Rule _tmp21_ = {0};
+                                                       Rule r = {0};
+#line 172 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                                       rule_copy (&r_collection[r_it], &_tmp21_);
+#line 172 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                                       r = _tmp21_;
+#line 2037 "moonshot-server.c"
                                                        {
-                                                               char* _tmp10_;
-                                                               char* _tmp11_;
-#line 174 "moonshot-server.vala"
-                                                               rules_patterns[i] = (_tmp10_ = g_strdup (r.pattern), _g_free0 (rules_patterns[i]), _tmp10_);
-#line 175 "moonshot-server.vala"
-                                                               rules_always_confirm[i] = (_tmp11_ = g_strdup (r.always_confirm), _g_free0 (rules_always_confirm[i]), _tmp11_);
-#line 176 "moonshot-server.vala"
-                                                               i++;
-#line 998 "moonshot-server.c"
+                                                               gchar** _tmp22_;
+                                                               gint _tmp22__length1;
+                                                               gint _tmp23_;
+                                                               Rule _tmp24_;
+                                                               const gchar* _tmp25_;
+                                                               gchar* _tmp26_;
+                                                               gchar* _tmp27_;
+                                                               gchar** _tmp28_;
+                                                               gint _tmp28__length1;
+                                                               gint _tmp29_;
+                                                               Rule _tmp30_;
+                                                               const gchar* _tmp31_;
+                                                               gchar* _tmp32_;
+                                                               gchar* _tmp33_;
+                                                               gint _tmp34_;
+#line 174 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                                               _tmp22_ = rules_patterns;
+#line 174 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                                               _tmp22__length1 = rules_patterns_length1;
+#line 174 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                                               _tmp23_ = i;
+#line 174 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                                               _tmp24_ = r;
+#line 174 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                                               _tmp25_ = _tmp24_.pattern;
+#line 174 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                                               _tmp26_ = g_strdup (_tmp25_);
+#line 174 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                                               _g_free0 (_tmp22_[_tmp23_]);
+#line 174 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                                               _tmp22_[_tmp23_] = _tmp26_;
+#line 174 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                                               _tmp27_ = _tmp22_[_tmp23_];
+#line 175 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                                               _tmp28_ = rules_always_confirm;
+#line 175 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                                               _tmp28__length1 = rules_always_confirm_length1;
+#line 175 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                                               _tmp29_ = i;
+#line 175 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                                               _tmp30_ = r;
+#line 175 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                                               _tmp31_ = _tmp30_.always_confirm;
+#line 175 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                                               _tmp32_ = g_strdup (_tmp31_);
+#line 175 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                                               _g_free0 (_tmp28_[_tmp29_]);
+#line 175 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                                               _tmp28_[_tmp29_] = _tmp32_;
+#line 175 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                                               _tmp33_ = _tmp28_[_tmp29_];
+#line 176 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                                               _tmp34_ = i;
+#line 176 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                                               i = _tmp34_ + 1;
+#line 172 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
                                                                rule_destroy (&r);
+#line 2096 "moonshot-server.c"
                                                        }
                                                }
                                        }
                                }
-#line 180 "moonshot-server.vala"
-                               _result_ = moonshot_server_install_id_card (self, id_card_get_display_name (card), id_card_get_username (card), id_card_get_password (card), id_card_get_issuer (card), rules_patterns, rules_patterns_length1, rules_always_confirm, rules_always_confirm_length1, id_card_get_services (card, &_tmp13_), _tmp13_, trust_anchor_get_ca_cert (id_card_get_trust_anchor (card)), trust_anchor_get_subject (id_card_get_trust_anchor (card)), trust_anchor_get_subject_alt (id_card_get_trust_anchor (card)), trust_anchor_get_server_cert (id_card_get_trust_anchor (card)));
-#line 191 "moonshot-server.vala"
-                               if (_result_) {
-#line 192 "moonshot-server.vala"
-                                       installed_cards++;
-#line 1010 "moonshot-server.c"
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp35_ = card;
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp36_ = id_card_get_display_name (_tmp35_);
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp37_ = _tmp36_;
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp38_ = card;
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp39_ = id_card_get_username (_tmp38_);
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp40_ = _tmp39_;
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp41_ = card;
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp42_ = id_card_get_password (_tmp41_);
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp43_ = _tmp42_;
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp44_ = card;
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp45_ = id_card_get_issuer (_tmp44_);
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp46_ = _tmp45_;
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp47_ = rules_patterns;
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp47__length1 = rules_patterns_length1;
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp48_ = rules_always_confirm;
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp48__length1 = rules_always_confirm_length1;
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp49_ = card;
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp50_ = id_card_get_services (_tmp49_, &_tmp50__length1);
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp51_ = _tmp50_;
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp51__length1 = _tmp50__length1;
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp52_ = card;
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp53_ = id_card_get_trust_anchor (_tmp52_);
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp54_ = _tmp53_;
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp55_ = trust_anchor_get_ca_cert (_tmp54_);
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp56_ = _tmp55_;
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp57_ = card;
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp58_ = id_card_get_trust_anchor (_tmp57_);
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp59_ = _tmp58_;
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp60_ = trust_anchor_get_subject (_tmp59_);
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp61_ = _tmp60_;
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp62_ = card;
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp63_ = id_card_get_trust_anchor (_tmp62_);
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp64_ = _tmp63_;
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp65_ = trust_anchor_get_subject_alt (_tmp64_);
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp66_ = _tmp65_;
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp67_ = card;
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp68_ = id_card_get_trust_anchor (_tmp67_);
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp69_ = _tmp68_;
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp70_ = trust_anchor_get_server_cert (_tmp69_);
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp71_ = _tmp70_;
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp72_ = moonshot_server_install_id_card (self, _tmp37_, _tmp40_, _tmp43_, _tmp46_, _tmp47_, _tmp47__length1, _tmp48_, _tmp48__length1, _tmp51_, _tmp51__length1, _tmp56_, _tmp61_, _tmp66_, _tmp71_);
+#line 180 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _result_ = _tmp72_;
+#line 191 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               _tmp73_ = _result_;
+#line 191 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                               if (_tmp73_) {
+#line 2189 "moonshot-server.c"
+                                       gint _tmp74_;
+#line 192 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       _tmp74_ = installed_cards;
+#line 192 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+                                       installed_cards = _tmp74_ + 1;
+#line 2195 "moonshot-server.c"
                                }
+#line 162 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
                                rules_always_confirm = (_vala_array_free (rules_always_confirm, rules_always_confirm_length1, (GDestroyNotify) g_free), NULL);
+#line 162 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
                                rules_patterns = (_vala_array_free (rules_patterns, rules_patterns_length1, (GDestroyNotify) g_free), NULL);
+#line 162 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
                                _g_object_unref0 (card);
+#line 2203 "moonshot-server.c"
                        }
                }
        }
+#line 195 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        result = installed_cards;
+#line 195 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        _web_provisioning_parser_unref0 (webp);
-#line 195 "moonshot-server.vala"
+#line 195 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        return result;
-#line 1022 "moonshot-server.c"
+#line 2213 "moonshot-server.c"
 }
 
 
 static void moonshot_server_class_init (MoonshotServerClass * klass) {
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        moonshot_server_parent_class = g_type_class_peek_parent (klass);
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        g_type_class_add_private (klass, sizeof (MoonshotServerPrivate));
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        G_OBJECT_CLASS (klass)->finalize = moonshot_server_finalize;
+#line 2224 "moonshot-server.c"
 }
 
 
 static void moonshot_server_instance_init (MoonshotServer * self) {
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        self->priv = MOONSHOT_SERVER_GET_PRIVATE (self);
+#line 2231 "moonshot-server.c"
 }
 
 
 static void moonshot_server_finalize (GObject* obj) {
        MoonshotServer * self;
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        self = MOONSHOT_SERVER (obj);
-       _g_object_unref0 (self->priv->main_window);
+#line 6 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
+       _identity_manager_app_unref0 (self->priv->parent_app);
+#line 4 "/build/slave/packages-full/build/ui/src/moonshot-server.vala"
        G_OBJECT_CLASS (moonshot_server_parent_class)->finalize (obj);
+#line 2243 "moonshot-server.c"
 }
 
 
@@ -1048,6 +2249,7 @@ GType moonshot_server_get_type (void) {
                static const GTypeInfo g_define_type_info = { sizeof (MoonshotServerClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) moonshot_server_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (MoonshotServer), 0, (GInstanceInitFunc) moonshot_server_instance_init, NULL };
                GType moonshot_server_type_id;
                moonshot_server_type_id = g_type_register_static (G_TYPE_OBJECT, "MoonshotServer", &g_define_type_info, 0);
+               g_type_set_qdata (moonshot_server_type_id, g_quark_from_static_string ("vala-dbus-register-object"), (void*) moonshot_server_register_object);
                g_once_init_leave (&moonshot_server_type_id__volatile, moonshot_server_type_id);
        }
        return moonshot_server_type_id__volatile;
@@ -1055,13 +2257,13 @@ GType moonshot_server_get_type (void) {
 
 
 static void _dbus_moonshot_server_get_identity (MoonshotServer* self, GVariant* parameters, GDBusMethodInvocation* invocation) {
-       char* nai = NULL;
+       GVariantIter _arguments_iter;
+       gchar* nai = NULL;
        GVariant* _tmp0_;
-       char* password = NULL;
+       gchar* password = NULL;
        GVariant* _tmp1_;
-       char* service = NULL;
+       gchar* service = NULL;
        GVariant* _tmp2_;
-       GVariantIter _arguments_iter;
        g_variant_iter_init (&_arguments_iter, parameters);
        _tmp0_ = g_variant_iter_next_value (&_arguments_iter);
        nai = g_variant_dup_string (_tmp0_, NULL);
@@ -1072,142 +2274,146 @@ static void _dbus_moonshot_server_get_identity (MoonshotServer* self, GVariant*
        _tmp2_ = g_variant_iter_next_value (&_arguments_iter);
        service = g_variant_dup_string (_tmp2_, NULL);
        g_variant_unref (_tmp2_);
-       moonshot_server_get_identity (self, nai, password, service, (GAsyncReadyCallback) _dbus_moonshot_server_get_identity_ready, g_object_ref (invocation));
+       moonshot_server_get_identity (self, nai, password, service, (GAsyncReadyCallback) _dbus_moonshot_server_get_identity_ready, invocation);
        _g_free0 (nai);
        _g_free0 (password);
        _g_free0 (service);
 }
 
 
-static void _dbus_moonshot_server_get_identity_ready (GObject * source_object, GAsyncResult * _res_, gpointer _user_data_) {
+static void _dbus_moonshot_server_get_identity_ready (GObject * source_object, GAsyncResult * _res_, gpointer _user_data_) {
        GDBusMethodInvocation * invocation;
-       GError* error;
-       char* nai_out = NULL;
-       char* password_out = NULL;
-       char* server_certificate_hash = NULL;
-       char* ca_certificate = NULL;
-       char* subject_name_constraint = NULL;
-       char* subject_alt_name_constraint = NULL;
-       gboolean result;
+       GError* error = NULL;
+       GDBusMessage* _reply_message;
        GVariant* _reply;
        GVariantBuilder _reply_builder;
+       gchar* nai_out = NULL;
+       gchar* password_out = NULL;
+       gchar* server_certificate_hash = NULL;
+       gchar* ca_certificate = NULL;
+       gchar* subject_name_constraint = NULL;
+       gchar* subject_alt_name_constraint = NULL;
+       gboolean result;
        invocation = _user_data_;
-       error = NULL;
        result = moonshot_server_get_identity_finish ((MoonshotServer*) source_object, _res_, &nai_out, &password_out, &server_certificate_hash, &ca_certificate, &subject_name_constraint, &subject_alt_name_constraint);
+       _reply_message = g_dbus_message_new_method_reply (g_dbus_method_invocation_get_message (invocation));
        g_variant_builder_init (&_reply_builder, G_VARIANT_TYPE_TUPLE);
        g_variant_builder_add_value (&_reply_builder, g_variant_new_string (nai_out));
-       _g_free0 (nai_out);
        g_variant_builder_add_value (&_reply_builder, g_variant_new_string (password_out));
-       _g_free0 (password_out);
        g_variant_builder_add_value (&_reply_builder, g_variant_new_string (server_certificate_hash));
-       _g_free0 (server_certificate_hash);
        g_variant_builder_add_value (&_reply_builder, g_variant_new_string (ca_certificate));
-       _g_free0 (ca_certificate);
        g_variant_builder_add_value (&_reply_builder, g_variant_new_string (subject_name_constraint));
-       _g_free0 (subject_name_constraint);
        g_variant_builder_add_value (&_reply_builder, g_variant_new_string (subject_alt_name_constraint));
-       _g_free0 (subject_alt_name_constraint);
        g_variant_builder_add_value (&_reply_builder, g_variant_new_boolean (result));
        _reply = g_variant_builder_end (&_reply_builder);
-       g_dbus_method_invocation_return_value (invocation, _reply);
+       g_dbus_message_set_body (_reply_message, _reply);
+       _g_free0 (nai_out);
+       _g_free0 (password_out);
+       _g_free0 (server_certificate_hash);
+       _g_free0 (ca_certificate);
+       _g_free0 (subject_name_constraint);
+       _g_free0 (subject_alt_name_constraint);
+       g_dbus_connection_send_message (g_dbus_method_invocation_get_connection (invocation), _reply_message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
        g_object_unref (invocation);
-       g_variant_unref (_reply);
+       g_object_unref (_reply_message);
 }
 
 
 static void _dbus_moonshot_server_get_default_identity (MoonshotServer* self, GVariant* parameters, GDBusMethodInvocation* invocation) {
        GVariantIter _arguments_iter;
        g_variant_iter_init (&_arguments_iter, parameters);
-       moonshot_server_get_default_identity (self, (GAsyncReadyCallback) _dbus_moonshot_server_get_default_identity_ready, g_object_ref (invocation));
+       moonshot_server_get_default_identity (self, (GAsyncReadyCallback) _dbus_moonshot_server_get_default_identity_ready, invocation);
 }
 
 
-static void _dbus_moonshot_server_get_default_identity_ready (GObject * source_object, GAsyncResult * _res_, gpointer _user_data_) {
+static void _dbus_moonshot_server_get_default_identity_ready (GObject * source_object, GAsyncResult * _res_, gpointer _user_data_) {
        GDBusMethodInvocation * invocation;
-       GError* error;
-       char* nai_out = NULL;
-       char* password_out = NULL;
-       char* server_certificate_hash = NULL;
-       char* ca_certificate = NULL;
-       char* subject_name_constraint = NULL;
-       char* subject_alt_name_constraint = NULL;
-       gboolean result;
+       GError* error = NULL;
+       GDBusMessage* _reply_message;
        GVariant* _reply;
        GVariantBuilder _reply_builder;
+       gchar* nai_out = NULL;
+       gchar* password_out = NULL;
+       gchar* server_certificate_hash = NULL;
+       gchar* ca_certificate = NULL;
+       gchar* subject_name_constraint = NULL;
+       gchar* subject_alt_name_constraint = NULL;
+       gboolean result;
        invocation = _user_data_;
-       error = NULL;
        result = moonshot_server_get_default_identity_finish ((MoonshotServer*) source_object, _res_, &nai_out, &password_out, &server_certificate_hash, &ca_certificate, &subject_name_constraint, &subject_alt_name_constraint);
+       _reply_message = g_dbus_message_new_method_reply (g_dbus_method_invocation_get_message (invocation));
        g_variant_builder_init (&_reply_builder, G_VARIANT_TYPE_TUPLE);
        g_variant_builder_add_value (&_reply_builder, g_variant_new_string (nai_out));
-       _g_free0 (nai_out);
        g_variant_builder_add_value (&_reply_builder, g_variant_new_string (password_out));
-       _g_free0 (password_out);
        g_variant_builder_add_value (&_reply_builder, g_variant_new_string (server_certificate_hash));
-       _g_free0 (server_certificate_hash);
        g_variant_builder_add_value (&_reply_builder, g_variant_new_string (ca_certificate));
-       _g_free0 (ca_certificate);
        g_variant_builder_add_value (&_reply_builder, g_variant_new_string (subject_name_constraint));
-       _g_free0 (subject_name_constraint);
        g_variant_builder_add_value (&_reply_builder, g_variant_new_string (subject_alt_name_constraint));
-       _g_free0 (subject_alt_name_constraint);
        g_variant_builder_add_value (&_reply_builder, g_variant_new_boolean (result));
        _reply = g_variant_builder_end (&_reply_builder);
-       g_dbus_method_invocation_return_value (invocation, _reply);
+       g_dbus_message_set_body (_reply_message, _reply);
+       _g_free0 (nai_out);
+       _g_free0 (password_out);
+       _g_free0 (server_certificate_hash);
+       _g_free0 (ca_certificate);
+       _g_free0 (subject_name_constraint);
+       _g_free0 (subject_alt_name_constraint);
+       g_dbus_connection_send_message (g_dbus_method_invocation_get_connection (invocation), _reply_message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
        g_object_unref (invocation);
-       g_variant_unref (_reply);
+       g_object_unref (_reply_message);
 }
 
 
 static void _dbus_moonshot_server_install_id_card (MoonshotServer* self, GVariant* parameters, GDBusMethodInvocation* invocation) {
-       GError* error;
-       char* display_name = NULL;
+       GError* error = NULL;
+       GVariantIter _arguments_iter;
+       gchar* display_name = NULL;
        GVariant* _tmp3_;
-       char* user_name = NULL;
+       gchar* user_name = NULL;
        GVariant* _tmp4_;
-       char* password = NULL;
+       gchar* password = NULL;
        GVariant* _tmp5_;
-       char* realm = NULL;
+       gchar* realm = NULL;
        GVariant* _tmp6_;
-       char** rules_patterns = NULL;
-       int rules_patterns_length1;
+       gchar** rules_patterns = NULL;
+       int rules_patterns_length1 = 0;
        GVariant* _tmp7_;
-       char** _tmp8_;
+       gchar** _tmp8_;
        int _tmp8__length;
        int _tmp8__size;
        int _tmp8__length1;
        GVariantIter _tmp9_;
        GVariant* _tmp10_;
-       char** rules_always_confirm = NULL;
-       int rules_always_confirm_length1;
+       gchar** rules_always_confirm = NULL;
+       int rules_always_confirm_length1 = 0;
        GVariant* _tmp11_;
-       char** _tmp12_;
+       gchar** _tmp12_;
        int _tmp12__length;
        int _tmp12__size;
        int _tmp12__length1;
        GVariantIter _tmp13_;
        GVariant* _tmp14_;
-       char** services = NULL;
-       int services_length1;
+       gchar** services = NULL;
+       int services_length1 = 0;
        GVariant* _tmp15_;
-       char** _tmp16_;
+       gchar** _tmp16_;
        int _tmp16__length;
        int _tmp16__size;
        int _tmp16__length1;
        GVariantIter _tmp17_;
        GVariant* _tmp18_;
-       char* ca_cert = NULL;
+       gchar* ca_cert = NULL;
        GVariant* _tmp19_;
-       char* subject = NULL;
+       gchar* subject = NULL;
        GVariant* _tmp20_;
-       char* subject_alt = NULL;
+       gchar* subject_alt = NULL;
        GVariant* _tmp21_;
-       char* server_cert = NULL;
+       gchar* server_cert = NULL;
        GVariant* _tmp22_;
-       gboolean result;
-       GVariantIter _arguments_iter;
+       GDBusMessage* _reply_message;
        GVariant* _reply;
        GVariantBuilder _reply_builder;
-       error = NULL;
+       gboolean result;
        g_variant_iter_init (&_arguments_iter, parameters);
        _tmp3_ = g_variant_iter_next_value (&_arguments_iter);
        display_name = g_variant_dup_string (_tmp3_, NULL);
@@ -1221,17 +2427,16 @@ static void _dbus_moonshot_server_install_id_card (MoonshotServer* self, GVarian
        _tmp6_ = g_variant_iter_next_value (&_arguments_iter);
        realm = g_variant_dup_string (_tmp6_, NULL);
        g_variant_unref (_tmp6_);
-       rules_patterns_length1 = 0;
        _tmp7_ = g_variant_iter_next_value (&_arguments_iter);
-       _tmp8_ = g_new (char*, 5);
+       _tmp8_ = g_new (gchar*, 5);
        _tmp8__length = 0;
        _tmp8__size = 4;
        _tmp8__length1 = 0;
        g_variant_iter_init (&_tmp9_, _tmp7_);
-       for (; _tmp10_ = g_variant_iter_next_value (&_tmp9_); _tmp8__length1++) {
+       for (; (_tmp10_ = g_variant_iter_next_value (&_tmp9_)) != NULL; _tmp8__length1++) {
                if (_tmp8__size == _tmp8__length) {
                        _tmp8__size = 2 * _tmp8__size;
-                       _tmp8_ = g_renew (char*, _tmp8_, _tmp8__size + 1);
+                       _tmp8_ = g_renew (gchar*, _tmp8_, _tmp8__size + 1);
                }
                _tmp8_[_tmp8__length++] = g_variant_dup_string (_tmp10_, NULL);
                g_variant_unref (_tmp10_);
@@ -1240,17 +2445,16 @@ static void _dbus_moonshot_server_install_id_card (MoonshotServer* self, GVarian
        _tmp8_[_tmp8__length] = NULL;
        rules_patterns = _tmp8_;
        g_variant_unref (_tmp7_);
-       rules_always_confirm_length1 = 0;
        _tmp11_ = g_variant_iter_next_value (&_arguments_iter);
-       _tmp12_ = g_new (char*, 5);
+       _tmp12_ = g_new (gchar*, 5);
        _tmp12__length = 0;
        _tmp12__size = 4;
        _tmp12__length1 = 0;
        g_variant_iter_init (&_tmp13_, _tmp11_);
-       for (; _tmp14_ = g_variant_iter_next_value (&_tmp13_); _tmp12__length1++) {
+       for (; (_tmp14_ = g_variant_iter_next_value (&_tmp13_)) != NULL; _tmp12__length1++) {
                if (_tmp12__size == _tmp12__length) {
                        _tmp12__size = 2 * _tmp12__size;
-                       _tmp12_ = g_renew (char*, _tmp12_, _tmp12__size + 1);
+                       _tmp12_ = g_renew (gchar*, _tmp12_, _tmp12__size + 1);
                }
                _tmp12_[_tmp12__length++] = g_variant_dup_string (_tmp14_, NULL);
                g_variant_unref (_tmp14_);
@@ -1259,17 +2463,16 @@ static void _dbus_moonshot_server_install_id_card (MoonshotServer* self, GVarian
        _tmp12_[_tmp12__length] = NULL;
        rules_always_confirm = _tmp12_;
        g_variant_unref (_tmp11_);
-       services_length1 = 0;
        _tmp15_ = g_variant_iter_next_value (&_arguments_iter);
-       _tmp16_ = g_new (char*, 5);
+       _tmp16_ = g_new (gchar*, 5);
        _tmp16__length = 0;
        _tmp16__size = 4;
        _tmp16__length1 = 0;
        g_variant_iter_init (&_tmp17_, _tmp15_);
-       for (; _tmp18_ = g_variant_iter_next_value (&_tmp17_); _tmp16__length1++) {
+       for (; (_tmp18_ = g_variant_iter_next_value (&_tmp17_)) != NULL; _tmp16__length1++) {
                if (_tmp16__size == _tmp16__length) {
                        _tmp16__size = 2 * _tmp16__size;
-                       _tmp16_ = g_renew (char*, _tmp16_, _tmp16__size + 1);
+                       _tmp16_ = g_renew (gchar*, _tmp16_, _tmp16__size + 1);
                }
                _tmp16_[_tmp16__length++] = g_variant_dup_string (_tmp18_, NULL);
                g_variant_unref (_tmp18_);
@@ -1291,7 +2494,11 @@ static void _dbus_moonshot_server_install_id_card (MoonshotServer* self, GVarian
        server_cert = g_variant_dup_string (_tmp22_, NULL);
        g_variant_unref (_tmp22_);
        result = moonshot_server_install_id_card (self, display_name, user_name, password, realm, rules_patterns, rules_patterns_length1, rules_always_confirm, rules_always_confirm_length1, services, services_length1, ca_cert, subject, subject_alt, server_cert);
+       _reply_message = g_dbus_message_new_method_reply (g_dbus_method_invocation_get_message (invocation));
        g_variant_builder_init (&_reply_builder, G_VARIANT_TYPE_TUPLE);
+       g_variant_builder_add_value (&_reply_builder, g_variant_new_boolean (result));
+       _reply = g_variant_builder_end (&_reply_builder);
+       g_dbus_message_set_body (_reply_message, _reply);
        _g_free0 (display_name);
        _g_free0 (user_name);
        _g_free0 (password);
@@ -1303,31 +2510,35 @@ static void _dbus_moonshot_server_install_id_card (MoonshotServer* self, GVarian
        _g_free0 (subject);
        _g_free0 (subject_alt);
        _g_free0 (server_cert);
-       g_variant_builder_add_value (&_reply_builder, g_variant_new_boolean (result));
-       _reply = g_variant_builder_end (&_reply_builder);
-       g_dbus_method_invocation_return_value (invocation, _reply);
+       g_dbus_connection_send_message (g_dbus_method_invocation_get_connection (invocation), _reply_message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
+       g_object_unref (invocation);
+       g_object_unref (_reply_message);
 }
 
 
 static void _dbus_moonshot_server_install_from_file (MoonshotServer* self, GVariant* parameters, GDBusMethodInvocation* invocation) {
-       GError* error;
-       char* file_name = NULL;
-       GVariant* _tmp23_;
-       gint result;
+       GError* error = NULL;
        GVariantIter _arguments_iter;
+       gchar* file_name = NULL;
+       GVariant* _tmp23_;
+       GDBusMessage* _reply_message;
        GVariant* _reply;
        GVariantBuilder _reply_builder;
-       error = NULL;
+       gint result;
        g_variant_iter_init (&_arguments_iter, parameters);
        _tmp23_ = g_variant_iter_next_value (&_arguments_iter);
        file_name = g_variant_dup_string (_tmp23_, NULL);
        g_variant_unref (_tmp23_);
        result = moonshot_server_install_from_file (self, file_name);
+       _reply_message = g_dbus_message_new_method_reply (g_dbus_method_invocation_get_message (invocation));
        g_variant_builder_init (&_reply_builder, G_VARIANT_TYPE_TUPLE);
-       _g_free0 (file_name);
        g_variant_builder_add_value (&_reply_builder, g_variant_new_int32 (result));
        _reply = g_variant_builder_end (&_reply_builder);
-       g_dbus_method_invocation_return_value (invocation, _reply);
+       g_dbus_message_set_body (_reply_message, _reply);
+       _g_free0 (file_name);
+       g_dbus_connection_send_message (g_dbus_method_invocation_get_connection (invocation), _reply_message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
+       g_object_unref (invocation);
+       g_object_unref (_reply_message);
 }
 
 
@@ -1344,6 +2555,8 @@ static void moonshot_server_dbus_interface_method_call (GDBusConnection* connect
                _dbus_moonshot_server_install_id_card (object, parameters, invocation);
        } else if (strcmp (method_name, "InstallFromFile") == 0) {
                _dbus_moonshot_server_install_from_file (object, parameters, invocation);
+       } else {
+               g_object_unref (invocation);
        }
 }
 
@@ -1373,7 +2586,7 @@ guint moonshot_server_register_object (gpointer object, GDBusConnection* connect
        data[0] = g_object_ref (object);
        data[1] = g_object_ref (connection);
        data[2] = g_strdup (path);
-       result = g_dbus_connection_register_object (connection, path, &_moonshot_server_dbus_interface_info, &_moonshot_server_dbus_interface_vtable, data, _moonshot_server_unregister_object, error);
+       result = g_dbus_connection_register_object (connection, path, (GDBusInterfaceInfo *) (&_moonshot_server_dbus_interface_info), &_moonshot_server_dbus_interface_vtable, data, _moonshot_server_unregister_object, error);
        if (!result) {
                return 0;
        }
@@ -1410,4 +2623,3 @@ static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify
 
 
 
-