1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-28 09:57:36 +00:00

IPCCompiler: Remove hardcoded endpoint magic, attempt deux

This patch removes the IPC endpoint numbers that needed to be specified
in the IPC files.  Since the string hash is a (hopefully) collision free
number that depends on the name of the endpoint, we now use that
instead. :^)

Additionally, endpoint magic is now treated as a u32, because endpoint
numbers were never negative anyway.

For cases where the endpoint number does have to be hardcoded (a current
case is LookupServer because the endpoint number must be known in LibC),
the syntax has been made more explicit to avoid confusing those
unfamiliar.  To hardcode the endpoint magic, the following syntax is now
used:

endpoint EndpointName [magic=1234]
This commit is contained in:
sin-ack 2021-04-25 13:19:53 +02:00 committed by Linus Groh
parent 64d05152f7
commit 62af6cd4f9
28 changed files with 62 additions and 37 deletions

View file

@ -1,4 +1,4 @@
endpoint AudioClient = 82
endpoint AudioClient
{
FinishedPlayingBuffer(i32 buffer_id) =|
MutedStateChanged(bool muted) =|

View file

@ -1,4 +1,4 @@
endpoint AudioServer = 85
endpoint AudioServer
{
// Basic protocol
Greet() => ()

View file

@ -1,4 +1,4 @@
endpoint ClipboardClient = 804
endpoint ClipboardClient
{
ClipboardDataChanged([UTF8] String mime_type) =|
}

View file

@ -1,4 +1,4 @@
endpoint ClipboardServer = 802
endpoint ClipboardServer
{
Greet() => ()

View file

@ -1,4 +1,4 @@
endpoint ImageDecoderClient = 7002
endpoint ImageDecoderClient
{
Dummy() =|
}

View file

@ -1,4 +1,4 @@
endpoint ImageDecoderServer = 7001
endpoint ImageDecoderServer
{
Greet() => ()

View file

@ -1,4 +1,4 @@
endpoint LaunchClient = 102
endpoint LaunchClient
{
Dummy() =|
}

View file

@ -1,4 +1,4 @@
endpoint LaunchServer = 101
endpoint LaunchServer
{
Greet() => ()
OpenURL(URL url, String handler_name) => (bool response)

View file

@ -1,4 +1,4 @@
endpoint LookupClient = 9002
endpoint LookupClient
{
Dummy() =|
}

View file

@ -1,4 +1,4 @@
endpoint LookupServer = 9001
endpoint LookupServer [magic=9001]
{
LookupName(String name) => (int code, Vector<String> addresses)
LookupAddress(String address) => (int code, String name)

View file

@ -1,4 +1,4 @@
endpoint NotificationClient = 92
endpoint NotificationClient
{
Dummy() =|
}

View file

@ -1,4 +1,4 @@
endpoint NotificationServer = 95
endpoint NotificationServer
{
// Basic protocol
Greet() => ()

View file

@ -1,4 +1,4 @@
endpoint ProtocolClient = 13
endpoint ProtocolClient
{
// Download notifications
DownloadProgress(i32 download_id, Optional<u32> total_size, u32 downloaded_size) =|

View file

@ -1,4 +1,4 @@
endpoint ProtocolServer = 9
endpoint ProtocolServer
{
// Basic protocol
Greet() => ()

View file

@ -1,4 +1,4 @@
endpoint SymbolClient = 4541511
endpoint SymbolClient
{
Dummy() =|
}

View file

@ -1,4 +1,4 @@
endpoint SymbolServer = 4541510
endpoint SymbolServer
{
Greet() => ()

View file

@ -1,4 +1,4 @@
endpoint WebContentClient = 90
endpoint WebContentClient
{
DidStartLoading(URL url) =|
DidFinishLoading(URL url) =|

View file

@ -1,4 +1,4 @@
endpoint WebContentServer = 89
endpoint WebContentServer
{
Greet() => ()

View file

@ -1,4 +1,4 @@
endpoint WindowClient = 4
endpoint WindowClient
{
Paint(i32 window_id, Gfx::IntSize window_size, Vector<Gfx::IntRect> rects) =|
MouseMove(i32 window_id, Gfx::IntPoint mouse_position, u32 button, u32 buttons, u32 modifiers, i32 wheel_delta, bool is_drag, Vector<String> mime_types) =|

View file

@ -1,4 +1,4 @@
endpoint WindowManagerClient = 1872
endpoint WindowManagerClient
{
WindowRemoved(i32 wm_id, i32 client_id, i32 window_id) =|
WindowStateChanged(i32 wm_id, i32 client_id, i32 window_id, i32 parent_client_id, i32 parent_window_id, bool is_active, bool is_minimized, bool is_modal, bool is_frameless, i32 window_type, [UTF8] String title, Gfx::IntRect rect, i32 progress) =|

View file

@ -1,4 +1,4 @@
endpoint WindowManagerServer = 1871
endpoint WindowManagerServer
{
SetEventMask(u32 event_mask) => ()
SetManagerWindow(i32 window_id) => ()

View file

@ -1,4 +1,4 @@
endpoint WindowServer = 2
endpoint WindowServer
{
Greet() => (Gfx::IntRect screen_rect, Core::AnonymousBuffer theme_buffer)