- 22 Jun, 2022 1 commit
-
-
Jeremy Huddleston Sequoia authored
Regressed-in: 6972ea08 Fixes: #13 Signed-off-by:
Jeremy Huddleston Sequoia <jeremyhu@apple.com> (cherry picked from commit 8e3d94c8)
-
- 03 Aug, 2019 1 commit
-
-
Alan Coopersmith authored
The test/utils directory contains some standalone test programs for testing libXfont funtionality without needing a full X server session. They could be used to generate automated unit testing in the future, but that work has not yet been done. Signed-off-by:
Alan Coopersmith <alan.coopersmith@oracle.com>
-
- 28 Nov, 2017 1 commit
-
-
Matthieu Herrb authored
-
- 25 Nov, 2017 1 commit
-
-
A non-privileged X client can instruct X server running under root to open any file by creating own directory with "fonts.dir", "fonts.alias" or any font file being a symbolic link to any other file in the system. X server will then open it. This can be issue with special files such as /dev/watchdog. Reviewed-by:
Matthieu Herrb <matthieu@herrb.eu>
-
- 19 Oct, 2017 3 commits
-
-
Matt Turner authored
Signed-off-by:
Matt Turner <mattst88@gmail.com>
-
Without the checks a malformed PCF file can cause the library to make atom from random heap memory that was behind the `strings` buffer. This may crash the process or leak information. Signed-off-by:
Julien Cristau <jcristau@debian.org> (cherry picked from commit 672bb944)
-
If a pattern contains '?' character, any character in the string is skipped, even if it is '\0'. The rest of the matching then reads invalid memory. Reviewed-by:
Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by:
Julien Cristau <jcristau@debian.org> (cherry picked from commit d1e670a4)
-
- 31 Aug, 2016 1 commit
-
-
Adam Jackson authored
Signed-off-by:
Adam Jackson <ajax@redhat.com>
-
- 31 May, 2016 5 commits
-
-
Jeremy Huddleston Sequoia authored
https://bugs.freedesktop.org/show_bug.cgi?id=83224 Found by clang's Address Sanitizer crac.num_auths = set_font_authorizations(&authorizations, &authlen, client); /* Work around bug in xfs versions up through modular release 1.0.8 which rejects CreateAC packets with num_auths = 0 & authlen < 4 */ if (crac.num_auths == 0) { authorizations = padding; authlen = 4; } else { authlen = (authlen + 3) & ~0x3; } crac.length = (sizeof (fsCreateACReq) + authlen) >> 2; crac.acid = cur->acid; _fs_add_req_log(conn, FS_CreateAC); _fs_write(conn, (char *) &crac, sizeof (fsCreateACReq)); _fs_write(conn, authorizations, authlen); In the case in the report, set_font_authorizations setup authorizations as a 34 byte buffer (and authlen set to 34 as one would expect). The following block changed authlen to 36 to make it 4byte aligned and the final _fs_write() caused us to read 36 bytes from this 34 byte buffer. This changes the incorrect size increase to instead use _fs_write_pad which takes care of the padding for us. Signed-off-by:
Jeremy Huddleston Sequoia <jeremyhu@apple.com> (cherry picked from commit 6972ea08)
-
Jeremy Huddleston Sequoia authored
src/fc/fserve.c:653:32: warning: format specifies type 'int' but the argument has type 'CARD32' (aka 'unsigned long') [-Wformat] " from font server\n", rep->length); ^~~~~~~~~~~ 1 warning generated. Signed-off-by:
Jeremy Huddleston Sequoia <jeremyhu@apple.com> (cherry picked from commit e6009adb)
-
Jeremy Huddleston Sequoia authored
Found by clang static analysis: Call to 'calloc' has an allocation size of 0 bytes Signed-off-by:
Jeremy Huddleston Sequoia <jeremyhu@apple.com> (cherry picked from commit ac559fad)
-
Jeremy Huddleston Sequoia authored
Found by clang static analysis: Result of 'calloc' is converted to a pointer of type 'int', which is incompatible with sizeof operand type 'int *' This is likely benign because the old size was larger on any platform where sizeof(int) <= sizeof(void *), which is everywhere. Signed-off-by:
Jeremy Huddleston Sequoia <jeremyhu@apple.com> (cherry picked from commit d0fff111)
-
Mostly signed vs unsigned comparisons Signed-off-by:
Keith Packard <keithp@keithp.com> Squashed commit of three cherry-picks from master: (cherry picked from commit eb67d10a) (cherry picked from commit eefc0b0b) (cherry picked from commit d967caa9)
-
- 22 Oct, 2015 2 commits
-
-
Jeremy Huddleston Sequoia authored
Lesser of two evil hacks, I suppose... This reverts commit 0386fa77.
-
Jeremy Huddleston Sequoia authored
Signed-off-by:
Jeremy Huddleston Sequoia <jeremyhu@apple.com>
-
- 20 Oct, 2015 1 commit
-
-
The argument must be an unsigned char or -1; in these cases we know it's not -1 so cast it to unsigned char. Fixes warning: array subscript is of type 'char' [-Wchar-subscripts] Signed-off-by:
Thomas Klausner <wiz@NetBSD.org>
-
- 28 Jul, 2015 1 commit
-
-
The fix for CVE-2015-1804 prevent DWIDTH to be negative. However, the spec states that "DWIDTH [...] is a vector indicating the position of the next glyph’s origin relative to the origin of this glyph." So negative values are correct. Found by trying to compile XTS. Signed-off-by:
Benjamin Tissoires <benjamin.tissoires@gmail.com> Reviewed-by:
Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by:
Alan Coopersmith <alan.coopersmith@oracle.com>
-
- 21 Mar, 2015 1 commit
-
-
Alan Coopersmith authored
Don't seem to have ability to link to BDF or Xserver internals docs yet Signed-off-by:
Alan Coopersmith <alan.coopersmith@oracle.com>
-
- 17 Mar, 2015 4 commits
-
-
Alan Coopersmith authored
Signed-off-by:
Alan Coopersmith <alan.coopersmith@oracle.com>
-
Alan Coopersmith authored
We use 32-bit ints to read from the bdf file, but then try to stick into a 16-bit int in the xCharInfo struct, so make sure they won't overflow that range. Found by afl-1.24b. v2: Verify that additions won't overflow 32-bit int range either. v3: As Julien correctly observes, the previous check for bh & bw not being < 0 reduces the number of cases we need to check for overflow. Signed-off-by:
Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by:
Julien Cristau <jcristau@debian.org>
-
Alan Coopersmith authored
Previously would charge on ahead with a NULL pointer in ci->bits, and then crash later in FontCharInkMetrics() trying to access the bits. Found with afl-1.23b. Signed-off-by:
Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by:
Julien Cristau <jcristau@debian.org>
-
Alan Coopersmith authored
Avoid integer overflow or underflow when allocating memory arrays by multiplying the number of properties reported for a BDF font. Reported-by:
Ilja Van Sprundel <ivansprundel@ioactive.com> Signed-off-by:
Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by:
Julien Cristau <jcristau@debian.org>
-
- 26 Feb, 2015 1 commit
-
-
Reviewed-by:
Alan Coopersmith <alan.coopersmith@oracle.com> Signed-off-by:
Thomas Klausner <wiz@NetBSD.org>
-
- 06 Nov, 2014 2 commits
-
-
Alan Coopersmith authored
Parts were indented, others weren't, now is more consistent. 'git diff -w' shows no non-whitespace changes in this commit Signed-off-by:
Alan Coopersmith <alan.coopersmith@oracle.com>
-
Alan Coopersmith authored
Signed-off-by:
Alan Coopersmith <alan.coopersmith@oracle.com>
-
- 19 Jul, 2014 1 commit
-
-
Alan Coopersmith authored
Signed-off-by:
Alan Coopersmith <alan.coopersmith@oracle.com>
-
- 07 Jul, 2014 1 commit
-
-
Alan Coopersmith authored
Signed-off-by:
Alan Coopersmith <alan.coopersmith@oracle.com>
-
- 27 Jun, 2014 1 commit
-
-
Yaakov Selkowitz authored
Weak symbols on PE platforms do not work the same way as on ELF platforms, hence we have been unable to have a fully functional shared libXfont until now. This patch works around these issues so that we can fix that. In summary, only when compiling shared libraries on NO_WEAK_SYMBOLS platforms, when the first stub is called, the invoking program is first checked to determine if it exports the stubbed functions. Then, for every stub call, if the function is exported by the loader, it is called instead of the stub code. serverClient and serverGeneration are data pointers, and therefore are replaced by getter functions. ErrorF is variadic, so the override is routed through VErrorF instead. FatalError has no va_list equivalent, but it is not actually used in libXfont and therefore should be safe to remove. This requires all X servers to export their symbols, which requires forthcoming patches for hw/xwin and xfs; the other xservers (including tigervnc) already do this via LD_EXPORT_SYMBOLS_FLAG. Signed-off-by:
Yaakov Selkowitz <yselkowitz@users.sourceforge.net> Reviewed-by:
Colin Harrison <colin.harrison@virgin.net> Acked-by:
Alan Coopersmith <alan.coopersmith@oracle.com> Tested-by:
Jeremy Huddleston Sequoia <jeremyhu@apple.com>
-
- 24 May, 2014 6 commits
-
-
When accessing a 16-bit font with firstRow > 0 with 8-bit text, check to see if the font has a default character and return that for every incoming character. Signed-off-by:
Keith Packard <keithp@keithp.com> Reviewed-by:
Eric Anholt <eric@anholt.net> Signed-off-by:
Alan Coopersmith <alan.coopersmith@oracle.com>
-
Alan Coopersmith authored
If the only bitmaps we support are builtins, don't need the code to register all the bitmap font file handlers. Fixes gcc warnings: bitmapfunc.c:110:1: warning: 'BitmapOpenBitmap' defined but not used [-Wunused-function] BitmapOpenBitmap (FontPathElementPtr fpe, FontPtr *ppFont, int flags, ^ bitmapfunc.c:155:1: warning: 'BitmapGetInfoBitmap' defined but not used [-Wunused-function] BitmapGetInfoBitmap (FontPathElementPtr fpe, FontInfoPtr pFontInfo, ^ Signed-off-by:
Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by:
Rémi Cardona <remi@gentoo.org>
-
Alan Coopersmith authored
pcfread.c is a special case - it's needed for either reading pcf files from disk (--enable-pcfformat) or from the builtin fonts in memory (--enable-builtins), so needed a new AM_CONDITIONAL case. Signed-off-by:
Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by:
Rémi Cardona <remi@gentoo.org>
-
Alan Coopersmith authored
Require the #defines from configure.ac now that we're not sharing source with the imake builds any longer. Signed-off-by:
Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by:
Rémi Cardona <remi@gentoo.org>
-
Alan Coopersmith authored
Signed-off-by:
Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by:
Rémi Cardona <remi@gentoo.org>
-
Alan Coopersmith authored
Signed-off-by:
Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by:
Rémi Cardona <remi@gentoo.org>
-
- 13 May, 2014 6 commits
-
-
Alan Coopersmith authored
fs_read_list_info() parses a reply from the font server. The reply contains a number of additional data items with embedded length or count fields, none of which are validated. This can cause out of bound reads when looping over these items in the reply. Signed-off-by:
Alan Coopersmith <alan.coopersmith@oracle.com>
-
Alan Coopersmith authored
fs_read_list() parses a reply from the font server. The reply contains a list of strings with embedded length fields, none of which are validated. This can cause out of bound reads when looping over the strings in the reply. Signed-off-by:
Alan Coopersmith <alan.coopersmith@oracle.com>
-
Alan Coopersmith authored
fs_read_glyphs() parses a reply from the font server. The reply contains embedded length fields, none of which are validated. This can cause out of bound reads when looping over the glyph bitmaps in the reply. Reported-by:
Ilja Van Sprundel <ivansprundel@ioactive.com> Signed-off-by:
Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by:
Adam Jackson <ajax@redhat.com> Reviewed-by:
Matthieu Herrb <matthieu@herrb.eu>
-
Alan Coopersmith authored
Looping over the extents in the reply could go past the end of the reply buffer if the reply indicated more extents than could fit in the specified reply length. Reported-by:
Ilja Van Sprundel <ivansprundel@ioactive.com> Signed-off-by:
Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by:
Adam Jackson <ajax@redhat.com> Reviewed-by:
Matthieu Herrb <matthieu@herrb.eu>
-
Alan Coopersmith authored
fs_alloc_glyphs() is a malloc wrapper used by the font code. It contains a classic integer overflow in the malloc() call, which can cause memory corruption. Reported-by:
Ilja Van Sprundel <ivansprundel@ioactive.com> Signed-off-by:
Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by:
Adam Jackson <ajax@redhat.com> Reviewed-by:
Matthieu Herrb <matthieu@herrb.eu>
-
Alan Coopersmith authored
fs_read_extent_info() parses a reply from the font server. The reply contains a 32bit number of elements field which is used to calculate a buffer length. There is an integer overflow in this calculation which can lead to memory corruption. Reported-by:
Ilja Van Sprundel <ivansprundel@ioactive.com> Signed-off-by:
Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by:
Adam Jackson <ajax@redhat.com> Reviewed-by:
Matthieu Herrb <matthieu@herrb.eu>
-