• Show log

    Commit

  • Hash : b3f19b14
    Author : Cameron Gutman
    Date : 2023-10-17T21:41:30

    Check for device disconnection in HIDAPI_JoystickOpen()
    
    HIDAPI joystick drivers may call HIDAPI_JoystickDisconnected() in their
    UpdateDevice() function during HIDAPI_JoystickOpen(). If they do this
    today, the opened joystick will end up partially initialized (no name,
    path, mapping GUID, etc.) because HIDAPI_GetDeviceByIndex() will no
    longer be able to find the SDL_HIDAPI_Device for the removed joystick.
    
    Worse still, joystick->hwdata->device becomes a dangling freed pointer
    the next time HIDAPI_UpdateDeviceList() is called. This leads to a UAF
    when the application or SDL calls SDL_JoystickClose() on this joystick.
    
    Fix all this by checking if the device no longer has any associated
    joysticks after calling UpdateDevice() and failing the open call if so.
    
    (cherry picked from commit 435e7ce663b7e568086c5dc0fb1bb889e41a3ed1)
    (cherry picked from commit 4aab2342e9aabc7e506952dbe5e021f3d3604929)
    

  • Properties

  • Git HTTP https://git.kmx.io/kc3-lang/SDL.git
    Git SSH git@git.kmx.io:kc3-lang/SDL.git
    Public access ? public
    Description

    Fork of https://github.com/libsdl-org/SDL

    Users
    thodg_m kc3_lang_org thodg_w www_kmx_io thodg thodg_l
    Tags

  • README.md

  • Simple DirectMedia Layer (SDL) Version 2.0

    https://www.libsdl.org/

    Simple DirectMedia Layer is a cross-platform development library designed to provide low level access to audio, keyboard, mouse, joystick, and graphics hardware via OpenGL and Direct3D. It is used by video playback software, emulators, and popular games including Valve’s award winning catalog and many Humble Bundle games.

    More extensive documentation is available in the docs directory, starting with README.md

    Enjoy!

    Sam Lantinga (slouken@libsdl.org)