2 * WININET - Gopher implementation
4 * Copyright 2003 Kirill Smelkov
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
27 #include "wine/debug.h"
29 WINE_DEFAULT_DEBUG_CHANNEL(wininet
);
31 /***********************************************************************
32 * GopherCreateLocatorA (WININET.@)
34 * Create a Gopher locator string from its component parts
37 * lpszHost [I] host name
38 * nServerPort [I] port in host byteorder or INTERNET_INVALID_PORT_NUMBER for default
39 * lpszDisplayString [I] document/directory to display (NULL - default directory)
40 * lpszSelectorString [I] selector string for server (NULL - none)
41 * dwGopherType [I] selector type (see GOPHER_TYPE_xxx)
42 * lpszLocator [O] buffer for locator string
43 * lpdwBufferLength [I] locator buffer length
50 BOOL WINAPI
GopherCreateLocatorA(
52 INTERNET_PORT nServerPort
,
53 LPCSTR lpszDisplayString
,
54 LPCSTR lpszSelectorString
,
57 LPDWORD lpdwBufferLength
64 /***********************************************************************
65 * GopherCreateLocatorW (WININET.@)
67 * See GopherCreateLocatorA.
69 BOOL WINAPI
GopherCreateLocatorW(
71 INTERNET_PORT nServerPort
,
72 LPCWSTR lpszDisplayString
,
73 LPCWSTR lpszSelectorString
,
76 LPDWORD lpdwBufferLength
83 /***********************************************************************
84 * GopherFindFirstFileA (WININET.@)
86 * Create a session and locate the requested documents
89 * hConnect [I] Handle to a Gopher session returned by InternetConnect
90 * lpszLocator [I] - address of a string containing the name of the item to locate.
91 * - Locator created by the GopherCreateLocator function.
92 * lpszSearchString [I] what to search for if this request is to an index server.
93 * Otherwise, this parameter should be NULL.
94 * lpFindData [O] retrieved information
95 * dwFlags [I] INTERNET_FLAG_{HYPERLINK, NEED_FILE, NO_CACHE_WRITE, RELOAD, RESYNCHRONIZE}
96 * dwContext [I] application private value
99 * HINTERNET handle on success
102 HINTERNET WINAPI
GopherFindFirstFileA(
105 LPCSTR lpszSearchString
,
116 /***********************************************************************
117 * GopherFindFirstFileW (WININET.@)
119 * See GopherFindFirstFileA.
121 HINTERNET WINAPI
GopherFindFirstFileW(
124 LPCWSTR lpszSearchString
,
135 /***********************************************************************
136 * GopherGetAttributeA (WININET.@)
138 * Retrieves the specific attribute information from the server.
144 BOOL WINAPI
GopherGetAttributeA(
147 LPCSTR lpszAttributeName
,
149 DWORD dwBufferLength
,
150 LPDWORD lpdwCharactersReturned
,
151 GOPHER_ATTRIBUTE_ENUMERATORA
160 /***********************************************************************
161 * GopherGetAttributeW (WININET.@)
163 * See GopherGetAttributeA.
165 BOOL WINAPI
GopherGetAttributeW(
168 LPCWSTR lpszAttributeName
,
170 DWORD dwBufferLength
,
171 LPDWORD lpdwCharactersReturned
,
172 GOPHER_ATTRIBUTE_ENUMERATORW
181 /***********************************************************************
182 * GopherGetLocatorTypeA (WININET.@)
184 * Parses a Gopher locator and determines its attributes.
187 * lpszLocator [I] Address of the Gopher locator string to parse
188 * lpdwGopherType [O] destination for bitmasked type of locator
194 BOOL WINAPI
GopherGetLocatorTypeA(LPCSTR lpszLocator
, LPDWORD lpdwGopherType
)
200 /***********************************************************************
201 * GopherGetLocatorTypeW (WININET.@)
203 * See GopherGetLocatorTypeA.
205 BOOL WINAPI
GopherGetLocatorTypeW(LPCWSTR lpszLocator
, LPDWORD lpdwGopherType
)
211 /***********************************************************************
212 * GopherOpenFileA (WININET.@)
214 * Begins reading a Gopher data file from a Gopher server.
217 * hConnect [I] handle to a Gopher session
218 * lpszLocator [I] file locator
219 * lpszView [I] file view (or default if NULL)
220 * dwFlags [I] INTERNET_FLAG_{HYPERLINK, NEED_FILE, NO_CACHE_WRITE, RELOAD, RESYNCHRONIZE}
221 * dwContext [I] application private value
227 HINTERNET WINAPI
GopherOpenFileA(
239 /***********************************************************************
240 * GopherOpenFileW (WININET.@)
242 * See GopherOpenFileA.
244 HINTERNET WINAPI
GopherOpenFileW(