Commit Graph

12378 Commits

Author SHA1 Message Date
Cédric Valmary
245a4d95f9 Update Occitan translation 2016-10-12 08:25:44 +00:00
Kenneth Nielsen
fd5f0a2bf6 Updated Danish translation 2013-10-07 22:43:46 +02:00
Rafael Ferreira
673a02fd1f Updated Brazilian Portugues translation 2013-03-01 06:42:25 -03:00
Ryan Lortie
b236f84a88 GVariant: fix normal-form checking for tuples
GVariant has the concept of fixed-sized types (ie: types for which all
values of the type will have the same size).  Examples are booleans,
integers, doubles, etc.  Tuples containing only these types are also
fixed size.

When GVariant is trying to deal with a fixed-sized value for which it
doesn't have a sufficient backing store (eg: the case where a
fixed-sized value was created with g_variant_new_data() with an
incorrect number of bytes) it denotes this by setting the size of the
value to the correct fixed size but using a NULL data pointer.

This is well-documented in several code comments and also in the public
API documentation for g_variant_get_data() which describes the situation
number which NULL could be returned.

The decision to deal with this case in this way was changed at the last
minute around the time that GVariant was merged -- originally we had an
elaborate setup involving allocating an internal buffer of sufficient
size to be shared between all invalid values.

Unfortunately, when making this change a small detail was missed.
gvs_tuple_get_child() (the function responsible for deserialising
tuples) was updated to properly check for this case (and it contains a
comment about why it must).  gvs_tuple_is_normal() (the function
responsible for verifying if a tuple is in normal form) was not.

We add the check now.

Note that this problem does not exist with any other container type
because tuples are the only container capable of being fixed-sized.  All
other container types (arrays, maybes, variants) can contain a variable
number of items or items of variable types (note: we consider dictionary
entries to be two-tuples).  The code for validating non-container values
also contains a check for the case of NULL data.

The problem also does not occur in the only other function dealing with
serialised tuples: gvs_tuple_n_children().  Whereas other container
types would have to inspect the serialised data to determine the number
of children, for tuples it can be determined directly from the type.
2013-01-18 16:44:01 -05:00
Balázs Úr
f1450f96b9 Updated Hungarian translation 2012-12-27 21:07:20 +01:00
Kalev Lember
861f360311 Fix a broken link in GConf migration guide
gnome-utils git repo was moved to archive/ and this broke the link.
2012-11-16 17:41:15 +01:00
Мирослав Николић
693e8d3106 Updated Serbian translation 2012-11-11 10:34:24 +01:00
Simon McVittie
7a3f70e7e1 Use the FreeBSD credentials-passing code on Debian GNU/kFreeBSD
The __FreeBSD__ macro means we have both a FreeBSD kernel and FreeBSD
libc, which isn't the case on GNU/kFreeBSD (GNU libc and userland on
the FreeBSD kernel), so it predefines a different macro. The kernel
is what actually matters for credentials-passing, though.

Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Tested-by: Steven Chamberlain <steven@pyro.eu.org>
Bug: https://bugzilla.gnome.org/show_bug.cgi?id=649302
Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=581750
Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=631968
Reviewed-by: Dan Winship <danw@gnome.org>
2012-11-02 13:07:27 +00:00
Sasi Bhushan Boddepalli
f31e9a874a Updated Telugu Translation 2012-10-04 14:27:17 +05:30
Fran Diéguez
40d201dbb6 Updated Galician translations 2012-09-27 10:54:55 +02:00
Carles Ferrando
cc1b520606 [l10n]Updated Catalan (Valencian) translation 2012-09-23 17:37:06 +02:00
Gil Forcada
0af43dbd86 [l10n] Updated Catalan translation 2012-09-23 17:36:59 +02:00
Daniel Mustieles
ad4cb9ac0f Updated Spanish translation 2012-09-22 17:54:25 +02:00
Marek Černocký
a82f1ef29c Updated Czech translation 2012-09-19 13:43:02 +02:00
Matej Urbančič
c29cbb87fe Updated Slovenian translation 2012-09-14 19:49:06 +02:00
Christian Kirbach
9fd1094ef6 Updated German translation 2012-09-14 11:48:06 +02:00
Alexandre Franke
e57f029025 Update French translation 2012-09-14 09:43:42 +02:00
Nilamdyuti Goswami
ef34eeef87 Assamese translation updated 2012-09-14 11:59:11 +05:30
Piotr Drąg
2776420b7b Updated Polish translation 2012-09-14 00:52:22 +02:00
Colin Walters
4c2928a544 CVE-2012-3524: Hardening for being run in a setuid environment
Some programs attempt to use libglib (or even libgio) when setuid.
For a long time, GTK+ simply aborted if launched in this
configuration, but we never had a real policy for GLib.

I'm not sure whether we should advertise such support.  However, given
that there are real-world programs that do this currently, we can make
them safer with not too much effort.

Better to fix a problem caused by an interaction between two
components in *both* places if possible.

This patch adds a private function g_check_setuid() which is used to
first ensure we don't run an external dbus-launch binary if
DBUS_SESSION_BUS_ADDRESS isn't set.

Second, we also ensure the local VFS is used in this case.  The
gdaemonvfs extension point will end up talking to the session bus
which is typically undesirable in a setuid context.

Implementing g_check_setuid() is interesting - whether or not we're
running in a privilege-escalated path is operating system specific.
Note that GTK+'s code to check euid versus uid worked historically on
Unix, more modern systems have filesystem capabilities and SELinux
domain transitions, neither of which are captured by the uid
comparison.

