Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ;~ Checking Login Datas
- Func LoginCheck($Client, $data, $iError)
- Local $un, $pw, $datastamp, $username, $password
- $iIP = _TCP_Server_ClientIP($Client)
- cout("[USER]Client Connect( " & $iIP & " Sock ID:" & $Client & " )")
- ;~ cout("[PRO] Packet : " & $data)
- ; PACKET<< Decrypt Login Packet
- msg_setPac($data)
- msg_getByte(1);
- msg_getByte(12); ??
- $command = msg_getByte(4); Command
- $ds = msg_getString(); Data Stamp / Time Stemp ( Flyff Client Version )
- msg_getByte(4); ??
- $un = msg_getString(); Username
- $pw = msg_getString(); PW MD5 Hash
- ;~ cout($command)
- Switch $command
- Case 0xFC000000
- ; >>PACKET
- cout("##Username : " & $un)
- ; Schickt den UserName zur Console
- cout("##Password : " & $pw)
- ; Schickt das Password zur Console
- $username = _DB_read($un,$MysqlChar,"Username")
- $password = _DB_read($pw,$MysqlChar,"Password")
- $banned = _DB_read($un,$MysqlChar,"Banned")
- $LoggedIn = _DB_read($un,$MysqlChar,"Status")
- cout("USERNAME :: " & $username)
- ;~ If $datastamp = "20070712" Then
- ;~ ; PACKET<< Sending "Server verification error." Message
- ;~ msg_clear()
- ;~ msg_AddByte(0x5E);
- ;~ msg_AddSize()
- ;~ msg_AddComand(0xFE);
- ;~ msg_AddComand(0x88);
- ;~ ; >>PACKET
- ;~ _TCP_Send($Client, msg_ToStr()); Client bekommt Meldung: "Server verification error."
- ;~ _TCP_Server_DisconnectClient($Client); Schließt das Socket
- ;~ cout("## Client disconnected <<-"); Schickt der Console das der User Disconnected ist
- ;~ cout("## Reason: Wrong Datastamp"); Schickt der Konsole den Grund für den Disconnect
- If $username = "0" Then; Checkt ob der UserName mit dem UserName aus der DB überein stimmt
- ; PACKET<< Sending "Wrong ID" Message
- msg_clear()
- msg_AddByte(0x5E)
- msg_AddSize()
- msg_AddComand(0xFE)
- msg_AddComand(0x79)
- ; >>PACKET
- _TCP_Send($Client,msg_ToStr() ); Client bekommt Meldung: "Wrong ID"
- _TCP_Server_DisconnectClient($Client); Schließt das Socket
- cout("## Client disconnected <<-"); Schickt der Console das der User Disconnected ist
- cout("## Reason: Wrong ID"); Schickt der Konsole den Grund für den Disconnect
- Else ; Fals der Username dann übereinstimmt und der eingegeben ist dann geht es weiter
- If $LoggedIn = "1" Then; Checkt ob der User schon eingeloggt ist
- ; PACKET<< Sending "User already logged in" Message
- msg_clear()
- msg_AddByte(0x5E)
- msg_AddSize()
- msg_AddComand(0xFE)
- msg_AddComand(0x67)
- ; >>PACKET
- _TCP_Send($Client, msg_ToStr()); Client bekommt Meldung: "User already logged in"
- _TCP_Server_DisconnectClient($Client); Schließt das Socket
- cout("## Client disconnected <<-"); Schickt der Console das der User Disconnected ist
- cout("## Reason: User already logged in"); Schickt der Konsole den Grund für den Disconnect
- Else; Fals der User dann doch nicht eingeloggt ist...
- If $banned = "1" Then; Checkt ob der User gebannt ist
- ; PACKET<< Sending "This ID has been blocked" Message
- msg_clear()
- msg_AddByte(0x5E)
- msg_AddSize()
- msg_AddComand(0xFE)
- msg_AddComand(0x77)
- ; >>PACKET
- _TCP_Send($Client, msg_ToStr()); Client bekommt Meldung: "This ID has been blocked"
- _TCP_Server_DisconnectClient($Client); Schließt das Socket
- cout("## Client disconnected <<-"); Schickt der Console das der User Disconnected ist
- cout("## Reason: Banned User wanted to login"); Schickt der Konsole den Grund für den Disconnect
- Else; Fals der user dann doch nicht gebannt ist...
- If $password = "0" Then; Checkt ob PassWord gleich ist
- ; PACKET<< Sending "Wrong password" Message
- cout(" PASS :"&$password)
- msg_clear()
- msg_AddByte(0x5E)
- msg_AddSize()
- msg_AddComand(0xFE)
- msg_AddComand(0x78)
- ; >>PACKET
- _TCP_Send($Client, msg_ToStr()); Client bekommt Meldung: "Wrong password"
- _TCP_Server_DisconnectClient($Client); Schließt das Socket
- cout("## Client disconnected <<-"); Schickt der Console das der User Disconnected ist
- cout("## Reason: Wrong Password"); Schickt der Konsole den Grund für den Disconnect
- Else; Fals das PassWord dann doch richtig ist...
- _DB_write("1","status","username",$username,$MysqlChar) ;Schreibt in die acc datei das der User On ist
- _DB_write($iIP,"last_ip","username",$username,$MysqlChar)
- ServerName($Client, $un); Sendet dem User die Server Liste
- cout("## Client Connected <<-")
- EndIf
- EndIf
- EndIf
- EndIf
- EndSwitch
- EndFunc ;==>LoginCheck
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement