1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 04:08:11 +00:00
serenity/Kernel/FileSystem
Sergey Bugaev 43ce6c5474 Kernel: Move socket role tracking to the Socket class itself
This is more logical and allows us to solve the problem of
non-blocking TCP sockets getting stuck in SocketRole::None.

The only complication is that a single LocalSocket may be shared
between two file descriptions (on the connect and accept sides),
and should have two different roles depending from which side
you look at it. To deal with it, Socket::role() is made a
virtual method that accepts a file description, and LocalSocket
internally tracks which FileDescription is the which one and
returns a correct role.
2019-08-11 16:30:43 +02:00
..
Custody.cpp Kernel: Use range-for with InlineLinkedList 2019-08-08 13:40:58 +02:00
Custody.h Kernel: Turns global Custody and Inode tables into InlineLinkedLists 2019-08-08 11:11:22 +02:00
DevPtsFS.cpp DevPtsFS: Use String::number() in a place where it makes sense. 2019-07-22 10:42:34 +02:00
DevPtsFS.h Kernel: Remove use of [[gnu::pure]]. 2019-07-16 13:44:41 +02:00
DiskBackedFileSystem.cpp FileSystem: Move block_size() from DiskBackedFS to FS 2019-08-11 10:09:36 +02:00
DiskBackedFileSystem.h FileSystem: Move block_size() from DiskBackedFS to FS 2019-08-11 10:09:36 +02:00
ext2_fs.h Add clang-format file 2019-05-28 17:31:20 +02:00
ext2_types.h Add clang-format file 2019-05-28 17:31:20 +02:00
Ext2FileSystem.cpp Ext2FS: Make some use of Vector::empend(). 2019-08-01 16:31:05 +02:00
Ext2FileSystem.h Kernel: Remove use of copy_ref() in favor of regular RefPtr copies. 2019-07-11 15:40:04 +02:00
FIFO.cpp FileDescription: Disallow construction with a null File 2019-08-11 09:33:31 +02:00
FIFO.h Kernel: Move File.{cpp,h} into FileSystem/ 2019-07-09 15:04:45 +02:00
File.cpp FileDescription: Disallow construction with a null File 2019-08-11 09:33:31 +02:00
File.h Kernel: Move VirtualAddress.h into VM/ 2019-07-09 15:04:45 +02:00
FileDescription.cpp Kernel: Move socket role tracking to the Socket class itself 2019-08-11 16:30:43 +02:00
FileDescription.h Kernel: Move socket role tracking to the Socket class itself 2019-08-11 16:30:43 +02:00
FileSystem.cpp FileSystem: Move block_size() from DiskBackedFS to FS 2019-08-11 10:09:36 +02:00
FileSystem.h FileSystem: Move block_size() from DiskBackedFS to FS 2019-08-11 10:09:36 +02:00
Inode.cpp Kernel: Use range-for with InlineLinkedList 2019-08-08 13:40:58 +02:00
Inode.h Kernel: Turns global Custody and Inode tables into InlineLinkedLists 2019-08-08 11:11:22 +02:00
InodeFile.cpp AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
InodeFile.h Kernel: Move File.{cpp,h} into FileSystem/ 2019-07-09 15:04:45 +02:00
InodeIdentifier.h StringView: Rename characters() to characters_without_null_termination(). 2019-07-08 15:38:44 +02:00
InodeMetadata.h AK: Rename the common integer typedefs to make it obvious what they are. 2019-07-03 21:20:13 +02:00
InodeWatcher.cpp Kernel: Add a mechanism for listening for changes to an inode. 2019-07-22 20:01:11 +02:00
InodeWatcher.h Kernel: Add a mechanism for listening for changes to an inode. 2019-07-22 20:01:11 +02:00
ProcFS.cpp ProcFS: Add "readonly" and "block_size" fields to /proc/df 2019-08-11 10:10:17 +02:00
ProcFS.h Kernel: Use KBuffers for ProcFS and SynthFS 2019-08-05 11:37:48 +02:00
SharedMemory.cpp Kernel: Split VMObject into two classes: Anonymous- and InodeVMObject 2019-08-07 18:09:32 +02:00
SharedMemory.h Kernel: Split VMObject into two classes: Anonymous- and InodeVMObject 2019-08-07 18:09:32 +02:00
SyntheticFileSystem.cpp SynthFS: Remove unused create_text_file() feature 2019-08-05 22:37:50 +02:00
SyntheticFileSystem.h SynthFS: Remove unused create_text_file() feature 2019-08-05 22:37:50 +02:00
VirtualFileSystem.cpp Kernel: Generalize VFS metadata lookup and use it in mount() and stat() 2019-08-02 19:28:18 +02:00
VirtualFileSystem.h Kernel: Remove an unused VFS function declaration 2019-08-11 09:27:04 +02:00