1 /* 2 * WININET - Gopher implementation 3 * 4 * Copyright 2003 Kirill Smelkov 5 * 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. 10 * 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. 15 * 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 19 */ 20 21 #include "config.h" 22 23 #include <stdarg.h> 24 25 #include "windef.h" 26 #include "winbase.h" 27 #include "wininet.h" 28 29 #include "wine/debug.h" 30 31 WINE_DEFAULT_DEBUG_CHANNEL(wininet); 32 33 /*********************************************************************** 34 * GopherCreateLocatorA (WININET.@) 35 * 36 * Create a Gopher locator string from its component parts 37 * 38 * PARAMS 39 * lpszHost [I] host name 40 * nServerPort [I] port in host byteorder or INTERNET_INVALID_PORT_NUMBER for default 41 * lpszDisplayString [I] document/directory to display (NULL - default directory) 42 * lpszSelectorString [I] selector string for server (NULL - none) 43 * dwGopherType [I] selector type (see GOPHER_TYPE_xxx) 44 * lpszLocator [O] buffer for locator string 45 * lpdwBufferLength [I] locator buffer length 46 * 47 * RETURNS 48 * TRUE on success 49 * FALSE on failure 50 * 51 */ 52 BOOL WINAPI GopherCreateLocatorA( 53 LPCSTR lpszHost, 54 INTERNET_PORT nServerPort, 55 LPCSTR lpszDisplayString, 56 LPCSTR lpszSelectorString, 57 DWORD dwGopherType, 58 LPSTR lpszLocator, 59 LPDWORD lpdwBufferLength 60 ) 61 { 62 FIXME("stub\n"); 63 return FALSE; 64 } 65 66 /*********************************************************************** 67 * GopherCreateLocatorW (WININET.@) 68 * 69 * See GopherCreateLocatorA. 70 */ 71 BOOL WINAPI GopherCreateLocatorW( 72 LPCWSTR lpszHost, 73 INTERNET_PORT nServerPort, 74 LPCWSTR lpszDisplayString, 75 LPCWSTR lpszSelectorString, 76 DWORD dwHopherType, 77 LPWSTR lpszLocator, 78 LPDWORD lpdwBufferLength 79 ) 80 { 81 FIXME("stub\n"); 82 return FALSE; 83 } 84 85 /*********************************************************************** 86 * GopherFindFirstFileA (WININET.@) 87 * 88 * Create a session and locate the requested documents 89 * 90 * PARAMS 91 * hConnect [I] Handle to a Gopher session returned by InternetConnect 92 * lpszLocator [I] - address of a string containing the name of the item to locate. 93 * - Locator created by the GopherCreateLocator function. 94 * lpszSearchString [I] what to search for if this request is to an index server. 95 * Otherwise, this parameter should be NULL. 96 * lpFindData [O] retrieved information 97 * dwFlags [I] INTERNET_FLAG_{HYPERLINK, NEED_FILE, NO_CACHE_WRITE, RELOAD, RESYNCHRONIZE} 98 * dwContext [I] application private value 99 * 100 * RETURNS 101 * HINTERNET handle on success 102 * NULL on error 103 */ 104 HINTERNET WINAPI GopherFindFirstFileA( 105 HINTERNET hConnect, 106 LPCSTR lpszLocator, 107 LPCSTR lpszSearchString, 108 LPGOPHER_FIND_DATAA 109 lpFindData, 110 DWORD dwFlags, 111 DWORD_PTR dwContext 112 ) 113 { 114 FIXME("stub\n"); 115 return NULL; 116 } 117 118 /*********************************************************************** 119 * GopherFindFirstFileW (WININET.@) 120 * 121 * See GopherFindFirstFileA. 122 */ 123 HINTERNET WINAPI GopherFindFirstFileW( 124 HINTERNET hConnect, 125 LPCWSTR lpszLocator, 126 LPCWSTR lpszSearchString, 127 LPGOPHER_FIND_DATAW 128 lpFindData, 129 DWORD dwFlags, 130 DWORD_PTR dwContext 131 ) 132 { 133 FIXME("stub\n"); 134 return NULL; 135 } 136 137 /*********************************************************************** 138 * GopherGetAttributeA (WININET.@) 139 * 140 * Retrieves the specific attribute information from the server. 141 * 142 * RETURNS 143 * TRUE on success 144 * FALSE on failure 145 */ 146 BOOL WINAPI GopherGetAttributeA( 147 HINTERNET hConnect, 148 LPCSTR lpszLocator, 149 LPCSTR lpszAttributeName, 150 LPBYTE lpBuffer, 151 DWORD dwBufferLength, 152 LPDWORD lpdwCharactersReturned, 153 GOPHER_ATTRIBUTE_ENUMERATORA 154 lpfnEnumerator, 155 DWORD_PTR dwContext 156 ) 157 { 158 FIXME("stub\n"); 159 return FALSE; 160 } 161 162 /*********************************************************************** 163 * GopherGetAttributeW (WININET.@) 164 * 165 * See GopherGetAttributeA. 166 */ 167 BOOL WINAPI GopherGetAttributeW( 168 HINTERNET hConnect, 169 LPCWSTR lpszLocator, 170 LPCWSTR lpszAttributeName, 171 LPBYTE lpBuffer, 172 DWORD dwBufferLength, 173 LPDWORD lpdwCharactersReturned, 174 GOPHER_ATTRIBUTE_ENUMERATORW 175 lpfnEnumerator, 176 DWORD_PTR dwContext 177 ) 178 { 179 FIXME("stub\n"); 180 return FALSE; 181 } 182 183 /*********************************************************************** 184 * GopherGetLocatorTypeA (WININET.@) 185 * 186 * Parses a Gopher locator and determines its attributes. 187 * 188 * PARAMS 189 * lpszLocator [I] Address of the Gopher locator string to parse 190 * lpdwGopherType [O] destination for bitmasked type of locator 191 * 192 * RETURNS 193 * TRUE on success 194 * FALSE on failure 195 */ 196 BOOL WINAPI GopherGetLocatorTypeA(LPCSTR lpszLocator, LPDWORD lpdwGopherType) 197 { 198 FIXME("stub\n"); 199 return FALSE; 200 } 201 202 /*********************************************************************** 203 * GopherGetLocatorTypeW (WININET.@) 204 * 205 * See GopherGetLocatorTypeA. 206 */ 207 BOOL WINAPI GopherGetLocatorTypeW(LPCWSTR lpszLocator, LPDWORD lpdwGopherType) 208 { 209 FIXME("stub\n"); 210 return FALSE; 211 } 212 213 /*********************************************************************** 214 * GopherOpenFileA (WININET.@) 215 * 216 * Begins reading a Gopher data file from a Gopher server. 217 * 218 * PARAMS 219 * hConnect [I] handle to a Gopher session 220 * lpszLocator [I] file locator 221 * lpszView [I] file view (or default if NULL) 222 * dwFlags [I] INTERNET_FLAG_{HYPERLINK, NEED_FILE, NO_CACHE_WRITE, RELOAD, RESYNCHRONIZE} 223 * dwContext [I] application private value 224 * 225 * RETURNS 226 * handle on success 227 * NULL on error 228 */ 229 HINTERNET WINAPI GopherOpenFileA( 230 HINTERNET hConnect, 231 LPCSTR lpszLocator, 232 LPCSTR lpszView, 233 DWORD dwFlags, 234 DWORD_PTR dwContext 235 ) 236 { 237 FIXME("stub\n"); 238 return NULL; 239 } 240 241 /*********************************************************************** 242 * GopherOpenFileW (WININET.@) 243 * 244 * See GopherOpenFileA. 245 */ 246 HINTERNET WINAPI GopherOpenFileW( 247 HINTERNET hConnect, 248 LPCWSTR lpszLocator, 249 LPCWSTR lpszView, 250 DWORD dwFlags, 251 DWORD_PTR dwContext 252 ) 253 { 254 FIXME("stub\n"); 255 return NULL; 256 } 257