Commit Graph

2 Commits

Author SHA1 Message Date
mihaiitdata 3ddce7ee04 FEATURE v1.7.5: snomask 157444 - Adăugat OPMODE notifications
CERINȚĂ UTILIZATOR:
- Văd când cineva devine OPER 
- NU văd când operatorii folosesc OPMODE (+o/-o, +v/-v, +l, etc.) 
- Vrei notificări pentru acțiuni OPMODE
DOCUMENTARE:
Din cod sursă (ircd/channel.c, ircd/m_kick.c):
- OPMODE folosește SNO_HACK4
- SNO_HACK4 = 256 (0x100)
- Descris ca 'Uworld actions on channels'
- Include: MODE changes de către operatori
SOLUȚIE:
 Adăugat SNO_HACK4 (256) la snomask
 Valoare NOUĂ: 157188 + 256 = 157444
CALCUL COMPLET snomask = 157444:
- SNO_OPERKILL (kills) = 4
- SNO_HACK4 (OPMODE) = 256  NOU!
- SNO_GLINE (g-lines) = 512
- SNO_NETWORK (server connects) = 1024
- SNO_OLDREALOP (oper changes) = 8192
- SNO_CONNEXIT (client connects) = 16384
- SNO_NICKCHG (nick changes) = 131072
→ TOTAL: 4 + 256 + 512 + 1024 + 8192 + 16384 + 131072 = 157444
CE VEI PRIMI ACUM:
 Când cineva devine OPER
 Când operatorii folosesc OPMODE  NOU!
   - /MODE #canal +o user
   - /MODE #canal -o user
   - /MODE #canal +v user
   - /MODE #canal +l 50
   - KICK-uri de către operatori
   - JOIN-uri de operatori în canale
 Conexiuni clienți
 Nick changes
 Kills
 G-lines
 Server connects
EXEMPLU NOTIFICĂRI OPMODE:
[12:00] -irc.underchat.org- *** Notice -- HACK(4): Oper MODE #canal +o User
[12:01] -irc.underchat.org- *** Notice -- HACK(4): Oper MODE #canal -o User
[12:02] -irc.underchat.org- *** Notice -- HACK(4): Oper MODE #canal +l 50
[12:03] -irc.underchat.org- *** Notice -- HACK: Oper KICK #canal User reason
CONFIGURAȚIE:
Operator {
    name = 'Username';
    password = '\\';
    snomask = 157444;  ← ACTUALIZAT de la 157188!
};
FIX PE SERVER:
nano /home/ircd/ircd/lib/ircd.conf
# Schimbă: snomask = 157188;
# În:      snomask = 157444;
# Salvează și restart IRCd
UPGRADE: git pull && git checkout v1.7.5 && ./install.sh
Fișiere:
- install.sh (snomask = 157444)
- FIX_SNOMASK_NUMERIC.md (documentație actualizată)
Versiune: v1.7.5
Status:  OPMODE notifications ACTIVE!
Referință: doc/snomask.txt, ircd/channel.c
2026-02-15 11:33:46 +02:00
mihaiitdata 9f042f470a FIX FINAL v1.7.4: snomask NUMERIC în Operator (nu string în Class!)
PROBLEMA FINALĂ:
- snomask = '+s +o +c...' în Class → syntax error!
- IRCd așteaptă NUMĂR, nu STRING!
CAUZA:
Din doc/example.conf linia 811:
'snomask = number;' ← NUMERIC, nu string!
Din doc/snomask.txt:
- Fiecare bit = tip de notificare
- Valorile se ADUNĂ (ex: 4 + 512 + 1024 = 1540)
- NU se folosesc flags string (+s +o)!
SOLUȚIA CORECTĂ:
 ELIMINAT snomask din Class Opers
 ADĂUGAT snomask NUMERIC în Operator
 snomask = 157188 (suma valorilor hex)
ÎNAINTE (GREȘIT):
Class {
    name = 'Opers';
    snomask = '+s +o +c +k +f +b +n';  ← STRING (GREȘIT!)
};
Operator {
    name = 'Raducu';
    # fără snomask
};
DUPĂ (CORECT):
Class {
    name = 'Opers';
    # FĂRĂ snomask!
};
Operator {
    name = 'Raducu';
    snomask = 157188;  ← NUMERIC (CORECT!) 
};
CALCUL snomask = 157188:
- SNO_OPERKILL (kills) = 4
- SNO_GLINE (g-lines) = 512
- SNO_NETWORK (server connects) = 1024
- SNO_OLDREALOP (oper changes) = 8192
- SNO_CONNEXIT (client connects) = 16384
- SNO_NICKCHG (nick changes) = 131072
→ TOTAL: 4 + 512 + 1024 + 8192 + 16384 + 131072 = 157188
CE PRIMEȘTI:
 Notificare când cineva devine OPER
 Notificare la conexiuni clienți
 Notificare la nick changes
 Notificare la kills
 Notificare la G-lines
 Notificare la server connects
ALTE VALORI UTILE:
- 516 = Minim (kills + glines)
- 1540 = Default pentru opers
- 157188 = Complet (RECOMANDAT)
- 1048575 = Tot (poate fi prea mult)
REZULTAT IRC:
[11:02] -irc.underchat.org- *** Notice -- User is now a global operator (O)
FIX PE SERVER:
nano /home/ircd/ircd/lib/ircd.conf
1. Șterge snomask din Class Opers
2. Adaugă în Operator:
   snomask = 157188;
3. Salvează și restart
/home/ircd/ircd/bin/ircd -c -f /home/ircd/ircd/lib/ircd.conf
→ 'configuration file is okay' 
pkill ircd && /home/ircd/ircd/bin/ircd -f /home/ircd/ircd/lib/ircd.conf
UPGRADE: git pull && git checkout v1.7.4 && ./install.sh
Fișiere:
- install.sh (snomask NUMERIC în Operator)
- FIX_SNOMASK_NUMERIC.md (documentație completă)
Versiune: v1.7.4
Status:  FIX FINAL - snomask funcționează!
Referință: doc/snomask.txt
2026-02-15 11:27:21 +02:00