Rewrite EscapeCommFunction16 to use EscapeCommFunction.
[wine/wine-kai.git] / dlls / tapi32 / line.c
blobb0ca19db62b6a738e85e11f0af61ae0e0502f78e
1 /*
2 * TAPI32 line services
4 * Copyright 1999 Andreas Mohr
5 */
7 #include <string.h>
8 #include <stdlib.h>
9 #include <stdio.h>
10 #include "winbase.h"
11 #include "windef.h"
12 #include "tapi.h"
13 #include "debugtools.h"
15 DEFAULT_DEBUG_CHANNEL(tapi);
17 /***********************************************************************
18 * lineAccept (TAPI32.@)
20 DWORD WINAPI lineAccept(HCALL hCall, LPCSTR lpsUserUserInfo, DWORD dwSize)
22 FIXME("(%04x, %s, %ld): stub.\n", hCall, lpsUserUserInfo, dwSize);
23 return 1;
26 /***********************************************************************
27 * lineAddProvider (TAPI32.@)
29 DWORD WINAPI lineAddProvider(LPCSTR lpszProviderName, HWND hwndOwner, LPDWORD lpdwPermanentProviderID)
31 FIXME("(%s, %04x, %p): stub.\n", lpszProviderName, hwndOwner, lpdwPermanentProviderID);
32 return 1;
35 /***********************************************************************
36 * lineAddToConference (TAPI32.@)
38 DWORD WINAPI lineAddToConference(HCALL hConfCall, HCALL hConsultCall)
40 FIXME("(%04x, %04x): stub.\n", hConfCall, hConsultCall);
41 return 1;
44 /***********************************************************************
45 * lineAnswer (TAPI32.@)
47 DWORD WINAPI lineAnswer(HCALL hCall, LPCSTR lpsUserUserInfo, DWORD dwSize)
49 FIXME("(%04x, %s, %ld): stub.\n", hCall, lpsUserUserInfo, dwSize);
50 return 1;
53 /***********************************************************************
54 * lineBlindTransfer (TAPI32.@)
56 DWORD WINAPI lineBlindTransfer(HCALL hCall, LPCSTR lpszDestAddress, DWORD dwCountryCode)
58 FIXME("(%04x, %s, %08lx): stub.\n", hCall, lpszDestAddress, dwCountryCode);
59 return 1;
62 /***********************************************************************
63 * lineClose (TAPI32.@)
65 DWORD WINAPI lineClose(HLINE hLine)
67 FIXME("(%04x): stub.\n", hLine);
68 return 0;
71 /***********************************************************************
72 * lineCompleteCall (TAPI32.@)
74 DWORD WINAPI lineCompleteCall(HCALL hCall, LPDWORD lpdwCompletionID, DWORD dwCompletionMode, DWORD dwMessageID)
76 FIXME("(%04x, %p, %08lx, %08lx): stub.\n", hCall, lpdwCompletionID, dwCompletionMode, dwMessageID);
77 return 1;
80 /***********************************************************************
81 * lineCompleteTransfer (TAPI32.@)
83 DWORD WINAPI lineCompleteTransfer(HCALL hCall, HCALL hConsultCall, LPHCALL lphConfCall, DWORD dwTransferMode)
85 FIXME("(%04x, %04x, %p, %08lx): stub.\n", hCall, hConsultCall, lphConfCall, dwTransferMode);
86 return 1;
89 /***********************************************************************
90 * lineConfigDialog (TAPI32.@)
92 DWORD WINAPI lineConfigDialog(DWORD dwDeviceID, HWND hwndOwner, LPCSTR lpszDeviceClass)
94 FIXME("(%08lx, %04x, %s): stub.\n", dwDeviceID, hwndOwner, lpszDeviceClass);
95 return 0;
98 /***********************************************************************
99 * lineConfigDialogEdit (TAPI32.@)
101 DWORD WINAPI lineConfigDialogEdit(DWORD dwDeviceID, HWND hwndOwner, LPCSTR lpszDeviceClass, LPVOID const lpDeviceConfigIn, DWORD dwSize, LPVARSTRING lpDeviceConfigOut)
103 FIXME("stub.\n");
104 return 0;
107 /***********************************************************************
108 * lineConfigProvider (TAPI32.@)
110 DWORD WINAPI lineConfigProvider(HWND hwndOwner, DWORD dwPermanentProviderID)
112 FIXME("(%04x, %08lx): stub.\n", hwndOwner, dwPermanentProviderID);
113 return 0;
116 /***********************************************************************
117 * lineDeallocateCall (TAPI32.@)
119 DWORD WINAPI lineDeallocateCall(HCALL hCall)
121 FIXME("(%04x): stub.\n", hCall);
122 return 0;
125 /***********************************************************************
126 * lineDevSpecific (TAPI32.@)
128 DWORD WINAPI lineDevSpecific(HLINE hLine, DWORD dwAddressId, HCALL hCall, LPVOID lpParams, DWORD dwSize)
130 FIXME("(%04x, %08lx, %04x, %p, %ld): stub.\n", hLine, dwAddressId, hCall, lpParams, dwSize);
131 return 1;
134 /***********************************************************************
135 * lineDevSpecificFeature (TAPI32.@)
137 DWORD WINAPI lineDevSpecificFeature(HLINE hLine, DWORD dwFeature, LPVOID lpParams, DWORD dwSize)
139 FIXME("(%04x, %08lx, %p, %ld): stub.\n", hLine, dwFeature, lpParams, dwSize);
140 return 1;
143 /***********************************************************************
144 * lineDial (TAPI32.@)
146 DWORD WINAPI lineDial(HCALL hCall, LPCSTR lpszDestAddress, DWORD dwCountryCode)
148 FIXME("(%04x, %s, %08lx): stub.\n", hCall, lpszDestAddress, dwCountryCode);
149 return 1;
152 /***********************************************************************
153 * lineDrop (TAPI32.@)
155 DWORD WINAPI lineDrop(HCALL hCall, LPCSTR lpsUserUserInfo, DWORD dwSize)
157 FIXME("(%04x, %s, %08lx): stub.\n", hCall, lpsUserUserInfo, dwSize);
158 return 1;
161 /***********************************************************************
162 * lineForward (TAPI32.@)
164 DWORD WINAPI lineForward(HLINE hLine, DWORD bAllAddress, DWORD dwAdressID, LPLINEFORWARDLIST lpForwardList, DWORD dwNumRingsNoAnswer, LPHCALL lphConsultCall, LPLINECALLPARAMS lpCallParams)
166 FIXME("stub.\n");
167 return 1;
170 /***********************************************************************
171 * lineGatherDigits (TAPI32.@)
173 DWORD WINAPI lineGatherDigits(HCALL hCall, DWORD dwDigitModes, LPSTR lpsDigits, DWORD dwNumDigits, LPCSTR lpszTerminationDigits, DWORD dwFirstDigitTimeout, DWORD dwInterDigitTimeout)
175 FIXME("stub.\n");
176 return 0;
179 /***********************************************************************
180 * lineGenerateDigits (TAPI32.@)
182 DWORD WINAPI lineGenerateDigits(HCALL hCall, DWORD dwDigitModes, LPCSTR lpszDigits, DWORD dwDuration)
184 FIXME("(%04x, %08lx, %s, %ld): stub.\n", hCall, dwDigitModes, lpszDigits, dwDuration);
185 return 0;
188 /***********************************************************************
189 * lineGenerateTone (TAPI32.@)
191 DWORD WINAPI lineGenerateTone(HCALL hCall, DWORD dwToneMode, DWORD dwDuration, DWORD dwNumTones, LPLINEGENERATETONE lpTones)
193 FIXME("(%04x, %08lx, %ld, %ld, %p): stub.\n", hCall, dwToneMode, dwDuration, dwNumTones, lpTones);
194 return 0;
197 /***********************************************************************
198 * lineGetAddressCaps (TAPI32.@)
200 DWORD WINAPI lineGetAddressCaps(HLINEAPP hLineApp, DWORD dwDeviceID, DWORD dwAddressID, DWORD dwAPIVersion, DWORD dwExtVersion, LPLINEADDRESSCAPS lpAddressCaps)
202 FIXME("(%04x, %08lx, %08lx, %08lx, %08lx, %p): stub.\n", hLineApp, dwDeviceID, dwAddressID, dwAPIVersion, dwExtVersion, lpAddressCaps);
203 return 0;
206 /***********************************************************************
207 * lineGetAddressID (TAPI32.@)
209 DWORD WINAPI lineGetAddressID(HLINE hLine, LPDWORD lpdwAddressID, DWORD dwAddressMode, LPCSTR lpsAddress, DWORD dwSize)
211 FIXME("%04x, %p, %08lx, %s, %ld): stub.\n", hLine, lpdwAddressID, dwAddressMode, lpsAddress, dwSize);
212 return 0;
215 /***********************************************************************
216 * lineGetAddressStatus (TAPI32.@)
218 DWORD WINAPI lineGetAddressStatus(HLINE hLine, DWORD dwAddressID, LPLINEADDRESSSTATUS lpAddressStatus)
220 FIXME("(%04x, %08lx, %p): stub.\n", hLine, dwAddressID, lpAddressStatus);
221 return 0;
224 /***********************************************************************
225 * lineGetAppPriority (TAPI32.@)
227 DWORD WINAPI lineGetAppPriority(LPCSTR lpszAppFilename, DWORD dwMediaMode, LPLINEEXTENSIONID const lpExtensionID, DWORD dwRequestMode, LPVARSTRING lpExtensionName, LPDWORD lpdwPriority)
229 FIXME("(%s, %08lx, %p, %08lx, %p, %p): stub.\n", lpszAppFilename, dwMediaMode, lpExtensionID, dwRequestMode, lpExtensionName, lpdwPriority);
230 return 0;
233 /***********************************************************************
234 * lineGetCallInfo (TAPI32.@)
236 DWORD WINAPI lineGetCallInfo(HCALL hCall, LPLINECALLINFO lpCallInfo)
238 FIXME("(%04x, %p): stub.\n", hCall, lpCallInfo);
239 return 0;
242 /***********************************************************************
243 * lineGetCallStatus (TAPI32.@)
245 DWORD WINAPI lineGetCallStatus(HCALL hCall, LPLINECALLSTATUS lpCallStatus)
247 FIXME("(%04x, %p): stub.\n", hCall, lpCallStatus);
248 return 0;
251 /***********************************************************************
252 * lineGetConfRelatedCalls (TAPI32.@)
254 DWORD WINAPI lineGetConfRelatedCalls(HCALL hCall, LPLINECALLLIST lpCallList)
256 FIXME("(%04x, %p): stub.\n", hCall, lpCallList);
257 return 0;
260 typedef struct tagTAPI_CountryInfo
262 DWORD dwCountryID;
263 DWORD dwCountryCode;
264 LPSTR lpCountryName;
265 LPSTR lpSameAreaRule;
266 LPSTR lpLongDistanceRule;
267 LPSTR lpInternationalRule;
268 } TAPI_CountryInfo;
270 /* FIXME: this should be stored in an ini file... perhaps TAPI.INI */
271 static TAPI_CountryInfo TAPI_LCList[] =
273 { 1, 61, "Australia", "", "0", "0011" },
274 { 2, 86, "China", "", "0", "00" },
275 { 3, 82, "Korea", "", "0", "00" },
276 { 4, 1, "USA", "", "0", "001" },
279 #define NUMCOUNTRIES (sizeof TAPI_LCList/sizeof (TAPI_CountryInfo))
281 /***********************************************************************
282 * lineGetCountry (TAPI32.@)
284 DWORD WINAPI lineGetCountry(DWORD dwCountryID, DWORD dwAPIVersion, LPLINECOUNTRYLIST lpLineCountryList)
286 DWORD dwAvailSize, dwOffset, i;
287 LPLINECOUNTRYENTRY lpLCE;
289 TRACE("(%08lx, %08lx, %p): stub.\n", dwCountryID, dwAPIVersion, lpLineCountryList);
291 dwAvailSize = lpLineCountryList->dwTotalSize;
292 dwOffset = sizeof (LINECOUNTRYLIST);
294 if(dwAvailSize<dwOffset)
295 return LINEERR_STRUCTURETOOSMALL;
297 if(!lpLineCountryList)
298 return LINEERR_INVALPOINTER;
300 memset(lpLineCountryList, 0, dwAvailSize);
302 lpLineCountryList->dwUsedSize = dwOffset;
303 lpLineCountryList->dwNumCountries = 0;
304 lpLineCountryList->dwCountryListSize = 0;
305 lpLineCountryList->dwCountryListOffset = dwOffset;
307 lpLCE = (LPLINECOUNTRYENTRY)(&lpLineCountryList[1]);
308 dwOffset+= NUMCOUNTRIES * sizeof (LINECOUNTRYENTRY);
310 for(i=0; i<NUMCOUNTRIES; i++)
312 LPSTR lpstr;
313 DWORD len;
315 if(dwCountryID && (TAPI_LCList[i].dwCountryID != dwCountryID))
316 continue;
318 len = strlen (TAPI_LCList[i].lpCountryName)+1;
319 len += strlen (TAPI_LCList[i].lpSameAreaRule)+1;
320 len += strlen (TAPI_LCList[i].lpLongDistanceRule)+1;
321 len += strlen (TAPI_LCList[i].lpInternationalRule)+1;
323 if(dwAvailSize<(dwOffset+len))
325 dwOffset+=len;
326 continue;
329 lpLineCountryList->dwNumCountries++;
330 lpLineCountryList->dwCountryListSize += len;
331 lpLineCountryList->dwUsedSize += sizeof (LINECOUNTRYENTRY); /* maybe wrong */
333 TRACE("Adding country %s at %p\n", TAPI_LCList[i].lpCountryName, lpLCE);
335 lpLCE[i].dwCountryID = TAPI_LCList[i].dwCountryID;
336 lpLCE[i].dwCountryCode = TAPI_LCList[i].dwCountryCode;
338 /* deal with troublesome dwNextCountryID */
339 if( (i+1) == NUMCOUNTRIES )
340 lpLCE[i].dwNextCountryID = 0;
341 else
342 lpLCE[i].dwNextCountryID = TAPI_LCList[i+1].dwCountryID;
344 /* add country name */
345 len = strlen(TAPI_LCList[i].lpCountryName)+1;
346 lpLCE[i].dwCountryNameSize = len;
347 lpLCE[i].dwCountryNameOffset = dwOffset;
348 lpstr = ((LPSTR)lpLineCountryList)+dwOffset;
349 strcpy(lpstr, TAPI_LCList[i].lpCountryName);
350 dwOffset+=len;
352 /* add Same Area Rule */
353 len = strlen (TAPI_LCList[i].lpSameAreaRule)+1;
354 lpLCE[i].dwSameAreaRuleSize = len;
355 lpLCE[i].dwSameAreaRuleOffset = dwOffset;
356 lpstr = ((LPSTR)lpLineCountryList)+dwOffset;
357 strcpy(lpstr, TAPI_LCList[i].lpSameAreaRule);
358 dwOffset+=len;
360 /* add Long Distance Rule */
361 len = strlen (TAPI_LCList[i].lpLongDistanceRule)+1;
362 lpLCE[i].dwLongDistanceRuleSize = len;
363 lpLCE[i].dwLongDistanceRuleOffset = dwOffset;
364 lpstr = ((LPSTR)lpLineCountryList)+dwOffset;
365 strcpy(lpstr, TAPI_LCList[i].lpLongDistanceRule);
366 dwOffset+=len;
368 /* add Long Distance Rule */
369 len = strlen (TAPI_LCList[i].lpInternationalRule)+1;
370 lpLCE[i].dwInternationalRuleSize = len;
371 lpLCE[i].dwInternationalRuleOffset = dwOffset;
372 lpstr = ((LPSTR)lpLineCountryList)+dwOffset;
373 strcpy(lpstr, TAPI_LCList[i].lpInternationalRule);
374 dwOffset+=len;
377 lpLineCountryList->dwNeededSize = dwOffset;
379 TRACE("%ld available %ld required\n", dwAvailSize, dwOffset);
381 return 0;
384 /***********************************************************************
385 * lineGetDevCaps (TAPI32.@)
387 DWORD WINAPI lineGetDevCaps(HLINEAPP hLineApp, DWORD dwDeviceID, DWORD dwAPIVersion, DWORD dwExtVersion, LPLINEDEVCAPS lpLineDevCaps)
389 FIXME("(%04x, %08lx, %08lx, %08lx, %p): stub.\n", hLineApp, dwDeviceID, dwAPIVersion, dwExtVersion, lpLineDevCaps);
390 return 0;
393 /***********************************************************************
394 * lineGetDevConfig (TAPI32.@)
396 DWORD WINAPI lineGetDevConfig(DWORD dwDeviceID, LPVARSTRING lpDeviceConfig, LPCSTR lpszDeviceClass)
398 FIXME("(%08lx, %p, %s): stub.\n", dwDeviceID, lpDeviceConfig, lpszDeviceClass);
399 return 0;
402 /***********************************************************************
403 * lineGetID (TAPI32.@)
405 DWORD WINAPI lineGetID(HLINE hLine, DWORD dwAddressID, HCALL hCall, DWORD dwSelect, LPVARSTRING lpDeviceID, LPCSTR lpszDeviceClass)
407 FIXME("(%04x, %08lx, %04x, %08lx, %p, %s): stub.\n", hLine, dwAddressID, hCall, dwSelect, lpDeviceID, lpszDeviceClass);
408 return 0;
411 /***********************************************************************
412 * lineGetIcon (TAPI32.@)
414 DWORD WINAPI lineGetIcon(DWORD dwDeviceID, LPCSTR lpszDeviceClass, HICON *lphIcon)
416 FIXME("(%08lx, %s, %p): stub.\n", dwDeviceID, lpszDeviceClass, lphIcon);
417 return 0;
420 /***********************************************************************
421 * lineGetLineDevStatus (TAPI32.@)
423 DWORD WINAPI lineGetLineDevStatus(HLINE hLine, LPLINEDEVSTATUS lpLineDevStatus)
425 FIXME("(%04x, %p): stub.\n", hLine, lpLineDevStatus);
426 return 0;
429 /***********************************************************************
430 * lineGetNewCalls (TAPI32.@)
432 DWORD WINAPI lineGetNewCalls(HLINE hLine, DWORD dwAddressID, DWORD dwSelect, LPLINECALLLIST lpCallList)
434 FIXME("(%04x, %08lx, %08lx, %p): stub.\n", hLine, dwAddressID, dwSelect, lpCallList);
435 return 0;
438 /***********************************************************************
439 * lineGetNumRings (TAPI32.@)
441 DWORD WINAPI lineGetNumRings(HLINE hLine, DWORD dwAddressID, LPDWORD lpdwNumRings)
443 FIXME("(%04x, %08lx, %p): stub.\n", hLine, dwAddressID, lpdwNumRings);
444 return 0;
447 /***********************************************************************
448 * lineGetProviderList (TAPI32.@)
450 DWORD WINAPI lineGetProviderList(DWORD dwAPIVersion, LPLINEPROVIDERLIST lpProviderList)
452 FIXME("(%08lx, %p): stub.\n", dwAPIVersion, lpProviderList);
453 return 0;
456 /***********************************************************************
457 * lineGetRequest (TAPI32.@)
459 DWORD WINAPI lineGetRequest(HLINEAPP hLineApp, DWORD dwRequestMode, LPVOID lpRequestBuffer)
461 FIXME("%04x, %08lx, %p): stub.\n", hLineApp, dwRequestMode, lpRequestBuffer);
462 return 0;
465 /***********************************************************************
466 * lineGetStatusMessages (TAPI32.@)
468 DWORD WINAPI lineGetStatusMessages(HLINE hLine, LPDWORD lpdwLineStatus, LPDWORD lpdwAddressStates)
470 FIXME("(%04x, %p, %p): stub.\n", hLine, lpdwLineStatus, lpdwAddressStates);
471 return 0;
474 /***********************************************************************
475 * lineGetTranslateCaps (TAPI32.@)
477 DWORD WINAPI lineGetTranslateCaps(HLINEAPP hLineApp, DWORD dwAPIVersion, LPLINETRANSLATECAPS lpTranslateCaps)
479 FIXME("(%04x, %08lx, %p): stub.\n", hLineApp, dwAPIVersion, lpTranslateCaps);
480 return 0;
483 /***********************************************************************
484 * lineHandoff (TAPI32.@)
486 DWORD WINAPI lineHandoff(HCALL hCall, LPCSTR lpszFileName, DWORD dwMediaMode)
488 FIXME("(%04x, %s, %08lx): stub.\n", hCall, lpszFileName, dwMediaMode);
489 return 0;
492 /***********************************************************************
493 * lineHold (TAPI32.@)
495 DWORD WINAPI lineHold(HCALL hCall)
497 FIXME("(%04x): stub.\n", hCall);
498 return 1;
501 /***********************************************************************
502 * lineInitialize (TAPI32.@)
504 DWORD WINAPI lineInitialize(
505 LPHLINEAPP lphLineApp,
506 HINSTANCE hInstance,
507 LINECALLBACK lpfnCallback,
508 LPCSTR lpszAppName,
509 LPDWORD lpdwNumDevs)
511 FIXME("(%p, %04x, %p, %s, %p): stub.\n", lphLineApp, hInstance,
512 lpfnCallback, debugstr_a(lpszAppName), lpdwNumDevs);
513 return 0;
516 /***********************************************************************
517 * lineMakeCall (TAPI32.@)
519 DWORD WINAPI lineMakeCall(HLINE hLine, LPHCALL lphCall, LPCSTR lpszDestAddress, DWORD dwCountryCode, LPLINECALLPARAMS lpCallParams)
521 FIXME("(%04x, %p, %s, %08lx, %p): stub.\n", hLine, lphCall, lpszDestAddress, dwCountryCode, lpCallParams);
522 return 1;
525 /***********************************************************************
526 * lineMonitorDigits (TAPI32.@)
528 DWORD WINAPI lineMonitorDigits(HCALL hCall, DWORD dwDigitModes)
530 FIXME("(%04x, %08lx): stub.\n", hCall, dwDigitModes);
531 return 0;
534 /***********************************************************************
535 * lineMonitorMedia (TAPI32.@)
537 DWORD WINAPI lineMonitorMedia(HCALL hCall, DWORD dwMediaModes)
539 FIXME("(%04x, %08lx): stub.\n", hCall, dwMediaModes);
540 return 0;
543 /***********************************************************************
544 * lineMonitorTones (TAPI32.@)
546 DWORD WINAPI lineMonitorTones(HCALL hCall, LPLINEMONITORTONE lpToneList, DWORD dwNumEntries)
548 FIXME("(%04x, %p, %08lx): stub.\n", hCall, lpToneList, dwNumEntries);
549 return 0;
552 /***********************************************************************
553 * lineNegotiateAPIVersion (TAPI32.@)
555 DWORD WINAPI lineNegotiateAPIVersion(
556 HLINEAPP hLineApp,
557 DWORD dwDeviceID,
558 DWORD dwAPILowVersion,
559 DWORD dwAPIHighVersion,
560 LPDWORD lpdwAPIVersion,
561 LPLINEEXTENSIONID lpExtensionID
564 FIXME("(%04x, %ld, %ld, %ld, %p, %p): stub.\n", hLineApp, dwDeviceID,
565 dwAPILowVersion, dwAPIHighVersion, lpdwAPIVersion, lpExtensionID);
566 *lpdwAPIVersion = dwAPIHighVersion;
567 return 0;
570 /***********************************************************************
571 * lineNegotiateExtVersion (TAPI32.@)
573 DWORD WINAPI lineNegotiateExtVersion(HLINEAPP hLineApp, DWORD dwDeviceID, DWORD dwAPIVersion, DWORD dwExtLowVersion, DWORD dwExtHighVersion, LPDWORD lpdwExtVersion)
575 FIXME("stub.\n");
576 return 0;
579 /***********************************************************************
580 * lineOpen (TAPI32.@)
582 DWORD WINAPI lineOpen(HLINEAPP hLineApp, DWORD dwDeviceID, LPHLINE lphLine, DWORD dwAPIVersion, DWORD dwExtVersion, DWORD dwCallbackInstance, DWORD dwPrivileges, DWORD dwMediaModes, LPLINECALLPARAMS lpCallParams)
584 FIXME("stub.\n");
585 return 0;
588 /***********************************************************************
589 * linePark (TAPI32.@)
591 DWORD WINAPI linePark(HCALL hCall, DWORD dwParkMode, LPCSTR lpszDirAddress, LPVARSTRING lpNonDirAddress)
593 FIXME("(%04x, %08lx, %s, %p): stub.\n", hCall, dwParkMode, lpszDirAddress, lpNonDirAddress);
594 return 1;
597 /***********************************************************************
598 * linePickup (TAPI32.@)
600 DWORD WINAPI linePickup(HLINE hLine, DWORD dwAddressID, LPHCALL lphCall, LPCSTR lpszDestAddress, LPCSTR lpszGroupID)
602 FIXME("(%04x, %08lx, %p, %s, %s): stub.\n", hLine, dwAddressID, lphCall, lpszDestAddress, lpszGroupID);
603 return 1;
606 /***********************************************************************
607 * linePrepareAddToConference (TAPI32.@)
609 DWORD WINAPI linePrepareAddToConference(HCALL hConfCall, LPHCALL lphConsultCall, LPLINECALLPARAMS lpCallParams)
611 FIXME("(%04x, %p, %p): stub.\n", hConfCall, lphConsultCall, lpCallParams);
612 return 1;
615 /***********************************************************************
616 * lineRedirect (TAPI32.@)
618 DWORD WINAPI lineRedirect(
619 HCALL hCall,
620 LPCSTR lpszDestAddress,
621 DWORD dwCountryCode) {
623 FIXME(": stub.\n");
624 return 1;
627 /***********************************************************************
628 * lineRegisterRequestRecipient (TAPI32.@)
630 DWORD WINAPI lineRegisterRequestRecipient(HLINEAPP hLineApp, DWORD dwRegistrationInstance, DWORD dwRequestMode, DWORD dwEnable)
632 FIXME("(%04x, %08lx, %08lx, %08lx): stub.\n", hLineApp, dwRegistrationInstance, dwRequestMode, dwEnable);
633 return 1;
636 /***********************************************************************
637 * lineReleaseUserUserInfo (TAPI32.@)
639 DWORD WINAPI lineReleaseUserUserInfo(HCALL hCall)
641 FIXME("(%04x): stub.\n", hCall);
642 return 1;
645 /***********************************************************************
646 * lineRemoveFromConference (TAPI32.@)
648 DWORD WINAPI lineRemoveFromConference(HCALL hCall)
650 FIXME("(%04x): stub.\n", hCall);
651 return 1;
654 /***********************************************************************
655 * lineRemoveProvider (TAPI32.@)
657 DWORD WINAPI lineRemoveProvider(DWORD dwPermanentProviderID, HWND hwndOwner)
659 FIXME("(%08lx, %04x): stub.\n", dwPermanentProviderID, hwndOwner);
660 return 1;
663 /***********************************************************************
664 * lineSecureCall (TAPI32.@)
666 DWORD WINAPI lineSecureCall(HCALL hCall)
668 FIXME("(%04x): stub.\n", hCall);
669 return 1;
672 /***********************************************************************
673 * lineSendUserUserInfo (TAPI32.@)
675 DWORD WINAPI lineSendUserUserInfo(HCALL hCall, LPCSTR lpsUserUserInfo, DWORD dwSize)
677 FIXME("(%04x, %s, %08lx): stub.\n", hCall, lpsUserUserInfo, dwSize);
678 return 1;
681 /***********************************************************************
682 * lineSetAppPriority (TAPI32.@)
684 DWORD WINAPI lineSetAppPriority(LPCSTR lpszAppFilename, DWORD dwMediaMode, LPLINEEXTENSIONID const lpExtensionID, DWORD dwRequestMode, LPCSTR lpszExtensionName, DWORD dwPriority)
686 FIXME("(%s, %08lx, %p, %08lx, %s, %08lx): stub.\n", lpszAppFilename, dwMediaMode, lpExtensionID, dwRequestMode, lpszExtensionName, dwPriority);
687 return 0;
690 /***********************************************************************
691 * lineSetAppSpecific (TAPI32.@)
693 DWORD WINAPI lineSetAppSpecific(HCALL hCall, DWORD dwAppSpecific)
695 FIXME("(%04x, %08lx): stub.\n", hCall, dwAppSpecific);
696 return 0;
699 /***********************************************************************
700 * lineSetCallParams (TAPI32.@)
702 DWORD WINAPI lineSetCallParams(HCALL hCall, DWORD dwBearerMode, DWORD dwMinRate, DWORD dwMaxRate, LPLINEDIALPARAMS lpDialParams)
704 FIXME("(%04x, %08lx, %08lx, %08lx, %p): stub.\n", hCall, dwBearerMode, dwMinRate, dwMaxRate, lpDialParams);
705 return 1;
708 /***********************************************************************
709 * lineSetCallPrivilege (TAPI32.@)
711 DWORD WINAPI lineSetCallPrivilege(HCALL hCall, DWORD dwCallPrivilege)
713 FIXME("(%04x, %08lx): stub.\n", hCall, dwCallPrivilege);
714 return 0;
717 /***********************************************************************
718 * lineSetCurrentLocation (TAPI32.@)
720 DWORD WINAPI lineSetCurrentLocation(HLINEAPP hLineApp, DWORD dwLocation)
722 FIXME("(%04x, %08lx): stub.\n", hLineApp, dwLocation);
723 return 0;
726 /***********************************************************************
727 * lineSetDevConfig (TAPI32.@)
729 DWORD WINAPI lineSetDevConfig(DWORD dwDeviceID, LPVOID lpDeviceConfig, DWORD dwSize, LPCSTR lpszDeviceClass)
731 FIXME("(%08lx, %p, %08lx, %s): stub.\n", dwDeviceID, lpDeviceConfig, dwSize, lpszDeviceClass);
732 return 0;
735 /***********************************************************************
736 * lineSetMediaControl (TAPI32.@)
738 DWORD WINAPI lineSetMediaControl(
739 HLINE hLine,
740 DWORD dwAddressID,
741 HCALL hCall,
742 DWORD dwSelect,
743 LPLINEMEDIACONTROLDIGIT const lpDigitList,
744 DWORD dwDigitNumEntries,
745 LPLINEMEDIACONTROLMEDIA const lpMediaList,
746 DWORD dwMediaNumEntries,
747 LPLINEMEDIACONTROLTONE const lpToneList,
748 DWORD dwToneNumEntries,
749 LPLINEMEDIACONTROLCALLSTATE const lpCallStateList,
750 DWORD dwCallStateNumEntries)
752 FIXME(": stub.\n");
753 return 0;
756 /***********************************************************************
757 * lineSetMediaMode (TAPI32.@)
759 DWORD WINAPI lineSetMediaMode(HCALL hCall, DWORD dwMediaModes)
761 FIXME("(%04x, %08lx): stub.\n", hCall, dwMediaModes);
762 return 0;
765 /***********************************************************************
766 * lineSetNumRings (TAPI32.@)
768 DWORD WINAPI lineSetNumRings(HLINE hLine, DWORD dwAddressID, DWORD dwNumRings)
770 FIXME("(%04x, %08lx, %08lx): stub.\n", hLine, dwAddressID, dwNumRings);
771 return 0;
774 /***********************************************************************
775 * lineSetStatusMessages (TAPI32.@)
777 DWORD WINAPI lineSetStatusMessages(HLINE hLine, DWORD dwLineStates, DWORD dwAddressStates)
779 FIXME("(%04x, %08lx, %08lx): stub.\n", hLine, dwLineStates, dwAddressStates);
780 return 0;
783 /***********************************************************************
784 * lineSetTerminal (TAPI32.@)
786 DWORD WINAPI lineSetTerminal(HLINE hLine, DWORD dwAddressID, HCALL hCall, DWORD dwSelect, DWORD dwTerminalModes, DWORD dwTerminalID, DWORD bEnable)
788 FIXME("(%04x, %08lx, %04x, %08lx, %08lx, %08lx, %08lx): stub.\n", hLine, dwAddressID, hCall, dwSelect, dwTerminalModes, dwTerminalID, bEnable);
789 return 1;
792 /***********************************************************************
793 * lineSetTollList (TAPI32.@)
795 DWORD WINAPI lineSetTollList(HLINEAPP hLineApp, DWORD dwDeviceID, LPCSTR lpszAddressIn, DWORD dwTollListOption)
797 FIXME("(%04x, %08lx, %s, %08lx): stub.\n", hLineApp, dwDeviceID, lpszAddressIn, dwTollListOption);
798 return 0;
801 /***********************************************************************
802 * lineSetupConference (TAPI32.@)
804 DWORD WINAPI lineSetupConference(HCALL hCall, HLINE hLine, LPHCALL lphConfCall, LPHCALL lphConsultCall, DWORD dwNumParties, LPLINECALLPARAMS lpCallParams)
806 FIXME("(%04x, %04x, %p, %p, %08lx, %p): stub.\n", hCall, hLine, lphConfCall, lphConsultCall, dwNumParties, lpCallParams);
807 return 1;
810 /***********************************************************************
811 * lineSetupTransfer (TAPI32.@)
813 DWORD WINAPI lineSetupTransfer(HCALL hCall, LPHCALL lphConsultCall, LPLINECALLPARAMS lpCallParams)
815 FIXME("(%04x, %p, %p): stub.\n", hCall, lphConsultCall, lpCallParams);
816 return 1;
819 /***********************************************************************
820 * lineShutdown (TAPI32.@)
822 DWORD WINAPI lineShutdown(HLINEAPP hLineApp)
824 FIXME("(%04x): stub.\n", hLineApp);
825 return 0;
828 /***********************************************************************
829 * lineSwapHold (TAPI32.@)
831 DWORD WINAPI lineSwapHold(HCALL hActiveCall, HCALL hHeldCall)
833 FIXME("(active: %04x, held: %04x): stub.\n", hActiveCall, hHeldCall);
834 return 1;
837 /***********************************************************************
838 * lineTranslateAddress (TAPI32.@)
840 DWORD WINAPI lineTranslateAddress(HLINEAPP hLineApp, DWORD dwDeviceID, DWORD dwAPIVersion, LPCSTR lpszAddressIn, DWORD dwCard, DWORD dwTranslateOptions, LPLINETRANSLATEOUTPUT lpTranslateOutput)
842 FIXME("(%04x, %08lx, %08lx, %s, %08lx, %08lx, %p): stub.\n", hLineApp, dwDeviceID, dwAPIVersion, lpszAddressIn, dwCard, dwTranslateOptions, lpTranslateOutput);
843 return 0;
846 /***********************************************************************
847 * lineTranslateDialog (TAPI32.@)
849 DWORD WINAPI lineTranslateDialog(HLINEAPP hLineApp, DWORD dwDeviceID, DWORD dwAPIVersion, HWND hwndOwner, LPCSTR lpszAddressIn)
851 FIXME("(%04x, %08lx, %08lx, %04x, %s): stub.\n", hLineApp, dwDeviceID, dwAPIVersion, hwndOwner, lpszAddressIn);
852 return 0;
855 /***********************************************************************
856 * lineUncompleteCall (TAPI32.@)
858 DWORD WINAPI lineUncompleteCall(HLINE hLine, DWORD dwCompletionID)
860 FIXME("(%04x, %08lx): stub.\n", hLine, dwCompletionID);
861 return 1;
864 /***********************************************************************
865 * lineUnhold (TAPI32.@)
867 DWORD WINAPI lineUnhold(HCALL hCall)
869 FIXME("(%04x): stub.\n", hCall);
870 return 1;
873 /***********************************************************************
874 * lineUnpark (TAPI32.@)
876 DWORD WINAPI lineUnpark(HLINE hLine, DWORD dwAddressID, LPHCALL lphCall, LPCSTR lpszDestAddress)
878 FIXME("(%04x, %08lx, %p, %s): stub.\n", hLine, dwAddressID, lphCall, lpszDestAddress);
879 return 1;