Commit graph

71 commits

Author SHA1 Message Date
Christian Glombek
51993b8990 Adds ENABLE_SETCAP build variable to avoid using env in build system.
Change-Id: Id38d2225238f8b3a48481a08e62cfa7544958cc9
Reviewed-on: https://gerrit.libreoffice.org/49097
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Reviewed-by: Andras Timar <andras.timar@collabora.com>
Tested-by: Andras Timar <andras.timar@collabora.com>
2018-02-04 22:27:09 +01:00
Jan Holesovsky
0039f3c041 Add run-strace target for easy stracing.
Change-Id: I554cfa3965784803430a4cc2c12e61002e2445cd
2018-01-26 20:40:17 +01:00
Andras Timar
a2e25cc7d3 Add PAM support
Possibilities are endless. With a simple /etc/pam.d/loolwsd config below,
the user which runs loolwsd ('lool' in production environment) can login
to admin console with normal linux password.

    auth       required     pam_unix.so
    account    required     pam_unix.so

Change-Id: I354a7e9b4705e8fe346d17d6b6041d1406198b37
Reviewed-on: https://gerrit.libreoffice.org/48307
Reviewed-by: Andras Timar <andras.timar@collabora.com>
Tested-by: Andras Timar <andras.timar@collabora.com>
2018-01-23 11:03:45 +01:00
Andras Timar
2fc03ffb9e add scripts/unocommands.py to tarball
Change-Id: I548ff5c076a66281497f419574e2a21aaf073e75
(cherry picked from commit ec80b91ca9bc7d4d469a786314f7223a6c329eb6)
2018-01-05 14:14:16 +01:00
Pranav Kant
193cb33afc Use ctags for emacs TAGS file too
So that we can use same arguments for both. `etags` binary is also
supplied on some systems by emacs-common package which doesn't
understand ctag like arguments. Best to use one program for all.

Change-Id: I22b57a43f7688c96c9e138e5783ee4157a34a172
2017-12-15 00:22:15 +05:30
Rene Engelhard
276e7d640f add missing kit/Delta.hpp to kit_header 2017-11-28 01:34:18 +01:00
Jan Holesovsky
783e3552c0 Support key logic in loolws + improvements in loolconfig.
To be able to set the support key directly from the command line, and to show
the option, etc.

Change-Id: Iac93bc47a6f4b9d5a5ad0ac8b06bda978e01b760
Reviewed-on: https://gerrit.libreoffice.org/43098
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
Tested-by: Michael Meeks <michael.meeks@collabora.com>
2017-10-06 11:37:18 +02:00
Michael Meeks
79053911fc Support key logic and verification.
Change-Id: Ie55150b99df3e80239236571af185502196ad3e9
Reviewed-on: https://gerrit.libreoffice.org/43097
Reviewed-by: Jan Holesovsky <kendy@collabora.com>
Tested-by: Jan Holesovsky <kendy@collabora.com>
(cherry picked from commit 56385cb8ac2a57af4eb70bc8bc7313a9299533c3)
Reviewed-on: https://gerrit.libreoffice.org/43099
2017-10-03 21:52:45 +02:00
Andras Timar
67ebb9a48e add test/WopiTestServer.hpp to Makefile.am
Change-Id: I9a4b10f0d1f12ed85d31f3dbbc1deb747ff35a2d
2017-09-27 16:37:30 +02:00
Miklos Vajna
3f24872971 clang-tidy: invoke this in parallel
The moreutils-parallel package provides this command (at least on
openSUSE).

Change-Id: I53ec59c2e886f651676f6e64a16215793a917b73
2017-08-16 17:02:04 +02:00
Miklos Vajna
ad8584f5d7 tools: initializer for base class XMLConfiguration is redundant, remove it
Also run the clang static analyzer on net/ by excluding test/, and not
explicitly listing all non-test directories.

Change-Id: Iac203f1cf9161da1c51501de8b0c3cc9dc6e2027
2017-06-22 09:03:54 +02:00
Henry Castro
c24585741d fix compilation errors with --disable-ssl option
Change-Id: I777f0ebf054db0a5fd2c64e6d56a222826b40045
2017-06-18 14:21:33 -04:00
Andras Timar
865cd4a79d loolnb was killed earlier
Change-Id: Ie4b1f3c890c59a8b9204af5a25842c74929ecad8
Reviewed-on: https://gerrit.libreoffice.org/38314
Reviewed-by: Andras Timar <andras.timar@collabora.com>
Tested-by: Andras Timar <andras.timar@collabora.com>
2017-06-06 13:11:10 +02:00
László Németh
51840fcb36 wsd: add test.hpp to dist tarball
Change-Id: I378fb4ac6db79f5ef661cfb8ecef2a7e5c10dfc5
2017-06-06 12:14:43 +02:00
Pranav Kant
9bd89e89c3 loolconfig: tool to generate admin password hash with PBKDF2
A normal usage to set the admin password would be like :

