Added Symbian support.
authorPekka Riikonen <priikone@silcnet.org>
Sun, 13 May 2007 15:31:59 +0000 (15:31 +0000)
committerPekka Riikonen <priikone@silcnet.org>
Sun, 13 May 2007 15:31:59 +0000 (15:31 +0000)
lib/silccrypt/silcrng.c
lib/silcsftp/sftp_fs_memory.c
lib/silcutil/silctime.h

index 224e33a2f47c986be8a3bee9fb80e5a04d3b1235..668a64ea24e73bb9051f09e362676c85c2cf7672 100644 (file)
@@ -243,14 +243,17 @@ static void silc_rng_get_soft_noise(SilcRng rng)
   silc_rng_xor(rng, getpgid(getpid()) << 8, 2);
   silc_rng_xor(rng, getpgid(getpid()) << 8, 3);
 #endif
+#ifdef HAVE_GETGID
   silc_rng_xor(rng, getgid(), 4);
 #endif
+#endif
 #ifdef HAVE_GETPGRP
   silc_rng_xor(rng, getpgrp(), 5);
 #endif
 #ifdef HAVE_GETSID
   silc_rng_xor(rng, getsid(getpid()) << 16, 6);
 #endif
+#ifndef SILC_SYMBIAN
   silc_rng_xor(rng, times(&ptime), 7);
   silc_rng_xor(rng, ptime.tms_utime, 8);
   silc_rng_xor(rng, (ptime.tms_utime + ptime.tms_stime), pos++);
@@ -262,6 +265,7 @@ static void silc_rng_get_soft_noise(SilcRng rng)
   silc_rng_xor(rng, (ptime.tms_stime ^ ptime.tms_cutime), pos++);
   silc_rng_xor(rng, (ptime.tms_cutime + ptime.tms_stime), pos++);
   silc_rng_xor(rng, (ptime.tms_stime << 8), pos++);
+#endif /* SILC_SYMBIAN */
 #endif
   silc_rng_xor(rng, clock() << 4, pos++);
 #ifndef SILC_WIN32
@@ -274,8 +278,10 @@ static void silc_rng_get_soft_noise(SilcRng rng)
 #ifdef HAVE_SETSID
   silc_rng_xor(rng, getsid(getpid()) << 16, pos++);
 #endif
+#ifndef SILC_SYMBIAN
   silc_rng_xor(rng, times(&ptime), pos++);
   silc_rng_xor(rng, ptime.tms_utime, pos++);
+#endif /* SILC_SYMBIAN */
 #ifdef HAVE_GETPGRP
   silc_rng_xor(rng, getpgrp(), pos++);
 #endif
index 18cce4d056ad4a133df7056fa3241467a0e6eaa8..3c2ededf866ec32ecf87ebe00ab7b4ab0f4ef5a0 100644 (file)
@@ -948,11 +948,15 @@ void mem_lstat(void *context, SilcSFTP sftp,
   }
 
   /* Get real stat */
-#ifndef SILC_WIN32
+#ifdef SILC_WIN32
+  ret = stat(entry->data + 7, &stats);
+#endif /* SILC_WIN32 */
+#ifdef SILC_UNIX
   ret = lstat(entry->data + 7, &stats);
-#else
+#endif /* SILC_UNIX */
+#ifdef SILC_SYMBIAN
   ret = stat(entry->data + 7, &stats);
-#endif
+#endif /* SILC_SYMBIAN */
   if (ret == -1) {
     (*callback)(sftp, silc_sftp_map_errno(errno), NULL, callback_context);
     return;
index 03cdb5566cdf3ab050f87722afc4694fa041edd2..64eb37198ffb075754fabaf2fdaf938b71999f3b 100644 (file)
@@ -311,7 +311,7 @@ void silc_usleep(long microseconds)
   Sleep(microseconds / 1000);
 #endif /* SILC_WIN32 */
 #ifdef SILC_SYMBIAN
-  User::After(microseconds / 1000);
+  silc_symbian_usleep(microseconds);
 #endif /* SILC_SYMBIAN */
 }