Krzysztof Dynowski [Thu, 25 Jun 2015 08:52:35 +0000 (10:52 +0200)]
Wrapper: send/recv socket fd - based on public domain code
[Bug/Feature] Protex reported copy of code from LXC sources
[Cause] Copied from vasum old api
[Solution] Follow public domain examples from "Unix Network Programming"
[Verification] Next protex report
Change-Id: I13163a3e0ef68d816ad194e515cab28629a7291f
Lukasz Kostyra [Tue, 23 Jun 2015 09:28:51 +0000 (11:28 +0200)]
Fix Klocwork issues
[Bug] Issues reported by Klocwork
[Cause] N/A
[Solution] N/A
[Verification] Build, install, run tests
Change-Id: I745cccedceff96fc3b1f475da4308f17775a6d24
Krzysztof Dynowski [Fri, 19 Jun 2015 12:49:30 +0000 (14:49 +0200)]
Check vasum runtime - rename vasum-check-env to vasum-check-config
[Bug/Feature] naming convention
[Cause] N/A
[Solution] rename
[Verification] N/A
Change-Id: I6fb89a9378da7d4c04c0cae74935fdf67df5d3d6
Lukasz Kostyra [Tue, 16 Jun 2015 10:56:18 +0000 (12:56 +0200)]
Finish CreateFile API
[Feature] N/A
[Cause] Missing API
[Solution] Add missing functions in ZonesManager and in Communication
[Verification] Build, install, run tests
Change-Id: I417e1deeca2effcdb772189045263d0c9dd22de7
Dariusz Michaluk [Tue, 16 Jun 2015 12:39:42 +0000 (14:39 +0200)]
Add wrapper for lxc-fedora template
[Feature] Add wrapper for lxc-fedora template
[Cause] N/A
[Solution] N/A
[Verification] Build, create/start/shutdown/destroy zone.
Change-Id: Iaa071f19dedfb7406d576858d8c7be2600b1e077
Dariusz Michaluk [Thu, 18 Jun 2015 07:43:58 +0000 (09:43 +0200)]
Don't print LOGS messages when log level is greater than TRACE
[Bug] LOGS messages was always printed
[Cause] N/A
[Solution] N/A
[Verification] Build, run `vasum-server -r` and `vasum-server -r -l TRACE`
Change-Id: Iec4fdd5d40a3920a51afae0a687387cb71b85ea2
Jan Olszak [Wed, 17 Jun 2015 11:25:08 +0000 (13:25 +0200)]
Vasum's logo and icons
[Bug] N/A
[Cause] N/A
[Solution] N/A
[Verification] N/A
Change-Id: I65f0288aa398674b4c1307f9f52255218caf7922
Mateusz Malicki [Tue, 9 Jun 2015 14:14:42 +0000 (16:14 +0200)]
Remove HostIpcConnection class
[Bug] Unnecessary HostIpcConnection class (ipc wrapper)
[Cause] N/A
[Solution] N/A
[Verification] run ClientSuite tests
Change-Id: Ic2a3973593e3bec1d64715976c44ec460f66ee21
Mateusz Malicki [Wed, 3 Jun 2015 13:58:18 +0000 (15:58 +0200)]
Add vsm_get_event_fd and vsm_enter_eventloop
[Feature] Provide possibility to implement custom event loop for
user of vasum client library
[Cause] Integration with other services
[Solution] Possibility to fetch event fd and run event loop
[Verification] run ClientSuite tests
Change-Id: Ic47e5de8bfd09889330d97d35d4c9ef47f238953
Jan Olszak [Mon, 8 Jun 2015 14:17:16 +0000 (16:17 +0200)]
Create File in LxcZone
[Feature] Create files in zones
Pass file descriptors to those files
Api definition
[Cause] N/A
[Solution] N/A
[Verification] Build, run all tests
Change-Id: I9780b8922fac2548bae642b0e732dd96998996ab
Lukasz Pawelczyk [Mon, 15 Jun 2015 11:52:25 +0000 (13:52 +0200)]
Unlock the latch even in the case of an exception
[Feature] N/A
[Cause] If an exception is thrown during execute() the calling
thread's latch will never be unlocked.
[Solution] Unlock the latch after the whole try/catch.
[Verification] Built, installed, run tests
Change-Id: I2891d83f4f3459a2d2d60cdc4d2986e37894c959
Krzysztof Dynowski [Wed, 3 Jun 2015 12:45:26 +0000 (14:45 +0200)]
Check vasum runtime environment, provide utility to check kernel config
[Bug/Feature] check vasum enviroment and kernel config
[Cause] N/A
[Solution] server option to check runtime, script based on lxc-checkconfig
[Verification] Build, install on target, run server and script
Change-Id: I28b6982694e7918cad31e59cee35b5872e554246
Lukasz Pawelczyk [Wed, 10 Jun 2015 16:27:02 +0000 (18:27 +0200)]
Make all the API calls queue together so we guarantee order
[Bug] Some API calls were async hence the sync ones could have
been run before them. There was no guarantee for the
calls to be ordered the way they've been requested.
[Cause] N/A
[Solution] Add sync calls to the same queue as the async ones so we
can guarantee their order of execution.
[Verification] Built, installed, run tests.
Change-Id: Iab59552d46689fb86576539012004107f4e675b3
Lukasz Kostyra [Wed, 10 Jun 2015 11:25:25 +0000 (13:25 +0200)]
Remove ZoneAdmin class
[Feature] Removed ZoneAdmin class
[Cause] Unneeded layer between Zone class and LXC Zone
[Solution] Remove ZoneAdmin class, move its functionality to Zone class
[Verification] Build, install, run tests
Change-Id: Id539ee2596c948f4cac6a0b9dff198d3d2b42c75
Lukasz Pawelczyk [Tue, 9 Jun 2015 15:30:14 +0000 (17:30 +0200)]
Fix for responding to a first request after socket activation
[Bug] When socket activated the first request might not be
properly handled because all the callback might not have
registered yet.
[Cause] N/A
[Solution] Delayed handling requests until all the callbacks have
been registered.
[Verification] Built, installed, run tests.
Did several tries with triggering socket activation:
1. systemctl start vasum.service
2. vasum-cli create_zone test
3. systemctl stop vasum.service
4. vasum-cli get_zone_ids
5. observe no error and list of zones should show 'test'
6. goto 3
Change-Id: I6de9742959d32afe68f496246065d3befc823955
Mateusz Malicki [Wed, 10 Jun 2015 10:11:56 +0000 (12:11 +0200)]
Remove unused function
[Bug] Compile error
[Cause] capget is static unused function
[Solution] Remove capget
[Verification] Compile with clang
Change-Id: I3fb8e4b3de7f4bf4a02d3cb1c96009c3beb262c7
Lukasz Pawelczyk [Tue, 9 Jun 2015 13:18:29 +0000 (15:18 +0200)]
Fix bash completion in case of user grep color aliases
[Bug] Mitigate user grep aliases that use colors
[Cause] N/A
[Solution] Add --color=never to grep
[Verification] Checked that bash completion works
Change-Id: Ifffaf2e931f1cd573c6629a1932aca28b924509a
Lukasz Kostyra [Tue, 9 Jun 2015 08:55:03 +0000 (10:55 +0200)]
Fix CMake variables
[Bug] * systemd service/socket files should be in /usr/local/lib, while
compiled libraries should reside in /usr/local/lib64 on 64-bit
systems.
* Two sockets were created - one by systemd service, one by vasum
IPC mechanisms.
[Cause] N/A
[Solution] Rename vasum-ipc.socket to vasum.socket
Correct variables regarding library and systemd file locations
[Verification] Build, install, run tests, run vasum-cli, check file locations and
service files.
Change-Id: I54681eaebd00b1aec547617a2ea51b0675c24ec3
Lukasz Kostyra [Tue, 26 May 2015 06:52:19 +0000 (08:52 +0200)]
Remove useless callback layer from Host*Connection
[Bug] Host*Connection classes had redundant callback layer.
[Cause] N/A
[Solution] Make Host*Connection objects aware of ZonesManager.
Remove unneeded callbacks.
[Verification] For both with and without Dbus:
* Build
* Run tests
* Make sure, that vasum-cli works
Change-Id: I8fd76d279731efdf201e797f2ef7600aed355aaa
Dariusz Michaluk [Fri, 29 May 2015 12:44:12 +0000 (14:44 +0200)]
Various changes relating to build on Fedora Linux.
[Bug/Feature] Support different versions of json-c.
Unify installation paths.
Fix compiler warnings.
Support different platform type in RPM spec file.
Small changes in deamon and service configuration.
[Cause] N/A
[Solution] N/A
[Verification] Build, run tests, run server on Tizen and Fedora.
Select platform type with --define 'platform_type FEDORA or TIZEN'
Change-Id: I6ef85e9605d2069701ee68dd8e8946f0346387f5
Jan Olszak [Mon, 1 Jun 2015 14:11:54 +0000 (16:11 +0200)]
File descriptor passing via IPC
[Feature] FD passing via Unix socket
[Cause] N/A
[Solution] N/A
[Verification] Build, run all tests
Change-Id: I1683a7e99a104d5dbdd5c0c56913753c9bdd3cf2
Jan Olszak [Tue, 2 Jun 2015 12:16:43 +0000 (14:16 +0200)]
Removed Glib connected functions from API
[Feature] N/A
[Cause] N/A
[Solution] N/A
[Verification] Build, run all tests
Change-Id: I3fe5e789535fcb53ee5d223172cb63bd44fb962c
Jan Olszak [Wed, 27 May 2015 16:48:47 +0000 (18:48 +0200)]
Small documentation for github
[Feature] N/A
[Cause] N/A
[Solution] N/A
[Verification] N/A
Change-Id: Ia7beba020ae92619e3639ee70af65794d2b662a1
Jan Olszak [Wed, 27 May 2015 13:30:33 +0000 (15:30 +0200)]
Fix configuration script permissions
[Feature] N/A
[Cause] N/A
[Solution] LXC templates have x permission
[Verification] Build, run all tests
Change-Id: I6a2486a588f8a28dfe84f187a4889f0f9500e2a6
Krzysztof Dynowski [Mon, 25 May 2015 11:13:32 +0000 (13:13 +0200)]
Vasum wrapper #8: implement socket related functions, obsolete vasum-daemon
[Bug/Feature] socket not opens, rpm install conflict
[Cause] N/A
[Solution] #8 implement socket creation, etc.
[Verification] Build, install on target, check journal
Change-Id: I2c6dd5e40a08bda3722167c4e1f06b60bb53e7dc
Lukasz Kostyra [Wed, 6 May 2015 10:16:49 +0000 (12:16 +0200)]
Remove libcap_ng and replace it with syscalls
[Feature] libcap_ng is removed
[Cause] N/A
[Solution] Replace libcap_ng with syscalls
[Verification] Build, install, run vasum-server without root and check if all
needed capabilities were kept by the process.
Change-Id: Idab4c7b579c6541d941e8c9e9c792427428f8fe5
Mateusz Malicki [Tue, 19 May 2015 16:38:11 +0000 (18:38 +0200)]
Fix GetZoneIdByPidTestMultiple, GrantRevoke
[Feature] GetZoneIdByPidTestMultiple, GrantRevoke some times fails
[Cause] Timeout was too small
[Solution] Increase timeout
[Verification] Build, install, run tests
Change-Id: Id191c1a6443e19f729dfc90c9a3c8c34dc4166e3
Mateusz Malicki [Thu, 21 May 2015 15:25:22 +0000 (17:25 +0200)]
Fix SocketSuite/SystemdSocket
[Bug] Prevent from run vasum-socket-test.service in qemu
[Cause] N/A
[Solution] Remove ConditionVirtualization=no
[Verification] Build, install on emulator, run SocketSuite/SystemdSocket test
Change-Id: I4fc0c9da2a4ca55878acec6203caab3674d94d02
Krzysztof Dynowski [Wed, 20 May 2015 15:41:52 +0000 (17:41 +0200)]
Vasum wrapper #7, add functions introduced in last vasum old API, link to Ipc
[Bug/Feature] latest image not works with wrapper
[Cause] last vasum old API introduced new functions
[Solution] #7 implement those new functions
[Verification] Build, install on target, check journal
Change-Id: I95d46157d419e0886beb00574bc94a1bfe316677
Mateusz Malicki [Thu, 21 May 2015 15:05:16 +0000 (17:05 +0200)]
Fix SwitchToDefault and AllowSwitchToDefault
[Bug] SwitchToDefault and AllowSwitchToDefault some times fails
[Cause] Signal handler are not set
[Solution] Ensure signal handler propagate (wait)
[Verification] Build, install on emulator,
run ZonesManagerSuite/SwitchToDefault and
ZonesManagerSuite/AllowSwitchToDefault tests (multiple times)
Change-Id: I3c9c2549903cebcc30496af3ccb427c1186d1b23
Mateusz Malicki [Thu, 21 May 2015 14:12:53 +0000 (16:12 +0200)]
Fix IPCSuite/WriteTimeout
[Bug] IPCSuite/WriteTimeout some time fails
[Cause] To large write timeout and too small response time
- checking timeout when response has already been
callSync only sometimes takes into account the serialization time
[Solution] Increase response time. Wait for sending till timeout countdown start
[Verification] Build, install on emulator, run IPCSuite/WriteTimeout test (multiple times)
Change-Id: Ic9e814a0ae5cb85a769f0398d5126b0b67f5c626
Dariusz Michaluk [Wed, 20 May 2015 09:46:33 +0000 (11:46 +0200)]
Add vsm_get_zone_rootpath API function
[Bug/Feature] Introduce new API function: vsm_get_zone_rootpath
[Cause] N/A
[Solution] N/A
[Verification] Build, install, run tests
Change-Id: Ia4f9f6701f20d6a32878bf13c59a8ad9ade9a9bb
Mateusz Malicki [Wed, 20 May 2015 09:03:39 +0000 (11:03 +0200)]
Fix building on x86_64
[Bug] Removed unneeded cast
[Cause] Lose precision cast
[Solution] N/A
[Verification] Build on x86_64
Change-Id: I2302eaefed4f0c94f29ad94468ff9d83fa15166e
Mateusz Malicki [Wed, 20 May 2015 08:58:50 +0000 (10:58 +0200)]
Add libsystemd-daemon build dependencies
[Bug] LibIpc need libsystemd-daemon
[Cause] N/A
[Solution] N/A
[Verification] Build, install on target
Change-Id: I6da84631ed75e80d8e0f417dd4aacdc51f797a11
Lukasz Kostyra [Wed, 20 May 2015 09:30:54 +0000 (11:30 +0200)]
Fix critical bug in environment.cpp
[Bug] "Namespaced" word was misspelled in "passNamespacedFd" function declaration,
definition and usage. Assuming someone does not use syntax recognition,
it could case critical errors during compilation and a lot of confusion.
[Cause] Author of passNamespacedFd function made a typo.
[Solution] Replace "Nemaspaced" with correct version - "Namespaced".
[Verification] Build, install, run tests.
Change-Id: I3df106ee8e275210af43de572a9c69ba0a220a56
Krzysztof Dynowski [Mon, 18 May 2015 13:05:57 +0000 (15:05 +0200)]
Vasum wrapper #6, implement vsm_declare_*, add logs, missing functions
[Bug/Feature] dummy implementation of vsm_declare_link,vsm_declare_file,vsm_declare_mount
[Cause] N/A
[Solution] #6 implement vsm_declare_link,vsm_declare_file,vsm_declare_mount
[Verification] Build, install on target
Change-Id: I522233d4b02a9af8d2c282e6a04cd96be85920df
Dariusz Michaluk [Tue, 19 May 2015 12:33:35 +0000 (14:33 +0200)]
Fix ip command
[Feature] N/A
[Cause] N/A
[Solution] N/A
[Verification] Build, install, run server.
Change-Id: Ic28e6ea45c80fc48934ee911f7f5cee68cfcbb87
Dariusz Michaluk [Mon, 18 May 2015 14:05:25 +0000 (16:05 +0200)]
Replace brctl with ip (remove bridge-utils dependency)
[Feature] N/A
[Cause] N/A
[Solution] N/A
[Verification] Build, install, run server.
Change-Id: I8acbaff403d611df82bbebaef5d6281defb2acf8
Dariusz Michaluk [Wed, 13 May 2015 14:19:26 +0000 (16:19 +0200)]
Cleanup daemon and zones configuration
[Feature] Move unit tests configs to one directory.
Remove unnecessary unit tests configs.
Remove zoneTemplatePrefix from daemon config (zoneTemplateDir is used instead).
Rename some configs.
[Cause] N/A
[Solution] N/A
[Verification] Build, install, run tests, run server.
Change-Id: Iabed6b7bfc1999296bcea89269195867d804c9ac
Mateusz Malicki [Thu, 14 May 2015 12:32:52 +0000 (14:32 +0200)]
libIpc separated from vasum #2/2
[Feature] libIpc separated from vasum;
[Cause] N/A
[Solution] Some header files from utils are copied to libIpc-devel rpm package
(they can conflict with libSimpleDbus-devel header files)
[Verification] Build, install, run tests
Change-Id: Ic89a6e1d2a7a4cbb48112eef226b11cd10eb7987
Mateusz Malicki [Thu, 14 May 2015 10:31:27 +0000 (12:31 +0200)]
libIpc separated from vasum #1 (code refactor)
[Feature] Code refactor
a) moved vasum::utils namspace to utils namespace
b) moved vasum::ipc namespace to ipc namespace
c) moved vasum::epoll namespace to ipc::epoll namespace
d) moved common/epoll source dir to common/ipc/epoll
e) moved UtilsException to utils namespace
f) moved getSystemErrorMessage to utils/exception.hpp
[Cause] N/A
[Solution] N/A
[Verification] Build, install
Change-Id: I2cda58decfdb30ec9a27f7cb65940ae8dbc7edf3
Krzysztof Dynowski [Wed, 13 May 2015 13:32:25 +0000 (15:32 +0200)]
Vasum wrapper #5, fix exported function list
[Bug/Feature] exported funcs not visible
[Cause] missing API keyword in declaration
[Solution] #5 add API keyword
[Verification] Build, build old clients, install on target
Change-Id: Idd408bb59f9421d43b153117aa3d825610722283
Dariusz Michaluk [Wed, 13 May 2015 11:56:12 +0000 (13:56 +0200)]
Fix vsm_create_zone timeout
[Feature] Greater timeout for vsm_create_zone
[Cause] Timeout was too small
[Solution] N/A
[Verification] Start vasum on odroid, create zone
Change-Id: Ic9015f7987c986267d47b5ce55d04a9749baf85c
Dariusz Michaluk [Tue, 12 May 2015 14:19:01 +0000 (16:19 +0200)]
Rename all not associated with LXC stuff.
[Bug/Feature] Rename all not associated with LXC stuff.
[Cause] N/A
[Solution] N/A
[Verification] Build, install, run tests.
Change-Id: I40bf4156e5148dc3a6f3d81bc2e7edfe81c56596
Krzysztof Dynowski [Tue, 12 May 2015 13:05:13 +0000 (15:05 +0200)]
Vasum wrapper #4, cleanup
[Bug/Feature] Cleanup folder structure
[Cause] wrapper mixed with client
[Solution] #4 move wrapper sources to separate folder
[Verification] Build, build old clients
Change-Id: I467e12d996e2c23ce0e46182c7e3d74ea2943ada
Krzysztof Dynowski [Tue, 12 May 2015 07:18:14 +0000 (09:18 +0200)]
Vasum wrapper #3, fixes, API update
[Bug/Feature] Old vasum client not compiling with wrapper
[Cause] missing struct defs
[Solution] #3 update wrapper API (use correct vasum.h)
[Verification] Build, build old clients
Change-Id: I97f21d77ed6b56d4e046c577521f839b74c31779
Dariusz Michaluk [Mon, 11 May 2015 14:22:53 +0000 (16:22 +0200)]
Cleanup RPM spec file. Fix RPMLINT errors.
[Bug/Feature] Cleanup RPM spec file. Fix RPMLINT errors.
[Cause] N/A
[Solution] N/A
[Verification] Build, install, uninstall.
Change-Id: I063dd412b1999b9cda5e2cdf3d62ee2282abca1b
Mateusz Malicki [Wed, 6 May 2015 09:38:03 +0000 (11:38 +0200)]
Client timeout fixes: vsm_start_zone, vsm_shutdown_zone, vsm_lock_zone
[Feature] Greater timeout for vsm_start_zone, vsm_shutdown_zone,
vsm_lock_zone, vsm_destroy_zone
[Cause] Timeout was too small
[Solution] N/A
[Verification] Start vasum on odroid, start zone, lock zone,
shutdown zone, destroy zone
Change-Id: I22c080565736abeb95a1e57653777c7d0863c7b3
Mateusz Malicki [Mon, 11 May 2015 10:28:55 +0000 (12:28 +0200)]
Doxygen fixes
[Bug] Doesn't compile with clang
[Cause] Doxygen parse errors
[Solution] Fix doxygen comments
[Verification] Compile with clang 3.5.1
Change-Id: Ifa43326293b27ad45c2f3e217f4c09d175cc5c15
Mateusz Malicki [Mon, 11 May 2015 08:57:29 +0000 (10:57 +0200)]
Removed unnecessary debug messages logging
[Bug] Unnecessary debug messages
[Cause] Listening to signals from all the dbus buses
[Solution] Listen on only one dbus interface
[Verification] Build with DEBUG, run on odroid. There shouldn't be
debug messages about received signals from external services
Change-Id: I9096b581d970da5a6bd18beca5fa8d13688ab875
Krzysztof Dynowski [Sun, 3 May 2015 10:10:17 +0000 (12:10 +0200)]
Vasum client wrapper epoch fix, remove unwanted logging
[Bug/Feature] Missing epoch in spec, too many logging messages
[Cause] N/A
[Solution] Add epoch, remove unwanted logging
[Verification] Build, install on target, check journal
Change-Id: Ie18565a52e2d0fbf6e2089c3c122a30c5bd1e6e1
Krzysztof Dynowski [Tue, 21 Apr 2015 14:54:03 +0000 (16:54 +0200)]
Vasum Wrapper: wrap old api client library #2
[Bug/Feature] Old API wrapper
[Cause] wrap to vasum lib
[Solution] #2 binary compatible wrapper
[Verification] Build, install on target, check journal
Change-Id: Ifadee97d41189937aacc1723f2890bb5904c6851
Mateusz Malicki [Wed, 29 Apr 2015 10:49:46 +0000 (12:49 +0200)]
Remove strerror usage
[Bug] strerror isn't thread-safe
[Cause] Thread usage
[Solution] Replaces all strerror with strerror_r
[Verification] Build, run test
Change-Id: I9fc5e84da011d80af7fb7a7877fe868e8e300ea9
Mateusz Malicki [Tue, 5 May 2015 15:44:08 +0000 (17:44 +0200)]
Listen on dbus and ipc socket at the same time
[Feature] Possibility to handle ipc and dbus requests without recompiling the code.
To build without dbus add --define 'without_dbus ON' to gbs arguments
[Cause] N/A
[Solution] N/A
[Verification] Build with --define 'without_dbus ON' and without it,
run tests for each build, check if server starts
Change-Id: Ibd00485c4b3a6451a1cb7046f3488ff77150b3ea
Dariusz Michaluk [Mon, 20 Apr 2015 13:21:39 +0000 (15:21 +0200)]
Create libLogger, libSimpleDbus, libConfig packages.
[Bug/Feature] Create libLogger, libSimpleDbus, libConfig packages.
[Cause] N/A
[Solution] N/A
[Verification] Build, install, run tests, run server.
Change-Id: Iab8c507315f6534ffd11e9f664e017ab45d7e94e
Signed-off-by: Dariusz Michaluk <d.michaluk@samsung.com>
Mateusz Malicki [Mon, 27 Apr 2015 09:12:06 +0000 (11:12 +0200)]
Remove zone-host connection
[Feature] No dbus connection with zone
[Cause] N/A
[Solution] Remove code responsible for zone connection
[Verification] Build with and without DBUS_CONNECTION macro, run tests for each build
(NOTE: ClientSuite/NotRunningServer will fail)
Change-Id: Ida474fba31111eb431ddc97c4bc3def1eeb932c7
Dariusz Michaluk [Mon, 4 May 2015 15:33:28 +0000 (17:33 +0200)]
Remove libvirt code
[Bug/Feature] N/A
[Cause] N/A
[Solution] N/A
[Verification] N/A
Change-Id: Ic288d52a0408d17a6b898d7ab96ef9ed116b4af5
Lukasz Kostyra [Mon, 27 Apr 2015 11:47:31 +0000 (13:47 +0200)]
Make tests independent from running Vasum server instance
[Bug] Running tests when Vasum server was up caused "Connection
refused" error in vasum-cli.
[Cause] Unit tests used vasum-ipc.socket, which overriden the
connection between CLI and Vasum server.
[Solution] Separate unit-tests IPC socket from Vasum server socket.
Unit-tests now create and use their own socket:
vasum-ipc-unit-tests.socket
[Verification] Build, install, run Vasum service, run all tests.
Ensure that CLI works after tests finish running.
Change-Id: Ic94500b743e990273361d85dffecfbe17ddc0347
Krzysztof Dynowski [Fri, 24 Apr 2015 10:51:19 +0000 (12:51 +0200)]
Vasum Wrapper: wrap old api client library #1
[Bug/Feature] Old API wrapper
[Cause] wrap to vasum lib
[Solution] #1 add copy of old API headers
[Verification] Build
Change-Id: I00b7c8cb102bbc30503be37611ffd3dd3a997a4f
Mateusz Malicki [Tue, 21 Apr 2015 11:28:19 +0000 (13:28 +0200)]
Rename: DispalyOff to SwitchToDefault, ZoneDbusState to ZoneConnectionState (switch to IPC #4)
[Feature] Rename: DispalyOff to SwitchToDefault, ZoneDbusState to
ZoneConnectionState (with related types and variables)
[Cause] Switching from Dbus to IPC
[Solution] N/A
[Verification] Build, install, run tests
Change-Id: Ibc331cd05d0f4b5d62400f449efd996268b91456
Mateusz Malicki [Wed, 22 Apr 2015 16:29:57 +0000 (18:29 +0200)]
Prevent from server termination after SIGPIPE
[Bug] Server killed after unexpected ipc client disconnect
[Cause] Writing to a disconnected socket causes the SIGPIPE
[Solution] Block signal
[Verification] N/A
Change-Id: I27d50be0279c87894acff74627b6385dff72b762
Mateusz Malicki [Wed, 22 Apr 2015 16:48:07 +0000 (18:48 +0200)]
Fix doxygen comment
[Bux] Can't compile with clang 3.6
[Cause] Bad format of doxygen comment
[Solution] N/A
[Verification] Compile with clang.
Change-Id: I7dc296317bf8c380faf4ea27321f58cb477d6f33
Mateusz Malicki [Wed, 22 Apr 2015 12:43:51 +0000 (14:43 +0200)]
Prevent from inheriting fd by zones
[Bug] Opened ipc socket are inherited by lxc proces
[Cause] fork and exec copies fds
[Solution] Set FD_CLOEXEC on ipc fd
[Verification] N/A
Change-Id: I1d2af18bbbab3be5df292770537a398ee7b47b53
Dariusz Michaluk [Tue, 14 Apr 2015 15:36:19 +0000 (17:36 +0200)]
Add libSimpleDbus, libLogger, libConfig source code to Vasum.
[Feature] Add libSimpleDbus, libLogger, libConfig source code to Vasum.
[Cause] N/A
[Solution] N/A
[Verification] Build, install, run tests, run server.
Change-Id: I2466604ee744874237fb989695d4104d399cdca1
Signed-off-by: Dariusz Michaluk <d.michaluk@samsung.com>
Mateusz Malicki [Mon, 13 Apr 2015 13:05:24 +0000 (15:05 +0200)]
Host to host communication test fix (switch to IPC #3)
[Feature] Repaired tests that uses host to host communication
[Cause] Switching from Dbus to IPC
[Solution] Using IPCAccessory instead DbusAccessory
[Verification] run tests with Valgrind
Change-Id: Ia326bd98559691a7f5d61925760c811b0f5ea9a4
Mateusz Malicki [Thu, 9 Apr 2015 08:33:31 +0000 (10:33 +0200)]
Host to host communication through IPC (switch to IPC #2)
[Feature] Using IPC for host to host communication
[Cause] Switching from Dbus to IPC
[Solution] Using IPC in host and client
[Verification] run ClientSuite tests with Valgrind
Change-Id: I45bda31482fbf0a6a1dab7d14cc407bfd73a96c1
Dariusz Michaluk [Fri, 10 Apr 2015 13:08:30 +0000 (15:08 +0200)]
Zones stopped by default when Vasum is starting.
[Bug/Feature] Zones was always started.
[Cause] N/A
[Solution] N/A
[Verification] Build, install, run tests, run server.
Change-Id: I5ca9ad8bdedea43a409d8f1c9061447c6462c4cc
Signed-off-by: Dariusz Michaluk <d.michaluk@samsung.com>
Mateusz Malicki [Tue, 7 Apr 2015 13:41:58 +0000 (15:41 +0200)]
Client refactor (using libConfig, switch to IPC #1)
[Feature] Using libConfig for serialize parameters
[Cause] Switching from Dbus to IPC
[Solution] Using libConfig for serialize parameters
[Verification] run tests with Valgrind
Change-Id: I0562037cfc5b78b53024d0021ab74a0a1d3a3f3d
Dariusz Michaluk [Wed, 8 Apr 2015 11:36:17 +0000 (13:36 +0200)]
Update tizen common (with wayland) lxc template
[Bug/Feature] Adjust template to new platform image
[Cause] N/A
[Solution] N/A
[Verification] Build, install, run tests
Change-Id: If2771b8f39ca1422885fb241a7d7f0958b965065
Signed-off-by: Dariusz Michaluk <d.michaluk@samsung.com>
Lukasz Kostyra [Tue, 7 Apr 2015 08:54:00 +0000 (10:54 +0200)]
Optimize launchAsRoot when UID is 0
[Feature] Optimization in launchAsRoot function
[Cause] There is no need to fork when we are already launched as root
[Solution] Call func directly when UID is 0
[Verification] Build, install, run tests
Change-Id: I25453b18329d1c5f353e4303d82836943d19528b
Lukasz Kostyra [Tue, 7 Apr 2015 06:25:21 +0000 (08:25 +0200)]
Move shutdown timeout to Zone config
[Feature] Shutdown timeout is moved to Zone configuration file
[Cause] Shutdown timeout was a constant hardcoded into Zone Admin
[Solution] Move timeout for shutdown to Zone config file
[Verification] Build, install, run tests
Change-Id: Ie8dd1f81d6fd21d7685923c31361a86dde5c9a3d
Krzysztof Dynowski [Mon, 16 Feb 2015 18:43:29 +0000 (19:43 +0100)]
Cleaned integration tests, load daemon.conf as json
[Bug/Feature] Integration tests neglected, fix launchProc
[Cause] tests outdated
[Solution] update test scripts
[Verification] Build, install, run integrataion tests
Change-Id: I4c911d7e7842e96e0fe0716ecab0b03331032f06
Mateusz Malicki [Mon, 30 Mar 2015 13:37:40 +0000 (15:37 +0200)]
FIX: vsm_lookup_zone_by_id, vsm_zone_get_netdevs; test added
[BUG] Can't get return parameters from vsm_lookup_zone_by_id.
Segfault when calling zone_get_netdevs.
[Cause] Return type should by (siss) not ((siss)); parameters aren't set properly.
Wrong return type in vsm_zone_get_netdevs (NetDevList instead GetNetDevAttrs).
[Solution] Return type changed.
Added ClientSuite/LookupZoneById, ClientSuite/ZoneGetNetdevs tests.
[Verification] Run ClientSuite test
Change-Id: I56365571aef20ecf445b5a89b6edf94abd567a35
Mateusz Malicki [Wed, 25 Mar 2015 15:22:29 +0000 (16:22 +0100)]
Added netdev_down to cli and made some code cleanup (cli/client)
[Bug/Feature] Added netdev_down to cli and made some code cleanup (cli/client)
[Cause] N/A
[Solution] N/A
[Verification] Create netdev, turn it up and turn it down
Change-Id: I698de7ccd181d0d8adbb892facddb5d552d6aee4
Mateusz Malicki [Tue, 17 Mar 2015 14:55:16 +0000 (15:55 +0100)]
Possibility to remove ipv4/ipv6 addresses from interface
[Feature] Possibility to remove ipv4/ipv6 addresses from interface
[Cause] N/A
[Solution] Implemented: vsm_netdev_del_ipv4_addr, vsm_netdev_del_ipv6_addr
[Verification] Build, run test
Change-Id: If1e43c73f443e5480e5f1794a1d1f29fa78c3dd3
Jan Olszak [Mon, 16 Mar 2015 12:28:04 +0000 (13:28 +0100)]
Using libConfig structures for input in server
[Feature] Deserialization with libConfig
Uint test of libConfig
[Cause] N/A
[Solution] N/A
[Verification] Build, run tests, run tests with valgrind
Change-Id: I9c9dfd32bd31ddbde60f35c9317027f41c3faaa3
Signed-off-by: Piotr Bartosiewicz <p.bartosiewi@partner.samsung.com>
Signed-off-by: Jan Olszak <j.olszak@samsung.com>
Mateusz Malicki [Wed, 25 Mar 2015 13:46:14 +0000 (14:46 +0100)]
FIX: compile on x86_64, operator << instead + in log message.
[Bug/Feature] Doesn't compile on x86_84 (conversion warning),
operator << instead + in log message
[Cause] N/A
[Solution] N/A
[Verification] compile on x86_64 (f.e. tizenorg_common_x86_64_x11)
Change-Id: I51e51297eec860c65a19810ea1d4feead7c1d3a8
Lukasz Kostyra [Wed, 25 Mar 2015 10:57:30 +0000 (11:57 +0100)]
Cleanup test case names
[Feature] Renamed test case names
[Cause] Inconsistent test case names
[Solution] Rename tests, keep the naming consistent
[Verification] Build, install, run tests
Change-Id: I76da5f2bedcbe361ebcd5d4a612129a867599a16
Mateusz Malicki [Thu, 5 Mar 2015 16:04:04 +0000 (17:04 +0100)]
Get/set ipv4/ipv6 address, up/down interface
[Feature] Possibility to get/set ipv4/ipv6 address, up/down interface
[Cause] N/A
[Solution] Implemented: vsm_netdev_get_ipv4_addr, vsm_netdev_get_ipv6_addr,
vsm_netdev_set_ipv4_addr, vsm_netdev_set_ipv6_addr,
vsm_netdev_up, vsm_netdev_down,
vsm_lookup_netdev_by_name
[Verification] Build, install
1) run test
2) set interfaces attributes (up, down) through cli and check it
"lxc-attach -n zoneId --lxcpath=/tmp/ut-zones -- ip addr"
Change-Id: I42ffa7e4c8f8cf2e22171d95b62884a2317d1107
Piotr Bartosiewicz [Mon, 16 Mar 2015 15:14:54 +0000 (16:14 +0100)]
Epoll modifyFD method added. Some refactor.
[Bug/Feature] N/A
[Cause] N/A
[Solution] N/A
[Verification] Run tests
Change-Id: Idcba92d12a618a8095420f3c941a12d61aef1761
Mateusz Malicki [Tue, 3 Mar 2015 15:01:44 +0000 (16:01 +0100)]
Add destroyNetdev, createBridge and tests for netdev
[Feature] Add destroyNetdev, createBridge, CreateNetdevVethTest, CreateNetdevMacvlanTest
[Cause] N/A
[Solution] Netlink interface
[Verification] Build, run test
Change-Id: Iba17d864158d35d71d2fae83742ef13d729d5a7f
Mateusz Malicki [Mon, 2 Mar 2015 11:44:42 +0000 (12:44 +0100)]
Ability to fetch information from netlink (list netdev)
[Feature] Ability to fetch information from netlink, list netdevs
[Cause] N/A
[Solution] N/A
[Verification] Build, run test, run cli command (zone_get_netdevs)
Change-Id: I404f6c2c47b0d2882b94649c134981a09a978a52
Mateusz Malicki [Thu, 12 Mar 2015 14:42:08 +0000 (15:42 +0100)]
Added functions to file descriptor passing and joining to namespace
[Feature] Added functions to file descriptor passing and joining to namespace
[Cause] N/A
[Solution] N/A
[Verification] Build, run tests
Change-Id: I72ec4f65e469125d5add10cb87a6d044b4ff9b05
Jan Olszak [Tue, 10 Mar 2015 12:35:55 +0000 (13:35 +0100)]
IPC agnostic MethodResultBuilder
[Feature] ZoneManager and Zone doesn't know
which IPC mechanism is used.
[Cause] N/A
[Solution] N/A
[Verification] Build, run tests, run tests with valgrind
Change-Id: I852fa5ed3bcd105096cb7ca740f9e98fb8b6adba
Mateusz Malicki [Wed, 11 Mar 2015 11:57:02 +0000 (12:57 +0100)]
Complementing cli commands in bash
[Bug/Feature] Complementing cli commands in bash
[Cause] N/A
[Solution] N/A
[Verification] Check completion (you must first enable bash completion or
execute: source /etc/bash_completion.d/vasum-cli-completion.sh)
Change-Id: I256ed064a128f03874b2e4655ccb818058a13897
Piotr Bartosiewicz [Tue, 10 Mar 2015 11:01:48 +0000 (12:01 +0100)]
IPC works on epoll
[Bug/Feature] N/A
[Cause] N/A
[Solution] N/A
[Verification] Run tests
Change-Id: I6f6b5a7a70cecbecbdf0c502d0f8618577892a48
Dariusz Michaluk [Wed, 4 Mar 2015 13:28:11 +0000 (14:28 +0100)]
Fix building rpm packages.
[Bug/Feature] Not deleted configs after rpm packages erasing.
[Cause] Configs are not marked in spec file.
[Solution] Move configs to a single directory.
Mark all configs in spec file.
[Verification] Build, install, uninstall
Change-Id: I9728eb67e756ceca1d5cad8078d0040e7018975b
Signed-off-by: Dariusz Michaluk <d.michaluk@samsung.com>
Dariusz Michaluk [Wed, 4 Mar 2015 09:26:16 +0000 (10:26 +0100)]
Add timeout after zone start.
[Bug/Feature] Add timeout after zone start.
[Cause] N/A
[Solution] N/A
[Verification] Build, run server, run tests
Change-Id: Ie6adace3d36ad98756d8efc823a056356f41d02d
Signed-off-by: Dariusz Michaluk <d.michaluk@samsung.com>
Dariusz Michaluk [Tue, 3 Mar 2015 08:05:00 +0000 (09:05 +0100)]
Disable dbus integration.
[Bug/Feature] Disable dbus integration.
[Cause] It is not used yet. Server and tests require a different dbus policy user,
switching is inconvenient.
[Solution] N/A
[Verification] Build, run server, run tests
Change-Id: I4e28b3b21d5eac6d23462ba2c4eb32aa7e32d4ed
Signed-off-by: Dariusz Michaluk <d.michaluk@samsung.com>
Piotr Bartosiewicz [Mon, 9 Mar 2015 12:34:27 +0000 (13:34 +0100)]
Epoll refactor
[Bug/Feature] N/A
[Cause] N/A
[Solution] N/A
[Verification] Run tests
Change-Id: Iabb0557aa42ff09d0a2b3f9c36b451cf5fdad10f
Jan Olszak [Wed, 4 Mar 2015 16:54:51 +0000 (17:54 +0100)]
Coloring compiler's output
[Feature] N/A
[Cause] N/A
[Solution] N/A
[Verification] Build
Change-Id: Ie417e1b7db193798b1f560bac33475be94f1ad4e
Piotr Bartosiewicz [Mon, 2 Mar 2015 10:57:50 +0000 (11:57 +0100)]
Persistent state of zone
[Bug/Feature] Zone was always started after vasum restart regardless
of the zone state before restart
[Cause] N/A
[Solution] N/A
[Verification] Run tests. Run vasum, pause one container, restart
vasum, check this container is still paused. The same
test with stopped and started state.
Change-Id: I0426e3e4f2af9b2bc0c110a7702b9c742a2747e6
Mateusz Malicki [Thu, 19 Feb 2015 14:44:34 +0000 (15:44 +0100)]
Stubs for get/set ipv4/ipv6, destroy netdev and list netdev
[Feature] Stubs (cli, client, server) for get/set ipv4/ipv6,
destroy netdev and list netdev netdev
[Cause] N/A
[Solution] N/A
[Verification] Build, run cli commnads
Change-Id: Ia1dc21e5fb252b2f83d617abec785bce7d6ffc9e
Mateusz Malicki [Thu, 12 Feb 2015 15:39:58 +0000 (16:39 +0100)]
Creating netdev
[Feature] Filled stubs for creating netdev (create_netdev_phys,
create_netdev_macvlan, create_netdev_veth)
[Cause] N/A
[Solution] Manage netdev through netlink interface
[Verification] Build, install, run vasum-server,
create zone (vasum-cli create_zone zone1),
start zone (vasum-cli start_zone zone1),
move interface f.e. p2p1 to zone (vasum-cli create_netdev_phys zone1 p2p1)
enter to zone (lxc-console -n zone1 --lxcpath=/usr/local/share/.zones -t 0)
check interfaces (ifconfig -a)
do analogous for create_netdev_macvlan and create_netdev_veth
Change-Id: I299d3ebeb8f101a386f5b156dbe79d7779600ef6
Piotr Bartosiewicz [Mon, 23 Feb 2015 17:03:32 +0000 (18:03 +0100)]
Epoll wrapper, epoll dispatchers (glib and threaded)
[Bug/Feature] N/A
[Cause] N/A
[Solution] Epoll is the only way, using no additional threads, to
aggregate descriptors to one epoll descriptor.
[Verification] Run tests
Change-Id: I3863129a8b947c467615b2e9d352fce3bd1cda9a
Piotr Bartosiewicz [Thu, 26 Feb 2015 15:30:11 +0000 (16:30 +0100)]
Enable cpuQuota options, fix cpuQuota logic
[Bug/Feature] Options were disabled after migration from libvirt
[Cause] N/A
[Solution] N/A
[Verification] Run tests, run two containers use 100% cpu on first and
switch to second and check total cpu usage in host.
Change-Id: I6c79f639f7cf0def3ad0ea73550940d8f5edba9e
Lukasz Kostyra [Thu, 5 Feb 2015 07:57:28 +0000 (08:57 +0100)]
Add systemd socket support
[Feature] Systemd unit files for Vasum socket
[Cause] IPC works with Vasum socket
[Solution] Add required systemd unit files
[Verification] Build, install, run tests
Change-Id: I552010681204a61e873d419b430bab8556080345
Piotr Bartosiewicz [Thu, 19 Feb 2015 11:28:27 +0000 (12:28 +0100)]
Unify unit tests cleanup
[Bug/Feature] N/A
[Cause] N/A
[Solution] N/A
[Verification] Run tests
Change-Id: I2a49450b3991355656028194b14f9eae5a222456
Piotr Bartosiewicz [Wed, 18 Feb 2015 15:16:43 +0000 (16:16 +0100)]
Better exception testing
[Bug/Feature] N/A
[Cause] N/A
[Solution] N/A
[Verification] Run tests
Change-Id: I814deebc0f8e4fdecd5760eb2b1dce1fe6e7df15
Mateusz Malicki [Thu, 12 Feb 2015 10:43:56 +0000 (11:43 +0100)]
Stubs for creating netdev
[Feature] Stubs (cli, client, server) for creating netdev
[Cause] N/A
[Solution] N/A
[Verification] Build, run cli commnads
Change-Id: Ibf2631d0f6e42823793d3f5bd971586348811891