@@ -430,6 +430,11 @@ ST_HIDDEN int _st_select_fd_getlimit(void)
430
430
return FD_SETSIZE ;
431
431
}
432
432
433
+ ST_HIDDEN void _st_select_destroy (void )
434
+ {
435
+ /* TODO: FIXME: Implements it */
436
+ }
437
+
433
438
static _st_eventsys_t _st_select_eventsys = {
434
439
"select" ,
435
440
ST_EVENTSYS_SELECT ,
@@ -439,7 +444,8 @@ static _st_eventsys_t _st_select_eventsys = {
439
444
_st_select_pollset_del ,
440
445
_st_select_fd_new ,
441
446
_st_select_fd_close ,
442
- _st_select_fd_getlimit
447
+ _st_select_fd_getlimit ,
448
+ _st_select_destroy
443
449
};
444
450
#endif
445
451
@@ -838,6 +844,11 @@ ST_HIDDEN int _st_kq_fd_getlimit(void)
838
844
return 0 ;
839
845
}
840
846
847
+ ST_HIDDEN void _st_kq_destroy (void )
848
+ {
849
+ /* TODO: FIXME: Implements it */
850
+ }
851
+
841
852
static _st_eventsys_t _st_kq_eventsys = {
842
853
"kqueue" ,
843
854
ST_EVENTSYS_ALT ,
@@ -847,7 +858,8 @@ static _st_eventsys_t _st_kq_eventsys = {
847
858
_st_kq_pollset_del ,
848
859
_st_kq_fd_new ,
849
860
_st_kq_fd_close ,
850
- _st_kq_fd_getlimit
861
+ _st_kq_fd_getlimit ,
862
+ _st_kq_destroy
851
863
};
852
864
#endif /* MD_HAVE_KQUEUE */
853
865
@@ -856,7 +868,6 @@ static _st_eventsys_t _st_kq_eventsys = {
856
868
/*****************************************
857
869
* epoll event system
858
870
*/
859
-
860
871
ST_HIDDEN int _st_epoll_init (void )
861
872
{
862
873
int fdlim ;
@@ -1193,6 +1204,17 @@ ST_HIDDEN int _st_epoll_is_supported(void)
1193
1204
return (errno != ENOSYS );
1194
1205
}
1195
1206
1207
+ ST_HIDDEN void _st_epoll_destroy (void )
1208
+ {
1209
+ if (_st_epoll_data -> epfd >= 0 ) {
1210
+ close (_st_epoll_data -> epfd );
1211
+ }
1212
+ free (_st_epoll_data -> fd_data );
1213
+ free (_st_epoll_data -> evtlist );
1214
+ free (_st_epoll_data );
1215
+ _st_epoll_data = NULL ;
1216
+ }
1217
+
1196
1218
static _st_eventsys_t _st_epoll_eventsys = {
1197
1219
"epoll" ,
1198
1220
ST_EVENTSYS_ALT ,
@@ -1202,7 +1224,8 @@ static _st_eventsys_t _st_epoll_eventsys = {
1202
1224
_st_epoll_pollset_del ,
1203
1225
_st_epoll_fd_new ,
1204
1226
_st_epoll_fd_close ,
1205
- _st_epoll_fd_getlimit
1227
+ _st_epoll_fd_getlimit ,
1228
+ _st_epoll_destroy
1206
1229
};
1207
1230
#endif /* MD_HAVE_EPOLL */
1208
1231
0 commit comments