Krisztian Litkey [Fri, 5 Jul 2013 10:49:43 +0000 (13:49 +0300)]
systemd: added systemd (logging) plugin.
Krisztian Litkey [Wed, 3 Jul 2013 18:32:12 +0000 (21:32 +0300)]
murphy-db: satisfy security-concious gcc (-Werror=format-security).
Krisztian Litkey [Wed, 26 Jun 2013 17:38:36 +0000 (20:38 +0300)]
build-sys: make sure LD_AS_NEEDED=1 does not break AC_LINK_IFELSE.
For some combinations of autoconf/gcc (e.g. 2.69/4.7.2) setting
LD_AS_NEEDED to 1 breaks AC_LINK_IFELSE. That macro generates
a compilation command line where the libraries precede the generated
C source code. With LD_AS_NEEDED=1 all referenced/tested symbols
from any of the libraries end up being undefined. This fools
AC_LINK_IFELSE to consider the test a failure and always choose the
else branch. rpmbuild always sets LD_AS_NEEDED to 1. To work around
this save, unset and restore LD_AS_NEEDED for the duration of the
AC_LINK_IFELSE tests.
Ismo Puustinen [Fri, 14 Jun 2013 08:34:20 +0000 (11:34 +0300)]
resource-c: fix a bug with the autorelease flag handling.
Ismo Puustinen [Thu, 13 Jun 2013 07:53:59 +0000 (10:53 +0300)]
resource-c: handle attribute values changed by the resource backend.
Ismo Puustinen [Tue, 11 Jun 2013 10:30:59 +0000 (13:30 +0300)]
resource-c: added support for automatical releasing of resource sets.
Krisztian Litkey [Thu, 6 Jun 2013 15:29:52 +0000 (18:29 +0300)]
Merge branch 'master' of github.com:otcshare/policy-internal
Krisztian Litkey [Thu, 6 Jun 2013 14:46:37 +0000 (17:46 +0300)]
build-sys: native resource library does/can not need murphy-core.
Krisztian Litkey [Fri, 12 Apr 2013 14:50:03 +0000 (17:50 +0300)]
resource-native: let clients override default logging.
Krisztian Litkey [Wed, 5 Jun 2013 15:21:26 +0000 (18:21 +0300)]
common: add missing json to pkg-config, removed incorrect dbus and glib.
Ismo Puustinen [Wed, 5 Jun 2013 11:15:12 +0000 (14:15 +0300)]
resource-c: don't link resource clients to murphy-core.
Ismo Puustinen [Wed, 5 Jun 2013 11:07:27 +0000 (14:07 +0300)]
build: install murphy-resource.pc file correctly.
Arun Raghavan [Wed, 5 Jun 2013 14:46:02 +0000 (17:46 +0300)]
build-sys: Build with json-c >= 0.11
The pkg-config file name changed with json-c 0.11, so configure checks
need to accordingly change. Also means we shouldn't try to use pkg-config
directly for the json_tokener_get_error() check.
As a result of this, it becomes apparent that murphy/common/json.h
implicitly depends on json.h (and thus so do all files that include it).
Fixing this would require moving out typedefs/macros linking mrp_json_*
to json_* from that header.
Krisztian Litkey [Tue, 4 Jun 2013 19:28:40 +0000 (22:28 +0300)]
core: make sure authenticator backend user_data defaults to NULL.
Krisztian Litkey [Tue, 4 Jun 2013 19:15:23 +0000 (22:15 +0300)]
daemon: only try-load WRT domain-control in sample config.
Krisztian Litkey [Fri, 31 May 2013 14:16:55 +0000 (17:16 +0300)]
core: fix embarrassing typo spotted by Ismo.
Krisztian Litkey [Fri, 31 May 2013 13:46:11 +0000 (16:46 +0300)]
Merge branch 'master' of github.com:otcshare/policy-internal
Krisztian Litkey [Fri, 31 May 2013 13:29:06 +0000 (16:29 +0300)]
plugin-test: added authentication test console command.
Krisztian Litkey [Thu, 30 May 2013 16:46:00 +0000 (19:46 +0300)]
core: first attempt at adding a common authentication infra, smack support.
Added a very simple authentication infra that lets you register
authentication backends and request authentication/access control
from a particular or any backend. The authentication API tries to
be a union of a SMACKish MAC (target / access-mode / id) and a
traditional authentication (target / id / authentication-token).
Hopefully it's enough to fill our needs without being too ugly or
unintuitive to use.
Currently there are two built-in authentication backends. One is
a straightforward SMACK backend, the other is an always-deny backend
which is installed to be the last backend in the chain.
Ismo Puustinen [Thu, 30 May 2013 10:58:59 +0000 (13:58 +0300)]
resource-wrt: do not use uninitialized variables.
Ismo Puustinen [Thu, 30 May 2013 10:32:56 +0000 (13:32 +0300)]
common: do not do arithmetic with void pointers (it's a gcc extension).
Ismo Puustinen [Thu, 30 May 2013 14:11:49 +0000 (17:11 +0300)]
mql: properly handle floating columns in table definitions.
Krisztian Litkey [Mon, 13 May 2013 13:07:52 +0000 (16:07 +0300)]
Merge branch 'master' of github.com:otcshare/policy-internal
Krisztian Litkey [Mon, 13 May 2013 11:32:03 +0000 (14:32 +0300)]
mainloop: wakeup limits based on the bounded wakeup patch from Ismo.
Ismo did all the heavy lifting for this feature and provided the initial
implementation. To avoid having two slightly different wakeup mechanisms
I ended up adding the necessary bits to the original mrp_wakeup_t code.
This patch adds support for setting a lower and an upper limit on how
often wakeup callbacks can be triggered. The lower limit acts as a low-
pass filter, guaranteeing that wakeup callbacks will not be invoked more
often than once per lower limit interval. The upper limit defines a
forced trigger interval, forcibly triggering the callback once per upper
interval in the lack of other events of interest.
Here's the commit message from the original patch:
Bounded wakeup triggers a callback whenever the process wakes up, but not
before a minimum amount of time has passed since the previous wakeup. Even
if no wakeups happen, the callback will get called when a maximum amount of
time has passed. This property makes bounded wakeups useful when doing
energy-aware polling or cleanups.
Ismo Puustinen [Wed, 8 May 2013 07:14:13 +0000 (10:14 +0300)]
resource-dbus: made snprintf handling more robust.
Ismo Puustinen [Tue, 7 May 2013 18:42:15 +0000 (21:42 +0300)]
resource-dbus: allow setting incomplete attribute configrations.
Krisztian Litkey [Tue, 7 May 2013 09:31:12 +0000 (12:31 +0300)]
build-sys: force git hooks on.
Krisztian Litkey [Tue, 7 May 2013 09:29:32 +0000 (12:29 +0300)]
pre-commit-hook: check for mixed autogenerated/ordinary changes
Check if a commit tries to mix changes to autogenerated and ordinary
files and ask the user to reconsider committing the changes as two
separate commits.
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.