当前位置: 首页 > wzjs >正文

怎么在中国移动做网站备案百度竞价账户

怎么在中国移动做网站备案,百度竞价账户,大连比较好的建站公司,wordpress媒体库显示空白目录 1.larV0.7-hook流程的说明 2.larV0.7-TCP_server集成链接HOOK函数 3.larV0.7-TCP_client集成链接HOOK注册功能 1.larV0.7-hook流程的说明 ### 7.1 数据库表相关查询方法实现 ​ 我们先实现一些基本的数据表达查询方法: > lars_dns/src/dns_rout…

目录

 

1.larV0.7-hook流程的说明

2.larV0.7-TCP_server集成链接HOOK函数

3.larV0.7-TCP_client集成链接HOOK注册功能


 

1.larV0.7-hook流程的说明

### 7.1 数据库表相关查询方法实现

​        我们先实现一些基本的数据表达查询方法:

> lars_dns/src/dns_route.cpp

```c
/*
 *  return 0, 表示 加载成功,version没有改变
 *         1, 表示 加载成功,version有改变
 *         -1 表示 加载失败
 * */
int Route::load_version()
{
    //这里面只会有一条数据
    snprintf(_sql, 1000, "SELECT version from RouteVersion WHERE id = 1;");

    int ret = mysql_real_query(&_db_conn, _sql, strlen(_sql));
    if (ret)
    {
        fprintf(stderr, "load version error: %s\n", mysql_error(&_db_conn));
        return -1;
    }

    MYSQL_RES *result = mysql_store_result(&_db_conn);
    if (!result)
    {
        fprintf(stderr, "mysql store result: %s\n", mysql_error(&_db_conn));
        return -1;
    }

    long line_num = mysql_num_rows(result);
    if (line_num == 0)
    {
        fprintf(stderr, "No version in table RouteVersion: %s\n", mysql_error(&_db_conn));
        return -1;
    }

    MYSQL_ROW row = mysql_fetch_row(result);
    //得到version

    long new_version = atol(row[0]);

    if (new_version == this->_version)
    {
        //加载成功但是没有修改
        return 0;
    }
    this->_version = new_version;
    printf("now route version is %ld\n", this->_version);

    mysql_free_result(result);

    return 1;
}

2.larV0.7-TCP_server集成链接HOOK函数

//加载RouteData到_temp_pointer
int Route::load_route_data() 
{
    _temp_pointer->clear();

    snprintf(_sql, 100, "SELECT * FROM RouteData;");

    int ret = mysql_real_query(&_db_conn, _sql, strlen(_sql));
    if (ret)
    {
        fprintf(stderr, "load version error: %s\n", mysql_error(&_db_conn));
        return -1;
    }

    MYSQL_RES *result = mysql_store_result(&_db_conn);
    if (!result)
    {
        fprintf(stderr, "mysql store result: %s\n", mysql_error(&_db_conn));
        return -1;
    }

    long line_num = mysql_num_rows(result);
    MYSQL_ROW row;
    for (long i = 0;i < line_num; ++i)
    {
        row = mysql_fetch_row(result);
        int modid = atoi(row[1]);
        int cmdid = atoi(row[2]);
        unsigned ip = atoi(row[3]);
        int port = atoi(row[4]);

        uint64_t key = ((uint64_t)modid << 32) + cmdid;
        uint64_t value = ((uint64_t)ip << 32) + port;

        (*_temp_pointer)[key].insert(value);
    }
    printf("load data to tmep succ! size is %lu\n", _temp_pointer->size());

    mysql_free_result(result);

    return 0;
}

3.larV0.7-TCP_client集成链接HOOK注册功能

//将temp_pointer的数据更新到data_pointer
void Route::swap()
{
    pthread_rwlock_wrlock(&_map_lock);
    route_map *temp = _data_pointer;
    _data_pointer = _temp_pointer;
    _temp_pointer = temp;
    pthread_rwlock_unlock(&_map_lock);
}


//加载RouteChange得到修改的modid/cmdid
//将结果放在vector中
void Route::load_changes(std::vector<uint64_t> &change_list) 
{
    //读取当前版本之前的全部修改 
    snprintf(_sql, 1000, "SELECT modid,cmdid FROM RouteChange WHERE version <= %ld;", _version);

    int ret = mysql_real_query(&_db_conn, _sql, strlen(_sql));
    if (ret)
    {
        fprintf(stderr, "mysql_real_query: %s\n", mysql_error(&_db_conn));
        return ;
    }

    MYSQL_RES *result = mysql_store_result(&_db_conn);
    if (!result)
    {
        fprintf(stderr, "mysql_store_result %s\n", mysql_error(&_db_conn));
        return ;
    }

    long lineNum = mysql_num_rows(result);
    if (lineNum == 0)
    {
        fprintf(stderr,  "No version in table ChangeLog: %s\n", mysql_error(&_db_conn));
        return ;
    }
    MYSQL_ROW row;
    for (long i = 0;i < lineNum; ++i)
    {
        row = mysql_fetch_row(result);
        int modid = atoi(row[0]);
        int cmdid = atoi(row[1]);
        uint64_t key = (((uint64_t)modid) << 32) + cmdid;
        change_list.push_back(key);
    }
    mysql_free_result(result);    
}

 

 

http://www.dtcms.com/wzjs/171728.html

相关文章:

  • 安徽省工程建设监管和信用管理网网站优化关键词排名公司
  • 余姚市住房和城乡建设局网站福州seo优化排名推广
  • 摄影网页模板河北seo技术
  • 微信公众号的微网站怎么做的seo标题优化关键词
  • 许昌网站建设seo专业培训学费多少钱
  • 做网站的税是多少网络整合营销公司
  • iis端口相同不同网站建设营销网络推广
  • 企业网站制作开发代哥seo
  • b2b网站排行榜百度推广有哪些售后服务
  • zblog还是wordpress百度seo排名优化软件
  • 深圳网站建设美橙互联东莞市网络营销公司
  • 唐山做企业网站公司今天全国31个省疫情最新消息
  • 有没有可以做网站动图的软件营销型网站建设费用
  • 佛山新网站建设咨询镇江seo优化
  • 网站建设客源开发企业官网
  • wordpress 客户端url百度搜索关键词排名优化推广
  • ftp备份网站河南推广网站
  • 上海正规做网站公司电话阳西网站seo
  • 刘涛做的婴儿玩具网站深圳竞价排名网络推广
  • 塘沽企业网站建设西安百度推广电话
  • 杭州做网点卖服装在那个网站查询网入口
  • 环保网站可以做哪些方面视频号的链接在哪
  • html5导航网站源码下载百度优化推广
  • 做计划网站今日全国疫情最新消息
  • 龙岗同乐社区做网站5g站长工具查询
  • 如何做自己网站seo项目是什么
  • wordpress跨站脚本攻击漏洞如何推广一个新的app
  • 郴州网站建设公司有哪些关键词分类哪八种
  • 网站一般用什么语言做百度网页推广费用
  • 免费在线代理网站外贸seo优化公司