mIRCForum.Com - mIRC Kullanıcılarının Buluşma Noktası   Reklam Alanı


  mIRCForum.Com - mIRC Kullanıcılarının Buluşma Noktası MF - Unreal, Services ve Eggdroplar UnrealIRCd Unreal - Hazır Kodlar

Gevezeyiz Sohbet

Yeni Konu   Cevap Yaz

 
LinkBack Seçenekler Stil
Alt 02 Nisan 2019, 18:42   #1
Che
 
Che - ait Kullanıcı Resmi (Avatar)
 
Üyelik tarihi: 07 Mayıs 2016
Bulunduğu yer: Ankara
Mesajlar: 576
WEB Sitesi: www.ircproxy.net
IRC Sunucusu: irc.Gevezeyiz.NET
İlgi Alanı: mIRC Scripting
Kan Grubu: 0 RH (-)
Alınan Beğeni: 84
Post m_gec (Girişte JOIN-NICK-MSG Komut Engelleme)

Merhaba,
Sunucuya girişlerde JOIN-NICK-MSG komutlarını engeller ve /gec NICK komutunu uygulamadan AUTOJOIN kanallarına giremez. Bunu biz proxy koruma botunda kullanıyorduk, proxy botu tarayıp proxy ise ban atıyor değil ise /gec NICK komutu olarak kullanılıyor sizde aynı taktik de kullanabilirsiniz.

İlk baş Unreal3.*2'da UMODE oluşturalım.

Klasör: -> Unreal3.2*/src/
Dosya: -> (umodes.c)



Kod:
long UMODE_BOT = 0L;           /* User is a bot */

ALTINA

Kod:
long UMODE_IGS = 0L;
EKLEYIN,

YINE AYNI DOSYADA BULUN

Kod:
UmodeAdd(NULL, 'B', UMODE_GLOBAL, NULL, &UMODE_BOT);

ALTINA

Kod:
UmodeAdd(NULL, 'Y', UMODE_GLOBAL, NULL, &UMODE_IGS);

EKLEYIN,


Klasör: -> Unreal3.2*/include/
Dosya: -> (h.h)


BULUN


Kod:
extern MODVAR long UMODE_BOT;       /* 0x400000	 User is a bot */

ALTINA

Kod:
extern MODVAR long UMODE_IGS;

EKLEYIN,


Klasör: -> Unreal3.2*/
Dosya: -> (unrealircd.conf)


Kod:
 modes-on-join         "+nt";

Kod:
 modes-on-join         "+ntY";

Son olarak alttaki modulu kurunuz;


Kod:
#include "config.h"
#include "struct.h"
#include "common.h"
#include "sys.h"
#include "numeric.h"
#include "msg.h"
#include "channel.h"
#include <time.h>
#include <sys/stat.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#ifdef _WIN32
#include <io.h>
#endif
#include <fcntl.h>
#include "h.h"
#ifdef STRIPBADWORDS
#include "badwords.h"
#endif
#ifdef _WIN32
#include "version.h"
#endif
#define DelOverride(cmd, ovr) if(ovr && CommandExists(cmd)) CmdoverrideDel(ovr); ovr = NULL; 

#define MSG_IGS "GEC"
#define TOK_IGS "G3C"

DLLFUNC int m_nojoin(aClient *sptr, aChannel *chptr, char *parv[]);
DLLFUNC int m_gec(aClient *cptr, aClient *sptr, int parc, char *parv[]);
DLLFUNC char *m_notext(aClient *, aClient *, aClient *, char *, int);
DLLFUNC char *m_noptext(aClient *, aClient *, aClient *, char *, int);
static int m_nonickchange(Cmdoverride *ovr, aClient *cptr, aClient *sptr, int parc, char *parv[]);

Cmdoverride *ovrcmd; 

ModuleInfo notext;

ModuleHeader MOD_HEADER(m_notext)
= {
  "m_igs",
  "Giriste komut engeli",
  "by Toprak",
  "3.2-b8-1",
  NULL
};

DLLFUNC int MOD_INIT(m_notext)(ModuleInfo *modinfo)
{
  HookAddPCharEx(modinfo->handle, HOOKTYPE_CHANMSG, m_notext);
  HookAddPCharEx(modinfo->handle, HOOKTYPE_USERMSG, m_noptext); 
  HookAddEx(modinfo->handle, HOOKTYPE_PRE_LOCAL_JOIN, m_nojoin);
  add_Command(MSG_IGS, TOK_IGS, m_gec, 1);
  return MOD_SUCCESS;
}

DLLFUNC int MOD_LOAD(m_notext)(int module_load)
{
   ovrcmd = CmdoverrideAdd(notext.handle, "NICK", m_nonickchange); 
   return MOD_SUCCESS;
}

DLLFUNC int MOD_UNLOAD(m_notext)(int module_unload)
{
   DelOverride("NICK", ovrcmd);
   return MOD_SUCCESS;
}

