Index: uspace/lib/libc/generic/vfs.c
===================================================================
--- uspace/lib/libc/generic/vfs.c	(revision 4db6eaf06a371efbb5d1f20919cbf3e224a20036)
+++ uspace/lib/libc/generic/vfs.c	(revision 67f63c47e41903200a85cbc1871d6437a812e285)
@@ -1,4 +1,4 @@
 /*
- * Copyright (c) 2007 Jakub Jermar 
+ * Copyright (c) 2008 Jakub Jermar 
  * All rights reserved.
  *
@@ -185,4 +185,34 @@
 	return (ssize_t) IPC_GET_ARG1(answer);
 }
+
+off_t lseek(int fildes, off_t offset, int whence)
+{
+	int res;
+	ipcarg_t rc;
+
+	futex_down(&vfs_phone_futex);
+	async_serialize_start();
+	if (vfs_phone < 0) {
+		res = vfs_connect();
+		if (res < 0) {
+			async_serialize_end();
+			futex_up(&vfs_phone_futex);
+			return res;
+		}
+	}
+		
+	off_t newoffs;
+	rc = async_req_3_1(vfs_phone, VFS_SEEK, fildes, offset, whence,
+	    &newoffs);
+
+	async_serialize_end();
+	futex_up(&vfs_phone_futex);
+
+	if (rc != EOK)
+		return (off_t) -1;
+	
+	return newoffs;
+}
+
 /** @}
  */
