Krisztian Litkey [Tue, 7 May 2013 09:36:00 +0000 (12:36 +0300)]
Merge branch 'master' of github.com:otcshare/policy-internal
Ismo Puustinen [Fri, 3 May 2013 11:35:09 +0000 (14:35 +0300)]
build: fix linking D-Bus and Lua libraries.
Krisztian Litkey [Tue, 30 Apr 2013 12:49:38 +0000 (15:49 +0300)]
common: pick the correct mainloop timer to expire next.
In some circumstances our mainloop implementation failed to update
the next timer to expire (ml->next_timer). This commit changes
insert_timer to always update ml->next_timer to point to the non-
deleted timer with the lowest expire-stamp.
An alternative fix would have been to get rid of ml->next_timer
altogether and simply pick the next timer in mrp_mainloop_prepare
by calling find_next_timer.
Krisztian Litkey [Tue, 30 Apr 2013 08:08:50 +0000 (11:08 +0300)]
common: be more careful with allocation error checks in mainloop-test.
Krisztian Litkey [Sun, 28 Apr 2013 10:13:51 +0000 (13:13 +0300)]
license: updated LICENSE-BSD for 2013.
Krisztian Litkey [Sat, 27 Apr 2013 15:34:52 +0000 (18:34 +0300)]
common: updated dbus debug info.
Krisztian Litkey [Fri, 26 Apr 2013 12:58:20 +0000 (15:58 +0300)]
daemon: fix typo in help message.
Krisztian Litkey [Fri, 12 Apr 2013 14:48:45 +0000 (17:48 +0300)]
resource-native: let the client know when a connection is lost.
Krisztian Litkey [Tue, 9 Apr 2013 15:21:49 +0000 (18:21 +0300)]
common/dbus: added mrp_dbus_reply_error.
Krisztian Litkey [Mon, 8 Apr 2013 09:25:45 +0000 (12:25 +0300)]
common/dbus: added missing include.
Ismo Puustinen [Thu, 25 Apr 2013 12:26:37 +0000 (15:26 +0300)]
resource-c: add a print in test app to show the resource set state.
Ismo Puustinen [Thu, 25 Apr 2013 12:16:04 +0000 (15:16 +0300)]
resource-c: better errors, correct casting.
Ismo Puustinen [Thu, 25 Apr 2013 10:41:33 +0000 (13:41 +0300)]
resource-c: remove extra resource callback calls and shortcuts.
The Murphy resource backend should now control the flow with the event
notifications.
Ismo Puustinen [Thu, 18 Apr 2013 06:22:15 +0000 (09:22 +0300)]
tests: process-test updated to latest API.
Ismo Puustinen [Tue, 16 Apr 2013 11:25:50 +0000 (14:25 +0300)]
common: added support for external process watching.
Ismo Puustinen [Fri, 12 Apr 2013 14:30:58 +0000 (17:30 +0300)]
build: cleaned linking for resource-c library and the test programs.
Ismo Puustinen [Thu, 11 Apr 2013 10:28:12 +0000 (13:28 +0300)]
resource-c: fix a memory corruption.
Ismo Puustinen [Thu, 11 Apr 2013 10:27:38 +0000 (13:27 +0300)]
resource-c: fix resource fuzzer error handling.
Ismo Puustinen [Thu, 11 Apr 2013 10:27:00 +0000 (13:27 +0300)]
resource-c: fix a crash in API test app.
Ismo Puustinen [Wed, 10 Apr 2013 12:32:07 +0000 (15:32 +0300)]
resource-c: fix a race condition.
Ismo Puustinen [Tue, 9 Apr 2013 07:20:33 +0000 (10:20 +0300)]
resource-c: started writing api stress testing.
Ismo Puustinen [Tue, 9 Apr 2013 07:19:25 +0000 (10:19 +0300)]
resource-c: fixed a warning in api test.
Ismo Puustinen [Mon, 8 Apr 2013 12:27:23 +0000 (15:27 +0300)]
resource: don't access a freed rset from lua gc.
Ismo Puustinen [Mon, 8 Apr 2013 12:05:37 +0000 (15:05 +0300)]
murphy-db: fix a memory boundary issue.
Ismo Puustinen [Mon, 8 Apr 2013 07:45:44 +0000 (10:45 +0300)]
resource-dbus: improved fuzzing a bit.
Ismo Puustinen [Fri, 5 Apr 2013 14:21:26 +0000 (17:21 +0300)]
resource-dbus: release resource D-Bus method handlers properly.
Krisztian Litkey [Fri, 5 Apr 2013 13:38:03 +0000 (16:38 +0300)]
websockets: removed unused sck_close.
Krisztian Litkey [Fri, 5 Apr 2013 13:37:00 +0000 (16:37 +0300)]
Merge branch 'master' of github.com:otcshare/policy-internal
Krisztian Litkey [Fri, 5 Apr 2013 13:35:31 +0000 (16:35 +0300)]
websockets: ouch, delayed socket close fixes.
Ismo Puustinen [Fri, 5 Apr 2013 12:25:11 +0000 (15:25 +0300)]
resource-dbus: fixed memory leaks.
Ismo Puustinen [Fri, 5 Apr 2013 12:19:56 +0000 (15:19 +0300)]
doc: example D-Bus client got some fuzz testing functionality.
Krisztian Litkey [Fri, 5 Apr 2013 08:25:42 +0000 (11:25 +0300)]
websockets: used POLLOUT-based delayed socket close for latest libwebsockets.
Krisztian Litkey [Thu, 4 Apr 2013 09:30:21 +0000 (12:30 +0300)]
domain-control: don't bail out if alloc for 0 tables or watches return NULL.
Krisztian Litkey [Wed, 3 Apr 2013 13:05:31 +0000 (16:05 +0300)]
Merge branch 'master' of github.com:otcshare/policy-internal
Krisztian Litkey [Wed, 3 Apr 2013 12:30:17 +0000 (15:30 +0300)]
console-client: fixed a bunch of issues discovered by static analysis.
Krisztian Litkey [Wed, 3 Apr 2013 12:30:01 +0000 (15:30 +0300)]
resolver: fixed a bunch of issues discovered by static analysis.
Krisztian Litkey [Wed, 3 Apr 2013 12:29:50 +0000 (15:29 +0300)]
daemon: fixed a bunch of issues discovered by static analysis.
Krisztian Litkey [Wed, 3 Apr 2013 12:29:34 +0000 (15:29 +0300)]
lua-bindings: fixed a bunch of issues discovered by static analysis.
Krisztian Litkey [Wed, 3 Apr 2013 12:28:57 +0000 (15:28 +0300)]
domain-control: fixed a bunch of issues discovered by static analysis.
Krisztian Litkey [Wed, 3 Apr 2013 12:27:34 +0000 (15:27 +0300)]
common: fixed a bunch of issues discovered by static analysis.
Krisztian Litkey [Wed, 3 Apr 2013 11:58:54 +0000 (14:58 +0300)]
common: added missing #includes for pulse-glue.
Ismo Puustinen [Wed, 3 Apr 2013 07:02:42 +0000 (10:02 +0300)]
libresource: add NULL pointer check.
Ismo Puustinen [Wed, 3 Apr 2013 06:58:47 +0000 (09:58 +0300)]
resource-dbus: fix NULL variable check.
Krisztian Litkey [Thu, 28 Mar 2013 14:32:19 +0000 (16:32 +0200)]
common: fix websocklib build for older libwebsockets.
Krisztian Litkey [Thu, 28 Mar 2013 13:59:18 +0000 (15:59 +0200)]
common: get rid of a few more warnings.
Krisztian Litkey [Thu, 28 Mar 2013 13:45:36 +0000 (15:45 +0200)]
utils: get rid of a bunch of warnings.
Krisztian Litkey [Thu, 28 Mar 2013 13:45:32 +0000 (15:45 +0200)]
domain-control: get rid of a bunch of warnings.
Krisztian Litkey [Thu, 28 Mar 2013 13:45:24 +0000 (15:45 +0200)]
daemon: get rid of a bunch of warnings.
Krisztian Litkey [Thu, 28 Mar 2013 13:45:14 +0000 (15:45 +0200)]
resource: get rid of a bunch of warnings.
Krisztian Litkey [Thu, 28 Mar 2013 13:44:56 +0000 (15:44 +0200)]
lua-bindings: get rid of a bunch of warnings.
Krisztian Litkey [Thu, 28 Mar 2013 13:44:43 +0000 (15:44 +0200)]
murphy-db: get rid of a bunch of warnings.
Krisztian Litkey [Thu, 28 Mar 2013 13:44:38 +0000 (15:44 +0200)]
common: get rid of a bunch of warnings.
Krisztian Litkey [Thu, 28 Mar 2013 09:30:47 +0000 (11:30 +0200)]
common: adjust mainloop notification callbacks to dominant usage patterns
Since practically none of the notification callbacks used the first
mainloop argument, it is not passed to the callbacks any more. Instead
mrp_get_*_mainloop getter functions has been added for retrieving the
mainloop pointer associated with the various objects for those few
cases where this is necessary.
Krisztian Litkey [Wed, 27 Mar 2013 13:56:56 +0000 (15:56 +0200)]
domain-control: install and serve domain-control JS agent if websockets are enabled.
Krisztian Litkey [Wed, 27 Mar 2013 12:41:57 +0000 (14:41 +0200)]
lua-decision: select from an empty table is not an error, let resolution go on.
Krisztian Litkey [Wed, 27 Mar 2013 09:27:00 +0000 (11:27 +0200)]
licensing: added missing licensing information to a bunch of files.
Krisztian Litkey [Wed, 27 Mar 2013 09:16:48 +0000 (11:16 +0200)]
Merge branch 'master' of github.com:otcshare/policy-internal
Krisztian Litkey [Wed, 27 Mar 2013 08:54:01 +0000 (10:54 +0200)]
domain-control: javascript API hack + a small demo/test
Hacked together a javacript API and wrote a small test that imports
the audio and video playback owners from murphy and exports a single
increasing integer counter to murphy. Well, how should I put this...
the javascript API needs more work. This is more of a PoC proto than
the real thing. Especially when it comes to error handling.
Krisztian Litkey [Mon, 25 Mar 2013 20:49:06 +0000 (22:49 +0200)]
daemon: load a domain-control plugin for webruntimes in the sample config.
Krisztian Litkey [Thu, 21 Feb 2013 16:06:59 +0000 (18:06 +0200)]
domain-control: support for multiple transports, including websockets.
Support for multiple plugin instances and a messaging overhaul to support
multiple transports. In particular, support for websocket transports with
JSON messages and serving JS API/agents to allow data export/import to/from
web runtimes. The seeds have been planted to support internal transports
(to allow for domain-controllers as plugins) although this is completely
untested at the moment.
On the configurability front it'd be a good idea to still add table access
control (white/blacklisting tables for import/export) and table name mapping
(among others to allow changing data models without having to touch external
domain controllers) should be added.
Krisztian Litkey [Tue, 26 Mar 2013 15:03:25 +0000 (17:03 +0200)]
common: fix a JSON convenience macro copy-paste'o.
Krisztian Litkey [Sat, 16 Mar 2013 11:16:23 +0000 (13:16 +0200)]
common: make sure *alloc(0) returns NULL.
The C standard allows [mc]alloc(0) to return a unique non-NULL pointer
instead of NULL and indeed the stock allocator in recent versions of
glibc does behave this way. We prefer our zero-sized chunks of memory
to be represented by NULL, so we take care of this in the allocator
wrappers.
Ismo Puustinen [Tue, 15 Jan 2013 13:04:30 +0000 (15:04 +0200)]
tests: added a test for process watching.
Ismo Puustinen [Tue, 15 Jan 2013 12:49:25 +0000 (14:49 +0200)]
build: add process watching to build.
Ismo Puustinen [Fri, 11 Jan 2013 13:39:17 +0000 (15:39 +0200)]
common: added support for detecting process state changes.
Ismo Puustinen [Tue, 19 Mar 2013 10:32:08 +0000 (12:32 +0200)]
resource: make resource-client not crash if no requests are completed.
Krisztian Litkey [Tue, 12 Mar 2013 14:37:01 +0000 (16:37 +0200)]
websockets: less verbose libwebsockets logging.
Krisztian Litkey [Tue, 12 Mar 2013 13:26:21 +0000 (15:26 +0200)]
websockets: serious code uglification to compile with latest libwebsockets.
Please, someone make the bad libwebsockets people go away... Why can't
they fix most of the abstraction problems, inconsistencies, namespaceing
issues and other annoyances at the same time if they decide to break their
APIs. I mean, if you force people to touch their code, you at least ought
to try to minimise their pain by maximising their gain...
Anyway, as soon as we're sure we don't need to support any of the older
(pre-1.2) libwebsockets versions, we really need to rip out most of the
the current #ifdef-jungle and other releated kludgery that was brought
in by having to supporting 3 different versions...
Krisztian Litkey [Fri, 8 Mar 2013 15:56:46 +0000 (17:56 +0200)]
resource-wrt test: don't hardcode server address (other than for media).
Krisztian Litkey [Thu, 7 Mar 2013 11:56:40 +0000 (13:56 +0200)]
murphy-console: support giving commands on the command line.
Krisztian Litkey [Tue, 5 Mar 2013 21:09:35 +0000 (23:09 +0200)]
lua-bindings: use an extra boolean to control lua memory tracking.
Krisztian Litkey [Tue, 5 Mar 2013 20:51:52 +0000 (22:51 +0200)]
common: improved diagnostics and configurability for the debug allocator.
When running with mm debugging enabled, requesting diagnostics will
first group allocated blocks by callstack fingerprint, sort the groups
by total memory consumption and then dump the blocks. One improvement
remaining is to write a libbfd-based helper to do a better job of mapping
return addresses to function names than the stock backtrace_symbols(3) of
execinfo.
Also there is now a set of functions available to extract the value of
a given key from the configuration environment variable. This can be used
by other subsystems, for instance to decide if they need to override
default allocators of other components/libraries.
Krisztian Litkey [Mon, 4 Mar 2013 11:41:30 +0000 (13:41 +0200)]
common: added wakeup (sort of passive deferred) callback support.
Added support for wakeup callbacks to the murphy mainloop. A wakeup
callback is not quite unlike a deferred one. The crucial difference
is that wakeup callbacks do not prevent the mainloop from blocking
on (e)poll. wakeup callbacks are not executed if the mainloop is
dispatching because of active deferred callbacks (approximated by
checking if poll_timeout is 0). Using wakeup callbacks one can piggy-
back some processing on wakeups that were trigered by I/O (or signal)
events or expiring timers.
Krisztian Litkey [Fri, 1 Mar 2013 22:26:34 +0000 (00:26 +0200)]
lua-bindings: initial support for tracking Lua memory allocations.
Krisztian Litkey [Fri, 1 Mar 2013 22:25:28 +0000 (00:25 +0200)]
common: handle realloc to 0 size gracefully as free in debug mode.
Krisztian Litkey [Fri, 1 Mar 2013 10:27:52 +0000 (12:27 +0200)]
console: a bit better command/group handling from the prompt.
Krisztian Litkey [Thu, 28 Feb 2013 06:55:45 +0000 (08:55 +0200)]
config: updated sample config for resource-wrt.
Krisztian Litkey [Thu, 28 Feb 2013 06:54:30 +0000 (08:54 +0200)]
resource-wrt: install and serve resource-wrt JS agent if configured so.
Krisztian Litkey [Wed, 27 Feb 2013 22:48:01 +0000 (00:48 +0200)]
Merge remote-tracking branch 'private/master'
Krisztian Litkey [Wed, 27 Feb 2013 22:47:16 +0000 (00:47 +0200)]
build-sys: json(-c) is now a required dependency.
Krisztian Litkey [Wed, 27 Feb 2013 22:19:13 +0000 (00:19 +0200)]
config: updated sample config.
Krisztian Litkey [Wed, 27 Feb 2013 22:13:58 +0000 (00:13 +0200)]
lua-bindings: allow arbitrary (json-mappable) plugin arguments.
Krisztian Litkey [Wed, 27 Feb 2013 13:27:20 +0000 (15:27 +0200)]
test plugin: test object plugin argument.
Krisztian Litkey [Wed, 27 Feb 2013 12:52:32 +0000 (14:52 +0200)]
daemon: horrible kludge to support (json) object plugin argument parsing.
The config parser is now abused way beyond its limits. It'll need to be
replaced with a better designed tokenizer which is less shaky and squeeky.
I doubt the current parser could be stretched any further. And even if it
could it most definitely shouldn't be...
Krisztian Litkey [Wed, 27 Feb 2013 12:51:39 +0000 (14:51 +0200)]
core: support objects as plugin arguments.
Krisztian Litkey [Wed, 27 Feb 2013 12:21:16 +0000 (14:21 +0200)]
common: cope with older json-c, support partial string parsing.
Krisztian Litkey [Wed, 27 Feb 2013 12:19:13 +0000 (14:19 +0200)]
build-sys: check for json_tokener_get_error().
Krisztian Litkey [Tue, 26 Feb 2013 12:28:38 +0000 (14:28 +0200)]
build-sys: remember to restore LDFLAGS after done with AC_LINK_* tests.
Janos Kovacs [Tue, 26 Feb 2013 07:49:53 +0000 (09:49 +0200)]
resource-client: add response time mesurements
Krisztian Litkey [Fri, 22 Feb 2013 21:54:14 +0000 (23:54 +0200)]
config: sample SSL webconsole configuration.
Krisztian Litkey [Fri, 22 Feb 2013 21:53:28 +0000 (23:53 +0200)]
plugin-console: support for SSL-encrypted websocket transports.
Krisztian Litkey [Fri, 22 Feb 2013 21:32:24 +0000 (23:32 +0200)]
websockets: preliminary SSL support on the listening/accepting side
Enabled basic SSL support in the low-level websocket wrapper. Added
transport options for configuring the necessary SSL certificates
and keys. The current support is already enough to enable SSL on
the listening/accepting side (tested with the web console), although
there are a few things still missing (eg. mapping out the server side
REQUIRE_VALID_OPENSSL_CLIENT_CERT option). The client side SSL support
has not been tested.
One thing that probably needs to be changed is the websocket transport
naming scheme. It would be a better idea to follow the established 'ws:'
(plain) and 'wss:' (encrypted) prefixes.
Krisztian Litkey [Fri, 22 Feb 2013 19:46:13 +0000 (21:46 +0200)]
websockets: find interface for socket address during context creation.
Krisztian Litkey [Fri, 22 Feb 2013 08:55:42 +0000 (10:55 +0200)]
websockets: get rid of compiler warnings.
Krisztian Litkey [Fri, 22 Feb 2013 08:54:50 +0000 (10:54 +0200)]
breedline: get rid of compiler warnings.
Krisztian Litkey [Fri, 22 Feb 2013 08:37:38 +0000 (10:37 +0200)]
murphy-db: get rid of a bunch of compilation warnings.
Krisztian Litkey [Thu, 21 Feb 2013 11:25:05 +0000 (13:25 +0200)]
console-client: don't print a bogus error message for empty input.
Krisztian Litkey [Thu, 21 Feb 2013 16:24:10 +0000 (18:24 +0200)]
domain-control: ignore commits of nested transactions.
Krisztian Litkey [Thu, 21 Feb 2013 16:23:59 +0000 (18:23 +0200)]
resolver: ignore commits of nested transactions.
Krisztian Litkey [Thu, 21 Feb 2013 16:23:20 +0000 (18:23 +0200)]
murphy-db: added MQI function for querying the current transaction depth.