2015-10-23 06:11:53 +03:00
/*
System specific code
Copyright ( C ) Amitay Isaacs 2015
This program is free software ; you can redistribute it and / or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation ; either version 3 of the License , or
( at your option ) any later version .
This program is distributed in the hope that it will be useful ,
but WITHOUT ANY WARRANTY ; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE . See the
GNU General Public License for more details .
You should have received a copy of the GNU General Public License
along with this program ; if not , see < http : //www.gnu.org/licenses/>.
*/
# ifndef __CTDB_SYSTEM_H__
# define __CTDB_SYSTEM_H__
2016-03-11 03:44:12 +03:00
# include <talloc.h>
2015-10-23 06:11:53 +03:00
/* From system_<os>.c */
int ctdb_sys_send_arp ( const ctdb_sock_addr * addr , const char * iface ) ;
int ctdb_sys_send_tcp ( const ctdb_sock_addr * dest ,
const ctdb_sock_addr * src ,
uint32_t seq , uint32_t ack , int rst ) ;
int ctdb_sys_open_capture_socket ( const char * iface , void * * private_data ) ;
int ctdb_sys_close_capture_socket ( void * private_data ) ;
int ctdb_sys_read_tcp_packet ( int s , void * private_data ,
2016-03-21 03:07:19 +03:00
ctdb_sock_addr * src , ctdb_sock_addr * dst ,
uint32_t * ack_seq , uint32_t * seq ,
int * rst , uint16_t * window ) ;
2015-10-23 06:11:53 +03:00
bool ctdb_sys_check_iface_exists ( const char * iface ) ;
int ctdb_get_peer_pid ( const int fd , pid_t * peer_pid ) ;
/* From system_util.c */
bool set_scheduler ( void ) ;
void reset_scheduler ( void ) ;
void lockdown_memory ( bool valgrinding ) ;
void mkdir_p_or_die ( const char * dir , int mode ) ;
2015-12-08 06:12:46 +03:00
void ctdb_wait_for_process_to_exit ( pid_t pid ) ;
2015-10-23 06:11:53 +03:00
# endif /* __CTDB_SYSTEM_H__ */