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