2 * Copyright (c) 2012, 2013 Samsung Electronics Co., Ltd.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
18 /* standard library header */
21 /* SLP library header */
22 #ifdef USER_SPACE_SMACK
23 #include "security-server.h"
27 #include "smartcard-types.h"
29 #include "ByteArray.h"
30 #include "ClientGDBus.h"
34 namespace smartcard_service_api
36 ByteArray ClientGDBus::cookie = ByteArray::EMPTY;
38 GVariant *ClientGDBus::getCookie()
41 #ifdef USER_SPACE_SMACK
42 if (cookie.isEmpty()) {
46 len = security_server_get_cookie_size();
48 buffer = new uint8_t[len];
50 if (security_server_request_cookie(
51 (char *)buffer, len) == 0) {
52 cookie.assign(buffer, len);
54 _ERR("security_server_request_cookie failed");
62 _ERR("security_server_get_cookie_size failed");
66 result = GDBusHelper::convertByteArrayToVariant(cookie);
70 } /* namespace smartcard_service_api */