IRCALEM.Com Genel Forum, IRC Forumu IF - Genel IRCd (Sunucu, Servis, Botlar, Korumalar) UnrealIRCd Unreal3.2.x - Modülleri Unreal3.2 Anti Litmus Koruması
irc

Unreal3.2 Anti Litmus Koruması
Aytac
Unreal3.2 Anti Litmus Koruması
0
437
  • 0 Oy - 0 Ortalama
  • 1
  • 2
  • 3
  • 4
  • 5

[-]
Etiketler
koruması litmus unreal3 anti

Bu konuyu görüntüleyen kullanıcı(lar):1 Ziyaretçi
Şuan Offine!
Şuan Offine!
Aytac Administrator
********
Proje Sorumlusu

  • Üyelik tarihi    04.02.2020
  • Konum  78 Karabük
  • Konular351
  • Mesajlar364
  • Verilen beğeni8 in 5 posts
  • Alınan beğeni6
  • Rep puanı 6

Bu modül sayesinde nick ve identi + ident ve fullnamesi ve son olarak, nick ve fullname bilgileri aynı olanların sunucuya bağlanmalarını engellemiş olacaksınız.

Kod :
/* Modüle ilavaten identd ve fullnamesi aynı ise işlem yapılması Entrance, tarafından sağlanmıştır. */

#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 _WIN32
#include "version.h"
#endif

#define ACIKLAMA "Anti Litmus Koruması. By Sky-Dancer"
static Hook         *HookPreConnect;
static int         kullanici_girisi(aClient *);

#ifndef STATIC_LINKING
static ModuleInfo   *MyModInfo;
#define MyMod      MyModInfo->handle
#define SAVE_MODINFO   MyModInfo = modinfo;
#else
#define MyMod      NULL
#define SAVE_MODINFO
#endif

ModuleHeader MOD_HEADER(antilitmus)
  = {
   "litmus.c",
   ACIKLAMA,
   ACIKLAMA,
   "3.2-b8-1",
   NULL
    };

DLLFUNC int MOD_TEST(antilitmus)(ModuleInfo *modinfo)
{
   SAVE_MODINFO
    return MOD_SUCCESS;
}

DLLFUNC int MOD_INIT(antilitmus)(ModuleInfo *modinfo)
{

   MARK_AS_OFFICIAL_MODULE(modinfo);
   HookPreConnect   = HookAddEx(modinfo->handle, HOOKTYPE_PRE_LOCAL_CONNECT, kullanici_girisi);

   SAVE_MODINFO

      return MOD_SUCCESS;
}

DLLFUNC int MOD_LOAD(antilitmus)(int module_load)
{
      return MOD_SUCCESS;
}

DLLFUNC int MOD_UNLOAD(antilitmus)(int module_unload)
{
      return MOD_SUCCESS;
}

static int kullanici_girisi(aClient *sptr) {

if (MyConnect(sptr) && !IsULine(sptr) && !IsServer(sptr)) {
if (strcmp(sptr->name,sptr->user->username)==0) {
return exit_client(sptr, sptr, &me, "Nick ile ident Ayni Olamaz.");
}
}

if (strcmp(sptr->user->username, sptr->info)==0) {
return exit_client(sptr, sptr, &me, "ident ile Full Name Ayni Olamaz.");
}

if (strcmp(sptr->name,sptr->info)==0) {
return exit_client(sptr, sptr, &me, "Nick ile Full Name Ayni Olamaz.");
}
return 0;
}
“İnsanların en hayırlısı, insanlara faydalı olandır”. H.Ş.



Foruma Git: