viewing paste Unknown #12698 | C

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 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101
diff --git a/src/char/char.c b/src/char/char.c
index fe17fd1..254f51d 100644
--- a/src/char/char.c
+++ b/src/char/char.c
@@ -2607,7 +2607,7 @@ int parse_fromlogin(int fd) {
                                        return 0;
 
                                mapif_parse_accinfo2(false, RFIFOL(fd,2), RFIFOL(fd,6), RFIFOL(fd,10), RFIFOL(fd,14),
-                                                    NULL, NULL, NULL, NULL, NULL, NULL, NULL, -1, 0, 0);
+                                                    0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, -1, 0, 0);
                                RFIFOSKIP(fd,18);
                        break;
 
@@ -2615,11 +2615,11 @@ int parse_fromlogin(int fd) {
                                if (RFIFOREST(fd) < 183)
                                        return 0;
 
-                               mapif_parse_accinfo2(true, RFIFOL(fd,167), RFIFOL(fd,171), RFIFOL(fd,175), RFIFOL(fd,179),
+                               mapif_parse_accinfo2(true, RFIFOL(fd,167), RFIFOL(fd,171), RFIFOL(fd,175), RFIFOW(fd,183), RFIFOL(fd,179),
                                                     (char*)RFIFOP(fd,2), (char*)RFIFOP(fd,26), (char*)RFIFOP(fd,59),
                                                     (char*)RFIFOP(fd,99), (char*)RFIFOP(fd,119), (char*)RFIFOP(fd,151),
                                                     (char*)RFIFOP(fd,156), RFIFOL(fd,115), RFIFOL(fd,143), RFIFOL(fd,147));
-                               RFIFOSKIP(fd,183);
+                               RFIFOSKIP(fd,185);
                        break;
 
                        default:
diff --git a/src/char/inter.c b/src/char/inter.c
index c2d8de3..f177494 100644
--- a/src/char/inter.c
+++ b/src/char/inter.c
@@ -628,7 +628,7 @@ void mapif_parse_accinfo(int fd) {
 
        return;
 }
-void mapif_parse_accinfo2(bool success, int map_fd, int u_fd, int u_aid, int account_id, const char *userid, const char *user_pass, const char *email, const char *last_ip, const char *lastlogin, const char *pin_code, const char *birthdate, int group_id, int logincount, int state) {
+void mapif_parse_accinfo2(bool success, int map_fd, int u_fd, int u_aid, int u_group, int account_id, const char *userid, const char *user_pass, const char *email, const char *last_ip, const char *lastlogin, const char *pin_code, const char *birthdate, int group_id, int logincount, int state) {
        if (map_fd <= 0 || !session_isActive(map_fd))
                return; // check if we have a valid fd
 
@@ -640,11 +640,8 @@ void mapif_parse_accinfo2(bool success, int map_fd, int u_fd, int u_aid, int acc
        inter_msg_to_fd(map_fd, u_fd, u_aid, "-- Account %d --", account_id);
        inter_msg_to_fd(map_fd, u_fd, u_aid, "User: %s | GM Group: %d | State: %d", userid, group_id, state);
 
-       if (user_pass && *user_pass != '\0') { /* password is only received if your gm level is greater than the one you're searching for */
-               if (pin_code && *pin_code != '\0')
-                       inter_msg_to_fd(map_fd, u_fd, u_aid, "Password: %s (PIN:%s)", user_pass, pin_code);
-               else
-                       inter_msg_to_fd(map_fd, u_fd, u_aid, "Password: %s", user_pass );
+       if (u_group >= 98) { /* password is only received if your gm level is greater than the one you're searching for */
+               inter_msg_to_fd(map_fd, u_fd, u_aid, "Password: %s (PIN:%s)", user_pass, pin_code);
        }
 
        inter_msg_to_fd(map_fd, u_fd, u_aid, "Account e-mail: %s | Birthdate: %s", email, birthdate);
diff --git a/src/char/inter.h b/src/char/inter.h
index 5e65523..0a07869 100644
--- a/src/char/inter.h
+++ b/src/char/inter.h
@@ -16,7 +16,7 @@ int inter_parse_frommap(int fd);
 int inter_mapif_init(int fd);
 int mapif_send_gmaccounts(void);
 int mapif_disconnectplayer(int fd, int account_id, int char_id, int reason);
-void mapif_parse_accinfo2(bool success, int map_fd, int u_fd, int u_aid, int account_id, const char *userid, const char *user_pass, const char *email, const char *last_ip, const char *lastlogin, const char *pin_code, const char *birthdate, int group_id, int logincount, int state);
+void mapif_parse_accinfo2(bool success, int map_fd, int u_fd, int u_aid, int u_group, int account_id, const char *userid, const char *user_pass, const char *email, const char *last_ip, const char *lastlogin, const char *pin_code, const char *birthdate, int group_id, int logincount, int state);
 
 int inter_log(char *fmt,...);
 int inter_vlog(char *fmt, va_list ap);
diff --git a/src/login/login.c b/src/login/login.c
index c3f2f60..7c26c9d 100644
--- a/src/login/login.c
+++ b/src/login/login.c
@@ -845,24 +845,21 @@ int parse_fromchar(int fd)
                                        WFIFOHEAD(fd,183);
                                        WFIFOW(fd,0) = 0x2737;
                                        safestrncpy((char*)WFIFOP(fd,2), acc.userid, NAME_LENGTH);
-                                       if (u_group >= acc.group_id) {
-                                               safestrncpy((char*)WFIFOP(fd,26), acc.pass, 33);
-                                       }
+                                       safestrncpy((char*)WFIFOP(fd,26), acc.pass, 33);
                                        safestrncpy((char*)WFIFOP(fd,59), acc.email, 40);
                                        safestrncpy((char*)WFIFOP(fd,99), acc.last_ip, 16);
                                        WFIFOL(fd,115) = acc.group_id;
                                        safestrncpy((char*)WFIFOP(fd,119), acc.lastlogin, 24);
                                        WFIFOL(fd,143) = acc.logincount;
                                        WFIFOL(fd,147) = acc.state;
-                                       if (u_group >= acc.group_id) {
-                                               safestrncpy((char*)WFIFOP(fd,151), acc.pincode, 5);
-                                       }
+                                       safestrncpy((char*)WFIFOP(fd,151), acc.pincode, 5);
                                        safestrncpy((char*)WFIFOP(fd,156), acc.birthdate, 11);
                                        WFIFOL(fd,167) = map_fd;
                                        WFIFOL(fd,171) = u_fd;
                                        WFIFOL(fd,175) = u_aid;
                                        WFIFOL(fd,179) = account_id;
-                                       WFIFOSET(fd,183);
+                                       WFIFOW(fd,183) = u_group;
+                                       WFIFOSET(fd,185);
                                } else {
                                        WFIFOHEAD(fd,18);
                                        WFIFOW(fd,0) = 0x2736;
 
Viewed 298 times, submitted by unknown.