Commit graph

57758 commits

Author SHA1 Message Date
Jyrki Vesterinen
406893963f Explicitly link to GObject (should fix #3840) 2019-01-05 19:59:53 +01:00
Rhonda D'Vine
e764257c3e disallow loading lua bytecode via load/dofile (cve-2018-1999023)
commiting rhondas patch from debian
2018-12-24 16:12:59 +01:00
Severin Glöckner
eabce7e4e8 Revert "incomplete lua backport"
This wasn't intended to be pushed

This reverts commit 4b27834e48.
2018-12-23 21:10:38 +01:00
Severin Glöckner
a9b0321d2e manpages: remove dot 2018-12-15 21:43:50 +01:00
Severin Glöckner
4b27834e48 incomplete lua backport 2018-09-04 00:42:30 +02:00
loonycyborg
19259b0dbf Fix incorrect port of os.path.walk to os.walk 2018-03-22 12:05:28 +03:00
loonycyborg
cefa806bf5 scons: fixup python3 backport 2018-03-21 23:42:35 +03:00
loonycyborg
5a6df3d253 Made build with scons 3.0.0 work fixing issue #2093 2018-03-21 23:13:37 +03:00
Alexander van Gessel
2cba6c2cdb Rename gettext scons module to avoid naming conflict 2018-03-21 23:07:54 +03:00
Alexander van Gessel
cf017dc168 Don't use comma-separated arguments to print function 2018-03-21 23:06:22 +03:00
Alexander van Gessel
39d3933073 Further python3 compatibility updates.
This has been tested with scons2, but not with scons3.
2to3 runs perform no further useful transformations.
2018-03-21 23:05:43 +03:00
Alexander van Gessel
3776c57877 Get rid of commands module
This module is deprecated and not available in python3
2018-03-21 23:05:14 +03:00
Alexander van Gessel
6af2eb00df Basic 2to3 fixes 2018-03-21 23:04:01 +03:00
Gunter Labes
51f250ca8e
Use a more generic default value 2018-01-08 23:45:23 +01:00
Gunter Labes
f423bd083f
Use a more generic default value 2018-01-08 23:42:40 +01:00
Ignacio R. Morelle
ba61721ba3 campaignd: Allow exempting hostmasks from download count bumps 2017-10-24 03:15:16 -03:00
loonycyborg
09a1aeb0ab scons: added ctool option to specify c compiler command
if cxxtool option is unspecified it will be derived from ctool
2017-09-21 17:53:47 +02:00
Ignacio R. Morelle
01062617a1 campaignd: Fix bug causing new uploads to replace server.cfg on disk
This was only temporary and would be later reverted by the periodic
server.cfg commit, but it's still a grave thing and resulted in add-on
packs not actually being written to the correct files, resulting in
missing or outdated contents for uploads performed since commit
ea4f9a4ba2 was pushed to mainline 1.12.

The cause is a trivial copy-paste error that shouldn't have happened.
2017-09-18 19:42:48 -03:00
Ignacio R. Morelle
f4f9167644 campaignd: Backport new add-on licensing terms to the 1.12 add-ons server
See commits:

 * 615c57b816
 * 197322ecbe
 * c53ca89e8d

Markup is obviously not included since that would require updating every
1.12 client in existence.
2017-09-14 21:39:58 -03:00
Ignacio R. Morelle
ba972248db campaignd: Missed moving a POSIX include into the Windows block 2017-09-14 20:26:02 -03:00
Ignacio R. Morelle
17197cff81 campaignd: Increase verbosity of filesystem::io_exception exceptions 2017-09-14 19:26:44 -03:00
Ignacio R. Morelle
ea4f9a4ba2 campaignd: Add wrapper for atomic commits of crucial files
As the 2016-10-07~09 downtime incident shows, it is paramount to take
further steps in guaranteeing that the server can't corrupt its own data
files (especially the add-ons database) when receiving
inappropriately-timed signals.

This commit adds and deploys an ostream wrapper that requires callers to
explicitly commit the results to disk when finished writing to the
stream, so that only then the real destination file is overwritten with
the working copy (a temporary in the same dir). This way, there should
never be a situation in which the destination is left in an inconsistent
state due to a signal or exception.

The temporary receives a predictable name right now in the interest of
simplicity, since we are more or less in control of the target directory
anyway. We definitely don't want it to be an unlinked file since that
would make it impossible for admins to inspect and compare the temporary
against the original afterwards.

The code makes some assumptions about the nature of the return value of
filesystem::ostream_file() which will never be broken in this stable
branch, which is why one helper function is in campaignd land rather
than in the global filesystem API for now. This should probably be
rectified when forward-porting to master. Maybe.

Nothing of this will work reliably on Windows but we don't care. There's
only one machine in the world where we support running campaignd at this
time and it runs Linux.
2017-09-14 19:26:44 -03:00
Severin Glöckner
fc7552c40b southguard: fix portrait size in the help
[ci skip}
2017-09-08 19:15:21 +02:00
Jyrki Vesterinen
4e16a5841d Fixed: filesystem::get_exe_dir() returned a wrong directory on Windows
It returned the current directory, not the EXE directory.

(cherry picked from commit 702be57481)
2017-09-04 17:30:58 +10:00
ln-zookeeper
6ca4aff829 LoW: Fixed unrecallable Elvish Horse Archers 2017-08-23 10:07:28 +03:00
Ferdinand Thiessen
789588d11e cmake: Fix 'missing-DSO' error when linking against boost_filesystem 2017-08-09 19:18:20 +11:00
Ignacio R. Morelle
3ecb883bc1 UtBS: Don't list spoiler units on units.wesnoth.org 2017-08-08 02:22:48 -04:00
Ignacio R. Morelle
0e707d641e wam: Fix HTML injection attack on the add-ons.wesnoth.org web interface
This escapes all strings provided by add-ons server data to guarantee
they can't be used to get extraneous and potentially harmful HTML into
the generated web index.

However, and because I don't have time to look into the dense regex
contained in the relevant code right now, it also removes the hidden
feature of linkifying any URLs found in add-on descriptions. It's a
small price to pay for our safety, really.
2017-07-24 03:05:34 -04:00
loonycyborg
72fe6a38a0 scons: fix out-of-tree builds without using python's operator % 2017-06-08 17:24:18 +03:00
Ignacio R. Morelle
a1cead45a7 pofix: Add download path string fixes for the 1.12.6 release 2017-04-15 19:26:41 -03:00
Allefant
319f9b7e9a fix typo 2017-01-27 09:58:00 -05:00
Allefant
2f713046f0 [wmlunits] ignore translation errors from gettext 2017-01-27 09:57:47 -05:00
Allefant
ad92b02f8c [wmlunits] use scons as cmake seems broken right now 2017-01-27 09:57:11 -05:00
Nils Kneuper
6aa645a155 updated German translation 2017-01-20 18:54:48 +01:00
Nils Kneuper
d985b47521 updated Czech translation 2017-01-06 19:01:09 +01:00
Nils Kneuper
70332bb81b updated German translation 2017-01-06 19:00:17 +01:00
Nils Kneuper
d0cdeab469 updated German translation 2016-12-30 10:09:05 +01:00
Lari Nieminen
a18843907b Clarify the display of the remaining ban duration to banned users 2016-11-10 20:34:34 +02:00
Ignacio R. Morelle
213c19729f Fix grammar 2016-11-08 02:02:17 -03:00
Ignacio R. Morelle
e1059405c0 Fix GCC 6 -Wmisleading-indentation warnings 2016-11-08 02:00:27 -03:00
Nils Kneuper
311a021b77 updated list of Finnish translators 2016-10-19 10:11:06 +02:00
Nils Kneuper
61e562fd28 updated Finnish translation 2016-10-17 23:55:58 +02:00
Ignacio R. Morelle
7c56e8179c Fix credits 2016-10-13 05:25:58 -03:00
Ignacio R. Morelle
019e7a72c7 campaignd: Only quit to SIGINT and SIGTERM after a processing cycle
Otherwise we run the risk (as seen with the 2016-10-07~09 downtime
incident) of calling exit() while we're in the middle of writing WML
content to disk, in particular the add-ons list and server configuration
file. Trust me, no-one will be very impressed if you make them sort out
the mess that this kind of thing leaves behind.

Ideally we should atomically rename a temporary into the destination
file for each WML write we do here to avoid similar ugliness with
signals we don't/can't/mustn't handle (especially SIGKILL). It's always
best to stay on the safe side and assume that a botched write could kill
people.
2016-10-09 03:53:52 -03:00
Ignacio R. Morelle
56a14943cb campaignd: Record the hashed passphrase for new uploads
Otherwise no passphrase is recorded into the server config and it
becomes impossible to reupload the add-on without admin assistance.
2016-10-09 03:13:15 -03:00
John Anthony
265bd66ed9 Added password hashing to campaignd
This will also update existing campaigns stored with a plaintext password to use
the new, more secure system.
2016-10-09 03:12:59 -03:00
Ignacio R. Morelle
62c2890f8f campaignd: Refactor [campaign] searches into a get_campaign() method 2016-10-09 03:08:18 -03:00
Ignacio R. Morelle
28b3e384a6 campaignd: Don't try to use a monotonic clock on Windows
Fixes linker errors about clock_gettime not being resolved for some
reason, at least when crosscompiling from Linux using MinGW-w64.
2016-10-09 03:04:32 -03:00
Ignacio R. Morelle
a982bbdb36 campaignd: Fix unused variable warning on Windows 2016-10-09 03:03:42 -03:00
ln-zookeeper
0dd2e96584 Prevent extraneous "="'s from appearing in some AI controller menus 2016-08-15 12:10:16 +03:00