4 * Copyright (c) 2017 Samsung Electronics Co., Ltd.
6 * Licensed under the Apache License, Version 2.0 (the "License");
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
10 * http://www.apache.org/licenses/LICENSE-2.0
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
20 #include "accept_event_handler.h"
22 #include "sensor_log.h"
23 #include "ipc_server.h"
27 accept_event_handler::accept_event_handler(ipc_server *server)
32 bool accept_event_handler::handle(int fd, event_condition condition)
34 retv_if((condition & (EVENT_HUP)), false);
36 stream_socket *cli_sock = new(std::nothrow) stream_socket();
37 retvm_if(!cli_sock, false, "Failed to allocate memory");
39 m_server->accept(*cli_sock);
41 channel *_ch = new(std::nothrow) channel(cli_sock);
42 retvm_if(!_ch, false, "Failed to allocate memory");
44 m_server->register_channel(cli_sock->get_fd(), _ch);