Skip to content

机器人偶尔登陆出现digest not match.  #395

@kbengine

Description

@kbengine

有时,压测机器人无法登陆上服务器(Loginapp::login: loginName(bot_6316653230732279808_11912930762246864971), digest not match. curr(9C2C6BBEA59671626696635626BB9159) != dbmgr())。原因主要如下:1、服务器在初始化的过程中,baseapp、cellapp、loginapp在向dbmgr注册后,在dbmgr的sync_app_datas_handler.cpp文件的process函数中,正常逻辑应该是dbmgr分别会向baseapp、cellapp、loginapp发送onDbmgrInitCompleted协议;但是,目前的逻辑是在相关代码中,并不认为loginapp为app,所以导致loginapp有时无法接收到onDbmgrInitCompleted协议,在loginapp中也就没有初始化MD5相关的变量 2、在机器人压测时,会在登陆的时候将MD5值发过来,如果kbengine.xml中allowEmptyDigest配置为false,就会导致验证不通过 3、U3D客户端在登陆时,不会发送相关值,所以不受影响 另:在loginapp.cpp中,登陆函数login对MD5值得验证流程目前其实也还是有缺陷的。

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions