Branch: master

b4c4c466 2014-10-18 06:47:41 François Andriot
Fix detection of some headers on openbsd
Many headers requires additional include stdlib.h

Signed-off-by: François Andriot <francois.andriot@...>"
M tdeioslave/ConfigureChecks.cmake
diff --git a/tdeioslave/ConfigureChecks.cmake b/tdeioslave/ConfigureChecks.cmake
index 8f07831..eed3708 100644
--- a/tdeioslave/ConfigureChecks.cmake
+++ b/tdeioslave/ConfigureChecks.cmake
@@ -11,6 +11,12 @@
 
 if( WITH_SASL )
   check_include_file( "sasl/sasl.h" HAVE_SASL_SASL_H )
+  if( NOT HAVE_SASL_SASL_H )
+    find_path( SASL_H_PATH "sasl/sasl.h" )
+    if( SASL_H_PATH )
+      set( HAVE_SASL_SASL_H "1" )
+    endif( )
+  endif( )
   check_library_exists( sasl2 sasl_client_init "" HAVE_LIBSASL2 )
   if( HAVE_SASL_SASL_H AND HAVE_LIBSASL2 )
     set( SASL_LIBRARIES sasl2 )
46a0c294 2014-10-18 07:27:42 François Andriot
Fix FTBFS on openbsd beacuse of invalid headers in tdeioslave_media

Signed-off-by: François Andriot <francois.andriot@...>"
M tdeioslave/media/medianotifier/medianotifier.cpp
diff --git a/tdeioslave/media/medianotifier/medianotifier.cpp b/tdeioslave/media/medianotifier/medianotifier.cpp
index 2db917b..4de36ca 100644
--- a/tdeioslave/media/medianotifier/medianotifier.cpp
+++ b/tdeioslave/media/medianotifier/medianotifier.cpp
@@ -19,7 +19,13 @@
 
 #include "medianotifier.h"
 
+#ifdef __OpenBSD__
+#include <sys/statvfs.h>
+#include <sys/param.h>
+#include <sys/mount.h>
+#else
 #include <sys/vfs.h>
+#endif
 
 #include <tqfile.h>
 #include <tqfileinfo.h>
0f2ad672 2014-10-18 07:28:25 François Andriot
Fix FTBFS on openbsd because of missing header in tdeioslave_media

Signed-off-by: François Andriot <francois.andriot@...>"
M tdeioslave/media/tdefile-plugin/tdefilemediaplugin.cpp
diff --git a/tdeioslave/media/tdefile-plugin/tdefilemediaplugin.cpp b/tdeioslave/media/tdefile-plugin/tdefilemediaplugin.cpp
index dc46e82..61c5ccb 100644
--- a/tdeioslave/media/tdefile-plugin/tdefilemediaplugin.cpp
+++ b/tdeioslave/media/tdefile-plugin/tdefilemediaplugin.cpp
@@ -33,6 +33,9 @@
 #ifdef HAVE_STATVFS
 # include <sys/statvfs.h>
 #else
+# ifdef __OpenBSD__
+#  include <sys/param.h>
+# endif
 # include <sys/mount.h>
 # define statvfs statfs
 # define f_frsize f_bsize
7d4e2581 2014-10-18 07:28:48 François Andriot
Fix FTBFS on openbsd because of missing header in tdesu

Signed-off-by: François Andriot <francois.andriot@...>"
M tdesu/tdesud/tdesud.cpp
diff --git a/tdesu/tdesud/tdesud.cpp b/tdesu/tdesud/tdesud.cpp
index 5e4f512..3d64bc8 100644
--- a/tdesu/tdesud/tdesud.cpp
+++ b/tdesu/tdesud/tdesud.cpp
@@ -45,7 +45,9 @@
 #include <pwd.h>
 #include <errno.h>
 
+#ifndef __OpenBSD__
 #include <sys/prctl.h>
