Adminler Access yazamasın..
Expunge tarafından » IRC Dökümanları içinde postalandı, tags: admin yetkisi kısma, unreal admin yetkisini kısmakŞimdi Ufak Serverlarda çok görülür ki, Adminler gereksiz yere access yazarlar ve kanal sahiplerinin fonksiyonlarını kısıtlarlar bende bu olay üzerine lazım oldu ufak bir editleme ile Adminlerin access eklemesini kısıtlamak istedim.
öncelikle,
cd ircservices-x.x.xx/modules/chanservile servislerde kanal modüllerinin ana dizinine giriş yapıyoruz.
pico access-levels.c
ile
static void do_access(User *u)
{
char *chan = strtok(NULL, " ");
char *cmd = strtok(NULL, " ");
char *nick = strtok(NULL, " ");
char *s = strtok(NULL, " ");
ChannelInfo *ci;
NickInfo *ni;
NickGroupInfo *ngi;
int16 level = 0;
int i;
int is_list; /* Is true when command is either LIST or COUNT */
int is_servadmin = is_services_admin(u);
satırlarını
static void do_access(User *u)
{
char *chan = strtok(NULL, " ");
char *cmd = strtok(NULL, " ");
char *nick = strtok(NULL, " ");
char *s = strtok(NULL, " ");
ChannelInfo *ci;
NickInfo *ni;
NickGroupInfo *ngi;
int16 level = 0;
int i;
int is_list; /* Is true when command is either LIST or COUNT */
int is_servadmin = is_services_root(u);
şeklinde değiştiriyoruz. CTRL X + Y ile üzerine kayıt ediyoruz.
Böylece Access Ekleme ve Silme işlemlerini Adminlerden almış olduk ancak diyebilirsiniz ki, ” Tamam da birader bu admin set ile kanalı üzerine alır yeniden Access ekler ne var ki bunda.. ”
O zaman biz de Adminlerden set komutunu da alırız.
pico set.c
komutu ile set.c dosyasını açıyoruz.
void do_set(User *u)
{
char *chan = strtok(NULL, " ");
char *cmd = strtok(NULL, " ");
char *param;
ChannelInfo *ci;
int is_servadmin = is_services_admin(u);
satırlarını
void do_set(User *u)
{
char *chan = strtok(NULL, " ");
char *cmd = strtok(NULL, " ");
char *param;
ChannelInfo *ci;
int is_servadmin = is_services_root(u);
şeklinde değiştiriyoruz.
Böylece set komutu ile access komutunu sevgili adminlerimizden almış olduk. Ancak Access ekleme ve Silme yetkisi ile Set parametrelerini kullanmayı sadece rootlara vermiş olduk. herhalde bir sürü rootunuz yoktur Kodlamamız da sona ermiş oldu.
son olarak ircservices-x.x.xx dizininde iken,
make
make install
komutlarını kullanıyoruz. ve servislerimizi yeniden başlatıyoruz.
/os restart
İyi Çalışmalar.


