package wininet;

use strict;

require Exporter;

use wine;
use vars qw(@ISA @EXPORT @EXPORT_OK);

@ISA = qw(Exporter);
@EXPORT = qw();
@EXPORT_OK = qw();

my $module_declarations = {
    "CommitUrlCacheEntryA" => ["long",  ["str", "str", "long", "long", "long", "ptr", "long", "str", "long"]],
    "DllInstall" => ["long",  ["long", "wstr"]],
    "FtpCreateDirectoryA" => ["long",  ["long", "str"]],
    "FtpDeleteFileA" => ["long",  ["long", "str"]],
    "FtpFindFirstFileA" => ["long",  ["long", "str", "ptr", "long", "long"]],
    "FtpGetCurrentDirectoryA" => ["long",  ["long", "str", "ptr"]],
    "FtpGetFileA" => ["long",  ["long", "str", "str", "long", "long", "long", "long"]],
    "FtpOpenFileA" => ["long",  ["long", "str", "long", "long", "long"]],
    "FtpPutFileA" => ["long",  ["long", "str", "str", "long", "long"]],
    "FtpRemoveDirectoryA" => ["long",  ["long", "str"]],
    "FtpRenameFileA" => ["long",  ["long", "str", "str"]],
    "FtpSetCurrentDirectoryA" => ["long",  ["long", "str"]],
    "GetUrlCacheEntryInfoA" => ["long",  ["str", "ptr", "ptr"]],
    "HttpAddRequestHeadersA" => ["long",  ["long", "str", "long", "long"]],
    "HttpOpenRequestA" => ["long",  ["long", "str", "str", "str", "str", "ptr", "long", "long"]],
    "HttpQueryInfoA" => ["long",  ["long", "long", "ptr", "ptr", "ptr"]],
    "HttpSendRequestA" => ["long",  ["long", "str", "long", "ptr", "long"]],
    "HttpSendRequestExA" => ["long",  ["long", "ptr", "ptr", "long", "long"]],
    "InternetAttemptConnect" => ["long",  ["long"]],
    "InternetCanonicalizeUrlA" => ["long",  ["str", "str", "ptr", "long"]],
    "InternetCheckConnectionA" => ["long",  ["str", "long", "long"]],
    "InternetCloseHandle" => ["long",  ["long"]],
    "InternetConnectA" => ["long",  ["long", "str", "long", "str", "str", "long", "long", "long"]],
    "InternetCrackUrlA" => ["long",  ["str", "long", "long", "ptr"]],
    "InternetFindNextFileA" => ["long",  ["long", "ptr"]],
    "InternetGetConnectedState" => ["long",  ["ptr", "long"]],
    "InternetGetCookieA" => ["long",  ["str", "str", "str", "ptr"]],
    "InternetGetLastResponseInfoA" => ["long",  ["ptr", "str", "ptr"]],
    "InternetOpenA" => ["long",  ["str", "long", "str", "str", "long"]],
    "InternetQueryOptionA" => ["long",  ["long", "long", "ptr", "ptr"]],
    "InternetReadFile" => ["long",  ["long", "ptr", "long", "ptr"]],
    "InternetSetCookieA" => ["long",  ["str", "str", "str"]],
    "InternetSetStatusCallback" => ["ptr",  ["long", "ptr"]],
    "InternetWriteFile" => ["long",  ["long", "ptr", "long", "ptr"]]
};

&wine::declare("wininet",%$module_declarations);
push @EXPORT, map { "&" . $_; } sort(keys(%$module_declarations));
1;
