Fethi Polat 1
Fethi Polat
InfernoShade 1
InfernoShade
farkmt2official 1
farkmt2official
romegames 1
romegames
bikral 1
bikral
PrimeAC 1
PrimeAC
shrpnl 1
shrpnl
Agora Metin2 1
Agora Metin2
xranzei 1
xranzei
Bvural41 1
Bvural41
Hikaye Ekle

P2P Giriş Bağlantısını engelleme

  • Konuyu başlatan Konuyu başlatan l3erke
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 76
  • Görüntüleme Görüntüleme 19K
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

HERAKLES Otomatik Avlı kalıcı sunucu. 19 Haziran'da açılıyor. Atius & Wizard güvencesiyle hemen kayıt ol, ön kayıt ödülleri aktif. HEMEN TIKLA!

Berke kardeşim anlatimda bir problem var sanirim desc_p2p de verdigin kodu aratip altina ekleyince build error veriyor.Tam olarak ne yapicaz orda anlatirmisin.


desc_p2p.cpp aç ve arat
Kod:
void DESC_P2P::Destroy()
{
    if (m_sock == INVALID_SOCKET) {
        return;
    }


    P2P_MANAGER::instance().UnregisterAcceptor(this);


    fdwatch_del_fd(m_lpFdw, m_sock);


    sys_log(0, "SYSTEM: closing p2p socket. DESC #%d", m_sock);


    socket_close(m_sock);
    m_sock = INVALID_SOCKET;


    // Chain up to base class Destroy()
    DESC::Destroy();
}

ve altına ekle
Kod:
#ifdef ENABLE_PORT_SECURITY
#include "config.h"
#endif
bool DESC_P2P::Setup(LPFDWATCH fdw, socket_t fd, const char * host, WORD wPort)
{
    m_lpFdw = fdw;
    m_stHost = host;
    m_wPort = wPort;
    m_sock = fd;


    if (!(m_lpOutputBuffer = buffer_new(1024 * 1024)))
        return false;


    if (!(m_lpInputBuffer = buffer_new(1024 * 1024)))
        return false;


    fdwatch_add_fd(m_lpFdw, m_sock, this, FDW_READ, false);


    m_iMinInputBufferLen = 1024 * 1024;
#ifdef ENABLE_PORT_SECURITY
    if (strcmp(host, g_szPublicIP)) 
    {
        sys_log(0, "SYSTEM: Yeni p2p girisi algılandı [%s] to [%s] fd: %d Engellendi", host, g_szPublicIP, m_sock);
        SetPhase(PHASE_CLOSE);
        return true;
    }
#endif

input.cpp aç arat
Kod:
int CInputHandshake::Analyze(LPDESC d, BYTE bHeader, const char * c_pData)
{
    if (bHeader == 10) // 엔터는 무시
        return 0;


    if (bHeader == HEADER_CG_TEXT)
    {
altına ekle
Kod:
#ifdef ENABLE_PORT_SECURITY
        if (IsEmptyAdminPage() || !IsAdminPage(inet_ntoa(d->GetAddr().sin_addr)))
        {
            sys_log(0, "SOCKET_CMD: BLOCK FROM(%s)", d->GetHostName());
            return -1;
        }
#endif

common/service.h aç

PET_SYSTEM in altına ekle
Kod:
#define ENABLE_PORT_SECURITY


Kanallardaki sys_log'dan kimin p2p ile giriş yapmaya çalıştığını öğrenebilirsiniz
 
Konu Sorunsuzdur, Teşekkürler :)
 
teşekkürler. çeviklik bug'u içinde bir çözüm yolu varmı acaba ?
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst