Jump to content

MORTE

Inactive Member
  • Posts

    364
  • Joined

  • Last visited

  • Days Won

    3
  • Feedback

    0%

Posts posted by MORTE

  1. Problem is next, sometimes when I die or teleport with other move, talk more I can not do anything, and after some time the client closes, is causing me a lot of trouble if anyone knows how I can fix would be very grateful! (sorry for my English)

     

    syseer:

    1030 14:20:44198 :: Phase Game does not handle this header (header: 85, last: 85, 85)
    1030 14:21:28598 :: ELTimer_GetMSec() - m_dwEmoticonTime
    1030 14:21:32828 :: ELTimer_GetMSec() - m_dwEmoticonTime
    1030 14:25:11012 :: GRANNY: r:/granny/rt/granny_file_info.cpp(145): File has run-time type tag of 0x80000015, which doesn't match this version of Granny (0x80000010).  Automatic conversion will be attempted.

     

     

    Exemple: (I teleported and simply stopped connection with my character, as if my character had been conegaldo, soon after the client closed.)

    79f5699d21994dd881ca381a1c153efa.png

  2. Messenger: CInputMain::Messenger : Unknown subheader 230 : Test
    Messenger: CInputMain::Messenger : Unknown subheader 92 : Test
    Shop: CInputMain::Shop : Unknown subheader 37 : Test
    Shop: CInputMain::Shop : Unknown subheader 172 : Test
    DISCONNECT: Test (timed_event - SCMD_PHASE_SELECT)
    Hack: HACK_DETECT: Test xTþž�1¸ghšÐ{5�¢W-ÌŠß���3ó Ï"¿ær±…<?�7Cå�»�i3PG´ÙÄ"?Å��ë4T›¤4�ªë°³�›ï�gƒ¦E”}­ª5V6ñu¢‘Î�Ý^ô´oH��•pmz·‰õ9ð�±b‚É$~vò3�ò¾�ÇSeP&œ¦IJí¯�X²¡^8´ö�è¼·¹)oê­+œÁʧ¢ˆZ~[�¶¤šeˆµùi«�Ÿû%w‰E§ìì2Šúiœ�…sÕÕ]¼÷�¸
    DISCONNECT: Test (DESC::~DESC)
    Entergame: !GetMovablePosition (name Test 51200x563200 map 193 changed to 99000x571100)
    Hack: HACK_DETECT: Test XCѸšQ�¨�°Çjt1–‰ý%ׄ6N²Q��äÍBº�·g…ÿ×›ý� \“Ì�îû<ý(074{€

     

  3. error/bug on HP, eg use armor with 3,000 HP, use the item 71027 there if I change the equipment to an HP without my maximum HP is normal over HP is greater than the maximum HP, how to fix this error?

     

    9b944fdcd19b438993cb989819edfea1.png

    bug ->

    9b944fdcd19b438993cb989819edfea1.png

  4. 19 hours ago, misterioso said:

    This is not necessary because the function "check_name" already check if is an alphanumeric data.

    So you can use the "normal version":

    std::auto_ptr<SQLMsg> pmsg(DBManager::instance().DirectQuery("SELECT COUNT(*) FROM guild%s WHERE name = '%s'",
                    get_table_postfix(), gcp.name));

     

    Even with this change, SQL injection remains fixed?

  5. Yes.

     

    DWORD CGuildManager::CreateGuild(TGuildCreateParameter& gcp)
    {
        if (!gcp.master)
            return 0;

        if (!check_name(gcp.name))
        {
            gcp.master->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<±æµå> ±æµå À̸§ÀÌ ÀûÇÕÇÏÁö ¾Ê½À´Ï´Ù."));
            return 0;
        }
        
        static char __escape_name[GUILD_NAME_MAX_LEN * 2 + 1];
            DBManager::instance().EscapeString(__escape_name, sizeof(__escape_name), static_cast<const char *>(gcp.name), sizeof(gcp.name));
        
        std::auto_ptr<SQLMsg> pmsg(DBManager::instance().DirectQuery("SELECT COUNT(*) FROM guild%s WHERE name = '%s'",
                    get_table_postfix(), __escape_name));

        if (pmsg->Get()->uiNumRows > 0)
        {
            MYSQL_ROW row = mysql_fetch_row(pmsg->Get()->pSQLResult);

            if (!(row[0] && row[0][0] == '0'))
            {
                gcp.master->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<±æµå> ÀÌ¹Ì °°Àº À̸§ÀÇ ±æµå°¡ ÀÖ½À´Ï´Ù."));
                return 0;
            }
        }
        else
        {
            gcp.master->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<±æµå> ±æµå¸¦ »ý¼ºÇÒ ¼ö ¾ø½À´Ï´Ù."));
            return 0;
        }

        // new CGuild(gcp) queries guild tables and tell dbcache to notice other game servers.
        // other game server calls CGuildManager::LoadGuild to load guild.
        CGuild * pg = M2_NEW CGuild(gcp);
        m_mapGuild.insert(std::make_pair(pg->GetID(), pg));
        return pg->GetID();
    }

×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.