示例1
在以下代码中,从插座读取用户名和密码,并尝试对用户名和密码进行身份验证。该代码将不断检查插座的用户名和密码,直到已进行身份验证。
char用户名[username_size];
char密码[password_size];
while(isvaliduser == 0){
if(getNextMessage(套接字,用户名,username_size)> 0){
if(getNextMessage(套接字,密码,password_size)> 0){
iSvaliduser = AuthenticateUser(用户名,密码);
}
}
}
返回(成功);
该代码对进行的身份验证尝试次数没有任何限制。如以下示例代码,应限制为防止蛮力攻击的验证尝试的限制。
int count = 0;
while(((isvaliduser == 0)&&(count
if(getNextMessage(套接字,用户名,username_size)> 0){
if(getNextMessage(套接字,密码,password_size)> 0){
iSvaliduser = AuthenticateUser(用户名,密码);
}
}
计数++;
}
如果(iSvaliduser){
返回(成功);
}
别的 {
返回(失败);
}