bool wxEpollDispatcher::ModifyFD(int fd, wxFDIOHandler* handler, int flags) { epoll_event ev; ev.events = GetEpollMask(flags, fd); ev.data.ptr = handler; const int ret = epoll_ctl(m_epollDescriptor, EPOLL_CTL_MOD, fd, &ev); if ( ret != 0 ) { wxLogSysError(_("Failed to modify descriptor %d in epoll descriptor %d"), fd, m_epollDescriptor); return false; } wxLogTrace(wxEpollDispatcher_Trace, wxT("Modified fd %d (handler: %p) on epoll %d"), fd, handler, m_epollDescriptor); return true; }
bool wxEpollDispatcher::RegisterFD(int fd, wxFDIOHandler* handler, int flags) { epoll_event ev; ev.events = GetEpollMask(flags, fd); ev.data.ptr = handler; const int ret = epoll_ctl(m_epollDescriptor, EPOLL_CTL_ADD, fd, &ev); if ( ret != 0 ) { wxLogSysError(_("Failed to add descriptor %d to epoll descriptor %d"), fd, m_epollDescriptor); return false; } wxLogTrace(wxEpollDispatcher_Trace, _T("Added fd %d (handler %p) to epoll %d"), fd, handler, m_epollDescriptor); return true; }