loolconfig set-admin-password --config-file ./loolwsd.xml

Other command line options can also be given, like --pwd-salt-length,
--pwd-hash-length, --pwd-iterations.

Change-Id: I2a6f8d25e068b53a3f945426f0779c8410b2c8ba
2017-05-25 01:18:31 +05:30
Michael Meeks
c04e4ffa16 loolnb - kill obsolete test app.
Change-Id: I5943cc0752f16d62d6eedf96351bb6f71a2311e6
2017-05-05 18:53:00 +01:00
Andras Timar
7c637d9b8a add loolwsd documentation to distribution
Change-Id: I18ebfff9eb4a87abd311086d6780514293ce6c7a
2017-05-04 11:54:33 +02:00
Michael Meeks
7f4f752667 Initial seccomp work.
Add a list of unhelpful looking system calls to improve containment.

Change-Id: I2e4bf3e0a6a752d427299728663d17120586bb10
2017-04-28 14:26:21 +01:00
Jan Holesovsky
848145503b Distribute the git hash for easier identification.
Change-Id: I57084231d0878de15b4b0478122f49e94af563bf
2017-04-28 11:54:38 +02:00
Michael Meeks
1c7f94045a Initial DelaySocket goodness. 2017-04-22 18:42:16 +01:00
Andras Timar
d0e6c1115b missing loolwsd.service from deb package
(cherry picked from commit fe62f43eb6622118c4f507b72234757b25d466f4)
2017-04-07 16:39:32 +02:00
Jan Holesovsky
4538ac9ffb Fix comment, we run the even the loolforkit under callgrind now.
Change-Id: Ic0357cb65d79af2473575a2248bfc5d86bce28ed
2017-04-06 10:25:19 +02:00
Jan Holesovsky
fa042ed0e3 Make the callgrinding possible again.
Change-Id: I9e8e0e3d088c4af29f2701a0318a508f14327fff
2017-04-06 10:22:38 +02:00
Jan Holesovsky
6e21b754ec Run fc-cache before launching loolwsd.
Otherwise the loolforkit startup can take too long with too many fonts.

Change-Id: Ibbffab223a70a34bdb993e3b69a5b3d971176a93
2017-04-05 15:39:57 +02:00
Jan Holesovsky
37387518f4 Suppress assert()'s in the production builds.
Change-Id: I2074ed335b7201337e6519440ff6bed1809be915
2017-04-05 12:03:33 +02:00
Jan Holesovsky
9371faaf43 Update the logging settings.
When callgrinding, we really don't want to measure the overhead of the logging
- disable it as much as reasonably possible.

And with 'make run' don't pollute the screen, because the instructions what to
do run away before one manages to read them :-)

Change-Id: I1f72e4a926b3b3c209f31ea257d77234fac255e0
2017-04-04 19:27:10 +02:00
Ashod Nakashian
66a76f644b wsd: enable logging with valgrind
Change-Id: I411f7de3d5764cd25af211f2dc77bf0e290adbc7
Reviewed-on: https://gerrit.libreoffice.org/36054
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2017-04-04 04:15:53 +00:00
Pranav Kant
453a452ff9 Makefile: Simplify and link zlib properly
Without this, online doesn't link, atleast for me. The problem seems to
be because in presence of target specific _LDFLAGS, AM_LDFLAGS is
ignored and it is only the latter where we are specifying ZLIB_LIBS.

Further, since the LDFLAGS values are same for all targets, we can
simplify here and rather use AM_LDFLAGS and remove all target specific
LDFLAGS.

