Merge remote-tracking branch 'origin/master' into debian
authorSam Hartman <hartmans@debian.org>
Wed, 25 Mar 2015 04:58:31 +0000 (00:58 -0400)
committerSam Hartman <hartmans@debian.org>
Wed, 25 Mar 2015 04:58:31 +0000 (00:58 -0400)
Makefile.am
configure.ac
flatstore-users
moonshot-ui.spec.in
src/moonshot-identities-manager.vala
src/moonshot-keyring-store.vala
src/moonshot-local-flat-file-store.vala

index 290639d..0994d1f 100644 (file)
@@ -183,6 +183,9 @@ AM_VALAFLAGS += \
        --define=IPC_DBUS
 endif
 endif
+if GIO_VAPI_USES_ARRAYS
+AM_VALAFLAGS += --define=GIO_VAPI_USES_ARRAYS
+endif
 
 EXTRA_DIST = webprovisioning/moonshot.xml $(dbusservice_in_files) \
        webprovisioning/complex-test.msht webprovisioning/sample.msht \
index 4ad7425..16ce2b5 100644 (file)
@@ -103,9 +103,14 @@ AM_CONDITIONAL([IPC_DBUS], [test "$SERVER_IPC_MODULE" != "msrpc-glib2-1.0"])
 AM_CONDITIONAL([IPC_DBUS_GLIB], [test "$SERVER_IPC_MODULE" = "dbus-glib-1"])
 AM_CONDITIONAL([IPC_GDBUS], [test "$SERVER_IPC_MODULE" = "gio-2.0"])
 
+vala_version=`$VALAC --version | sed 's/Vala  *//'`
+AS_VERSION_COMPARE(["$vala_version"], [0.11.1],
+  [gio_vapi_uses_arrays="no"],
+  [gio_vapi_uses_arrays="yes"],
+  [gio_vapi_uses_arrays="yes"])
+AM_CONDITIONAL([GIO_VAPI_USES_ARRAYS], [test "$gio_vapi_uses_arrays" = "yes"])
 if test "$SERVER_IPC_MODULE" = "dbus-glib-1"; then
   AC_MSG_CHECKING([$VALAC is no greater than 0.12.1])
-  vala_version=`$VALAC --version | sed 's/Vala  *//'`
   AS_VERSION_COMPARE([0.12.2], ["$vala_version"],
     [vala_supports_dbus_glib="no"],
     [vala_supports_dbus_glib="no"],
index 4e081fe..b97f6f8 100644 (file)
@@ -1,2 +1,5 @@
 root
 gdm
+freerad
+radius
+trustrouter
index 7d0a243..c2104d9 100644 (file)
@@ -1,6 +1,6 @@
 Name:           @PACKAGE@
 Version:        @VERSION@
-Release:        1%{?dist}
+Release:        2%{?dist}
 Summary:        Moonshot Federated Identity User Interface
 
 Group:          Security Tools
index a0506d8..292fb0e 100644 (file)
@@ -118,7 +118,7 @@ public class IdentityManagerModel : Object {
     {
         if (&candidate != null)
           candidate = null;
-        foreach (IdCard id_card in this.get_card_list())
+        foreach (IdCard id_card in this.store.get_card_list())
         {
           if (id_card.display_name == name)
           {
@@ -145,7 +145,7 @@ public class IdentityManagerModel : Object {
         bool duplicate_found = false;
         bool found = false;
         do {
-           var cards = get_card_list();
+           var cards = this.store.get_card_list();
            found = false;
            foreach (IdCard id_card in cards) {
                if ((card != id_card) && (id_card.nai == card.nai)) {
index 0c3f1b2..ab1ff1e 100644 (file)
@@ -111,7 +111,7 @@ public class KeyringStore : Object, IIdentityCardStore {
                 } else if (attribute.name == "Rules-AlwaysConfirm") {
                     rules_always_confirm_index = i;
                 } else if (attribute.name == "CA-Cert") {
-                    id_card.trust_anchor.ca_cert = value;
+                    id_card.trust_anchor.ca_cert = value.strip();
                 } else if (attribute.name == "Server-Cert") {
                     id_card.trust_anchor.server_cert = value;
                 } else if (attribute.name == "Subject") {
@@ -153,16 +153,19 @@ public class KeyringStore : Object, IIdentityCardStore {
     public void store_id_cards () {
         clear_keyring();
         foreach (IdCard id_card in this.id_card_list) {
-            string[] rules_patterns = new string[id_card.rules.length];
-            string[] rules_always_conf = new string[id_card.rules.length];
+            /* workaround for Centos vala array property bug: use temp array */
+            var rules = id_card.rules;
+            var services_array = id_card.services;
+            string[] rules_patterns = new string[rules.length];
+            string[] rules_always_conf = new string[rules.length];
             
-            for (int i=0; i<id_card.rules.length; i++) {
-                rules_patterns[i] = id_card.rules[i].pattern;
-                rules_always_conf[i] = id_card.rules[i].always_confirm;
+            for (int i=0; i<rules.length; i++) {
+                rules_patterns[i] = rules[i].pattern;
+                rules_always_conf[i] = rules[i].always_confirm;
             }
             string patterns = string.joinv(";", rules_patterns);
             string always_conf = string.joinv(";", rules_always_conf);
-            string services = string.joinv(";", id_card.services);
+            string services = string.joinv(";", services_array);
             GnomeKeyring.AttributeList attributes = new GnomeKeyring.AttributeList();
             uint32 item_id;
             attributes.append_string(keyring_store_attribute, keyring_store_version);
index 48efabe..8e4db0a 100644 (file)
@@ -111,7 +111,7 @@ public class LocalFlatFileStore : Object, IIdentityCardStore {
                 }
                 
                 // Trust anchor 
-                id_card.trust_anchor.ca_cert = key_file.get_string (identity, "CA-Cert");
+                id_card.trust_anchor.ca_cert = key_file.get_string (identity, "CA-Cert").strip();
                 id_card.trust_anchor.subject = key_file.get_string (identity, "Subject");
                 id_card.trust_anchor.subject_alt = key_file.get_string (identity, "SubjectAlt");
                 id_card.trust_anchor.server_cert = key_file.get_string (identity, "ServerCert");
@@ -179,11 +179,11 @@ public class LocalFlatFileStore : Object, IIdentityCardStore {
             var filename = Path.build_filename (path, FILE_NAME);
             var file  = File.new_for_path(filename);
             var stream = file.replace(null, false, FileCreateFlags.PRIVATE);
-#if IPC_DBUS_GLIB
+#if GIO_VAPI_USES_ARRAYS
+            stream.write(text.data);
+#else
             var bits = text.data;
             stream.write(&bits[0], bits.length);
-#else
-            stream.write(text.data);
 #endif
         }
         catch (Error e) {