+#endif
 #include <sys/time.h>
 #include <sys/stat.h>
 #include <sys/types.h>
@@ -249,7 +251,9 @@
 
 int main(int argc, char *argv[])
 {
+#ifndef __OpenBSD__
     prctl(PR_SET_DUMPABLE, 0);
+#endif
 
     TDEAboutData aboutData("tdesud", I18N_NOOP("TDE su daemon"),
             Version, I18N_NOOP("Daemon used by tdesu"),
18b81de3 2014-10-18 07:29:17 François Andriot
Fix tdm auth backend for openbsd

Signed-off-by: François Andriot <francois.andriot@...>"
M tdm/backend/auth.c
diff --git a/tdm/backend/auth.c b/tdm/backend/auth.c
index bd18314..b928817 100644
--- a/tdm/backend/auth.c
+++ b/tdm/backend/auth.c
@@ -41,6 +41,9 @@
 #include <sys/stat.h>
 #include <fcntl.h>
 #include <stdlib.h>
+#ifdef __OpenBSD__
+#include <pwd.h>
+#endif
 
 #include <sys/ioctl.h>
 
@@ -290,6 +293,26 @@
 			return FALSE;
 		}
 	}
+#ifdef __OpenBSD__
+    {
+       struct passwd *x11;
+       uid_t uid;
+       gid_t gid;
+       /* Give read capability to group _x11 */
+       x11 = getpwnam("_x11");
+       if (x11 == NULL) {
+           LogError("Can't find _x11 user\n");
+           uid = getuid();
+           gid = getgid();
+       } else {
+           uid = x11->pw_uid;
+           gid = x11->pw_gid;
+       }
+
+       fchown(fileno(auth_file), uid, gid);
+    }
+#endif
+
 	Debug( "file: %s  auth: %p\n", d->authFile, auths );
 	for (i = 0; i < count; i++) {
 		/*
a679541f 2014-10-18 07:29:18 François Andriot
Fix tdm backend fd support on openbsd

Signed-off-by: François Andriot <francois.andriot@...>"
M tdm/backend/getfd.c
diff --git a/tdm/backend/getfd.c b/tdm/backend/getfd.c
index 6bf8c87..307b250 100644
--- a/tdm/backend/getfd.c
+++ b/tdm/backend/getfd.c
@@ -22,8 +22,12 @@
 	char arg;
 
 	arg = 0;
+#ifdef __OpenBSD__
+	return arg;
+#else
 	return (ioctl(fd, KDGKBTYPE, &arg) == 0
 		&& ((arg == KB_101) || (arg == KB_84)));
+#endif
 }
 
 static int
71fb8e0e 2014-10-18 07:29:18 Slávek Banko
Fix crypt library detection in CMake

Signed-off-by: Slávek Banko <slavek.banko@...>
M ConfigureChecks.cmake
M kcheckpass/ConfigureChecks.cmake
M tdm/ConfigureChecks.cmake
diff --git a/ConfigureChecks.cmake b/ConfigureChecks.cmake
index 21ec420..6a3c001 100644
--- a/ConfigureChecks.cmake
+++ b/ConfigureChecks.cmake
@@ -54,6 +54,18 @@
 endif( )
 
 
+# crypt
+set( CRYPT_LIBRARY crypt )
+check_library_exists( ${CRYPT_LIBRARY} crypt "" HAVE_CRYPT )
+if( NOT HAVE_CRYPT )
+  unset( CRYPT_LIBRARY )
+  check_function_exists( crypt LIBC_HAVE_CRYPT )
+  if( LIBC_HAVE_CRYPT )
+    set( HAVE_CRYPT 1 CACHE INTERNAL "" FORCE )
+  endif( LIBC_HAVE_CRYPT )
+endif( NOT HAVE_CRYPT )
+
+
 # hal (ksmserver, tdeioslaves)
 if( WITH_HAL )
   pkg_search_module( HAL hal )
diff --git a/kcheckpass/ConfigureChecks.cmake b/kcheckpass/ConfigureChecks.cmake
index 120869d..d6d62f5 100644
--- a/kcheckpass/ConfigureChecks.cmake
+++ b/kcheckpass/ConfigureChecks.cmake
@@ -9,8 +9,6 @@
 #
 #################################################
 
-find_library( CRYPT_LIBRARY crypt )
-
 if( WITH_PAM AND (NOT DEFINED KCHECKPASS_PAM_SERVICE) )
   set( KCHECKPASS_PAM_SERVICE "kde" CACHE INTERNAL "" )
 endif( )
diff --git a/tdm/ConfigureChecks.cmake b/tdm/ConfigureChecks.cmake
index ae7ea8b..162a8a6 100644
--- a/tdm/ConfigureChecks.cmake
+++ b/tdm/ConfigureChecks.cmake
@@ -27,16 +27,6 @@
 check_function_exists( auth_timeok HAVE_AUTH_TIMEOK )
 tde_restore( CMAKE_REQUIRED_LIBRARIES )
 
-check_function_exists( crypt LIBC_HAVE_CRYPT )
-if( LIBC_HAVE_CRYPT )
-  set( HAVE_CRYPT 1 CACHE INTERNAL "" FORCE )
-else( )
-  check_library_exists( crypt crypt "" HAVE_CRYPT )
-  if( HAVE_CRYPT )
-    set( CRYPT_LIBRARY crypt )
-  endif( )
-endif( )
-
 check_include_file( lastlog.h HAVE_LASTLOG_H )
 check_include_file( termio.h HAVE_TERMIO_H )
 
1651fcb5 2014-10-18 07:29:19 François Andriot
Fix conditionnal utmpx support in tdm

Signed-off-by: François Andriot <francois.andriot@...>"
M tdm/ConfigureChecks.cmake
M tdm/kfrontend/kgreeter.cpp
diff --git a/tdm/ConfigureChecks.cmake b/tdm/ConfigureChecks.cmake
index 162a8a6..cb333aa 100644
--- a/tdm/ConfigureChecks.cmake
+++ b/tdm/ConfigureChecks.cmake
@@ -85,7 +85,7 @@
 if( NOT HAVE_UTMPX )
     check_function_exists( getutent have_getutent )
     if( NOT have_getutent )
-        set( BSD_UTMP 1 )
+        set( BSD_UTMP 1 CACHE INTERNAL "" FORCE )
     endif( )
 endif( )
 
diff --git a/tdm/kfrontend/kgreeter.cpp b/tdm/kfrontend/kgreeter.cpp
index 5ff8d55..cb38599 100644
--- a/tdm/kfrontend/kgreeter.cpp
+++ b/tdm/kfrontend/kgreeter.cpp
@@ -71,7 +71,9 @@
 #include <fcntl.h>
 #include <sys/types.h>
 #include <utmp.h>
+#ifdef HAVE_UTMPX
 #include <utmpx.h>
+#endif
 
 #include <stdio.h>
 #include <string.h>
d246c7d9 2014-10-18 07:29:19 Slávek Banko
Fix tdm_greet crash

Signed-off-by: Slávek Banko <slavek.banko@...>
M tdm/kfrontend/kgreeter.cpp
diff --git a/tdm/kfrontend/kgreeter.cpp b/tdm/kfrontend/kgreeter.cpp
index cb38599..e6073da 100644
--- a/tdm/kfrontend/kgreeter.cpp
+++ b/tdm/kfrontend/kgreeter.cpp
@@ -1296,13 +1296,14 @@
 			umask(0);
 			struct stat buffer;
 			int status;
-			char *fifo_parent_dir = strdup(FIFO_DIR);
-			dirname(fifo_parent_dir);
+			char *fifo_parent_dir;
+			char *fifo_dir = strdup(FIFO_DIR);
+			fifo_parent_dir = dirname(fifo_dir);
 			status = stat(fifo_parent_dir, &buffer);
 			if (status != 0) {
-				mkdir(fifo_parent_dir, 0644);
+				mkdir(fifo_parent_dir, 0755);
 			}
-			free(fifo_parent_dir);
+			free(fifo_dir);
 			status = stat(FIFO_DIR, &buffer);
 			if (status == 0) {
 				int file_mode = ((buffer.st_mode & S_IRWXU) >> 6) * 100;
@@ -1315,7 +1316,7 @@
 					return;
 				}
 			}
-			mkdir(FIFO_DIR,0600);
+			mkdir(FIFO_DIR,0700);
 			mknod(mPipeFilename.ascii(), S_IFIFO|0600, 0);
 			chmod(mPipeFilename.ascii(), 0600);
 		
6382ec3f 2014-10-18 07:29:20 François Andriot
Fix FTBFS on openbsd because invalid include in kickoff menu

Signed-off-by: François Andriot <francois.andriot@...>"
M kicker/kicker/ui/k_new_mnu.cpp
diff --git a/kicker/kicker/ui/k_new_mnu.cpp b/kicker/kicker/ui/k_new_mnu.cpp
index 3e705ba..70efdea 100644
--- a/kicker/kicker/ui/k_new_mnu.cpp
 ** Diff limit reached (max: 250 lines) **
a6d7fd77 2014-10-18 07:29:20 François Andriot
Fix FTBFS on openbsd because conflicting declaration in twin compton

Signed-off-by: François Andriot <francois.andriot@...>"
M twin/compton-tde/common.h
 ** Diff limit reached (max: 250 lines) **
e22eb72f 2014-10-18 07:29:20 François Andriot
Add perl function support in tdeioslave_man
[taken from OpenBSD KDE3 patches]
M tdeioslave/man/man2html.cpp
 ** Diff limit reached (max: 250 lines) **
69da674b 2014-10-18 07:29:21 Slávek Banko
Fix gcc visibility detection
This resolves Bug 1832

Signed-off-by: Slávek Banko <slavek.banko@...>
M ConfigureChecks.cmake
 ** Diff limit reached (max: 250 lines) **
10722069 2014-10-18 07:29:21 Slávek Banko
Allow contitional build with tdehwlib

Signed-off-by: Slávek Banko <slavek.banko@...>
M ConfigureChecks.cmake
M drkonqi/backtrace.cpp
M kcontrol/CMakeLists.txt
M kcontrol/displayconfig/displayconfig.cpp
M kcontrol/displayconfig/displayconfig.h
M kcontrol/randr/tderandrtray.cpp
M kcontrol/randr/tderandrtray.h
M kicker/kicker/ui/k_new_mnu.cpp
M ksmserver/server.cpp
M ksmserver/server.h
M ksmserver/shutdown.cpp
M ksmserver/shutdowndlg.cpp
M tdeioslave/media/mediamanager/CMakeLists.txt
M tdeioslave/media/medianotifier/notificationdialog.cpp
M tdeioslave/media/mounthelper/tdeio_media_mounthelper.cpp
M tdm/kfrontend/kgapp.cpp
M tdm/kfrontend/kgapp.h
 ** Diff limit reached (max: 250 lines) **
44654c9a 2014-10-18 07:29:22 François Andriot
Fix FTBFS on openbsd because 'abs' function in kcontrol/displayconfig

Signed-off-by: François Andriot <francois.andriot@...>"
M kcontrol/displayconfig/displayconfig.cpp
 ** Diff limit reached (max: 250 lines) **
d7ccc160 2014-10-18 07:29:22 Slávek Banko
Update r14-xdg-update: add update of tdenewstuff sections

Signed-off-by: Slávek Banko <slavek.banko@...>
M r14-xdg-update
 ** Diff limit reached (max: 250 lines) **