DLLFUNC int m_nojoin(aClient *sptr, aChannel *chptr, char *parv[]) {
  if (chptr && !IsMember(sptr, chptr)) { 
    if ((sptr->umodes & UMODE_IGS)) {
      if (!IsServer(sptr) && !IsOper(sptr) && !IsULine(sptr))  {
        if ((sptr->listener->port != 7005) && (sptr->listener->port != 1985) && (sptr->listener->port != 2018)) {
          return HOOK_DENY;
		}
	  }
	}
  }
  return HOOK_CONTINUE;
}


DLLFUNC int m_gec(aClient *cptr, aClient *sptr, int parc, char *parv[]) {
  aClient *acptr;    
  if (!IsNetAdmin(sptr)) {
    sendto_one(sptr, err_str(ERR_NOPRIVILEGES), me.name, parv[0]);
    return 0;
  }
  if (parc < 2) {
    sendto_one(sptr, ":%s NOTICE %s :Hatalı komut kullanımı.", me.name, sptr->name);
    sendto_one(sptr, ":%s NOTICE %s :4Örnek: /GEC NICK", me.name, sptr->name);
    return 0;
  }       
  if (!(acptr = find_person(parv[1], NULL))) {
    sendto_one(sptr, err_str(ERR_NOSUCHNICK), me.name, parv[0], parv[1]);
    return 0;
  }
  if (!MyConnect(acptr)) {
    sendto_one(sptr, ":%s NOTICE %s :Şuan sunucuda %s nickli kimse yok.", me.name, parv[0], acptr->name);
    return 0;
  }
  if (!(acptr->umodes & UMODE_IGS)) {
    sendto_one(sptr, ":%s NOTICE %s :%s taramalardan geçiş yapmış.", me.name, parv[0], acptr->name);
    return 0;
  }
  sendto_one(acptr, ":%s MODE %s -Y", acptr->name, acptr->name); 
  acptr->umodes &= ~UMODE_IGS;
 
  if (!BadPtr(AUTO_JOIN_CHANS) && strcmp(AUTO_JOIN_CHANS, "0")) {
    char *chans[3] = {
      acptr->name,
	  AUTO_JOIN_CHANS,
	  NULL
	};
	do_cmd(acptr, acptr, "JOIN", 3, chans);
  }
  return 0; 
}


DLLFUNC char *m_notext(aClient *cptr, aClient *sptr, aClient *acptr, char *text, int notice) {
  if ((sptr->umodes & UMODE_IGS)) {
	if (!IsServer(sptr) && !IsOper(sptr) && !IsULine(acptr)) {
	  if ((sptr->listener->port != 7005) && (sptr->listener->port != 1985) && (sptr->listener->port != 2018)) {
		sendnotice(sptr, "*** Mesaj göndermeniz şuan için engellendi.");    
		return NULL;  
	  }		
	}
  }
  return text;
}


DLLFUNC char *m_noptext(aClient *cptr, aClient *sptr, aClient *acptr, char *text, int notice) {
  if ((sptr->umodes & UMODE_IGS)) {
	if (!IsServer(sptr) && !IsOper(sptr) && !IsULine(acptr)) {
      if ((sptr->listener->port != 7005) && (sptr->listener->port != 1985) && (sptr->listener->port != 2018)) {
		sendnotice(sptr, "*** Mesaj göndermeniz şuan için engellendi.");    
	    return NULL;
      }		
	}
  }
  return text;
}


static int m_nonickchange(Cmdoverride *ovr, aClient *cptr, aClient *sptr, int parc, char *parv[]) {
  if ((sptr->umodes & UMODE_IGS)) {
    if (MyConnect(sptr) && !IsServer(sptr) && !IsUnknown(sptr) && !IsOper(sptr) && !IsULine(sptr))  {
      if ((sptr->listener->port != 7005) && (sptr->listener->port != 1985) && (sptr->listener->port != 2018)) {
        sendnotice(sptr, "*** /NICK komutunu kullanmanız şuan için engellendi."); 
        return 0;
	  }
	}
  }
  return CallCmdoverride(ovr, cptr, sptr, parc, parv); 
}

Kırmızı yerler MUAF PORT, o portlardan giren kişiler herhangi bir engele takılmazlar.
Unreal3.2.* ana dizininde make ve ./unreal restart komutlarını uygulayınız.

Eğer restart'da sunucu başlamaz hata verir ise UMODE dosyasına tekrar giriş yaparak

BULUN

Kod:
UmodeAdd(NULL, 'v', UMODE_GLOBAL, umode_allow_opers, &UMODE_VICTIM);


DEGISTIRIN

Kod:
//UmodeAdd(NULL, 'v', UMODE_GLOBAL, umode_allow_opers, &UMODE_VICTIM);

Bu kadar..





 Che isimli Üye şimdilik offline konumundadır   Alıntı

Yeni Konu   Cevap Yaz

Etiketler
engelleme, girişte, joinnickmsg, komut, mgec, m_gec

Seçenekler
Stil

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Açık
Pingbacks are Açık
Refbacks are Açık



Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 11:57.


Powered by vBulletin® Version 3.8.9 Beta 1
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.6.0
mIRCForum - Sohbet
Copyright ©2005 - 2016 mIRCForum.Com | Tüm Hakları Saklıdır.