Commit graph

270 commits

Author SHA1 Message Date
Tamás Zolnai
4df9fd41a3 Update test SVG
Change-Id: I55a3ae676c6eb71e8e34f98f3361f9046e0a4a2f
2018-12-07 12:39:27 +01:00
Tamás Zolnai
b34b1242d6 Remove unneeded include used for debugging only
Change-Id: I82efb9b6d0a0e6ffdca4b9205804446bc871ef84
2018-12-07 12:39:27 +01:00
Tamás Zolnai
31f99bf9f5 Introduce client-server message for requesting the selected shape as SVG
It works for Impress only now.

Change-Id: I130707d8e96e0c633f2531b1cb81ce74dc6ec6e1
2018-12-07 12:39:27 +01:00
Ashod Nakashian
33aff0ce61 wsd: utility to parse integer lists
A quite common logic that is best moved to a utility
and optimized for best performance.

Includes unit-tests.

Change-Id: Id63a388690c17355eb2fac529070c38e9b082fd0
2018-12-07 12:39:27 +01:00
Miklos Vajna
c04fd49d42 TileCacheTests: these writes are never read
They are written again inside the do { ... } while (...) which runs at
least once.

Change-Id: I9ff07d7cb68b73bccf1bd38490fcba615b87a6ba
2018-12-05 09:14:50 +01:00
Andras Timar
25a177db93 typo: capabilties -> capabilities
Change-Id: I44c84d01a2ef6addf7efd5a6cd7fc1778a752c4b
2018-11-30 14:50:15 +01:00
Miklos Vajna
84d224d995 test: no need to copy procEntry
Change-Id: Iac7bca9ebcf104975d01bcd1cdfe8e0f4d2a742e
2018-11-30 08:38:00 +01:00
Tomaž Vajngerl
73c8fa9d09 Extract Authorization out of Auth and put it into common
This is needed so we can use this inside ChildSession.

Change-Id: I88f2cc767412fd52dbb242938f0f9897d4277639
Reviewed-on: https://gerrit.libreoffice.org/63836
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Tested-by: Tomaž Vajngerl <quikee@gmail.com>
2018-11-29 21:47:13 +01:00
Miklos Vajna
54e4147887 httpwstest: 'emplace_back' is called inside a loop
Pre-allocate the vector capacity before the loop to avoid realloc waste.

Change-Id: I78370d79728ae66446d2b979d376cb50ba3ae864
2018-11-26 09:43:17 +01:00
Miklos Vajna
d52cf35418 MessageQueueBase: make members private
Change-Id: I65360bc23475b25b2c626ea75186e8863fc74b8f
2018-11-16 09:06:17 +01:00
Miklos Vajna
596f3d14db test: fix HTTPWSTest::testInactiveClient() 2018-11-13 09:12:03 +01:00
Michael Meeks
fa74404019 Add a time limit for badly behaved / huge document load / conversions.
Also improve debug printing of load times in dumpstate.

Change-Id: Ib3fd70dffb57588cd90bd928c4be9890cee8bc65
2018-11-08 01:27:40 +00:00
Tor Lillqvist
f8a0fb4c32 WaE: -Werror=unused-parameter
Change-Id: Icadfcb19ce1fff2b5009d42acf33297cda6e36f2
2018-11-01 21:34:16 +02:00
Tor Lillqvist
60ee631a9e More FakeSocket tests
Actually, I should expand on this and write a test that makes sure the
FakeSocket API semantics does in fact match that of the real socket
API... A fakefakesockettest. Later.

Change-Id: I5cf885a956d6d795976a4369448be04e88837c19
2018-11-01 16:52:06 +02:00
Tor Lillqvist
781162fddd Fix my misunderstanding of Cppunit exception use
I had no idea that the CPPUNIT_ASSERT* macros work by throwing
exceptions. They do, so one should thus not catch them, but let the
Cppunit code take care of that.

Also, make the tests a bit more specific and add some
fakeSocketAvailableDataLength() checks.

Change-Id: I9291822114331c21b774bb41116e8b2ff709dae2
2018-11-01 12:53:47 +02:00
Andras Timar
c50cd3b550 take hello-world.ods and hello-world.odp out of version control
Change-Id: I108e1a0e0981a50f35c7637f00fa15f8cf9d33c3
Reviewed-on: https://gerrit.libreoffice.org/62725
Reviewed-by: Andras Timar <andras.timar@collabora.com>
Tested-by: Andras Timar <andras.timar@collabora.com>
2018-11-01 11:39:43 +01:00
Andras Timar
455cd4092e chmod -x on test data files
Change-Id: I398d75b298c86a231a76b7903f792b886450b128
Reviewed-on: https://gerrit.libreoffice.org/62724
Reviewed-by: Andras Timar <andras.timar@collabora.com>
Tested-by: Andras Timar <andras.timar@collabora.com>
2018-11-01 11:39:30 +01:00
Tor Lillqvist
856965db9f Return correct exit value, 0 for success, 1 for failure
Change-Id: Ie3454cac318ce6a0e8c2c59ae9d3ae3c6658c0b8
2018-11-01 12:12:26 +02:00
Tor Lillqvist
3d408d4338 Actually run the fakesockettest
Sad that this Makefile.am is so complicated, and that this needs to be
added explicitly like this.

