Posts Tagged “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

Kod:
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ı

Kod:
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.

Kod:
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ı

Kod:
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.

Comments Yorum Yok »

mirc islami sohbet