folder Tahribat.com Forumları
linefolder C - C++
linefolder C++ Veri Büyüklüğü Kontrolü Veya Substr Hakkında Yardım



C++ Veri Büyüklüğü Kontrolü Veya Substr Hakkında Yardım

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    ★★★★★
    Genki
    Genki's avatar
    Kayıt Tarihi: 24/Ağustos/2005
    Erkek

    Arkadaşlar kafayı yemek üzerindeyim. Elimde bir mod var. Bu modda cookie ile rconpas saklayıp modun içerisinde gezinmeye yarıyor. Ama gel görki cookiede rconpassı AAAAAAAAAAAA diye ebesininkine kadar uzatınca serverı patlatıyor. Birkaç yerde fix paylaşmışlar ama yaptığım halde düzelmedi tekrar yiyor.

    Altta detaylı birşekilde verdim.

    Cause/Fix:
    The problem code is from lines 542-552 in server.cpp:

    542
    543
    544
    545
    546
    547
    548
    549
    550
    551
    552
            char clbuf[11];

    for(i=0;(size_t)i<strlen(input)-17;i++)
    {
    if(!strnicmp(input+i,"\nContent-Length: ",17))
    {
    LOG_DBG_SERVER(("Content-length spotted"));
    i+=17;
    for(j=0;input[i]!='\n'&&input[i];i++,j++)
    clbuf[j]=input[i];
    clbuf[j]='\0';

    The buffer, clbuf, allocated on line 542, is written into with the loop on lines
    550-551, and then null-terminated. The fix is to replace line 550 with:

    for(j=0;input[i]!='\n'&&input[i]&&j<10;i++,j++)
     verdiği satırı değiştiriyorum yinede yamuluyor. Benim isteğim şu. clbuf değişkenini nasıl kontrol ettirebilirim. Öle ahım şahım c++ bilgim yok hatta hiç yok
    denilebilir kendimce çırpınıyorum işte.
     if($clbuf>10) 
    {
    $clbuf=0;
    }
    gibisinden bu c++ ile nası yaparım araştırdım biraz kurcaladım bulamadım.
    Substr ile denedim hani dedim cookie ile postlanan verinin sadece 10 karekterini alsam diye bu seferde dosya derlenmiyor hata veriyor. 
     Bi el atın bakalım hepberaber büyük birşeyi fixleyelim :P 
     

     

Toplam Hit: 1696 Toplam Mesaj: 1