summaryrefslogtreecommitdiff
authorzecke <zecke>2002-09-06 21:35:13 (UTC)
committer zecke <zecke>2002-09-06 21:35:13 (UTC)
commite95e14f056ce6be658a4fd0d4737168431e92d88 (patch) (side-by-side diff)
tree732f0a69b2063dc6c54444486223fd99879da72c
parent5536f65e60b3c662d2da3636e617faaad02522db (diff)
downloadopie-e95e14f056ce6be658a4fd0d4737168431e92d88.zip
opie-e95e14f056ce6be658a4fd0d4737168431e92d88.tar.gz
opie-e95e14f056ce6be658a4fd0d4737168431e92d88.tar.bz2
Remove the libuuid dependency for Linux targets...
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--core/launcher/launcher.pro2
-rw-r--r--core/launcher/opie-taskbar.control2
-rw-r--r--core/launcher/transferserver.cpp41
3 files changed, 40 insertions, 5 deletions
diff --git a/core/launcher/launcher.pro b/core/launcher/launcher.pro
index bae5c51..5b32bc3 100644
--- a/core/launcher/launcher.pro
+++ b/core/launcher/launcher.pro
@@ -101,3 +101,3 @@ DEPENDPATH += ../../rsync
TARGET = qpe
-LIBS += -lqpe -lcrypt -lopie -luuid
+LIBS += -lqpe -lcrypt -lopie
diff --git a/core/launcher/opie-taskbar.control b/core/launcher/opie-taskbar.control
index ce73d8b..e9338fb 100644
--- a/core/launcher/opie-taskbar.control
+++ b/core/launcher/opie-taskbar.control
@@ -6,3 +6,3 @@ Architecture: arm
Version: $QPE_VERSION-$SUB_VERSION.1
-Depends: qt-embedded (>=$QTE_VERSION), libuuid1
+Depends: qt-embedded (>=$QTE_VERSION)
Description: Launcher for Opie
diff --git a/core/launcher/transferserver.cpp b/core/launcher/transferserver.cpp
index 9d18b7b..a20df2f 100644
--- a/core/launcher/transferserver.cpp
+++ b/core/launcher/transferserver.cpp
@@ -27,2 +27,4 @@
+#ifndef _OS_LINUX_
+
extern "C" {
@@ -32,2 +34,4 @@ extern "C" {
+#endif // not defined linux
+
#if defined(_OS_LINUX_)
@@ -78,2 +82,33 @@ void TransferServer::newConnection( int socket )
+/*
+ * small class in anonymous namespace
+ * to generate a QUUid for us
+ */
+namespace {
+ struct UidGen {
+ QString uuid();
+ };
+#if defined(_OS_LINUX_)
+ /*
+ * linux got a /proc/sys/kernel/random/uuid file
+ * it'll generate the uuids for us
+ */
+ QString UidGen::uuid() {
+ QFile file( "/proc/sys/kernel/random/uuid" );
+ if (!file.open(IO_ReadOnly ) )
+ return QString::null;
+
+ QTextStream stream(&file);
+
+ return "{" + stream.read().stripWhiteSpace() + "}";
+ }
+#else
+ QString UidGen::uuid() {
+ uuid_t uuid;
+ uuid_generate( uuid );
+ return QUUid( uuid ).toString();
+ }
+#endif
+}
+
QString SyncAuthentication::serverId()
@@ -84,5 +119,5 @@ QString SyncAuthentication::serverId()
if ( r.isEmpty() ) {
- uuid_t uuid;
- uuid_generate( uuid );
- cfg.writeEntry("serverid",(r = QUuid( uuid ).toString()));
+ UidGen gen;
+ r = gen.uuid();
+ cfg.writeEntry("serverid", r );
}