Moved a large number of 16-bit functions to a separate gdi16.c file.
[wine/hacks.git] / dlls / tapi32 / line.c
blobe21ac09ddfee2d43167b4f9e946c01f10010fd65
1 /*
2 * TAPI32 line services
4 * Copyright 1999 Andreas Mohr
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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21 #include <string.h>
22 #include <stdlib.h>
23 #include <stdio.h>
24 #include "winbase.h"
25 #include "windef.h"
26 #include "tapi.h"
27 #include "wine/debug.h"
29 WINE_DEFAULT_DEBUG_CHANNEL(tapi);
31 /***********************************************************************
32 * lineAccept (TAPI32.@)
34 DWORD WINAPI lineAccept(HCALL hCall, LPCSTR lpsUserUserInfo, DWORD dwSize)
36 FIXME("(%04x, %s, %ld): stub.\n", hCall, lpsUserUserInfo, dwSize);
37 return 1;
40 /***********************************************************************
41 * lineAddProvider (TAPI32.@)
43 DWORD WINAPI lineAddProvider(LPCSTR lpszProviderName, HWND hwndOwner, LPDWORD lpdwPermanentProviderID)
45 FIXME("(%s, %04x, %p): stub.\n", lpszProviderName, hwndOwner, lpdwPermanentProviderID);
46 return 1;
49 /***********************************************************************
50 * lineAddToConference (TAPI32.@)
52 DWORD WINAPI lineAddToConference(HCALL hConfCall, HCALL hConsultCall)
54 FIXME("(%04x, %04x): stub.\n", hConfCall, hConsultCall);
55 return 1;
58 /***********************************************************************
59 * lineAnswer (TAPI32.@)
61 DWORD WINAPI lineAnswer(HCALL hCall, LPCSTR lpsUserUserInfo, DWORD dwSize)
63 FIXME("(%04x, %s, %ld): stub.\n", hCall, lpsUserUserInfo, dwSize);
64 return 1;
67 /***********************************************************************
68 * lineBlindTransfer (TAPI32.@)
70 DWORD WINAPI lineBlindTransfer(HCALL hCall, LPCSTR lpszDestAddress, DWORD dwCountryCode)
72 FIXME("(%04x, %s, %08lx): stub.\n", hCall, lpszDestAddress, dwCountryCode);
73 return 1;
76 /***********************************************************************
77 * lineClose (TAPI32.@)
79 DWORD WINAPI lineClose(HLINE hLine)
81 FIXME("(%04x): stub.\n", hLine);
82 return 0;
85 /***********************************************************************
86 * lineCompleteCall (TAPI32.@)
88 DWORD WINAPI lineCompleteCall(HCALL hCall, LPDWORD lpdwCompletionID, DWORD dwCompletionMode, DWORD dwMessageID)
90 FIXME("(%04x, %p, %08lx, %08lx): stub.\n", hCall, lpdwCompletionID, dwCompletionMode, dwMessageID);
91 return 1;
94 /***********************************************************************
95 * lineCompleteTransfer (TAPI32.@)
97 DWORD WINAPI lineCompleteTransfer(HCALL hCall, HCALL hConsultCall, LPHCALL lphConfCall, DWORD dwTransferMode)
99 FIXME("(%04x, %04x, %p, %08lx): stub.\n", hCall, hConsultCall, lphConfCall, dwTransferMode);
100 return 1;
103 /***********************************************************************
104 * lineConfigDialog (TAPI32.@)
106 DWORD WINAPI lineConfigDialog(DWORD dwDeviceID, HWND hwndOwner, LPCSTR lpszDeviceClass)
108 FIXME("(%08lx, %04x, %s): stub.\n", dwDeviceID, hwndOwner, lpszDeviceClass);
109 return 0;
112 /***********************************************************************
113 * lineConfigDialogEdit (TAPI32.@)
115 DWORD WINAPI lineConfigDialogEdit(DWORD dwDeviceID, HWND hwndOwner, LPCSTR lpszDeviceClass, LPVOID const lpDeviceConfigIn, DWORD dwSize, LPVARSTRING lpDeviceConfigOut)
117 FIXME("stub.\n");
118 return 0;
121 /***********************************************************************
122 * lineConfigProvider (TAPI32.@)
124 DWORD WINAPI lineConfigProvider(HWND hwndOwner, DWORD dwPermanentProviderID)
126 FIXME("(%04x, %08lx): stub.\n", hwndOwner, dwPermanentProviderID);
127 return 0;
130 /***********************************************************************
131 * lineDeallocateCall (TAPI32.@)
133 DWORD WINAPI lineDeallocateCall(HCALL hCall)
135 FIXME("(%04x): stub.\n", hCall);
136 return 0;
139 /***********************************************************************
140 * lineDevSpecific (TAPI32.@)
142 DWORD WINAPI lineDevSpecific(HLINE hLine, DWORD dwAddressId, HCALL hCall, LPVOID lpParams, DWORD dwSize)
144 FIXME("(%04x, %08lx, %04x, %p, %ld): stub.\n", hLine, dwAddressId, hCall, lpParams, dwSize);
145 return 1;
148 /***********************************************************************
149 * lineDevSpecificFeature (TAPI32.@)
151 DWORD WINAPI lineDevSpecificFeature(HLINE hLine, DWORD dwFeature, LPVOID lpParams, DWORD dwSize)
153 FIXME("(%04x, %08lx, %p, %ld): stub.\n", hLine, dwFeature, lpParams, dwSize);
154 return 1;
157 /***********************************************************************
158 * lineDial (TAPI32.@)
160 DWORD WINAPI lineDial(HCALL hCall, LPCSTR lpszDestAddress, DWORD dwCountryCode)
162 FIXME("(%04x, %s, %08lx): stub.\n", hCall, lpszDestAddress, dwCountryCode);
163 return 1;
166 /***********************************************************************
167 * lineDrop (TAPI32.@)
169 DWORD WINAPI lineDrop(HCALL hCall, LPCSTR lpsUserUserInfo, DWORD dwSize)
171 FIXME("(%04x, %s, %08lx): stub.\n", hCall, lpsUserUserInfo, dwSize);
172 return 1;
175 /***********************************************************************
176 * lineForward (TAPI32.@)
178 DWORD WINAPI lineForward(HLINE hLine, DWORD bAllAddress, DWORD dwAdressID, LPLINEFORWARDLIST lpForwardList, DWORD dwNumRingsNoAnswer, LPHCALL lphConsultCall, LPLINECALLPARAMS lpCallParams)
180 FIXME("stub.\n");
181 return 1;
184 /***********************************************************************
185 * lineGatherDigits (TAPI32.@)
187 DWORD WINAPI lineGatherDigits(HCALL hCall, DWORD dwDigitModes, LPSTR lpsDigits, DWORD dwNumDigits, LPCSTR lpszTerminationDigits, DWORD dwFirstDigitTimeout, DWORD dwInterDigitTimeout)
189 FIXME("stub.\n");
190 return 0;
193 /***********************************************************************
194 * lineGenerateDigits (TAPI32.@)
196 DWORD WINAPI lineGenerateDigits(HCALL hCall, DWORD dwDigitModes, LPCSTR lpszDigits, DWORD dwDuration)
198 FIXME("(%04x, %08lx, %s, %ld): stub.\n", hCall, dwDigitModes, lpszDigits, dwDuration);
199 return 0;
202 /***********************************************************************
203 * lineGenerateTone (TAPI32.@)
205 DWORD WINAPI lineGenerateTone(HCALL hCall, DWORD dwToneMode, DWORD dwDuration, DWORD dwNumTones, LPLINEGENERATETONE lpTones)
207 FIXME("(%04x, %08lx, %ld, %ld, %p): stub.\n", hCall, dwToneMode, dwDuration, dwNumTones, lpTones);
208 return 0;
211 /***********************************************************************
212 * lineGetAddressCaps (TAPI32.@)
214 DWORD WINAPI lineGetAddressCaps(HLINEAPP hLineApp, DWORD dwDeviceID, DWORD dwAddressID, DWORD dwAPIVersion, DWORD dwExtVersion, LPLINEADDRESSCAPS lpAddressCaps)
216 FIXME("(%04x, %08lx, %08lx, %08lx, %08lx, %p): stub.\n", hLineApp, dwDeviceID, dwAddressID, dwAPIVersion, dwExtVersion, lpAddressCaps);
217 return 0;
220 /***********************************************************************
221 * lineGetAddressID (TAPI32.@)
223 DWORD WINAPI lineGetAddressID(HLINE hLine, LPDWORD lpdwAddressID, DWORD dwAddressMode, LPCSTR lpsAddress, DWORD dwSize)
225 FIXME("%04x, %p, %08lx, %s, %ld): stub.\n", hLine, lpdwAddressID, dwAddressMode, lpsAddress, dwSize);
226 return 0;
229 /***********************************************************************
230 * lineGetAddressStatus (TAPI32.@)
232 DWORD WINAPI lineGetAddressStatus(HLINE hLine, DWORD dwAddressID, LPLINEADDRESSSTATUS lpAddressStatus)
234 FIXME("(%04x, %08lx, %p): stub.\n", hLine, dwAddressID, lpAddressStatus);
235 return 0;
238 /***********************************************************************
239 * lineGetAppPriority (TAPI32.@)
241 DWORD WINAPI lineGetAppPriority(LPCSTR lpszAppFilename, DWORD dwMediaMode, LPLINEEXTENSIONID const lpExtensionID, DWORD dwRequestMode, LPVARSTRING lpExtensionName, LPDWORD lpdwPriority)
243 FIXME("(%s, %08lx, %p, %08lx, %p, %p): stub.\n", lpszAppFilename, dwMediaMode, lpExtensionID, dwRequestMode, lpExtensionName, lpdwPriority);
244 return 0;
247 /***********************************************************************
248 * lineGetCallInfo (TAPI32.@)
250 DWORD WINAPI lineGetCallInfo(HCALL hCall, LPLINECALLINFO lpCallInfo)
252 FIXME("(%04x, %p): stub.\n", hCall, lpCallInfo);
253 return 0;
256 /***********************************************************************
257 * lineGetCallStatus (TAPI32.@)
259 DWORD WINAPI lineGetCallStatus(HCALL hCall, LPLINECALLSTATUS lpCallStatus)
261 FIXME("(%04x, %p): stub.\n", hCall, lpCallStatus);
262 return 0;
265 /***********************************************************************
266 * lineGetConfRelatedCalls (TAPI32.@)
268 DWORD WINAPI lineGetConfRelatedCalls(HCALL hCall, LPLINECALLLIST lpCallList)
270 FIXME("(%04x, %p): stub.\n", hCall, lpCallList);
271 return 0;
274 typedef struct tagTAPI_CountryInfo
276 DWORD dwCountryID;
277 DWORD dwCountryCode;
278 LPSTR lpCountryName;
279 LPSTR lpSameAreaRule;
280 LPSTR lpLongDistanceRule;
281 LPSTR lpInternationalRule;
282 } TAPI_CountryInfo;
284 /* FIXME: this should be stored in an ini file... perhaps TAPI.INI */
285 static TAPI_CountryInfo TAPI_LCList[] =
287 { 1, 61, "Australia", "", "0", "0011" },
288 { 2, 86, "China", "", "0", "00" },
289 { 3, 82, "Korea", "", "0", "00" },
290 { 4, 1, "USA", "", "0", "001" },
293 #define NUMCOUNTRIES (sizeof TAPI_LCList/sizeof (TAPI_CountryInfo))
295 /***********************************************************************
296 * lineGetCountry (TAPI32.@)
298 DWORD WINAPI lineGetCountry(DWORD dwCountryID, DWORD dwAPIVersion, LPLINECOUNTRYLIST lpLineCountryList)
300 DWORD dwAvailSize, dwOffset, i;
301 LPLINECOUNTRYENTRY lpLCE;
303 if(!lpLineCountryList) {
304 TRACE("(%08lx, %08lx, %p): stub. Returning LINEERR_INVALPOINTER\n",
305 dwCountryID, dwAPIVersion, lpLineCountryList);
306 return LINEERR_INVALPOINTER;
309 TRACE("(%08lx, %08lx, %p(%ld)): stub.\n",
310 dwCountryID, dwAPIVersion, lpLineCountryList,
311 lpLineCountryList->dwTotalSize);
313 dwAvailSize = lpLineCountryList->dwTotalSize;
314 dwOffset = sizeof (LINECOUNTRYLIST);
316 if(dwAvailSize<dwOffset)
317 return LINEERR_STRUCTURETOOSMALL;
319 memset(lpLineCountryList, 0, dwAvailSize);
321 lpLineCountryList->dwTotalSize = dwAvailSize;
322 lpLineCountryList->dwUsedSize = dwOffset;
323 lpLineCountryList->dwNumCountries = 0;
324 lpLineCountryList->dwCountryListSize = 0;
325 lpLineCountryList->dwCountryListOffset = dwOffset;
327 lpLCE = (LPLINECOUNTRYENTRY)(&lpLineCountryList[1]);
328 dwOffset+= NUMCOUNTRIES * sizeof (LINECOUNTRYENTRY);
330 for(i=0; i<NUMCOUNTRIES; i++)
332 LPSTR lpstr;
333 DWORD len;
335 if(dwCountryID && (TAPI_LCList[i].dwCountryID != dwCountryID))
336 continue;
338 len = strlen (TAPI_LCList[i].lpCountryName)+1;
339 len += strlen (TAPI_LCList[i].lpSameAreaRule)+1;
340 len += strlen (TAPI_LCList[i].lpLongDistanceRule)+1;
341 len += strlen (TAPI_LCList[i].lpInternationalRule)+1;
343 if(dwAvailSize<(dwOffset+len))
345 dwOffset+=len;
346 continue;
349 lpLineCountryList->dwNumCountries++;
350 lpLineCountryList->dwCountryListSize += len;
351 lpLineCountryList->dwUsedSize += sizeof (LINECOUNTRYENTRY); /* maybe wrong */
353 TRACE("Adding country %s at %p\n", TAPI_LCList[i].lpCountryName, &lpLCE[i]);
355 lpLCE[i].dwCountryID = TAPI_LCList[i].dwCountryID;
356 lpLCE[i].dwCountryCode = TAPI_LCList[i].dwCountryCode;
358 /* deal with troublesome dwNextCountryID */
359 if( (i+1) == NUMCOUNTRIES )
360 lpLCE[i].dwNextCountryID = 0;
361 else
362 lpLCE[i].dwNextCountryID = TAPI_LCList[i+1].dwCountryID;
364 /* add country name */
365 len = strlen(TAPI_LCList[i].lpCountryName)+1;
366 lpLCE[i].dwCountryNameSize = len;
367 lpLCE[i].dwCountryNameOffset = dwOffset;
368 lpstr = ((LPSTR)lpLineCountryList)+dwOffset;
369 strcpy(lpstr, TAPI_LCList[i].lpCountryName);
370 dwOffset+=len;
372 /* add Same Area Rule */
373 len = strlen (TAPI_LCList[i].lpSameAreaRule)+1;
374 lpLCE[i].dwSameAreaRuleSize = len;
375 lpLCE[i].dwSameAreaRuleOffset = dwOffset;
376 lpstr = ((LPSTR)lpLineCountryList)+dwOffset;
377 strcpy(lpstr, TAPI_LCList[i].lpSameAreaRule);
378 dwOffset+=len;
380 /* add Long Distance Rule */
381 len = strlen (TAPI_LCList[i].lpLongDistanceRule)+1;
382 lpLCE[i].dwLongDistanceRuleSize = len;
383 lpLCE[i].dwLongDistanceRuleOffset = dwOffset;
384 lpstr = ((LPSTR)lpLineCountryList)+dwOffset;
385 strcpy(lpstr, TAPI_LCList[i].lpLongDistanceRule);
386 dwOffset+=len;
388 /* add Long Distance Rule */
389 len = strlen (TAPI_LCList[i].lpInternationalRule)+1;
390 lpLCE[i].dwInternationalRuleSize = len;
391 lpLCE[i].dwInternationalRuleOffset = dwOffset;
392 lpstr = ((LPSTR)lpLineCountryList)+dwOffset;
393 strcpy(lpstr, TAPI_LCList[i].lpInternationalRule);
394 dwOffset+=len;
397 lpLineCountryList->dwNeededSize = dwOffset;
399 TRACE("%ld available %ld required\n", dwAvailSize, dwOffset);
401 return 0;
404 /***********************************************************************
405 * lineGetDevCaps (TAPI32.@)
407 DWORD WINAPI lineGetDevCaps(HLINEAPP hLineApp, DWORD dwDeviceID, DWORD dwAPIVersion, DWORD dwExtVersion, LPLINEDEVCAPS lpLineDevCaps)
409 FIXME("(%04x, %08lx, %08lx, %08lx, %p): stub.\n", hLineApp, dwDeviceID, dwAPIVersion, dwExtVersion, lpLineDevCaps);
410 return 0;
413 /***********************************************************************
414 * lineGetDevConfig (TAPI32.@)
416 DWORD WINAPI lineGetDevConfig(DWORD dwDeviceID, LPVARSTRING lpDeviceConfig, LPCSTR lpszDeviceClass)
418 FIXME("(%08lx, %p, %s): stub.\n", dwDeviceID, lpDeviceConfig, lpszDeviceClass);
419 return 0;
422 /***********************************************************************
423 * lineGetID (TAPI32.@)
425 DWORD WINAPI lineGetID(HLINE hLine, DWORD dwAddressID, HCALL hCall, DWORD dwSelect, LPVARSTRING lpDeviceID, LPCSTR lpszDeviceClass)
427 FIXME("(%04x, %08lx, %04x, %08lx, %p, %s): stub.\n", hLine, dwAddressID, hCall, dwSelect, lpDeviceID, lpszDeviceClass);
428 return 0;
431 /***********************************************************************
432 * lineGetIcon (TAPI32.@)
434 DWORD WINAPI lineGetIcon(DWORD dwDeviceID, LPCSTR lpszDeviceClass, HICON *lphIcon)
436 FIXME("(%08lx, %s, %p): stub.\n", dwDeviceID, lpszDeviceClass, lphIcon);
437 return 0;
440 /***********************************************************************
441 * lineGetLineDevStatus (TAPI32.@)
443 DWORD WINAPI lineGetLineDevStatus(HLINE hLine, LPLINEDEVSTATUS lpLineDevStatus)
445 FIXME("(%04x, %p): stub.\n", hLine, lpLineDevStatus);
446 return 0;
449 /***********************************************************************
450 * lineGetNewCalls (TAPI32.@)
452 DWORD WINAPI lineGetNewCalls(HLINE hLine, DWORD dwAddressID, DWORD dwSelect, LPLINECALLLIST lpCallList)
454 FIXME("(%04x, %08lx, %08lx, %p): stub.\n", hLine, dwAddressID, dwSelect, lpCallList);
455 return 0;
458 /***********************************************************************
459 * lineGetNumRings (TAPI32.@)
461 DWORD WINAPI lineGetNumRings(HLINE hLine, DWORD dwAddressID, LPDWORD lpdwNumRings)
463 FIXME("(%04x, %08lx, %p): stub.\n", hLine, dwAddressID, lpdwNumRings);
464 return 0;
467 /***********************************************************************
468 * lineGetProviderList (TAPI32.@)
470 DWORD WINAPI lineGetProviderList(DWORD dwAPIVersion, LPLINEPROVIDERLIST lpProviderList)
472 FIXME("(%08lx, %p): stub.\n", dwAPIVersion, lpProviderList);
473 return 0;
476 /***********************************************************************
477 * lineGetRequest (TAPI32.@)
479 DWORD WINAPI lineGetRequest(HLINEAPP hLineApp, DWORD dwRequestMode, LPVOID lpRequestBuffer)
481 FIXME("%04x, %08lx, %p): stub.\n", hLineApp, dwRequestMode, lpRequestBuffer);
482 return 0;
485 /***********************************************************************
486 * lineGetStatusMessages (TAPI32.@)
488 DWORD WINAPI lineGetStatusMessages(HLINE hLine, LPDWORD lpdwLineStatus, LPDWORD lpdwAddressStates)
490 FIXME("(%04x, %p, %p): stub.\n", hLine, lpdwLineStatus, lpdwAddressStates);
491 return 0;
494 /***********************************************************************
495 * lineGetTranslateCaps (TAPI32.@)
497 DWORD WINAPI lineGetTranslateCaps(HLINEAPP hLineApp, DWORD dwAPIVersion, LPLINETRANSLATECAPS lpTranslateCaps)
499 FIXME("(%04x, %08lx, %p): stub.\n", hLineApp, dwAPIVersion, lpTranslateCaps);
500 return 0;
503 /***********************************************************************
504 * lineHandoff (TAPI32.@)
506 DWORD WINAPI lineHandoff(HCALL hCall, LPCSTR lpszFileName, DWORD dwMediaMode)
508 FIXME("(%04x, %s, %08lx): stub.\n", hCall, lpszFileName, dwMediaMode);
509 return 0;
512 /***********************************************************************
513 * lineHold (TAPI32.@)
515 DWORD WINAPI lineHold(HCALL hCall)
517 FIXME("(%04x): stub.\n", hCall);
518 return 1;
521 /***********************************************************************
522 * lineInitialize (TAPI32.@)
524 DWORD WINAPI lineInitialize(
525 LPHLINEAPP lphLineApp,
526 HINSTANCE hInstance,
527 LINECALLBACK lpfnCallback,
528 LPCSTR lpszAppName,
529 LPDWORD lpdwNumDevs)
531 FIXME("(%p, %04x, %p, %s, %p): stub.\n", lphLineApp, hInstance,
532 lpfnCallback, debugstr_a(lpszAppName), lpdwNumDevs);
533 return 0;
536 /***********************************************************************
537 * lineMakeCall (TAPI32.@)
539 DWORD WINAPI lineMakeCall(HLINE hLine, LPHCALL lphCall, LPCSTR lpszDestAddress, DWORD dwCountryCode, LPLINECALLPARAMS lpCallParams)
541 FIXME("(%04x, %p, %s, %08lx, %p): stub.\n", hLine, lphCall, lpszDestAddress, dwCountryCode, lpCallParams);
542 return 1;
545 /***********************************************************************
546 * lineMonitorDigits (TAPI32.@)
548 DWORD WINAPI lineMonitorDigits(HCALL hCall, DWORD dwDigitModes)
550 FIXME("(%04x, %08lx): stub.\n", hCall, dwDigitModes);
551 return 0;
554 /***********************************************************************
555 * lineMonitorMedia (TAPI32.@)
557 DWORD WINAPI lineMonitorMedia(HCALL hCall, DWORD dwMediaModes)
559 FIXME("(%04x, %08lx): stub.\n", hCall, dwMediaModes);
560 return 0;
563 /***********************************************************************
564 * lineMonitorTones (TAPI32.@)
566 DWORD WINAPI lineMonitorTones(HCALL hCall, LPLINEMONITORTONE lpToneList, DWORD dwNumEntries)
568 FIXME("(%04x, %p, %08lx): stub.\n", hCall, lpToneList, dwNumEntries);
569 return 0;
572 /***********************************************************************
573 * lineNegotiateAPIVersion (TAPI32.@)
575 DWORD WINAPI lineNegotiateAPIVersion(
576 HLINEAPP hLineApp,
577 DWORD dwDeviceID,
578 DWORD dwAPILowVersion,
579 DWORD dwAPIHighVersion,
580 LPDWORD lpdwAPIVersion,
581 LPLINEEXTENSIONID lpExtensionID
584 FIXME("(%04x, %ld, %ld, %ld, %p, %p): stub.\n", hLineApp, dwDeviceID,
585 dwAPILowVersion, dwAPIHighVersion, lpdwAPIVersion, lpExtensionID);
586 *lpdwAPIVersion = dwAPIHighVersion;
587 return 0;
590 /***********************************************************************
591 * lineNegotiateExtVersion (TAPI32.@)
593 DWORD WINAPI lineNegotiateExtVersion(HLINEAPP hLineApp, DWORD dwDeviceID, DWORD dwAPIVersion, DWORD dwExtLowVersion, DWORD dwExtHighVersion, LPDWORD lpdwExtVersion)
595 FIXME("stub.\n");
596 return 0;
599 /***********************************************************************
600 * lineOpen (TAPI32.@)
602 DWORD WINAPI lineOpen(HLINEAPP hLineApp, DWORD dwDeviceID, LPHLINE lphLine, DWORD dwAPIVersion, DWORD dwExtVersion, DWORD dwCallbackInstance, DWORD dwPrivileges, DWORD dwMediaModes, LPLINECALLPARAMS lpCallParams)
604 FIXME("stub.\n");
605 return 0;
608 /***********************************************************************
609 * linePark (TAPI32.@)
611 DWORD WINAPI linePark(HCALL hCall, DWORD dwParkMode, LPCSTR lpszDirAddress, LPVARSTRING lpNonDirAddress)
613 FIXME("(%04x, %08lx, %s, %p): stub.\n", hCall, dwParkMode, lpszDirAddress, lpNonDirAddress);
614 return 1;
617 /***********************************************************************
618 * linePickup (TAPI32.@)
620 DWORD WINAPI linePickup(HLINE hLine, DWORD dwAddressID, LPHCALL lphCall, LPCSTR lpszDestAddress, LPCSTR lpszGroupID)
622 FIXME("(%04x, %08lx, %p, %s, %s): stub.\n", hLine, dwAddressID, lphCall, lpszDestAddress, lpszGroupID);
623 return 1;
626 /***********************************************************************
627 * linePrepareAddToConference (TAPI32.@)
629 DWORD WINAPI linePrepareAddToConference(HCALL hConfCall, LPHCALL lphConsultCall, LPLINECALLPARAMS lpCallParams)
631 FIXME("(%04x, %p, %p): stub.\n", hConfCall, lphConsultCall, lpCallParams);
632 return 1;
635 /***********************************************************************
636 * lineRedirect (TAPI32.@)
638 DWORD WINAPI lineRedirect(
639 HCALL hCall,
640 LPCSTR lpszDestAddress,
641 DWORD dwCountryCode) {
643 FIXME(": stub.\n");
644 return 1;
647 /***********************************************************************
648 * lineRegisterRequestRecipient (TAPI32.@)
650 DWORD WINAPI lineRegisterRequestRecipient(HLINEAPP hLineApp, DWORD dwRegistrationInstance, DWORD dwRequestMode, DWORD dwEnable)
652 FIXME("(%04x, %08lx, %08lx, %08lx): stub.\n", hLineApp, dwRegistrationInstance, dwRequestMode, dwEnable);
653 return 1;
656 /***********************************************************************
657 * lineReleaseUserUserInfo (TAPI32.@)
659 DWORD WINAPI lineReleaseUserUserInfo(HCALL hCall)
661 FIXME("(%04x): stub.\n", hCall);
662 return 1;
665 /***********************************************************************
666 * lineRemoveFromConference (TAPI32.@)
668 DWORD WINAPI lineRemoveFromConference(HCALL hCall)
670 FIXME("(%04x): stub.\n", hCall);
671 return 1;
674 /***********************************************************************
675 * lineRemoveProvider (TAPI32.@)
677 DWORD WINAPI lineRemoveProvider(DWORD dwPermanentProviderID, HWND hwndOwner)
679 FIXME("(%08lx, %04x): stub.\n", dwPermanentProviderID, hwndOwner);
680 return 1;
683 /***********************************************************************
684 * lineSecureCall (TAPI32.@)
686 DWORD WINAPI lineSecureCall(HCALL hCall)
688 FIXME("(%04x): stub.\n", hCall);
689 return 1;
692 /***********************************************************************
693 * lineSendUserUserInfo (TAPI32.@)
695 DWORD WINAPI lineSendUserUserInfo(HCALL hCall, LPCSTR lpsUserUserInfo, DWORD dwSize)
697 FIXME("(%04x, %s, %08lx): stub.\n", hCall, lpsUserUserInfo, dwSize);
698 return 1;
701 /***********************************************************************
702 * lineSetAppPriority (TAPI32.@)
704 DWORD WINAPI lineSetAppPriority(LPCSTR lpszAppFilename, DWORD dwMediaMode, LPLINEEXTENSIONID const lpExtensionID, DWORD dwRequestMode, LPCSTR lpszExtensionName, DWORD dwPriority)
706 FIXME("(%s, %08lx, %p, %08lx, %s, %08lx): stub.\n", lpszAppFilename, dwMediaMode, lpExtensionID, dwRequestMode, lpszExtensionName, dwPriority);
707 return 0;
710 /***********************************************************************
711 * lineSetAppSpecific (TAPI32.@)
713 DWORD WINAPI lineSetAppSpecific(HCALL hCall, DWORD dwAppSpecific)
715 FIXME("(%04x, %08lx): stub.\n", hCall, dwAppSpecific);
716 return 0;
719 /***********************************************************************
720 * lineSetCallParams (TAPI32.@)
722 DWORD WINAPI lineSetCallParams(HCALL hCall, DWORD dwBearerMode, DWORD dwMinRate, DWORD dwMaxRate, LPLINEDIALPARAMS lpDialParams)
724 FIXME("(%04x, %08lx, %08lx, %08lx, %p): stub.\n", hCall, dwBearerMode, dwMinRate, dwMaxRate, lpDialParams);
725 return 1;
728 /***********************************************************************
729 * lineSetCallPrivilege (TAPI32.@)
731 DWORD WINAPI lineSetCallPrivilege(HCALL hCall, DWORD dwCallPrivilege)
733 FIXME("(%04x, %08lx): stub.\n", hCall, dwCallPrivilege);
734 return 0;
737 /***********************************************************************
738 * lineSetCurrentLocation (TAPI32.@)
740 DWORD WINAPI lineSetCurrentLocation(HLINEAPP hLineApp, DWORD dwLocation)
742 FIXME("(%04x, %08lx): stub.\n", hLineApp, dwLocation);
743 return 0;
746 /***********************************************************************
747 * lineSetDevConfig (TAPI32.@)
749 DWORD WINAPI lineSetDevConfig(DWORD dwDeviceID, LPVOID lpDeviceConfig, DWORD dwSize, LPCSTR lpszDeviceClass)
751 FIXME("(%08lx, %p, %08lx, %s): stub.\n", dwDeviceID, lpDeviceConfig, dwSize, lpszDeviceClass);
752 return 0;
755 /***********************************************************************
756 * lineSetMediaControl (TAPI32.@)
758 DWORD WINAPI lineSetMediaControl(
759 HLINE hLine,
760 DWORD dwAddressID,
761 HCALL hCall,
762 DWORD dwSelect,
763 LPLINEMEDIACONTROLDIGIT const lpDigitList,
764 DWORD dwDigitNumEntries,
765 LPLINEMEDIACONTROLMEDIA const lpMediaList,
766 DWORD dwMediaNumEntries,
767 LPLINEMEDIACONTROLTONE const lpToneList,
768 DWORD dwToneNumEntries,
769 LPLINEMEDIACONTROLCALLSTATE const lpCallStateList,
770 DWORD dwCallStateNumEntries)
772 FIXME(": stub.\n");
773 return 0;
776 /***********************************************************************
777 * lineSetMediaMode (TAPI32.@)
779 DWORD WINAPI lineSetMediaMode(HCALL hCall, DWORD dwMediaModes)
781 FIXME("(%04x, %08lx): stub.\n", hCall, dwMediaModes);
782 return 0;
785 /***********************************************************************
786 * lineSetNumRings (TAPI32.@)
788 DWORD WINAPI lineSetNumRings(HLINE hLine, DWORD dwAddressID, DWORD dwNumRings)
790 FIXME("(%04x, %08lx, %08lx): stub.\n", hLine, dwAddressID, dwNumRings);
791 return 0;
794 /***********************************************************************
795 * lineSetStatusMessages (TAPI32.@)
797 DWORD WINAPI lineSetStatusMessages(HLINE hLine, DWORD dwLineStates, DWORD dwAddressStates)
799 FIXME("(%04x, %08lx, %08lx): stub.\n", hLine, dwLineStates, dwAddressStates);
800 return 0;
803 /***********************************************************************
804 * lineSetTerminal (TAPI32.@)
806 DWORD WINAPI lineSetTerminal(HLINE hLine, DWORD dwAddressID, HCALL hCall, DWORD dwSelect, DWORD dwTerminalModes, DWORD dwTerminalID, DWORD bEnable)
808 FIXME("(%04x, %08lx, %04x, %08lx, %08lx, %08lx, %08lx): stub.\n", hLine, dwAddressID, hCall, dwSelect, dwTerminalModes, dwTerminalID, bEnable);
809 return 1;
812 /***********************************************************************
813 * lineSetTollList (TAPI32.@)
815 DWORD WINAPI lineSetTollList(HLINEAPP hLineApp, DWORD dwDeviceID, LPCSTR lpszAddressIn, DWORD dwTollListOption)
817 FIXME("(%04x, %08lx, %s, %08lx): stub.\n", hLineApp, dwDeviceID, lpszAddressIn, dwTollListOption);
818 return 0;
821 /***********************************************************************
822 * lineSetupConference (TAPI32.@)
824 DWORD WINAPI lineSetupConference(HCALL hCall, HLINE hLine, LPHCALL lphConfCall, LPHCALL lphConsultCall, DWORD dwNumParties, LPLINECALLPARAMS lpCallParams)
826 FIXME("(%04x, %04x, %p, %p, %08lx, %p): stub.\n", hCall, hLine, lphConfCall, lphConsultCall, dwNumParties, lpCallParams);
827 return 1;
830 /***********************************************************************
831 * lineSetupTransfer (TAPI32.@)
833 DWORD WINAPI lineSetupTransfer(HCALL hCall, LPHCALL lphConsultCall, LPLINECALLPARAMS lpCallParams)
835 FIXME("(%04x, %p, %p): stub.\n", hCall, lphConsultCall, lpCallParams);
836 return 1;
839 /***********************************************************************
840 * lineShutdown (TAPI32.@)
842 DWORD WINAPI lineShutdown(HLINEAPP hLineApp)
844 FIXME("(%04x): stub.\n", hLineApp);
845 return 0;
848 /***********************************************************************
849 * lineSwapHold (TAPI32.@)
851 DWORD WINAPI lineSwapHold(HCALL hActiveCall, HCALL hHeldCall)
853 FIXME("(active: %04x, held: %04x): stub.\n", hActiveCall, hHeldCall);
854 return 1;
857 /***********************************************************************
858 * lineTranslateAddress (TAPI32.@)
860 DWORD WINAPI lineTranslateAddress(HLINEAPP hLineApp, DWORD dwDeviceID, DWORD dwAPIVersion, LPCSTR lpszAddressIn, DWORD dwCard, DWORD dwTranslateOptions, LPLINETRANSLATEOUTPUT lpTranslateOutput)
862 FIXME("(%04x, %08lx, %08lx, %s, %08lx, %08lx, %p): stub.\n", hLineApp, dwDeviceID, dwAPIVersion, lpszAddressIn, dwCard, dwTranslateOptions, lpTranslateOutput);
863 return 0;
866 /***********************************************************************
867 * lineTranslateDialog (TAPI32.@)
869 DWORD WINAPI lineTranslateDialog(HLINEAPP hLineApp, DWORD dwDeviceID, DWORD dwAPIVersion, HWND hwndOwner, LPCSTR lpszAddressIn)
871 FIXME("(%04x, %08lx, %08lx, %04x, %s): stub.\n", hLineApp, dwDeviceID, dwAPIVersion, hwndOwner, lpszAddressIn);
872 return 0;
875 /***********************************************************************
876 * lineUncompleteCall (TAPI32.@)
878 DWORD WINAPI lineUncompleteCall(HLINE hLine, DWORD dwCompletionID)
880 FIXME("(%04x, %08lx): stub.\n", hLine, dwCompletionID);
881 return 1;
884 /***********************************************************************
885 * lineUnhold (TAPI32.@)
887 DWORD WINAPI lineUnhold(HCALL hCall)
889 FIXME("(%04x): stub.\n", hCall);
890 return 1;
893 /***********************************************************************
894 * lineUnpark (TAPI32.@)
896 DWORD WINAPI lineUnpark(HLINE hLine, DWORD dwAddressID, LPHCALL lphCall, LPCSTR lpszDestAddress)
898 FIXME("(%04x, %08lx, %p, %s): stub.\n", hLine, dwAddressID, lphCall, lpszDestAddress);
899 return 1;