Updated pam configuration file and fixed bug related to dbus arguments 93/25393/1 accepted/tizen/common/20140804.141734 accepted/tizen/ivi/20140813.180009 submit/tizen/20140804.134115
authorImran Zaman <imran.zaman@intel.com>
Mon, 4 Aug 2014 13:19:13 +0000 (16:19 +0300)
committerImran Zaman <imran.zaman@intel.com>
Mon, 4 Aug 2014 13:19:13 +0000 (16:19 +0300)
Change-Id: I402fbaed678c7b615fe579e850d506c40f24a056
Signed-off-by: Imran Zaman <imran.zaman@intel.com>
data/tlm-login
dists/rpm/tizen/packaging/tlm.changes
dists/rpm/tizen/packaging/tlm.spec
packaging/tlm.changes
packaging/tlm.spec
src/daemon/tlm-session-remote.c
src/sessiond/tlm-session.c

index c9219244a2da925833cae8d28e1f1775ac36291d..0bc80455ee3086c11debde8b772a51a18a54b15b 100644 (file)
@@ -11,3 +11,4 @@ session         required        pam_systemd.so
 session         required        pam_loginuid.so
 session         required        pam_namespace.so
 session         optional        pam_keyinit.so force revoke
+session         required        pam_smack.so
\ No newline at end of file
index fa8ec49d464db660948d7b77d6cde9f27ec6544b..447b535edddec2ea4acbc40ad0550ac25dfdd9e4 100644 (file)
@@ -1,3 +1,6 @@
+* Mon Aug 04 2014 Imran Zaman <imran.zaman@intel.com>
+- Updated pam configuration file and fixed bug related to dbus arguments
+
 * Mon Jul 21 2014 Imran Zaman <imran.zaman@intel.com>
 - Update to 0.0.3; create a new process (tlm-sessiond) for each session
 
index ed1b5fde7c2754f1319b999e998918bbd07d387c..dbebc1966da5000e64d29f31372004ece6023b22 100644 (file)
@@ -11,9 +11,10 @@ License: LGPL-2.1+
 Source: %{name}-%{version}.tar.gz
 URL: https://github.com/01org/tlm
 Source1001: %{name}.manifest
-Requires(post): /sbin/ldconfig
-Requires(postun): /sbin/ldconfig
+Requires(post): /sbin/ldconfig, systemd
+Requires(postun): /sbin/ldconfig, systemd
 Requires: gumd
+Requires: libsystemd
 BuildRequires: pkgconfig(glib-2.0) >= 2.30
 BuildRequires: pkgconfig(gobject-2.0)
 BuildRequires: pkgconfig(gio-2.0)
@@ -64,17 +65,21 @@ make %{?_smp_mflags}
 %install
 rm -rf %{buildroot}
 %make_install
-install -m 755 -d %{buildroot}%{_libdir}/systemd/system
-install -m 644 data/tlm.service %{buildroot}%{_libdir}/systemd/system/
+install -m 755 -d %{buildroot}%{_unitdir}
+install -m 644 data/tlm.service %{buildroot}%{_unitdir}
 install -m 755 -d %{buildroot}%{_sysconfdir}/pam.d
 install -m 644 data/tlm-login %{buildroot}%{_sysconfdir}/pam.d/
 
 
 %post
 /sbin/ldconfig
+/usr/bin/systemctl enable tlm
+/usr/bin/systemctl daemon-reload
 
 
 %postun -p /sbin/ldconfig
+/usr/bin/systemctl disable tlm
+/usr/bin/systemctl daemon-reload
 
 
 %files