Change-Id: I8b1b25761eb723e124cab96479f49478d3a75194
2018-11-01 12:10:47 +02:00
Tor Lillqvist
02d3ac47ee Add a Cppunit test for the FakeSocket API
Based on Mobile/TestFakeSocket/TestFakeSocket/main.mm. Needs work,
does not really test the interesting semantic corner cases that have
been fixed only recently.

Change-Id: Ie2f3dbd2b478ab3acb4bfef0e0d3031c817d0f37
2018-11-01 11:51:34 +02:00
Tamás Zolnai
b4b0e9c6d4 Handle X-Forwarded-For with more secure
Check all pariticipating IPs to be allowed to use convert-to
functionality. In a simple use case it means the reverse-proxy's
and the actual client's IP.

Change-Id: I4ef9cb14a1c3003cba6c66f6e99d5b54b2c3b2b8
2018-10-25 10:48:52 +02:00
Tamás Zolnai
318f0629bb Handle X-Forwarded-For header for convert-to feature
Extract the client IP from the X-Forwarded-For value
and use that one to allow / deny the usage of convert-to
feature.

Change-Id: I363c0931df5a0538236cae12f943fffd65086ee6
2018-10-24 12:50:03 +02:00
Tamás Zolnai
4ff506425f Enable convert-to test
Change-Id: I7c2bf333bb4bcb803cd926bfb1d669f89d100615
2018-10-20 13:41:43 +02:00
Tamás Zolnai
ec65ecd0f1 Revert "Revert "Enable convert-to features for wopi hosts""
This reverts commit 343ba48d27.
2018-10-20 12:57:53 +02:00
Tamás Zolnai
343ba48d27 Revert "Enable convert-to features for wopi hosts"
This reverts commit 8dd28ed664.
2018-10-20 12:55:55 +02:00
Tamás Zolnai
683cedb17a Delta test: avoid dumping out useless data
Change-Id: I05bbd05b3ee1e0a5b0687b7b6c981938a1493946
2018-10-19 18:15:22 +02:00
Tamás Zolnai
8dd28ed664 Enable convert-to features for wopi hosts
Change-Id: I8aa37c61f3df5356fb7a14d93cda6279e7ec3cf1
2018-10-19 18:15:22 +02:00
Tamás Zolnai
0bb8b7c7a8 Add /hosting/capabilities endpoint to advertise online features
Add an entry to discovery.xml with the urlsrc where capabilities end
point can be found. Use json format to send back the feature list.

Change-Id: I390a53d956d53ca79e5a8090aead7f4131ec4ca0
2018-10-19 18:15:22 +02:00
Ashod Nakashian
0bf78a3ce7 wsd: fix saveas test
It didn't expect the trailing xfilename which
is used for anonymization.

Change-Id: I169253c567583f43ce870bbf5dfcebee9c94cd1d
2018-10-17 19:29:08 -04:00
Miklos Vajna
8316a650d6 test: avoid some unnecessary value parameters 2018-10-17 09:34:18 +02:00
Ashod Nakashian
ff6f49c598 wsd: more string split tests
Change-Id: Idd6e99954b11238eaf64e11e7969d0aee1612557
Reviewed-on: https://gerrit.libreoffice.org/57648
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
Tested-by: Ashod Nakashian <ashnakash@gmail.com>
(cherry picked from commit f64e0fba92ad80776572255951b2e0d76bc76e73)
2018-10-16 20:12:23 -04:00
Ashod Nakashian
b6333ada8d wsd: anonymization improvements and unittests
Also support anonymization of downloadas documents
and renaming of documents.

Reviewed-on: https://gerrit.libreoffice.org/57541
Reviewed-by: Jan Holesovsky <kendy@collabora.com>
Tested-by: Jan Holesovsky <kendy@collabora.com>
(cherry picked from commit 78248a542c9ca31bf9ad4cad9b55d78690384395)

Change-Id: I81a80e6290217659987d73f625e5f0fb81cb7ef2
2018-10-16 20:12:23 -04:00
Ashod Nakashian
053161b3f5 wsd: move string utilities into Util
Reviewed-on: https://gerrit.libreoffice.org/57539
Reviewed-by: Jan Holesovsky <kendy@collabora.com>
Tested-by: Jan Holesovsky <kendy@collabora.com>
(cherry picked from commit fb2671c4145edd4d4e359f0dcf5cc84835487cd4)

Change-Id: Idc578dff4e8ee5e48c1b7780d3feb2d21c6a9b13
2018-10-16 20:12:23 -04:00
Ashod Nakashian
6c18aa7e88 kit: anonymize usernames and filenames in Kit
Change-Id: Id7928136db71ded7bf6b1a5e8e387db7251f8a35
2018-10-16 20:12:23 -04:00
Ashod Nakashian
03f58b9a9a wsd: disable tile caching when TileCachePersistent is false
Change-Id: I660438d478ab6d1ef60575b5f63b71c8b86bab4f
2018-10-12 17:43:31 +02:00
Michael Meeks
8211bef32f Hide other view cursors on zoom.
Change-Id: I9e953f841b5c526b499f9170aef9b2682011947e
2018-10-09 21:48:17 +01:00
Tamás Zolnai
f16a868226 Reduce the running time of testWireIDFilteringOnWSDSide
Change-Id: I1c7e576aaa1af938380a2de33b1512b31ef6ca75
2018-10-01 18:36:50 +02:00
Tamás Zolnai
4512d4090f Reduce the running time of these this test
Change-Id: Iaf72007309e8e2aca09a01e7d1637f2875f3e564
2018-10-01 18:29:20 +02:00
Tamás Zolnai
ac2cd92d25 Upper limit of sent out versions of the same tile
We try to decrease the network usage with avoiding sending out
to much tiles to the client. When we already sent out two versions
of the same tile without having the tileprocessed message from the
client we delay sending out the next version to avoid spamming tiles
on the network.

Change-Id: Ia47cd7c0d3fb829f6777f0c3265970433591df19
2018-09-29 09:27:06 +02:00
Tamás Zolnai
a1e2acd5ef Better to have a smaller tiles-on-fly limit
It's good if this limit big enough to send all the tiles of the
current visible area at once, so the tiles arrive at the same
time to the client by zoom or scroll. Now this value is set to a bit
bigger so if we have a small amount of tiles before zoom / scroll we'll
still see the same on the client side.

Change-Id: I8e28dbf6197fe2f683fe9528e9a32c15a191b20e
2018-09-29 09:27:06 +02:00
Tamás Zolnai
9683f53a9c Filter out tiles by wired on wsd side too
Some times tiles with the same wireID survives the wireID
filtering in kit, so we should do that in wsd too.
The issue is with the tilesBeingRendered construction. First when
one tile is filtered out on kit side the client remains subcribed
to the tile, since wsd does not know filtering happened.
Second via the tilesBeingRendered object more clients can be subcribed
to the same tile and so when one client request a new version of this
tile (with an old wireID) the rendered tile is sent to all subscribed
clients even if the other clients has up-to-date tiles.

Change-Id: I4ca6b7a83a5d6979a9f924d766a71aba5e5362c7
2018-09-29 09:27:06 +02:00
Tamás Zolnai
a1a0bf3718 Don't send tiles which was changed outside of the visible area
Since this commit:
9473908d45
We can avoid that, because the tiles will be invalidated
on the client side and when the client visible area changes
the invalidated tiles are requested anyway.

Change-Id: I272e3b4b87380ae574c16a2b480dbc8caabf4b32
2018-09-29 09:27:06 +02:00
Tamás Zolnai
5260eae05f Avoid rendering / sending the same tile twice
When we're doing the prerendering we also need to register
a tileBeingRendered object, so we know that the given tile
will arrive soon. In earlier version of the code, rendering
and sending of the tile was not separated in time, but now it is,
so we need create a tileBeingRendered object even if we don't
subscribe the client to it yet.

Change-Id: I1374c22e5ffebe1d6fcc6e37261ddcedeb9066ec
2018-09-29 09:27:06 +02:00
Tor Lillqvist
87b85ff8f0 Be consistent in how we name "interface" abstract classes
We already use a suffix "Interface" for SocketHandlerInterface, so
rename IDocumentManager to DocumentManagerInterface.

Naming "interface" classes with an "I" prefix is C# and COM style.
Sure, that is a convention as good as any other, but let's try to be
consistent within this rather small code-base.

Change-Id: I9c356df327debd780f23ed2b2e6d6e630328861e
2018-09-12 19:27:23 +03:00
Tamás Zolnai
1e0b4928ad Remove this printing line used only for debugging
Change-Id: I482adcac61cf2fa4bec4fb02feec0e23370a3e45
2018-09-03 16:54:12 +02:00
Tamás Zolnai
8085b112dc Add some test for the new tile rendering code
Change-Id: I92e925740e67a62cd69e8c8135484c10d74dabc8
2018-08-30 18:43:43 +02:00
Miklos Vajna
9a4626ae0d test: no need to copy testname 2018-08-27 09:10:10 +02:00
Tamás Zolnai
1001f083f1 Remove this test, it just dumps the result instead of assert on that
Change-Id: Id9976d98bbd30cb38cee86b1ff45b96922065d11
2018-08-16 16:02:20 +02:00
Miklos Vajna
9ed7c1065c common, kit, test, wsd: these parameters are copied for each invocation ...
... but passing by const ref is enough
2018-08-13 09:26:15 +02:00
Tamás Zolnai
4d1ffab941 Disable testCancelTilesMultiView
It's seems unstable. After canceltiles wsd still can send tiles
if they already in the senderqueue.

Change-Id: I28f669aa18dfbfee1d9d242bd1ee3d0490f06c68
2018-08-03 13:50:40 +02:00