#ifndef _BFD_H
#define _BFD_H
#ifdef __cplusplus
extern "C"
{
#endif
#define BFD_PATHLEN 108
struct bfd_vtysh_client {
int fd;
char path[BFD_PATHLEN];
// exec after connect server
int (*pre_config)(struct bfd_vtysh_client *);
// recover config after connect server
int (*recover_config)(struct bfd_vtysh_client *);
};
int bfd_vtysh_connect(struct bfd_vtysh_client *client);
void bfd_vtysh_close(struct bfd_vtysh_client *client);
int bfd_vtysh_add_dev(struct bfd_vtysh_client *client, const char *peer_addr, int retires, int interval_ms);
int bfd_vtysh_del_dev(struct bfd_vtysh_client *client, const char *peer_addr);
int bfd_vtysh_get_dev_active(struct bfd_vtysh_client *client, char *addr);
int bfd_vtysh_pre_config(struct bfd_vtysh_client *client);
}