[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[Git][xorg-team/xserver/xorg-server][upstream-unstable] 3 commits: xkbUtils: use existing symbol names instead of deleted deprecated ones



Title: GitLab

Timo Aaltonen pushed to branch upstream-unstable at X Strike Force / xserver / xorg-server

Commits:

  • 6bed5cfd
    by Benno Schulenberg at 2023-03-29T10:14:00+02:00
    xkbUtils: use existing symbol names instead of deleted deprecated ones
    
    Symbols `XK_Cyrillic_DZHE` and `XK_Serbian_DZE` were pure synonyms.
    
    (cherry picked from commit 6153c71cfb4698f1a416266564ecc748e4a25f2c)
    
  • fb51d5dd
    by Olivier Fourdan at 2023-03-29T14:20:26+02:00
    composite: Fix use-after-free of the COW
    
    ZDI-CAN-19866/CVE-2023-1393
    
    If a client explicitly destroys the compositor overlay window (aka COW),
    we would leave a dangling pointer to that window in the CompScreen
    structure, which will trigger a use-after-free later.
    
    Make sure to clear the CompScreen pointer to the COW when the latter gets
    destroyed explicitly by the client.
    
    This vulnerability was discovered by:
    Jan-Niklas Sohn working with Trend Micro Zero Day Initiative
    
    Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
    Reviewed-by: Adam Jackson <ajax@redhat.com>
    (cherry picked from commit 26ef545b3502f61ca722a7a3373507e88ef64110)
    
  • 7c791b15
    by Olivier Fourdan at 2023-03-29T14:20:26+02:00
    xserver 21.1.8
    
    Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
    

4 changed files:

Changes:

  • composite/compwindow.c
    ... ... @@ -620,6 +620,11 @@ compDestroyWindow(WindowPtr pWin)
    620 620
         ret = (*pScreen->DestroyWindow) (pWin);
    
    621 621
         cs->DestroyWindow = pScreen->DestroyWindow;
    
    622 622
         pScreen->DestroyWindow = compDestroyWindow;
    
    623
    +
    
    624
    +    /* Did we just destroy the overlay window? */
    
    625
    +    if (pWin == cs->pOverlayWin)
    
    626
    +        cs->pOverlayWin = NULL;
    
    627
    +
    
    623 628
     /*    compCheckTree (pWin->drawable.pScreen); can't check -- tree isn't good*/
    
    624 629
         return ret;
    
    625 630
     }
    

  • configure.ac
    ... ... @@ -26,8 +26,8 @@ dnl
    26 26
     dnl Process this file with autoconf to create configure.
    
    27 27
     
    
    28 28
     AC_PREREQ(2.60)
    
    29
    -AC_INIT([xorg-server], 21.1.7, [https://gitlab.freedesktop.org/xorg/xserver/issues], xorg-server)
    
    30
    -RELEASE_DATE="2023-02-07"
    
    29
    +AC_INIT([xorg-server], 21.1.8, [https://gitlab.freedesktop.org/xorg/xserver/issues], xorg-server)
    
    30
    +RELEASE_DATE="2023-03-29"
    
    31 31
     RELEASE_NAME="Caramel Ice Cream"
    
    32 32
     AC_CONFIG_SRCDIR([Makefile.am])
    
    33 33
     AC_CONFIG_MACRO_DIR([m4])
    

  • meson.build
    ... ... @@ -3,10 +3,10 @@ project('xserver', 'c',
    3 3
                 'buildtype=debugoptimized',
    
    4 4
                 'c_std=gnu99',
    
    5 5
             ],
    
    6
    -        version: '21.1.7',
    
    6
    +        version: '21.1.8',
    
    7 7
             meson_version: '>= 0.47.0',
    
    8 8
     )
    
    9
    -release_date = '2023-02-07'
    
    9
    +release_date = '2023-03-29'
    
    10 10
     
    
    11 11
     add_project_arguments('-DHAVE_DIX_CONFIG_H', language: ['c', 'objc'])
    
    12 12
     cc = meson.get_compiler('c')
    

  • xkb/xkbUtils.c
    ... ... @@ -902,9 +902,9 @@ XkbConvertCase(register KeySym sym, KeySym * lower, KeySym * upper)
    902 902
             break;
    
    903 903
         case 6:                    /* Cyrillic */
    
    904 904
             /* Assume the KeySym is a legal value (ignore discontinuities) */
    
    905
    -        if (sym >= XK_Serbian_DJE && sym <= XK_Serbian_DZE)
    
    905
    +        if (sym >= XK_Serbian_DJE && sym <= XK_Cyrillic_DZHE)
    
    906 906
                 *lower -= (XK_Serbian_DJE - XK_Serbian_dje);
    
    907
    -        else if (sym >= XK_Serbian_dje && sym <= XK_Serbian_dze)
    
    907
    +        else if (sym >= XK_Serbian_dje && sym <= XK_Cyrillic_dzhe)
    
    908 908
                 *upper += (XK_Serbian_DJE - XK_Serbian_dje);
    
    909 909
             else if (sym >= XK_Cyrillic_YU && sym <= XK_Cyrillic_HARDSIGN)
    
    910 910
                 *lower -= (XK_Cyrillic_YU - XK_Cyrillic_yu);
    


  • Reply to: