1. 23 Mar, 2015 1 commit
    • Mario Kleiner's avatar
      mapi: Make private copies of name strings provided by client. · 1110113a
      Mario Kleiner authored
      glXGetProcAddress("glFoo") ends up in stub_add_dynamic() to
      create dynamic stubs for dynamic functions. stub_add_dynamic()
      doesn't store the caller provided name string "Foo" in a mesa
      private copy, but just stores a pointer to the "glFoo" string
      passed to glXGetProcAddress - a pointer into arbitrary memory
      outside mesa's control.
      If the caller passes some dynamically allocated/changing
      memory buffer to glXGetProcAddress(), or the caller gets unmapped
      from memory, e.g., some dynamically loaded application
      plugin which uses OpenGL, this ends badly - with a dangling
      strdup() the name string provided by the client to avoid
      this problem.
      Cc: "10.3 10.4 10.5" <mesa-stable@lists.freedesktop.org>
      Signed-off-by: default avatarMario Kleiner <mario.kleiner.de@gmail.com>
      Reviewed-by: Brian Paul's avatarBrian Paul <brianp@vmware.com>
  2. 05 Mar, 2015 1 commit
  3. 04 Mar, 2015 1 commit
  4. 06 Mar, 2014 1 commit
  5. 05 Jun, 2013 1 commit
  6. 15 Apr, 2013 1 commit
  7. 25 Oct, 2012 1 commit
  8. 01 Oct, 2012 1 commit
  9. 24 Dec, 2010 2 commits
    • Chia-I Wu's avatar
      mapi: Add and use entry_get_public. · e6a7ef3c
      Chia-I Wu authored
      Given a dispatch slot, entry_get_public returns the address of the
      corresponding public entry point.  There may be more than one of them.
      But since they are all equivalent, it is fine to return any one of them.
      With entry_get_public, the address of any public entry point can be
      calculated at runtime when an assembly dispatcher is used.  There is no
      need to have a mapping table in such case.  This omits the unnecessary
      relocations from the binary.
    • Chia-I Wu's avatar
      mapi: Make struct mapi_stub opaque. · 897bff67
      Chia-I Wu authored
      Add accessors for struct mapi_stub and make it opaque.
  10. 06 Dec, 2010 1 commit
  11. 02 Dec, 2010 1 commit
  12. 07 May, 2010 1 commit