Change-Id: I2f1c30c7f34b32c638a4ac60fab709b32f1e6c9a
Reviewed-on: https://gerrit.libreoffice.org/35959
Reviewed-by: pranavk <pranavk@collabora.co.uk>
Tested-by: pranavk <pranavk@collabora.co.uk>
2017-03-31 09:17:56 +00:00
Michael Meeks
ae0dba1088 Cleanup prctl / gettid system-call thrash on logging.
Makes the strace look much prettier.
2017-03-30 18:14:40 +01:00
Michael Meeks
a4ac00d854 Add zlib cflags and libs to configuration. 2017-03-30 12:09:12 +01:00
Andras Timar
11fc3a0d02 package debian/ files and make them generic
Change-Id: Ia060b7d83c659db0354a5a1438b12bebaee45e03
2017-03-20 23:29:16 +01:00
Andras Timar
271a4cce2f add loolwsd.spec to dist tarball
Change-Id: I919c5a1a41a16dfd1806390865ed840a652cf9e2
2017-03-20 23:29:15 +01:00
Andras Timar
2cf1f22439 Use LO_PATH instead of hardcoded path as config default
Change-Id: I0d6ce9e7938e2521e764978526fe2d9ce632c992
2017-03-20 23:29:14 +01:00
Michael Meeks
e7ebe0fdaa remove obsolete Poco headers, and Poco SSL pieces. 2017-03-16 18:03:23 +00:00
Andras Timar
8541cd1e46 add loolkitconfig.xcu to dist tarball
Change-Id: Icca000db16fca09ba2769dee8cb18e847496d48c
2017-03-14 16:04:10 +01:00
Andras Timar
15009c2a10 add ServerSocket.hpp to dist tarball
Change-Id: I7f6241094580dae2212dfdf01999abaeeb49cf1f
2017-03-14 15:40:16 +01:00
Andras Timar
5c94fa35c4 add LOOLWebSocket.hpp to dist tarball
Change-Id: I997290c8af437c06bcacca49dc167533ab7917cf
2017-03-14 15:16:54 +01:00
Michael Meeks
1f5b7b6def Include config layer to override kit config simply.
The config is read once during the forkit startup. Add a read-only
user configuration layer, and also disable config writing: no
writable user config.
2017-03-11 21:47:05 +00:00
Pranav Kant
eb9c0fa619 Do not create tags file for loleaflet
Change-Id: I0a2103bc4550d6deacddd1bfc07a23a3cf317d07
2017-03-10 17:29:44 +05:30
Jan Holesovsky
4ba2325c81 Move Replay.hpp to headers.
Change-Id: Id65e81ce2b8a9b77d910524a00d9f42164365ab2
2017-03-10 10:47:44 +01:00
Ashod Nakashian
76e96c92c8 nb: SocketPoll is now a thread object
Change-Id: I01d13292f0b97a9ebd1ccdef9e41fec46bfa0b11
2017-03-10 10:47:43 +01:00
Michael Meeks
20f15d4001 Switch Prisoner socket handling to use the SocketPoll.
Kills the Poco ThreadPool usage, and significantly improves debuggability.
2017-03-10 10:47:43 +01:00
Michael Meeks
fa6b756346 signal handling: keep track of all socket poll wakeups & wakeup.
Instead of waiting for polls to timeout; wake them up.
2017-03-10 10:47:42 +01:00
Ashod Nakashian
9bf8720d2b nb: SSL socket support in wsd
Change-Id: I21e8b2d04caf7da872fe07b4950b02a8c52a3552
2017-03-10 10:47:40 +01:00
Jan Holesovsky
a1a46c240e nb: Use the non-blocking socket in the loolwsd.
This so far only builds, but I did not even try to run it yet.

Change-Id: Iceacb5fc5c8994726508e8ea00bd495d758391a8
2017-03-10 10:47:39 +01:00
Jan Holesovsky
205a1453d3 nb: Moved the WebSocketHandler to an own header & cpp.
The cpp is there to keep the header free from the POCO dependency.

Change-Id: I2202c4ed403084ec1ed40001e10b1ec4fc226f7b
2017-03-10 10:47:39 +01:00
Ashod Nakashian
18b131f30d nb: more consistent filenames
Change-Id: I2f1ff0b18080d469dc68b75ea0d7b9ddf5ea7d57
2017-03-10 10:47:39 +01:00
Ashod Nakashian
fe5545d591 nb: websocket echo test
The new test sends data of of 1 byte to
N bytes and expects the exact same data
returned in response.

This tests both buffering sizes and
websocket frames.

Change-Id: Ic6232b4e899d82d90a0ee7c96e4852ffaaf8e958
Reviewed-on: https://gerrit.libreoffice.org/34441
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2017-03-10 10:47:38 +01:00
Ashod Nakashian
8dd115a419 nb: more SSL initialization
Multi-threading support.

Change-Id: I7233ca61f9a0dce5601b4de03a7ad3273acc0f3c
Reviewed-on: https://gerrit.libreoffice.org/34355
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2017-03-10 10:47:37 +01:00
Ashod Nakashian
62c4828af6 nb: add OpenSSL dependency and initialization
Change-Id: I0d369acbc95db5d2b678032632ac4edfa561cbad
Reviewed-on: https://gerrit.libreoffice.org/34354
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
2017-03-10 10:47:37 +01:00