Statistics
| Branch: | Tag: | Revision:

root / src / Ganeti / UDSServer.hs @ e181c8cd

History | View | Annotate | Download (16.1 kB)

# Date Author Comment
f55ed516 05/05/2014 05:01 pm Klaus Aehlig

Limit size of request locking

...as we currently move the whole configuration over the
network.

Signed-off-by: Klaus Aehlig <>
Reviewed-by: Petr Pudlak <>

45ff650d 04/17/2014 06:56 pm Petr Pudlak

Allow closing a RPC client, keeping its file descriptors

The purpose is to keep the communication channel open, while replacing a
'Client' with something else.

Signed-off-by: Petr Pudlak <>
Reviewed-by: Klaus Aehlig <>

0191874e 04/17/2014 06:56 pm Petr Pudlak

Separate client and server config for Luxi communication

The daemon identity is only required for server connections to set the
access mode to its socket appropriately. For client connections it's
not needed and requiring it prevents creating standalone clients, for...

f63f7419 04/17/2014 06:56 pm Petr Pudlak

Allow creation if bi-directional pair of Luxi-like clients

This allows a process and its forked child to communicate with each
other using our standard infrastructure.

Signed-off-by: Petr Pudlak <>
Reviewed-by: Klaus Aehlig <>

e5b675dc 04/17/2014 06:56 pm Petr Pudlak

Separate read and write handle in the Luxi Client data type

This is required for inter-process pipes, which are fully supported only
as uni-directional.

Signed-off-by: Petr Pudlak <>
Reviewed-by: Klaus Aehlig <>

3fc9410e 04/03/2014 12:54 pm Petr Pudlak

Move buildCall and validateResult from Luxi to UDSServer

.. to that they're available for other Luxi-like RPC clients as well.

While at it, rename validateResult to parseResponse to be consistent
with the names of the other functions.

Signed-off-by: Petr Pudlak <>...

b172b0ab 02/14/2014 11:46 am Petr Pudlak

Allow clients of UDSServer to use different monads

.. as long as they're instances of "MonadBaseControl IO" and "MonadLog".
This allows the UDSServer to call functions like "fork" within monads
such as "ResultT e IO" or "ReaderT IO".

Signed-off-by: Petr Pudlak <>...

3062d395 02/07/2014 11:15 am Santi Raffa

luxid: give stern warnings about debug mode

Luxid as it is can leak private and secret parameters by logging
all requests as they arrive, before any preprocessing is done.

Warn the user stern warnings about this.

Signed-off-by: Santi Raffa <>...

cf51a981 01/13/2014 07:43 pm Jose A. Lopes

Generalize and reuse Unix domain sockets

Refactor module 'Ganeti.UDSServer' so the KVM daemon can reuse code
declared in this module to handle Unix domain sockets.

Signed-off-by: Jose A. Lopes <>
Reviewed-by: Michele Tartara <>

c7003a76 12/11/2013 01:32 pm Petr Pudlak

Move the generalized IO client from Luxi to UDSServer

No code is changed in this patch (except imports and qualifiers), only
moved.

Signed-off-by: Petr Pudlak <>
Reviewed-by: Klaus Aehlig <>

d79a6502 12/11/2013 01:32 pm Petr Pudlak

Generalize the IO client handling in Luxi

... to be usable for WConfd as well. A daemon handler is encapsulated
into `Handler` data type, which is then passed to a generic `listener`.

The changes are done in Luxi.hs so that the differences are visible and...

6e47412f 12/11/2013 12:07 pm Petr Pudlak

Generalize "validateCall" to be usable outside LUXI

Return the method (as any instance of JSON) and the arguments of a call.

Signed-off-by: Petr Pudlak <>
Reviewed-by: Klaus Aehlig <>

5e671e0e 12/11/2013 12:07 pm Petr Pudlak

Add the Unix domain socket path to the Server data type

This simplifies code for closing such a socket.

Signed-off-by: Petr Pudlak <>
Reviewed-by: Klaus Aehlig <>

0fbc8447 12/11/2013 12:07 pm Petr Pudlak

Encapsulate a server socket and its parameters

Instead of passing a bare server socket around, we pass it encapsulated
in a data type together with parameters such as read/write timeouts.

Signed-off-by: Petr Pudlak <>
Reviewed-by: Klaus Aehlig <>

d605e261 12/11/2013 12:07 pm Petr Pudlak

Rename getClient/Server to getLuxiClient/Server

Later they will be split into LUXI-specific and general parts.

Signed-off-by: Petr Pudlak <>
Reviewed-by: Klaus Aehlig <>

71a4c605 12/11/2013 12:07 pm Petr Pudlak

Split Luxi.hs into LUXI-specific functions and general ones

This will allow WConfD to use the general functions without importing
Luxi.hs.

Signed-off-by: Petr Pudlak <>
Reviewed-by: Klaus Aehlig <>