On Linux/glibc, the way this works is that the kernel sets an
AT_SECURE flag in the ELF auxiliary vector, and glibc looks for it on
startup.  If found, then glibc sets a public-but-undocumented
__libc_enable_secure variable which we can use.  Unfortunately, while
it *previously* worked to check this variable, a combination of newer
binutils and RPM break it:
http://www.openwall.com/lists/owl-dev/2012/08/14/1

So for now on Linux/glibc, we fall back to the historical Unix version
until we get glibc fixed.

On some BSD variants, there is a issetugid() function.  On other Unix
variants, we fall back to what GTK+ has been doing.

Reported-By: Sebastian Krahmer <krahmer@suse.de>
Signed-off-by: Colin Walters <walters@verbum.org>
2012-09-13 18:33:08 -04:00
Alexandre Franke
332d7edb1e Update French translation 2012-09-09 19:51:51 +02:00
Marek Černocký
761af10226 Updated Czech translation 2012-09-08 11:15:29 +02:00
Marek Černocký
75702036b2 Updated Czech translation 2012-09-05 10:55:05 +02:00
Daniel Mustieles
ff4c8dea13 Updated Spanish translation 2012-09-03 16:17:17 +02:00
Daniel Mustieles
090c461657 Updated Spanish translation 2012-09-03 15:57:55 +02:00
Marc-André Lureau
3d8307d042 win32: fix build after bug 674452 2012-08-22 10:09:37 -04:00
Gil Forcada
4f47b9d235 [l10n] Updated Catalan translation 2012-08-12 13:50:45 +02:00
Adorilson Bezerra
7339fc089b Fixed some strings in Brazilian Portuguese translation 2012-08-10 09:46:52 -03:00
Nilamdyuti Goswami
86afc6d2b0 Assamese translation updated 2012-08-08 14:28:21 +05:30
Chun-wei Fan
b02b92172d Revert "gio/Makefile.am: Filter out gcontenttype.c for MSVC builds"
This reverts commit 18801a9a7b.

The change to the GIO source filters only applies to the master/2.33.x+
branch as there isn't a gcontenttype-win32.c in glib-2-32, so we still
want to build gcontenttype.c here.
2012-08-07 12:36:35 +08:00
Chun-wei Fan
18801a9a7b gio/Makefile.am: Filter out gcontenttype.c for MSVC builds
gcontenttype.c was split into gcontenttype.c and gcontenttype-win32.c
in commit 32192ee9 ("Split gcontenttype.c"), so we don't want to include
gcontenttype.c in the Visual C++ build as it is no longer a source file
meant for Windows.

Thanks to Thomas H.P. Anderson for pointing this out.
2012-08-06 08:37:06 -04:00
Mark Nauwelaerts
b91a241127 gclosure: do not copy and leak when generically marshalling return value
https://bugzilla.gnome.org/show_bug.cgi?id=674800
2012-08-05 13:09:39 +01:00
Mark Nauwelaerts
16de33733c tests: add check for leaking signal return value
https://bugzilla.gnome.org/show_bug.cgi?id=674800
2012-08-05 13:09:36 +01:00
Mark Nauwelaerts
a6819124a3 tests: make refcount signals test slightly valgrind cleaner 2012-08-05 13:09:32 +01:00
Fran Diéguez
c12428c4e5 Updated Galician translations 2012-07-27 12:10:10 +02:00
Tobias Endrigkeit
c89e8407d1 [l10n] Updated German translation 2012-07-23 22:11:01 +02:00
Matej Urbančič
b1de0eafbd Updated Slovenian translation 2012-07-19 09:12:35 +02:00
Sasi Bhushan Boddepalli
eb07f12d72 Updated Telugu Translation 2012-07-17 17:20:56 +05:30
Daniel Mustieles
9ca29a72ee Updated Spanish translation 2012-07-16 17:40:31 +02:00
Daniel Mustieles
d74afc853b Updated Spanish translation 2012-07-16 17:16:07 +02:00
Piotr Drąg
3549af0891 Updated Polish translation 2012-07-15 01:23:59 +02:00
Matthias Clasen
b47ed0b1aa Bump version 2012-07-14 19:22:31 -04:00
Matthias Clasen
780a677100 Updates for 2.32.4 2.32.4 2012-07-14 18:03:45 -04:00
Matthias Clasen
be0bef91de GApplication: remove reference to non-existing example
There's no example called gapplication-example-menu.c in
the gio/tests/ directory.
2012-07-14 18:03:45 -04:00
Matthias Clasen
ddd7f7475a Fix contenttype tests 2012-07-14 16:50:35 -04:00
Matthias Clasen
069f429990 Fix GModule documentation a bit
The documentation for g_module_make_resident was for some reason
in the doc comment for g_module_name.

https://bugzilla.gnome.org/show_bug.cgi?id=679813
2012-07-14 16:33:23 -04:00
Rui Matos
aa6239d999 GDBusNodeInfo: remove a spurious for loop
https://bugzilla.gnome.org/show_bug.cgi?id=679671
2012-07-14 16:33:23 -04:00
Rui Matos
f0fe7d5ec9 GDBusNodeInfo: the XML string must contain exactly one node element
Make the documentation clear about this.

https://bugzilla.gnome.org/show_bug.cgi?id=679671
2012-07-14 16:33:22 -04:00
Ryan Lortie
3f0ed5c26b GVariant: fix string validation
String validation was done by checking if the string was valid utf8 and
ensuring that the first non-utf8 character was the last character (ie:
the nul terminator).

No check was actually done to make sure that this byte actually
contained a nul, however, so it was possible that you could have a
string like "hello\xff" with length 6 that would correctly validate.

Fix that, and test it.
2012-07-14 16:33:22 -04:00
Antoine Jacoutot
c9b399365f goptions: use G_N_ELEMENTS instead of nitems 2012-07-14 16:33:22 -04:00