Fixed some debug messages.
[wine] / dlls / tapi32 / line.c
1 /*
2  * TAPI32 line services
3  *
4  * Copyright 1999  Andreas Mohr
5  */
6
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"
14
15 DEFAULT_DEBUG_CHANNEL(tapi);
16
17 /***********************************************************************
18  *              lineAccept (TAPI32.@)
19  */
20 DWORD WINAPI lineAccept(HCALL hCall, LPCSTR lpsUserUserInfo, DWORD dwSize)
21 {
22     FIXME("(%04x, %s, %ld): stub.\n", hCall, lpsUserUserInfo, dwSize);
23     return 1;
24 }
25
26 /***********************************************************************
27  *              lineAddProvider (TAPI32.@)
28  */
29 DWORD WINAPI lineAddProvider(LPCSTR lpszProviderName, HWND hwndOwner, LPDWORD lpdwPermanentProviderID)
30 {
31     FIXME("(%s, %04x, %p): stub.\n", lpszProviderName, hwndOwner, lpdwPermanentProviderID);
32     return 1;
33 }       
34
35 /***********************************************************************
36  *              lineAddToConference (TAPI32.@)
37  */
38 DWORD WINAPI lineAddToConference(HCALL hConfCall, HCALL hConsultCall)
39 {
40     FIXME("(%04x, %04x): stub.\n", hConfCall, hConsultCall);
41     return 1;
42 }
43
44 /***********************************************************************
45  *              lineAnswer (TAPI32.@)
46  */
47 DWORD WINAPI lineAnswer(HCALL hCall, LPCSTR lpsUserUserInfo, DWORD dwSize)
48 {
49     FIXME("(%04x, %s, %ld): stub.\n", hCall, lpsUserUserInfo, dwSize);
50     return 1;
51 }       
52
53 /***********************************************************************
54  *              lineBlindTransfer (TAPI32.@)
55  */
56 DWORD WINAPI lineBlindTransfer(HCALL hCall, LPCSTR lpszDestAddress, DWORD dwCountryCode)
57 {
58     FIXME("(%04x, %s, %08lx): stub.\n", hCall, lpszDestAddress, dwCountryCode);
59     return 1;
60 }       
61
62 /***********************************************************************
63  *              lineClose (TAPI32.@)
64  */
65 DWORD WINAPI lineClose(HLINE hLine)
66 {
67     FIXME("(%04x): stub.\n", hLine);
68     return 0;
69 }       
70
71 /***********************************************************************
72  *              lineCompleteCall (TAPI32.@)
73  */
74 DWORD WINAPI lineCompleteCall(HCALL hCall, LPDWORD lpdwCompletionID, DWORD dwCompletionMode, DWORD dwMessageID)
75 {
76     FIXME("(%04x, %p, %08lx, %08lx): stub.\n", hCall, lpdwCompletionID, dwCompletionMode, dwMessageID);
77     return 1;
78 }       
79
80 /***********************************************************************
81  *              lineCompleteTransfer (TAPI32.@)
82  */
83 DWORD WINAPI lineCompleteTransfer(HCALL hCall, HCALL hConsultCall, LPHCALL lphConfCall, DWORD dwTransferMode)
84 {
85     FIXME("(%04x, %04x, %p, %08lx): stub.\n", hCall, hConsultCall, lphConfCall, dwTransferMode);
86     return 1;
87 }
88
89 /***********************************************************************
90  *              lineConfigDialog (TAPI32.@)
91  */
92 DWORD WINAPI lineConfigDialog(DWORD dwDeviceID, HWND hwndOwner, LPCSTR lpszDeviceClass)
93 {
94     FIXME("(%08lx, %04x, %s): stub.\n", dwDeviceID, hwndOwner, lpszDeviceClass);
95     return 0;
96 }       
97
98 /***********************************************************************
99  *              lineConfigDialogEdit (TAPI32.@)
100  */
101 DWORD WINAPI lineConfigDialogEdit(DWORD dwDeviceID, HWND hwndOwner, LPCSTR lpszDeviceClass, LPVOID const lpDeviceConfigIn, DWORD dwSize, LPVARSTRING lpDeviceConfigOut)
102 {
103     FIXME("stub.\n");
104     return 0;
105 }       
106
107 /***********************************************************************
108  *              lineConfigProvider (TAPI32.@)
109  */
110 DWORD WINAPI lineConfigProvider(HWND hwndOwner, DWORD dwPermanentProviderID)
111 {
112     FIXME("(%04x, %08lx): stub.\n", hwndOwner, dwPermanentProviderID);
113     return 0;
114 }
115
116 /***********************************************************************
117  *              lineDeallocateCall (TAPI32.@)
118  */
119 DWORD WINAPI lineDeallocateCall(HCALL hCall)
120 {
121     FIXME("(%04x): stub.\n", hCall);
122     return 0;
123 }
124
125 /***********************************************************************
126  *              lineDevSpecific (TAPI32.@)
127  */
128 DWORD WINAPI lineDevSpecific(HLINE hLine, DWORD dwAddressId, HCALL hCall, LPVOID lpParams, DWORD dwSize)
129 {
130     FIXME("(%04x, %08lx, %04x, %p, %ld): stub.\n", hLine, dwAddressId, hCall, lpParams, dwSize);
131     return 1;
132 }       
133
134 /***********************************************************************
135  *              lineDevSpecificFeature (TAPI32.@)
136  */
137 DWORD WINAPI lineDevSpecificFeature(HLINE hLine, DWORD dwFeature, LPVOID lpParams, DWORD dwSize)
138 {
139     FIXME("(%04x, %08lx, %p, %ld): stub.\n", hLine, dwFeature, lpParams, dwSize);
140     return 1;
141 }
142
143 /***********************************************************************
144  *              lineDial (TAPI32.@)
145  */
146 DWORD WINAPI lineDial(HCALL hCall, LPCSTR lpszDestAddress, DWORD dwCountryCode)
147 {
148     FIXME("(%04x, %s, %08lx): stub.\n", hCall, lpszDestAddress, dwCountryCode);
149     return 1;
150 }
151
152 /***********************************************************************
153  *              lineDrop (TAPI32.@)
154  */ 
155 DWORD WINAPI lineDrop(HCALL hCall, LPCSTR lpsUserUserInfo, DWORD dwSize)
156 {
157     FIXME("(%04x, %s, %08lx): stub.\n", hCall, lpsUserUserInfo, dwSize);
158     return 1;
159 }
160
161 /***********************************************************************
162  *              lineForward (TAPI32.@)
163  */
164 DWORD WINAPI lineForward(HLINE hLine, DWORD bAllAddress, DWORD dwAdressID, LPLINEFORWARDLIST lpForwardList, DWORD dwNumRingsNoAnswer, LPHCALL lphConsultCall, LPLINECALLPARAMS lpCallParams)
165 {
166     FIXME("stub.\n");
167     return 1;
168 }
169
170 /***********************************************************************
171  *              lineGatherDigits (TAPI32.@)
172  */     
173 DWORD WINAPI lineGatherDigits(HCALL hCall, DWORD dwDigitModes, LPSTR lpsDigits, DWORD dwNumDigits, LPCSTR lpszTerminationDigits, DWORD dwFirstDigitTimeout, DWORD dwInterDigitTimeout)
174 {
175     FIXME("stub.\n");
176     return 0;
177 }
178
179 /***********************************************************************
180  *              lineGenerateDigits (TAPI32.@)
181  */
182 DWORD WINAPI lineGenerateDigits(HCALL hCall, DWORD dwDigitModes, LPCSTR lpszDigits, DWORD dwDuration)
183 {
184     FIXME("(%04x, %08lx, %s, %ld): stub.\n", hCall, dwDigitModes, lpszDigits, dwDuration);
185     return 0;
186 }
187
188 /***********************************************************************
189  *              lineGenerateTone (TAPI32.@)
190  */
191 DWORD WINAPI lineGenerateTone(HCALL hCall, DWORD dwToneMode, DWORD dwDuration, DWORD dwNumTones, LPLINEGENERATETONE lpTones)
192 {
193     FIXME("(%04x, %08lx, %ld, %ld, %p): stub.\n", hCall, dwToneMode, dwDuration, dwNumTones, lpTones);
194     return 0;
195 }       
196
197 /***********************************************************************
198  *              lineGetAddressCaps (TAPI32.@)
199  */
200 DWORD WINAPI lineGetAddressCaps(HLINEAPP hLineApp, DWORD dwDeviceID, DWORD dwAddressID, DWORD dwAPIVersion, DWORD dwExtVersion, LPLINEADDRESSCAPS lpAddressCaps)
201 {
202     FIXME("(%04x, %08lx, %08lx, %08lx, %08lx, %p): stub.\n", hLineApp, dwDeviceID, dwAddressID, dwAPIVersion, dwExtVersion, lpAddressCaps);
203     return 0;
204 }
205
206 /***********************************************************************
207  *              lineGetAddressID (TAPI32.@)
208  */
209 DWORD WINAPI lineGetAddressID(HLINE hLine, LPDWORD lpdwAddressID, DWORD dwAddressMode, LPCSTR lpsAddress, DWORD dwSize)
210 {
211     FIXME("%04x, %p, %08lx, %s, %ld): stub.\n", hLine, lpdwAddressID, dwAddressMode, lpsAddress, dwSize);
212     return 0;
213 }
214
215 /***********************************************************************
216  *              lineGetAddressStatus (TAPI32.@)
217  */
218 DWORD WINAPI lineGetAddressStatus(HLINE hLine, DWORD dwAddressID, LPLINEADDRESSSTATUS lpAddressStatus)
219 {
220     FIXME("(%04x, %08lx, %p): stub.\n", hLine, dwAddressID, lpAddressStatus);
221     return 0;
222 }
223
224 /***********************************************************************
225  *              lineGetAppPriority (TAPI32.@)
226  */
227 DWORD WINAPI lineGetAppPriority(LPCSTR lpszAppFilename, DWORD dwMediaMode, LPLINEEXTENSIONID const lpExtensionID, DWORD dwRequestMode, LPVARSTRING lpExtensionName, LPDWORD lpdwPriority)
228 {
229     FIXME("(%s, %08lx, %p, %08lx, %p, %p): stub.\n", lpszAppFilename, dwMediaMode, lpExtensionID, dwRequestMode, lpExtensionName, lpdwPriority);
230     return 0;
231 }       
232
233 /***********************************************************************
234  *              lineGetCallInfo (TAPI32.@)
235  */
236 DWORD WINAPI lineGetCallInfo(HCALL hCall, LPLINECALLINFO lpCallInfo)
237 {
238     FIXME("(%04x, %p): stub.\n", hCall, lpCallInfo);
239     return 0;
240 }
241
242 /***********************************************************************
243  *              lineGetCallStatus (TAPI32.@)
244  */
245 DWORD WINAPI lineGetCallStatus(HCALL hCall, LPLINECALLSTATUS lpCallStatus)
246 {
247     FIXME("(%04x, %p): stub.\n", hCall, lpCallStatus);
248     return 0;
249 }
250
251 /***********************************************************************
252  *              lineGetConfRelatedCalls (TAPI32.@)
253  */
254 DWORD WINAPI lineGetConfRelatedCalls(HCALL hCall, LPLINECALLLIST lpCallList)
255 {
256     FIXME("(%04x, %p): stub.\n", hCall, lpCallList);
257     return 0;
258 }       
259
260 /***********************************************************************
261  *              lineGetCountry (TAPI32.@)
262  */
263 DWORD WINAPI lineGetCountry(DWORD dwCountryID, DWORD dwAPIVersion, LPLINECOUNTRYLIST lpLineCountryList)
264 {
265     FIXME("(%08lx, %08lx, %p): stub.\n", dwCountryID, dwAPIVersion, lpLineCountryList);
266     return 0;
267 }
268
269 /***********************************************************************
270  *              lineGetDevCaps (TAPI32.@)
271  */
272 DWORD WINAPI lineGetDevCaps(HLINEAPP hLineApp, DWORD dwDeviceID, DWORD dwAPIVersion, DWORD dwExtVersion, LPLINEDEVCAPS lpLineDevCaps)
273 {
274     FIXME("(%04x, %08lx, %08lx, %08lx, %p): stub.\n", hLineApp, dwDeviceID, dwAPIVersion, dwExtVersion, lpLineDevCaps);
275     return 0;
276 }       
277
278 /***********************************************************************
279  *              lineGetDevConfig (TAPI32.@)
280  */
281 DWORD WINAPI lineGetDevConfig(DWORD dwDeviceID, LPVARSTRING lpDeviceConfig, LPCSTR lpszDeviceClass)
282 {
283     FIXME("(%08lx, %p, %s): stub.\n", dwDeviceID, lpDeviceConfig, lpszDeviceClass);
284     return 0;
285 }
286
287 /***********************************************************************
288  *              lineGetID (TAPI32.@)
289  */
290 DWORD WINAPI lineGetID(HLINE hLine, DWORD dwAddressID, HCALL hCall, DWORD dwSelect, LPVARSTRING lpDeviceID, LPCSTR lpszDeviceClass)
291 {
292     FIXME("(%04x, %08lx, %04x, %08lx, %p, %s): stub.\n", hLine, dwAddressID, hCall, dwSelect, lpDeviceID, lpszDeviceClass);
293     return 0;
294 }
295
296 /***********************************************************************
297  *              lineGetIcon (TAPI32.@)
298  */
299 DWORD WINAPI lineGetIcon(DWORD dwDeviceID, LPCSTR lpszDeviceClass, HICON *lphIcon)
300 {
301     FIXME("(%08lx, %s, %p): stub.\n", dwDeviceID, lpszDeviceClass, lphIcon);
302     return 0;
303 }       
304
305 /***********************************************************************
306  *              lineGetLineDevStatus (TAPI32.@)
307  */
308 DWORD WINAPI lineGetLineDevStatus(HLINE hLine, LPLINEDEVSTATUS lpLineDevStatus)
309 {
310     FIXME("(%04x, %p): stub.\n", hLine, lpLineDevStatus);
311     return 0;
312 }       
313
314 /***********************************************************************
315  *              lineGetNewCalls (TAPI32.@)
316  */
317 DWORD WINAPI lineGetNewCalls(HLINE hLine, DWORD dwAddressID, DWORD dwSelect, LPLINECALLLIST lpCallList)
318 {
319     FIXME("(%04x, %08lx, %08lx, %p): stub.\n", hLine, dwAddressID, dwSelect, lpCallList);
320     return 0;
321 }
322
323 /***********************************************************************
324  *              lineGetNumRings (TAPI32.@)
325  */
326 DWORD WINAPI lineGetNumRings(HLINE hLine, DWORD dwAddressID, LPDWORD lpdwNumRings)
327 {
328     FIXME("(%04x, %08lx, %p): stub.\n", hLine, dwAddressID, lpdwNumRings);
329     return 0;
330 }
331
332 /***********************************************************************
333  *              lineGetProviderList (TAPI32.@)
334  */
335 DWORD WINAPI lineGetProviderList(DWORD dwAPIVersion, LPLINEPROVIDERLIST lpProviderList)
336 {
337     FIXME("(%08lx, %p): stub.\n", dwAPIVersion, lpProviderList);
338     return 0;
339 }       
340
341 /***********************************************************************
342  *              lineGetRequest (TAPI32.@)
343  */
344 DWORD WINAPI lineGetRequest(HLINEAPP hLineApp, DWORD dwRequestMode, LPVOID lpRequestBuffer)
345 {
346     FIXME("%04x, %08lx, %p): stub.\n", hLineApp, dwRequestMode, lpRequestBuffer);
347     return 0;
348 }       
349
350 /***********************************************************************
351  *              lineGetStatusMessages (TAPI32.@)
352  */
353 DWORD WINAPI lineGetStatusMessages(HLINE hLine, LPDWORD lpdwLineStatus, LPDWORD lpdwAddressStates)
354 {
355     FIXME("(%04x, %p, %p): stub.\n", hLine, lpdwLineStatus, lpdwAddressStates);
356     return 0;
357 }       
358
359 /***********************************************************************
360  *              lineGetTranslateCaps (TAPI32.@)
361  */
362 DWORD WINAPI lineGetTranslateCaps(HLINEAPP hLineApp, DWORD dwAPIVersion, LPLINETRANSLATECAPS lpTranslateCaps)
363 {
364     FIXME("(%04x, %08lx, %p): stub.\n", hLineApp, dwAPIVersion, lpTranslateCaps);
365     return 0;
366 }
367
368 /***********************************************************************
369  *              lineHandoff (TAPI32.@)
370  */
371 DWORD WINAPI lineHandoff(HCALL hCall, LPCSTR lpszFileName, DWORD dwMediaMode)
372 {
373     FIXME("(%04x, %s, %08lx): stub.\n", hCall, lpszFileName, dwMediaMode);
374     return 0;
375 }       
376
377 /***********************************************************************
378  *              lineHold (TAPI32.@)
379  */
380 DWORD WINAPI lineHold(HCALL hCall)
381 {
382     FIXME("(%04x): stub.\n", hCall);
383     return 1;
384 }       
385
386 /***********************************************************************
387  *              lineInitialize (TAPI32.@)
388  */
389 DWORD WINAPI lineInitialize(
390   LPHLINEAPP lphLineApp,
391   HINSTANCE hInstance,
392   LINECALLBACK lpfnCallback,
393   LPCSTR lpszAppName,
394   LPDWORD lpdwNumDevs)
395 {
396     FIXME("(%p, %04x, %p, %s, %p): stub.\n", lphLineApp, hInstance,
397           lpfnCallback, debugstr_a(lpszAppName), lpdwNumDevs);
398     return 0;
399 }
400
401 /***********************************************************************
402  *              lineMakeCall (TAPI32.@)
403  */
404 DWORD WINAPI lineMakeCall(HLINE hLine, LPHCALL lphCall, LPCSTR lpszDestAddress, DWORD dwCountryCode, LPLINECALLPARAMS lpCallParams)
405 {
406     FIXME("(%04x, %p, %s, %08lx, %p): stub.\n", hLine, lphCall, lpszDestAddress, dwCountryCode, lpCallParams);
407     return 1;
408 }
409
410 /***********************************************************************
411  *              lineMonitorDigits (TAPI32.@)
412  */
413 DWORD WINAPI lineMonitorDigits(HCALL hCall, DWORD dwDigitModes)
414 {
415     FIXME("(%04x, %08lx): stub.\n", hCall, dwDigitModes);
416     return 0;
417 }
418
419 /***********************************************************************
420  *              lineMonitorMedia (TAPI32.@)
421  */
422 DWORD WINAPI lineMonitorMedia(HCALL hCall, DWORD dwMediaModes)
423 {
424     FIXME("(%04x, %08lx): stub.\n", hCall, dwMediaModes);
425     return 0;
426 }       
427
428 /***********************************************************************
429  *              lineMonitorTones (TAPI32.@)
430  */
431 DWORD WINAPI lineMonitorTones(HCALL hCall, LPLINEMONITORTONE lpToneList, DWORD dwNumEntries)
432 {
433     FIXME("(%04x, %p, %08lx): stub.\n", hCall, lpToneList, dwNumEntries);
434     return 0;
435 }       
436
437 /***********************************************************************
438  *              lineNegotiateAPIVersion (TAPI32.@)
439  */
440 DWORD WINAPI lineNegotiateAPIVersion(
441   HLINEAPP hLineApp,
442   DWORD dwDeviceID,
443   DWORD dwAPILowVersion,
444   DWORD dwAPIHighVersion,
445   LPDWORD lpdwAPIVersion,
446   LPLINEEXTENSIONID lpExtensionID
447 )
448 {
449     FIXME("(%04x, %ld, %ld, %ld, %p, %p): stub.\n", hLineApp, dwDeviceID, 
450           dwAPILowVersion, dwAPIHighVersion, lpdwAPIVersion, lpExtensionID);
451     *lpdwAPIVersion = dwAPIHighVersion;
452     return 0;
453 }
454
455 /***********************************************************************
456  *              lineNegotiateExtVersion (TAPI32.@)
457  */
458 DWORD WINAPI lineNegotiateExtVersion(HLINEAPP hLineApp, DWORD dwDeviceID, DWORD dwAPIVersion, DWORD dwExtLowVersion, DWORD dwExtHighVersion, LPDWORD lpdwExtVersion)
459 {
460     FIXME("stub.\n");
461     return 0;
462 }
463
464 /***********************************************************************
465  *              lineOpen (TAPI32.@)
466  */
467 DWORD WINAPI lineOpen(HLINEAPP hLineApp, DWORD dwDeviceID, LPHLINE lphLine, DWORD dwAPIVersion, DWORD dwExtVersion, DWORD dwCallbackInstance, DWORD dwPrivileges, DWORD dwMediaModes, LPLINECALLPARAMS lpCallParams)
468 {
469     FIXME("stub.\n");
470     return 0;
471 }
472
473 /***********************************************************************
474  *              linePark (TAPI32.@)
475  */
476 DWORD WINAPI linePark(HCALL hCall, DWORD dwParkMode, LPCSTR lpszDirAddress, LPVARSTRING lpNonDirAddress)
477 {
478     FIXME("(%04x, %08lx, %s, %p): stub.\n", hCall, dwParkMode, lpszDirAddress, lpNonDirAddress);
479     return 1;
480 }       
481
482 /***********************************************************************
483  *              linePickup (TAPI32.@)
484  */
485 DWORD WINAPI linePickup(HLINE hLine, DWORD dwAddressID, LPHCALL lphCall, LPCSTR lpszDestAddress, LPCSTR lpszGroupID)
486 {
487     FIXME("(%04x, %08lx, %p, %s, %s): stub.\n", hLine, dwAddressID, lphCall, lpszDestAddress, lpszGroupID);
488     return 1;
489 }       
490
491 /***********************************************************************
492  *              linePrepareAddToConference (TAPI32.@)
493  */
494 DWORD WINAPI linePrepareAddToConference(HCALL hConfCall, LPHCALL lphConsultCall, LPLINECALLPARAMS lpCallParams)
495 {
496     FIXME("(%04x, %p, %p): stub.\n", hConfCall, lphConsultCall, lpCallParams);
497     return 1;
498 }       
499
500 /***********************************************************************
501  *              lineRedirect (TAPI32.@)
502  */
503 DWORD WINAPI lineRedirect(
504   HCALL hCall,
505   LPCSTR lpszDestAddress,
506   DWORD  dwCountryCode) {
507
508   FIXME(": stub.\n");
509   return 1;
510 }
511
512 /***********************************************************************
513  *              lineRegisterRequestRecipient (TAPI32.@)
514  */
515 DWORD WINAPI lineRegisterRequestRecipient(HLINEAPP hLineApp, DWORD dwRegistrationInstance, DWORD dwRequestMode, DWORD dwEnable)
516 {
517     FIXME("(%04x, %08lx, %08lx, %08lx): stub.\n", hLineApp, dwRegistrationInstance, dwRequestMode, dwEnable);
518     return 1;
519 }
520
521 /***********************************************************************
522  *              lineReleaseUserUserInfo (TAPI32.@)
523  */
524 DWORD WINAPI lineReleaseUserUserInfo(HCALL hCall)
525 {
526     FIXME("(%04x): stub.\n", hCall);
527     return 1;
528 }       
529
530 /***********************************************************************
531  *              lineRemoveFromConference (TAPI32.@)
532  */
533 DWORD WINAPI lineRemoveFromConference(HCALL hCall)
534 {
535     FIXME("(%04x): stub.\n", hCall);
536     return 1;
537 }
538
539 /***********************************************************************
540  *              lineRemoveProvider (TAPI32.@)
541  */
542 DWORD WINAPI lineRemoveProvider(DWORD dwPermanentProviderID, HWND hwndOwner)
543 {
544     FIXME("(%08lx, %04x): stub.\n", dwPermanentProviderID, hwndOwner);
545     return 1;
546 }       
547
548 /***********************************************************************
549  *              lineSecureCall (TAPI32.@)
550  */
551 DWORD WINAPI lineSecureCall(HCALL hCall)
552 {
553     FIXME("(%04x): stub.\n", hCall);
554     return 1;
555 }
556
557 /***********************************************************************
558  *              lineSendUserUserInfo (TAPI32.@)
559  */
560 DWORD WINAPI lineSendUserUserInfo(HCALL hCall, LPCSTR lpsUserUserInfo, DWORD dwSize)
561 {
562     FIXME("(%04x, %s, %08lx): stub.\n", hCall, lpsUserUserInfo, dwSize);
563     return 1;
564 }
565
566 /***********************************************************************
567  *              lineSetAppPriority (TAPI32.@)
568  */
569 DWORD WINAPI lineSetAppPriority(LPCSTR lpszAppFilename, DWORD dwMediaMode, LPLINEEXTENSIONID const lpExtensionID, DWORD dwRequestMode, LPCSTR lpszExtensionName, DWORD dwPriority)
570 {
571     FIXME("(%s, %08lx, %p, %08lx, %s, %08lx): stub.\n", lpszAppFilename, dwMediaMode, lpExtensionID, dwRequestMode, lpszExtensionName, dwPriority);
572     return 0;
573 }
574
575 /***********************************************************************
576  *              lineSetAppSpecific (TAPI32.@)
577  */
578 DWORD WINAPI lineSetAppSpecific(HCALL hCall, DWORD dwAppSpecific)
579 {
580     FIXME("(%04x, %08lx): stub.\n", hCall, dwAppSpecific);
581     return 0;
582 }
583
584 /***********************************************************************
585  *              lineSetCallParams (TAPI32.@)
586  */
587 DWORD WINAPI lineSetCallParams(HCALL hCall, DWORD dwBearerMode, DWORD dwMinRate, DWORD dwMaxRate, LPLINEDIALPARAMS lpDialParams)
588 {
589     FIXME("(%04x, %08lx, %08lx, %08lx, %p): stub.\n", hCall, dwBearerMode, dwMinRate, dwMaxRate, lpDialParams);
590     return 1;
591 }
592
593 /***********************************************************************
594  *              lineSetCallPrivilege (TAPI32.@)
595  */
596 DWORD WINAPI lineSetCallPrivilege(HCALL hCall, DWORD dwCallPrivilege)
597 {
598     FIXME("(%04x, %08lx): stub.\n", hCall, dwCallPrivilege);
599     return 0;
600 }       
601                 
602 /***********************************************************************
603  *              lineSetCurrentLocation (TAPI32.@)
604  */
605 DWORD WINAPI lineSetCurrentLocation(HLINEAPP hLineApp, DWORD dwLocation)
606 {
607     FIXME("(%04x, %08lx): stub.\n", hLineApp, dwLocation);
608     return 0;
609 }
610
611 /***********************************************************************
612  *              lineSetDevConfig (TAPI32.@)
613  */
614 DWORD WINAPI lineSetDevConfig(DWORD dwDeviceID, LPVOID lpDeviceConfig, DWORD dwSize, LPCSTR lpszDeviceClass)
615 {
616     FIXME("(%08lx, %p, %08lx, %s): stub.\n", dwDeviceID, lpDeviceConfig, dwSize, lpszDeviceClass);
617     return 0;
618 }
619
620 /***********************************************************************
621  *              lineSetMediaControl (TAPI32.@)
622  */
623 DWORD WINAPI lineSetMediaControl(
624 HLINE hLine,
625 DWORD dwAddressID,
626 HCALL hCall,
627 DWORD dwSelect,
628 LPLINEMEDIACONTROLDIGIT const lpDigitList,
629 DWORD dwDigitNumEntries,
630 LPLINEMEDIACONTROLMEDIA const lpMediaList,
631 DWORD dwMediaNumEntries,
632 LPLINEMEDIACONTROLTONE const lpToneList, 
633 DWORD dwToneNumEntries,
634 LPLINEMEDIACONTROLCALLSTATE const lpCallStateList,
635 DWORD dwCallStateNumEntries)
636 {
637     FIXME(": stub.\n");
638     return 0;
639 }
640
641 /***********************************************************************
642  *              lineSetMediaMode (TAPI32.@)
643  */
644 DWORD WINAPI lineSetMediaMode(HCALL hCall, DWORD dwMediaModes)
645 {
646     FIXME("(%04x, %08lx): stub.\n", hCall, dwMediaModes);
647     return 0;
648 }       
649
650 /***********************************************************************
651  *              lineSetNumRings (TAPI32.@)
652  */
653 DWORD WINAPI lineSetNumRings(HLINE hLine, DWORD dwAddressID, DWORD dwNumRings)
654 {
655     FIXME("(%04x, %08lx, %08lx): stub.\n", hLine, dwAddressID, dwNumRings);
656     return 0;
657 }       
658                 
659 /***********************************************************************
660  *              lineSetStatusMessages (TAPI32.@)
661  */
662 DWORD WINAPI lineSetStatusMessages(HLINE hLine, DWORD dwLineStates, DWORD dwAddressStates)
663 {
664     FIXME("(%04x, %08lx, %08lx): stub.\n", hLine, dwLineStates, dwAddressStates);
665     return 0;
666 }       
667                 
668 /***********************************************************************
669  *              lineSetTerminal (TAPI32.@)
670  */
671 DWORD WINAPI lineSetTerminal(HLINE hLine, DWORD dwAddressID, HCALL hCall, DWORD dwSelect, DWORD dwTerminalModes, DWORD dwTerminalID, DWORD bEnable)
672 {
673     FIXME("(%04x, %08lx, %04x, %08lx, %08lx, %08lx, %08lx): stub.\n", hLine, dwAddressID, hCall, dwSelect, dwTerminalModes, dwTerminalID, bEnable);
674     return 1;
675 }       
676
677 /***********************************************************************
678  *              lineSetTollList (TAPI32.@)
679  */
680 DWORD WINAPI lineSetTollList(HLINEAPP hLineApp, DWORD dwDeviceID, LPCSTR lpszAddressIn, DWORD dwTollListOption)
681 {
682     FIXME("(%04x, %08lx, %s, %08lx): stub.\n", hLineApp, dwDeviceID, lpszAddressIn, dwTollListOption);
683     return 0;
684 }       
685                 
686 /***********************************************************************
687  *              lineSetupConference (TAPI32.@)
688  */
689 DWORD WINAPI lineSetupConference(HCALL hCall, HLINE hLine, LPHCALL lphConfCall, LPHCALL lphConsultCall, DWORD dwNumParties, LPLINECALLPARAMS lpCallParams)
690 {
691     FIXME("(%04x, %04x, %p, %p, %08lx, %p): stub.\n", hCall, hLine, lphConfCall, lphConsultCall, dwNumParties, lpCallParams);
692     return 1;
693 }
694
695 /***********************************************************************
696  *              lineSetupTransfer (TAPI32.@)
697  */
698 DWORD WINAPI lineSetupTransfer(HCALL hCall, LPHCALL lphConsultCall, LPLINECALLPARAMS lpCallParams)
699 {
700     FIXME("(%04x, %p, %p): stub.\n", hCall, lphConsultCall, lpCallParams);
701     return 1;
702 }       
703
704 /***********************************************************************
705  *              lineShutdown (TAPI32.@)
706  */
707 DWORD WINAPI lineShutdown(HLINEAPP hLineApp)
708 {
709     FIXME("(%04x): stub.\n", hLineApp);
710     return 0;
711 }
712
713 /***********************************************************************
714  *              lineSwapHold (TAPI32.@)
715  */
716 DWORD WINAPI lineSwapHold(HCALL hActiveCall, HCALL hHeldCall)
717 {
718     FIXME("(active: %04x, held: %04x): stub.\n", hActiveCall, hHeldCall);
719     return 1;
720 }
721
722 /***********************************************************************
723  *              lineTranslateAddress (TAPI32.@)
724  */
725 DWORD WINAPI lineTranslateAddress(HLINEAPP hLineApp, DWORD dwDeviceID, DWORD dwAPIVersion, LPCSTR lpszAddressIn, DWORD dwCard, DWORD dwTranslateOptions, LPLINETRANSLATEOUTPUT lpTranslateOutput)
726 {
727     FIXME("(%04x, %08lx, %08lx, %s, %08lx, %08lx, %p): stub.\n", hLineApp, dwDeviceID, dwAPIVersion, lpszAddressIn, dwCard, dwTranslateOptions, lpTranslateOutput);
728     return 0;
729 }
730
731 /***********************************************************************
732  *              lineTranslateDialog (TAPI32.@)
733  */
734 DWORD WINAPI lineTranslateDialog(HLINEAPP hLineApp, DWORD dwDeviceID, DWORD dwAPIVersion, HWND hwndOwner, LPCSTR lpszAddressIn)
735 {
736     FIXME("(%04x, %08lx, %08lx, %04x, %s): stub.\n", hLineApp, dwDeviceID, dwAPIVersion, hwndOwner, lpszAddressIn);
737     return 0;
738 }
739
740 /***********************************************************************
741  *              lineUncompleteCall (TAPI32.@)
742  */
743 DWORD WINAPI lineUncompleteCall(HLINE hLine, DWORD dwCompletionID)
744 {
745     FIXME("(%04x, %08lx): stub.\n", hLine, dwCompletionID);
746     return 1;
747 }
748
749 /***********************************************************************
750  *              lineUnhold (TAPI32.@)
751  */
752 DWORD WINAPI lineUnhold(HCALL hCall)
753 {
754     FIXME("(%04x): stub.\n", hCall);
755     return 1;
756 }
757
758 /***********************************************************************
759  *              lineUnpark (TAPI32.@)
760  */
761 DWORD WINAPI lineUnpark(HLINE hLine, DWORD dwAddressID, LPHCALL lphCall, LPCSTR lpszDestAddress)
762 {
763     FIXME("(%04x, %08lx, %p, %s): stub.\n", hLine, dwAddressID, lphCall, lpszDestAddress);
764     return 1;
765 }