Removed notify_select_event() prototype from local fsproto.h file; it now builds
fine again.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9182 a95241bf-73f2-0310-859d-f6bbb57e9c96
Added some more conditional debug output, turned off debug output.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9154 a95241bf-73f2-0310-859d-f6bbb57e9c96
tty_write_to_tty() now takes the extra character into account that may be
inserted with OPOST and ONLCR and don't write more characters as there is
space.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9151 a95241bf-73f2-0310-859d-f6bbb57e9c96
from both, Drivers.h, and fs_interface.h.
The latter no longer includes vfs_types.h for iovecs, but <sys/uio.h> for iovec.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9140 a95241bf-73f2-0310-859d-f6bbb57e9c96
waiting on the write semaphore).
The write functions didn't change the buffer address on a partial write
which could lead to corruption in the pipe data.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9111 a95241bf-73f2-0310-859d-f6bbb57e9c96
Fixed a warning that popped up if TRACE_VM was defined.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9110 a95241bf-73f2-0310-859d-f6bbb57e9c96
not really standard behaviour...
tty_input_putc() now also releases the reader semaphore if that hasn't been
done before.
tty_input_putc_locked() now does character processing and sends some signals -
not yet complete, though, especially VERASE and VKILL do nothing right now.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9109 a95241bf-73f2-0310-859d-f6bbb57e9c96
This fixes the build as unistd.h defined sleep() as well.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9108 a95241bf-73f2-0310-859d-f6bbb57e9c96
It now prints a warning if the device driver doesn't handle iovecs correctly.
Again, this could lead to very strange behaviour.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9092 a95241bf-73f2-0310-859d-f6bbb57e9c96
Only slightly tested (moved data to and from pty <-> tty).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9087 a95241bf-73f2-0310-859d-f6bbb57e9c96
name of the node.
devfs_read_stat() now (presumably temporary) sets the size of the device
for partitions and reports a block device rather than a character device
if the size unequals zero.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9085 a95241bf-73f2-0310-859d-f6bbb57e9c96
It's now much cleaner than before. Removed the tcgetattr() macro; it's now
a real function call again.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9049 a95241bf-73f2-0310-859d-f6bbb57e9c96
After having had a look at our own Terminal code (former MuTerm), I even
copied the original mess in /dev/tt/ and /dev/pt/.
The /dev/tt/ entries could be created and removed on demand, though, but
that can't be done yet.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9041 a95241bf-73f2-0310-859d-f6bbb57e9c96
Added preliminary O_TEMPORARY flag.
Made it a bit more POSIX compliant.
Cleaned up header.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9026 a95241bf-73f2-0310-859d-f6bbb57e9c96
why that was there before. Thanks to Ingo for pointing this out.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8981 a95241bf-73f2-0310-859d-f6bbb57e9c96
extensions/ directory - which will contain glibc specific additions
to the POSIX standard (getopt() is here because of getopt_long() etc.).
Also added obstack functions.
Added wcsmbs to the build.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8969 a95241bf-73f2-0310-859d-f6bbb57e9c96
Now maintains uid/gid/mode, modification and creation time for all nodes.
Implemented rootfs_write_stat() completely. rootfs_read_stat() now fills
in all required values.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8962 a95241bf-73f2-0310-859d-f6bbb57e9c96
time in st_mtime.
rootfs_write_stat() now properly locks the node access.
Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8960 a95241bf-73f2-0310-859d-f6bbb57e9c96
permissions are not tested, though.
Removed the STREAM_TYPE_ constants.
Now maintains a modification and creation time for all nodes.
Implemented rootfs_write_stat() completely. rootfs_read_stat() now fills
in all required values.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8959 a95241bf-73f2-0310-859d-f6bbb57e9c96
Added note to dirfd() that it should be excluded from the kernel build
once the build system allows this.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8958 a95241bf-73f2-0310-859d-f6bbb57e9c96
This normally resides in the posix/ directory in the glibc source repository.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8944 a95241bf-73f2-0310-859d-f6bbb57e9c96
out a message to indicate that only a part of the requested buffer is
dumped on screen.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8941 a95241bf-73f2-0310-859d-f6bbb57e9c96
console driver now clears the screen when it's initialized.
This improves the first impression of the standard boot process when
booting in text mode (which currently happens when you press "escape"
in the early boot stage).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8939 a95241bf-73f2-0310-859d-f6bbb57e9c96
IDE drivers :-)) don't respect the total amount of bytes to be read in the
former readv() (now read_pages()) call. This can potentially fix all sorts
of strange errors in userland :)
Fixed the debug build.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8938 a95241bf-73f2-0310-859d-f6bbb57e9c96
recreates a race condition, having it here breaks the kernel as fs_mount()
calls this function and already holds the mutex.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8936 a95241bf-73f2-0310-859d-f6bbb57e9c96
Now panics if devfs_publish_device() fails.
Tracing can now be turned on and off (it's now completely silent in normal operation).
Some cleanups.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8932 a95241bf-73f2-0310-859d-f6bbb57e9c96
Separated macros from the typedefs, removed macros for unsigned minima as
these are not part of the standard.
Added intptr_t/uintptr_t types. Added some comments what those types stand for.
Added a note that this header is mostly compiler/arch specific and should
be handled (adapted) like this.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8919 a95241bf-73f2-0310-859d-f6bbb57e9c96
this is the one thing most likely to fail - it now also handles this case
gracefully instead of dying.
Small cleanup, cleared some other ToDos: some user functions now delete
the area when they could not copy the target address.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8911 a95241bf-73f2-0310-859d-f6bbb57e9c96
Also no longer let getc()/putc() point to libio functions directly (they
were even only macros there, too...).
Should now be backwards compatible, too. Thanks to Waldemar for pointing this out!
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8894 a95241bf-73f2-0310-859d-f6bbb57e9c96
the app would crash in this case (because BPath::Path() could return NULL
then).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8883 a95241bf-73f2-0310-859d-f6bbb57e9c96
(ie. it needs to add the terminating null byte).
It now also properly fails if the link is too long for the provided buffer.
This allows us to resolve links on BFS volumes using Haiku again :)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8882 a95241bf-73f2-0310-859d-f6bbb57e9c96
Implemented bfs_get_file_map().
Now uses the brand new file cache for the file data streams.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8877 a95241bf-73f2-0310-859d-f6bbb57e9c96
This has the advantage that the device can now be access in the right context.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8876 a95241bf-73f2-0310-859d-f6bbb57e9c96
Fixed the calculation of the amount of bytes read in bootfs_read_pages().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8874 a95241bf-73f2-0310-859d-f6bbb57e9c96
Added an vfs_get_cookie_from_fd() call to at least temporarily support the
cookie as in the original devfs (not sure yet how this changes).
Implemented vfs_get_file_map() which calls the corresponding FS function.
Moved vfs_get_vnode_cache() around.
vfs_get_vnode() temporarily does its job unlocked - its only to be used (safely)
from within the file cache, but this should definitely be done better.
Fixed a bug in get_vnode_name() - it did not support getting the name of
a root directory; it didn't pass the call through to the parent file system.
Fixed a bug in _user_entry_ref_to_path() which would add another "/" for
files immediately under the root (ie. "df" showed "//boot" as mount point
for the boot partition).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8873 a95241bf-73f2-0310-859d-f6bbb57e9c96
_KERNEL_MODE is already defined when using kernel build rules, no need
to do it here manually.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8872 a95241bf-73f2-0310-859d-f6bbb57e9c96