1. 29 May, 2017 1 commit
  2. 18 Aug, 2014 1 commit
  3. 31 Jan, 2014 1 commit
  4. 17 Aug, 2012 1 commit
  5. 02 Sep, 2010 1 commit
    • Tor Lillqvist's avatar
      Recuce DLL hijack risk on Windows · 6ddef375
      Tor Lillqvist authored
      Don't call LoadLibrary() on shell32.dll or kernel32.dll. kernel32.dll
      is always loaded. Shell32.dll is also already loaded as glib links to
      functions in it. So just call GetModuleHandle() on them.
      
      For mlang.dll in win_iconv.c and winhttp.dll in gwinhttpvfs.c, always
      try loading them from a complete path, from the Windows system
      directory.
      
      Use the "tool help" API to enumerate modules in gmodule-win32.c. It is
      present in all Windows versions since Windows 2000, which is all we
      support anyway. Thus no need to look that API up dynamically. Just
      link to it normally. We can bin the fallback code that attempts to use
      the psapi API.
      6ddef375
  6. 10 Aug, 2010 1 commit
  7. 07 Jul, 2010 1 commit
  8. 30 Nov, 2009 1 commit
  9. 12 Nov, 2008 1 commit
    • Tor Lillqvist's avatar
      Bug 556415 - Crash on Windows 2000 in g_winhttp_vfs_init() · 2f575b95
      Tor Lillqvist authored
      2008-11-12  Tor Lillqvist  <tml@novell.com>
      
      	Bug 556415 - Crash on Windows 2000 in g_winhttp_vfs_init()
      
      	* win32/gwinhttpvfs.h: Move the set of function pointers to
      	winhttp.dll into a separate struct GWinHttpDllFuncs. Just have a
      	pointer to that in the GWinHttpVfsClass.
      	
      	* win32/gwinhttpvfs.c: Move the lookup of functions from
      	winhttp.dll into a function of its own, that stores the pointers
      	in a separate GWinHttpDllFuncs variable. Add two bookeeping
      	booleans lookup_done and funcs_found.
      
      	Don't call g_io_extension_point_implement() to register the
      	winhttp extension unless winhttp.dll has been successfully loaded
      	and the required functions found in it.
      
      	* win32/gwinhttp*.c: Adjust calls of the functions looked up from
      	winhttp.dll correspondingly.
      
      
      svn path=/trunk/; revision=7648
      2f575b95
  10. 13 Aug, 2008 1 commit
    • Tor Lillqvist's avatar
      win32/gwinhttpvfs.c win32/gwinhttpvfs.h win32/gwinhttpfile.c · d5863830
      Tor Lillqvist authored
      2008-08-13  Tor Lillqvist  <tml@novell.com>
      
      	* win32/gwinhttpvfs.c
      	* win32/gwinhttpvfs.h
      	* win32/gwinhttpfile.c
      	* win32/gwinhttpfileinputstream.c
      	* win32/gwinhttpfileoutputstream.c: Refactor some common code
      	snippets into helper functions. Check HTTP response status
      	codes. Implement g_winhttp_file_query_info(), looking at
      	Content-Length, Content-Type and Last-Modified.
      
      	* win32/winhttp.h: Add some symbolic constants that are not
      	publicly documented. Just a handful, so it should be OK to use
      	information from the Windows SDK's headers.
      
      
      svn path=/trunk/; revision=7350
      d5863830
  11. 12 Aug, 2008 1 commit
    • Tor Lillqvist's avatar
      win32/gwinhttpvfs.c win32/gwinhttpvfs.h win32/gwinhttpfile.c · 7261372b
      Tor Lillqvist authored
      2008-08-13  Tor Lillqvist  <tml@novell.com>
      
      	* win32/gwinhttpvfs.c
      	* win32/gwinhttpvfs.h
      	* win32/gwinhttpfile.c
      	* win32/gwinhttpfile.h
      	* win32/gwinhttpfileinputstream.c
      	* win32/gwinhttpfileinputstream.h
      	* win32/gwinhttpfileoutputstream.c
      	* win32/gwinhttpfileoutputstream.h: New files implementing
      	GWinHttpVfs and related classes, a GVfs for HTTP and HTTPS URIs on
      	Windows. The implementation uses the WinHttp API. Both reading and
      	writing are supported, i.e. GET and PUT requests. When writing,
      	each write call is done using a separate PUT request with a
      	Content-Range header. Requests for file URIs and plain pathnames
      	are forwarded to GLocalVfs.
      
      	* win32/winhttp.h: Reverse engineered <winhttp.h>, borrowed from
      	WINE. Used as there is no <winhttp.h> bundled with mingw, and
      	requiring people to download the Windows SDK just for this one
      	header is not reasonable.
      
      	* win32/Makefile.am: Add above files.
      
      	* giomodule.c: Call _g_winhttp_vfs_get_type() on Windows to set up
      	the plumbing for the above.
      
      
      svn path=/trunk/; revision=7344
      7261372b