- 关 键 词:
void CSmsCmpp::EncodeConnect(const long& nSecID,const string& sSrcAddr, const string& sPwd, const string& sUser, BYTE nVer)
{
m_smHeader.lCommandLength = 39;
m_smHeader.lSequenceNumber = nSecID;
EncodeHeader();
string sAuthName;
if(int(sUser.size())>0) {
sAuthName = sUser.c_str();
}
else {
sAuthName = sSrcAddr.c_str();
}
AppendOct(m_Body,(PBYTE)sAuthName.c_str(),6);
vector<BYTE> vAuth;
std::copy(sAuthName.begin(),sAuthName.end(),back_inserter(vAuth));
for(int i=0;i<9;i++) vAuth.push_back(0x00);
std::copy(sPwd.begin(),sPwd.end(),back_inserter(vAuth));
string sStamp = GetCurTime();
std::copy(sStamp.begin(),sStamp.end(),back_inserter(vAuth));
char src[400];
memset(src,0,400);
std::copy(vAuth.begin(),vAuth.end(),src);
PBYTE temp = new BYTE[17];
memset(temp,0,17);
DWORD dwSize;
CryptMD5Hash((PBYTE)src,int(vAuth.size()),temp,dwSize);
ostringstream oss;
oss<<"发送连接包!";
AppendOct(m_Body,(PBYTE)temp,16); //ICP认证码
delete[] temp;
AppendInt(m_Body,nVer);
DWORD lTimeStamp = atoi(sStamp.c_str());
lTimeStamp = htonl(lTimeStamp);
AppendOct(m_Body,(PBYTE)&lTimeStamp,4);
}进入论坛讨论。
相关专题
论坛精华
阅读排行榜
- IT运维方案求“解”之道 (2次浏览)
- 案例:医疗保险管理中计算机网络的构建 (0次浏览)
- 针对城市商业银行安全防御解决方案 (0次浏览)
最新技术文档
- 针对城市商业银行安全防御解决方案 04-17
- 案例:医疗保险管理中计算机网络的构建 04-16
- IT运维方案求“解”之道 04-16
- 电信级城域以太网FMC最佳解决方案 04-09
- UTM市场的发展现状与挑战 04-09
- 地市级电信历史话单备份查询方案 04-09
- Hillstone电信安全解决方案 04-09
- 侠诺科技校园网络接入解决方案 04-08
- 案例剖析:某小学网络为何全线崩溃 04-07
- FTTx解决方案缔造无限带宽全业务接入网络 04-02
热门关键字导读
