Petr Rockai
dc5ba5c392
Fix an error path in daemon_open.
2012-02-24 00:02:54 +00:00
Petr Rockai
3f694b1265
Couple of improvements in the daemon (common + lvmetad) code:
...
- some client-side memory leak fixes
- announce and check protocols and protocol versions
2012-02-23 23:52:11 +00:00
Petr Rockai
351aefc8a0
Do not forget to initialise the error value in daemon_reply.
2012-02-15 09:14:54 +00:00
Zdenek Kabelac
5f3191097d
Ensure reply struct has all fields defined
...
Reply is returned by value.
2012-01-25 21:31:59 +00:00
Zdenek Kabelac
6e2761e928
Check and print perror for syscalls
2012-01-25 21:30:27 +00:00
Zdenek Kabelac
a16915cb0b
Clean var declarations to the front of the function
2012-01-25 13:06:57 +00:00
Zdenek Kabelac
80b21b0b50
Drop unused variable
2012-01-19 15:59:51 +00:00
Petr Rockai
3556560b38
Fix a boundary condition in read_buffer in daemon-shared.c.
2012-01-16 05:09:16 +00:00
Petr Rockai
d528658f97
Fix prototypes for daemon_send_simple (const char).
2012-01-15 15:16:50 +00:00
Petr Rockai
f43c89bf71
Unfortunately, blank lines are sometimes produced by config serializer, and
...
this interferes with their role as message separator in the lvmetad
protocol. Switch to using "##" on an otherwise blank line as a separator.
2012-01-15 11:17:16 +00:00
Petr Rockai
d540685159
Fix a couple of resource leaks in daemon-common server code -- filehandles and
...
unjoined threads were leaked for each connection.
2012-01-15 10:33:41 +00:00
Zdenek Kabelac
ade2b9345f
Cleanup for lvmetad passing uninit structure
...
Shown by clang analyzer.
2011-10-30 21:58:59 +00:00
Zdenek Kabelac
13dd31381c
Use Makefile for daemmons/common library.
...
Next iteration for better fit of lvmetad compilation.
Move build of libdaemon.a into common subdir Makefile.
libdaemon.a is device-mapper target.
Build and install lvmetad as lvm2 target.
2011-09-24 20:57:49 +00:00
Zdenek Kabelac
6d40458530
More gcc warnings removed
2011-09-17 14:49:18 +00:00
Zdenek Kabelac
08a95743a2
Keep the old-style prototypes
2011-09-01 13:25:50 +00:00
Petr Rockai
e68a6fbf20
Fix warnings and constness handling in lvmetad-core (adjusting the
...
dm_config_find_node to give non-const node pointer, since that better reflects
the contract of that function).
2011-08-31 12:39:58 +00:00
Petr Rockai
6e4e30827d
Fix warnings in daemons/common.
2011-08-31 12:18:40 +00:00
Petr Rockai
615534d305
A compromise integration of LVMetaD into the build: I have kept all the
...
daemon/common code in a single libdaemon.a, which is completely private. This
is currently linked into the lvmetad binary, and will be linked into LVM (the
client part, since static linking only picks up only symbols that are actually
used). I have also added --enable/disable-lvmetad to ./configure; although the
current default is off, I expect this to be flipped to on shortly. There's no
LVM-side support yet, but when there is, even when built, it'll still need to
be enabled by an lvm.conf option.
2011-08-31 11:31:57 +00:00
Petr Rockai
c033ea0170
Adapt the daemon/common code to use the new dm_config interface.
2011-08-30 15:42:56 +00:00
Petr Rockai
a720420466
Fix two small (but eventually unbounded) leaks in daemon-server.c.
2011-07-20 18:23:33 +00:00
Petr Rockai
372e9b3d64
Various improvements to the daemon-common code, including automated response
...
formatting from config trees provided by the daemon implementation.
2011-07-18 14:46:54 +00:00
Petr Rockai
aac236f4a8
Improve format_buffer in daemon-shared.c, adding block formatting in addition
...
to string/integer (this propagates to the *simple* family of request/response
functionality).
2011-07-18 14:42:44 +00:00
Petr Rockai
14e012871f
Differentiate the request and response format, in daemon/common.
2011-06-29 22:20:14 +00:00
Petr Rockai
94bb67ab37
Add int/str lookup routines specific to the reply (in client) and request (in
...
server) for nicer-looking code (thin wrapping around find_config_{int,str}).
2011-06-27 14:03:58 +00:00
Petr Rockai
aaca7f111f
Also parse the config_tree on the client end (daemon-client.c).
2011-06-27 13:58:11 +00:00
Petr Rockai
55e300716f
Parse the incoming config tree in daemon-server.c, providing the
...
daemon-specific handler with a struct config_tree pointer to look things up in.
2011-06-27 13:46:45 +00:00
Petr Rockai
4fcbeed6ef
Implement daemon_send_simple and use it in the testclient.
2011-06-27 13:15:49 +00:00
Petr Rockai
308963261c
Do not open the socket with SOCK_NONBLOCK in daemon-client, since we have no
...
use for that behaviour (at least for now).
2011-06-27 13:14:53 +00:00
Petr Rockai
5c1706e3ef
Sketch out the actual on-wire format in daemon-client.h documentation, and add
...
a simplified send interface.
2011-06-27 12:26:54 +00:00
Petr Rockai
92658f5661
Common daemon code: Implement basic socket-based communication infrastructure
...
(both client and server side). The server handles each connection in a separate
thread.
2011-06-14 02:34:18 +00:00
Petr Rockai
dc85d3fb57
More work on the common daemon framework. Make things compile, too.
2011-05-15 11:02:29 +00:00
Petr Rockai
73ffd6e748
More scavenging of common daemon code, this time the clvmd local socket setup
...
sequence.
2011-05-13 09:34:12 +00:00
Petr Rockai
d7448a721b
Start filling in some of the common daemon (server-side) functionality, taking
...
dmeventd code as a starting point.
2011-05-13 08:45:46 +00:00
Petr Rockai
56517bad21
First stab at the prototypes of the daemon-common functionality (to be
...
eventually shared by dmeventd, lvmetad and clvmd).
2011-05-13 08:07:28 +00:00