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.
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.
Krisztian Litkey [Thu, 21 Feb 2013 09:07:46 +0000 (11:07 +0200)]
lua-bindings: slightly better Lua runtime debugging printouts.
Krisztian Litkey [Tue, 19 Feb 2013 19:42:54 +0000 (21:42 +0200)]
lua-bindings: embrionic Lua/Murphy runtime debug bridging.
Krisztian Litkey [Tue, 19 Feb 2013 14:35:32 +0000 (16:35 +0200)]
lua-decision: avoid unsigned underflow during table resize.
Janos Kovacs [Sun, 17 Feb 2013 21:24:54 +0000 (23:24 +0200)]
lua-decision: handle correctly the number or result rows in selection_update()
Janos Kovacs [Sun, 17 Feb 2013 21:21:44 +0000 (23:21 +0200)]
lua-utils: object creation with name leave correct stack behind
Krisztian Litkey [Mon, 18 Feb 2013 10:44:39 +0000 (12:44 +0200)]
core: support for collecting and querying undeclared plugin arguments.
Plugins can now advertise accepting a set of unspecified arguments
using the MRP_PLUGIN_ARGIDX_UNDECL/MRP_PLUGIN_ARG_TYPE_UNDECL macros.
Functions are providing for looking up named arguments (of a certain
or any type) among these arguments and also for iterating through all
of these arguments.
Krisztian Litkey [Thu, 14 Feb 2013 13:38:14 +0000 (15:38 +0200)]
Merge branch 'jko-devel' of github.com:otcshare/policy-internal
Krisztian Litkey [Thu, 14 Feb 2013 11:34:42 +0000 (13:34 +0200)]
common: don't corrupt old block in debug mode when realloc needs to move a block.
Janos Kovacs [Thu, 14 Feb 2013 02:04:01 +0000 (04:04 +0200)]
Merge branch 'master' of https://github.com/otcshare/policy-internal
Janos Kovacs [Thu, 14 Feb 2013 01:44:11 +0000 (03:44 +0200)]
resource: add configurable 'fifo' and 'lifo' ordering to application classes
Janos Kovacs [Thu, 14 Feb 2013 01:40:06 +0000 (03:40 +0200)]
resource: make accessible from LUA resource-set id and application_class
Janos Kovacs [Tue, 12 Feb 2013 02:05:31 +0000 (04:05 +0200)]
resource: add LUA support for resource owners and resource sets
Janos Kovacs [Mon, 11 Feb 2013 11:27:42 +0000 (13:27 +0200)]
lua-utils: add support for function arrays
Jaska Uimonen [Mon, 4 Feb 2013 18:10:52 +0000 (20:10 +0200)]
resource-client: add command line option for priority
Janos Kovacs [Mon, 4 Feb 2013 12:40:19 +0000 (14:40 +0200)]
resource: add application_class support for 'modal' and 'share' attributes
Janos Kovacs [Mon, 4 Feb 2013 08:47:34 +0000 (10:47 +0200)]
resource: move the resource set in the class list when autoreleased
Krisztian Litkey [Wed, 13 Feb 2013 17:16:27 +0000 (19:16 +0200)]
plugin-console: install and serve webconsole content if enabled.
Krisztian Litkey [Wed, 13 Feb 2013 16:35:48 +0000 (18:35 +0200)]
build-sys: detect older versions of libwebsockets.
Krisztian Litkey [Wed, 13 Feb 2013 16:12:37 +0000 (18:12 +0200)]
websockets: serious code uglification to support versions prior to 0291eb3..d764e84.
In some environments we might be forced to run with really old
versions of libwebsockets. This causes some amount of pain as
as some of those features are quite essential for building a
reasonable abstraction on top of libwebsockets.
Most notably, versions prior to 0291eb3..d764e84 (Oct 19 2012)
do not support per-context user data. Since we need to associate
our context with that of libwebsockets we have to build an extra
mechanism for mapping between the two when user data support is
not available. We use an extra hash table to store our context
and use directly the (low 32-bits of the) libwebsocket context
pointer as the key to store and fetch it.
Krisztian Litkey [Wed, 13 Feb 2013 15:09:58 +0000 (17:09 +0200)]
resource-wrt: error path uninitialized variable fix.
Krisztian Litkey [Tue, 12 Feb 2013 10:11:35 +0000 (12:11 +0200)]
misc: more forgiving test config.
Krisztian Litkey [Tue, 12 Feb 2013 10:06:38 +0000 (12:06 +0200)]
plugin-console: allow multiple instances to be loaded.
Krisztian Litkey [Tue, 12 Feb 2013 09:51:13 +0000 (11:51 +0200)]
build-sys: switched gen-linker-script to ctagsless version.
Krisztian Litkey [Mon, 11 Feb 2013 17:45:41 +0000 (19:45 +0200)]
build-sys: removed remaining pre-generated linker scripts.
Krisztian Litkey [Mon, 11 Feb 2013 17:19:52 +0000 (19:19 +0200)]
common: properly include macros.h as needed.
Krisztian Litkey [Mon, 11 Feb 2013 17:14:48 +0000 (19:14 +0200)]
build-sys: use our collect-symbols to generate linker scripts.
The old ctags-based script has been saved as gen-linker-script.ctags.
If at the most inconvenient time SHTF really badly we should be able
to quickly revert to the old script.
Krisztian Litkey [Mon, 11 Feb 2013 14:04:21 +0000 (16:04 +0200)]
gen-linker-script: added -c option for compatibility with collect-symbols.
Krisztian Litkey [Mon, 11 Feb 2013 17:00:00 +0000 (19:00 +0200)]
collect-symbols: more/better diagnostic messages.
Krisztian Litkey [Mon, 11 Feb 2013 13:59:56 +0000 (15:59 +0200)]
collect-symbols: added -P (preprocessor) and -q (quiet) options.
Added the -P command line option to allow overriding the default
preprocessor command (gcc). Also added a -q option to allow easier
backward compatibility with the original gen-linker-script script.
Verbosity now defaults to 1 and can be decreased using the -q option.
Krisztian Litkey [Mon, 11 Feb 2013 13:52:17 +0000 (15:52 +0200)]
collect-symbols: default to mrp_/_mrp prefix.
Krisztian Litkey [Thu, 13 Dec 2012 13:11:17 +0000 (15:11 +0200)]
collect-symbols: more diagnostic messages.
Krisztian Litkey [Thu, 13 Dec 2012 13:03:15 +0000 (15:03 +0200)]
collect-symbols: ignore forward declarations and symbols from foreign files.
Krisztian Litkey [Mon, 10 Dec 2012 20:27:22 +0000 (22:27 +0200)]
utils: added collect-symbols in an attempt to eliminate depending on ctags.
collect-symbols is a primitive parser that tries to understand just enough
of (preprocessed) C that it can extract symbols exported from header files.
Krisztian Litkey [Mon, 11 Feb 2013 13:31:29 +0000 (15:31 +0200)]
console: removed console plugin from the old location.
Hmm... actually I'm not quite sure how I ended up having to do
this. I did a git mv of the console plugin from the old to the new
location. Maybe I should've included in the accompanying post-move
commit _both_ the old and the new paths. Go figure...
Krisztian Litkey [Mon, 11 Feb 2013 11:51:14 +0000 (13:51 +0200)]
console: auto-grow web console input area as needed.
Krisztian Litkey [Mon, 11 Feb 2013 11:27:47 +0000 (13:27 +0200)]
websocket: exposed wsl_server_http_file.
Krisztian Litkey [Fri, 8 Feb 2013 21:19:59 +0000 (23:19 +0200)]
wrt-resource: resource-api.js typo fix.
Krisztian Litkey [Fri, 8 Feb 2013 21:17:05 +0000 (23:17 +0200)]
console: added websocket support, PoC web console.
Krisztian Litkey [Thu, 7 Feb 2013 10:29:25 +0000 (12:29 +0200)]
common: support for partial strings.
Krisztian Litkey [Tue, 5 Feb 2013 17:55:40 +0000 (19:55 +0200)]
resource-wrt: (embarrassing) resource test audio hack.
Krisztian Litkey [Tue, 5 Feb 2013 17:51:42 +0000 (19:51 +0200)]
resource-wrt: basic support for serving HTTP content (javascript libs).
Krisztian Litkey [Tue, 5 Feb 2013 17:38:57 +0000 (19:38 +0200)]
websockets: configurable limited HTTP content serving over transports.
It is now possible to serve content over HTTP on a websocket transport.
This is primarily intended to allow handing out javascript libraries that
interface the actual service exposed over the same websocket transport.
The javascript library can hide the dirty details of the underlying
communication protocol and present a more conventional and user-friendly
javascript API. By serving the interface library on demand from the same
transport as the service itself, the protocol can be freely reworked
behind the scenes, ideally keeping high-level API intact, without having
to worry about compatibility issues between the javascript library and
the protocol being used. In a way the library is an agent pushed by the
protocol implementation to the client...
Krisztian Litkey [Tue, 5 Feb 2013 17:37:33 +0000 (19:37 +0200)]
websockets: HTTP req. completion callback, preliminary SSL support.
Janos Kovacs [Sat, 2 Feb 2013 01:30:11 +0000 (03:30 +0200)]
resource: update resource user tables even if no event handler specified
Janos Kovacs [Sat, 2 Feb 2013 00:54:37 +0000 (02:54 +0200)]
configuration: add 'pid' attribute to 'audio_playback' and 'audio_recording'
Janos Kovacs [Sat, 2 Feb 2013 00:49:56 +0000 (02:49 +0200)]
resource-native: fix uninitialized attribute terminating element
Janos Kovacs [Fri, 1 Feb 2013 20:17:26 +0000 (22:17 +0200)]
Merge branch 'master' of https://github.com/otcshare/policy-internal
Janos Kovacs [Fri, 1 Feb 2013 18:11:09 +0000 (20:11 +0200)]
configuration: various fixes in the LUA config file
- add 'interrupt' application class
- add 'policy' attribute to 'audio_playback' resource
- add 'role' and 'policy' attributes to 'audio_recording' resource
- make 'audio_recording' nonshareable
- try-load the resource-dbus module instead of load
Krisztian Litkey [Fri, 1 Feb 2013 19:29:26 +0000 (21:29 +0200)]
build-sys: fix to compile again without websockets.
Krisztian Litkey [Fri, 1 Feb 2013 19:28:47 +0000 (21:28 +0200)]
dbus-transport: get rid of a warning on the cleanup-path.
Janos Kovacs [Fri, 1 Feb 2013 18:01:17 +0000 (20:01 +0200)]
resource-native: add RESPROTO_RSETFLAG_AUTOACQUIRE
Janos Kovacs [Fri, 1 Feb 2013 16:05:29 +0000 (18:05 +0200)]
resource-native: add RESPROTO_RSETFLAG_NOEVENTS
Krisztian Litkey [Fri, 1 Feb 2013 16:43:46 +0000 (18:43 +0200)]
resource-wrt: added forgotten header.
Krisztian Litkey [Fri, 1 Feb 2013 16:40:56 +0000 (18:40 +0200)]
common: updated linker script.
Krisztian Litkey [Fri, 1 Feb 2013 16:38:46 +0000 (18:38 +0200)]
Merge branch 'websocket-transport'
Krisztian Litkey [Fri, 1 Feb 2013 16:31:40 +0000 (18:31 +0200)]
resource-wrt: added resource-api.js and resource-test.js.
Krisztian Litkey [Fri, 1 Feb 2013 16:30:08 +0000 (18:30 +0200)]
resource-wrt: error fields are 'error', and 'message'.
Krisztian Litkey [Thu, 31 Jan 2013 15:32:37 +0000 (17:32 +0200)]
common: crash-fix: reset destroyed debug rule tables to NULL after reset.
Janos Kovacs [Wed, 30 Jan 2013 00:28:04 +0000 (02:28 +0200)]
resource: add resource user tables
Krisztian Litkey [Tue, 29 Jan 2013 21:54:21 +0000 (23:54 +0200)]
websockets: added support for pure HTTP websockets and file serving.
This patch adds support for pure HTTP sockets. Because connection
establishment is tied to websocket handshaking in libwebsockets, a
considerable amount of extra gymnastics is needed to get pure HTTP
clients, which don't handshake, be symmetric to genuine websocket
clients which do handshake.
We need to emulate the connection establishment event ourselves on
demand when the first HTTP content request comes in from a pure
HTTP client. Additionally we also need to handle the mapping from
libwebsockets ws's to our wsl_sck_t's differently because for pure
HTTP clients libwebsockets refuses to allocate user data even if
the registered user data size is non-zero for protocol 0. Pfoof...
Krisztian Litkey [Mon, 28 Jan 2013 21:58:20 +0000 (23:58 +0200)]
resource-wrt: correctly delay and force mask bits into first event.
Krisztian Litkey [Sun, 27 Jan 2013 21:40:24 +0000 (23:40 +0200)]
resource-wrt: added resource attributes to events.
Krisztian Litkey [Sat, 26 Jan 2013 18:48:23 +0000 (20:48 +0200)]
resource-wrt: implemented basic request and event handing.
Krisztian Litkey [Tue, 29 Jan 2013 13:56:06 +0000 (15:56 +0200)]
resource: export max. number of attributes in a macro.
Krisztian Litkey [Sat, 26 Jan 2013 20:16:01 +0000 (22:16 +0200)]
common: JSON fixes, more convenience macros, lookup failure reason in errno.
Krisztian Litkey [Sat, 26 Jan 2013 19:33:22 +0000 (21:33 +0200)]
resource-native: added console command for showing all resource definitions.
Krisztian Litkey [Sat, 26 Jan 2013 18:47:53 +0000 (20:47 +0200)]
websockets: make more explicitly sure we default to sending in text mode.
Otherwise decoding messages in the web runtime/a browser becomes a PITA.
Krisztian Litkey [Sat, 26 Jan 2013 18:46:49 +0000 (20:46 +0200)]
websockets: use JSON for websocket transports in custom mode.
Krisztian Litkey [Sat, 26 Jan 2013 18:44:52 +0000 (20:44 +0200)]
common: added custom transport mode support (custom encoding/decoding).
Krisztian Litkey [Sat, 26 Jan 2013 14:20:07 +0000 (16:20 +0200)]
common: JSON fixes, allow length to be passed to parser.
Krisztian Litkey [Sat, 26 Jan 2013 12:06:17 +0000 (14:06 +0200)]
common: transport mode renamed: s/CUSTOM/DATA/g.
Krisztian Litkey [Sat, 26 Jan 2013 11:39:36 +0000 (13:39 +0200)]
resource-wrt: added WRT resource plugin skeleton.
Krisztian Litkey [Sat, 26 Jan 2013 11:30:27 +0000 (13:30 +0200)]
common: added websocket transport setopt interface.
Krisztian Litkey [Sat, 26 Jan 2013 11:29:34 +0000 (13:29 +0200)]
common: added websocklib write mode setting interface.
Krisztian Litkey [Sat, 26 Jan 2013 11:28:22 +0000 (13:28 +0200)]
common: added transport setopt interface.
Krisztian Litkey [Fri, 25 Jan 2013 14:24:05 +0000 (16:24 +0200)]
websockets: always run the low-level transport in framed mode.
Krisztian Litkey [Fri, 25 Jan 2013 14:21:51 +0000 (16:21 +0200)]
common: added functions for querying fragbuf state.
Krisztian Litkey [Thu, 24 Jan 2013 20:40:30 +0000 (22:40 +0200)]
websockets: don't hardcode framed reassembly, check the protocol descriptor.
Krisztian Litkey [Thu, 24 Jan 2013 18:09:11 +0000 (20:09 +0200)]
websockets: try to reject pure HTTP clients/connections for now.
Krisztian Litkey [Thu, 24 Jan 2013 18:07:50 +0000 (20:07 +0200)]
common: changed stream-transport to use fragbuf.
Krisztian Litkey [Thu, 24 Jan 2013 18:06:35 +0000 (20:06 +0200)]
console-client: saner command-line processing.
Krisztian Litkey [Thu, 24 Jan 2013 18:05:29 +0000 (20:05 +0200)]
common: added fragbuf trim and a check for uninitialized pull.
Krisztian Litkey [Thu, 24 Jan 2013 17:49:03 +0000 (19:49 +0200)]
console-client: added local Makefile.
Krisztian Litkey [Thu, 24 Jan 2013 16:33:02 +0000 (18:33 +0200)]
common/transport: separate mode bits from flags.
Krisztian Litkey [Thu, 24 Jan 2013 16:31:53 +0000 (18:31 +0200)]
domain-control: get rid of a few unused var warnings.
Krisztian Litkey [Thu, 24 Jan 2013 15:55:15 +0000 (17:55 +0200)]
common: added API for basic JSON object manipulation.
Although we do use json-c, we don't want direct json-c dependency
sneak in and spread all over the codebase. Therefore we define a
layer on top of it which will also hopefully provide a confined
space to patch things up if we're not happy with the underlying
interfaces.
Krisztian Litkey [Tue, 22 Jan 2013 14:53:17 +0000 (16:53 +0200)]
plugin-console: updated debug info.