Merhaba Arkadaşlar, Her Hafta UnrealIRCD Modül Api Yapısını Kullanarak Elimden Geldigince Sıfırdan Modul Yapmasini ve Derlemesini Göstermek İstiyorum... Konu: Modul Oluşturma
Ders: 1. Seviye
Gerekli Programlar:
Dev-C++ veya Notepad++
Ben Şahsen Dev-C++ Kullaniyorum
Gerekli Kütüphaneler 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"
#include "proto.h"
#ifdef STRIPBADWORDS
#include "badwords.h"
#endif
#ifdef _WIN32
#include "version.h"
#endif
Modülümüzü yazmadan önce yukarda belirtilen kütüphaneleri en üst satira eklememiz gerekmektedir ve daha sonra modülün olmazsa olmazlari
Modül Başlıgı (Module Header)
Örnek Bir Başlık Yapalım..
Kod
ModuleHeader MOD_HEADER(m_ilkmodulum)
= {
"m_ilkmodulum", /* Modülün adı */
"v1", /* Versiyon */
"Bu Benim İlk Modül Denemem", /* Modülün kısa açıklaması */
"3.2-b8-1",
NULL
}; Yukarda görüldügü gibi modülümüzün ismini verip ve gerekli açıklayamı yaptık daha sonra ikinci kısma geçiyoruz
Modül Başlangıcı (MOD_INIT) Kod
DLLFUNC int MOD_INIT(m_ilkmodulum)(ModuleInfo *modinfo)
{
MARK_AS_OFFICIAL_MODULE(modinfo); // Modülü UnrealIRCD işle
return MOD_SUCCESS; // Modül Yüklenmesi Başarılı Oldumu Çalıştır
} Ve Diger Gerekli Kısım Olan Sunucu %100 hazır olduğunda ilk çalıştırılacak Apimiz
Modül Yükü (MOD_LOAD) Kod
DLLFUNC int MOD_LOAD(m_ilkmodulum)(int module_load)
{
return MOD_SUCCESS;
} Modül boşken çağrılacak Apimiz
Modül Boşaltma (MOD_UNLOAD) Kod
DLLFUNC int MOD_UNLOAD(m_ilkmodulum)(int module_unload)
{
return MOD_SUCCESS;
} Ve İlk Modülümüzü Oluşturduk
Unreal3x src/modules/ klasoru içine atip
Unreal3x ana dizininde make custommodule MODULEFILE=m_ilkmodulum
ve unrealircd.conf içine loadmodule "src/modules/m_ilkmodulum.so";
ekliyip ./unreal rehash veya sunucuda /rehash komutunu kullandiginizda modulun hatasiz bir sekilde entregre oldugunu göreceksiniz /module komutunu kullanarak calistigini göreceksiniz
İlk Dersimizde TASLAK Modul Oluşturduk İkinci Dersimizde İşlemlere Geçecez Takip Etmeye Devam Edin
Anlatım: OmerAti
Site:IRCRehberi.Net