Skip to content
  • Daniel De Graaf's avatar
    libvchan: interdomain communications library · 6165d2cd
    Daniel De Graaf authored
    
    
    This library implements a bidirectional communication interface between
    applications in different domains, similar to unix sockets. Data can be
    sent using the byte-oriented libvchan_read/libvchan_write or the
    packet-oriented libvchan_recv/libvchan_send.
    
    Channel setup is done using a client-server model; domain IDs and a port
    number must be negotiated prior to initialization. The server allocates
    memory for the shared pages and determines the sizes of the
    communication rings (which may span multiple pages, although the default
    places rings and control within a single page).
    
    With properly sized rings, testing has shown that this interface
    provides speed comparable to pipes within a single Linux domain; it is
    significantly faster than network-based communication.
    
    Signed-off-by: default avatarDaniel De Graaf <dgdegra@tycho.nsa.gov>
    Acked-by: default avatarIan Campbell <ian.campbell@citrix.com>
    Committed-by: default avatarIan Jackson <ian.jackson@eu.citrix.com>
    6165d2cd