endpoint ProtocolServer = 9
{
    // Basic protocol
    Greet() => (i32 client_id)

    // FIXME: It would be nice if the kernel provided a way to avoid this
    DisownSharedBuffer(i32 shared_buffer_id) => ()

    // Test if a specific protocol is supported, e.g "http"
    IsSupportedProtocol(String protocol) => (bool supported)

    // Download API
    StartDownload(String url) => (i32 download_id)
    StopDownload(i32 download_id) => (bool success)
}
