upload tizen1.0 source
[framework/telephony/libslp-tapi.git] / src / tapi_proxy_network.c
1 /*
2  * libslp-tapi
3  *
4  * Copyright (c) 2011 Samsung Electronics Co., Ltd. All rights reserved.
5  *
6  * Contact: Ja-young Gu <jygu@samsung.com>
7  *
8  * Licensed under the Apache License, Version 2.0 (the "License");
9  * you may not use this file except in compliance with the License.
10  * You may obtain a copy of the License at
11  *
12  * http://www.apache.org/licenses/LICENSE-2.0
13  *
14  * Unless required by applicable law or agreed to in writing, software
15  * distributed under the License is distributed on an "AS IS" BASIS,
16  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17  * See the License for the specific language governing permissions and
18  * limitations under the License.
19  */
20
21 #include "tel_cs_conn.h"
22 #include "tapi_proxy.h"
23 #include "ITapiNetwork.h"
24 #include "TelNetwork.h"
25 #include "TapiUtility.h"
26
27 #include <vconf.h>
28
29 extern tapi_dbus_connection_name conn_name;
30
31 static int _tel_check_tapi_state()
32 {
33         int vconf_ret = 0;
34         int tapi_state = 0;
35
36         vconf_ret = vconf_get_int(VCONFKEY_TELEPHONY_TAPI_STATE, (int*) &tapi_state);
37
38         if (vconf_ret != 0 || tapi_state !=1) {
39                 TAPI_LIB_DEBUG(LEVEL_ALERT,"FAIL TO GET VCONFKEY_TELEPHONY_TAPI_STATE or SERVICE NOT READY");
40                 return TAPI_API_SERVICE_NOT_READY;
41         }
42         return 0;
43 }
44
45 EXPORT_API int tel_select_network_automatic(int *pRequestId)
46 {
47         int api_err = TAPI_API_SUCCESS;
48         TS_BOOL ret;
49
50         TAPI_LIB_DEBUG(LEVEL_DEBUG,"Func Entrance ");
51         if (_tel_check_tapi_state() != 0)
52                 return TAPI_API_SERVICE_NOT_READY;
53
54         TAPI_RETURN_VAL_IF_FAIL(pRequestId , TAPI_API_INVALID_PTR);
55
56         if (conn_name.length_of_name == 0) {
57                 TAPI_LIB_DEBUG(LEVEL_ERR, "No dbus connection name");
58                 return TAPI_API_OPERATION_FAILED;
59         }
60
61         TAPI_GLIB_INIT_PARAMS();
62
63         TAPI_RET_ERR_NUM_IF_FAIL(tapi_check_dbus_status(), TAPI_API_SYSTEM_RPC_LINK_NOT_EST);
64
65         TAPI_GLIB_ALLOC_PARAMS(in_param1,in_param2,in_param3,in_param4,
66                         out_param1,out_param2,out_param3,out_param4);
67
68         g_array_append_vals(in_param4, &conn_name, sizeof(tapi_dbus_connection_name));
69
70         ret = tapi_send_request(TAPI_CS_SERVICE_NETWORK, TAPI_CS_NETWORK_SELECT_AUTOMATIC, in_param1, in_param2, in_param3,
71                         in_param4, &out_param1, &out_param2, &out_param3, &out_param4);
72
73         if (ret) {
74                 api_err = g_array_index(out_param1, int, 0);
75                 *pRequestId = g_array_index(out_param2, int ,0);
76         }
77         else {
78                 api_err = TAPI_API_SYSTEM_RPC_LINK_DOWN;
79         }
80
81         TAPI_GLIB_FREE_PARAMS(in_param1,in_param2,in_param3,in_param4,
82                         out_param1,out_param2,out_param3,out_param4);
83
84         return api_err;
85 }
86
87 EXPORT_API int tel_select_network_manual(unsigned int Plmn, int *pRequestId)
88 {
89         int api_err = TAPI_API_SUCCESS;
90         TS_BOOL ret;
91
92         TAPI_LIB_DEBUG(LEVEL_DEBUG,"Func Entrance ");
93         if (_tel_check_tapi_state() != 0)
94                 return TAPI_API_SERVICE_NOT_READY;
95
96         TAPI_RETURN_VAL_IF_FAIL(pRequestId , TAPI_API_INVALID_PTR);
97
98         if (conn_name.length_of_name == 0) {
99                 TAPI_LIB_DEBUG(LEVEL_ERR, "No dbus connection name");
100                 return TAPI_API_OPERATION_FAILED;
101         }
102
103         TAPI_GLIB_INIT_PARAMS();
104
105         TAPI_RET_ERR_NUM_IF_FAIL(tapi_check_dbus_status(), TAPI_API_SYSTEM_RPC_LINK_NOT_EST);
106
107         TAPI_GLIB_ALLOC_PARAMS(in_param1,in_param2,in_param3,in_param4,
108                         out_param1,out_param2,out_param3,out_param4);
109
110         g_array_append_vals(in_param1, &Plmn, sizeof(unsigned int));
111         g_array_append_vals(in_param4, &conn_name, sizeof(tapi_dbus_connection_name));
112
113         ret = tapi_send_request(TAPI_CS_SERVICE_NETWORK, TAPI_CS_NETWORK_SELECT_MANUAL, in_param1, in_param2, in_param3,
114                         in_param4, &out_param1, &out_param2, &out_param3, &out_param4);
115
116         if (ret) {
117                 api_err = g_array_index(out_param1, int, 0);
118                 *pRequestId = g_array_index(out_param2, int ,0);
119         }
120         else {
121                 api_err = TAPI_API_SYSTEM_RPC_LINK_DOWN;
122         }
123
124         TAPI_GLIB_FREE_PARAMS(in_param1,in_param2,in_param3,in_param4,
125                         out_param1,out_param2,out_param3,out_param4);
126
127         return api_err;
128 }
129
130 EXPORT_API int tel_search_network(int *pRequestId)
131 {
132         int api_err = TAPI_API_SUCCESS;
133         TS_BOOL ret;
134
135         TAPI_LIB_DEBUG(LEVEL_DEBUG,"Func Entrance ");
136         if (_tel_check_tapi_state() != 0)
137                 return TAPI_API_SERVICE_NOT_READY;
138
139         TAPI_RETURN_VAL_IF_FAIL(pRequestId , TAPI_API_INVALID_PTR);
140
141         if (conn_name.length_of_name == 0) {
142                 TAPI_LIB_DEBUG(LEVEL_ERR, "No dbus connection name");
143                 return TAPI_API_OPERATION_FAILED;
144         }
145
146         TAPI_GLIB_INIT_PARAMS();
147
148         TAPI_RET_ERR_NUM_IF_FAIL(tapi_check_dbus_status(), TAPI_API_SYSTEM_RPC_LINK_NOT_EST);
149
150         TAPI_GLIB_ALLOC_PARAMS(in_param1,in_param2,in_param3,in_param4,
151                         out_param1,out_param2,out_param3,out_param4);
152
153         g_array_append_vals(in_param4, &conn_name, sizeof(tapi_dbus_connection_name));
154
155         ret = tapi_send_request(TAPI_CS_SERVICE_NETWORK, TAPI_CS_NETWORK_SEARCH, in_param1, in_param2, in_param3,
156                         in_param4, &out_param1, &out_param2, &out_param3, &out_param4);
157
158         if (ret) {
159                 api_err = g_array_index(out_param1, int, 0);
160                 *pRequestId = g_array_index(out_param2, int ,0);
161         }
162         else {
163                 api_err = TAPI_API_SYSTEM_RPC_LINK_DOWN;
164         }
165
166         TAPI_GLIB_FREE_PARAMS(in_param1,in_param2,in_param3,in_param4,
167                         out_param1,out_param2,out_param3,out_param4);
168
169         return api_err;
170 }
171
172 EXPORT_API int tel_get_network_selection_mode(int *pRequestId)
173 {
174         int api_err = TAPI_API_SUCCESS;
175         TS_BOOL ret;
176
177         TAPI_LIB_DEBUG(LEVEL_DEBUG,"Func Entrance ");
178         if (_tel_check_tapi_state() != 0)
179                 return TAPI_API_SERVICE_NOT_READY;
180
181         TAPI_RETURN_VAL_IF_FAIL(pRequestId , TAPI_API_INVALID_PTR);
182
183         if (conn_name.length_of_name == 0) {
184                 TAPI_LIB_DEBUG(LEVEL_ERR, "No dbus connection name");
185                 return TAPI_API_OPERATION_FAILED;
186         }
187
188         TAPI_GLIB_INIT_PARAMS();
189
190         TAPI_RET_ERR_NUM_IF_FAIL(tapi_check_dbus_status(), TAPI_API_SYSTEM_RPC_LINK_NOT_EST);
191
192         TAPI_GLIB_ALLOC_PARAMS(in_param1,in_param2,in_param3,in_param4,
193                         out_param1,out_param2,out_param3,out_param4);
194
195         g_array_append_vals(in_param4, &conn_name, sizeof(tapi_dbus_connection_name));
196
197         ret = tapi_send_request(TAPI_CS_SERVICE_NETWORK, TAPI_CS_NETWORK_GETSELECTIONMODE, in_param1, in_param2, in_param3,
198                         in_param4, &out_param1, &out_param2, &out_param3, &out_param4);
199
200         if (ret) {
201                 api_err = g_array_index(out_param1, int, 0);
202                 *pRequestId = g_array_index(out_param2, int ,0);
203         }
204         else {
205                 api_err = TAPI_API_SYSTEM_RPC_LINK_DOWN;
206         }
207
208         TAPI_GLIB_FREE_PARAMS(in_param1,in_param2,in_param3,in_param4,
209                         out_param1,out_param2,out_param3,out_param4);
210
211         return api_err;
212 }
213
214 EXPORT_API int tel_set_network_preferred_plmn(
215                 TelNetworkPrefferedPlmnOp_t Operation,
216                 TelNetworkPrefferedPlmnInfo_t *pPreffPlmnInfo,
217                 int *pRequestId)
218 {
219         int api_err = TAPI_API_SUCCESS;
220         TS_BOOL ret;
221
222         TAPI_LIB_DEBUG(LEVEL_DEBUG,"Func Entrance : Operation[%d]", Operation);
223         if (_tel_check_tapi_state() != 0)
224                 return TAPI_API_SERVICE_NOT_READY;
225
226         TAPI_RETURN_VAL_IF_FAIL(pRequestId , TAPI_API_INVALID_PTR);
227
228         TAPI_RET_ERR_NUM_IF_FAIL(pPreffPlmnInfo ,TAPI_API_INVALID_PTR);
229
230         if (conn_name.length_of_name == 0) {
231                 TAPI_LIB_DEBUG(LEVEL_ERR, "No dbus connection name");
232                 return TAPI_API_OPERATION_FAILED;
233         }
234
235         if ((Operation > TAPI_NETWORK_PREF_PLMN_DELETE) || (Operation < TAPI_NETWORK_PREF_PLMN_ADD)
236                         || (pPreffPlmnInfo->SystemType > TAPI_NETWORK_SYSTEM_HSDPA) || (pPreffPlmnInfo->SystemType
237                         <= TAPI_NETWORK_SYSTEM_NO_SRV)) {
238                 TAPI_LIB_DEBUG(LEVEL_ALERT, "INVALID INPUT [%d],[%d]", Operation, pPreffPlmnInfo->SystemType);
239                 return TAPI_API_INVALID_INPUT;
240         }
241
242         TAPI_GLIB_INIT_PARAMS();
243
244         TAPI_RET_ERR_NUM_IF_FAIL(tapi_check_dbus_status(), TAPI_API_SYSTEM_RPC_LINK_NOT_EST);
245
246         TAPI_GLIB_ALLOC_PARAMS(in_param1,in_param2,in_param3,in_param4,
247                         out_param1,out_param2,out_param3,out_param4);
248
249         g_array_append_vals(in_param1, &Operation, sizeof(TelNetworkPrefferedPlmnOp_t));
250         g_array_append_vals(in_param2, pPreffPlmnInfo, sizeof(TelNetworkPrefferedPlmnInfo_t));
251         g_array_append_vals(in_param4, &conn_name, sizeof(tapi_dbus_connection_name));
252
253         ret = tapi_send_request(TAPI_CS_SERVICE_NETWORK, TAPI_CS_NETWORK_SETPREFPLMN, in_param1, in_param2, in_param3,
254                         in_param4, &out_param1, &out_param2, &out_param3, &out_param4);
255
256         if (ret) {
257                 api_err = g_array_index(out_param1, int, 0);
258                 *pRequestId = g_array_index(out_param2, int ,0);
259         }
260         else {
261                 api_err = TAPI_API_SYSTEM_RPC_LINK_DOWN;
262         }
263
264         TAPI_GLIB_FREE_PARAMS(in_param1,in_param2,in_param3,in_param4,
265                         out_param1,out_param2,out_param3,out_param4);
266
267         return api_err;
268 }
269
270 EXPORT_API int tel_get_network_preferred_plmn(int *pRequestId)
271 {
272         int api_err = TAPI_API_SUCCESS;
273         TS_BOOL ret;
274
275         TAPI_LIB_DEBUG(LEVEL_DEBUG,"Func Entrance ");
276         if (_tel_check_tapi_state() != 0)
277                 return TAPI_API_SERVICE_NOT_READY;
278
279         TAPI_RETURN_VAL_IF_FAIL(pRequestId , TAPI_API_INVALID_PTR);
280
281         if (conn_name.length_of_name == 0) {
282                 TAPI_LIB_DEBUG(LEVEL_ERR, "No dbus connection name");
283                 return TAPI_API_OPERATION_FAILED;
284         }
285
286         TAPI_GLIB_INIT_PARAMS();
287
288         TAPI_RET_ERR_NUM_IF_FAIL(tapi_check_dbus_status(), TAPI_API_SYSTEM_RPC_LINK_NOT_EST);
289
290         TAPI_GLIB_ALLOC_PARAMS(in_param1,in_param2,in_param3,in_param4,
291                         out_param1,out_param2,out_param3,out_param4);
292
293         g_array_append_vals(in_param4, &conn_name, sizeof(tapi_dbus_connection_name));
294
295         ret = tapi_send_request(TAPI_CS_SERVICE_NETWORK, TAPI_CS_NETWORK_GETPREFPLMN, in_param1, in_param2, in_param3,
296                         in_param4, &out_param1, &out_param2, &out_param3, &out_param4);
297
298         if (ret) {
299                 api_err = g_array_index(out_param1, int, 0);
300                 *pRequestId = g_array_index(out_param2, int ,0);
301         }
302         else {
303                 api_err = TAPI_API_SYSTEM_RPC_LINK_DOWN;
304         }
305
306         TAPI_GLIB_FREE_PARAMS(in_param1,in_param2,in_param3,in_param4,
307                         out_param1,out_param2,out_param3,out_param4);
308
309         return api_err;
310 }
311
312 EXPORT_API int tel_get_network_band(int *pRequestId)
313 {
314         int api_err = TAPI_API_SUCCESS;
315         TS_BOOL ret;
316
317         TAPI_LIB_DEBUG(LEVEL_DEBUG,"Func Entrance ");
318         if (_tel_check_tapi_state() != 0)
319                 return TAPI_API_SERVICE_NOT_READY;
320
321         TAPI_RETURN_VAL_IF_FAIL(pRequestId , TAPI_API_INVALID_PTR);
322
323         if (conn_name.length_of_name == 0) {
324                 TAPI_LIB_DEBUG(LEVEL_ERR, "No dbus connection name");
325                 return TAPI_API_OPERATION_FAILED;
326         }
327
328         TAPI_GLIB_INIT_PARAMS();
329
330         TAPI_RET_ERR_NUM_IF_FAIL(tapi_check_dbus_status(), TAPI_API_SYSTEM_RPC_LINK_NOT_EST);
331
332         TAPI_GLIB_ALLOC_PARAMS(in_param1,in_param2,in_param3,in_param4,
333                         out_param1,out_param2,out_param3,out_param4);
334
335         g_array_append_vals(in_param4, &conn_name, sizeof(tapi_dbus_connection_name));
336
337         ret = tapi_send_request(TAPI_CS_SERVICE_NETWORK, TAPI_CS_NETWORK_GETNETWORKBAND, in_param1, in_param2, in_param3,
338                         in_param4, &out_param1, &out_param2, &out_param3, &out_param4);
339
340         if (ret) {
341                 api_err = g_array_index(out_param1, int, 0);
342                 *pRequestId = g_array_index(out_param2, int ,0);
343         }
344         else {
345                 api_err = TAPI_API_SYSTEM_RPC_LINK_DOWN;
346         }
347
348         TAPI_GLIB_FREE_PARAMS(in_param1,in_param2,in_param3,in_param4,
349                         out_param1,out_param2,out_param3,out_param4);
350
351         return api_err;
352 }
353
354 EXPORT_API int tel_set_network_band(TelNetworkBandPreferred_t BandMode, TelNetworkBand_t Band, int *pRequestId)
355 {
356         int api_err = TAPI_API_SUCCESS;
357         TS_BOOL ret;
358
359         TAPI_LIB_DEBUG(LEVEL_DEBUG,"Func Entrance Band Mode[%d] Band[%d]",BandMode, Band);
360         if (_tel_check_tapi_state() != 0)
361                 return TAPI_API_SERVICE_NOT_READY;
362
363         TAPI_RETURN_VAL_IF_FAIL(pRequestId , TAPI_API_INVALID_PTR);
364
365         if (conn_name.length_of_name == 0) {
366                 TAPI_LIB_DEBUG(LEVEL_ERR, "No dbus connection name");
367                 return TAPI_API_OPERATION_FAILED;
368         }
369
370         if ((BandMode > TAPI_NETWORK_BAND_MODE_ONLY) || (BandMode < TAPI_NETWORK_BAND_MODE_PREFERRED) || (Band
371                         > TAPI_NETWORK_BAND_TYPE_GSM_850_1900) || (Band < TAPI_NETWORK_BAND_TYPE_ANY)) {
372                 TAPI_LIB_DEBUG(LEVEL_ALERT, "INVALID INPUT [%d],[%d]", BandMode, Band);
373                 return TAPI_API_INVALID_INPUT;
374         }
375
376         TAPI_GLIB_INIT_PARAMS();
377
378         TAPI_RET_ERR_NUM_IF_FAIL(tapi_check_dbus_status(), TAPI_API_SYSTEM_RPC_LINK_NOT_EST);
379
380         TAPI_GLIB_ALLOC_PARAMS(in_param1,in_param2,in_param3,in_param4,
381                         out_param1,out_param2,out_param3,out_param4);
382
383         g_array_append_vals(in_param1, &BandMode, sizeof(TelNetworkBandPreferred_t));
384         g_array_append_vals(in_param2, &Band, sizeof(TelNetworkBand_t));
385         g_array_append_vals(in_param4, &conn_name, sizeof(tapi_dbus_connection_name));
386
387         ret = tapi_send_request(TAPI_CS_SERVICE_NETWORK, TAPI_CS_NETWORK_SETNETWORKBAND, in_param1, in_param2, in_param3,
388                         in_param4, &out_param1, &out_param2, &out_param3, &out_param4);
389
390         if (ret) {
391                 api_err = g_array_index(out_param1, int, 0);
392                 *pRequestId = g_array_index(out_param2, int ,0);
393         }
394         else {
395                 api_err = TAPI_API_SYSTEM_RPC_LINK_DOWN;
396         }
397
398         TAPI_GLIB_FREE_PARAMS(in_param1,in_param2,in_param3,in_param4,
399                         out_param1,out_param2,out_param3,out_param4);
400
401         return api_err;
402 }
403
404 EXPORT_API int tel_set_network_service_domain(TelNetworkServiceDomain_t ServiceDomain, int *pRequestId)
405 {
406         int api_err = TAPI_API_SUCCESS;
407         TS_BOOL ret;
408
409         TAPI_LIB_DEBUG(LEVEL_DEBUG,"Func Entrance : Service Domain[%d]", ServiceDomain);
410         if (_tel_check_tapi_state() != 0)
411                 return TAPI_API_SERVICE_NOT_READY;
412
413         TAPI_RETURN_VAL_IF_FAIL(pRequestId , TAPI_API_INVALID_PTR);
414
415         if (conn_name.length_of_name == 0) {
416                 TAPI_LIB_DEBUG(LEVEL_ERR, "No dbus connection name");
417                 return TAPI_API_OPERATION_FAILED;
418         }
419
420         if ((ServiceDomain > TAPI_NETWORK_SERVICE_DOMAIN_AUTOMATIC) || (ServiceDomain
421                         < TAPI_NETWORK_SERVICE_DOMAIN_COMBINED)) {
422                 TAPI_LIB_DEBUG(LEVEL_ALERT, "INVALID INPUT [%d]", ServiceDomain);
423                 return TAPI_API_INVALID_INPUT;
424         }
425
426         TAPI_GLIB_INIT_PARAMS();
427
428         TAPI_RET_ERR_NUM_IF_FAIL(tapi_check_dbus_status(), TAPI_API_SYSTEM_RPC_LINK_NOT_EST);
429
430         TAPI_GLIB_ALLOC_PARAMS(in_param1,in_param2,in_param3,in_param4,
431                         out_param1,out_param2,out_param3,out_param4);
432
433         g_array_append_vals(in_param1, &ServiceDomain, sizeof(TelNetworkServiceDomain_t));
434         g_array_append_vals(in_param4, &conn_name, sizeof(tapi_dbus_connection_name));
435
436         ret = tapi_send_request(TAPI_CS_SERVICE_NETWORK, TAPI_CS_NETWORK_SETSERVICEDOMAIN, in_param1, in_param2, in_param3,
437                         in_param4, &out_param1, &out_param2, &out_param3, &out_param4);
438
439         if (ret) {
440                 api_err = g_array_index(out_param1, TapiResult_t, 0);
441                 *pRequestId = g_array_index(out_param2, int ,0);
442         }
443         else {
444                 api_err = TAPI_API_SYSTEM_RPC_LINK_DOWN;
445         }
446
447         TAPI_GLIB_FREE_PARAMS(in_param1,in_param2,in_param3,in_param4,
448                         out_param1,out_param2,out_param3,out_param4);
449
450         return api_err;
451 }
452
453 EXPORT_API int tel_get_network_service_domain(int *pRequestId)
454 {
455         int api_err = TAPI_API_SUCCESS;
456         TS_BOOL ret;
457
458         TAPI_LIB_DEBUG(LEVEL_DEBUG,"Func Entrance ");
459         if (_tel_check_tapi_state() != 0)
460                 return TAPI_API_SERVICE_NOT_READY;
461
462         TAPI_RETURN_VAL_IF_FAIL(pRequestId , TAPI_API_INVALID_PTR);
463
464         if (conn_name.length_of_name == 0) {
465                 TAPI_LIB_DEBUG(LEVEL_ERR, "No dbus connection name");
466                 return TAPI_API_OPERATION_FAILED;
467         }
468
469         TAPI_GLIB_INIT_PARAMS();
470
471         TAPI_RET_ERR_NUM_IF_FAIL(tapi_check_dbus_status(), TAPI_API_SYSTEM_RPC_LINK_NOT_EST);
472
473         TAPI_GLIB_ALLOC_PARAMS(in_param1,in_param2,in_param3,in_param4,
474                         out_param1,out_param2,out_param3,out_param4);
475
476         g_array_append_vals(in_param4, &conn_name, sizeof(tapi_dbus_connection_name));
477
478         ret = tapi_send_request(TAPI_CS_SERVICE_NETWORK, TAPI_CS_NETWORK_GETSERVICEDOMAIN, in_param1, in_param2, in_param3,
479                         in_param4, &out_param1, &out_param2, &out_param3, &out_param4);
480
481         if (ret) {
482                 api_err = g_array_index(out_param1, int, 0);
483                 *pRequestId = g_array_index(out_param2, int ,0);
484         }
485         else {
486                 api_err = TAPI_API_SYSTEM_RPC_LINK_DOWN;
487         }
488
489         TAPI_GLIB_FREE_PARAMS(in_param1,in_param2,in_param3,in_param4,
490                         out_param1,out_param2,out_param3,out_param4);
491
492         return api_err;
493 }
494
495 EXPORT_API int tel_set_network_mode(TelNetworkMode_t NwMode, int *pRequestId)
496 {
497         int api_err = TAPI_API_SUCCESS;
498         TS_BOOL ret;
499
500         TAPI_LIB_DEBUG(LEVEL_DEBUG,"Func Entrance : Network Mode[%d]", NwMode);
501         if (_tel_check_tapi_state() != 0)
502                 return TAPI_API_SERVICE_NOT_READY;
503
504         TAPI_RETURN_VAL_IF_FAIL(pRequestId , TAPI_API_INVALID_PTR);
505
506         if (conn_name.length_of_name == 0) {
507                 TAPI_LIB_DEBUG(LEVEL_ERR, "No dbus connection name");
508                 return TAPI_API_OPERATION_FAILED;
509         }
510
511         if ((NwMode > TAPI_NETWORK_MODE_WLAN) || (NwMode <= TAPI_NETWORK_MODE_NONE)) {
512                 TAPI_LIB_DEBUG(LEVEL_ALERT, "INVALID INPUT [%d]", NwMode);
513                 return TAPI_API_INVALID_INPUT;
514         }
515
516         TAPI_GLIB_INIT_PARAMS();
517
518         TAPI_RET_ERR_NUM_IF_FAIL(tapi_check_dbus_status(), TAPI_API_SYSTEM_RPC_LINK_NOT_EST);
519
520         TAPI_GLIB_ALLOC_PARAMS(in_param1,in_param2,in_param3,in_param4,
521                         out_param1,out_param2,out_param3,out_param4);
522
523         /* Passing parameter network_mode as in_param1*/
524         g_array_append_vals(in_param1, &NwMode, sizeof(TelNetworkMode_t));
525         g_array_append_vals(in_param4, &conn_name, sizeof(tapi_dbus_connection_name));
526
527         ret = tapi_send_request(TAPI_CS_SERVICE_NETWORK, TAPI_CS_NETWORK_SETNETWORKMODE, in_param1, in_param2, in_param3,
528                         in_param4, &out_param1, &out_param2, &out_param3, &out_param4);
529
530         if (ret) {
531                 api_err = g_array_index(out_param1, int, 0);
532                 *pRequestId = g_array_index(out_param2, int ,0);
533         }
534         else {
535                 api_err = TAPI_API_SYSTEM_RPC_LINK_DOWN;
536         }
537
538         TAPI_GLIB_FREE_PARAMS(in_param1,in_param2,in_param3,in_param4,
539                         out_param1,out_param2,out_param3,out_param4);
540
541         return api_err;
542 }
543
544 EXPORT_API int tel_get_network_mode(int *pRequestId)
545 {
546         int api_err = TAPI_API_SUCCESS;
547         TS_BOOL ret;
548
549         TAPI_LIB_DEBUG(LEVEL_DEBUG,"Func Entrance ");
550         if (_tel_check_tapi_state() != 0)
551                 return TAPI_API_SERVICE_NOT_READY;
552
553         TAPI_RETURN_VAL_IF_FAIL(pRequestId , TAPI_API_INVALID_PTR);
554
555         if (conn_name.length_of_name == 0) {
556                 TAPI_LIB_DEBUG(LEVEL_ERR, "No dbus connection name");
557                 return TAPI_API_OPERATION_FAILED;
558         }
559
560         TAPI_GLIB_INIT_PARAMS();
561
562         TAPI_RET_ERR_NUM_IF_FAIL(tapi_check_dbus_status(), TAPI_API_SYSTEM_RPC_LINK_NOT_EST);
563
564         TAPI_GLIB_ALLOC_PARAMS(in_param1,in_param2,in_param3,in_param4,
565                         out_param1,out_param2,out_param3,out_param4);
566
567         g_array_append_vals(in_param4, &conn_name, sizeof(tapi_dbus_connection_name));
568
569         ret = tapi_send_request(TAPI_CS_SERVICE_NETWORK, TAPI_CS_NETWORK_GETNETWORKMODE, in_param1, in_param2, in_param3,
570                         in_param4, &out_param1, &out_param2, &out_param3, &out_param4);
571
572         if (ret) {
573                 api_err = g_array_index(out_param1, int, 0);
574                 *pRequestId = g_array_index(out_param2, int ,0);
575         }
576         else {
577                 api_err = TAPI_API_SYSTEM_RPC_LINK_DOWN;
578         }
579
580         TAPI_GLIB_FREE_PARAMS(in_param1,in_param2,in_param3,in_param4,
581                         out_param1,out_param2,out_param3,out_param4);
582
583         return api_err;
584 }
585
586 EXPORT_API int tel_set_network_roaming(TelNetworkRoamingMode_t *RoamingMode, int *pRequestId)
587 {
588         int api_err = TAPI_API_SUCCESS;
589         TS_BOOL ret;
590
591         TAPI_LIB_DEBUG(LEVEL_DEBUG,"Func Entrance ");
592         if (_tel_check_tapi_state() != 0)
593                 return TAPI_API_SERVICE_NOT_READY;
594
595         TAPI_RETURN_VAL_IF_FAIL(pRequestId , TAPI_API_INVALID_PTR);
596         TAPI_RETURN_VAL_IF_FAIL(RoamingMode , TAPI_API_INVALID_PTR);
597
598         if (conn_name.length_of_name == 0) {
599                 TAPI_LIB_DEBUG(LEVEL_ERR, "No dbus connection name");
600                 return TAPI_API_OPERATION_FAILED;
601         }
602
603         if ((RoamingMode->pref_net_type > TAPI_NETWORK_PREF_NET_TYPE_ROAM_ONLY) || (RoamingMode->pref_net_type
604                         < TAPI_NETWORK_PREF_NET_TYPE_AUTOMATIC)) {
605                 return TAPI_API_INVALID_INPUT;
606         }
607
608         TAPI_GLIB_INIT_PARAMS();
609
610         TAPI_RET_ERR_NUM_IF_FAIL(tapi_check_dbus_status(), TAPI_API_SYSTEM_RPC_LINK_NOT_EST);
611
612         TAPI_GLIB_ALLOC_PARAMS(in_param1,in_param2,in_param3,in_param4,
613                         out_param1,out_param2,out_param3,out_param4);
614
615         /* Passing parameter service_domain as in_param1*/
616         g_array_append_vals(in_param1, RoamingMode, sizeof(TelNetworkRoamingMode_t));
617
618         g_array_append_vals(in_param4, &conn_name, sizeof(tapi_dbus_connection_name));
619
620         ret = tapi_send_request(TAPI_CS_SERVICE_NETWORK, TAPI_CS_NETWORK_SETROAMINGMODE, in_param1, in_param2, in_param3,
621                         in_param4, &out_param1, &out_param2, &out_param3, &out_param4);
622
623         if (ret) {
624                 api_err = g_array_index(out_param1, int, 0);
625                 *pRequestId = g_array_index(out_param2, int ,0);
626         }
627         else {
628                 api_err = TAPI_API_SYSTEM_RPC_LINK_DOWN;
629         }
630
631         TAPI_GLIB_FREE_PARAMS(in_param1,in_param2,in_param3,in_param4,
632                         out_param1,out_param2,out_param3,out_param4);
633
634         return api_err;
635 }
636
637 EXPORT_API int tel_get_network_roaming(int *pRequestId)
638 {
639         int api_err = TAPI_API_SUCCESS;
640         TS_BOOL ret;
641
642         TAPI_LIB_DEBUG(LEVEL_DEBUG,"Func Entrance ");
643         if (_tel_check_tapi_state() != 0)
644                 return TAPI_API_SERVICE_NOT_READY;
645
646         TAPI_RETURN_VAL_IF_FAIL(pRequestId , TAPI_API_INVALID_PTR);
647
648         if (conn_name.length_of_name == 0) {
649                 TAPI_LIB_DEBUG(LEVEL_ERR, "No dbus connection name");
650                 return TAPI_API_OPERATION_FAILED;
651         }
652
653         TAPI_GLIB_INIT_PARAMS();
654
655         TAPI_RET_ERR_NUM_IF_FAIL(tapi_check_dbus_status(), TAPI_API_SYSTEM_RPC_LINK_NOT_EST);
656
657         TAPI_GLIB_ALLOC_PARAMS(in_param1,in_param2,in_param3,in_param4,
658                         out_param1,out_param2,out_param3,out_param4);
659
660         g_array_append_vals(in_param4, &conn_name, sizeof(tapi_dbus_connection_name));
661
662         ret = tapi_send_request(TAPI_CS_SERVICE_NETWORK, TAPI_CS_NETWORK_GETROAMINGMODE, in_param1, in_param2, in_param3,
663                         in_param4, &out_param1, &out_param2, &out_param3, &out_param4);
664
665         if (ret) {
666                 api_err = g_array_index(out_param1, int, 0);
667                 *pRequestId = g_array_index(out_param2, int ,0);
668         }
669         else {
670                 api_err = TAPI_API_SYSTEM_RPC_LINK_DOWN;
671         }
672
673         TAPI_GLIB_FREE_PARAMS(in_param1,in_param2,in_param3,in_param4,
674                         out_param1,out_param2,out_param3,out_param4);
675
676         return api_err;
677 }
678
679 EXPORT_API int tel_set_network_hybrid_in_cdma(TelNetworkCDMAHybridMode_t CDMAHybridMode, int *pRequestId)
680 {
681         int api_err = TAPI_API_SUCCESS;
682         TS_BOOL ret;
683
684         TAPI_LIB_DEBUG(LEVEL_DEBUG,"Func Entrance : Hybrid Mode[%d]", CDMAHybridMode);
685         if (_tel_check_tapi_state() != 0)
686                 return TAPI_API_SERVICE_NOT_READY;
687
688         TAPI_RETURN_VAL_IF_FAIL(pRequestId , TAPI_API_INVALID_PTR);
689
690         if (conn_name.length_of_name == 0) {
691                 TAPI_LIB_DEBUG(LEVEL_ERR, "No dbus connection name");
692                 return TAPI_API_OPERATION_FAILED;
693         }
694
695         if ((CDMAHybridMode > TAPI_NETWORK_CDMA_EVDO_ONLY) || (CDMAHybridMode < TAPI_NETWORK_CDMA_HYBRID)) {
696                 return TAPI_API_INVALID_INPUT;
697         }
698
699         TAPI_GLIB_INIT_PARAMS();
700
701         TAPI_RET_ERR_NUM_IF_FAIL(tapi_check_dbus_status(), TAPI_API_SYSTEM_RPC_LINK_NOT_EST);
702
703         TAPI_GLIB_ALLOC_PARAMS(in_param1,in_param2,in_param3,in_param4,
704                         out_param1,out_param2,out_param3,out_param4);
705
706         g_array_append_vals(in_param1, &CDMAHybridMode, sizeof(TelNetworkCDMAHybridMode_t));
707         g_array_append_vals(in_param4, &conn_name, sizeof(tapi_dbus_connection_name));
708
709         ret = tapi_send_request(TAPI_CS_SERVICE_NETWORK, TAPI_CS_NETWORK_SETCDMAHYBRIDMODE, in_param1, in_param2,
710                         in_param3, in_param4, &out_param1, &out_param2, &out_param3, &out_param4);
711
712         if (ret) {
713                 api_err = g_array_index(out_param1, int, 0);
714                 *pRequestId = g_array_index(out_param2, int ,0);
715         }
716         else {
717                 api_err = TAPI_API_SYSTEM_RPC_LINK_DOWN;
718         }
719
720         TAPI_GLIB_FREE_PARAMS(in_param1,in_param2,in_param3,in_param4,
721                         out_param1,out_param2,out_param3,out_param4);
722
723         return api_err;
724 }
725
726 EXPORT_API int tel_get_network_hybrid_in_cdma(int *pRequestId)
727 {
728         int api_err = TAPI_API_SUCCESS;
729         TS_BOOL ret;
730
731         TAPI_LIB_DEBUG(LEVEL_DEBUG,"Func Entrance ");
732         if (_tel_check_tapi_state() != 0)
733                 return TAPI_API_SERVICE_NOT_READY;
734
735         TAPI_RETURN_VAL_IF_FAIL(pRequestId , TAPI_API_INVALID_PTR);
736
737         if (conn_name.length_of_name == 0) {
738                 TAPI_LIB_DEBUG(LEVEL_ERR, "No dbus connection name");
739                 return TAPI_API_OPERATION_FAILED;
740         }
741
742         TAPI_GLIB_INIT_PARAMS();
743
744         TAPI_RET_ERR_NUM_IF_FAIL(tapi_check_dbus_status(), TAPI_API_SYSTEM_RPC_LINK_NOT_EST);
745
746         TAPI_GLIB_ALLOC_PARAMS(in_param1,in_param2,in_param3,in_param4,
747                         out_param1,out_param2,out_param3,out_param4);
748
749         g_array_append_vals(in_param4, &conn_name, sizeof(tapi_dbus_connection_name));
750
751         ret = tapi_send_request(TAPI_CS_SERVICE_NETWORK, TAPI_CS_NETWORK_GETCDMAHYBRIDMODE, in_param1, in_param2,
752                         in_param3, in_param4, &out_param1, &out_param2, &out_param3, &out_param4);
753
754         if (ret) {
755                 api_err = g_array_index(out_param1, int, 0);
756                 *pRequestId = g_array_index(out_param2, int ,0);
757         }
758         else {
759                 api_err = TAPI_API_SYSTEM_RPC_LINK_DOWN;
760         }
761
762         TAPI_GLIB_FREE_PARAMS(in_param1,in_param2,in_param3,in_param4,
763                         out_param1,out_param2,out_param3,out_param4);
764
765         return api_err;
766 }
767
768 EXPORT_API int tel_set_network_acquisition_order(TelNetworkMode_t *pPrefNwOrder, int *pRequestId)
769 {
770         int api_err = TAPI_API_SUCCESS;
771         TS_BOOL ret;
772         tapi_dbus_connection_name app_name;
773
774         TAPI_LIB_DEBUG(LEVEL_DEBUG, "Func Entrance");
775         if (_tel_check_tapi_state() != 0)
776                 return TAPI_API_SERVICE_NOT_READY;
777
778         TAPI_RETURN_VAL_IF_FAIL(pRequestId, TAPI_API_INVALID_PTR);
779         TAPI_RETURN_VAL_IF_FAIL(pPrefNwOrder, TAPI_API_INVALID_PTR);
780
781         tel_get_app_name(&app_name);
782         if (app_name.length_of_name == 0) {
783                 TAPI_LIB_DEBUG(LEVEL_ERR, "No dbus connection name");
784                 return TAPI_API_OPERATION_FAILED;
785         }
786
787         TAPI_GLIB_INIT_PARAMS();
788         TAPI_RET_ERR_NUM_IF_FAIL(tapi_check_dbus_status_internal(), TAPI_API_SYSTEM_RPC_LINK_NOT_EST);
789         TAPI_GLIB_ALLOC_PARAMS(in_param1, in_param2, in_param3, in_param4, out_param1, out_param2, out_param3, out_param4);
790
791         /* Passing parameter network_order as in_param1*/
792         g_array_append_vals(in_param1, pPrefNwOrder, (sizeof(TelNetworkMode_t) * TAPI_NETWORK_ORDER_MAX));
793         g_array_append_vals(in_param4, &app_name, sizeof(tapi_dbus_connection_name));
794
795         ret = tapi_send_request_internal(TAPI_CS_SERVICE_NETWORK, TAPI_CS_NETWORK_SETNETWORKORDER,
796                         in_param1, in_param2, in_param3, in_param4,
797                         &out_param1, &out_param2, &out_param3, &out_param4);
798
799         if (ret) {
800                 api_err = g_array_index(out_param1, int, 0);
801                 *pRequestId = g_array_index(out_param2, int ,0);
802         }
803         else {
804                 api_err = TAPI_API_SYSTEM_RPC_LINK_DOWN;
805         }
806
807         TAPI_GLIB_FREE_PARAMS(in_param1, in_param2, in_param3, in_param4, out_param1, out_param2, out_param3, out_param4);
808
809         return api_err;
810 }
811
812 EXPORT_API int tel_get_network_acquisition_order(int *pRequestId)
813 {
814         int api_err = TAPI_API_SUCCESS;
815         TS_BOOL ret;
816         tapi_dbus_connection_name app_name;
817
818         TAPI_LIB_DEBUG(LEVEL_DEBUG, "Func Entrance ");
819         if (_tel_check_tapi_state() != 0)
820                 return TAPI_API_SERVICE_NOT_READY;
821
822         TAPI_RETURN_VAL_IF_FAIL(pRequestId, TAPI_API_INVALID_PTR);
823
824         tel_get_app_name(&app_name);
825         if (app_name.length_of_name == 0) {
826                 TAPI_LIB_DEBUG(LEVEL_ERR, "No dbus connection name");
827                 return TAPI_API_OPERATION_FAILED;
828         }
829
830         TAPI_GLIB_INIT_PARAMS();
831         TAPI_RET_ERR_NUM_IF_FAIL(tapi_check_dbus_status_internal(), TAPI_API_SYSTEM_RPC_LINK_NOT_EST);
832         TAPI_GLIB_ALLOC_PARAMS(in_param1, in_param2, in_param3, in_param4, out_param1, out_param2, out_param3, out_param4);
833
834         g_array_append_vals(in_param4, &app_name, sizeof(tapi_dbus_connection_name));
835
836         ret = tapi_send_request_internal(TAPI_CS_SERVICE_NETWORK, TAPI_CS_NETWORK_GETNETWORKORDER,
837                         in_param1, in_param2, in_param3, in_param4,
838                         &out_param1, &out_param2, &out_param3, &out_param4);
839
840         if (ret) {
841                 api_err = g_array_index(out_param1, int, 0);
842                 *pRequestId = g_array_index(out_param2, int ,0);
843         }
844         else {
845                 api_err = TAPI_API_SYSTEM_RPC_LINK_DOWN;
846         }
847
848         TAPI_GLIB_FREE_PARAMS(in_param1, in_param2, in_param3, in_param4, out_param1, out_param2, out_param3, out_param4);
849
850         return api_err;
851 }
852
853 EXPORT_API int tel_set_network_power_on_attach(TelNetworkPowerOnAttach_t PowerOnAttach, int *pRequestId)
854 {
855         int api_err = TAPI_API_SUCCESS;
856         TS_BOOL ret;
857         tapi_dbus_connection_name app_name;
858
859         TAPI_LIB_DEBUG(LEVEL_DEBUG, "Func Entrance Power On Attach[%d]", PowerOnAttach);
860         if (_tel_check_tapi_state() != 0)
861                 return TAPI_API_SERVICE_NOT_READY;
862
863         TAPI_RETURN_VAL_IF_FAIL(pRequestId, TAPI_API_INVALID_PTR);
864
865         tel_get_app_name(&app_name);
866         if (app_name.length_of_name == 0) {
867                 TAPI_LIB_DEBUG(LEVEL_ERR, "No dbus connection name");
868                 return TAPI_API_OPERATION_FAILED;
869         }
870
871         if ((PowerOnAttach > TAPI_NETWORK_POWERON_ATTACH_ENABLE) || (PowerOnAttach < TAPI_NETWORK_POWERON_ATTACH_DISABLE)) {
872                 TAPI_LIB_DEBUG(LEVEL_ALERT, "INVALID INPUT [%d]", PowerOnAttach);
873                 return TAPI_API_INVALID_INPUT;
874         }
875
876         TAPI_GLIB_INIT_PARAMS();
877         TAPI_RET_ERR_NUM_IF_FAIL(tapi_check_dbus_status_internal(), TAPI_API_SYSTEM_RPC_LINK_NOT_EST);
878         TAPI_GLIB_ALLOC_PARAMS(in_param1, in_param2, in_param3, in_param4, out_param1, out_param2, out_param3, out_param4);
879
880         g_array_append_vals(in_param1, &PowerOnAttach, sizeof(TelNetworkPowerOnAttach_t));
881         g_array_append_vals(in_param4, &app_name, sizeof(tapi_dbus_connection_name));
882
883         ret = tapi_send_request_internal(TAPI_CS_SERVICE_NETWORK, TAPI_CS_NETWORK_SETPOWERONATTACH,
884                         in_param1, in_param2, in_param3, in_param4,
885                         &out_param1, &out_param2, &out_param3, &out_param4);
886
887         if (ret) {
888                 api_err = g_array_index(out_param1, int, 0);
889                 *pRequestId = g_array_index(out_param2, int ,0);
890         }
891         else {
892                 api_err = TAPI_API_SYSTEM_RPC_LINK_DOWN;
893         }
894
895         TAPI_GLIB_FREE_PARAMS(in_param1, in_param2, in_param3, in_param4, out_param1, out_param2, out_param3, out_param4);
896
897         return api_err;
898 }
899
900 EXPORT_API int tel_get_network_power_on_attach(int *pRequestId)
901 {
902         int api_err = TAPI_API_SUCCESS;
903         TS_BOOL ret;
904         tapi_dbus_connection_name app_name;
905
906         TAPI_LIB_DEBUG(LEVEL_DEBUG, "Func Entrance ");
907         if (_tel_check_tapi_state() != 0)
908                 return TAPI_API_SERVICE_NOT_READY;
909
910         TAPI_RETURN_VAL_IF_FAIL(pRequestId, TAPI_API_INVALID_PTR);
911
912         tel_get_app_name(&app_name);
913         if (app_name.length_of_name == 0) {
914                 TAPI_LIB_DEBUG(LEVEL_ERR, "No dbus connection name");
915                 return TAPI_API_OPERATION_FAILED;
916         }
917
918         TAPI_GLIB_INIT_PARAMS();
919         TAPI_RET_ERR_NUM_IF_FAIL(tapi_check_dbus_status_internal(), TAPI_API_SYSTEM_RPC_LINK_NOT_EST);
920         TAPI_GLIB_ALLOC_PARAMS(in_param1, in_param2, in_param3, in_param4, out_param1, out_param2, out_param3, out_param4);
921
922         g_array_append_vals(in_param4, &app_name, sizeof(tapi_dbus_connection_name));
923
924         ret = tapi_send_request_internal(TAPI_CS_SERVICE_NETWORK, TAPI_CS_NETWORK_GETPOWERONATTACH,
925                         in_param1, in_param2, in_param3, in_param4,
926                         &out_param1, &out_param2, &out_param3, &out_param4);
927
928         if (ret) {
929                 api_err = g_array_index(out_param1, int, 0);
930                 *pRequestId = g_array_index(out_param2, int ,0);
931         }
932         else {
933                 api_err = TAPI_API_SYSTEM_RPC_LINK_DOWN;
934         }
935
936         TAPI_GLIB_FREE_PARAMS(in_param1, in_param2, in_param3, in_param4, out_param1, out_param2, out_param3, out_param4);
937
938         return api_err;
939 }
940
941 EXPORT_API int tel_cancel_network_manual_search(int *pRequestId)
942 {
943         int api_err = TAPI_API_SUCCESS;
944         TS_BOOL ret;
945         tapi_dbus_connection_name app_name;
946
947         TAPI_LIB_DEBUG(LEVEL_DEBUG, "Func Entrance ");
948         if (_tel_check_tapi_state() != 0)
949                 return TAPI_API_SERVICE_NOT_READY;
950
951         TAPI_RETURN_VAL_IF_FAIL(pRequestId, TAPI_API_INVALID_PTR);
952
953         tel_get_app_name(&app_name);
954         if (app_name.length_of_name == 0) {
955                 TAPI_LIB_DEBUG(LEVEL_ERR, "No dbus connection name");
956                 return TAPI_API_OPERATION_FAILED;
957         }
958
959         TAPI_GLIB_INIT_PARAMS();
960         TAPI_RET_ERR_NUM_IF_FAIL(tapi_check_dbus_status_internal(), TAPI_API_SYSTEM_RPC_LINK_DOWN);
961         TAPI_GLIB_ALLOC_PARAMS(in_param1, in_param2, in_param3, in_param4, out_param1, out_param2, out_param3, out_param4);
962
963         g_array_append_vals(in_param4, &app_name, sizeof(tapi_dbus_connection_name));
964
965         ret = tapi_send_request_internal(TAPI_CS_SERVICE_NETWORK, TAPI_CS_NETWORK_CANCELMANUALSEARCH,
966                         in_param1, in_param2, in_param3, in_param4,
967                         &out_param1, &out_param2, &out_param3, &out_param4);
968
969         if (ret) {
970                 api_err = g_array_index(out_param1, int, 0);
971                 *pRequestId = g_array_index(out_param2, int ,0);
972         }
973         else {
974                 api_err = TAPI_API_SYSTEM_RPC_LINK_DOWN;
975         }
976
977         TAPI_GLIB_FREE_PARAMS(in_param1, in_param2, in_param3, in_param4, out_param1, out_param2, out_param3, out_param4);
978
979         return api_err;
980 }
981
982 EXPORT_API int tel_cancel_network_manual_selection(int *pRequestId)
983 {
984         int api_err = TAPI_API_SUCCESS;
985         TS_BOOL ret;
986         tapi_dbus_connection_name app_name;
987
988         TAPI_LIB_DEBUG(LEVEL_DEBUG, "Func Entrance ");
989         if (_tel_check_tapi_state() != 0)
990                 return TAPI_API_SERVICE_NOT_READY;
991
992         TAPI_RETURN_VAL_IF_FAIL(pRequestId, TAPI_API_INVALID_PTR);
993
994         tel_get_app_name(&app_name);
995         if (app_name.length_of_name == 0) {
996                 TAPI_LIB_DEBUG(LEVEL_ERR, "No dbus connection name");
997                 return TAPI_API_OPERATION_FAILED;
998         }
999
1000         TAPI_GLIB_INIT_PARAMS();
1001         TAPI_RET_ERR_NUM_IF_FAIL(tapi_check_dbus_status_internal(), TAPI_API_SYSTEM_RPC_LINK_DOWN);
1002         TAPI_GLIB_ALLOC_PARAMS(in_param1, in_param2, in_param3, in_param4, out_param1, out_param2, out_param3, out_param4);
1003
1004         g_array_append_vals(in_param4, &app_name, sizeof(tapi_dbus_connection_name));
1005
1006         ret = tapi_send_request_internal(TAPI_CS_SERVICE_NETWORK, TAPI_CS_NETWORK_CANCELMANUALSELECTION,
1007                         in_param1, in_param2, in_param3, in_param4,
1008                         &out_param1, &out_param2, &out_param3, &out_param4);
1009
1010         if (ret) {
1011                 api_err = g_array_index(out_param1, int, 0);
1012                 *pRequestId = g_array_index(out_param2, int ,0);
1013         }
1014         else {
1015                 api_err = TAPI_API_SYSTEM_RPC_LINK_DOWN;
1016         }
1017
1018         TAPI_GLIB_FREE_PARAMS(in_param1, in_param2, in_param3, in_param4, out_param1, out_param2, out_param3, out_param4);
1019
1020         return api_err;
1021 }