@@ -86,7 +91,7 @@ install -m 644 data/tlm-login %{buildroot}%{_sysconfdir}/pam.d/
 %{_bindir}/%{name}-client
 %{_libdir}/lib%{name}*.so.*
 %{_libdir}/%{name}/plugins/*.so*
-%{_libdir}/systemd/system/tlm.service
+%{_unitdir}/tlm.service
 %config(noreplace) %{_sysconfdir}/tlm.conf
 %config %{_sysconfdir}/pam.d/tlm-login
 
index fa8ec49d464db660948d7b77d6cde9f27ec6544b..447b535edddec2ea4acbc40ad0550ac25dfdd9e4 100644 (file)
@@ -1,3 +1,6 @@
+* Mon Aug 04 2014 Imran Zaman <imran.zaman@intel.com>
+- Updated pam configuration file and fixed bug related to dbus arguments
+
 * Mon Jul 21 2014 Imran Zaman <imran.zaman@intel.com>
 - Update to 0.0.3; create a new process (tlm-sessiond) for each session
 
index ed1b5fde7c2754f1319b999e998918bbd07d387c..dbebc1966da5000e64d29f31372004ece6023b22 100644 (file)
@@ -11,9 +11,10 @@ License: LGPL-2.1+
 Source: %{name}-%{version}.tar.gz
 URL: https://github.com/01org/tlm
 Source1001: %{name}.manifest
-Requires(post): /sbin/ldconfig
-Requires(postun): /sbin/ldconfig
+Requires(post): /sbin/ldconfig, systemd
+Requires(postun): /sbin/ldconfig, systemd
 Requires: gumd
+Requires: libsystemd
 BuildRequires: pkgconfig(glib-2.0) >= 2.30
 BuildRequires: pkgconfig(gobject-2.0)
 BuildRequires: pkgconfig(gio-2.0)
@@ -64,17 +65,21 @@ make %{?_smp_mflags}
 %install
 rm -rf %{buildroot}
 %make_install
-install -m 755 -d %{buildroot}%{_libdir}/systemd/system
-install -m 644 data/tlm.service %{buildroot}%{_libdir}/systemd/system/
+install -m 755 -d %{buildroot}%{_unitdir}
+install -m 644 data/tlm.service %{buildroot}%{_unitdir}
 install -m 755 -d %{buildroot}%{_sysconfdir}/pam.d
 install -m 644 data/tlm-login %{buildroot}%{_sysconfdir}/pam.d/
 
 
 %post
 /sbin/ldconfig
+/usr/bin/systemctl enable tlm
+/usr/bin/systemctl daemon-reload
 
 
 %postun -p /sbin/ldconfig
+/usr/bin/systemctl disable tlm
+/usr/bin/systemctl daemon-reload
 
 
 %files
@@ -86,7 +91,7 @@ install -m 644 data/tlm-login %{buildroot}%{_sysconfdir}/pam.d/
 %{_bindir}/%{name}-client
 %{_libdir}/lib%{name}*.so.*
 %{_libdir}/%{name}/plugins/*.so*
-%{_libdir}/systemd/system/tlm.service
+%{_unitdir}/tlm.service
 %config(noreplace) %{_sysconfdir}/tlm.conf
 %config %{_sysconfdir}/pam.d/tlm-login
 
index 63198fecca139a85d08d4e2e31ea43c37de6edd9..1f1ea31a452f24c554acdb6a9d9ed3a2fd82c28c 100644 (file)
@@ -387,12 +387,15 @@ tlm_session_remote_create (
     GHashTable *environment)
 {
     GVariant *data = NULL;
-
+    gchar *pass = g_strdup (password);
     if (environment) data = tlm_dbus_utils_hash_table_to_variant (environment);
     if (!data) data = g_variant_new ("a{ss}", NULL);
+
+    if (!pass) pass = g_strdup ("");
     tlm_dbus_session_call_session_create (
-            session->priv->dbus_session_proxy, password, data, NULL,
+            session->priv->dbus_session_proxy, pass, data, NULL,
             _session_created_async_cb, session);
+    g_free (pass);
 }
 
 /* signals */
index 9c2339d62155a9eacb1bb15df8cc54063dde1d06..dfa0a0b77d8de47bcc6239bd13e72a7496ffe520 100644 (file)
@@ -622,11 +622,21 @@ tlm_session_start (TlmSession *session,
        g_return_val_if_fail (session && TLM_IS_SESSION(session), FALSE);
     TlmSessionPrivate *priv = TLM_SESSION_PRIV(session);
 
+    if (!seat_id || !service || !username) {
+        error = TLM_GET_ERROR_FOR_ID (TLM_ERROR_SESSION_CREATION_FAILURE,
+                "Unable to create PAM sesssion as input data is invalid "
+                "seatid(%p) service(%p) username(%p)", seat_id, service,
+                username);
+        g_signal_emit (session, signals[SIG_SESSION_ERROR], 0, error);
+        g_error_free (error);
+        return FALSE;
+    }
+
     g_object_set (G_OBJECT (session), "seat", seat_id, "service", service,
             "username", username, "environment", environment, NULL);
 
-    priv->auth_session = tlm_auth_session_new (priv->service,
-            priv->username, password);
+    priv->auth_session = tlm_auth_session_new (priv->service, priv->username,
+            password);
 
     if (!priv->auth_session) {
        error = TLM_GET_ERROR_FOR_ID (TLM_ERROR_SESSION_CREATION_FAILURE,