viewing paste ra_getmac | Diff

Posted on the
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
diff --git a/src/login/loginclif.c b/src/login/loginclif.c
index 61caf4b..b37ed37 100644
--- a/src/login/loginclif.c
+++ b/src/login/loginclif.c
@@ -281,6 +281,8 @@ static int logclif_parse_updclhash(int fd, struct login_session_data *sd){
  */
 static int logclif_parse_reqauth(int fd, struct login_session_data *sd, int command, char* ip){
    size_t packet_len = RFIFOREST(fd);
+        
+        ShowInfo("Connecting with cmd=%x\n",command);
 
    if( (command == 0x0064 && packet_len < 55)
    ||  (command == 0x0277 && packet_len < 84)
@@ -301,10 +303,15 @@ static int logclif_parse_reqauth(int fd, struct login_session_data *sd, int comm
 
        // Shinryo: For the time being, just use token as password.
        if(command == 0x0825) {
+                        char mac[18];
+                        char ip2[16];
            char *accname = (char *)RFIFOP(fd, 9);
            char *token = (char *)RFIFOP(fd, 0x5C);
+                        char *mactmp = (char *)RFIFOP(fd, 9+24+27);
+                        char *iptmp = (char *)RFIFOP(fd, 9+24+27+17);
            size_t uAccLen = strlen(accname);
            size_t uTokenLen = RFIFOREST(fd) - 0x5C;
+                        
 
            version = RFIFOL(fd,4);
 
@@ -316,7 +323,11 @@ static int logclif_parse_reqauth(int fd, struct login_session_data *sd, int comm
 
            safestrncpy(username, accname, uAccLen + 1);
            safestrncpy(password, token, uTokenLen + 1);
+                        safestrncpy(mac, mactmp, 18);
+                        safestrncpy(ip2, iptmp, 15);
            clienttype = RFIFOB(fd, 8);
+                        
+                        ShowInfo("Mac adresse = %s\n Ip=%s\n",mac,ip2);
        }
        else
        {
 
Viewed 1424 times, submitted by lighta.