Index: uspace/lib/posix/stdio.c
===================================================================
--- uspace/lib/posix/stdio.c	(revision 4c8f5e7cf5a36a3df239abbc7d94dc09f00044b0)
+++ uspace/lib/posix/stdio.c	(revision ac08cd91caa9b90c2dfb0a88822c066a220286f3)
@@ -257,40 +257,16 @@
 	assert(stream != NULL);
 	
-	/* Retrieve the node. */
-	struct stat st;
-	int rc;
-	
 	if (filename == NULL) {
-		rc = fstat(stream->fd, &st);
-	} else {
-		rc = stat(filename, &st);
-		if (-rc == ENOENT) {
-			/* file does not exist, create new file */
-			FILE* tmp = fopen(filename, mode);
-			if (tmp != NULL) {
-				fclose(tmp);
-				/* try again */
-				rc = stat(filename, &st);
-			}
-		}
-	}
-	
-	if (rc != EOK) {
-		fclose(stream);
-		errno = -rc;
-		return NULL;
-	}
-	
-	fdi_node_t node = {
-		.fs_handle = st.fs_handle,
-		.service_id = st.service_id,
-		.index = st.index
-	};
+		/* POSIX allows this to be imlementation-defined. HelenOS currently
+		 * does not support changing the mode. */
+		// FIXME: handle mode change once it is supported
+		return stream;
+	}
 	
 	/* Open a new stream. */
-	FILE* new = fopen_node(&node, mode);
+	FILE* new = fopen(filename, mode);
 	if (new == NULL) {
 		fclose(stream);
-		/* fopen_node() sets errno. */
+		/* errno was set by fopen() */
 		return NULL;
 	}
