c-router-emulator/router/db.h

60 lines
1.4 KiB
C

#ifndef __DB_H__
#define __DB_H__
#include <mysql/mysql.h>
#include <string.h>
static MYSQL *conn_db = NULL;
// 连接
extern int connect_mysql(const char *host, int port, const char *user, const char *pwd, const char *db_name);
// 关闭
extern int close_mysql();
// 查询
extern int query(const char *sql, void (*callback)(MYSQL_ROW row, char (*columns)[30], int cols));
// 返回查询结果的行数
extern int result_rows(const char *sql);
// 插入
extern int insert(const char *sql, MYSQL_BIND *params);
// 删除
extern int delete (const char *sql, MYSQL_BIND *params);
// 更新
extern int update(const char *sql, MYSQL_BIND *params);
// 添加路由表
extern void insert_routing_list(const char *ip, const char *mask, const char *nexthop);
// 删除路由表中的一条记录
extern void delete_routing_list(const char *ip);
// 打印路由表
extern void print_routing_list();
// 打印查询结果的回调函数
extern void printResult(MYSQL_ROW row, char (*columns)[30], int cols);
// 添加ARP表
extern void insert_arp_list(const char *ip, const char *mac);
// 打印ARP表
extern void print_arp_list();
// 添加黑名单
extern void insert_ip_fw(const char *ip);
// 查询黑名单中是否存在此IP
extern int search_ip_fw(const char *ip);
// 打印黑名单
extern void print_ip_fw();
// 删除黑名单中的一条记录
extern void delete_ip_fw(const char *ip);
#endif