ladybird/Kernel
Andreas Kling 367bb9e4eb Kernel: Remove ioctl for getting a socket peer's PID.
Now that everything is nice and mature, the WindowServer can just use the
client PID it receives in the Greeting message, and we can get rid of this
hacky ioctl. :^)
2019-03-20 17:14:48 +01:00
..
Boot Bootloader: Bump sector count once again. 2019-02-12 12:09:50 +01:00
_start.cpp Import the "gerbert" kernel I worked on earlier this year. 2018-10-16 11:02:00 +02:00
.bochsrc Kernel: Start adding support for E1000 network adapters. 2019-03-10 15:25:33 +01:00
.gitignore Kernel: Bring up enough networking code that we can respond to ARP requests. 2019-03-11 23:21:38 +01:00
ARP.h Kernel: Collect IPv4 stuff in IPv4.h and ARP stuff in ARP.h. 2019-03-12 12:49:01 +01:00
Assertions.h Add a simple IDEDiskDevice class that implements DiskDevice from VFS. 2018-10-16 14:17:43 +02:00
BlockDevice.cpp Kernel: Add empty BlockDevice class. 2019-02-16 00:52:58 +01:00
BlockDevice.h Kernel: Make BochsVGADevice a BlockDevice and support mmapping it. 2019-02-16 09:57:42 +01:00
BXVGADevice.cpp Kernel: Minor tidying in BXVGADevice. 2019-03-08 02:54:39 +01:00
BXVGADevice.h Kernel: Make syscalls that take a buffer size use ssize_t instead of size_t. 2019-02-25 21:21:12 +01:00
CharacterDevice.cpp Kernel: Add empty BlockDevice class. 2019-02-16 00:52:58 +01:00
CharacterDevice.h Kernel: Make BochsVGADevice a BlockDevice and support mmapping it. 2019-02-16 09:57:42 +01:00
CMOS.cpp Make bash-2.05b build with minimal changes. 2018-11-17 00:14:07 +01:00
CMOS.h Make bash-2.05b build with minimal changes. 2018-11-17 00:14:07 +01:00
Console.cpp Kernel: Make syscalls that take a buffer size use ssize_t instead of size_t. 2019-02-25 21:21:12 +01:00
Console.h Kernel: Make syscalls that take a buffer size use ssize_t instead of size_t. 2019-02-25 21:21:12 +01:00
Device.cpp Kernel: Port more code to KResult and KResultOr<T>. 2019-03-06 22:14:31 +01:00
Device.h Kernel: Port more code to KResult and KResultOr<T>. 2019-03-06 22:14:31 +01:00
DevPtsFS.cpp AK: Add Retained<T>, like RetainPtr, but never null. 2019-02-25 12:43:52 +01:00
DevPtsFS.h AK: Add Retained<T>, like RetainPtr, but never null. 2019-02-25 12:43:52 +01:00
DiskBackedFileSystem.cpp AK: Add Retained<T>, like RetainPtr, but never null. 2019-02-25 12:43:52 +01:00
DiskBackedFileSystem.h More moving towards using signed types. 2019-02-25 22:06:55 +01:00
DiskDevice.cpp Big, possibly complete sweep of naming changes. 2019-01-31 17:31:23 +01:00
DiskDevice.h Move VFS sources into Kernel/. 2019-01-23 05:14:00 +01:00
DoubleBuffer.cpp Kernel: DoubleBuffer can return early if read/write is called with !size. 2019-03-20 02:12:40 +01:00
DoubleBuffer.h Move Lock from AK to Kernel, since it only works inside the kernel. 2019-03-16 13:18:22 +01:00
E1000NetworkAdapter.cpp Kernel: Bring up enough networking code that we can respond to ARP requests. 2019-03-11 23:21:38 +01:00
E1000NetworkAdapter.h Kernel: Bring up enough networking code that we can respond to ARP requests. 2019-03-11 23:21:38 +01:00
elf.h Make it possible to build the Kernel on a macOS host. 2018-12-02 23:34:50 +01:00
ELFImage.cpp Big, possibly complete sweep of naming changes. 2019-01-31 17:31:23 +01:00
ELFImage.h Kernel: Simplify ELF loading a bit. 2019-02-26 15:52:06 +01:00
ELFLoader.cpp Kernel: Simplify ELF loading a bit. 2019-02-26 15:52:06 +01:00
ELFLoader.h Use the entry point address from the ELF header instead of looking up _start. 2018-12-29 03:28:55 +01:00
EthernetFrameHeader.h Kernel: More work on the ICMP and IPv4 support. 2019-03-12 12:43:30 +01:00
EtherType.h Kernel: Bring up enough networking code that we can respond to ARP requests. 2019-03-11 23:21:38 +01:00
ext2_fs.h Move VFS sources into Kernel/. 2019-01-23 05:14:00 +01:00
ext2_types.h Move VFS sources into Kernel/. 2019-01-23 05:14:00 +01:00
Ext2FileSystem.cpp Kernel+Userland: Add symlink() syscall and add "-s" flag to /bin/ln. 2019-03-02 01:52:24 +01:00
Ext2FileSystem.h AK: Remove Buffer<T> since it was only ever instantiated with T=byte. 2019-03-16 13:12:13 +01:00
FIFO.cpp Kernel: Make syscalls that take a buffer size use ssize_t instead of size_t. 2019-02-25 21:21:12 +01:00
FIFO.h Kernel: Make syscalls that take a buffer size use ssize_t instead of size_t. 2019-02-25 21:21:12 +01:00
FileBackedDiskDevice.cpp Big, possibly complete sweep of naming changes. 2019-01-31 17:31:23 +01:00
FileBackedDiskDevice.h Move VFS sources into Kernel/. 2019-01-23 05:14:00 +01:00
FileDescriptor.cpp Kernel: Fix race between accept() and connect(). 2019-03-20 02:33:51 +01:00
FileDescriptor.h Kernel: connect() should fail with EISCONN for already-connected sockets. 2019-03-20 02:38:36 +01:00
FileSystem.cpp Kernel: Oops, fix Vector assertion in FS::Sync. 2019-02-28 22:33:00 +01:00
FileSystem.h Move Lock from AK to Kernel, since it only works inside the kernel. 2019-03-16 13:18:22 +01:00
FullDevice.cpp Kernel: Make syscalls that take a buffer size use ssize_t instead of size_t. 2019-02-25 21:21:12 +01:00
FullDevice.h Kernel: Make syscalls that take a buffer size use ssize_t instead of size_t. 2019-02-25 21:21:12 +01:00
i386.cpp Kernel: Remove the one client of Vector-with-custom-allocator. 2019-03-16 13:19:58 +01:00
i386.h Use modern C++ attributes instead of __attribute__ voodoo. 2019-02-15 12:30:48 +01:00
i8253.cpp Clean up some uninteresting log spam. 2019-02-06 11:32:23 +01:00
i8253.h Implement event loop timers. 2019-02-01 03:50:06 +01:00
ICMP.h Kernel: Collect IPv4 stuff in IPv4.h and ARP stuff in ARP.h. 2019-03-12 12:49:01 +01:00
IDEDiskDevice.cpp Move Lock from AK to Kernel, since it only works inside the kernel. 2019-03-16 13:18:22 +01:00
IDEDiskDevice.h Move Lock from AK to Kernel, since it only works inside the kernel. 2019-03-16 13:18:22 +01:00
init.cpp Rename DNSLookupServer => LookupServer. 2019-03-20 04:26:30 +01:00
InodeIdentifier.h Big, possibly complete sweep of naming changes. 2019-01-31 17:31:23 +01:00
InodeMetadata.h Kernel: Allow uid 0 to read/write/execute any file. 2019-02-27 17:08:13 +01:00
IO.h Kernel: Much improved BochsVGA (BXVGA) support. 2019-02-06 10:17:26 +01:00
IPv4.h LibGUI: Add GTCPSocket and base class GSocket (inherits from GIODevice.) 2019-03-18 14:09:58 +01:00
IPv4Socket.cpp IPv4: Add simple pseudorandom ephemeral port allocators for TCP and UDP. 2019-03-18 04:03:44 +01:00
IPv4Socket.h IPv4: Add simple pseudorandom ephemeral port allocators for TCP and UDP. 2019-03-18 04:03:44 +01:00
IRQHandler.cpp More coding style changes. 2018-12-03 00:39:25 +01:00
IRQHandler.h More coding style changes. 2018-12-03 00:39:25 +01:00
kassert.h Use modern C++ attributes instead of __attribute__ voodoo. 2019-02-15 12:30:48 +01:00
KeyboardDevice.cpp Kernel: Detect the Delete key. 2019-03-07 16:20:00 +01:00
KeyboardDevice.h Kernel: Make syscalls that take a buffer size use ssize_t instead of size_t. 2019-02-25 21:21:12 +01:00
KeyCode.h Detect the "Logo" (Windows/Apple/whatever) key and use it for window resize. 2019-03-03 12:56:48 +01:00
kmalloc.cpp LibC: Enough compat work to make binutils-2.32 build and run. 2019-02-23 17:24:50 +01:00
kmalloc.h Use modern C++ attributes instead of __attribute__ voodoo. 2019-02-15 12:30:48 +01:00
kprintf.cpp Big, possibly complete sweep of naming changes. 2019-01-31 17:31:23 +01:00
kprintf.h Use modern C++ attributes instead of __attribute__ voodoo. 2019-02-15 12:30:48 +01:00
KResult.h Kernel: Port more code to KResult and KResultOr<T>. 2019-03-06 22:14:31 +01:00
kstdio.h Fix Userland build. 2019-01-13 04:31:16 +01:00
KSyms.cpp Kernel: Port more code to KResult and KResultOr<T>. 2019-03-06 22:14:31 +01:00
KSyms.h Kernel: Make dump_backtrace() kinda sorta work. 2019-02-24 14:51:48 +01:00
ktime.h Fix some minor build warnings. 2018-10-17 16:48:43 +02:00
Limits.h Kernel: Make syscalls that take a buffer size use ssize_t instead of size_t. 2019-02-25 21:21:12 +01:00
linker.ld Import the "gerbert" kernel I worked on earlier this year. 2018-10-16 11:02:00 +02:00
LocalSocket.cpp Kernel: Fix race between accept() and connect(). 2019-03-20 02:33:51 +01:00
LocalSocket.h Kernel: Accepting sockets don't need to retain the client sockets. 2019-03-20 02:48:02 +01:00
Lock.h Move Lock from AK to Kernel, since it only works inside the kernel. 2019-03-16 13:18:22 +01:00
MACAddress.h Kernel: Cache MAC<->IP mappings (from ARP responses) seen on the wire. 2019-03-12 00:56:33 +01:00
makeall.sh Move WindowServer into Servers. 2019-03-20 04:34:14 +01:00
Makefile IPv4: Factor out UDP parts of IPv4Socket into a UDPSocket class. 2019-03-14 12:43:18 +01:00
MasterPTY.cpp Kernel: Make syscalls that take a buffer size use ssize_t instead of size_t. 2019-02-25 21:21:12 +01:00
MasterPTY.h Kernel: Make syscalls that take a buffer size use ssize_t instead of size_t. 2019-02-25 21:21:12 +01:00
MemoryManager.cpp Kernel: More work on bringing up E1000 support. 2019-03-11 11:11:29 +01:00
MemoryManager.h Kernel: More work on Ethernet support. 2019-03-10 23:40:09 +01:00
mkmap.sh Omit duplicate lines from the ksyms map. 2018-12-03 02:23:49 +01:00
MousePacket.h Kernel+WindowServer: Move mouse input signal parsing to kernel driver. 2019-03-05 14:01:03 +01:00
NetworkAdapter.cpp Kernel: Snooze the NetworkTask until there are incoming packets to process. 2019-03-20 17:09:46 +01:00
NetworkAdapter.h Kernel: Snooze the NetworkTask until there are incoming packets to process. 2019-03-20 17:09:46 +01:00
NetworkOrdered.h IPv4: More hacking on bringing up TCP support. 2019-03-13 23:14:30 +01:00
NetworkTask.cpp Kernel: Snooze the NetworkTask until there are incoming packets to process. 2019-03-20 17:09:46 +01:00
NetworkTask.h Kernel: Add a NetworkTask and a received network packet queue. 2019-03-11 12:43:45 +01:00
NullDevice.cpp Kernel: Make syscalls that take a buffer size use ssize_t instead of size_t. 2019-02-25 21:21:12 +01:00
NullDevice.h Kernel: Make syscalls that take a buffer size use ssize_t instead of size_t. 2019-02-25 21:21:12 +01:00
PCI.cpp Kernel: More work on bringing up E1000 support. 2019-03-11 11:11:29 +01:00
PCI.h Kernel: More work on bringing up E1000 support. 2019-03-11 11:11:29 +01:00
PIC.cpp Big, possibly complete sweep of naming changes. 2019-01-31 17:31:23 +01:00
PIC.h Big, possibly complete sweep of naming changes. 2019-01-31 17:31:23 +01:00
Process.cpp Kernel: Remove ioctl for getting a socket peer's PID. 2019-03-20 17:14:48 +01:00
Process.h Kernel: Snooze the NetworkTask until there are incoming packets to process. 2019-03-20 17:09:46 +01:00
ProcFS.cpp ProcessManager: Show some basic system memory stats below the process table. 2019-03-10 12:13:22 +01:00
ProcFS.h Move Lock from AK to Kernel, since it only works inside the kernel. 2019-03-16 13:18:22 +01:00
PS2MouseDevice.cpp Kernel+WindowServer: Move mouse input signal parsing to kernel driver. 2019-03-05 14:01:03 +01:00
PS2MouseDevice.h Kernel+WindowServer: Move mouse input signal parsing to kernel driver. 2019-03-05 14:01:03 +01:00
PTYMultiplexer.cpp Kernel: Port more code to KResult and KResultOr<T>. 2019-03-06 22:14:31 +01:00
PTYMultiplexer.h Move Lock from AK to Kernel, since it only works inside the kernel. 2019-03-16 13:18:22 +01:00
Queue.h Big, possibly complete sweep of naming changes. 2019-01-31 17:31:23 +01:00
RandomDevice.cpp IPv4: Add simple pseudorandom ephemeral port allocators for TCP and UDP. 2019-03-18 04:03:44 +01:00
RandomDevice.h IPv4: Add simple pseudorandom ephemeral port allocators for TCP and UDP. 2019-03-18 04:03:44 +01:00
RTC.cpp Kernel: Fix wrong calculation of current Unix timestamp. 2019-02-19 02:39:18 +01:00
RTC.h WindowServer: Put a clock in the top right corner of the screen. 2019-02-13 09:27:08 +01:00
run IPv4: Begin fleshing out TCP support. 2019-03-13 17:17:07 +01:00
Scheduler.cpp Kernel: Snooze the NetworkTask until there are incoming packets to process. 2019-03-20 17:09:46 +01:00
Scheduler.h Kernel: When a lock is busy, donate remaining process ticks to lock holder. 2019-02-07 11:14:58 +01:00
SlavePTY.cpp Kernel: Make syscalls that take a buffer size use ssize_t instead of size_t. 2019-02-25 21:21:12 +01:00
SlavePTY.h Kernel: Make syscalls that take a buffer size use ssize_t instead of size_t. 2019-02-25 21:21:12 +01:00
Socket.cpp Kernel: Accepting sockets don't need to retain the client sockets. 2019-03-20 02:48:02 +01:00
Socket.h Kernel: Accepting sockets don't need to retain the client sockets. 2019-03-20 02:48:02 +01:00
StdLib.cpp Start fixing things up to build with a proper cross-compiler. 2019-02-22 10:23:28 +01:00
StdLib.h Kernel: Bring up enough networking code that we can respond to ARP requests. 2019-03-11 23:21:38 +01:00
sync.sh Move WindowServer into Servers. 2019-03-20 04:34:14 +01:00
SyntheticFileSystem.cpp Kernel: Make a copy of the dirty inode list before iterating in sync(). 2019-02-28 21:51:59 +01:00
SyntheticFileSystem.h Kernel: Make a copy of the dirty inode list before iterating in sync(). 2019-02-28 21:51:59 +01:00
Syscall.cpp Kernel: Remove leftover debug spam when returning from mkdir() syscall. 2019-03-14 14:11:35 +01:00
Syscall.h Kernel: recvfrom() should treat the address arguments as outparams. 2019-03-13 14:47:21 +01:00
system.h The syncd loop can just be a lambda. 2018-12-24 23:10:48 +01:00
TCP.h TCP: Start working on auto-closing connections when we get FIN. 2019-03-14 15:23:32 +01:00
TCPSocket.cpp IPv4: Add simple pseudorandom ephemeral port allocators for TCP and UDP. 2019-03-18 04:03:44 +01:00
TCPSocket.h IPv4: Add simple pseudorandom ephemeral port allocators for TCP and UDP. 2019-03-18 04:03:44 +01:00
TSS.h Use modern C++ attributes instead of __attribute__ voodoo. 2019-02-15 12:30:48 +01:00
TTY.cpp Kernel: Make syscalls that take a buffer size use ssize_t instead of size_t. 2019-02-25 21:21:12 +01:00
TTY.h Kernel: Make syscalls that take a buffer size use ssize_t instead of size_t. 2019-02-25 21:21:12 +01:00
types.h More work on IPv4 sockets and /bin/ping. 2019-03-13 03:26:01 +01:00
UDP.h Kernel: Start fleshing out an UDP implementation. 2019-03-13 14:22:27 +01:00
UDPSocket.cpp IPv4: Add simple pseudorandom ephemeral port allocators for TCP and UDP. 2019-03-18 04:03:44 +01:00
UDPSocket.h IPv4: Add simple pseudorandom ephemeral port allocators for TCP and UDP. 2019-03-18 04:03:44 +01:00
UnixTypes.h Kernel: Start fleshing out an UDP implementation. 2019-03-13 14:22:27 +01:00
VirtualConsole.cpp Kernel: Make syscalls that take a buffer size use ssize_t instead of size_t. 2019-02-25 21:21:12 +01:00
VirtualConsole.h Kernel: Make syscalls that take a buffer size use ssize_t instead of size_t. 2019-02-25 21:21:12 +01:00
VirtualFileSystem.cpp Kernel: Don't panic if a call redirected to Device::open() has an error. 2019-03-20 02:55:12 +01:00
VirtualFileSystem.h Kernel: And some more KResult/KResultOr<T> porting work. 2019-03-06 22:30:13 +01:00
ZeroDevice.cpp Kernel: Make syscalls that take a buffer size use ssize_t instead of size_t. 2019-02-25 21:21:12 +01:00
ZeroDevice.h Kernel: Make syscalls that take a buffer size use ssize_t instead of size_t. 2019-02-25 21:21:12 +01:00