// Copyright 2014 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

library fuchsia.sys;

// An interface through which a client may request services from a host.
// Instances of this interface are created within the context of an
// already-identified client and host pair, so there is no need to explicitly
// identify the client or host in the methods below.
//
// This interface is deprecated.  Services should be published as directory
// entries instead, just like files.
// TODO(ZX-1358): Point to the FIDL interface for file I/O once RIO is migrated.
protocol ServiceProvider {
    // Asks the host to provide the service identified by |service_name| through
    // the |channel| endpoint supplied by the caller. If the host is not willing
    // or able to provide the requested service, it should close the |channel|.
    ConnectToService(string service_name, handle<channel> channel);
};
